]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/commitdiff
Merge remote-tracking branch 'ms/iptables-conntrack' into next
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 22 Jan 2016 00:54:14 +0000 (00:54 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 22 Jan 2016 00:54:14 +0000 (00:54 +0000)
1038 files changed:
config/backup/exclude
config/backup/include
config/backup/includes/cyrus-imapd [new file with mode: 0644]
config/backup/includes/dma [new file with mode: 0644]
config/backup/includes/netsnmpd [new file with mode: 0644]
config/ca-certificates/build.sh [new file with mode: 0644]
config/ca-certificates/certdata.txt [new file with mode: 0644]
config/ca-certificates/certdata2pem.py [new file with mode: 0644]
config/ca-certificates/ipfire-ca.crt [new file with mode: 0644]
config/cfgroot/general-functions.pl
config/cfgroot/geoip-functions.pl
config/cfgroot/graphs.pl
config/cfgroot/network-functions.pl
config/cron/crontab
config/dhcpc/dhcpcd.conf [new file with mode: 0644]
config/dma/dma-cleanup-spool [new file with mode: 0644]
config/etc/ipsec.user.secrets
config/firewall/convert-portfw
config/firewall/firewall-lib.pl
config/firewall/ipsec-block [new file with mode: 0644]
config/firewall/p2protocols
config/firewall/rules.pl
config/httpd/httpd.conf
config/kernel/kernel.config.armv5tel-ipfire-kirkwood
config/kernel/kernel.config.armv5tel-ipfire-multi
config/kernel/kernel.config.armv5tel-ipfire-rpi
config/kernel/kernel.config.i586-ipfire
config/kernel/kernel.config.i586-ipfire-pae
config/kernel/kernel.config.x86_64-ipfire [new file with mode: 0644]
config/menu/10-system.menu
config/menu/EX-tripwire.menu [deleted file]
config/qemu/qemu [new file with mode: 0644]
config/rootfiles/common/Locale-Country
config/rootfiles/common/apache2
config/rootfiles/common/armv5tel/binutils
config/rootfiles/common/armv5tel/gcc
config/rootfiles/common/armv5tel/initscripts
config/rootfiles/common/armv5tel/python [moved from config/rootfiles/common/python with 94% similarity]
config/rootfiles/common/arping
config/rootfiles/common/ca-certificates [new file with mode: 0644]
config/rootfiles/common/chkconfig [new file with mode: 0644]
config/rootfiles/common/cmake
config/rootfiles/common/collectd
config/rootfiles/common/configroot
config/rootfiles/common/conntrack-tools
config/rootfiles/common/coreutils
config/rootfiles/common/curl
config/rootfiles/common/diffutils
config/rootfiles/common/dma [new file with mode: 0644]
config/rootfiles/common/flag-icons [new file with mode: 0644]
config/rootfiles/common/i586/binutils
config/rootfiles/common/i586/gcc
config/rootfiles/common/i586/initscripts
config/rootfiles/common/i586/openssl-sse2 [new file with mode: 0644]
config/rootfiles/common/i586/python [new file with mode: 0644]
config/rootfiles/common/installer
config/rootfiles/common/iproute2
config/rootfiles/common/ipset [new file with mode: 0644]
config/rootfiles/common/iptables
config/rootfiles/common/libarchive [new file with mode: 0644]
config/rootfiles/common/libevent2 [moved from config/rootfiles/packages/libevent2 with 95% similarity]
config/rootfiles/common/libgcrypt
config/rootfiles/common/libgpg-error
config/rootfiles/common/libmpc [new file with mode: 0644]
config/rootfiles/common/libnet
config/rootfiles/common/libnetfilter_conntrack [new file with mode: 0644]
config/rootfiles/common/libnetfilter_cthelper [new file with mode: 0644]
config/rootfiles/common/libnetfilter_cttimeout [new file with mode: 0644]
config/rootfiles/common/libnetfilter_queue [new file with mode: 0644]
config/rootfiles/common/libnfnetlink [new file with mode: 0644]
config/rootfiles/common/libpcap
config/rootfiles/common/libtool
config/rootfiles/common/libusb
config/rootfiles/common/libusb-compat [new file with mode: 0644]
config/rootfiles/common/libusbx [deleted file]
config/rootfiles/common/libxml2
config/rootfiles/common/libxslt
config/rootfiles/common/lua [new file with mode: 0644]
config/rootfiles/common/lzo
config/rootfiles/common/misc-progs
config/rootfiles/common/ncurses
config/rootfiles/common/nettle
config/rootfiles/common/newt
config/rootfiles/common/ntp
config/rootfiles/common/openssl-compat [deleted file]
config/rootfiles/common/pcre
config/rootfiles/common/perl-Email-Date-Format [new file with mode: 0644]
config/rootfiles/common/perl-MIME-Lite [new file with mode: 0644]
config/rootfiles/common/perl-Text-CSV_XS
config/rootfiles/common/procps
config/rootfiles/common/rrdtool
config/rootfiles/common/setup
config/rootfiles/common/slang
config/rootfiles/common/squid
config/rootfiles/common/stage2
config/rootfiles/common/strongswan
config/rootfiles/common/sysstat
config/rootfiles/common/udev
config/rootfiles/common/web-user-interface [new file with mode: 0644]
config/rootfiles/common/x86_64/acpid [new file with mode: 0644]
config/rootfiles/common/x86_64/binutils [new file with mode: 0644]
config/rootfiles/common/x86_64/gcc [new file with mode: 0644]
config/rootfiles/common/x86_64/glibc [new file with mode: 0644]
config/rootfiles/common/x86_64/gmp [new file with mode: 0644]
config/rootfiles/common/x86_64/grub [new file with mode: 0644]
config/rootfiles/common/x86_64/initscripts [new file with mode: 0644]
config/rootfiles/common/x86_64/ipfire-netboot [new file with mode: 0644]
config/rootfiles/common/x86_64/linux [new file with mode: 0644]
config/rootfiles/common/x86_64/linux-headers [new file with mode: 0644]
config/rootfiles/common/x86_64/linux-initrd [new file with mode: 0644]
config/rootfiles/common/x86_64/lm_sensors [new file with mode: 0644]
config/rootfiles/common/x86_64/python [new file with mode: 0644]
config/rootfiles/common/x86_64/python-m2crypto [new file with mode: 0644]
config/rootfiles/common/x86_64/stage2 [new file with mode: 0644]
config/rootfiles/common/x86_64/syslinux [new file with mode: 0644]
config/rootfiles/common/x86_64/util-linux [new file with mode: 0644]
config/rootfiles/common/xz
config/rootfiles/core/97/exclude [new file with mode: 0644]
config/rootfiles/core/97/filelists/bind [new symlink]
config/rootfiles/core/97/filelists/dnsmasq [moved from config/rootfiles/core/89/filelists/dnsmasq with 100% similarity]
config/rootfiles/core/97/filelists/files [new file with mode: 0644]
config/rootfiles/core/97/filelists/ntp [new symlink]
config/rootfiles/core/97/filelists/openssh [moved from config/rootfiles/core/88/filelists/openssh with 100% similarity]
config/rootfiles/core/97/filelists/openvpn [new symlink]
config/rootfiles/core/97/meta [moved from config/rootfiles/core/88/meta with 100% similarity]
config/rootfiles/core/97/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/88/exclude [moved from config/rootfiles/core/88/exclude with 100% similarity]
config/rootfiles/oldcore/88/filelists/files [moved from config/rootfiles/core/88/filelists/files with 100% similarity]
config/rootfiles/oldcore/88/filelists/fireinfo [moved from config/rootfiles/core/88/filelists/fireinfo with 100% similarity]
config/rootfiles/oldcore/88/filelists/openssh [moved from config/rootfiles/core/89/filelists/openssh with 100% similarity]
config/rootfiles/oldcore/88/filelists/openssl [moved from config/rootfiles/core/88/filelists/openssl with 100% similarity]
config/rootfiles/oldcore/88/filelists/openssl-compat [moved from config/rootfiles/core/88/filelists/openssl-compat with 100% similarity]
config/rootfiles/oldcore/88/meta [moved from config/rootfiles/core/89/meta with 100% similarity]
config/rootfiles/oldcore/88/update.sh [moved from config/rootfiles/core/88/update.sh with 100% similarity]
config/rootfiles/oldcore/89/exclude [moved from config/rootfiles/core/89/exclude with 100% similarity]
config/rootfiles/oldcore/89/filelists/collectd [moved from config/rootfiles/core/89/filelists/collectd with 100% similarity]
config/rootfiles/oldcore/89/filelists/daq [moved from config/rootfiles/core/89/filelists/daq with 100% similarity]
config/rootfiles/oldcore/89/filelists/ddns [moved from config/rootfiles/core/89/filelists/ddns with 100% similarity]
config/rootfiles/oldcore/89/filelists/dnsmasq [moved from config/rootfiles/core/90/filelists/dnsmasq with 100% similarity]
config/rootfiles/oldcore/89/filelists/ethtool [moved from config/rootfiles/core/89/filelists/ethtool with 100% similarity]
config/rootfiles/oldcore/89/filelists/fcron [moved from config/rootfiles/core/89/filelists/fcron with 100% similarity]
config/rootfiles/oldcore/89/filelists/file [moved from config/rootfiles/core/89/filelists/file with 100% similarity]
config/rootfiles/oldcore/89/filelists/files [moved from config/rootfiles/core/89/filelists/files with 100% similarity]
config/rootfiles/oldcore/89/filelists/fuse [moved from config/rootfiles/core/89/filelists/fuse with 100% similarity]
config/rootfiles/oldcore/89/filelists/gnupg [moved from config/rootfiles/core/89/filelists/gnupg with 100% similarity]
config/rootfiles/oldcore/89/filelists/grep [moved from config/rootfiles/core/89/filelists/grep with 100% similarity]
config/rootfiles/oldcore/89/filelists/hdparm [moved from config/rootfiles/core/89/filelists/hdparm with 100% similarity]
config/rootfiles/oldcore/89/filelists/libart [moved from config/rootfiles/core/89/filelists/libart with 100% similarity]
config/rootfiles/oldcore/89/filelists/libcap [moved from config/rootfiles/core/89/filelists/libcap with 100% similarity]
config/rootfiles/oldcore/89/filelists/libffi [moved from config/rootfiles/core/89/filelists/libffi with 100% similarity]
config/rootfiles/oldcore/89/filelists/libpcap [moved from config/rootfiles/core/89/filelists/libpcap with 100% similarity]
config/rootfiles/oldcore/89/filelists/ntfs-3g [moved from config/rootfiles/core/89/filelists/ntfs-3g with 100% similarity]
config/rootfiles/oldcore/89/filelists/openssh [new symlink]
config/rootfiles/oldcore/89/filelists/openssl [moved from config/rootfiles/core/89/filelists/openssl with 100% similarity]
config/rootfiles/oldcore/89/filelists/openssl-compat [moved from config/rootfiles/core/89/filelists/openssl-compat with 100% similarity]
config/rootfiles/oldcore/89/filelists/pcre [moved from config/rootfiles/core/89/filelists/pcre with 100% similarity]
config/rootfiles/oldcore/89/filelists/screen [moved from config/rootfiles/core/89/filelists/screen with 100% similarity]
config/rootfiles/oldcore/89/filelists/setup [moved from config/rootfiles/core/89/filelists/setup with 100% similarity]
config/rootfiles/oldcore/89/filelists/smartmontools [moved from config/rootfiles/core/89/filelists/smartmontools with 100% similarity]
config/rootfiles/oldcore/89/filelists/snort [moved from config/rootfiles/core/89/filelists/snort with 100% similarity]
config/rootfiles/oldcore/89/filelists/sqlite [moved from config/rootfiles/core/89/filelists/sqlite with 100% similarity]
config/rootfiles/oldcore/89/filelists/squid [moved from config/rootfiles/core/89/filelists/squid with 100% similarity]
config/rootfiles/oldcore/89/filelists/strongswan [moved from config/rootfiles/core/89/filelists/strongswan with 100% similarity]
config/rootfiles/oldcore/89/filelists/tar [moved from config/rootfiles/core/89/filelists/tar with 100% similarity]
config/rootfiles/oldcore/89/filelists/tzdata [moved from config/rootfiles/core/89/filelists/tzdata with 100% similarity]
config/rootfiles/oldcore/89/filelists/wget [moved from config/rootfiles/core/89/filelists/wget with 100% similarity]
config/rootfiles/oldcore/89/filelists/zlib [moved from config/rootfiles/core/89/filelists/zlib with 100% similarity]
config/rootfiles/oldcore/89/meta [moved from config/rootfiles/core/90/meta with 100% similarity]
config/rootfiles/oldcore/89/update.sh [moved from config/rootfiles/core/89/update.sh with 91% similarity]
config/rootfiles/oldcore/90/exclude [moved from config/rootfiles/core/90/exclude with 92% similarity]
config/rootfiles/oldcore/90/filelists/Locale-Country [new symlink]
config/rootfiles/oldcore/90/filelists/apache2 [moved from config/rootfiles/core/90/filelists/apache2 with 100% similarity]
config/rootfiles/oldcore/90/filelists/armv5tel/glibc [new symlink]
config/rootfiles/oldcore/90/filelists/armv5tel/linux-kirkwood [moved from config/rootfiles/core/90/filelists/armv5tel/linux-kirkwood with 100% similarity]
config/rootfiles/oldcore/90/filelists/armv5tel/linux-multi [moved from config/rootfiles/core/90/filelists/armv5tel/linux-multi with 100% similarity]
config/rootfiles/oldcore/90/filelists/armv5tel/linux-rpi [moved from config/rootfiles/core/90/filelists/armv5tel/linux-rpi with 100% similarity]
config/rootfiles/oldcore/90/filelists/curl [moved from config/rootfiles/core/90/filelists/curl with 100% similarity]
config/rootfiles/oldcore/90/filelists/cyrus-sasl [moved from config/rootfiles/core/90/filelists/cyrus-sasl with 100% similarity]
config/rootfiles/oldcore/90/filelists/ddns [new symlink]
config/rootfiles/oldcore/90/filelists/dhcp [moved from config/rootfiles/core/90/filelists/dhcp with 100% similarity]
config/rootfiles/oldcore/90/filelists/dhcpcd [moved from config/rootfiles/core/90/filelists/dhcpcd with 100% similarity]
config/rootfiles/oldcore/90/filelists/dnsmasq [new symlink]
config/rootfiles/oldcore/90/filelists/dracut [moved from config/rootfiles/core/90/filelists/dracut with 100% similarity]
config/rootfiles/oldcore/90/filelists/expat [moved from config/rootfiles/core/90/filelists/expat with 100% similarity]
config/rootfiles/oldcore/90/filelists/files [moved from config/rootfiles/core/90/filelists/files with 71% similarity]
config/rootfiles/oldcore/90/filelists/fireinfo [new symlink]
config/rootfiles/oldcore/90/filelists/flag-icons [new symlink]
config/rootfiles/oldcore/90/filelists/groff [moved from config/rootfiles/core/90/filelists/groff with 100% similarity]
config/rootfiles/oldcore/90/filelists/i586/acpid [moved from config/rootfiles/core/90/filelists/i586/acpid with 100% similarity]
config/rootfiles/oldcore/90/filelists/i586/glibc [new symlink]
config/rootfiles/oldcore/90/filelists/i586/linux [moved from config/rootfiles/core/90/filelists/i586/linux with 100% similarity]
config/rootfiles/oldcore/90/filelists/i586/linux-initrd [moved from config/rootfiles/core/90/filelists/i586/linux-initrd with 100% similarity]
config/rootfiles/oldcore/90/filelists/i586/openssl-sse2 [new symlink]
config/rootfiles/oldcore/90/filelists/iptables [moved from config/rootfiles/core/90/filelists/iptables with 100% similarity]
config/rootfiles/oldcore/90/filelists/iputils [moved from config/rootfiles/core/90/filelists/iputils with 100% similarity]
config/rootfiles/oldcore/90/filelists/libjpeg [moved from config/rootfiles/core/90/filelists/libjpeg with 100% similarity]
config/rootfiles/oldcore/90/filelists/logrotate [moved from config/rootfiles/core/90/filelists/logrotate with 100% similarity]
config/rootfiles/oldcore/90/filelists/logwatch [moved from config/rootfiles/core/90/filelists/logwatch with 100% similarity]
config/rootfiles/oldcore/90/filelists/openldap [new symlink]
config/rootfiles/oldcore/90/filelists/openssl [moved from config/rootfiles/core/90/filelists/openssl with 100% similarity]
config/rootfiles/oldcore/90/filelists/openssl-0.9.8-files [new file with mode: 0644]
config/rootfiles/oldcore/90/filelists/perl-Text-CSV_XS [moved from config/rootfiles/core/90/filelists/perl-Text-CSV_XS with 100% similarity]
config/rootfiles/oldcore/90/filelists/squid [new symlink]
config/rootfiles/oldcore/90/filelists/strongswan [moved from config/rootfiles/core/90/filelists/strongswan with 100% similarity]
config/rootfiles/oldcore/90/filelists/tzdata [new symlink]
config/rootfiles/oldcore/90/filelists/udev [moved from config/rootfiles/core/90/filelists/udev with 100% similarity]
config/rootfiles/oldcore/90/filelists/wpa_supplicant [moved from config/rootfiles/core/90/filelists/wpa_supplicant with 100% similarity]
config/rootfiles/oldcore/90/filelists/xtables-addons [moved from config/rootfiles/core/90/filelists/xtables-addons with 100% similarity]
config/rootfiles/oldcore/90/filelists/xz [new symlink]
config/rootfiles/oldcore/90/meta [new file with mode: 0644]
config/rootfiles/oldcore/90/update.sh [moved from config/rootfiles/core/90/update.sh with 87% similarity]
config/rootfiles/oldcore/91/exclude [new file with mode: 0644]
config/rootfiles/oldcore/91/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/91/filelists/i586/openssl-sse2 [new symlink]
config/rootfiles/oldcore/91/filelists/i586/strongswan-padlock [new symlink]
config/rootfiles/oldcore/91/filelists/libnet [new symlink]
config/rootfiles/oldcore/91/filelists/libtool [new symlink]
config/rootfiles/oldcore/91/filelists/libxml2 [new symlink]
config/rootfiles/oldcore/91/filelists/libxslt [new symlink]
config/rootfiles/oldcore/91/filelists/newt [new symlink]
config/rootfiles/oldcore/91/filelists/openssh [new symlink]
config/rootfiles/oldcore/91/filelists/openssl [new symlink]
config/rootfiles/oldcore/91/filelists/pcre [new symlink]
config/rootfiles/oldcore/91/filelists/slang [new symlink]
config/rootfiles/oldcore/91/filelists/strongswan [new symlink]
config/rootfiles/oldcore/91/meta [new file with mode: 0644]
config/rootfiles/oldcore/91/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/92/exclude [new file with mode: 0644]
config/rootfiles/oldcore/92/filelists/ca-certificates [new symlink]
config/rootfiles/oldcore/92/filelists/conntrack-tools [new symlink]
config/rootfiles/oldcore/92/filelists/curl [new symlink]
config/rootfiles/oldcore/92/filelists/dnsmasq [new symlink]
config/rootfiles/oldcore/92/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/92/filelists/iptables [new symlink]
config/rootfiles/oldcore/92/filelists/libgcrypt [new symlink]
config/rootfiles/oldcore/92/filelists/libgpg-error [new symlink]
config/rootfiles/oldcore/92/filelists/libnetfilter_conntrack [new symlink]
config/rootfiles/oldcore/92/filelists/libnetfilter_cthelper [new symlink]
config/rootfiles/oldcore/92/filelists/libnetfilter_cttimeout [new symlink]
config/rootfiles/oldcore/92/filelists/libnetfilter_queue [new symlink]
config/rootfiles/oldcore/92/filelists/libnfnetlink [new symlink]
config/rootfiles/oldcore/92/filelists/libpcap [new symlink]
config/rootfiles/oldcore/92/filelists/libusb [new symlink]
config/rootfiles/oldcore/92/filelists/libusb-compat [new symlink]
config/rootfiles/oldcore/92/filelists/openssh [new symlink]
config/rootfiles/oldcore/92/filelists/openssl [new symlink]
config/rootfiles/oldcore/92/filelists/python [new symlink]
config/rootfiles/oldcore/92/filelists/rrdtool [new symlink]
config/rootfiles/oldcore/92/filelists/squid [new symlink]
config/rootfiles/oldcore/92/meta [new file with mode: 0644]
config/rootfiles/oldcore/92/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/93/exclude [new file with mode: 0644]
config/rootfiles/oldcore/93/filelists/bind [new symlink]
config/rootfiles/oldcore/93/filelists/daq [new symlink]
config/rootfiles/oldcore/93/filelists/ddns [new symlink]
config/rootfiles/oldcore/93/filelists/dnsmasq [new symlink]
config/rootfiles/oldcore/93/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/93/filelists/libevent2 [new symlink]
config/rootfiles/oldcore/93/filelists/libpcap [new symlink]
config/rootfiles/oldcore/93/filelists/nettle [new symlink]
config/rootfiles/oldcore/93/filelists/pcre [new symlink]
config/rootfiles/oldcore/93/filelists/squid [new symlink]
config/rootfiles/oldcore/93/meta [new file with mode: 0644]
config/rootfiles/oldcore/93/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/94/exclude [new file with mode: 0644]
config/rootfiles/oldcore/94/filelists/armv5tel/glibc [new symlink]
config/rootfiles/oldcore/94/filelists/bind [new symlink]
config/rootfiles/oldcore/94/filelists/chkconfig [new symlink]
config/rootfiles/oldcore/94/filelists/coreutils [new symlink]
config/rootfiles/oldcore/94/filelists/dma [new symlink]
config/rootfiles/oldcore/94/filelists/dnsmasq [new symlink]
config/rootfiles/oldcore/94/filelists/file [new symlink]
config/rootfiles/oldcore/94/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/94/filelists/fireinfo [new symlink]
config/rootfiles/oldcore/94/filelists/hdparm [new symlink]
config/rootfiles/oldcore/94/filelists/i586/glibc [new symlink]
config/rootfiles/oldcore/94/filelists/iproute2 [new symlink]
config/rootfiles/oldcore/94/filelists/libgcrypt [new symlink]
config/rootfiles/oldcore/94/filelists/libgpg-error [new symlink]
config/rootfiles/oldcore/94/filelists/openssh [new symlink]
config/rootfiles/oldcore/94/filelists/pcre [new symlink]
config/rootfiles/oldcore/94/filelists/perl-Email-Date-Format [new symlink]
config/rootfiles/oldcore/94/filelists/perl-MIME-Lite [new symlink]
config/rootfiles/oldcore/94/filelists/rrdtool [new symlink]
config/rootfiles/oldcore/94/filelists/setup [new symlink]
config/rootfiles/oldcore/94/filelists/squid [new symlink]
config/rootfiles/oldcore/94/meta [new file with mode: 0644]
config/rootfiles/oldcore/94/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/95/exclude [new file with mode: 0644]
config/rootfiles/oldcore/95/filelists/armv5tel/linux-kirkwood [new symlink]
config/rootfiles/oldcore/95/filelists/armv5tel/linux-multi [new symlink]
config/rootfiles/oldcore/95/filelists/armv5tel/linux-rpi [new symlink]
config/rootfiles/oldcore/95/filelists/ddns [new symlink]
config/rootfiles/oldcore/95/filelists/dma [new symlink]
config/rootfiles/oldcore/95/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/95/filelists/i586/linux [new symlink]
config/rootfiles/oldcore/95/filelists/i586/linux-initrd [new symlink]
config/rootfiles/oldcore/95/filelists/i586/strongswan-padlock [new symlink]
config/rootfiles/oldcore/95/filelists/ipset [new symlink]
config/rootfiles/oldcore/95/filelists/lzo [new symlink]
config/rootfiles/oldcore/95/filelists/ntp [new symlink]
config/rootfiles/oldcore/95/filelists/snort [new symlink]
config/rootfiles/oldcore/95/filelists/strongswan [new symlink]
config/rootfiles/oldcore/95/filelists/x86_64/linux [new symlink]
config/rootfiles/oldcore/95/filelists/x86_64/linux-initrd [new symlink]
config/rootfiles/oldcore/95/meta [new file with mode: 0644]
config/rootfiles/oldcore/95/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/96/exclude [new file with mode: 0644]
config/rootfiles/oldcore/96/filelists/curl [new symlink]
config/rootfiles/oldcore/96/filelists/dma [new symlink]
config/rootfiles/oldcore/96/filelists/dnsmasq [new symlink]
config/rootfiles/oldcore/96/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/96/filelists/i586/grub [new symlink]
config/rootfiles/oldcore/96/filelists/i586/openssl-sse2 [new symlink]
config/rootfiles/oldcore/96/filelists/i586/strongswan-padlock [new symlink]
config/rootfiles/oldcore/96/filelists/libnet [new symlink]
config/rootfiles/oldcore/96/filelists/mdadm [new symlink]
config/rootfiles/oldcore/96/filelists/ntp [new symlink]
config/rootfiles/oldcore/96/filelists/openssl [new symlink]
config/rootfiles/oldcore/96/filelists/rrdtool [new symlink]
config/rootfiles/oldcore/96/filelists/strongswan [new symlink]
config/rootfiles/oldcore/96/filelists/x86_64/grub [new symlink]
config/rootfiles/oldcore/96/meta [new file with mode: 0644]
config/rootfiles/oldcore/96/update.sh [new file with mode: 0644]
config/rootfiles/packages/7zip
config/rootfiles/packages/asterisk [changed mode: 0755->0644]
config/rootfiles/packages/clamav
config/rootfiles/packages/cups
config/rootfiles/packages/cyrus-imapd
config/rootfiles/packages/dnsdist [new file with mode: 0644]
config/rootfiles/packages/git
config/rootfiles/packages/keepalived
config/rootfiles/packages/libassuan
config/rootfiles/packages/libsrtp
config/rootfiles/packages/make
config/rootfiles/packages/mc
config/rootfiles/packages/mediatomb.off [moved from config/rootfiles/packages/mediatomb with 100% similarity]
config/rootfiles/packages/nano
config/rootfiles/packages/netsnmpd
config/rootfiles/packages/openvmtools
config/rootfiles/packages/owncloud
config/rootfiles/packages/perl-Authen-SASL [new file with mode: 0644]
config/rootfiles/packages/perl-MIME-Base64 [new file with mode: 0644]
config/rootfiles/packages/perl-Net-SMTP-SSL [new file with mode: 0644]
config/rootfiles/packages/postfix
config/rootfiles/packages/powertop
config/rootfiles/packages/qemu
config/rootfiles/packages/tripwire [deleted file]
config/rootfiles/packages/x86_64/directfb [new file with mode: 0644]
config/rootfiles/packages/x86_64/vdr_dvbapi [new file with mode: 0644]
config/tripwire/settings [deleted file]
config/tripwire/twcfg.txt [deleted file]
config/tripwire/twpol.txt [deleted file]
config/udev/60-net.rules
config/udev/network-hotplug-vlan [moved from src/initscripts/init.d/network-vlans with 60% similarity]
config/urlfilter/autoupdate.pl
doc/language_issues.de
doc/language_issues.en
doc/language_issues.es
doc/language_issues.fr
doc/language_issues.it
doc/language_issues.nl
doc/language_issues.pl
doc/language_issues.ru
doc/language_issues.tr
doc/language_missings
html/cgi-bin/connections.cgi
html/cgi-bin/connscheduler.cgi
html/cgi-bin/country.cgi
html/cgi-bin/credits.cgi
html/cgi-bin/ddns.cgi
html/cgi-bin/dhcp.cgi
html/cgi-bin/dnsforward.cgi
html/cgi-bin/firewall.cgi
html/cgi-bin/fwhosts.cgi
html/cgi-bin/geoip-block.cgi
html/cgi-bin/hosts.cgi
html/cgi-bin/ids.cgi
html/cgi-bin/logs.cgi/firewalllog.dat
html/cgi-bin/logs.cgi/firewalllogcountry.dat
html/cgi-bin/logs.cgi/firewalllogip.dat
html/cgi-bin/logs.cgi/log.dat
html/cgi-bin/mac.cgi
html/cgi-bin/mail.cgi [new file with mode: 0755]
html/cgi-bin/modem.cgi
html/cgi-bin/netovpnsrv.cgi
html/cgi-bin/ovpnmain.cgi
html/cgi-bin/pppsetup.cgi
html/cgi-bin/proxy.cgi
html/cgi-bin/qos.cgi
html/cgi-bin/routing.cgi
html/cgi-bin/time.cgi
html/cgi-bin/tor.cgi
html/cgi-bin/tripwire.cgi [deleted file]
html/cgi-bin/updatexlrator.cgi
html/cgi-bin/urlfilter.cgi
html/cgi-bin/vpnmain.cgi
html/cgi-bin/wakeonlan.cgi
html/cgi-bin/webaccess.cgi
html/cgi-bin/wireless.cgi
html/html/images/flags/ad.png [deleted file]
html/html/images/flags/ae.png [deleted file]
html/html/images/flags/af.png [deleted file]
html/html/images/flags/ag.png [deleted file]
html/html/images/flags/ai.png [deleted file]
html/html/images/flags/al.png [deleted file]
html/html/images/flags/am.png [deleted file]
html/html/images/flags/an.png [deleted file]
html/html/images/flags/ao.png [deleted file]
html/html/images/flags/aq.png [deleted file]
html/html/images/flags/ar.png [deleted file]
html/html/images/flags/as.png [deleted file]
html/html/images/flags/at.png [deleted file]
html/html/images/flags/au.png [deleted file]
html/html/images/flags/aw.png [deleted file]
html/html/images/flags/az.png [deleted file]
html/html/images/flags/ba.png [deleted file]
html/html/images/flags/bb.png [deleted file]
html/html/images/flags/bd.png [deleted file]
html/html/images/flags/be.png [deleted file]
html/html/images/flags/bf.png [deleted file]
html/html/images/flags/bg.png [deleted file]
html/html/images/flags/bh.png [deleted file]
html/html/images/flags/bi.png [deleted file]
html/html/images/flags/bj.png [deleted file]
html/html/images/flags/bm.png [deleted file]
html/html/images/flags/bn.png [deleted file]
html/html/images/flags/bo.png [deleted file]
html/html/images/flags/br.png [deleted file]
html/html/images/flags/bs.png [deleted file]
html/html/images/flags/bt.png [deleted file]
html/html/images/flags/bv.png [deleted file]
html/html/images/flags/bw.png [deleted file]
html/html/images/flags/by.png [deleted file]
html/html/images/flags/bz.png [deleted file]
html/html/images/flags/ca.png [deleted file]
html/html/images/flags/cc.png [deleted file]
html/html/images/flags/cd.png [deleted file]
html/html/images/flags/cf.png [deleted file]
html/html/images/flags/cg.png [deleted file]
html/html/images/flags/ch.png [deleted file]
html/html/images/flags/ci.png [deleted file]
html/html/images/flags/ck.png [deleted file]
html/html/images/flags/cl.png [deleted file]
html/html/images/flags/cm.png [deleted file]
html/html/images/flags/cn.png [deleted file]
html/html/images/flags/co.png [deleted file]
html/html/images/flags/cr.png [deleted file]
html/html/images/flags/cs.png [deleted file]
html/html/images/flags/cu.png [deleted file]
html/html/images/flags/cv.png [deleted file]
html/html/images/flags/cx.png [deleted file]
html/html/images/flags/cy.png [deleted file]
html/html/images/flags/cz.png [deleted file]
html/html/images/flags/de.png [deleted file]
html/html/images/flags/dj.png [deleted file]
html/html/images/flags/dk.png [deleted file]
html/html/images/flags/dm.png [deleted file]
html/html/images/flags/do.png [deleted file]
html/html/images/flags/dz.png [deleted file]
html/html/images/flags/ec.png [deleted file]
html/html/images/flags/ee.png [deleted file]
html/html/images/flags/eg.png [deleted file]
html/html/images/flags/eh.png [deleted file]
html/html/images/flags/er.png [deleted file]
html/html/images/flags/es.png [deleted file]
html/html/images/flags/et.png [deleted file]
html/html/images/flags/eu.png [deleted file]
html/html/images/flags/fi.png [deleted file]
html/html/images/flags/fj.png [deleted file]
html/html/images/flags/fk.png [deleted file]
html/html/images/flags/fm.png [deleted file]
html/html/images/flags/fo.png [deleted file]
html/html/images/flags/fr.png [deleted file]
html/html/images/flags/ga.png [deleted file]
html/html/images/flags/gb.png [deleted file]
html/html/images/flags/gd.png [deleted file]
html/html/images/flags/ge.png [deleted file]
html/html/images/flags/gf.png [deleted file]
html/html/images/flags/gh.png [deleted file]
html/html/images/flags/gi.png [deleted file]
html/html/images/flags/gl.png [deleted file]
html/html/images/flags/gm.png [deleted file]
html/html/images/flags/gn.png [deleted file]
html/html/images/flags/gp.png [deleted file]
html/html/images/flags/gq.png [deleted file]
html/html/images/flags/gr.png [deleted file]
html/html/images/flags/gs.png [deleted file]
html/html/images/flags/gt.png [deleted file]
html/html/images/flags/gu.png [deleted file]
html/html/images/flags/gw.png [deleted file]
html/html/images/flags/gy.png [deleted file]
html/html/images/flags/hk.png [deleted file]
html/html/images/flags/hm.png [deleted file]
html/html/images/flags/hn.png [deleted file]
html/html/images/flags/hr.png [deleted file]
html/html/images/flags/ht.png [deleted file]
html/html/images/flags/hu.png [deleted file]
html/html/images/flags/id.png [deleted file]
html/html/images/flags/ie.png [deleted file]
html/html/images/flags/il.png [deleted file]
html/html/images/flags/in.png [deleted file]
html/html/images/flags/io.png [deleted file]
html/html/images/flags/iq.png [deleted file]
html/html/images/flags/ir.png [deleted file]
html/html/images/flags/is.png [deleted file]
html/html/images/flags/it.png [deleted file]
html/html/images/flags/jm.png [deleted file]
html/html/images/flags/jo.png [deleted file]
html/html/images/flags/jp.png [deleted file]
html/html/images/flags/ke.png [deleted file]
html/html/images/flags/kg.png [deleted file]
html/html/images/flags/kh.png [deleted file]
html/html/images/flags/ki.png [deleted file]
html/html/images/flags/km.png [deleted file]
html/html/images/flags/kn.png [deleted file]
html/html/images/flags/kp.png [deleted file]
html/html/images/flags/kr.png [deleted file]
html/html/images/flags/kw.png [deleted file]
html/html/images/flags/ky.png [deleted file]
html/html/images/flags/kz.png [deleted file]
html/html/images/flags/la.png [deleted file]
html/html/images/flags/lb.png [deleted file]
html/html/images/flags/lc.png [deleted file]
html/html/images/flags/li.png [deleted file]
html/html/images/flags/lk.png [deleted file]
html/html/images/flags/lr.png [deleted file]
html/html/images/flags/ls.png [deleted file]
html/html/images/flags/lt.png [deleted file]
html/html/images/flags/lu.png [deleted file]
html/html/images/flags/lv.png [deleted file]
html/html/images/flags/ly.png [deleted file]
html/html/images/flags/ma.png [deleted file]
html/html/images/flags/mc.png [deleted file]
html/html/images/flags/md.png [deleted file]
html/html/images/flags/mg.png [deleted file]
html/html/images/flags/mh.png [deleted file]
html/html/images/flags/mk.png [deleted file]
html/html/images/flags/ml.png [deleted file]
html/html/images/flags/mm.png [deleted file]
html/html/images/flags/mn.png [deleted file]
html/html/images/flags/mo.png [deleted file]
html/html/images/flags/mp.png [deleted file]
html/html/images/flags/mq.png [deleted file]
html/html/images/flags/mr.png [deleted file]
html/html/images/flags/ms.png [deleted file]
html/html/images/flags/mt.png [deleted file]
html/html/images/flags/mu.png [deleted file]
html/html/images/flags/mv.png [deleted file]
html/html/images/flags/mw.png [deleted file]
html/html/images/flags/mx.png [deleted file]
html/html/images/flags/my.png [deleted file]
html/html/images/flags/mz.png [deleted file]
html/html/images/flags/na.png [deleted file]
html/html/images/flags/nc.png [deleted file]
html/html/images/flags/ne.png [deleted file]
html/html/images/flags/nf.png [deleted file]
html/html/images/flags/ng.png [deleted file]
html/html/images/flags/ni.png [deleted file]
html/html/images/flags/nl.png [deleted file]
html/html/images/flags/no.png [deleted file]
html/html/images/flags/np.png [deleted file]
html/html/images/flags/nr.png [deleted file]
html/html/images/flags/nu.png [deleted file]
html/html/images/flags/nz.png [deleted file]
html/html/images/flags/om.png [deleted file]
html/html/images/flags/pa.png [deleted file]
html/html/images/flags/pe.png [deleted file]
html/html/images/flags/pf.png [deleted file]
html/html/images/flags/pg.png [deleted file]
html/html/images/flags/ph.png [deleted file]
html/html/images/flags/pk.png [deleted file]
html/html/images/flags/pl.png [deleted file]
html/html/images/flags/pm.png [deleted file]
html/html/images/flags/pn.png [deleted file]
html/html/images/flags/pr.png [deleted file]
html/html/images/flags/ps.png [deleted file]
html/html/images/flags/pt.png [deleted file]
html/html/images/flags/pw.png [deleted file]
html/html/images/flags/py.png [deleted file]
html/html/images/flags/qa.png [deleted file]
html/html/images/flags/re.png [deleted file]
html/html/images/flags/ro.png [deleted file]
html/html/images/flags/ru.png [deleted file]
html/html/images/flags/rw.png [deleted file]
html/html/images/flags/sa.png [deleted file]
html/html/images/flags/sb.png [deleted file]
html/html/images/flags/sc.png [deleted file]
html/html/images/flags/sd.png [deleted file]
html/html/images/flags/se.png [deleted file]
html/html/images/flags/sg.png [deleted file]
html/html/images/flags/sh.png [deleted file]
html/html/images/flags/si.png [deleted file]
html/html/images/flags/sj.png [deleted file]
html/html/images/flags/sk.png [deleted file]
html/html/images/flags/sl.png [deleted file]
html/html/images/flags/sm.png [deleted file]
html/html/images/flags/sn.png [deleted file]
html/html/images/flags/so.png [deleted file]
html/html/images/flags/sr.png [deleted file]
html/html/images/flags/st.png [deleted file]
html/html/images/flags/sv.png [deleted file]
html/html/images/flags/sy.png [deleted file]
html/html/images/flags/sz.png [deleted file]
html/html/images/flags/tc.png [deleted file]
html/html/images/flags/td.png [deleted file]
html/html/images/flags/tf.png [deleted file]
html/html/images/flags/tg.png [deleted file]
html/html/images/flags/th.png [deleted file]
html/html/images/flags/tj.png [deleted file]
html/html/images/flags/tk.png [deleted file]
html/html/images/flags/tl.png [deleted file]
html/html/images/flags/tm.png [deleted file]
html/html/images/flags/tn.png [deleted file]
html/html/images/flags/to.png [deleted file]
html/html/images/flags/tp.png [deleted file]
html/html/images/flags/tr.png [deleted file]
html/html/images/flags/tt.png [deleted file]
html/html/images/flags/tv.png [deleted file]
html/html/images/flags/tw.png [deleted file]
html/html/images/flags/tz.png [deleted file]
html/html/images/flags/ua.png [deleted file]
html/html/images/flags/ug.png [deleted file]
html/html/images/flags/um.png [deleted file]
html/html/images/flags/us.png [deleted file]
html/html/images/flags/uy.png [deleted file]
html/html/images/flags/uz.png [deleted file]
html/html/images/flags/va.png [deleted file]
html/html/images/flags/vc.png [deleted file]
html/html/images/flags/ve.png [deleted file]
html/html/images/flags/vg.png [deleted file]
html/html/images/flags/vi.png [deleted file]
html/html/images/flags/vn.png [deleted file]
html/html/images/flags/vu.png [deleted file]
html/html/images/flags/wf.png [deleted file]
html/html/images/flags/ws.png [deleted file]
html/html/images/flags/ye.png [deleted file]
html/html/images/flags/yt.png [deleted file]
html/html/images/flags/yu.png [deleted file]
html/html/images/flags/za.png [deleted file]
html/html/images/flags/zm.png [deleted file]
html/html/images/flags/zw.png [deleted file]
html/html/themes/darkdos/include/functions.pl
html/html/themes/ipfire-legacy/include/functions.pl
html/html/themes/ipfire/include/css/style.css
html/html/themes/ipfire/include/functions.pl
html/html/themes/maniac/images/Thumbs.db [deleted file]
html/html/themes/maniac/include/functions.pl
langs/de/cgi-bin/de.pl
langs/en/cgi-bin/en.pl
langs/es/cgi-bin/es.pl
langs/fr/cgi-bin/fr.pl
langs/it/cgi-bin/it.pl
langs/nl/cgi-bin/nl.pl
langs/pl/cgi-bin/pl.pl
langs/ru/cgi-bin/ru.pl
langs/tr/cgi-bin/tr.pl
lfs/7zip
lfs/Config
lfs/Locale-Country
lfs/acpid
lfs/apache2
lfs/arping
lfs/asterisk
lfs/backports
lfs/bind
lfs/binutils
lfs/boost
lfs/ca-certificates [new file with mode: 0644]
lfs/ccache
lfs/chkconfig [new file with mode: 0644]
lfs/clamav
lfs/cleanup-toolchain
lfs/cmake
lfs/configroot
lfs/conntrack-tools
lfs/coreutils
lfs/cpufrequtils
lfs/cups
lfs/curl
lfs/cyrus-imapd
lfs/daq
lfs/ddns
lfs/dhcpcd
lfs/dma [moved from lfs/openssl-compat with 75% similarity]
lfs/dnsdist [new file with mode: 0644]
lfs/dnsmasq
lfs/dracut
lfs/e1000e
lfs/ebtables
lfs/elinks
lfs/file
lfs/fireinfo
lfs/flag-icons [new file with mode: 0644]
lfs/gcc
lfs/git
lfs/glibc
lfs/grub
lfs/hdparm
lfs/igb
lfs/initscripts
lfs/ipfire-netboot
lfs/iproute2
lfs/ipset [new file with mode: 0644]
lfs/iptables
lfs/keepalived
lfs/krb5
lfs/libarchive [new file with mode: 0644]
lfs/libassuan
lfs/libevent2
lfs/libgcrypt
lfs/libgpg-error
lfs/libmpc [moved from lfs/cryptodev with 83% similarity]
lfs/libmpeg2
lfs/libnet
lfs/libnetfilter_conntrack [moved from lfs/libusbx with 94% similarity]
lfs/libnetfilter_cthelper [new file with mode: 0644]
lfs/libnetfilter_cttimeout [new file with mode: 0644]
lfs/libnetfilter_queue [new file with mode: 0644]
lfs/libnfnetlink [new file with mode: 0644]
lfs/liboping
lfs/libpcap
lfs/libpri
lfs/libsrtp
lfs/libtool
lfs/libusb
lfs/libusb-compat [new file with mode: 0644]
lfs/libxml2
lfs/libxslt
lfs/linux
lfs/lua [moved from lfs/tripwire with 69% similarity]
lfs/lzo
lfs/mISDNuser
lfs/make
lfs/mc
lfs/mdadm
lfs/memtest
lfs/monit
lfs/nano
lfs/netpbm
lfs/netsnmpd
lfs/nettle
lfs/newt
lfs/ntp
lfs/openssh
lfs/openssl
lfs/openvmtools
lfs/openvpn
lfs/owncloud
lfs/pakfire
lfs/pcre
lfs/perl-Authen-SASL [new file with mode: 0644]
lfs/perl-Email-Date-Format [new file with mode: 0644]
lfs/perl-MIME-Base64 [new file with mode: 0644]
lfs/perl-MIME-Lite [new file with mode: 0644]
lfs/perl-Net-SMTP-SSL [new file with mode: 0644]
lfs/postfix
lfs/powertop
lfs/procps
lfs/python
lfs/python-optional-src
lfs/qemu
lfs/rrdtool
lfs/sarg
lfs/slang
lfs/snort
lfs/sox
lfs/squid
lfs/squid-accounting
lfs/stage2
lfs/strongswan
lfs/syslinux
lfs/tcpdump
lfs/tmux
lfs/tor
lfs/transmission
lfs/tzdata
lfs/udev
lfs/unzip
lfs/vdr_eepg
lfs/vdr_epgsearch
lfs/vnstat
lfs/vsftpd
lfs/web-user-interface [new file with mode: 0644]
lfs/xtables-addons
lfs/xz
make.sh
src/initscripts/init.d/cleanfs
src/initscripts/init.d/collectd
src/initscripts/init.d/cpufreq
src/initscripts/init.d/dnsdist [new file with mode: 0644]
src/initscripts/init.d/dnsmasq
src/initscripts/init.d/fcron
src/initscripts/init.d/firewall
src/initscripts/init.d/firstsetup
src/initscripts/init.d/functions
src/initscripts/init.d/networking/red
src/initscripts/init.d/networking/red.up/99-geoip-database
src/initscripts/init.d/snort
src/initscripts/init.d/sshd
src/initscripts/init.d/tmpfs [deleted file]
src/initscripts/init.d/vnstat [new file with mode: 0755]
src/initscripts/sysconfig/modules
src/installer/po/LINGUAS
src/installer/po/de.po
src/installer/po/pt.po [new file with mode: 0644]
src/installer/po/ro.po [new file with mode: 0644]
src/installer/po/tr.po
src/misc-progs/Makefile
src/misc-progs/ddnsctrl.c [new file with mode: 0644]
src/misc-progs/ipsecctrl.c
src/misc-progs/qosctrl.c
src/misc-progs/rebuildhosts.c
src/misc-progs/timectrl.c
src/misc-progs/tripwirectrl.c [deleted file]
src/pakfire/lib/functions.pl
src/pakfire/pakfire
src/paks/cyrus-imapd/uninstall.sh
src/paks/linux-pae/install.sh
src/paks/netsnmpd/install.sh [moved from src/paks/net-snmp/install.sh with 100% similarity]
src/paks/netsnmpd/uninstall.sh [moved from src/paks/net-snmp/uninstall.sh with 98% similarity]
src/paks/netsnmpd/update.sh [moved from src/paks/net-snmp/update.sh with 100% similarity]
src/paks/postfix/install.sh
src/paks/postfix/uninstall.sh
src/patches/0001-Fix-CVE-2015-8370-Grub2-user-pass-vulnerability.patch [new file with mode: 0644]
src/patches/Python-2.7.9-gdbm-1.patch [new file with mode: 0644]
src/patches/arm-multi-grsec-compile-fixes.patch [new file with mode: 0644]
src/patches/backports-3.18.1-1_no_dma_sgtable_on_x86_64.patch [new file with mode: 0644]
src/patches/binutils-2.22-pt-pax-flags-20111121.patch [deleted file]
src/patches/binutils-2.24-pt-pax-flags-20131231.patch [new file with mode: 0644]
src/patches/cups-str4609.patch [new file with mode: 0644]
src/patches/ddns/ddns-005-Add-changeip-com.patch [deleted file]
src/patches/ddns/ddns-005-SPDNS-fix-auth.patch [deleted file]
src/patches/dma-0.10-better-authentication.patch [new file with mode: 0644]
src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch
src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch [deleted file]
src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch [deleted file]
src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch [deleted file]
src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch [deleted file]
src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch [deleted file]
src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch [deleted file]
src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch [deleted file]
src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch [deleted file]
src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch [deleted file]
src/patches/dnsmasq/001-include_0_0_0_0_8_in_DNS_rebind_checks.patch [new file with mode: 0644]
src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch [deleted file]
src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch [deleted file]
src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch [deleted file]
src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch [deleted file]
src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch [deleted file]
src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch [deleted file]
src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch [deleted file]
src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch [deleted file]
src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch [deleted file]
src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch [deleted file]
src/patches/dnsmasq/002-enhance_add_subnet_to_allow_arbitary_subnet_addresses.patch [new file with mode: 0644]
src/patches/dnsmasq/0020-Initialise-return-value.patch [deleted file]
src/patches/dnsmasq/0021-Add-ignore-address-option.patch [deleted file]
src/patches/dnsmasq/0022-Bad-packet-protection.patch [deleted file]
src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch [deleted file]
src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch [deleted file]
src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch [deleted file]
src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch [deleted file]
src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch [deleted file]
src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch [deleted file]
src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch [deleted file]
src/patches/dnsmasq/003-dont_answer_non_auth_queries_for_auth_zones_locally_when_localise_queries_set.patch [new file with mode: 0644]
src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch [deleted file]
src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch [deleted file]
src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch [deleted file]
src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch [deleted file]
src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch [deleted file]
src/patches/dnsmasq/0035-Update-German-translation.patch [deleted file]
src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch [deleted file]
src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch [deleted file]
src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch [deleted file]
src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch [deleted file]
src/patches/dnsmasq/004-fix_behaviour_of_empty_dhcp-option.patch [new file with mode: 0644]
src/patches/dnsmasq/0040-inotify-documentation-updates.patch [deleted file]
src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch [deleted file]
src/patches/dnsmasq/0042-BSD-make-support.patch [deleted file]
src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch [deleted file]
src/patches/dnsmasq/0044-Manpage-typo-fix.patch [deleted file]
src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch [deleted file]
src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch [deleted file]
src/patches/dnsmasq/0047-man-page-typo.patch [deleted file]
src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch [deleted file]
src/patches/dnsmasq/0049-Typos.patch [deleted file]
src/patches/dnsmasq/005-suggest_solution_to_ENOMEM_error_with_IPv6_multicast.patch [new file with mode: 0644]
src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch [deleted file]
src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch [deleted file]
src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch [deleted file]
src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch [deleted file]
src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch [deleted file]
src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch [deleted file]
src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch [deleted file]
src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch [deleted file]
src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch [deleted file]
src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch [deleted file]
src/patches/dnsmasq/006-clarify_man_page_on_RDNSS_set_in_router_advertisement.patch [new file with mode: 0644]
src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch [deleted file]
src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch [deleted file]
src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch [deleted file]
src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch [deleted file]
src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch [deleted file]
src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch [deleted file]
src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch [deleted file]
src/patches/dnsmasq/0067-Merge-message-translations.patch [deleted file]
src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch [deleted file]
src/patches/dnsmasq/0069-Whitespace-fixes.patch [deleted file]
src/patches/dnsmasq/007-handle_signed_dangling_CNAME_replies_to_DS_queries.patch [new file with mode: 0644]
src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch [deleted file]
src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch [deleted file]
src/patches/dnsmasq/0072-Fix-crash-caused-by-looking-up-servers.bind-when-man.patch [deleted file]
src/patches/dnsmasq/0073-Fix-crash-on-receipt-of-certain-malformed-DNS-reques.patch [deleted file]
src/patches/dnsmasq/0074-Fix-crash-in-auth-code-with-odd-configuration.patch [deleted file]
src/patches/dnsmasq/0075-Auth-correct-replies-to-NS-and-SOA-in-.arpa-zones.patch [deleted file]
src/patches/dnsmasq/0076-Fix-srk-induced-crash-in-new-tftp_no_fail-code.patch [deleted file]
src/patches/dnsmasq/0077-Note-CVE-2015-3294.patch [deleted file]
src/patches/dnsmasq/0078-Log-domain-when-reporting-DNSSEC-validation-failure.patch [deleted file]
src/patches/dnsmasq/008-DHCPv6_option_56_does_not_hold_an_address_list.patch [new file with mode: 0644]
src/patches/dnsmasq/009-Respect_the_--no_resolv_flag_in_inotify_code.patch [new file with mode: 0644]
src/patches/dnsmasq/010-Rationalise_5e3e464ac4022ee0b3794513abe510817e2cf3ca.patch [new file with mode: 0644]
src/patches/dnsmasq/011-Catch_errors_from_sendmsg_in_DHCP_code.patch [new file with mode: 0644]
src/patches/dnsmasq/012-Update_list_of_subnet_for_--bogus-priv.patch [new file with mode: 0644]
src/patches/dnsmasq/013-Fix_crash_when_empty_address_from_DNS_overlays_A_record_from.patch [new file with mode: 0644]
src/patches/dnsmasq/014-Handle_unknown_DS_hash_algos_correctly.patch [new file with mode: 0644]
src/patches/dnsmasq/015-Fix_crash_at_start_up_with_conf-dir.patch [new file with mode: 0644]
src/patches/dnsmasq/016-Major_rationalisation_of_DNSSEC_validation.patch [new file with mode: 0644]
src/patches/dnsmasq/017-Abandon_caching_RRSIGs_and_returning_them_from_cache.patch [new file with mode: 0644]
src/patches/dnsmasq/018-Move_code_which_caches_DS_records_to_a_more_logical_place.patch [new file with mode: 0644]
src/patches/dnsmasq/019-Generalise_RR-filtering_code_for_use_with_EDNS0.patch [new file with mode: 0644]
src/patches/dnsmasq/020-DNSSEC_validation_tweak.patch [new file with mode: 0644]
src/patches/dnsmasq/021-Tweaks_to_EDNS0_handling_in_DNS_replies.patch [new file with mode: 0644]
src/patches/dnsmasq/022-Tidy_up_DNSSEC_non-existence_code_Check_zone_status_is_NSEC_proof_bad.patch [new file with mode: 0644]
src/patches/dnsmasq/023-Fix_brace_botch_in_dnssec_validate_ds.patch [new file with mode: 0644]
src/patches/dnsmasq/024-Do_a_better_job_of_determining_which_DNSSEC_sig_algos_are_supported.patch [new file with mode: 0644]
src/patches/dnsmasq/025-Major_tidy_up_of_EDNS0_handling_and_computation_use_of_udp.patch [new file with mode: 0644]
src/patches/dnsmasq/026-More_tweaks_in_handling_unknown_DNSSEC_algorithms.patch [new file with mode: 0644]
src/patches/dnsmasq/027-Nasty_rare_and_obscure_off-by-one_in_DNSSEC_hostname_cmp.patch [new file with mode: 0644]
src/patches/dnsmasq/028-Minor_tweak_to_previous_commit.patch [new file with mode: 0644]
src/patches/dnsmasq/029-NSEC3_check_RFC5155_para_8_2.patch [new file with mode: 0644]
src/patches/dracut-038_add_sdhci-pci.patch [new file with mode: 0644]
src/patches/fireinfo/0001-Add-an-other-forbidden-string-Serial.patch [moved from src/patches/fireinfo-Add-an-other-forbidden-string-Serial.patch with 90% similarity]
src/patches/fireinfo/0002-Escape-any-non-printable-ascii-characters.patch [new file with mode: 0644]
src/patches/fireinfo/0003-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch [new file with mode: 0644]
src/patches/fireinfo/0004-Filter-all-IDs-that-only-consist-of-0xff.patch [new file with mode: 0644]
src/patches/fireinfo/0005-Fix-crash-if-there-is-id-has-already-been-reset-to-N.patch [new file with mode: 0644]
src/patches/gcc/gcc-fix-inlining-issues.patch [new file with mode: 0644]
src/patches/gcc/gcc44-build-id.patch [deleted file]
src/patches/gcc/gcc44-c++-builtin-redecl.patch [deleted file]
src/patches/gcc/gcc44-i386-libgomp.patch [deleted file]
src/patches/gcc/gcc44-no-add-needed.patch [deleted file]
src/patches/gcc/gcc44-pr33763.patch [deleted file]
src/patches/gcc/gcc44-rh330771.patch [deleted file]
src/patches/gcc/gcc44-rh533181.patch [deleted file]
src/patches/gcc/gcc44-rh610785.patch [deleted file]
src/patches/gcc/gcc44-unwind-debug-hook.patch [deleted file]
src/patches/gcc/gcc49-i386-libgomp.patch [new file with mode: 0644]
src/patches/gcc/gcc49-libtool-no-rpath.patch [moved from src/patches/gcc/gcc44-libtool-no-rpath.patch with 100% similarity]
src/patches/gcc/gcc49-no-add-needed.patch [new file with mode: 0644]
src/patches/gcc/gcc49-pr38757.patch [new file with mode: 0644]
src/patches/gcc/gcc49-pr64336.patch [new file with mode: 0644]
src/patches/glibc-2.12-accept-make-versions-4.0-and-greater.patch [new file with mode: 0644]
src/patches/glibc/glibc-mq_open.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1207995.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1209375.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1217186.patch [new file with mode: 0644]
src/patches/linux-3.10-dvb_tevi_s482.patch [new file with mode: 0644]
src/patches/linux-3.14-apu_leds.patch [moved from src/patches/linux-3.10-apu_leds.patch with 80% similarity]
src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch [new file with mode: 0644]
src/patches/linux-3.14.43_new_qtrim_blacklist.patch [new file with mode: 0644]
src/patches/linux-genksyms_fix_typeof_handling.patch [new file with mode: 0644]
src/patches/linux/0001-Drivers-net-hyperv-Get-rid-of-the-rndis_filter_packe.patch [new file with mode: 0644]
src/patches/linux/0001-hyperv-Add-support-for-virtual-Receive-Side-Scaling-.patch [new file with mode: 0644]
src/patches/linux/0002-Drivers-net-hyperv-Cleanup-the-receive-path.patch [new file with mode: 0644]
src/patches/linux/0002-hyperv-Remove-recv_pkt_list-and-lock.patch [new file with mode: 0644]
src/patches/linux/0003-Drivers-net-hyperv-Cleanup-the-netvsc-receive-callba.patch [new file with mode: 0644]
src/patches/linux/0003-hyperv-Simplify-the-send_completion-variables.patch [new file with mode: 0644]
src/patches/linux/0004-hyperv-Add-latest-NetVSP-versions-to-auto-negotiatio.patch [new file with mode: 0644]
src/patches/linux/0004-hyperv-Enable-sendbuf-mechanism-on-the-send-path.patch [new file with mode: 0644]
src/patches/linux/0005-Add-support-for-netvsc-build-without-CONFIG_SYSFS-fl.patch [new file with mode: 0644]
src/patches/linux/0005-Drivers-net-hyperv-Enable-scatter-gather-I-O.patch [new file with mode: 0644]
src/patches/linux/0006-Drivers-net-hyperv-Cleanup-the-send-path.patch [new file with mode: 0644]
src/patches/linux/0006-net-get-rid-of-SET_ETHTOOL_OPS.patch [new file with mode: 0644]
src/patches/linux/0007-Drivers-net-hyperv-Enable-offloads-on-the-host.patch [new file with mode: 0644]
src/patches/linux/0007-hyperv-Add-hash-value-into-RNDIS-Per-packet-info.patch [new file with mode: 0644]
src/patches/linux/0008-Drivers-net-hyperv-Enable-receive-side-IP-checksum-o.patch [new file with mode: 0644]
src/patches/linux/0008-hyperv-fix-apparent-cut-n-paste-error-in-send-path-t.patch [new file with mode: 0644]
src/patches/linux/0009-Drivers-net-hyperv-Enable-send-side-checksum-offload.patch [new file with mode: 0644]
src/patches/linux/0009-hyperv-Fix-error-return-code-in-netvsc_init_buf.patch [new file with mode: 0644]
src/patches/linux/0010-Drivers-net-hyperv-Enable-large-send-offload.patch [new file with mode: 0644]
src/patches/linux/0010-hyperv-Fix-a-bug-in-netvsc_start_xmit.patch [new file with mode: 0644]
src/patches/linux/0011-hyperv-Change-the-receive-buffer-size-for-legacy-hos.patch [moved from src/patches/linux-3.14.x-hyperv-2008-fix.patch with 81% similarity]
src/patches/linux/0011-hyperv-Fix-a-bug-in-netvsc_send.patch [new file with mode: 0644]
src/patches/linux/0012-Drivers-net-hyperv-Allocate-memory-for-all-possible-.patch [new file with mode: 0644]
src/patches/linux/0013-Drivers-net-hyperv-Negotiate-suitable-ndis-version-f.patch [new file with mode: 0644]
src/patches/linux/0014-Drivers-net-hyperv-Address-UDP-checksum-issues.patch [new file with mode: 0644]
src/patches/linux/0015-hyperv-Properly-handle-checksum-offload.patch [new file with mode: 0644]
src/patches/linux/0016-hyperv-Add-support-for-virtual-Receive-Side-Scaling-.patch [new file with mode: 0644]
src/patches/linux/0017-hyperv-Remove-recv_pkt_list-and-lock.patch [new file with mode: 0644]
src/patches/linux/0018-hyperv-Simplify-the-send_completion-variables.patch [new file with mode: 0644]
src/patches/linux/0019-hyperv-Enable-sendbuf-mechanism-on-the-send-path.patch [new file with mode: 0644]
src/patches/linux/0020-Add-support-for-netvsc-build-without-CONFIG_SYSFS-fl.patch [new file with mode: 0644]
src/patches/linux/0021-hyperv-Add-hash-value-into-RNDIS-Per-packet-info.patch [new file with mode: 0644]
src/patches/linux/0022-hyperv-fix-apparent-cut-n-paste-error-in-send-path-t.patch [new file with mode: 0644]
src/patches/linux/0023-hyperv-Fix-error-return-code-in-netvsc_init_buf.patch [new file with mode: 0644]
src/patches/linux/0024-hyperv-Fix-a-bug-in-netvsc_send.patch [new file with mode: 0644]
src/patches/linux/0025-Drivers-hv-vmbus-Support-per-channel-driver-state.patch [new file with mode: 0644]
src/patches/lua-5.3.0-autotoolize.patch [new file with mode: 0644]
src/patches/openssl-1.0.2-fix_parallel_build-1.patch [new file with mode: 0644]
src/patches/openssl-1.0.2a-rpmbuild.patch
src/patches/openssl-1.0.2a_auto_enable_padlock.patch [new file with mode: 0644]
src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch [new file with mode: 0644]
src/patches/pcre-8.37-Fix-another-buffer-overflow.patch [new file with mode: 0644]
src/patches/pcre-8.37-Fix-buffer-overflow-for-forward-reference-within-bac.patch [new file with mode: 0644]
src/patches/pcre-8.37-Fix-buffer-overflow-for-named-recursive-back-referen.patch [new file with mode: 0644]
src/patches/pcre-8.37-Fix-buffer-overflow-for-named-references-in-situatio.patch [new file with mode: 0644]
src/patches/pcre-8.37-Fix-named-forward-reference-to-duplicate-group-numbe.patch [new file with mode: 0644]
src/patches/qemu-0.15.0_missing_definitions_hack.patch [deleted file]
src/patches/squid-3.4-13228.patch [new file with mode: 0644]
src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch [new file with mode: 0644]
src/patches/strongswan-ipfire.patch
src/scripts/ovpn-ccd-convert
src/setup/networking.c
src/setup/po/LINGUAS
src/setup/po/de.po
src/setup/po/pt.po [new file with mode: 0644]
src/setup/po/ro.po [new file with mode: 0644]
src/setup/po/ru.po
src/setup/po/sq.po
src/squid-accounting/accounting.cgi
src/squid-accounting/acct-lib.pl
src/squid-accounting/acct.de.pl
src/squid-accounting/acct.en.pl
src/squid-accounting/acct.pl
tools/checkrootfiles [moved from tools/checkwronginitlinks with 76% similarity]
tools/make-functions

index 83db2348b9af77f03d3e5a36e2691bce6853bb09..6f09a1f9c91eef51d0a0f897781a5ce1f9d309e6 100644 (file)
@@ -1,4 +1,5 @@
 *.tmp
+/etc/sysconfig/lm_sensors
 /var/ipfire/ethernet/settings
 /var/ipfire/firewall/bin/*
 /var/ipfire/proxy/calamaris/bin/*
index 159ff9a5837a530d711c089d59b6265965eee0db..6ecb930fa77fc5a5d897beb235c2b102b77a1f9c 100644 (file)
@@ -9,6 +9,7 @@
 /etc/shadow
 /etc/group
 /etc/ipsec.user.*
+/etc/ipsec.user-post.conf
 /etc/sysconfig/*
 /etc/hosts*
 /etc/httpd/*
diff --git a/config/backup/includes/cyrus-imapd b/config/backup/includes/cyrus-imapd
new file mode 100644 (file)
index 0000000..bb1bb3b
--- /dev/null
@@ -0,0 +1,4 @@
+/usr/sieve
+/var/imap
+/var/ipfire/cyrusimap
+/var/log/imap
diff --git a/config/backup/includes/dma b/config/backup/includes/dma
new file mode 100644 (file)
index 0000000..7c75205
--- /dev/null
@@ -0,0 +1,5 @@
+/var/ipfire/dma
+/var/ipfire/dma/dma.conf
+/var/ipfire/dma/auth.conf
+/var/ipfire/dma/mail.conf
+/var/spool/dma
diff --git a/config/backup/includes/netsnmpd b/config/backup/includes/netsnmpd
new file mode 100644 (file)
index 0000000..78ac6ac
--- /dev/null
@@ -0,0 +1 @@
+/etc/snmpd.conf
diff --git a/config/ca-certificates/build.sh b/config/ca-certificates/build.sh
new file mode 100644 (file)
index 0000000..7a9e202
--- /dev/null
@@ -0,0 +1,51 @@
+#!/bin/bash
+
+set -e
+
+# Create file layout.
+mkdir -pv certs certs/legacy-default certs/legacy-disable
+cp certdata.txt ipfire-ca.crt certs
+cd certs
+
+python ../certdata2pem.py
+
+cd ..
+cat <<EOF > ca-bundle.crt
+# This is a bundle of X.509 certificates of public Certificate
+# Authorities.  It was generated from the Mozilla root CA list.
+# 
+# Source: mozilla/security/nss/lib/ckfw/builtins/certdata.txt
+#
+EOF
+
+cat <<EOF > ca-bundle.trust.crt
+# This is a bundle of X.509 certificates of public Certificate
+# Authorities.  It was generated from the Mozilla root CA list.
+# These certificates are in the OpenSSL "TRUSTED CERTIFICATE"
+# format and have trust bits set accordingly.
+#
+# Source: mozilla/security/nss/lib/ckfw/builtins/certdata.txt
+#
+EOF
+
+for f in certs/*.crt; do 
+       [ -z "${f}" ] && continue
+
+       tbits=$(sed -n '/^# openssl-trust/{s/^.*=//;p;}' ${f})
+       case "${tbits}" in
+               *serverAuth*)
+                       openssl x509 -text -in "${f}" >> ca-bundle.crt
+                       ;;
+       esac
+
+       if [ -n "$tbits" ]; then
+               targs=""
+               for t in ${tbits}; do
+                       targs="${targs} -addtrust ${t}"
+               done
+
+               openssl x509 -text -in "${f}" -trustout $targs >> ca-bundle.trust.crt
+       fi
+done
+
+exit 0
diff --git a/config/ca-certificates/certdata.txt b/config/ca-certificates/certdata.txt
new file mode 100644 (file)
index 0000000..5610a6f
--- /dev/null
@@ -0,0 +1,32625 @@
+# 
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# certdata.txt
+#
+# This file contains the object definitions for the certs and other
+# information "built into" NSS.
+#
+# Object definitions:
+#
+#    Certificates
+#
+#  -- Attribute --          -- type --              -- value --
+#  CKA_CLASS                CK_OBJECT_CLASS         CKO_CERTIFICATE
+#  CKA_TOKEN                CK_BBOOL                CK_TRUE
+#  CKA_PRIVATE              CK_BBOOL                CK_FALSE
+#  CKA_MODIFIABLE           CK_BBOOL                CK_FALSE
+#  CKA_LABEL                UTF8                    (varies)
+#  CKA_CERTIFICATE_TYPE     CK_CERTIFICATE_TYPE     CKC_X_509
+#  CKA_SUBJECT              DER+base64              (varies)
+#  CKA_ID                   byte array              (varies)
+#  CKA_ISSUER               DER+base64              (varies)
+#  CKA_SERIAL_NUMBER        DER+base64              (varies)
+#  CKA_VALUE                DER+base64              (varies)
+#  CKA_NSS_EMAIL            ASCII7                  (unused here)
+#
+#    Trust
+#
+#  -- Attribute --              -- type --          -- value --
+#  CKA_CLASS                    CK_OBJECT_CLASS     CKO_TRUST
+#  CKA_TOKEN                    CK_BBOOL            CK_TRUE
+#  CKA_PRIVATE                  CK_BBOOL            CK_FALSE
+#  CKA_MODIFIABLE               CK_BBOOL            CK_FALSE
+#  CKA_LABEL                    UTF8                (varies)
+#  CKA_ISSUER                   DER+base64          (varies)
+#  CKA_SERIAL_NUMBER            DER+base64          (varies)
+#  CKA_CERT_HASH                binary+base64       (varies)
+#  CKA_EXPIRES                  CK_DATE             (not used here)
+#  CKA_TRUST_DIGITAL_SIGNATURE  CK_TRUST            (varies)
+#  CKA_TRUST_NON_REPUDIATION    CK_TRUST            (varies)
+#  CKA_TRUST_KEY_ENCIPHERMENT   CK_TRUST            (varies)
+#  CKA_TRUST_DATA_ENCIPHERMENT  CK_TRUST            (varies)
+#  CKA_TRUST_KEY_AGREEMENT      CK_TRUST            (varies)
+#  CKA_TRUST_KEY_CERT_SIGN      CK_TRUST            (varies)
+#  CKA_TRUST_CRL_SIGN           CK_TRUST            (varies)
+#  CKA_TRUST_SERVER_AUTH        CK_TRUST            (varies)
+#  CKA_TRUST_CLIENT_AUTH        CK_TRUST            (varies)
+#  CKA_TRUST_CODE_SIGNING       CK_TRUST            (varies)
+#  CKA_TRUST_EMAIL_PROTECTION   CK_TRUST            (varies)
+#  CKA_TRUST_IPSEC_END_SYSTEM   CK_TRUST            (varies)
+#  CKA_TRUST_IPSEC_TUNNEL       CK_TRUST            (varies)
+#  CKA_TRUST_IPSEC_USER         CK_TRUST            (varies)
+#  CKA_TRUST_TIME_STAMPING      CK_TRUST            (varies)
+#  CKA_TRUST_STEP_UP_APPROVED   CK_BBOOL            (varies)
+#  (other trust attributes can be defined)
+#
+
+#
+# The object to tell NSS that this is a root list and we don't
+# have to go looking for others.
+#
+BEGINDATA
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_BUILTIN_ROOT_LIST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Mozilla Builtin Roots"
+
+#
+# Certificate "GTE CyberTrust Global Root"
+#
+# Issuer: CN=GTE CyberTrust Global Root,OU="GTE CyberTrust Solutions, Inc.",O=GTE Corporation,C=US
+# Serial Number: 421 (0x1a5)
+# Subject: CN=GTE CyberTrust Global Root,OU="GTE CyberTrust Solutions, Inc.",O=GTE Corporation,C=US
+# Not Valid Before: Thu Aug 13 00:29:00 1998
+# Not Valid After : Mon Aug 13 23:59:00 2018
+# Fingerprint (MD5): CA:3D:D3:68:F1:03:5C:D0:32:FA:B8:2B:59:E8:5A:DB
+# Fingerprint (SHA1): 97:81:79:50:D8:1C:96:70:CC:34:D8:09:CF:79:44:31:36:7E:F4:74
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GTE CyberTrust Global Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\030\060\026\006\003\125\004\012\023\017\107\124\105\040\103\157
+\162\160\157\162\141\164\151\157\156\061\047\060\045\006\003\125
+\004\013\023\036\107\124\105\040\103\171\142\145\162\124\162\165
+\163\164\040\123\157\154\165\164\151\157\156\163\054\040\111\156
+\143\056\061\043\060\041\006\003\125\004\003\023\032\107\124\105
+\040\103\171\142\145\162\124\162\165\163\164\040\107\154\157\142
+\141\154\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\030\060\026\006\003\125\004\012\023\017\107\124\105\040\103\157
+\162\160\157\162\141\164\151\157\156\061\047\060\045\006\003\125
+\004\013\023\036\107\124\105\040\103\171\142\145\162\124\162\165
+\163\164\040\123\157\154\165\164\151\157\156\163\054\040\111\156
+\143\056\061\043\060\041\006\003\125\004\003\023\032\107\124\105
+\040\103\171\142\145\162\124\162\165\163\164\040\107\154\157\142
+\141\154\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\001\245
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\132\060\202\001\303\002\002\001\245\060\015\006\011
+\052\206\110\206\367\015\001\001\004\005\000\060\165\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\030\060\026\006\003
+\125\004\012\023\017\107\124\105\040\103\157\162\160\157\162\141
+\164\151\157\156\061\047\060\045\006\003\125\004\013\023\036\107
+\124\105\040\103\171\142\145\162\124\162\165\163\164\040\123\157
+\154\165\164\151\157\156\163\054\040\111\156\143\056\061\043\060
+\041\006\003\125\004\003\023\032\107\124\105\040\103\171\142\145
+\162\124\162\165\163\164\040\107\154\157\142\141\154\040\122\157
+\157\164\060\036\027\015\071\070\060\070\061\063\060\060\062\071
+\060\060\132\027\015\061\070\060\070\061\063\062\063\065\071\060
+\060\132\060\165\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\030\060\026\006\003\125\004\012\023\017\107\124\105\040
+\103\157\162\160\157\162\141\164\151\157\156\061\047\060\045\006
+\003\125\004\013\023\036\107\124\105\040\103\171\142\145\162\124
+\162\165\163\164\040\123\157\154\165\164\151\157\156\163\054\040
+\111\156\143\056\061\043\060\041\006\003\125\004\003\023\032\107
+\124\105\040\103\171\142\145\162\124\162\165\163\164\040\107\154
+\157\142\141\154\040\122\157\157\164\060\201\237\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\201\215\000\060
+\201\211\002\201\201\000\225\017\240\266\360\120\234\350\172\307
+\210\315\335\027\016\056\260\224\320\033\075\016\366\224\300\212
+\224\307\006\310\220\227\310\270\144\032\172\176\154\074\123\341
+\067\050\163\140\177\262\227\123\007\237\123\371\155\130\224\322
+\257\215\155\210\147\200\346\355\262\225\317\162\061\312\245\034
+\162\272\134\002\347\144\102\347\371\251\054\326\072\015\254\215
+\102\252\044\001\071\346\234\077\001\205\127\015\130\207\105\370
+\323\205\252\223\151\046\205\160\110\200\077\022\025\307\171\264
+\037\005\057\073\142\231\002\003\001\000\001\060\015\006\011\052
+\206\110\206\367\015\001\001\004\005\000\003\201\201\000\155\353
+\033\011\351\136\331\121\333\147\042\141\244\052\074\110\167\343
+\240\174\246\336\163\242\024\003\205\075\373\253\016\060\305\203
+\026\063\201\023\010\236\173\064\116\337\100\310\164\327\271\175
+\334\364\166\125\175\233\143\124\030\351\360\352\363\134\261\331
+\213\102\036\271\300\225\116\272\372\325\342\174\365\150\141\277
+\216\354\005\227\137\133\260\327\243\205\064\304\044\247\015\017
+\225\223\357\313\224\330\236\037\235\134\205\155\307\252\256\117
+\037\042\265\315\225\255\272\247\314\371\253\013\172\177
+END
+
+# Trust for Certificate "GTE CyberTrust Global Root"
+# Issuer: CN=GTE CyberTrust Global Root,OU="GTE CyberTrust Solutions, Inc.",O=GTE Corporation,C=US
+# Serial Number: 421 (0x1a5)
+# Subject: CN=GTE CyberTrust Global Root,OU="GTE CyberTrust Solutions, Inc.",O=GTE Corporation,C=US
+# Not Valid Before: Thu Aug 13 00:29:00 1998
+# Not Valid After : Mon Aug 13 23:59:00 2018
+# Fingerprint (MD5): CA:3D:D3:68:F1:03:5C:D0:32:FA:B8:2B:59:E8:5A:DB
+# Fingerprint (SHA1): 97:81:79:50:D8:1C:96:70:CC:34:D8:09:CF:79:44:31:36:7E:F4:74
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GTE CyberTrust Global Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\227\201\171\120\330\034\226\160\314\064\330\011\317\171\104\061
+\066\176\364\164
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\312\075\323\150\361\003\134\320\062\372\270\053\131\350\132\333
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\030\060\026\006\003\125\004\012\023\017\107\124\105\040\103\157
+\162\160\157\162\141\164\151\157\156\061\047\060\045\006\003\125
+\004\013\023\036\107\124\105\040\103\171\142\145\162\124\162\165
+\163\164\040\123\157\154\165\164\151\157\156\163\054\040\111\156
+\143\056\061\043\060\041\006\003\125\004\003\023\032\107\124\105
+\040\103\171\142\145\162\124\162\165\163\164\040\107\154\157\142
+\141\154\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\001\245
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Thawte Server CA"
+#
+# Issuer: E=server-certs@thawte.com,CN=Thawte Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Serial Number: 1 (0x1)
+# Subject: E=server-certs@thawte.com,CN=Thawte Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Not Valid Before: Thu Aug 01 00:00:00 1996
+# Not Valid After : Thu Dec 31 23:59:59 2020
+# Fingerprint (MD5): C5:70:C4:A2:ED:53:78:0C:C8:10:53:81:64:CB:D0:1D
+# Fingerprint (SHA1): 23:E5:94:94:51:95:F2:41:48:03:B4:D5:64:D2:A3:A3:F5:D8:8B:8C
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Thawte Server CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\304\061\013\060\011\006\003\125\004\006\023\002\132\101
+\061\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145
+\162\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007
+\023\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006
+\003\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156
+\163\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003
+\125\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151
+\163\151\157\156\061\031\060\027\006\003\125\004\003\023\020\124
+\150\141\167\164\145\040\123\145\162\166\145\162\040\103\101\061
+\046\060\044\006\011\052\206\110\206\367\015\001\011\001\026\027
+\163\145\162\166\145\162\055\143\145\162\164\163\100\164\150\141
+\167\164\145\056\143\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\304\061\013\060\011\006\003\125\004\006\023\002\132\101
+\061\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145
+\162\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007
+\023\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006
+\003\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156
+\163\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003
+\125\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151
+\163\151\157\156\061\031\060\027\006\003\125\004\003\023\020\124
+\150\141\167\164\145\040\123\145\162\166\145\162\040\103\101\061
+\046\060\044\006\011\052\206\110\206\367\015\001\011\001\026\027
+\163\145\162\166\145\162\055\143\145\162\164\163\100\164\150\141
+\167\164\145\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\023\060\202\002\174\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
+\201\304\061\013\060\011\006\003\125\004\006\023\002\132\101\061
+\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145\162
+\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007\023
+\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006\003
+\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156\163
+\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003\125
+\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151\163
+\151\157\156\061\031\060\027\006\003\125\004\003\023\020\124\150
+\141\167\164\145\040\123\145\162\166\145\162\040\103\101\061\046
+\060\044\006\011\052\206\110\206\367\015\001\011\001\026\027\163
+\145\162\166\145\162\055\143\145\162\164\163\100\164\150\141\167
+\164\145\056\143\157\155\060\036\027\015\071\066\060\070\060\061
+\060\060\060\060\060\060\132\027\015\062\060\061\062\063\061\062
+\063\065\071\065\071\132\060\201\304\061\013\060\011\006\003\125
+\004\006\023\002\132\101\061\025\060\023\006\003\125\004\010\023
+\014\127\145\163\164\145\162\156\040\103\141\160\145\061\022\060
+\020\006\003\125\004\007\023\011\103\141\160\145\040\124\157\167
+\156\061\035\060\033\006\003\125\004\012\023\024\124\150\141\167
+\164\145\040\103\157\156\163\165\154\164\151\156\147\040\143\143
+\061\050\060\046\006\003\125\004\013\023\037\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\123\145\162\166\151\143\145
+\163\040\104\151\166\151\163\151\157\156\061\031\060\027\006\003
+\125\004\003\023\020\124\150\141\167\164\145\040\123\145\162\166
+\145\162\040\103\101\061\046\060\044\006\011\052\206\110\206\367
+\015\001\011\001\026\027\163\145\162\166\145\162\055\143\145\162
+\164\163\100\164\150\141\167\164\145\056\143\157\155\060\201\237
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\201\215\000\060\201\211\002\201\201\000\323\244\120\156\310\377
+\126\153\346\317\135\266\352\014\150\165\107\242\252\302\332\204
+\045\374\250\364\107\121\332\205\265\040\164\224\206\036\017\165
+\311\351\010\141\365\006\155\060\156\025\031\002\351\122\300\142
+\333\115\231\236\342\152\014\104\070\315\376\276\343\144\011\160
+\305\376\261\153\051\266\057\111\310\073\324\047\004\045\020\227
+\057\347\220\155\300\050\102\231\327\114\103\336\303\365\041\155
+\124\237\135\303\130\341\300\344\331\133\260\270\334\264\173\337
+\066\072\302\265\146\042\022\326\207\015\002\003\001\000\001\243
+\023\060\021\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\015\006\011\052\206\110\206\367\015\001\001
+\004\005\000\003\201\201\000\007\372\114\151\134\373\225\314\106
+\356\205\203\115\041\060\216\312\331\250\157\111\032\346\332\121
+\343\140\160\154\204\141\021\241\032\310\110\076\131\103\175\117
+\225\075\241\213\267\013\142\230\172\165\212\335\210\116\116\236
+\100\333\250\314\062\164\271\157\015\306\343\263\104\013\331\212
+\157\232\051\233\231\030\050\073\321\343\100\050\232\132\074\325
+\265\347\040\033\213\312\244\253\215\351\121\331\342\114\054\131
+\251\332\271\262\165\033\366\102\362\357\307\362\030\371\211\274
+\243\377\212\043\056\160\107
+END
+
+# Trust for Certificate "Thawte Server CA"
+# Issuer: E=server-certs@thawte.com,CN=Thawte Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Serial Number: 1 (0x1)
+# Subject: E=server-certs@thawte.com,CN=Thawte Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Not Valid Before: Thu Aug 01 00:00:00 1996
+# Not Valid After : Thu Dec 31 23:59:59 2020
+# Fingerprint (MD5): C5:70:C4:A2:ED:53:78:0C:C8:10:53:81:64:CB:D0:1D
+# Fingerprint (SHA1): 23:E5:94:94:51:95:F2:41:48:03:B4:D5:64:D2:A3:A3:F5:D8:8B:8C
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Thawte Server CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\043\345\224\224\121\225\362\101\110\003\264\325\144\322\243\243
+\365\330\213\214
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\305\160\304\242\355\123\170\014\310\020\123\201\144\313\320\035
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\304\061\013\060\011\006\003\125\004\006\023\002\132\101
+\061\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145
+\162\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007
+\023\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006
+\003\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156
+\163\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003
+\125\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151
+\163\151\157\156\061\031\060\027\006\003\125\004\003\023\020\124
+\150\141\167\164\145\040\123\145\162\166\145\162\040\103\101\061
+\046\060\044\006\011\052\206\110\206\367\015\001\011\001\026\027
+\163\145\162\166\145\162\055\143\145\162\164\163\100\164\150\141
+\167\164\145\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Thawte Premium Server CA"
+#
+# Issuer: E=premium-server@thawte.com,CN=Thawte Premium Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Serial Number: 1 (0x1)
+# Subject: E=premium-server@thawte.com,CN=Thawte Premium Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Not Valid Before: Thu Aug 01 00:00:00 1996
+# Not Valid After : Thu Dec 31 23:59:59 2020
+# Fingerprint (MD5): 06:9F:69:79:16:66:90:02:1B:8C:8C:A2:C3:07:6F:3A
+# Fingerprint (SHA1): 62:7F:8D:78:27:65:63:99:D2:7D:7F:90:44:C9:FE:B3:F3:3E:FA:9A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Thawte Premium Server CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\316\061\013\060\011\006\003\125\004\006\023\002\132\101
+\061\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145
+\162\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007
+\023\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006
+\003\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156
+\163\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003
+\125\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151
+\163\151\157\156\061\041\060\037\006\003\125\004\003\023\030\124
+\150\141\167\164\145\040\120\162\145\155\151\165\155\040\123\145
+\162\166\145\162\040\103\101\061\050\060\046\006\011\052\206\110
+\206\367\015\001\011\001\026\031\160\162\145\155\151\165\155\055
+\163\145\162\166\145\162\100\164\150\141\167\164\145\056\143\157
+\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\316\061\013\060\011\006\003\125\004\006\023\002\132\101
+\061\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145
+\162\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007
+\023\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006
+\003\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156
+\163\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003
+\125\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151
+\163\151\157\156\061\041\060\037\006\003\125\004\003\023\030\124
+\150\141\167\164\145\040\120\162\145\155\151\165\155\040\123\145
+\162\166\145\162\040\103\101\061\050\060\046\006\011\052\206\110
+\206\367\015\001\011\001\026\031\160\162\145\155\151\165\155\055
+\163\145\162\166\145\162\100\164\150\141\167\164\145\056\143\157
+\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\047\060\202\002\220\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
+\201\316\061\013\060\011\006\003\125\004\006\023\002\132\101\061
+\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145\162
+\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007\023
+\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006\003
+\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156\163
+\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003\125
+\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151\163
+\151\157\156\061\041\060\037\006\003\125\004\003\023\030\124\150
+\141\167\164\145\040\120\162\145\155\151\165\155\040\123\145\162
+\166\145\162\040\103\101\061\050\060\046\006\011\052\206\110\206
+\367\015\001\011\001\026\031\160\162\145\155\151\165\155\055\163
+\145\162\166\145\162\100\164\150\141\167\164\145\056\143\157\155
+\060\036\027\015\071\066\060\070\060\061\060\060\060\060\060\060
+\132\027\015\062\060\061\062\063\061\062\063\065\071\065\071\132
+\060\201\316\061\013\060\011\006\003\125\004\006\023\002\132\101
+\061\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145
+\162\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007
+\023\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006
+\003\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156
+\163\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003
+\125\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151
+\163\151\157\156\061\041\060\037\006\003\125\004\003\023\030\124
+\150\141\167\164\145\040\120\162\145\155\151\165\155\040\123\145
+\162\166\145\162\040\103\101\061\050\060\046\006\011\052\206\110
+\206\367\015\001\011\001\026\031\160\162\145\155\151\165\155\055
+\163\145\162\166\145\162\100\164\150\141\167\164\145\056\143\157
+\155\060\201\237\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\201\215\000\060\201\211\002\201\201\000\322\066
+\066\152\213\327\302\133\236\332\201\101\142\217\070\356\111\004
+\125\326\320\357\034\033\225\026\107\357\030\110\065\072\122\364
+\053\152\006\217\073\057\352\126\343\257\206\215\236\027\367\236
+\264\145\165\002\115\357\313\011\242\041\121\330\233\320\147\320
+\272\015\222\006\024\163\324\223\313\227\052\000\234\134\116\014
+\274\372\025\122\374\362\104\156\332\021\112\156\010\237\057\055
+\343\371\252\072\206\163\266\106\123\130\310\211\005\275\203\021
+\270\163\077\252\007\215\364\102\115\347\100\235\034\067\002\003
+\001\000\001\243\023\060\021\060\017\006\003\125\035\023\001\001
+\377\004\005\060\003\001\001\377\060\015\006\011\052\206\110\206
+\367\015\001\001\004\005\000\003\201\201\000\046\110\054\026\302
+\130\372\350\026\164\014\252\252\137\124\077\362\327\311\170\140
+\136\136\156\067\143\042\167\066\176\262\027\304\064\271\365\010
+\205\374\311\001\070\377\115\276\362\026\102\103\347\273\132\106
+\373\301\306\021\037\361\112\260\050\106\311\303\304\102\175\274
+\372\253\131\156\325\267\121\210\021\343\244\205\031\153\202\114
+\244\014\022\255\351\244\256\077\361\303\111\145\232\214\305\310
+\076\045\267\224\231\273\222\062\161\007\360\206\136\355\120\047
+\246\015\246\043\371\273\313\246\007\024\102
+END
+
+# Trust for Certificate "Thawte Premium Server CA"
+# Issuer: E=premium-server@thawte.com,CN=Thawte Premium Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Serial Number: 1 (0x1)
+# Subject: E=premium-server@thawte.com,CN=Thawte Premium Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
+# Not Valid Before: Thu Aug 01 00:00:00 1996
+# Not Valid After : Thu Dec 31 23:59:59 2020
+# Fingerprint (MD5): 06:9F:69:79:16:66:90:02:1B:8C:8C:A2:C3:07:6F:3A
+# Fingerprint (SHA1): 62:7F:8D:78:27:65:63:99:D2:7D:7F:90:44:C9:FE:B3:F3:3E:FA:9A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Thawte Premium Server CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\142\177\215\170\047\145\143\231\322\175\177\220\104\311\376\263
+\363\076\372\232
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\006\237\151\171\026\146\220\002\033\214\214\242\303\007\157\072
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\316\061\013\060\011\006\003\125\004\006\023\002\132\101
+\061\025\060\023\006\003\125\004\010\023\014\127\145\163\164\145
+\162\156\040\103\141\160\145\061\022\060\020\006\003\125\004\007
+\023\011\103\141\160\145\040\124\157\167\156\061\035\060\033\006
+\003\125\004\012\023\024\124\150\141\167\164\145\040\103\157\156
+\163\165\154\164\151\156\147\040\143\143\061\050\060\046\006\003
+\125\004\013\023\037\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\123\145\162\166\151\143\145\163\040\104\151\166\151
+\163\151\157\156\061\041\060\037\006\003\125\004\003\023\030\124
+\150\141\167\164\145\040\120\162\145\155\151\165\155\040\123\145
+\162\166\145\162\040\103\101\061\050\060\046\006\011\052\206\110
+\206\367\015\001\011\001\026\031\160\162\145\155\151\165\155\055
+\163\145\162\166\145\162\100\164\150\141\167\164\145\056\143\157
+\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Equifax Secure CA"
+#
+# Issuer: OU=Equifax Secure Certificate Authority,O=Equifax,C=US
+# Serial Number: 903804111 (0x35def4cf)
+# Subject: OU=Equifax Secure Certificate Authority,O=Equifax,C=US
+# Not Valid Before: Sat Aug 22 16:41:51 1998
+# Not Valid After : Wed Aug 22 16:41:51 2018
+# Fingerprint (MD5): 67:CB:9D:C0:13:24:8A:82:9B:B2:17:1E:D1:1B:EC:D4
+# Fingerprint (SHA1): D2:32:09:AD:23:D3:14:23:21:74:E4:0D:7F:9D:62:13:97:86:63:3A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Equifax Secure CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\020\060\016\006\003\125\004\012\023\007\105\161\165\151\146\141
+\170\061\055\060\053\006\003\125\004\013\023\044\105\161\165\151
+\146\141\170\040\123\145\143\165\162\145\040\103\145\162\164\151
+\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\020\060\016\006\003\125\004\012\023\007\105\161\165\151\146\141
+\170\061\055\060\053\006\003\125\004\013\023\044\105\161\165\151
+\146\141\170\040\123\145\143\165\162\145\040\103\145\162\164\151
+\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\065\336\364\317
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\040\060\202\002\211\240\003\002\001\002\002\004\065
+\336\364\317\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\116\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\020\060\016\006\003\125\004\012\023\007\105\161\165\151
+\146\141\170\061\055\060\053\006\003\125\004\013\023\044\105\161
+\165\151\146\141\170\040\123\145\143\165\162\145\040\103\145\162
+\164\151\146\151\143\141\164\145\040\101\165\164\150\157\162\151
+\164\171\060\036\027\015\071\070\060\070\062\062\061\066\064\061
+\065\061\132\027\015\061\070\060\070\062\062\061\066\064\061\065
+\061\132\060\116\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\020\060\016\006\003\125\004\012\023\007\105\161\165\151
+\146\141\170\061\055\060\053\006\003\125\004\013\023\044\105\161
+\165\151\146\141\170\040\123\145\143\165\162\145\040\103\145\162
+\164\151\146\151\143\141\164\145\040\101\165\164\150\157\162\151
+\164\171\060\201\237\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\201\215\000\060\201\211\002\201\201\000\301
+\135\261\130\147\010\142\356\240\232\055\037\010\155\221\024\150
+\230\012\036\376\332\004\157\023\204\142\041\303\321\174\316\237
+\005\340\270\001\360\116\064\354\342\212\225\004\144\254\361\153
+\123\137\005\263\313\147\200\277\102\002\216\376\335\001\011\354
+\341\000\024\117\374\373\360\014\335\103\272\133\053\341\037\200
+\160\231\025\127\223\026\361\017\227\152\267\302\150\043\034\314
+\115\131\060\254\121\036\073\257\053\326\356\143\105\173\305\331
+\137\120\322\343\120\017\072\210\347\277\024\375\340\307\271\002
+\003\001\000\001\243\202\001\011\060\202\001\005\060\160\006\003
+\125\035\037\004\151\060\147\060\145\240\143\240\141\244\137\060
+\135\061\013\060\011\006\003\125\004\006\023\002\125\123\061\020
+\060\016\006\003\125\004\012\023\007\105\161\165\151\146\141\170
+\061\055\060\053\006\003\125\004\013\023\044\105\161\165\151\146
+\141\170\040\123\145\143\165\162\145\040\103\145\162\164\151\146
+\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171\061
+\015\060\013\006\003\125\004\003\023\004\103\122\114\061\060\032
+\006\003\125\035\020\004\023\060\021\201\017\062\060\061\070\060
+\070\062\062\061\066\064\061\065\061\132\060\013\006\003\125\035
+\017\004\004\003\002\001\006\060\037\006\003\125\035\043\004\030
+\060\026\200\024\110\346\150\371\053\322\262\225\327\107\330\043
+\040\020\117\063\230\220\237\324\060\035\006\003\125\035\016\004
+\026\004\024\110\346\150\371\053\322\262\225\327\107\330\043\040
+\020\117\063\230\220\237\324\060\014\006\003\125\035\023\004\005
+\060\003\001\001\377\060\032\006\011\052\206\110\206\366\175\007
+\101\000\004\015\060\013\033\005\126\063\056\060\143\003\002\006
+\300\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\201\201\000\130\316\051\352\374\367\336\265\316\002\271\027
+\265\205\321\271\343\340\225\314\045\061\015\000\246\222\156\177
+\266\222\143\236\120\225\321\232\157\344\021\336\143\205\156\230
+\356\250\377\132\310\323\125\262\146\161\127\336\300\041\353\075
+\052\247\043\111\001\004\206\102\173\374\356\177\242\026\122\265
+\147\147\323\100\333\073\046\130\262\050\167\075\256\024\167\141
+\326\372\052\146\047\240\015\372\247\163\134\352\160\361\224\041
+\145\104\137\372\374\357\051\150\251\242\207\171\357\171\357\117
+\254\007\167\070
+END
+
+# Trust for Certificate "Equifax Secure CA"
+# Issuer: OU=Equifax Secure Certificate Authority,O=Equifax,C=US
+# Serial Number: 903804111 (0x35def4cf)
+# Subject: OU=Equifax Secure Certificate Authority,O=Equifax,C=US
+# Not Valid Before: Sat Aug 22 16:41:51 1998
+# Not Valid After : Wed Aug 22 16:41:51 2018
+# Fingerprint (MD5): 67:CB:9D:C0:13:24:8A:82:9B:B2:17:1E:D1:1B:EC:D4
+# Fingerprint (SHA1): D2:32:09:AD:23:D3:14:23:21:74:E4:0D:7F:9D:62:13:97:86:63:3A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Equifax Secure CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\322\062\011\255\043\323\024\043\041\164\344\015\177\235\142\023
+\227\206\143\072
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\147\313\235\300\023\044\212\202\233\262\027\036\321\033\354\324
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\020\060\016\006\003\125\004\012\023\007\105\161\165\151\146\141
+\170\061\055\060\053\006\003\125\004\013\023\044\105\161\165\151
+\146\141\170\040\123\145\143\165\162\145\040\103\145\162\164\151
+\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\065\336\364\317
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Distrust "Distrust a pb.com certificate that does not comply with the baseline requirements."
+# Issuer: OU=Equifax Secure Certificate Authority,O=Equifax,C=US
+# Serial Number: 1407252 (0x157914)
+# Subject: CN=*.pb.com,OU=Meters,O=Pitney Bowes,L=Danbury,ST=Connecticut,C=US
+# Not Valid Before: Mon Feb 01 14:54:04 2010
+# Not Valid After : Tue Sep 30 00:00:00 2014
+# Fingerprint (MD5): 8F:46:BE:99:47:6F:93:DC:5C:01:54:50:D0:4A:BD:AC
+# Fingerprint (SHA1): 30:F1:82:CA:1A:5E:4E:4F:F3:6E:D0:E6:38:18:B8:B9:41:CB:5F:8C
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Distrust a pb.com certificate that does not comply with the baseline requirements."
+CKA_ISSUER MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\020\060\016\006\003\125\004\012\023\007\105\161\165\151\146\141
+\170\061\055\060\053\006\003\125\004\013\023\044\105\161\165\151
+\146\141\170\040\123\145\143\165\162\145\040\103\145\162\164\151
+\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\025\171\024
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Digital Signature Trust Co. Global CA 1"
+#
+# Issuer: OU=DSTCA E1,O=Digital Signature Trust Co.,C=US
+# Serial Number: 913315222 (0x36701596)
+# Subject: OU=DSTCA E1,O=Digital Signature Trust Co.,C=US
+# Not Valid Before: Thu Dec 10 18:10:23 1998
+# Not Valid After : Mon Dec 10 18:40:23 2018
+# Fingerprint (MD5): 25:7A:BA:83:2E:B6:A2:0B:DA:FE:F5:02:0F:08:D7:AD
+# Fingerprint (SHA1): 81:96:8B:3A:EF:1C:DC:70:F5:FA:32:69:C2:92:A3:63:5B:D1:23:D3
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Digital Signature Trust Co. Global CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\066\160\025\226
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\051\060\202\002\222\240\003\002\001\002\002\004\066
+\160\025\226\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\106\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\044\060\042\006\003\125\004\012\023\033\104\151\147\151
+\164\141\154\040\123\151\147\156\141\164\165\162\145\040\124\162
+\165\163\164\040\103\157\056\061\021\060\017\006\003\125\004\013
+\023\010\104\123\124\103\101\040\105\061\060\036\027\015\071\070
+\061\062\061\060\061\070\061\060\062\063\132\027\015\061\070\061
+\062\061\060\061\070\064\060\062\063\132\060\106\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\044\060\042\006\003\125
+\004\012\023\033\104\151\147\151\164\141\154\040\123\151\147\156
+\141\164\165\162\145\040\124\162\165\163\164\040\103\157\056\061
+\021\060\017\006\003\125\004\013\023\010\104\123\124\103\101\040
+\105\061\060\201\235\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\201\213\000\060\201\207\002\201\201\000\240
+\154\201\251\317\064\036\044\335\376\206\050\314\336\203\057\371
+\136\324\102\322\350\164\140\146\023\230\006\034\251\121\022\151
+\157\061\125\271\111\162\000\010\176\323\245\142\104\067\044\231
+\217\331\203\110\217\231\155\225\023\273\103\073\056\111\116\210
+\067\301\273\130\177\376\341\275\370\273\141\315\363\107\300\231
+\246\361\363\221\350\170\174\000\313\141\311\104\047\161\151\125
+\112\176\111\115\355\242\243\276\002\114\000\312\002\250\356\001
+\002\061\144\017\122\055\023\164\166\066\265\172\264\055\161\002
+\001\003\243\202\001\044\060\202\001\040\060\021\006\011\140\206
+\110\001\206\370\102\001\001\004\004\003\002\000\007\060\150\006
+\003\125\035\037\004\141\060\137\060\135\240\133\240\131\244\127
+\060\125\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\061\061\015\060\013\006\003\125\004
+\003\023\004\103\122\114\061\060\053\006\003\125\035\020\004\044
+\060\042\200\017\061\071\071\070\061\062\061\060\061\070\061\060
+\062\063\132\201\017\062\060\061\070\061\062\061\060\061\070\061
+\060\062\063\132\060\013\006\003\125\035\017\004\004\003\002\001
+\006\060\037\006\003\125\035\043\004\030\060\026\200\024\152\171
+\176\221\151\106\030\023\012\002\167\245\131\133\140\230\045\016
+\242\370\060\035\006\003\125\035\016\004\026\004\024\152\171\176
+\221\151\106\030\023\012\002\167\245\131\133\140\230\045\016\242
+\370\060\014\006\003\125\035\023\004\005\060\003\001\001\377\060
+\031\006\011\052\206\110\206\366\175\007\101\000\004\014\060\012
+\033\004\126\064\056\060\003\002\004\220\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\201\201\000\042\022\330
+\172\035\334\201\006\266\011\145\262\207\310\037\136\264\057\351
+\304\036\362\074\301\273\004\220\021\112\203\116\176\223\271\115
+\102\307\222\046\240\134\064\232\070\162\370\375\153\026\076\040
+\356\202\213\061\052\223\066\205\043\210\212\074\003\150\323\311
+\011\017\115\374\154\244\332\050\162\223\016\211\200\260\175\376
+\200\157\145\155\030\063\227\213\302\153\211\356\140\075\310\233
+\357\177\053\062\142\163\223\313\074\343\173\342\166\170\105\274
+\241\223\004\273\206\237\072\133\103\172\303\212\145
+END
+
+# Trust for Certificate "Digital Signature Trust Co. Global CA 1"
+# Issuer: OU=DSTCA E1,O=Digital Signature Trust Co.,C=US
+# Serial Number: 913315222 (0x36701596)
+# Subject: OU=DSTCA E1,O=Digital Signature Trust Co.,C=US
+# Not Valid Before: Thu Dec 10 18:10:23 1998
+# Not Valid After : Mon Dec 10 18:40:23 2018
+# Fingerprint (MD5): 25:7A:BA:83:2E:B6:A2:0B:DA:FE:F5:02:0F:08:D7:AD
+# Fingerprint (SHA1): 81:96:8B:3A:EF:1C:DC:70:F5:FA:32:69:C2:92:A3:63:5B:D1:23:D3
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Digital Signature Trust Co. Global CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\201\226\213\072\357\034\334\160\365\372\062\151\302\222\243\143
+\133\321\043\323
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\045\172\272\203\056\266\242\013\332\376\365\002\017\010\327\255
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\066\160\025\226
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Digital Signature Trust Co. Global CA 3"
+#
+# Issuer: OU=DSTCA E2,O=Digital Signature Trust Co.,C=US
+# Serial Number: 913232846 (0x366ed3ce)
+# Subject: OU=DSTCA E2,O=Digital Signature Trust Co.,C=US
+# Not Valid Before: Wed Dec 09 19:17:26 1998
+# Not Valid After : Sun Dec 09 19:47:26 2018
+# Fingerprint (MD5): 93:C2:8E:11:7B:D4:F3:03:19:BD:28:75:13:4A:45:4A
+# Fingerprint (SHA1): AB:48:F3:33:DB:04:AB:B9:C0:72:DA:5B:0C:C1:D0:57:F0:36:9B:46
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Digital Signature Trust Co. Global CA 3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\066\156\323\316
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\051\060\202\002\222\240\003\002\001\002\002\004\066
+\156\323\316\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\106\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\044\060\042\006\003\125\004\012\023\033\104\151\147\151
+\164\141\154\040\123\151\147\156\141\164\165\162\145\040\124\162
+\165\163\164\040\103\157\056\061\021\060\017\006\003\125\004\013
+\023\010\104\123\124\103\101\040\105\062\060\036\027\015\071\070
+\061\062\060\071\061\071\061\067\062\066\132\027\015\061\070\061
+\062\060\071\061\071\064\067\062\066\132\060\106\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\044\060\042\006\003\125
+\004\012\023\033\104\151\147\151\164\141\154\040\123\151\147\156
+\141\164\165\162\145\040\124\162\165\163\164\040\103\157\056\061
+\021\060\017\006\003\125\004\013\023\010\104\123\124\103\101\040
+\105\062\060\201\235\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\201\213\000\060\201\207\002\201\201\000\277
+\223\217\027\222\357\063\023\030\353\020\177\116\026\277\377\006
+\217\052\205\274\136\371\044\246\044\210\266\003\267\301\303\137
+\003\133\321\157\256\176\102\352\146\043\270\143\203\126\373\050
+\055\341\070\213\264\356\250\001\341\316\034\266\210\052\042\106
+\205\373\237\247\160\251\107\024\077\316\336\145\360\250\161\367
+\117\046\154\214\274\306\265\357\336\111\047\377\110\052\175\350
+\115\003\314\307\262\122\306\027\061\023\073\265\115\333\310\304
+\366\303\017\044\052\332\014\235\347\221\133\200\315\224\235\002
+\001\003\243\202\001\044\060\202\001\040\060\021\006\011\140\206
+\110\001\206\370\102\001\001\004\004\003\002\000\007\060\150\006
+\003\125\035\037\004\141\060\137\060\135\240\133\240\131\244\127
+\060\125\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\062\061\015\060\013\006\003\125\004
+\003\023\004\103\122\114\061\060\053\006\003\125\035\020\004\044
+\060\042\200\017\061\071\071\070\061\062\060\071\061\071\061\067
+\062\066\132\201\017\062\060\061\070\061\062\060\071\061\071\061
+\067\062\066\132\060\013\006\003\125\035\017\004\004\003\002\001
+\006\060\037\006\003\125\035\043\004\030\060\026\200\024\036\202
+\115\050\145\200\074\311\101\156\254\065\056\132\313\336\356\370
+\071\133\060\035\006\003\125\035\016\004\026\004\024\036\202\115
+\050\145\200\074\311\101\156\254\065\056\132\313\336\356\370\071
+\133\060\014\006\003\125\035\023\004\005\060\003\001\001\377\060
+\031\006\011\052\206\110\206\366\175\007\101\000\004\014\060\012
+\033\004\126\064\056\060\003\002\004\220\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\201\201\000\107\215\203
+\255\142\362\333\260\236\105\042\005\271\242\326\003\016\070\162
+\347\236\374\173\346\223\266\232\245\242\224\310\064\035\221\321
+\305\327\364\012\045\017\075\170\201\236\017\261\147\304\220\114
+\143\335\136\247\342\272\237\365\367\115\245\061\173\234\051\055
+\114\376\144\076\354\266\123\376\352\233\355\202\333\164\165\113
+\007\171\156\036\330\031\203\163\336\365\076\320\265\336\347\113
+\150\175\103\056\052\040\341\176\240\170\104\236\010\365\230\371
+\307\177\033\033\326\006\040\002\130\241\303\242\003
+END
+
+# Trust for Certificate "Digital Signature Trust Co. Global CA 3"
+# Issuer: OU=DSTCA E2,O=Digital Signature Trust Co.,C=US
+# Serial Number: 913232846 (0x366ed3ce)
+# Subject: OU=DSTCA E2,O=Digital Signature Trust Co.,C=US
+# Not Valid Before: Wed Dec 09 19:17:26 1998
+# Not Valid After : Sun Dec 09 19:47:26 2018
+# Fingerprint (MD5): 93:C2:8E:11:7B:D4:F3:03:19:BD:28:75:13:4A:45:4A
+# Fingerprint (SHA1): AB:48:F3:33:DB:04:AB:B9:C0:72:DA:5B:0C:C1:D0:57:F0:36:9B:46
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Digital Signature Trust Co. Global CA 3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\253\110\363\063\333\004\253\271\300\162\332\133\014\301\320\127
+\360\066\233\106
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\223\302\216\021\173\324\363\003\031\275\050\165\023\112\105\112
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\040\103\157\056\061\021\060\017\006\003\125\004\013\023\010
+\104\123\124\103\101\040\105\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\066\156\323\316
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 3 Public Primary Certification Authority"
+#
+# Issuer: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Serial Number:70:ba:e4:1d:10:d9:29:34:b6:38:ca:7b:03:cc:ba:bf
+# Subject: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Jan 29 00:00:00 1996
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): 10:FC:63:5D:F6:26:3E:0D:F3:25:BE:5F:79:CD:67:67
+# Fingerprint (SHA1): 74:2C:31:92:E6:07:E4:24:EB:45:49:54:2B:E1:BB:C5:3E:61:74:E2
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\063\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\063\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\160\272\344\035\020\331\051\064\266\070\312\173\003\314
+\272\277
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\074\060\202\001\245\002\020\160\272\344\035\020\331
+\051\064\266\070\312\173\003\314\272\277\060\015\006\011\052\206
+\110\206\367\015\001\001\002\005\000\060\137\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125\004
+\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156\143
+\056\061\067\060\065\006\003\125\004\013\023\056\103\154\141\163
+\163\040\063\040\120\165\142\154\151\143\040\120\162\151\155\141
+\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171\060\036\027\015\071\066
+\060\061\062\071\060\060\060\060\060\060\132\027\015\062\070\060
+\070\060\061\062\063\065\071\065\071\132\060\137\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125
+\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\061\067\060\065\006\003\125\004\013\023\056\103\154\141
+\163\163\040\063\040\120\165\142\154\151\143\040\120\162\151\155
+\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\060\201\237\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\201\215
+\000\060\201\211\002\201\201\000\311\134\131\236\362\033\212\001
+\024\264\020\337\004\100\333\343\127\257\152\105\100\217\204\014
+\013\321\063\331\331\021\317\356\002\130\037\045\367\052\250\104
+\005\252\354\003\037\170\177\236\223\271\232\000\252\043\175\326
+\254\205\242\143\105\307\162\047\314\364\114\306\165\161\322\071
+\357\117\102\360\165\337\012\220\306\216\040\157\230\017\370\254
+\043\137\160\051\066\244\311\206\347\261\232\040\313\123\245\205
+\347\075\276\175\232\376\044\105\063\334\166\025\355\017\242\161
+\144\114\145\056\201\150\105\247\002\003\001\000\001\060\015\006
+\011\052\206\110\206\367\015\001\001\002\005\000\003\201\201\000
+\273\114\022\053\317\054\046\000\117\024\023\335\246\373\374\012
+\021\204\214\363\050\034\147\222\057\174\266\305\372\337\360\350
+\225\274\035\217\154\054\250\121\314\163\330\244\300\123\360\116
+\326\046\300\166\001\127\201\222\136\041\361\321\261\377\347\320
+\041\130\315\151\027\343\104\034\234\031\104\071\211\134\334\234
+\000\017\126\215\002\231\355\242\220\105\114\344\273\020\244\075
+\360\062\003\016\361\316\370\350\311\121\214\346\142\237\346\237
+\300\175\267\162\234\311\066\072\153\237\116\250\377\144\015\144
+END
+
+# Trust for Certificate "Verisign Class 3 Public Primary Certification Authority"
+# Issuer: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Serial Number:70:ba:e4:1d:10:d9:29:34:b6:38:ca:7b:03:cc:ba:bf
+# Subject: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Jan 29 00:00:00 1996
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): 10:FC:63:5D:F6:26:3E:0D:F3:25:BE:5F:79:CD:67:67
+# Fingerprint (SHA1): 74:2C:31:92:E6:07:E4:24:EB:45:49:54:2B:E1:BB:C5:3E:61:74:E2
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\164\054\061\222\346\007\344\044\353\105\111\124\053\341\273\305
+\076\141\164\342
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\020\374\143\135\366\046\076\015\363\045\276\137\171\315\147\147
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\063\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\160\272\344\035\020\331\051\064\266\070\312\173\003\314
+\272\277
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 1 Public Primary Certification Authority - G2"
+#
+# Issuer: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 1 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Serial Number:4c:c7:ea:aa:98:3e:71:d3:93:10:f8:3d:3a:89:91:92
+# Subject: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 1 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon May 18 00:00:00 1998
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): DB:23:3D:F9:69:FA:4B:B9:95:80:44:73:5E:7D:41:83
+# Fingerprint (SHA1): 27:3E:E1:24:57:FD:C4:F9:0C:55:E8:2B:56:16:7F:62:F5:32:E5:47
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 1 Public Primary Certification Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\061\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\061\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\114\307\352\252\230\076\161\323\223\020\370\075\072\211
+\221\222
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\002\060\202\002\153\002\020\114\307\352\252\230\076
+\161\323\223\020\370\075\072\211\221\222\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\201\301\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125
+\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\061\074\060\072\006\003\125\004\013\023\063\103\154\141
+\163\163\040\061\040\120\165\142\154\151\143\040\120\162\151\155
+\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107\062
+\061\072\060\070\006\003\125\004\013\023\061\050\143\051\040\061
+\071\071\070\040\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151
+\172\145\144\040\165\163\145\040\157\156\154\171\061\037\060\035
+\006\003\125\004\013\023\026\126\145\162\151\123\151\147\156\040
+\124\162\165\163\164\040\116\145\164\167\157\162\153\060\036\027
+\015\071\070\060\065\061\070\060\060\060\060\060\060\132\027\015
+\062\070\060\070\060\061\062\063\065\071\065\071\132\060\201\301
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027\060
+\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147\156
+\054\040\111\156\143\056\061\074\060\072\006\003\125\004\013\023
+\063\103\154\141\163\163\040\061\040\120\165\142\154\151\143\040
+\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040
+\055\040\107\062\061\072\060\070\006\003\125\004\013\023\061\050
+\143\051\040\061\071\071\070\040\126\145\162\151\123\151\147\156
+\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165\164
+\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171
+\061\037\060\035\006\003\125\004\013\023\026\126\145\162\151\123
+\151\147\156\040\124\162\165\163\164\040\116\145\164\167\157\162
+\153\060\201\237\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\201\215\000\060\201\211\002\201\201\000\252\320
+\272\276\026\055\270\203\324\312\322\017\274\166\061\312\224\330
+\035\223\214\126\002\274\331\157\032\157\122\066\156\165\126\012
+\125\323\337\103\207\041\021\145\212\176\217\275\041\336\153\062
+\077\033\204\064\225\005\235\101\065\353\222\353\226\335\252\131
+\077\001\123\155\231\117\355\345\342\052\132\220\301\271\304\246
+\025\317\310\105\353\246\135\216\234\076\360\144\044\166\245\315
+\253\032\157\266\330\173\121\141\156\246\177\207\310\342\267\345
+\064\334\101\210\352\011\100\276\163\222\075\153\347\165\002\003
+\001\000\001\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\201\201\000\251\117\303\015\307\147\276\054\313\331
+\250\315\055\165\347\176\025\236\073\162\353\176\353\134\055\011
+\207\326\153\155\140\174\345\256\305\220\043\014\134\112\320\257
+\261\135\363\307\266\012\333\340\025\223\015\335\003\274\307\166
+\212\265\335\117\303\233\023\165\270\001\300\346\311\133\153\245
+\270\211\334\254\244\335\162\355\116\241\367\117\274\006\323\352
+\310\144\164\173\302\225\101\234\145\163\130\361\220\232\074\152
+\261\230\311\304\207\274\317\105\155\105\342\156\042\077\376\274
+\017\061\134\350\362\331
+END
+
+# Trust for Certificate "Verisign Class 1 Public Primary Certification Authority - G2"
+# Issuer: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 1 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Serial Number:4c:c7:ea:aa:98:3e:71:d3:93:10:f8:3d:3a:89:91:92
+# Subject: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 1 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon May 18 00:00:00 1998
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): DB:23:3D:F9:69:FA:4B:B9:95:80:44:73:5E:7D:41:83
+# Fingerprint (SHA1): 27:3E:E1:24:57:FD:C4:F9:0C:55:E8:2B:56:16:7F:62:F5:32:E5:47
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 1 Public Primary Certification Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\047\076\341\044\127\375\304\371\014\125\350\053\126\026\177\142
+\365\062\345\107
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\333\043\075\371\151\372\113\271\225\200\104\163\136\175\101\203
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\061\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\114\307\352\252\230\076\161\323\223\020\370\075\072\211
+\221\222
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 2 Public Primary Certification Authority - G2"
+#
+# Issuer: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 2 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Serial Number:00:b9:2f:60:cc:88:9f:a1:7a:46:09:b8:5b:70:6c:8a:af
+# Subject: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 2 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon May 18 00:00:00 1998
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): 2D:BB:E5:25:D3:D1:65:82:3A:B7:0E:FA:E6:EB:E2:E1
+# Fingerprint (SHA1): B3:EA:C4:47:76:C9:C8:1C:EA:F2:9D:95:B6:CC:A0:08:1B:67:EC:9D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 2 Public Primary Certification Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\062\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\062\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\271\057\140\314\210\237\241\172\106\011\270\133\160
+\154\212\257
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\003\060\202\002\154\002\021\000\271\057\140\314\210
+\237\241\172\106\011\270\133\160\154\212\257\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\060\201\301\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003
+\125\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\061\074\060\072\006\003\125\004\013\023\063\103\154
+\141\163\163\040\062\040\120\165\142\154\151\143\040\120\162\151
+\155\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\062\061\072\060\070\006\003\125\004\013\023\061\050\143\051\040
+\061\071\071\070\040\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\037\060
+\035\006\003\125\004\013\023\026\126\145\162\151\123\151\147\156
+\040\124\162\165\163\164\040\116\145\164\167\157\162\153\060\036
+\027\015\071\070\060\065\061\070\060\060\060\060\060\060\132\027
+\015\062\070\060\070\060\061\062\063\065\071\065\071\132\060\201
+\301\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027
+\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\061\074\060\072\006\003\125\004\013
+\023\063\103\154\141\163\163\040\062\040\120\165\142\154\151\143
+\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\040\055\040\107\062\061\072\060\070\006\003\125\004\013\023\061
+\050\143\051\040\061\071\071\070\040\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165
+\164\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154
+\171\061\037\060\035\006\003\125\004\013\023\026\126\145\162\151
+\123\151\147\156\040\124\162\165\163\164\040\116\145\164\167\157
+\162\153\060\201\237\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\201\215\000\060\201\211\002\201\201\000\247
+\210\001\041\164\054\347\032\003\360\230\341\227\074\017\041\010
+\361\234\333\227\351\232\374\302\004\006\023\276\137\122\310\314
+\036\054\022\126\054\270\001\151\054\314\231\037\255\260\226\256
+\171\004\362\023\071\301\173\230\272\010\054\350\302\204\023\054
+\252\151\351\011\364\307\251\002\244\102\302\043\117\112\330\360
+\016\242\373\061\154\311\346\157\231\047\007\365\346\364\114\170
+\236\155\353\106\206\372\271\206\311\124\362\262\304\257\324\106
+\034\132\311\025\060\377\015\154\365\055\016\155\316\177\167\002
+\003\001\000\001\060\015\006\011\052\206\110\206\367\015\001\001
+\005\005\000\003\201\201\000\162\056\371\177\321\361\161\373\304
+\236\366\305\136\121\212\100\230\270\150\370\233\034\203\330\342
+\235\275\377\355\241\346\146\352\057\011\364\312\327\352\245\053
+\225\366\044\140\206\115\104\056\203\245\304\055\240\323\256\170
+\151\157\162\332\154\256\010\360\143\222\067\346\273\304\060\027
+\255\167\314\111\065\252\317\330\217\321\276\267\030\226\107\163
+\152\124\042\064\144\055\266\026\233\131\133\264\121\131\072\263
+\013\024\364\022\337\147\240\364\255\062\144\136\261\106\162\047
+\214\022\173\305\104\264\256
+END
+
+# Trust for Certificate "Verisign Class 2 Public Primary Certification Authority - G2"
+# Issuer: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 2 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Serial Number:00:b9:2f:60:cc:88:9f:a1:7a:46:09:b8:5b:70:6c:8a:af
+# Subject: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 2 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon May 18 00:00:00 1998
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): 2D:BB:E5:25:D3:D1:65:82:3A:B7:0E:FA:E6:EB:E2:E1
+# Fingerprint (SHA1): B3:EA:C4:47:76:C9:C8:1C:EA:F2:9D:95:B6:CC:A0:08:1B:67:EC:9D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 2 Public Primary Certification Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\263\352\304\107\166\311\310\034\352\362\235\225\266\314\240\010
+\033\147\354\235
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\055\273\345\045\323\321\145\202\072\267\016\372\346\353\342\341
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\062\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\271\057\140\314\210\237\241\172\106\011\270\133\160
+\154\212\257
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 3 Public Primary Certification Authority - G2"
+#
+# Issuer: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 3 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Serial Number:7d:d9:fe:07:cf:a8:1e:b7:10:79:67:fb:a7:89:34:c6
+# Subject: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 3 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon May 18 00:00:00 1998
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): A2:33:9B:4C:74:78:73:D4:6C:E7:C1:F3:8D:CB:5C:E9
+# Fingerprint (SHA1): 85:37:1C:A6:E5:50:14:3D:CE:28:03:47:1B:DE:3A:09:E8:F8:77:0F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\063\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\063\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\175\331\376\007\317\250\036\267\020\171\147\373\247\211
+\064\306
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\002\060\202\002\153\002\020\175\331\376\007\317\250
+\036\267\020\171\147\373\247\211\064\306\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\201\301\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125
+\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\061\074\060\072\006\003\125\004\013\023\063\103\154\141
+\163\163\040\063\040\120\165\142\154\151\143\040\120\162\151\155
+\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107\062
+\061\072\060\070\006\003\125\004\013\023\061\050\143\051\040\061
+\071\071\070\040\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151
+\172\145\144\040\165\163\145\040\157\156\154\171\061\037\060\035
+\006\003\125\004\013\023\026\126\145\162\151\123\151\147\156\040
+\124\162\165\163\164\040\116\145\164\167\157\162\153\060\036\027
+\015\071\070\060\065\061\070\060\060\060\060\060\060\132\027\015
+\062\070\060\070\060\061\062\063\065\071\065\071\132\060\201\301
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027\060
+\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147\156
+\054\040\111\156\143\056\061\074\060\072\006\003\125\004\013\023
+\063\103\154\141\163\163\040\063\040\120\165\142\154\151\143\040
+\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040
+\055\040\107\062\061\072\060\070\006\003\125\004\013\023\061\050
+\143\051\040\061\071\071\070\040\126\145\162\151\123\151\147\156
+\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165\164
+\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171
+\061\037\060\035\006\003\125\004\013\023\026\126\145\162\151\123
+\151\147\156\040\124\162\165\163\164\040\116\145\164\167\157\162
+\153\060\201\237\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\201\215\000\060\201\211\002\201\201\000\314\136
+\321\021\135\134\151\320\253\323\271\152\114\231\037\131\230\060
+\216\026\205\040\106\155\107\077\324\205\040\204\341\155\263\370
+\244\355\014\361\027\017\073\371\247\371\045\327\301\317\204\143
+\362\174\143\317\242\107\362\306\133\063\216\144\100\004\150\301
+\200\271\144\034\105\167\307\330\156\365\225\051\074\120\350\064
+\327\170\037\250\272\155\103\221\225\217\105\127\136\176\305\373
+\312\244\004\353\352\227\067\124\060\157\273\001\107\062\063\315
+\334\127\233\144\151\141\370\233\035\034\211\117\134\147\002\003
+\001\000\001\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\201\201\000\121\115\315\276\134\313\230\031\234\025
+\262\001\071\170\056\115\017\147\160\160\231\306\020\132\224\244
+\123\115\124\155\053\257\015\135\100\213\144\323\327\356\336\126
+\141\222\137\246\304\035\020\141\066\323\054\047\074\350\051\011
+\271\021\144\164\314\265\163\237\034\110\251\274\141\001\356\342
+\027\246\014\343\100\010\073\016\347\353\104\163\052\232\361\151
+\222\357\161\024\303\071\254\161\247\221\011\157\344\161\006\263
+\272\131\127\046\171\000\366\370\015\242\063\060\050\324\252\130
+\240\235\235\151\221\375
+END
+
+# Trust for Certificate "Verisign Class 3 Public Primary Certification Authority - G2"
+# Issuer: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 3 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Serial Number:7d:d9:fe:07:cf:a8:1e:b7:10:79:67:fb:a7:89:34:c6
+# Subject: OU=VeriSign Trust Network,OU="(c) 1998 VeriSign, Inc. - For authorized use only",OU=Class 3 Public Primary Certification Authority - G2,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon May 18 00:00:00 1998
+# Not Valid After : Tue Aug 01 23:59:59 2028
+# Fingerprint (MD5): A2:33:9B:4C:74:78:73:D4:6C:E7:C1:F3:8D:CB:5C:E9
+# Fingerprint (SHA1): 85:37:1C:A6:E5:50:14:3D:CE:28:03:47:1B:DE:3A:09:E8:F8:77:0F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\205\067\034\246\345\120\024\075\316\050\003\107\033\336\072\011
+\350\370\167\017
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\242\063\233\114\164\170\163\324\154\347\301\363\215\313\134\351
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\301\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\074\060\072\006\003\125
+\004\013\023\063\103\154\141\163\163\040\063\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\062\061\072\060\070\006\003\125\004\013
+\023\061\050\143\051\040\061\071\071\070\040\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\175\331\376\007\317\250\036\267\020\171\147\373\247\211
+\064\306
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GlobalSign Root CA"
+#
+# Issuer: CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE
+# Serial Number:04:00:00:00:00:01:15:4b:5a:c3:94
+# Subject: CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE
+# Not Valid Before: Tue Sep 01 12:00:00 1998
+# Not Valid After : Fri Jan 28 12:00:00 2028
+# Fingerprint (MD5): 3E:45:52:15:09:51:92:E1:B7:5D:37:9F:B1:87:29:8A
+# Fingerprint (SHA1): B1:BC:96:8B:D4:F4:9D:62:2A:A8:9A:81:F2:15:01:52:A4:1D:82:9C
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\127\061\013\060\011\006\003\125\004\006\023\002\102\105\061
+\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154
+\123\151\147\156\040\156\166\055\163\141\061\020\060\016\006\003
+\125\004\013\023\007\122\157\157\164\040\103\101\061\033\060\031
+\006\003\125\004\003\023\022\107\154\157\142\141\154\123\151\147
+\156\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\127\061\013\060\011\006\003\125\004\006\023\002\102\105\061
+\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154
+\123\151\147\156\040\156\166\055\163\141\061\020\060\016\006\003
+\125\004\013\023\007\122\157\157\164\040\103\101\061\033\060\031
+\006\003\125\004\003\023\022\107\154\157\142\141\154\123\151\147
+\156\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\025\113\132\303\224
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\165\060\202\002\135\240\003\002\001\002\002\013\004
+\000\000\000\000\001\025\113\132\303\224\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\127\061\013\060\011\006
+\003\125\004\006\023\002\102\105\061\031\060\027\006\003\125\004
+\012\023\020\107\154\157\142\141\154\123\151\147\156\040\156\166
+\055\163\141\061\020\060\016\006\003\125\004\013\023\007\122\157
+\157\164\040\103\101\061\033\060\031\006\003\125\004\003\023\022
+\107\154\157\142\141\154\123\151\147\156\040\122\157\157\164\040
+\103\101\060\036\027\015\071\070\060\071\060\061\061\062\060\060
+\060\060\132\027\015\062\070\060\061\062\070\061\062\060\060\060
+\060\132\060\127\061\013\060\011\006\003\125\004\006\023\002\102
+\105\061\031\060\027\006\003\125\004\012\023\020\107\154\157\142
+\141\154\123\151\147\156\040\156\166\055\163\141\061\020\060\016
+\006\003\125\004\013\023\007\122\157\157\164\040\103\101\061\033
+\060\031\006\003\125\004\003\023\022\107\154\157\142\141\154\123
+\151\147\156\040\122\157\157\164\040\103\101\060\202\001\042\060
+\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202
+\001\017\000\060\202\001\012\002\202\001\001\000\332\016\346\231
+\215\316\243\343\117\212\176\373\361\213\203\045\153\352\110\037
+\361\052\260\271\225\021\004\275\360\143\321\342\147\146\317\034
+\335\317\033\110\053\356\215\211\216\232\257\051\200\145\253\351
+\307\055\022\313\253\034\114\160\007\241\075\012\060\315\025\215
+\117\370\335\324\214\120\025\034\357\120\356\304\056\367\374\351
+\122\362\221\175\340\155\325\065\060\216\136\103\163\362\101\351
+\325\152\343\262\211\072\126\071\070\157\006\074\210\151\133\052
+\115\305\247\124\270\154\211\314\233\371\074\312\345\375\211\365
+\022\074\222\170\226\326\334\164\156\223\104\141\321\215\307\106
+\262\165\016\206\350\031\212\325\155\154\325\170\026\225\242\351
+\310\012\070\353\362\044\023\117\163\124\223\023\205\072\033\274
+\036\064\265\213\005\214\271\167\213\261\333\037\040\221\253\011
+\123\156\220\316\173\067\164\271\160\107\221\042\121\143\026\171
+\256\261\256\101\046\010\310\031\053\321\106\252\110\326\144\052
+\327\203\064\377\054\052\301\154\031\103\112\007\205\347\323\174
+\366\041\150\357\352\362\122\237\177\223\220\317\002\003\001\000
+\001\243\102\060\100\060\016\006\003\125\035\017\001\001\377\004
+\004\003\002\001\006\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\035\006\003\125\035\016\004\026\004
+\024\140\173\146\032\105\015\227\312\211\120\057\175\004\315\064
+\250\377\374\375\113\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\003\202\001\001\000\326\163\347\174\117\166\320
+\215\277\354\272\242\276\064\305\050\062\265\174\374\154\234\054
+\053\275\011\236\123\277\153\136\252\021\110\266\345\010\243\263
+\312\075\141\115\323\106\011\263\076\303\240\343\143\125\033\362
+\272\357\255\071\341\103\271\070\243\346\057\212\046\073\357\240
+\120\126\371\306\012\375\070\315\304\013\160\121\224\227\230\004
+\337\303\137\224\325\025\311\024\101\234\304\135\165\144\025\015
+\377\125\060\354\206\217\377\015\357\054\271\143\106\366\252\374
+\337\274\151\375\056\022\110\144\232\340\225\360\246\357\051\217
+\001\261\025\265\014\035\245\376\151\054\151\044\170\036\263\247
+\034\161\142\356\312\310\227\254\027\135\212\302\370\107\206\156
+\052\304\126\061\225\320\147\211\205\053\371\154\246\135\106\235
+\014\252\202\344\231\121\335\160\267\333\126\075\141\344\152\341
+\134\326\366\376\075\336\101\314\007\256\143\122\277\123\123\364
+\053\351\307\375\266\367\202\137\205\322\101\030\333\201\263\004
+\034\305\037\244\200\157\025\040\311\336\014\210\012\035\326\146
+\125\342\374\110\311\051\046\151\340
+END
+
+# Trust for Certificate "GlobalSign Root CA"
+# Issuer: CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE
+# Serial Number:04:00:00:00:00:01:15:4b:5a:c3:94
+# Subject: CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE
+# Not Valid Before: Tue Sep 01 12:00:00 1998
+# Not Valid After : Fri Jan 28 12:00:00 2028
+# Fingerprint (MD5): 3E:45:52:15:09:51:92:E1:B7:5D:37:9F:B1:87:29:8A
+# Fingerprint (SHA1): B1:BC:96:8B:D4:F4:9D:62:2A:A8:9A:81:F2:15:01:52:A4:1D:82:9C
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\261\274\226\213\324\364\235\142\052\250\232\201\362\025\001\122
+\244\035\202\234
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\076\105\122\025\011\121\222\341\267\135\067\237\261\207\051\212
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\127\061\013\060\011\006\003\125\004\006\023\002\102\105\061
+\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154
+\123\151\147\156\040\156\166\055\163\141\061\020\060\016\006\003
+\125\004\013\023\007\122\157\157\164\040\103\101\061\033\060\031
+\006\003\125\004\003\023\022\107\154\157\142\141\154\123\151\147
+\156\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\025\113\132\303\224
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GlobalSign Root CA - R2"
+#
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R2
+# Serial Number:04:00:00:00:00:01:0f:86:26:e6:0d
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R2
+# Not Valid Before: Fri Dec 15 08:00:00 2006
+# Not Valid After : Wed Dec 15 08:00:00 2021
+# Fingerprint (MD5): 94:14:77:7E:3E:5E:FD:8F:30:BD:41:B0:CF:E7:D0:30
+# Fingerprint (SHA1): 75:E0:AB:B6:13:85:12:27:1C:04:F8:5F:DD:DE:38:E4:B7:24:2E:FE
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign Root CA - R2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\114\061\040\060\036\006\003\125\004\013\023\027\107\154\157
+\142\141\154\123\151\147\156\040\122\157\157\164\040\103\101\040
+\055\040\122\062\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\114\061\040\060\036\006\003\125\004\013\023\027\107\154\157
+\142\141\154\123\151\147\156\040\122\157\157\164\040\103\101\040
+\055\040\122\062\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\017\206\046\346\015
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\272\060\202\002\242\240\003\002\001\002\002\013\004
+\000\000\000\000\001\017\206\046\346\015\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\114\061\040\060\036\006
+\003\125\004\013\023\027\107\154\157\142\141\154\123\151\147\156
+\040\122\157\157\164\040\103\101\040\055\040\122\062\061\023\060
+\021\006\003\125\004\012\023\012\107\154\157\142\141\154\123\151
+\147\156\061\023\060\021\006\003\125\004\003\023\012\107\154\157
+\142\141\154\123\151\147\156\060\036\027\015\060\066\061\062\061
+\065\060\070\060\060\060\060\132\027\015\062\061\061\062\061\065
+\060\070\060\060\060\060\132\060\114\061\040\060\036\006\003\125
+\004\013\023\027\107\154\157\142\141\154\123\151\147\156\040\122
+\157\157\164\040\103\101\040\055\040\122\062\061\023\060\021\006
+\003\125\004\012\023\012\107\154\157\142\141\154\123\151\147\156
+\061\023\060\021\006\003\125\004\003\023\012\107\154\157\142\141
+\154\123\151\147\156\060\202\001\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
+\012\002\202\001\001\000\246\317\044\016\276\056\157\050\231\105
+\102\304\253\076\041\124\233\013\323\177\204\160\372\022\263\313
+\277\207\137\306\177\206\323\262\060\134\326\375\255\361\173\334
+\345\370\140\226\011\222\020\365\320\123\336\373\173\176\163\210
+\254\122\210\173\112\246\312\111\246\136\250\247\214\132\021\274
+\172\202\353\276\214\351\263\254\226\045\007\227\112\231\052\007
+\057\264\036\167\277\212\017\265\002\174\033\226\270\305\271\072
+\054\274\326\022\271\353\131\175\342\320\006\206\137\136\111\152
+\265\071\136\210\064\354\274\170\014\010\230\204\154\250\315\113
+\264\240\175\014\171\115\360\270\055\313\041\312\325\154\133\175
+\341\240\051\204\241\371\323\224\111\313\044\142\221\040\274\335
+\013\325\331\314\371\352\047\012\053\163\221\306\235\033\254\310
+\313\350\340\240\364\057\220\213\115\373\260\066\033\366\031\172
+\205\340\155\362\141\023\210\134\237\340\223\012\121\227\212\132
+\316\257\253\325\367\252\011\252\140\275\334\331\137\337\162\251
+\140\023\136\000\001\311\112\372\077\244\352\007\003\041\002\216
+\202\312\003\302\233\217\002\003\001\000\001\243\201\234\060\201
+\231\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001
+\001\377\060\035\006\003\125\035\016\004\026\004\024\233\342\007
+\127\147\034\036\300\152\006\336\131\264\232\055\337\334\031\206
+\056\060\066\006\003\125\035\037\004\057\060\055\060\053\240\051
+\240\047\206\045\150\164\164\160\072\057\057\143\162\154\056\147
+\154\157\142\141\154\163\151\147\156\056\156\145\164\057\162\157
+\157\164\055\162\062\056\143\162\154\060\037\006\003\125\035\043
+\004\030\060\026\200\024\233\342\007\127\147\034\036\300\152\006
+\336\131\264\232\055\337\334\031\206\056\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\231\201
+\123\207\034\150\227\206\221\354\340\112\270\104\013\253\201\254
+\047\117\326\301\270\034\103\170\263\014\232\374\352\054\074\156
+\141\033\115\113\051\365\237\005\035\046\301\270\351\203\000\142
+\105\266\251\010\223\271\251\063\113\030\232\302\370\207\210\116
+\333\335\161\064\032\301\124\332\106\077\340\323\052\253\155\124
+\042\365\072\142\315\040\157\272\051\211\327\335\221\356\323\134
+\242\076\241\133\101\365\337\345\144\103\055\351\325\071\253\322
+\242\337\267\213\320\300\200\031\034\105\300\055\214\350\370\055
+\244\164\126\111\305\005\265\117\025\336\156\104\170\071\207\250
+\176\273\363\171\030\221\273\364\157\235\301\360\214\065\214\135
+\001\373\303\155\271\357\104\155\171\106\061\176\012\376\251\202
+\301\377\357\253\156\040\304\120\311\137\235\115\233\027\214\014
+\345\001\311\240\101\152\163\123\372\245\120\264\156\045\017\373
+\114\030\364\375\122\331\216\151\261\350\021\017\336\210\330\373
+\035\111\367\252\336\225\317\040\170\302\140\022\333\045\100\214
+\152\374\176\102\070\100\144\022\367\236\201\341\223\056
+END
+
+# Trust for Certificate "GlobalSign Root CA - R2"
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R2
+# Serial Number:04:00:00:00:00:01:0f:86:26:e6:0d
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R2
+# Not Valid Before: Fri Dec 15 08:00:00 2006
+# Not Valid After : Wed Dec 15 08:00:00 2021
+# Fingerprint (MD5): 94:14:77:7E:3E:5E:FD:8F:30:BD:41:B0:CF:E7:D0:30
+# Fingerprint (SHA1): 75:E0:AB:B6:13:85:12:27:1C:04:F8:5F:DD:DE:38:E4:B7:24:2E:FE
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign Root CA - R2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\165\340\253\266\023\205\022\047\034\004\370\137\335\336\070\344
+\267\044\056\376
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\224\024\167\176\076\136\375\217\060\275\101\260\317\347\320\060
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\114\061\040\060\036\006\003\125\004\013\023\027\107\154\157
+\142\141\154\123\151\147\156\040\122\157\157\164\040\103\101\040
+\055\040\122\062\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\017\206\046\346\015
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ValiCert Class 1 VA"
+#
+# Issuer: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 1 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Serial Number: 1 (0x1)
+# Subject: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 1 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Not Valid Before: Fri Jun 25 22:23:48 1999
+# Not Valid After : Tue Jun 25 22:23:48 2019
+# Fingerprint (MD5): 65:58:AB:15:AD:57:6C:1E:A8:A7:B5:69:AC:BF:FF:EB
+# Fingerprint (SHA1): E5:DF:74:3C:B6:01:C4:9B:98:43:DC:AB:8C:E8:6A:81:10:9F:E4:8E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ValiCert Class 1 VA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\061\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\061\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\347\060\202\002\120\002\001\001\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\060\201\273\061\044\060
+\042\006\003\125\004\007\023\033\126\141\154\151\103\145\162\164
+\040\126\141\154\151\144\141\164\151\157\156\040\116\145\164\167
+\157\162\153\061\027\060\025\006\003\125\004\012\023\016\126\141
+\154\151\103\145\162\164\054\040\111\156\143\056\061\065\060\063
+\006\003\125\004\013\023\054\126\141\154\151\103\145\162\164\040
+\103\154\141\163\163\040\061\040\120\157\154\151\143\171\040\126
+\141\154\151\144\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\061\041\060\037\006\003\125\004\003\023\030\150\164
+\164\160\072\057\057\167\167\167\056\166\141\154\151\143\145\162
+\164\056\143\157\155\057\061\040\060\036\006\011\052\206\110\206
+\367\015\001\011\001\026\021\151\156\146\157\100\166\141\154\151
+\143\145\162\164\056\143\157\155\060\036\027\015\071\071\060\066
+\062\065\062\062\062\063\064\070\132\027\015\061\071\060\066\062
+\065\062\062\062\063\064\070\132\060\201\273\061\044\060\042\006
+\003\125\004\007\023\033\126\141\154\151\103\145\162\164\040\126
+\141\154\151\144\141\164\151\157\156\040\116\145\164\167\157\162
+\153\061\027\060\025\006\003\125\004\012\023\016\126\141\154\151
+\103\145\162\164\054\040\111\156\143\056\061\065\060\063\006\003
+\125\004\013\023\054\126\141\154\151\103\145\162\164\040\103\154
+\141\163\163\040\061\040\120\157\154\151\143\171\040\126\141\154
+\151\144\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\041\060\037\006\003\125\004\003\023\030\150\164\164\160
+\072\057\057\167\167\167\056\166\141\154\151\143\145\162\164\056
+\143\157\155\057\061\040\060\036\006\011\052\206\110\206\367\015
+\001\011\001\026\021\151\156\146\157\100\166\141\154\151\143\145
+\162\164\056\143\157\155\060\201\237\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\201\215\000\060\201\211\002
+\201\201\000\330\131\202\172\211\270\226\272\246\057\150\157\130
+\056\247\124\034\006\156\364\352\215\110\274\061\224\027\360\363
+\116\274\262\270\065\222\166\260\320\245\245\001\327\000\003\022
+\042\031\010\370\377\021\043\233\316\007\365\277\151\032\046\376
+\116\351\321\177\235\054\100\035\131\150\156\246\370\130\260\235
+\032\217\323\077\361\334\031\006\201\250\016\340\072\335\310\123
+\105\011\006\346\017\160\303\372\100\246\016\342\126\005\017\030
+\115\374\040\202\321\163\125\164\215\166\162\240\035\235\035\300
+\335\077\161\002\003\001\000\001\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\201\201\000\120\150\075\111\364
+\054\034\006\224\337\225\140\177\226\173\027\376\117\161\255\144
+\310\335\167\322\357\131\125\350\077\350\216\005\052\041\362\007
+\322\265\247\122\376\234\261\266\342\133\167\027\100\352\162\326
+\043\313\050\201\062\303\000\171\030\354\131\027\211\311\306\152
+\036\161\311\375\267\164\245\045\105\151\305\110\253\031\341\105
+\212\045\153\031\356\345\273\022\365\177\367\246\215\121\303\360
+\235\164\267\251\076\240\245\377\266\111\003\023\332\042\314\355
+\161\202\053\231\317\072\267\365\055\162\310
+END
+
+# Trust for Certificate "ValiCert Class 1 VA"
+# Issuer: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 1 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Serial Number: 1 (0x1)
+# Subject: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 1 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Not Valid Before: Fri Jun 25 22:23:48 1999
+# Not Valid After : Tue Jun 25 22:23:48 2019
+# Fingerprint (MD5): 65:58:AB:15:AD:57:6C:1E:A8:A7:B5:69:AC:BF:FF:EB
+# Fingerprint (SHA1): E5:DF:74:3C:B6:01:C4:9B:98:43:DC:AB:8C:E8:6A:81:10:9F:E4:8E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ValiCert Class 1 VA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\345\337\164\074\266\001\304\233\230\103\334\253\214\350\152\201
+\020\237\344\216
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\145\130\253\025\255\127\154\036\250\247\265\151\254\277\377\353
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\061\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ValiCert Class 2 VA"
+#
+# Issuer: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 2 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Serial Number: 1 (0x1)
+# Subject: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 2 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Not Valid Before: Sat Jun 26 00:19:54 1999
+# Not Valid After : Wed Jun 26 00:19:54 2019
+# Fingerprint (MD5): A9:23:75:9B:BA:49:36:6E:31:C2:DB:F2:E7:66:BA:87
+# Fingerprint (SHA1): 31:7A:2A:D0:7F:2B:33:5E:F5:A1:C3:4E:4B:57:E8:B7:D8:F1:FC:A6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ValiCert Class 2 VA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\062\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\062\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\347\060\202\002\120\002\001\001\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\060\201\273\061\044\060
+\042\006\003\125\004\007\023\033\126\141\154\151\103\145\162\164
+\040\126\141\154\151\144\141\164\151\157\156\040\116\145\164\167
+\157\162\153\061\027\060\025\006\003\125\004\012\023\016\126\141
+\154\151\103\145\162\164\054\040\111\156\143\056\061\065\060\063
+\006\003\125\004\013\023\054\126\141\154\151\103\145\162\164\040
+\103\154\141\163\163\040\062\040\120\157\154\151\143\171\040\126
+\141\154\151\144\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\061\041\060\037\006\003\125\004\003\023\030\150\164
+\164\160\072\057\057\167\167\167\056\166\141\154\151\143\145\162
+\164\056\143\157\155\057\061\040\060\036\006\011\052\206\110\206
+\367\015\001\011\001\026\021\151\156\146\157\100\166\141\154\151
+\143\145\162\164\056\143\157\155\060\036\027\015\071\071\060\066
+\062\066\060\060\061\071\065\064\132\027\015\061\071\060\066\062
+\066\060\060\061\071\065\064\132\060\201\273\061\044\060\042\006
+\003\125\004\007\023\033\126\141\154\151\103\145\162\164\040\126
+\141\154\151\144\141\164\151\157\156\040\116\145\164\167\157\162
+\153\061\027\060\025\006\003\125\004\012\023\016\126\141\154\151
+\103\145\162\164\054\040\111\156\143\056\061\065\060\063\006\003
+\125\004\013\023\054\126\141\154\151\103\145\162\164\040\103\154
+\141\163\163\040\062\040\120\157\154\151\143\171\040\126\141\154
+\151\144\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\041\060\037\006\003\125\004\003\023\030\150\164\164\160
+\072\057\057\167\167\167\056\166\141\154\151\143\145\162\164\056
+\143\157\155\057\061\040\060\036\006\011\052\206\110\206\367\015
+\001\011\001\026\021\151\156\146\157\100\166\141\154\151\143\145
+\162\164\056\143\157\155\060\201\237\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\201\215\000\060\201\211\002
+\201\201\000\316\072\161\312\345\253\310\131\222\125\327\253\330
+\164\016\371\356\331\366\125\107\131\145\107\016\005\125\334\353
+\230\066\074\134\123\135\323\060\317\070\354\275\101\211\355\045
+\102\011\044\153\012\136\263\174\335\122\055\114\346\324\326\175
+\132\131\251\145\324\111\023\055\044\115\034\120\157\265\301\205
+\124\073\376\161\344\323\134\102\371\200\340\221\032\012\133\071
+\066\147\363\077\125\174\033\077\264\137\144\163\064\343\264\022
+\277\207\144\370\332\022\377\067\047\301\263\103\273\357\173\156
+\056\151\367\002\003\001\000\001\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\201\201\000\073\177\120\157\157
+\120\224\231\111\142\070\070\037\113\370\245\310\076\247\202\201
+\366\053\307\350\305\316\350\072\020\202\313\030\000\216\115\275
+\250\130\177\241\171\000\265\273\351\215\257\101\331\017\064\356
+\041\201\031\240\062\111\050\364\304\216\126\325\122\063\375\120
+\325\176\231\154\003\344\311\114\374\313\154\253\146\263\112\041
+\214\345\265\014\062\076\020\262\314\154\241\334\232\230\114\002
+\133\363\316\271\236\245\162\016\112\267\077\074\346\026\150\370
+\276\355\164\114\274\133\325\142\037\103\335
+END
+
+# Trust for Certificate "ValiCert Class 2 VA"
+# Issuer: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 2 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Serial Number: 1 (0x1)
+# Subject: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 2 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Not Valid Before: Sat Jun 26 00:19:54 1999
+# Not Valid After : Wed Jun 26 00:19:54 2019
+# Fingerprint (MD5): A9:23:75:9B:BA:49:36:6E:31:C2:DB:F2:E7:66:BA:87
+# Fingerprint (SHA1): 31:7A:2A:D0:7F:2B:33:5E:F5:A1:C3:4E:4B:57:E8:B7:D8:F1:FC:A6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ValiCert Class 2 VA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\061\172\052\320\177\053\063\136\365\241\303\116\113\127\350\267
+\330\361\374\246
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\251\043\165\233\272\111\066\156\061\302\333\362\347\146\272\207
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\062\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "RSA Root Certificate 1"
+#
+# Issuer: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 3 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Serial Number: 1 (0x1)
+# Subject: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 3 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Not Valid Before: Sat Jun 26 00:22:33 1999
+# Not Valid After : Wed Jun 26 00:22:33 2019
+# Fingerprint (MD5): A2:6F:53:B7:EE:40:DB:4A:68:E7:FA:18:D9:10:4B:72
+# Fingerprint (SHA1): 69:BD:8C:F4:9C:D3:00:FB:59:2E:17:93:CA:55:6A:F3:EC:AA:35:FB
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "RSA Root Certificate 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\063\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\063\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\347\060\202\002\120\002\001\001\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\060\201\273\061\044\060
+\042\006\003\125\004\007\023\033\126\141\154\151\103\145\162\164
+\040\126\141\154\151\144\141\164\151\157\156\040\116\145\164\167
+\157\162\153\061\027\060\025\006\003\125\004\012\023\016\126\141
+\154\151\103\145\162\164\054\040\111\156\143\056\061\065\060\063
+\006\003\125\004\013\023\054\126\141\154\151\103\145\162\164\040
+\103\154\141\163\163\040\063\040\120\157\154\151\143\171\040\126
+\141\154\151\144\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\061\041\060\037\006\003\125\004\003\023\030\150\164
+\164\160\072\057\057\167\167\167\056\166\141\154\151\143\145\162
+\164\056\143\157\155\057\061\040\060\036\006\011\052\206\110\206
+\367\015\001\011\001\026\021\151\156\146\157\100\166\141\154\151
+\143\145\162\164\056\143\157\155\060\036\027\015\071\071\060\066
+\062\066\060\060\062\062\063\063\132\027\015\061\071\060\066\062
+\066\060\060\062\062\063\063\132\060\201\273\061\044\060\042\006
+\003\125\004\007\023\033\126\141\154\151\103\145\162\164\040\126
+\141\154\151\144\141\164\151\157\156\040\116\145\164\167\157\162
+\153\061\027\060\025\006\003\125\004\012\023\016\126\141\154\151
+\103\145\162\164\054\040\111\156\143\056\061\065\060\063\006\003
+\125\004\013\023\054\126\141\154\151\103\145\162\164\040\103\154
+\141\163\163\040\063\040\120\157\154\151\143\171\040\126\141\154
+\151\144\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\041\060\037\006\003\125\004\003\023\030\150\164\164\160
+\072\057\057\167\167\167\056\166\141\154\151\143\145\162\164\056
+\143\157\155\057\061\040\060\036\006\011\052\206\110\206\367\015
+\001\011\001\026\021\151\156\146\157\100\166\141\154\151\143\145
+\162\164\056\143\157\155\060\201\237\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\201\215\000\060\201\211\002
+\201\201\000\343\230\121\226\034\350\325\261\006\201\152\127\303
+\162\165\223\253\317\236\246\374\363\026\122\326\055\115\237\065
+\104\250\056\004\115\007\111\212\070\051\365\167\067\347\267\253
+\135\337\066\161\024\231\217\334\302\222\361\347\140\222\227\354
+\330\110\334\277\301\002\040\306\044\244\050\114\060\132\166\155
+\261\134\363\335\336\236\020\161\241\210\307\133\233\101\155\312
+\260\270\216\025\356\255\063\053\317\107\004\134\165\161\012\230
+\044\230\051\247\111\131\245\335\370\267\103\142\141\363\323\342
+\320\125\077\002\003\001\000\001\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\201\201\000\126\273\002\130\204
+\147\010\054\337\037\333\173\111\063\365\323\147\235\364\264\012
+\020\263\311\305\054\342\222\152\161\170\047\362\160\203\102\323
+\076\317\251\124\364\361\330\222\026\214\321\004\313\113\253\311
+\237\105\256\074\212\251\260\161\063\135\310\305\127\337\257\250
+\065\263\177\211\207\351\350\045\222\270\177\205\172\256\326\274
+\036\067\130\052\147\311\221\317\052\201\076\355\306\071\337\300
+\076\031\234\031\314\023\115\202\101\265\214\336\340\075\140\010
+\040\017\105\176\153\242\177\243\214\025\356
+END
+
+# Trust for Certificate "RSA Root Certificate 1"
+# Issuer: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 3 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Serial Number: 1 (0x1)
+# Subject: E=info@valicert.com,CN=http://www.valicert.com/,OU=ValiCert Class 3 Policy Validation Authority,O="ValiCert, Inc.",L=ValiCert Validation Network
+# Not Valid Before: Sat Jun 26 00:22:33 1999
+# Not Valid After : Wed Jun 26 00:22:33 2019
+# Fingerprint (MD5): A2:6F:53:B7:EE:40:DB:4A:68:E7:FA:18:D9:10:4B:72
+# Fingerprint (SHA1): 69:BD:8C:F4:9C:D3:00:FB:59:2E:17:93:CA:55:6A:F3:EC:AA:35:FB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "RSA Root Certificate 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\151\275\214\364\234\323\000\373\131\056\027\223\312\125\152\363
+\354\252\065\373
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\242\157\123\267\356\100\333\112\150\347\372\030\331\020\113\162
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\273\061\044\060\042\006\003\125\004\007\023\033\126\141
+\154\151\103\145\162\164\040\126\141\154\151\144\141\164\151\157
+\156\040\116\145\164\167\157\162\153\061\027\060\025\006\003\125
+\004\012\023\016\126\141\154\151\103\145\162\164\054\040\111\156
+\143\056\061\065\060\063\006\003\125\004\013\023\054\126\141\154
+\151\103\145\162\164\040\103\154\141\163\163\040\063\040\120\157
+\154\151\143\171\040\126\141\154\151\144\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\061\041\060\037\006\003\125
+\004\003\023\030\150\164\164\160\072\057\057\167\167\167\056\166
+\141\154\151\143\145\162\164\056\143\157\155\057\061\040\060\036
+\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156\146
+\157\100\166\141\154\151\143\145\162\164\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 1 Public Primary Certification Authority - G3"
+#
+# Issuer: CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:00:8b:5b:75:56:84:54:85:0b:00:cf:af:38:48:ce:b1:a4
+# Subject: CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): B1:47:BC:18:57:D1:18:A0:78:2D:EC:71:E8:2A:95:73
+# Fingerprint (SHA1): 20:42:85:DC:F7:EB:76:41:95:57:8E:13:6B:D4:B7:D1:E9:8E:46:A5
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 1 Public Primary Certification Authority - G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\061\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\061\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\213\133\165\126\204\124\205\013\000\317\257\070\110
+\316\261\244
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\032\060\202\003\002\002\021\000\213\133\165\126\204
+\124\205\013\000\317\257\070\110\316\261\244\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\060\201\312\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003
+\125\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153\061\072\060\070\006\003\125\004\013\023\061\050
+\143\051\040\061\071\071\071\040\126\145\162\151\123\151\147\156
+\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165\164
+\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171
+\061\105\060\103\006\003\125\004\003\023\074\126\145\162\151\123
+\151\147\156\040\103\154\141\163\163\040\061\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\063\060\036\027\015\071\071\061\060\060
+\061\060\060\060\060\060\060\132\027\015\063\066\060\067\061\066
+\062\063\065\071\065\071\132\060\201\312\061\013\060\011\006\003
+\125\004\006\023\002\125\123\061\027\060\025\006\003\125\004\012
+\023\016\126\145\162\151\123\151\147\156\054\040\111\156\143\056
+\061\037\060\035\006\003\125\004\013\023\026\126\145\162\151\123
+\151\147\156\040\124\162\165\163\164\040\116\145\164\167\157\162
+\153\061\072\060\070\006\003\125\004\013\023\061\050\143\051\040
+\061\071\071\071\040\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\105\060
+\103\006\003\125\004\003\023\074\126\145\162\151\123\151\147\156
+\040\103\154\141\163\163\040\061\040\120\165\142\154\151\143\040
+\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040
+\055\040\107\063\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\335\204\324\271\264\371\247\330\363\004\170
+\234\336\075\334\154\023\026\331\172\335\044\121\146\300\307\046
+\131\015\254\006\010\302\224\321\063\037\360\203\065\037\156\033
+\310\336\252\156\025\116\124\047\357\304\155\032\354\013\343\016
+\360\104\245\127\307\100\130\036\243\107\037\161\354\140\366\155
+\224\310\030\071\355\376\102\030\126\337\344\114\111\020\170\116
+\001\166\065\143\022\066\335\146\274\001\004\066\243\125\150\325
+\242\066\011\254\253\041\046\124\006\255\077\312\024\340\254\312
+\255\006\035\225\342\370\235\361\340\140\377\302\177\165\053\114
+\314\332\376\207\231\041\352\272\376\076\124\327\322\131\170\333
+\074\156\317\240\023\000\032\270\047\241\344\276\147\226\312\240
+\305\263\234\335\311\165\236\353\060\232\137\243\315\331\256\170
+\031\077\043\351\134\333\051\275\255\125\310\033\124\214\143\366
+\350\246\352\307\067\022\134\243\051\036\002\331\333\037\073\264
+\327\017\126\107\201\025\004\112\257\203\047\321\305\130\210\301
+\335\366\252\247\243\030\332\150\252\155\021\121\341\277\145\153
+\237\226\166\321\075\002\003\001\000\001\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\253\146
+\215\327\263\272\307\232\266\346\125\320\005\361\237\061\215\132
+\252\331\252\106\046\017\161\355\245\255\123\126\142\001\107\052
+\104\351\376\077\164\013\023\233\271\364\115\033\262\321\137\262
+\266\322\210\134\263\237\315\313\324\247\331\140\225\204\072\370
+\301\067\035\141\312\347\260\305\345\221\332\124\246\254\061\201
+\256\227\336\315\010\254\270\300\227\200\177\156\162\244\347\151
+\023\225\145\037\304\223\074\375\171\217\004\324\076\117\352\367
+\236\316\315\147\174\117\145\002\377\221\205\124\163\307\377\066
+\367\206\055\354\320\136\117\377\021\237\162\006\326\270\032\361
+\114\015\046\145\342\104\200\036\307\237\343\335\350\012\332\354
+\245\040\200\151\150\241\117\176\341\153\317\007\101\372\203\216
+\274\070\335\260\056\021\261\153\262\102\314\232\274\371\110\042
+\171\112\031\017\262\034\076\040\164\331\152\303\276\362\050\170
+\023\126\171\117\155\120\352\033\260\265\127\261\067\146\130\043
+\363\334\017\337\012\207\304\357\206\005\325\070\024\140\231\243
+\113\336\006\226\161\054\362\333\266\037\244\357\077\356
+END
+
+# Trust for Certificate "Verisign Class 1 Public Primary Certification Authority - G3"
+# Issuer: CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:00:8b:5b:75:56:84:54:85:0b:00:cf:af:38:48:ce:b1:a4
+# Subject: CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): B1:47:BC:18:57:D1:18:A0:78:2D:EC:71:E8:2A:95:73
+# Fingerprint (SHA1): 20:42:85:DC:F7:EB:76:41:95:57:8E:13:6B:D4:B7:D1:E9:8E:46:A5
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 1 Public Primary Certification Authority - G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\040\102\205\334\367\353\166\101\225\127\216\023\153\324\267\321
+\351\216\106\245
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\261\107\274\030\127\321\030\240\170\055\354\161\350\052\225\163
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\061\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\213\133\165\126\204\124\205\013\000\317\257\070\110
+\316\261\244
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 2 Public Primary Certification Authority - G3"
+#
+# Issuer: CN=VeriSign Class 2 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:61:70:cb:49:8c:5f:98:45:29:e7:b0:a6:d9:50:5b:7a
+# Subject: CN=VeriSign Class 2 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): F8:BE:C4:63:22:C9:A8:46:74:8B:B8:1D:1E:4A:2B:F6
+# Fingerprint (SHA1): 61:EF:43:D7:7F:CA:D4:61:51:BC:98:E0:C3:59:12:AF:9F:EB:63:11
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 2 Public Primary Certification Authority - G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\062\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\062\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\141\160\313\111\214\137\230\105\051\347\260\246\331\120
+\133\172
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\031\060\202\003\001\002\020\141\160\313\111\214\137
+\230\105\051\347\260\246\331\120\133\172\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\201\312\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125
+\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\061\037\060\035\006\003\125\004\013\023\026\126\145\162
+\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164\167
+\157\162\153\061\072\060\070\006\003\125\004\013\023\061\050\143
+\051\040\061\071\071\071\040\126\145\162\151\123\151\147\156\054
+\040\111\156\143\056\040\055\040\106\157\162\040\141\165\164\150
+\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171\061
+\105\060\103\006\003\125\004\003\023\074\126\145\162\151\123\151
+\147\156\040\103\154\141\163\163\040\062\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\040\055\040\107\063\060\036\027\015\071\071\061\060\060\061
+\060\060\060\060\060\060\132\027\015\063\066\060\067\061\066\062
+\063\065\071\065\071\132\060\201\312\061\013\060\011\006\003\125
+\004\006\023\002\125\123\061\027\060\025\006\003\125\004\012\023
+\016\126\145\162\151\123\151\147\156\054\040\111\156\143\056\061
+\037\060\035\006\003\125\004\013\023\026\126\145\162\151\123\151
+\147\156\040\124\162\165\163\164\040\116\145\164\167\157\162\153
+\061\072\060\070\006\003\125\004\013\023\061\050\143\051\040\061
+\071\071\071\040\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151
+\172\145\144\040\165\163\145\040\157\156\154\171\061\105\060\103
+\006\003\125\004\003\023\074\126\145\162\151\123\151\147\156\040
+\103\154\141\163\163\040\062\040\120\165\142\154\151\143\040\120
+\162\151\155\141\162\171\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040\055
+\040\107\063\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\257\012\015\302\325\054\333\147\271\055\345\224
+\047\335\245\276\340\260\115\217\263\141\126\074\326\174\303\364
+\315\076\206\313\242\210\342\341\330\244\151\305\265\342\277\301
+\246\107\120\136\106\071\213\325\226\272\265\157\024\277\020\316
+\047\023\236\005\107\233\061\172\023\330\037\331\323\002\067\213
+\255\054\107\360\216\201\006\247\015\060\014\353\367\074\017\040
+\035\334\162\106\356\245\002\310\133\303\311\126\151\114\305\030
+\301\221\173\013\325\023\000\233\274\357\303\110\076\106\140\040
+\205\052\325\220\266\315\213\240\314\062\335\267\375\100\125\262
+\120\034\126\256\314\215\167\115\307\040\115\247\061\166\357\150
+\222\212\220\036\010\201\126\262\255\151\243\122\320\313\034\304
+\043\075\037\231\376\114\350\026\143\216\306\010\216\366\061\366
+\322\372\345\166\335\265\034\222\243\111\315\315\001\315\150\315
+\251\151\272\243\353\035\015\234\244\040\246\301\240\305\321\106
+\114\027\155\322\254\146\077\226\214\340\204\324\066\377\042\131
+\305\371\021\140\250\137\004\175\362\032\366\045\102\141\017\304
+\112\270\076\211\002\003\001\000\001\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\001\001\000\064\046\025
+\074\300\215\115\103\111\035\275\351\041\222\327\146\234\267\336
+\305\270\320\344\135\137\166\042\300\046\371\204\072\072\371\214
+\265\373\354\140\361\350\316\004\260\310\335\247\003\217\060\363
+\230\337\244\346\244\061\337\323\034\013\106\334\162\040\077\256
+\356\005\074\244\063\077\013\071\254\160\170\163\113\231\053\337
+\060\302\124\260\250\073\125\241\376\026\050\315\102\275\164\156
+\200\333\047\104\247\316\104\135\324\033\220\230\015\036\102\224
+\261\000\054\004\320\164\243\002\005\042\143\143\315\203\265\373
+\301\155\142\153\151\165\375\135\160\101\271\365\277\174\337\276
+\301\062\163\042\041\213\130\201\173\025\221\172\272\343\144\110
+\260\177\373\066\045\332\225\320\361\044\024\027\335\030\200\153
+\106\043\071\124\365\216\142\011\004\035\224\220\246\233\346\045
+\342\102\105\252\270\220\255\276\010\217\251\013\102\030\224\317
+\162\071\341\261\103\340\050\317\267\347\132\154\023\153\111\263
+\377\343\030\174\211\213\063\135\254\063\327\247\371\332\072\125
+\311\130\020\371\252\357\132\266\317\113\113\337\052
+END
+
+# Trust for Certificate "Verisign Class 2 Public Primary Certification Authority - G3"
+# Issuer: CN=VeriSign Class 2 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:61:70:cb:49:8c:5f:98:45:29:e7:b0:a6:d9:50:5b:7a
+# Subject: CN=VeriSign Class 2 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): F8:BE:C4:63:22:C9:A8:46:74:8B:B8:1D:1E:4A:2B:F6
+# Fingerprint (SHA1): 61:EF:43:D7:7F:CA:D4:61:51:BC:98:E0:C3:59:12:AF:9F:EB:63:11
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 2 Public Primary Certification Authority - G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\141\357\103\327\177\312\324\141\121\274\230\340\303\131\022\257
+\237\353\143\021
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\370\276\304\143\042\311\250\106\164\213\270\035\036\112\053\366
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\062\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\141\160\313\111\214\137\230\105\051\347\260\246\331\120
+\133\172
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 3 Public Primary Certification Authority - G3"
+#
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:00:9b:7e:06:49:a3:3e:62:b9:d5:ee:90:48:71:29:ef:57
+# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): CD:68:B6:A7:C7:C4:CE:75:E0:1D:4F:57:44:61:92:09
+# Fingerprint (SHA1): 13:2D:0D:45:53:4B:69:97:CD:B2:D5:C3:39:E2:55:76:60:9B:5C:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority - G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\233\176\006\111\243\076\142\271\325\356\220\110\161
+\051\357\127
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\032\060\202\003\002\002\021\000\233\176\006\111\243
+\076\142\271\325\356\220\110\161\051\357\127\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\060\201\312\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003
+\125\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153\061\072\060\070\006\003\125\004\013\023\061\050
+\143\051\040\061\071\071\071\040\126\145\162\151\123\151\147\156
+\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165\164
+\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171
+\061\105\060\103\006\003\125\004\003\023\074\126\145\162\151\123
+\151\147\156\040\103\154\141\163\163\040\063\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\063\060\036\027\015\071\071\061\060\060
+\061\060\060\060\060\060\060\132\027\015\063\066\060\067\061\066
+\062\063\065\071\065\071\132\060\201\312\061\013\060\011\006\003
+\125\004\006\023\002\125\123\061\027\060\025\006\003\125\004\012
+\023\016\126\145\162\151\123\151\147\156\054\040\111\156\143\056
+\061\037\060\035\006\003\125\004\013\023\026\126\145\162\151\123
+\151\147\156\040\124\162\165\163\164\040\116\145\164\167\157\162
+\153\061\072\060\070\006\003\125\004\013\023\061\050\143\051\040
+\061\071\071\071\040\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\105\060
+\103\006\003\125\004\003\023\074\126\145\162\151\123\151\147\156
+\040\103\154\141\163\163\040\063\040\120\165\142\154\151\143\040
+\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040
+\055\040\107\063\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\313\272\234\122\374\170\037\032\036\157\033
+\067\163\275\370\311\153\224\022\060\117\360\066\107\365\320\221
+\012\365\027\310\245\141\301\026\100\115\373\212\141\220\345\166
+\040\301\021\006\175\253\054\156\246\365\021\101\216\372\055\255
+\052\141\131\244\147\046\114\320\350\274\122\133\160\040\004\130
+\321\172\311\244\151\274\203\027\144\255\005\213\274\320\130\316
+\215\214\365\353\360\102\111\013\235\227\047\147\062\156\341\256
+\223\025\034\160\274\040\115\057\030\336\222\210\350\154\205\127
+\021\032\351\176\343\046\021\124\242\105\226\125\203\312\060\211
+\350\334\330\243\355\052\200\077\177\171\145\127\076\025\040\146
+\010\057\225\223\277\252\107\057\250\106\227\360\022\342\376\302
+\012\053\121\346\166\346\267\106\267\342\015\246\314\250\303\114
+\131\125\211\346\350\123\134\034\352\235\360\142\026\013\247\311
+\137\014\360\336\302\166\316\257\367\152\362\372\101\246\242\063
+\024\311\345\172\143\323\236\142\067\325\205\145\236\016\346\123
+\044\164\033\136\035\022\123\133\307\054\347\203\111\073\025\256
+\212\150\271\127\227\002\003\001\000\001\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\021\024
+\226\301\253\222\010\367\077\057\311\262\376\344\132\237\144\336
+\333\041\117\206\231\064\166\066\127\335\320\025\057\305\255\177
+\025\037\067\142\163\076\324\347\137\316\027\003\333\065\372\053
+\333\256\140\011\137\036\137\217\156\273\013\075\352\132\023\036
+\014\140\157\265\300\265\043\042\056\007\013\313\251\164\313\107
+\273\035\301\327\245\153\314\057\322\102\375\111\335\247\211\317
+\123\272\332\000\132\050\277\202\337\370\272\023\035\120\206\202
+\375\216\060\217\051\106\260\036\075\065\332\070\142\026\030\112
+\255\346\266\121\154\336\257\142\353\001\320\036\044\376\172\217
+\022\032\022\150\270\373\146\231\024\024\105\134\256\347\256\151
+\027\201\053\132\067\311\136\052\364\306\342\241\134\124\233\246
+\124\000\317\360\361\301\307\230\060\032\073\066\026\333\243\156
+\352\375\255\262\302\332\357\002\107\023\212\300\361\263\061\255
+\117\034\341\117\234\257\017\014\235\367\170\015\330\364\065\126
+\200\332\267\155\027\217\235\036\201\144\341\376\305\105\272\255
+\153\271\012\172\116\117\113\204\356\113\361\175\335\021
+END
+
+# Trust for Certificate "Verisign Class 3 Public Primary Certification Authority - G3"
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:00:9b:7e:06:49:a3:3e:62:b9:d5:ee:90:48:71:29:ef:57
+# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): CD:68:B6:A7:C7:C4:CE:75:E0:1D:4F:57:44:61:92:09
+# Fingerprint (SHA1): 13:2D:0D:45:53:4B:69:97:CD:B2:D5:C3:39:E2:55:76:60:9B:5C:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority - G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\023\055\015\105\123\113\151\227\315\262\325\303\071\342\125\166
+\140\233\134\306
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\315\150\266\247\307\304\316\165\340\035\117\127\104\141\222\011
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\233\176\006\111\243\076\142\271\325\356\220\110\161
+\051\357\127
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Distrust "Distrust: O=Egypt Trust, OU=VeriSign Trust Network (cert 1/3)"
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:4c:00:36:1b:e5:08:2b:a9:aa:ce:74:0a:05:3e:fb:34
+# Subject: CN=Egypt Trust Class 3 Managed PKI Enterprise Administrator CA,OU=Terms of use at https://www.egypttrust.com/repository/rpa (c)08,OU=VeriSign Trust Network,O=Egypt Trust,C=EG
+# Not Valid Before: Sun May 18 00:00:00 2008
+# Not Valid After : Thu May 17 23:59:59 2018
+# Fingerprint (MD5): A7:91:05:96:B1:56:01:26:4E:BF:80:80:08:86:1B:4D
+# Fingerprint (SHA1): 6A:2C:5C:B0:94:D5:E0:B7:57:FB:0F:58:42:AA:C8:13:A5:80:2F:E1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Distrust: O=Egypt Trust, OU=VeriSign Trust Network (cert 1/3)"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\114\000\066\033\345\010\053\251\252\316\164\012\005\076
+\373\064
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+
+# Distrust "Distrust: O=Egypt Trust, OU=VeriSign Trust Network (cert 2/3)"
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:3e:0c:9e:87:69:aa:95:5c:ea:23:d8:45:9e:d4:5b:51
+# Subject: CN=Egypt Trust Class 3 Managed PKI Operational Administrator CA,OU=Terms of use at https://www.egypttrust.com/repository/rpa (c)08,OU=VeriSign Trust Network,O=Egypt Trust,C=EG
+# Not Valid Before: Sun May 18 00:00:00 2008
+# Not Valid After : Thu May 17 23:59:59 2018
+# Fingerprint (MD5): D0:C3:71:17:3E:39:80:C6:50:4F:04:22:DF:40:E1:34
+# Fingerprint (SHA1): 9C:65:5E:D5:FA:E3:B8:96:4D:89:72:F6:3A:63:53:59:3F:5E:B4:4E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Distrust: O=Egypt Trust, OU=VeriSign Trust Network (cert 2/3)"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\076\014\236\207\151\252\225\134\352\043\330\105\236\324
+\133\121
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Distrust "Distrust: O=Egypt Trust, OU=VeriSign Trust Network (cert 3/3)"
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:12:bd:26:a2:ae:33:c0:7f:24:7b:6a:58:69:f2:0a:76
+# Subject: CN=Egypt Trust Class 3 Managed PKI SCO Administrator CA,OU=Terms of use at https://www.egypttrust.com/repository/rpa (c)08,OU=VeriSign Trust Network,O=Egypt Trust,C=EG
+# Not Valid Before: Sun May 18 00:00:00 2008
+# Not Valid After : Thu May 17 23:59:59 2018
+# Fingerprint (MD5): C2:13:5E:B2:67:8A:5C:F7:91:EF:8F:29:0F:9B:77:6E
+# Fingerprint (SHA1): 83:23:F1:4F:BC:9F:9B:80:B7:9D:ED:14:CD:01:57:CD:FB:08:95:D2
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Distrust: O=Egypt Trust, OU=VeriSign Trust Network (cert 3/3)"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\022\275\046\242\256\063\300\177\044\173\152\130\151\362
+\012\166
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 4 Public Primary Certification Authority - G3"
+#
+# Issuer: CN=VeriSign Class 4 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:00:ec:a0:a7:8b:6e:75:6a:01:cf:c4:7c:cc:2f:94:5e:d7
+# Subject: CN=VeriSign Class 4 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): DB:C8:F2:27:2E:B1:EA:6A:29:23:5D:FE:56:3E:33:DF
+# Fingerprint (SHA1): C8:EC:8C:87:92:69:CB:4B:AB:39:E9:8D:7E:57:67:F3:14:95:73:9D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 4 Public Primary Certification Authority - G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\064\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\064\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\354\240\247\213\156\165\152\001\317\304\174\314\057
+\224\136\327
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\032\060\202\003\002\002\021\000\354\240\247\213\156
+\165\152\001\317\304\174\314\057\224\136\327\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\060\201\312\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003
+\125\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\061\037\060\035\006\003\125\004\013\023\026\126\145
+\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145\164
+\167\157\162\153\061\072\060\070\006\003\125\004\013\023\061\050
+\143\051\040\061\071\071\071\040\126\145\162\151\123\151\147\156
+\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165\164
+\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171
+\061\105\060\103\006\003\125\004\003\023\074\126\145\162\151\123
+\151\147\156\040\103\154\141\163\163\040\064\040\120\165\142\154
+\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\055\040\107\063\060\036\027\015\071\071\061\060\060
+\061\060\060\060\060\060\060\132\027\015\063\066\060\067\061\066
+\062\063\065\071\065\071\132\060\201\312\061\013\060\011\006\003
+\125\004\006\023\002\125\123\061\027\060\025\006\003\125\004\012
+\023\016\126\145\162\151\123\151\147\156\054\040\111\156\143\056
+\061\037\060\035\006\003\125\004\013\023\026\126\145\162\151\123
+\151\147\156\040\124\162\165\163\164\040\116\145\164\167\157\162
+\153\061\072\060\070\006\003\125\004\013\023\061\050\143\051\040
+\061\071\071\071\040\126\145\162\151\123\151\147\156\054\040\111
+\156\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\105\060
+\103\006\003\125\004\003\023\074\126\145\162\151\123\151\147\156
+\040\103\154\141\163\163\040\064\040\120\165\142\154\151\143\040
+\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040
+\055\040\107\063\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\255\313\245\021\151\306\131\253\361\217\265
+\031\017\126\316\314\265\037\040\344\236\046\045\113\340\163\145
+\211\131\336\320\203\344\365\017\265\273\255\361\174\350\041\374
+\344\350\014\356\174\105\042\031\166\222\264\023\267\040\133\011
+\372\141\256\250\362\245\215\205\302\052\326\336\146\066\322\233
+\002\364\250\222\140\174\234\151\264\217\044\036\320\206\122\366
+\062\234\101\130\036\042\275\315\105\142\225\010\156\320\146\335
+\123\242\314\360\020\334\124\163\213\004\241\106\063\063\134\027
+\100\271\236\115\323\363\276\125\203\350\261\211\216\132\174\232
+\226\042\220\073\210\045\362\322\123\210\002\014\013\170\362\346
+\067\027\113\060\106\007\344\200\155\246\330\226\056\350\054\370
+\021\263\070\015\146\246\233\352\311\043\133\333\216\342\363\023
+\216\032\131\055\252\002\360\354\244\207\146\334\301\077\365\330
+\271\364\354\202\306\322\075\225\035\345\300\117\204\311\331\243
+\104\050\006\152\327\105\254\360\153\152\357\116\137\370\021\202
+\036\070\143\064\146\120\324\076\223\163\372\060\303\146\255\377
+\223\055\227\357\003\002\003\001\000\001\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\217\372
+\045\153\117\133\344\244\116\047\125\253\042\025\131\074\312\265
+\012\324\112\333\253\335\241\137\123\305\240\127\071\302\316\107
+\053\276\072\310\126\277\302\331\047\020\072\261\005\074\300\167
+\061\273\072\323\005\173\155\232\034\060\214\200\313\223\223\052
+\203\253\005\121\202\002\000\021\147\153\363\210\141\107\137\003
+\223\325\133\015\340\361\324\241\062\065\205\262\072\333\260\202
+\253\321\313\012\274\117\214\133\305\113\000\073\037\052\202\246
+\176\066\205\334\176\074\147\000\265\344\073\122\340\250\353\135
+\025\371\306\155\360\255\035\016\205\267\251\232\163\024\132\133
+\217\101\050\300\325\350\055\115\244\136\315\252\331\355\316\334
+\330\325\074\102\035\027\301\022\135\105\070\303\070\363\374\205
+\056\203\106\110\262\327\040\137\222\066\217\347\171\017\230\136
+\231\350\360\320\244\273\365\123\275\052\316\131\260\257\156\177
+\154\273\322\036\000\260\041\355\370\101\142\202\271\330\262\304
+\273\106\120\363\061\305\217\001\250\164\353\365\170\047\332\347
+\367\146\103\363\236\203\076\040\252\303\065\140\221\316
+END
+
+# Trust for Certificate "Verisign Class 4 Public Primary Certification Authority - G3"
+# Issuer: CN=VeriSign Class 4 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:00:ec:a0:a7:8b:6e:75:6a:01:cf:c4:7c:cc:2f:94:5e:d7
+# Subject: CN=VeriSign Class 4 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Fri Oct 01 00:00:00 1999
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): DB:C8:F2:27:2E:B1:EA:6A:29:23:5D:FE:56:3E:33:DF
+# Fingerprint (SHA1): C8:EC:8C:87:92:69:CB:4B:AB:39:E9:8D:7E:57:67:F3:14:95:73:9D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 4 Public Primary Certification Authority - G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\310\354\214\207\222\151\313\113\253\071\351\215\176\127\147\363
+\024\225\163\235
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\333\310\362\047\056\261\352\152\051\043\135\376\126\076\063\337
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\061\071\071\071\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\064\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\354\240\247\213\156\165\152\001\317\304\174\314\057
+\224\136\327
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Entrust.net Secure Server CA"
+#
+# Issuer: CN=Entrust.net Secure Server Certification Authority,OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS incorp. by ref. (limits liab.),O=Entrust.net,C=US
+# Serial Number: 927650371 (0x374ad243)
+# Subject: CN=Entrust.net Secure Server Certification Authority,OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS incorp. by ref. (limits liab.),O=Entrust.net,C=US
+# Not Valid Before: Tue May 25 16:09:40 1999
+# Not Valid After : Sat May 25 16:39:40 2019
+# Fingerprint (MD5): DF:F2:80:73:CC:F1:E6:61:73:FC:F5:42:E9:C5:7C:EE
+# Fingerprint (SHA1): 99:A6:9B:E6:1A:FE:88:6B:4D:2B:82:00:7C:B8:54:FC:31:7E:15:39
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust.net Secure Server CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\303\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\024\060\022\006\003\125\004\012\023\013\105\156\164\162\165
+\163\164\056\156\145\164\061\073\060\071\006\003\125\004\013\023
+\062\167\167\167\056\145\156\164\162\165\163\164\056\156\145\164
+\057\103\120\123\040\151\156\143\157\162\160\056\040\142\171\040
+\162\145\146\056\040\050\154\151\155\151\164\163\040\154\151\141
+\142\056\051\061\045\060\043\006\003\125\004\013\023\034\050\143
+\051\040\061\071\071\071\040\105\156\164\162\165\163\164\056\156
+\145\164\040\114\151\155\151\164\145\144\061\072\060\070\006\003
+\125\004\003\023\061\105\156\164\162\165\163\164\056\156\145\164
+\040\123\145\143\165\162\145\040\123\145\162\166\145\162\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\303\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\024\060\022\006\003\125\004\012\023\013\105\156\164\162\165
+\163\164\056\156\145\164\061\073\060\071\006\003\125\004\013\023
+\062\167\167\167\056\145\156\164\162\165\163\164\056\156\145\164
+\057\103\120\123\040\151\156\143\157\162\160\056\040\142\171\040
+\162\145\146\056\040\050\154\151\155\151\164\163\040\154\151\141
+\142\056\051\061\045\060\043\006\003\125\004\013\023\034\050\143
+\051\040\061\071\071\071\040\105\156\164\162\165\163\164\056\156
+\145\164\040\114\151\155\151\164\145\144\061\072\060\070\006\003
+\125\004\003\023\061\105\156\164\162\165\163\164\056\156\145\164
+\040\123\145\143\165\162\145\040\123\145\162\166\145\162\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\067\112\322\103
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\330\060\202\004\101\240\003\002\001\002\002\004\067
+\112\322\103\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\201\303\061\013\060\011\006\003\125\004\006\023\002
+\125\123\061\024\060\022\006\003\125\004\012\023\013\105\156\164
+\162\165\163\164\056\156\145\164\061\073\060\071\006\003\125\004
+\013\023\062\167\167\167\056\145\156\164\162\165\163\164\056\156
+\145\164\057\103\120\123\040\151\156\143\157\162\160\056\040\142
+\171\040\162\145\146\056\040\050\154\151\155\151\164\163\040\154
+\151\141\142\056\051\061\045\060\043\006\003\125\004\013\023\034
+\050\143\051\040\061\071\071\071\040\105\156\164\162\165\163\164
+\056\156\145\164\040\114\151\155\151\164\145\144\061\072\060\070
+\006\003\125\004\003\023\061\105\156\164\162\165\163\164\056\156
+\145\164\040\123\145\143\165\162\145\040\123\145\162\166\145\162
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\060\036\027\015\071\071\060\065
+\062\065\061\066\060\071\064\060\132\027\015\061\071\060\065\062
+\065\061\066\063\071\064\060\132\060\201\303\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\024\060\022\006\003\125\004
+\012\023\013\105\156\164\162\165\163\164\056\156\145\164\061\073
+\060\071\006\003\125\004\013\023\062\167\167\167\056\145\156\164
+\162\165\163\164\056\156\145\164\057\103\120\123\040\151\156\143
+\157\162\160\056\040\142\171\040\162\145\146\056\040\050\154\151
+\155\151\164\163\040\154\151\141\142\056\051\061\045\060\043\006
+\003\125\004\013\023\034\050\143\051\040\061\071\071\071\040\105
+\156\164\162\165\163\164\056\156\145\164\040\114\151\155\151\164
+\145\144\061\072\060\070\006\003\125\004\003\023\061\105\156\164
+\162\165\163\164\056\156\145\164\040\123\145\143\165\162\145\040
+\123\145\162\166\145\162\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\201
+\235\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\201\213\000\060\201\207\002\201\201\000\315\050\203\064\124
+\033\211\363\017\257\067\221\061\377\257\061\140\311\250\350\262
+\020\150\355\237\347\223\066\361\012\144\273\107\365\004\027\077
+\043\107\115\305\047\031\201\046\014\124\162\015\210\055\331\037
+\232\022\237\274\263\161\323\200\031\077\107\146\173\214\065\050
+\322\271\012\337\044\332\234\326\120\171\201\172\132\323\067\367
+\302\112\330\051\222\046\144\321\344\230\154\072\000\212\365\064
+\233\145\370\355\343\020\377\375\270\111\130\334\240\336\202\071
+\153\201\261\026\031\141\271\124\266\346\103\002\001\003\243\202
+\001\327\060\202\001\323\060\021\006\011\140\206\110\001\206\370
+\102\001\001\004\004\003\002\000\007\060\202\001\031\006\003\125
+\035\037\004\202\001\020\060\202\001\014\060\201\336\240\201\333
+\240\201\330\244\201\325\060\201\322\061\013\060\011\006\003\125
+\004\006\023\002\125\123\061\024\060\022\006\003\125\004\012\023
+\013\105\156\164\162\165\163\164\056\156\145\164\061\073\060\071
+\006\003\125\004\013\023\062\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\103\120\123\040\151\156\143\157\162
+\160\056\040\142\171\040\162\145\146\056\040\050\154\151\155\151
+\164\163\040\154\151\141\142\056\051\061\045\060\043\006\003\125
+\004\013\023\034\050\143\051\040\061\071\071\071\040\105\156\164
+\162\165\163\164\056\156\145\164\040\114\151\155\151\164\145\144
+\061\072\060\070\006\003\125\004\003\023\061\105\156\164\162\165
+\163\164\056\156\145\164\040\123\145\143\165\162\145\040\123\145
+\162\166\145\162\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\061\015\060\013
+\006\003\125\004\003\023\004\103\122\114\061\060\051\240\047\240
+\045\206\043\150\164\164\160\072\057\057\167\167\167\056\145\156
+\164\162\165\163\164\056\156\145\164\057\103\122\114\057\156\145
+\164\061\056\143\162\154\060\053\006\003\125\035\020\004\044\060
+\042\200\017\061\071\071\071\060\065\062\065\061\066\060\071\064
+\060\132\201\017\062\060\061\071\060\065\062\065\061\066\060\071
+\064\060\132\060\013\006\003\125\035\017\004\004\003\002\001\006
+\060\037\006\003\125\035\043\004\030\060\026\200\024\360\027\142
+\023\125\075\263\377\012\000\153\373\120\204\227\363\355\142\320
+\032\060\035\006\003\125\035\016\004\026\004\024\360\027\142\023
+\125\075\263\377\012\000\153\373\120\204\227\363\355\142\320\032
+\060\014\006\003\125\035\023\004\005\060\003\001\001\377\060\031
+\006\011\052\206\110\206\366\175\007\101\000\004\014\060\012\033
+\004\126\064\056\060\003\002\004\220\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\201\201\000\220\334\060\002
+\372\144\164\302\247\012\245\174\041\215\064\027\250\373\107\016
+\377\045\174\215\023\012\373\344\230\265\357\214\370\305\020\015
+\367\222\276\361\303\325\325\225\152\004\273\054\316\046\066\145
+\310\061\306\347\356\077\343\127\165\204\172\021\357\106\117\030
+\364\323\230\273\250\207\062\272\162\366\074\342\075\237\327\035
+\331\303\140\103\214\130\016\042\226\057\142\243\054\037\272\255
+\005\357\253\062\170\207\240\124\163\031\265\134\005\371\122\076
+\155\055\105\013\367\012\223\352\355\006\371\262
+END
+
+# Trust for Certificate "Entrust.net Secure Server CA"
+# Issuer: CN=Entrust.net Secure Server Certification Authority,OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS incorp. by ref. (limits liab.),O=Entrust.net,C=US
+# Serial Number: 927650371 (0x374ad243)
+# Subject: CN=Entrust.net Secure Server Certification Authority,OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS incorp. by ref. (limits liab.),O=Entrust.net,C=US
+# Not Valid Before: Tue May 25 16:09:40 1999
+# Not Valid After : Sat May 25 16:39:40 2019
+# Fingerprint (MD5): DF:F2:80:73:CC:F1:E6:61:73:FC:F5:42:E9:C5:7C:EE
+# Fingerprint (SHA1): 99:A6:9B:E6:1A:FE:88:6B:4D:2B:82:00:7C:B8:54:FC:31:7E:15:39
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust.net Secure Server CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\231\246\233\346\032\376\210\153\115\053\202\000\174\270\124\374
+\061\176\025\071
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\337\362\200\163\314\361\346\141\163\374\365\102\351\305\174\356
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\303\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\024\060\022\006\003\125\004\012\023\013\105\156\164\162\165
+\163\164\056\156\145\164\061\073\060\071\006\003\125\004\013\023
+\062\167\167\167\056\145\156\164\162\165\163\164\056\156\145\164
+\057\103\120\123\040\151\156\143\157\162\160\056\040\142\171\040
+\162\145\146\056\040\050\154\151\155\151\164\163\040\154\151\141
+\142\056\051\061\045\060\043\006\003\125\004\013\023\034\050\143
+\051\040\061\071\071\071\040\105\156\164\162\165\163\164\056\156
+\145\164\040\114\151\155\151\164\145\144\061\072\060\070\006\003
+\125\004\003\023\061\105\156\164\162\165\163\164\056\156\145\164
+\040\123\145\143\165\162\145\040\123\145\162\166\145\162\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\067\112\322\103
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Entrust.net Premium 2048 Secure Server CA"
+#
+# Issuer: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
+# Serial Number: 946069240 (0x3863def8)
+# Subject: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
+# Not Valid Before: Fri Dec 24 17:50:51 1999
+# Not Valid After : Tue Jul 24 14:15:12 2029
+# Fingerprint (MD5): EE:29:31:BC:32:7E:9A:E6:E8:B5:F7:51:B4:34:71:90
+# Fingerprint (SHA1): 50:30:06:09:1D:97:D4:F5:AE:39:F7:CB:E7:92:7D:7D:65:2D:34:31
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust.net Premium 2048 Secure Server CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\264\061\024\060\022\006\003\125\004\012\023\013\105\156
+\164\162\165\163\164\056\156\145\164\061\100\060\076\006\003\125
+\004\013\024\067\167\167\167\056\145\156\164\162\165\163\164\056
+\156\145\164\057\103\120\123\137\062\060\064\070\040\151\156\143
+\157\162\160\056\040\142\171\040\162\145\146\056\040\050\154\151
+\155\151\164\163\040\154\151\141\142\056\051\061\045\060\043\006
+\003\125\004\013\023\034\050\143\051\040\061\071\071\071\040\105
+\156\164\162\165\163\164\056\156\145\164\040\114\151\155\151\164
+\145\144\061\063\060\061\006\003\125\004\003\023\052\105\156\164
+\162\165\163\164\056\156\145\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\040\050\062\060\064\070\051
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\264\061\024\060\022\006\003\125\004\012\023\013\105\156
+\164\162\165\163\164\056\156\145\164\061\100\060\076\006\003\125
+\004\013\024\067\167\167\167\056\145\156\164\162\165\163\164\056
+\156\145\164\057\103\120\123\137\062\060\064\070\040\151\156\143
+\157\162\160\056\040\142\171\040\162\145\146\056\040\050\154\151
+\155\151\164\163\040\154\151\141\142\056\051\061\045\060\043\006
+\003\125\004\013\023\034\050\143\051\040\061\071\071\071\040\105
+\156\164\162\165\163\164\056\156\145\164\040\114\151\155\151\164
+\145\144\061\063\060\061\006\003\125\004\003\023\052\105\156\164
+\162\165\163\164\056\156\145\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\040\050\062\060\064\070\051
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\070\143\336\370
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\052\060\202\003\022\240\003\002\001\002\002\004\070
+\143\336\370\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\201\264\061\024\060\022\006\003\125\004\012\023\013
+\105\156\164\162\165\163\164\056\156\145\164\061\100\060\076\006
+\003\125\004\013\024\067\167\167\167\056\145\156\164\162\165\163
+\164\056\156\145\164\057\103\120\123\137\062\060\064\070\040\151
+\156\143\157\162\160\056\040\142\171\040\162\145\146\056\040\050
+\154\151\155\151\164\163\040\154\151\141\142\056\051\061\045\060
+\043\006\003\125\004\013\023\034\050\143\051\040\061\071\071\071
+\040\105\156\164\162\165\163\164\056\156\145\164\040\114\151\155
+\151\164\145\144\061\063\060\061\006\003\125\004\003\023\052\105
+\156\164\162\165\163\164\056\156\145\164\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\050\062\060\064\070\051\060\036\027\015\071\071\061
+\062\062\064\061\067\065\060\065\061\132\027\015\062\071\060\067
+\062\064\061\064\061\065\061\062\132\060\201\264\061\024\060\022
+\006\003\125\004\012\023\013\105\156\164\162\165\163\164\056\156
+\145\164\061\100\060\076\006\003\125\004\013\024\067\167\167\167
+\056\145\156\164\162\165\163\164\056\156\145\164\057\103\120\123
+\137\062\060\064\070\040\151\156\143\157\162\160\056\040\142\171
+\040\162\145\146\056\040\050\154\151\155\151\164\163\040\154\151
+\141\142\056\051\061\045\060\043\006\003\125\004\013\023\034\050
+\143\051\040\061\071\071\071\040\105\156\164\162\165\163\164\056
+\156\145\164\040\114\151\155\151\164\145\144\061\063\060\061\006
+\003\125\004\003\023\052\105\156\164\162\165\163\164\056\156\145
+\164\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\040\050\062\060\064\070\051
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\255\115\113\251\022\206\262\352\243\040\007\025\026\144\052
+\053\113\321\277\013\112\115\216\355\200\166\245\147\267\170\100
+\300\163\102\310\150\300\333\123\053\335\136\270\166\230\065\223
+\213\032\235\174\023\072\016\037\133\267\036\317\345\044\024\036
+\261\201\251\215\175\270\314\153\113\003\361\002\014\334\253\245
+\100\044\000\177\164\224\241\235\010\051\263\210\013\365\207\167
+\235\125\315\344\303\176\327\152\144\253\205\024\206\225\133\227
+\062\120\157\075\310\272\146\014\343\374\275\270\111\301\166\211
+\111\031\375\300\250\275\211\243\147\057\306\237\274\161\031\140
+\270\055\351\054\311\220\166\146\173\224\342\257\170\326\145\123
+\135\074\326\234\262\317\051\003\371\057\244\120\262\324\110\316
+\005\062\125\212\375\262\144\114\016\344\230\007\165\333\177\337
+\271\010\125\140\205\060\051\371\173\110\244\151\206\343\065\077
+\036\206\135\172\172\025\275\357\000\216\025\042\124\027\000\220
+\046\223\274\016\111\150\221\277\370\107\323\235\225\102\301\016
+\115\337\157\046\317\303\030\041\142\146\103\160\326\325\300\007
+\341\002\003\001\000\001\243\102\060\100\060\016\006\003\125\035
+\017\001\001\377\004\004\003\002\001\006\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\035\006\003\125
+\035\016\004\026\004\024\125\344\201\321\021\200\276\330\211\271
+\010\243\061\371\241\044\011\026\271\160\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\073\233
+\217\126\233\060\347\123\231\174\172\171\247\115\227\327\031\225
+\220\373\006\037\312\063\174\106\143\217\226\146\044\372\100\033
+\041\047\312\346\162\163\362\117\376\061\231\375\310\014\114\150
+\123\306\200\202\023\230\372\266\255\332\135\075\361\316\156\366
+\025\021\224\202\014\356\077\225\257\021\253\017\327\057\336\037
+\003\217\127\054\036\311\273\232\032\104\225\353\030\117\246\037
+\315\175\127\020\057\233\004\011\132\204\265\156\330\035\072\341
+\326\236\321\154\171\136\171\034\024\305\343\320\114\223\073\145
+\074\355\337\075\276\246\345\225\032\303\265\031\303\275\136\133
+\273\377\043\357\150\031\313\022\223\047\134\003\055\157\060\320
+\036\266\032\254\336\132\367\321\252\250\047\246\376\171\201\304
+\171\231\063\127\272\022\260\251\340\102\154\223\312\126\336\376
+\155\204\013\010\213\176\215\352\327\230\041\306\363\347\074\171
+\057\136\234\321\114\025\215\341\354\042\067\314\232\103\013\227
+\334\200\220\215\263\147\233\157\110\010\025\126\317\277\361\053
+\174\136\232\166\351\131\220\305\174\203\065\021\145\121
+END
+
+# Trust for "Entrust.net Premium 2048 Secure Server CA"
+# Issuer: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
+# Serial Number: 946069240 (0x3863def8)
+# Subject: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
+# Not Valid Before: Fri Dec 24 17:50:51 1999
+# Not Valid After : Tue Jul 24 14:15:12 2029
+# Fingerprint (MD5): EE:29:31:BC:32:7E:9A:E6:E8:B5:F7:51:B4:34:71:90
+# Fingerprint (SHA1): 50:30:06:09:1D:97:D4:F5:AE:39:F7:CB:E7:92:7D:7D:65:2D:34:31
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust.net Premium 2048 Secure Server CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\120\060\006\011\035\227\324\365\256\071\367\313\347\222\175\175
+\145\055\064\061
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\356\051\061\274\062\176\232\346\350\265\367\121\264\064\161\220
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\264\061\024\060\022\006\003\125\004\012\023\013\105\156
+\164\162\165\163\164\056\156\145\164\061\100\060\076\006\003\125
+\004\013\024\067\167\167\167\056\145\156\164\162\165\163\164\056
+\156\145\164\057\103\120\123\137\062\060\064\070\040\151\156\143
+\157\162\160\056\040\142\171\040\162\145\146\056\040\050\154\151
+\155\151\164\163\040\154\151\141\142\056\051\061\045\060\043\006
+\003\125\004\013\023\034\050\143\051\040\061\071\071\071\040\105
+\156\164\162\165\163\164\056\156\145\164\040\114\151\155\151\164
+\145\144\061\063\060\061\006\003\125\004\003\023\052\105\156\164
+\162\165\163\164\056\156\145\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\040\050\062\060\064\070\051
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\070\143\336\370
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Baltimore CyberTrust Root"
+#
+# Issuer: CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE
+# Serial Number: 33554617 (0x20000b9)
+# Subject: CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE
+# Not Valid Before: Fri May 12 18:46:00 2000
+# Not Valid After : Mon May 12 23:59:00 2025
+# Fingerprint (MD5): AC:B6:94:A5:9C:17:E0:D7:91:52:9B:B1:97:06:A6:E4
+# Fingerprint (SHA1): D4:DE:20:D0:5E:66:FC:53:FE:1A:50:88:2C:78:DB:28:52:CA:E4:74
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Baltimore CyberTrust Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\111\105\061
+\022\060\020\006\003\125\004\012\023\011\102\141\154\164\151\155
+\157\162\145\061\023\060\021\006\003\125\004\013\023\012\103\171
+\142\145\162\124\162\165\163\164\061\042\060\040\006\003\125\004
+\003\023\031\102\141\154\164\151\155\157\162\145\040\103\171\142
+\145\162\124\162\165\163\164\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\111\105\061
+\022\060\020\006\003\125\004\012\023\011\102\141\154\164\151\155
+\157\162\145\061\023\060\021\006\003\125\004\013\023\012\103\171
+\142\145\162\124\162\165\163\164\061\042\060\040\006\003\125\004
+\003\023\031\102\141\154\164\151\155\157\162\145\040\103\171\142
+\145\162\124\162\165\163\164\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\002\000\000\271
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\167\060\202\002\137\240\003\002\001\002\002\004\002
+\000\000\271\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\132\061\013\060\011\006\003\125\004\006\023\002\111
+\105\061\022\060\020\006\003\125\004\012\023\011\102\141\154\164
+\151\155\157\162\145\061\023\060\021\006\003\125\004\013\023\012
+\103\171\142\145\162\124\162\165\163\164\061\042\060\040\006\003
+\125\004\003\023\031\102\141\154\164\151\155\157\162\145\040\103
+\171\142\145\162\124\162\165\163\164\040\122\157\157\164\060\036
+\027\015\060\060\060\065\061\062\061\070\064\066\060\060\132\027
+\015\062\065\060\065\061\062\062\063\065\071\060\060\132\060\132
+\061\013\060\011\006\003\125\004\006\023\002\111\105\061\022\060
+\020\006\003\125\004\012\023\011\102\141\154\164\151\155\157\162
+\145\061\023\060\021\006\003\125\004\013\023\012\103\171\142\145
+\162\124\162\165\163\164\061\042\060\040\006\003\125\004\003\023
+\031\102\141\154\164\151\155\157\162\145\040\103\171\142\145\162
+\124\162\165\163\164\040\122\157\157\164\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\243\004\273\042\253
+\230\075\127\350\046\162\232\265\171\324\051\342\341\350\225\200
+\261\260\343\133\216\053\051\232\144\337\241\135\355\260\011\005
+\155\333\050\056\316\142\242\142\376\264\210\332\022\353\070\353
+\041\235\300\101\053\001\122\173\210\167\323\034\217\307\272\271
+\210\265\152\011\347\163\350\021\100\247\321\314\312\142\215\055
+\345\217\013\246\120\322\250\120\303\050\352\365\253\045\207\212
+\232\226\034\251\147\270\077\014\325\367\371\122\023\057\302\033
+\325\160\160\360\217\300\022\312\006\313\232\341\331\312\063\172
+\167\326\370\354\271\361\150\104\102\110\023\322\300\302\244\256
+\136\140\376\266\246\005\374\264\335\007\131\002\324\131\030\230
+\143\365\245\143\340\220\014\175\135\262\006\172\363\205\352\353
+\324\003\256\136\204\076\137\377\025\355\151\274\371\071\066\162
+\165\317\167\122\115\363\311\220\054\271\075\345\311\043\123\077
+\037\044\230\041\134\007\231\051\275\306\072\354\347\156\206\072
+\153\227\164\143\063\275\150\030\061\360\170\215\166\277\374\236
+\216\135\052\206\247\115\220\334\047\032\071\002\003\001\000\001
+\243\105\060\103\060\035\006\003\125\035\016\004\026\004\024\345
+\235\131\060\202\107\130\314\254\372\010\124\066\206\173\072\265
+\004\115\360\060\022\006\003\125\035\023\001\001\377\004\010\060
+\006\001\001\377\002\001\003\060\016\006\003\125\035\017\001\001
+\377\004\004\003\002\001\006\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\003\202\001\001\000\205\014\135\216\344
+\157\121\150\102\005\240\335\273\117\047\045\204\003\275\367\144
+\375\055\327\060\343\244\020\027\353\332\051\051\266\171\077\166
+\366\031\023\043\270\020\012\371\130\244\324\141\160\275\004\141
+\152\022\212\027\325\012\275\305\274\060\174\326\351\014\045\215
+\206\100\117\354\314\243\176\070\306\067\021\117\355\335\150\061
+\216\114\322\263\001\164\356\276\165\136\007\110\032\177\160\377
+\026\134\204\300\171\205\270\005\375\177\276\145\021\243\017\300
+\002\264\370\122\067\071\004\325\251\061\172\030\277\240\052\364
+\022\231\367\243\105\202\343\074\136\365\235\236\265\310\236\174
+\056\310\244\236\116\010\024\113\155\375\160\155\153\032\143\275
+\144\346\037\267\316\360\362\237\056\273\033\267\362\120\210\163
+\222\302\342\343\026\215\232\062\002\253\216\030\335\351\020\021
+\356\176\065\253\220\257\076\060\224\172\320\063\075\247\145\017
+\365\374\216\236\142\317\107\104\054\001\135\273\035\265\062\322
+\107\322\070\056\320\376\201\334\062\152\036\265\356\074\325\374
+\347\201\035\031\303\044\102\352\143\071\251
+END
+
+# Trust for Certificate "Baltimore CyberTrust Root"
+# Issuer: CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE
+# Serial Number: 33554617 (0x20000b9)
+# Subject: CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE
+# Not Valid Before: Fri May 12 18:46:00 2000
+# Not Valid After : Mon May 12 23:59:00 2025
+# Fingerprint (MD5): AC:B6:94:A5:9C:17:E0:D7:91:52:9B:B1:97:06:A6:E4
+# Fingerprint (SHA1): D4:DE:20:D0:5E:66:FC:53:FE:1A:50:88:2C:78:DB:28:52:CA:E4:74
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Baltimore CyberTrust Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\324\336\040\320\136\146\374\123\376\032\120\210\054\170\333\050
+\122\312\344\164
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\254\266\224\245\234\027\340\327\221\122\233\261\227\006\246\344
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\111\105\061
+\022\060\020\006\003\125\004\012\023\011\102\141\154\164\151\155
+\157\162\145\061\023\060\021\006\003\125\004\013\023\012\103\171
+\142\145\162\124\162\165\163\164\061\042\060\040\006\003\125\004
+\003\023\031\102\141\154\164\151\155\157\162\145\040\103\171\142
+\145\162\124\162\165\163\164\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\002\000\000\271
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Equifax Secure Global eBusiness CA"
+#
+# Issuer: CN=Equifax Secure Global eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=Equifax Secure Global eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Not Valid Before: Mon Jun 21 04:00:00 1999
+# Not Valid After : Sun Jun 21 04:00:00 2020
+# Fingerprint (MD5): 8F:5D:77:06:27:C4:98:3C:5B:93:78:E7:D7:7D:9B:CC
+# Fingerprint (SHA1): 7E:78:4A:10:1C:82:65:CC:2D:E1:F1:6D:47:B4:40:CA:D9:0A:19:45
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Equifax Secure Global eBusiness CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\055\060
+\053\006\003\125\004\003\023\044\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\107\154\157\142\141\154\040\145\102
+\165\163\151\156\145\163\163\040\103\101\055\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\055\060
+\053\006\003\125\004\003\023\044\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\107\154\157\142\141\154\040\145\102
+\165\163\151\156\145\163\163\040\103\101\055\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\220\060\202\001\371\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
+\132\061\013\060\011\006\003\125\004\006\023\002\125\123\061\034
+\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141\170
+\040\123\145\143\165\162\145\040\111\156\143\056\061\055\060\053
+\006\003\125\004\003\023\044\105\161\165\151\146\141\170\040\123
+\145\143\165\162\145\040\107\154\157\142\141\154\040\145\102\165
+\163\151\156\145\163\163\040\103\101\055\061\060\036\027\015\071
+\071\060\066\062\061\060\064\060\060\060\060\132\027\015\062\060
+\060\066\062\061\060\064\060\060\060\060\132\060\132\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\034\060\032\006\003
+\125\004\012\023\023\105\161\165\151\146\141\170\040\123\145\143
+\165\162\145\040\111\156\143\056\061\055\060\053\006\003\125\004
+\003\023\044\105\161\165\151\146\141\170\040\123\145\143\165\162
+\145\040\107\154\157\142\141\154\040\145\102\165\163\151\156\145
+\163\163\040\103\101\055\061\060\201\237\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\201\215\000\060\201\211
+\002\201\201\000\272\347\027\220\002\145\261\064\125\074\111\302
+\121\325\337\247\321\067\217\321\347\201\163\101\122\140\233\235
+\241\027\046\170\255\307\261\350\046\224\062\265\336\063\215\072
+\057\333\362\232\172\132\163\230\243\134\351\373\212\163\033\134
+\347\303\277\200\154\315\251\364\326\053\300\367\371\231\252\143
+\242\261\107\002\017\324\344\121\072\022\074\154\212\132\124\204
+\160\333\301\305\220\317\162\105\313\250\131\300\315\063\235\077
+\243\226\353\205\063\041\034\076\036\076\140\156\166\234\147\205
+\305\310\303\141\002\003\001\000\001\243\146\060\144\060\021\006
+\011\140\206\110\001\206\370\102\001\001\004\004\003\002\000\007
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\037\006\003\125\035\043\004\030\060\026\200\024\276\250
+\240\164\162\120\153\104\267\311\043\330\373\250\377\263\127\153
+\150\154\060\035\006\003\125\035\016\004\026\004\024\276\250\240
+\164\162\120\153\104\267\311\043\330\373\250\377\263\127\153\150
+\154\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000
+\003\201\201\000\060\342\001\121\252\307\352\137\332\271\320\145
+\017\060\326\076\332\015\024\111\156\221\223\047\024\061\357\304
+\367\055\105\370\354\307\277\242\101\015\043\264\222\371\031\000
+\147\275\001\257\315\340\161\374\132\317\144\304\340\226\230\320
+\243\100\342\001\212\357\047\007\361\145\001\212\104\055\006\145
+\165\122\300\206\020\040\041\137\154\153\017\154\256\011\034\257
+\362\242\030\064\304\165\244\163\034\361\215\334\357\255\371\263
+\166\264\222\277\334\225\020\036\276\313\310\073\132\204\140\031
+\126\224\251\125
+END
+
+# Trust for Certificate "Equifax Secure Global eBusiness CA"
+# Issuer: CN=Equifax Secure Global eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=Equifax Secure Global eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Not Valid Before: Mon Jun 21 04:00:00 1999
+# Not Valid After : Sun Jun 21 04:00:00 2020
+# Fingerprint (MD5): 8F:5D:77:06:27:C4:98:3C:5B:93:78:E7:D7:7D:9B:CC
+# Fingerprint (SHA1): 7E:78:4A:10:1C:82:65:CC:2D:E1:F1:6D:47:B4:40:CA:D9:0A:19:45
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Equifax Secure Global eBusiness CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\176\170\112\020\034\202\145\314\055\341\361\155\107\264\100\312
+\331\012\031\105
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\217\135\167\006\047\304\230\074\133\223\170\347\327\175\233\314
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\055\060
+\053\006\003\125\004\003\023\044\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\107\154\157\142\141\154\040\145\102
+\165\163\151\156\145\163\163\040\103\101\055\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Equifax Secure eBusiness CA 1"
+#
+# Issuer: CN=Equifax Secure eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Serial Number: 4 (0x4)
+# Subject: CN=Equifax Secure eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Not Valid Before: Mon Jun 21 04:00:00 1999
+# Not Valid After : Sun Jun 21 04:00:00 2020
+# Fingerprint (MD5): 64:9C:EF:2E:44:FC:C6:8F:52:07:D0:51:73:8F:CB:3D
+# Fingerprint (SHA1): DA:40:18:8B:91:89:A3:ED:EE:AE:DA:97:FE:2F:9D:F5:B7:D1:8A:41
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Equifax Secure eBusiness CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\123\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\046\060
+\044\006\003\125\004\003\023\035\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\145\102\165\163\151\156\145\163\163
+\040\103\101\055\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\123\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\046\060
+\044\006\003\125\004\003\023\035\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\145\102\165\163\151\156\145\163\163
+\040\103\101\055\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\004
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\202\060\202\001\353\240\003\002\001\002\002\001\004
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
+\123\061\013\060\011\006\003\125\004\006\023\002\125\123\061\034
+\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141\170
+\040\123\145\143\165\162\145\040\111\156\143\056\061\046\060\044
+\006\003\125\004\003\023\035\105\161\165\151\146\141\170\040\123
+\145\143\165\162\145\040\145\102\165\163\151\156\145\163\163\040
+\103\101\055\061\060\036\027\015\071\071\060\066\062\061\060\064
+\060\060\060\060\132\027\015\062\060\060\066\062\061\060\064\060
+\060\060\060\132\060\123\061\013\060\011\006\003\125\004\006\023
+\002\125\123\061\034\060\032\006\003\125\004\012\023\023\105\161
+\165\151\146\141\170\040\123\145\143\165\162\145\040\111\156\143
+\056\061\046\060\044\006\003\125\004\003\023\035\105\161\165\151
+\146\141\170\040\123\145\143\165\162\145\040\145\102\165\163\151
+\156\145\163\163\040\103\101\055\061\060\201\237\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\201\215\000\060
+\201\211\002\201\201\000\316\057\031\274\027\267\167\336\223\251
+\137\132\015\027\117\064\032\014\230\364\042\331\131\324\304\150
+\106\360\264\065\305\205\003\040\306\257\105\245\041\121\105\101
+\353\026\130\066\062\157\342\120\142\144\371\375\121\234\252\044
+\331\364\235\203\052\207\012\041\323\022\070\064\154\215\000\156
+\132\240\331\102\356\032\041\225\371\122\114\125\132\305\017\070
+\117\106\372\155\370\056\065\326\035\174\353\342\360\260\165\200
+\310\251\023\254\276\210\357\072\156\253\137\052\070\142\002\260
+\022\173\376\217\246\003\002\003\001\000\001\243\146\060\144\060
+\021\006\011\140\206\110\001\206\370\102\001\001\004\004\003\002
+\000\007\060\017\006\003\125\035\023\001\001\377\004\005\060\003
+\001\001\377\060\037\006\003\125\035\043\004\030\060\026\200\024
+\112\170\062\122\021\333\131\026\066\136\337\301\024\066\100\152
+\107\174\114\241\060\035\006\003\125\035\016\004\026\004\024\112
+\170\062\122\021\333\131\026\066\136\337\301\024\066\100\152\107
+\174\114\241\060\015\006\011\052\206\110\206\367\015\001\001\004
+\005\000\003\201\201\000\165\133\250\233\003\021\346\351\126\114
+\315\371\251\114\300\015\232\363\314\145\151\346\045\166\314\131
+\267\326\124\303\035\315\231\254\031\335\264\205\325\340\075\374
+\142\040\247\204\113\130\145\361\342\371\225\041\077\365\324\176
+\130\036\107\207\124\076\130\241\265\265\370\052\357\161\347\274
+\303\366\261\111\106\342\327\240\153\345\126\172\232\047\230\174
+\106\142\024\347\311\374\156\003\022\171\200\070\035\110\202\215
+\374\027\376\052\226\053\265\142\246\246\075\275\177\222\131\315
+\132\052\202\262\067\171
+END
+
+# Trust for Certificate "Equifax Secure eBusiness CA 1"
+# Issuer: CN=Equifax Secure eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Serial Number: 4 (0x4)
+# Subject: CN=Equifax Secure eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Not Valid Before: Mon Jun 21 04:00:00 1999
+# Not Valid After : Sun Jun 21 04:00:00 2020
+# Fingerprint (MD5): 64:9C:EF:2E:44:FC:C6:8F:52:07:D0:51:73:8F:CB:3D
+# Fingerprint (SHA1): DA:40:18:8B:91:89:A3:ED:EE:AE:DA:97:FE:2F:9D:F5:B7:D1:8A:41
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Equifax Secure eBusiness CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\332\100\030\213\221\211\243\355\356\256\332\227\376\057\235\365
+\267\321\212\101
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\144\234\357\056\104\374\306\217\122\007\320\121\163\217\313\075
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\123\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\046\060
+\044\006\003\125\004\003\023\035\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\145\102\165\163\151\156\145\163\163
+\040\103\101\055\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\004
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AddTrust Low-Value Services Root"
+#
+# Issuer: CN=AddTrust Class 1 CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust Class 1 CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:38:31 2000
+# Not Valid After : Sat May 30 10:38:31 2020
+# Fingerprint (MD5): 1E:42:95:02:33:92:6B:B9:5F:C0:7F:DA:D6:B2:4B:FC
+# Fingerprint (SHA1): CC:AB:0E:A0:4C:23:01:D6:69:7B:DD:37:9F:CD:12:EB:24:E3:94:9D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust Low-Value Services Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\003\023\030\101
+\144\144\124\162\165\163\164\040\103\154\141\163\163\040\061\040
+\103\101\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\003\023\030\101
+\144\144\124\162\165\163\164\040\103\154\141\163\163\040\061\040
+\103\101\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\030\060\202\003\000\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\145\061\013\060\011\006\003\125\004\006\023\002\123\105\061\024
+\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165\163
+\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024\101
+\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164\167
+\157\162\153\061\041\060\037\006\003\125\004\003\023\030\101\144
+\144\124\162\165\163\164\040\103\154\141\163\163\040\061\040\103
+\101\040\122\157\157\164\060\036\027\015\060\060\060\065\063\060
+\061\060\063\070\063\061\132\027\015\062\060\060\065\063\060\061
+\060\063\070\063\061\132\060\145\061\013\060\011\006\003\125\004
+\006\023\002\123\105\061\024\060\022\006\003\125\004\012\023\013
+\101\144\144\124\162\165\163\164\040\101\102\061\035\060\033\006
+\003\125\004\013\023\024\101\144\144\124\162\165\163\164\040\124
+\124\120\040\116\145\164\167\157\162\153\061\041\060\037\006\003
+\125\004\003\023\030\101\144\144\124\162\165\163\164\040\103\154
+\141\163\163\040\061\040\103\101\040\122\157\157\164\060\202\001
+\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\001\017\000\060\202\001\012\002\202\001\001\000\226\226
+\324\041\111\140\342\153\350\101\007\014\336\304\340\334\023\043
+\315\301\065\307\373\326\116\021\012\147\136\365\006\133\153\245
+\010\073\133\051\026\072\347\207\262\064\006\305\274\005\245\003
+\174\202\313\051\020\256\341\210\201\275\326\236\323\376\055\126
+\301\025\316\343\046\235\025\056\020\373\006\217\060\004\336\247
+\264\143\264\377\261\234\256\074\257\167\266\126\305\265\253\242
+\351\151\072\075\016\063\171\062\077\160\202\222\231\141\155\215
+\060\010\217\161\077\246\110\127\031\370\045\334\113\146\134\245
+\164\217\230\256\310\371\300\006\042\347\254\163\337\245\056\373
+\122\334\261\025\145\040\372\065\146\151\336\337\054\361\156\274
+\060\333\054\044\022\333\353\065\065\150\220\313\000\260\227\041
+\075\164\041\043\145\064\053\273\170\131\243\326\341\166\071\232
+\244\111\216\214\164\257\156\244\232\243\331\233\322\070\134\233
+\242\030\314\165\043\204\276\353\342\115\063\161\216\032\360\302
+\370\307\035\242\255\003\227\054\370\317\045\306\366\270\044\061
+\261\143\135\222\177\143\360\045\311\123\056\037\277\115\002\003
+\001\000\001\243\201\322\060\201\317\060\035\006\003\125\035\016
+\004\026\004\024\225\261\264\360\224\266\275\307\332\321\021\011
+\041\276\301\257\111\375\020\173\060\013\006\003\125\035\017\004
+\004\003\002\001\006\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\201\217\006\003\125\035\043\004\201
+\207\060\201\204\200\024\225\261\264\360\224\266\275\307\332\321
+\021\011\041\276\301\257\111\375\020\173\241\151\244\147\060\145
+\061\013\060\011\006\003\125\004\006\023\002\123\105\061\024\060
+\022\006\003\125\004\012\023\013\101\144\144\124\162\165\163\164
+\040\101\102\061\035\060\033\006\003\125\004\013\023\024\101\144
+\144\124\162\165\163\164\040\124\124\120\040\116\145\164\167\157
+\162\153\061\041\060\037\006\003\125\004\003\023\030\101\144\144
+\124\162\165\163\164\040\103\154\141\163\163\040\061\040\103\101
+\040\122\157\157\164\202\001\001\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\001\001\000\054\155\144\033
+\037\315\015\335\271\001\372\226\143\064\062\110\107\231\256\227
+\355\375\162\026\246\163\107\132\364\353\335\351\365\326\373\105
+\314\051\211\104\135\277\106\071\075\350\356\274\115\124\206\036
+\035\154\343\027\047\103\341\211\126\053\251\157\162\116\111\063
+\343\162\174\052\043\232\274\076\377\050\052\355\243\377\034\043
+\272\103\127\011\147\115\113\142\006\055\370\377\154\235\140\036
+\330\034\113\175\265\061\057\331\320\174\135\370\336\153\203\030
+\170\067\127\057\350\063\007\147\337\036\307\153\052\225\166\256
+\217\127\243\360\364\122\264\251\123\010\317\340\117\323\172\123
+\213\375\273\034\126\066\362\376\262\266\345\166\273\325\042\145
+\247\077\376\321\146\255\013\274\153\231\206\357\077\175\363\030
+\062\312\173\306\343\253\144\106\225\370\046\151\331\125\203\173
+\054\226\007\377\131\054\104\243\306\345\351\251\334\241\143\200
+\132\041\136\041\317\123\124\360\272\157\211\333\250\252\225\317
+\213\343\161\314\036\033\040\104\010\300\172\266\100\375\304\344
+\065\341\035\026\034\320\274\053\216\326\161\331
+END
+
+# Trust for Certificate "AddTrust Low-Value Services Root"
+# Issuer: CN=AddTrust Class 1 CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust Class 1 CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:38:31 2000
+# Not Valid After : Sat May 30 10:38:31 2020
+# Fingerprint (MD5): 1E:42:95:02:33:92:6B:B9:5F:C0:7F:DA:D6:B2:4B:FC
+# Fingerprint (SHA1): CC:AB:0E:A0:4C:23:01:D6:69:7B:DD:37:9F:CD:12:EB:24:E3:94:9D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust Low-Value Services Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\314\253\016\240\114\043\001\326\151\173\335\067\237\315\022\353
+\044\343\224\235
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\036\102\225\002\063\222\153\271\137\300\177\332\326\262\113\374
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\003\023\030\101
+\144\144\124\162\165\163\164\040\103\154\141\163\163\040\061\040
+\103\101\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AddTrust External Root"
+#
+# Issuer: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:48:38 2000
+# Not Valid After : Sat May 30 10:48:38 2020
+# Fingerprint (MD5): 1D:35:54:04:85:78:B0:3F:42:42:4D:BF:20:73:0A:3F
+# Fingerprint (SHA1): 02:FA:F3:E2:91:43:54:68:60:78:57:69:4D:F5:E4:5B:68:85:18:68
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust External Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\157\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\046\060\044\006\003\125\004\013\023\035
+\101\144\144\124\162\165\163\164\040\105\170\164\145\162\156\141
+\154\040\124\124\120\040\116\145\164\167\157\162\153\061\042\060
+\040\006\003\125\004\003\023\031\101\144\144\124\162\165\163\164
+\040\105\170\164\145\162\156\141\154\040\103\101\040\122\157\157
+\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\157\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\046\060\044\006\003\125\004\013\023\035
+\101\144\144\124\162\165\163\164\040\105\170\164\145\162\156\141
+\154\040\124\124\120\040\116\145\164\167\157\162\153\061\042\060
+\040\006\003\125\004\003\023\031\101\144\144\124\162\165\163\164
+\040\105\170\164\145\162\156\141\154\040\103\101\040\122\157\157
+\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\066\060\202\003\036\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\157\061\013\060\011\006\003\125\004\006\023\002\123\105\061\024
+\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165\163
+\164\040\101\102\061\046\060\044\006\003\125\004\013\023\035\101
+\144\144\124\162\165\163\164\040\105\170\164\145\162\156\141\154
+\040\124\124\120\040\116\145\164\167\157\162\153\061\042\060\040
+\006\003\125\004\003\023\031\101\144\144\124\162\165\163\164\040
+\105\170\164\145\162\156\141\154\040\103\101\040\122\157\157\164
+\060\036\027\015\060\060\060\065\063\060\061\060\064\070\063\070
+\132\027\015\062\060\060\065\063\060\061\060\064\070\063\070\132
+\060\157\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\046\060\044\006\003\125\004\013\023\035
+\101\144\144\124\162\165\163\164\040\105\170\164\145\162\156\141
+\154\040\124\124\120\040\116\145\164\167\157\162\153\061\042\060
+\040\006\003\125\004\003\023\031\101\144\144\124\162\165\163\164
+\040\105\170\164\145\162\156\141\154\040\103\101\040\122\157\157
+\164\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\267\367\032\063\346\362\000\004\055\071\340\116\133\355
+\037\274\154\017\315\265\372\043\266\316\336\233\021\063\227\244
+\051\114\175\223\237\275\112\274\223\355\003\032\343\217\317\345
+\155\120\132\326\227\051\224\132\200\260\111\172\333\056\225\375
+\270\312\277\067\070\055\036\076\221\101\255\160\126\307\360\117
+\077\350\062\236\164\312\310\220\124\351\306\137\017\170\235\232
+\100\074\016\254\141\252\136\024\217\236\207\241\152\120\334\327
+\232\116\257\005\263\246\161\224\234\161\263\120\140\012\307\023
+\235\070\007\206\002\250\351\250\151\046\030\220\253\114\260\117
+\043\253\072\117\204\330\337\316\237\341\151\157\273\327\102\327
+\153\104\344\307\255\356\155\101\137\162\132\161\010\067\263\171
+\145\244\131\240\224\067\367\000\057\015\302\222\162\332\320\070
+\162\333\024\250\105\304\135\052\175\267\264\326\304\356\254\315
+\023\104\267\311\053\335\103\000\045\372\141\271\151\152\130\043
+\021\267\247\063\217\126\165\131\365\315\051\327\106\267\012\053
+\145\266\323\102\157\025\262\270\173\373\357\351\135\123\325\064
+\132\047\002\003\001\000\001\243\201\334\060\201\331\060\035\006
+\003\125\035\016\004\026\004\024\255\275\230\172\064\264\046\367
+\372\304\046\124\357\003\275\340\044\313\124\032\060\013\006\003
+\125\035\017\004\004\003\002\001\006\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\201\231\006\003\125
+\035\043\004\201\221\060\201\216\200\024\255\275\230\172\064\264
+\046\367\372\304\046\124\357\003\275\340\044\313\124\032\241\163
+\244\161\060\157\061\013\060\011\006\003\125\004\006\023\002\123
+\105\061\024\060\022\006\003\125\004\012\023\013\101\144\144\124
+\162\165\163\164\040\101\102\061\046\060\044\006\003\125\004\013
+\023\035\101\144\144\124\162\165\163\164\040\105\170\164\145\162
+\156\141\154\040\124\124\120\040\116\145\164\167\157\162\153\061
+\042\060\040\006\003\125\004\003\023\031\101\144\144\124\162\165
+\163\164\040\105\170\164\145\162\156\141\154\040\103\101\040\122
+\157\157\164\202\001\001\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\001\001\000\260\233\340\205\045\302
+\326\043\342\017\226\006\222\235\101\230\234\331\204\171\201\331
+\036\133\024\007\043\066\145\217\260\330\167\273\254\101\154\107
+\140\203\121\260\371\062\075\347\374\366\046\023\307\200\026\245
+\277\132\374\207\317\170\171\211\041\232\342\114\007\012\206\065
+\274\362\336\121\304\322\226\267\334\176\116\356\160\375\034\071
+\353\014\002\121\024\055\216\275\026\340\301\337\106\165\347\044
+\255\354\364\102\264\205\223\160\020\147\272\235\006\065\112\030
+\323\053\172\314\121\102\241\172\143\321\346\273\241\305\053\302
+\066\276\023\015\346\275\143\176\171\173\247\011\015\100\253\152
+\335\217\212\303\366\366\214\032\102\005\121\324\105\365\237\247
+\142\041\150\025\040\103\074\231\347\174\275\044\330\251\221\027
+\163\210\077\126\033\061\070\030\264\161\017\232\315\310\016\236
+\216\056\033\341\214\230\203\313\037\061\361\104\114\306\004\163
+\111\166\140\017\307\370\275\027\200\153\056\351\314\114\016\132
+\232\171\017\040\012\056\325\236\143\046\036\125\222\224\330\202
+\027\132\173\320\274\307\217\116\206\004
+END
+
+# Trust for Certificate "AddTrust External Root"
+# Issuer: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:48:38 2000
+# Not Valid After : Sat May 30 10:48:38 2020
+# Fingerprint (MD5): 1D:35:54:04:85:78:B0:3F:42:42:4D:BF:20:73:0A:3F
+# Fingerprint (SHA1): 02:FA:F3:E2:91:43:54:68:60:78:57:69:4D:F5:E4:5B:68:85:18:68
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust External Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\002\372\363\342\221\103\124\150\140\170\127\151\115\365\344\133
+\150\205\030\150
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\035\065\124\004\205\170\260\077\102\102\115\277\040\163\012\077
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\157\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\046\060\044\006\003\125\004\013\023\035
+\101\144\144\124\162\165\163\164\040\105\170\164\145\162\156\141
+\154\040\124\124\120\040\116\145\164\167\157\162\153\061\042\060
+\040\006\003\125\004\003\023\031\101\144\144\124\162\165\163\164
+\040\105\170\164\145\162\156\141\154\040\103\101\040\122\157\157
+\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AddTrust Public Services Root"
+#
+# Issuer: CN=AddTrust Public CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust Public CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:41:50 2000
+# Not Valid After : Sat May 30 10:41:50 2020
+# Fingerprint (MD5): C1:62:3E:23:C5:82:73:9C:03:59:4B:2B:E9:77:49:7F
+# Fingerprint (SHA1): 2A:B6:28:48:5E:78:FB:F3:AD:9E:79:10:DD:6B:DF:99:72:2C:96:E5
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust Public Services Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\040\060\036\006\003\125\004\003\023\027\101
+\144\144\124\162\165\163\164\040\120\165\142\154\151\143\040\103
+\101\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\040\060\036\006\003\125\004\003\023\027\101
+\144\144\124\162\165\163\164\040\120\165\142\154\151\143\040\103
+\101\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\025\060\202\002\375\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\144\061\013\060\011\006\003\125\004\006\023\002\123\105\061\024
+\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165\163
+\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024\101
+\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164\167
+\157\162\153\061\040\060\036\006\003\125\004\003\023\027\101\144
+\144\124\162\165\163\164\040\120\165\142\154\151\143\040\103\101
+\040\122\157\157\164\060\036\027\015\060\060\060\065\063\060\061
+\060\064\061\065\060\132\027\015\062\060\060\065\063\060\061\060
+\064\061\065\060\132\060\144\061\013\060\011\006\003\125\004\006
+\023\002\123\105\061\024\060\022\006\003\125\004\012\023\013\101
+\144\144\124\162\165\163\164\040\101\102\061\035\060\033\006\003
+\125\004\013\023\024\101\144\144\124\162\165\163\164\040\124\124
+\120\040\116\145\164\167\157\162\153\061\040\060\036\006\003\125
+\004\003\023\027\101\144\144\124\162\165\163\164\040\120\165\142
+\154\151\143\040\103\101\040\122\157\157\164\060\202\001\042\060
+\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202
+\001\017\000\060\202\001\012\002\202\001\001\000\351\032\060\217
+\203\210\024\301\040\330\074\233\217\033\176\003\164\273\332\151
+\323\106\245\370\216\302\014\021\220\121\245\057\146\124\100\125
+\352\333\037\112\126\356\237\043\156\364\071\313\241\271\157\362
+\176\371\135\207\046\141\236\034\370\342\354\246\201\370\041\305
+\044\314\021\014\077\333\046\162\172\307\001\227\007\027\371\327
+\030\054\060\175\016\172\036\142\036\306\113\300\375\175\142\167
+\323\104\036\047\366\077\113\104\263\267\070\331\071\037\140\325
+\121\222\163\003\264\000\151\343\363\024\116\356\321\334\011\317
+\167\064\106\120\260\370\021\362\376\070\171\367\007\071\376\121
+\222\227\013\133\010\137\064\206\001\255\210\227\353\146\315\136
+\321\377\334\175\362\204\332\272\167\255\334\200\010\307\247\207
+\326\125\237\227\152\350\310\021\144\272\347\031\051\077\021\263
+\170\220\204\040\122\133\021\357\170\320\203\366\325\110\220\320
+\060\034\317\200\371\140\376\171\344\210\362\335\000\353\224\105
+\353\145\224\151\100\272\300\325\264\270\272\175\004\021\250\353
+\061\005\226\224\116\130\041\216\237\320\140\375\002\003\001\000
+\001\243\201\321\060\201\316\060\035\006\003\125\035\016\004\026
+\004\024\201\076\067\330\222\260\037\167\237\134\264\253\163\252
+\347\366\064\140\057\372\060\013\006\003\125\035\017\004\004\003
+\002\001\006\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\201\216\006\003\125\035\043\004\201\206\060
+\201\203\200\024\201\076\067\330\222\260\037\167\237\134\264\253
+\163\252\347\366\064\140\057\372\241\150\244\146\060\144\061\013
+\060\011\006\003\125\004\006\023\002\123\105\061\024\060\022\006
+\003\125\004\012\023\013\101\144\144\124\162\165\163\164\040\101
+\102\061\035\060\033\006\003\125\004\013\023\024\101\144\144\124
+\162\165\163\164\040\124\124\120\040\116\145\164\167\157\162\153
+\061\040\060\036\006\003\125\004\003\023\027\101\144\144\124\162
+\165\163\164\040\120\165\142\154\151\143\040\103\101\040\122\157
+\157\164\202\001\001\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\003\202\001\001\000\003\367\025\112\370\044\332
+\043\126\026\223\166\335\066\050\271\256\033\270\303\361\144\272
+\040\030\170\225\051\047\127\005\274\174\052\364\271\121\125\332
+\207\002\336\017\026\027\061\370\252\171\056\011\023\273\257\262
+\040\031\022\345\223\371\113\371\203\350\104\325\262\101\045\277
+\210\165\157\377\020\374\112\124\320\137\360\372\357\066\163\175
+\033\066\105\306\041\155\264\025\270\116\317\234\134\245\075\132
+\000\216\006\343\074\153\062\173\362\237\360\266\375\337\360\050
+\030\110\360\306\274\320\277\064\200\226\302\112\261\155\216\307
+\220\105\336\057\147\254\105\004\243\172\334\125\222\311\107\146
+\330\032\214\307\355\234\116\232\340\022\273\265\152\114\204\341
+\341\042\015\207\000\144\376\214\175\142\071\145\246\357\102\266
+\200\045\022\141\001\250\044\023\160\000\021\046\137\372\065\120
+\305\110\314\006\107\350\047\330\160\215\137\144\346\241\104\046
+\136\042\354\222\315\377\102\232\104\041\155\134\305\343\042\035
+\137\107\022\347\316\137\135\372\330\252\261\063\055\331\166\362
+\116\072\063\014\053\263\055\220\006
+END
+
+# Trust for Certificate "AddTrust Public Services Root"
+# Issuer: CN=AddTrust Public CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust Public CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:41:50 2000
+# Not Valid After : Sat May 30 10:41:50 2020
+# Fingerprint (MD5): C1:62:3E:23:C5:82:73:9C:03:59:4B:2B:E9:77:49:7F
+# Fingerprint (SHA1): 2A:B6:28:48:5E:78:FB:F3:AD:9E:79:10:DD:6B:DF:99:72:2C:96:E5
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust Public Services Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\052\266\050\110\136\170\373\363\255\236\171\020\335\153\337\231
+\162\054\226\345
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\301\142\076\043\305\202\163\234\003\131\113\053\351\167\111\177
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\040\060\036\006\003\125\004\003\023\027\101
+\144\144\124\162\165\163\164\040\120\165\142\154\151\143\040\103
+\101\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AddTrust Qualified Certificates Root"
+#
+# Issuer: CN=AddTrust Qualified CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust Qualified CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:44:50 2000
+# Not Valid After : Sat May 30 10:44:50 2020
+# Fingerprint (MD5): 27:EC:39:47:CD:DA:5A:AF:E2:9A:01:65:21:A9:4C:BB
+# Fingerprint (SHA1): 4D:23:78:EC:91:95:39:B5:00:7F:75:8F:03:3B:21:1E:C5:4D:8B:CF
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust Qualified Certificates Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\147\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\043\060\041\006\003\125\004\003\023\032\101
+\144\144\124\162\165\163\164\040\121\165\141\154\151\146\151\145
+\144\040\103\101\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\147\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\043\060\041\006\003\125\004\003\023\032\101
+\144\144\124\162\165\163\164\040\121\165\141\154\151\146\151\145
+\144\040\103\101\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\036\060\202\003\006\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\147\061\013\060\011\006\003\125\004\006\023\002\123\105\061\024
+\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165\163
+\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024\101
+\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164\167
+\157\162\153\061\043\060\041\006\003\125\004\003\023\032\101\144
+\144\124\162\165\163\164\040\121\165\141\154\151\146\151\145\144
+\040\103\101\040\122\157\157\164\060\036\027\015\060\060\060\065
+\063\060\061\060\064\064\065\060\132\027\015\062\060\060\065\063
+\060\061\060\064\064\065\060\132\060\147\061\013\060\011\006\003
+\125\004\006\023\002\123\105\061\024\060\022\006\003\125\004\012
+\023\013\101\144\144\124\162\165\163\164\040\101\102\061\035\060
+\033\006\003\125\004\013\023\024\101\144\144\124\162\165\163\164
+\040\124\124\120\040\116\145\164\167\157\162\153\061\043\060\041
+\006\003\125\004\003\023\032\101\144\144\124\162\165\163\164\040
+\121\165\141\154\151\146\151\145\144\040\103\101\040\122\157\157
+\164\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\344\036\232\376\334\011\132\207\244\237\107\276\021\137
+\257\204\064\333\142\074\171\170\267\351\060\265\354\014\034\052
+\304\026\377\340\354\161\353\212\365\021\156\355\117\015\221\322
+\022\030\055\111\025\001\302\244\042\023\307\021\144\377\042\022
+\232\271\216\134\057\010\317\161\152\263\147\001\131\361\135\106
+\363\260\170\245\366\016\102\172\343\177\033\314\320\360\267\050
+\375\052\352\236\263\260\271\004\252\375\366\307\264\261\270\052
+\240\373\130\361\031\240\157\160\045\176\076\151\112\177\017\042
+\330\357\255\010\021\232\051\231\341\252\104\105\232\022\136\076
+\235\155\122\374\347\240\075\150\057\360\113\160\174\023\070\255
+\274\025\045\361\326\316\253\242\300\061\326\057\237\340\377\024
+\131\374\204\223\331\207\174\114\124\023\353\237\321\055\021\370
+\030\072\072\336\045\331\367\323\100\355\244\006\022\304\073\341
+\221\301\126\065\360\024\334\145\066\011\156\253\244\007\307\065
+\321\302\003\063\066\133\165\046\155\102\361\022\153\103\157\113
+\161\224\372\064\035\355\023\156\312\200\177\230\057\154\271\145
+\330\351\002\003\001\000\001\243\201\324\060\201\321\060\035\006
+\003\125\035\016\004\026\004\024\071\225\213\142\213\134\311\324
+\200\272\130\017\227\077\025\010\103\314\230\247\060\013\006\003
+\125\035\017\004\004\003\002\001\006\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\201\221\006\003\125
+\035\043\004\201\211\060\201\206\200\024\071\225\213\142\213\134
+\311\324\200\272\130\017\227\077\025\010\103\314\230\247\241\153
+\244\151\060\147\061\013\060\011\006\003\125\004\006\023\002\123
+\105\061\024\060\022\006\003\125\004\012\023\013\101\144\144\124
+\162\165\163\164\040\101\102\061\035\060\033\006\003\125\004\013
+\023\024\101\144\144\124\162\165\163\164\040\124\124\120\040\116
+\145\164\167\157\162\153\061\043\060\041\006\003\125\004\003\023
+\032\101\144\144\124\162\165\163\164\040\121\165\141\154\151\146
+\151\145\144\040\103\101\040\122\157\157\164\202\001\001\060\015
+\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001
+\001\000\031\253\165\352\370\213\145\141\225\023\272\151\004\357
+\206\312\023\240\307\252\117\144\033\077\030\366\250\055\054\125
+\217\005\267\060\352\102\152\035\300\045\121\055\247\277\014\263
+\355\357\010\177\154\074\106\032\352\030\103\337\166\314\371\146
+\206\234\054\150\365\351\027\370\061\263\030\304\326\110\175\043
+\114\150\301\176\273\001\024\157\305\331\156\336\273\004\102\152
+\370\366\134\175\345\332\372\207\353\015\065\122\147\320\236\227
+\166\005\223\077\225\307\001\346\151\125\070\177\020\141\231\311
+\343\137\246\312\076\202\143\110\252\342\010\110\076\252\362\262
+\205\142\246\264\247\331\275\067\234\150\265\055\126\175\260\267
+\077\240\261\007\326\351\117\334\336\105\161\060\062\177\033\056
+\011\371\277\122\241\356\302\200\076\006\134\056\125\100\301\033
+\365\160\105\260\334\135\372\366\162\132\167\322\143\315\317\130
+\211\000\102\143\077\171\071\320\104\260\202\156\101\031\350\335
+\340\301\210\132\321\036\161\223\037\044\060\164\345\036\250\336
+\074\047\067\177\203\256\236\167\317\360\060\261\377\113\231\350
+\306\241
+END
+
+# Trust for Certificate "AddTrust Qualified Certificates Root"
+# Issuer: CN=AddTrust Qualified CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Serial Number: 1 (0x1)
+# Subject: CN=AddTrust Qualified CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
+# Not Valid Before: Tue May 30 10:44:50 2000
+# Not Valid After : Sat May 30 10:44:50 2020
+# Fingerprint (MD5): 27:EC:39:47:CD:DA:5A:AF:E2:9A:01:65:21:A9:4C:BB
+# Fingerprint (SHA1): 4D:23:78:EC:91:95:39:B5:00:7F:75:8F:03:3B:21:1E:C5:4D:8B:CF
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AddTrust Qualified Certificates Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\115\043\170\354\221\225\071\265\000\177\165\217\003\073\041\036
+\305\115\213\317
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\047\354\071\107\315\332\132\257\342\232\001\145\041\251\114\273
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\147\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\035\060\033\006\003\125\004\013\023\024
+\101\144\144\124\162\165\163\164\040\124\124\120\040\116\145\164
+\167\157\162\153\061\043\060\041\006\003\125\004\003\023\032\101
+\144\144\124\162\165\163\164\040\121\165\141\154\151\146\151\145
+\144\040\103\101\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Entrust Root Certification Authority"
+#
+# Issuer: CN=Entrust Root Certification Authority,OU="(c) 2006 Entrust, Inc.",OU=www.entrust.net/CPS is incorporated by reference,O="Entrust, Inc.",C=US
+# Serial Number: 1164660820 (0x456b5054)
+# Subject: CN=Entrust Root Certification Authority,OU="(c) 2006 Entrust, Inc.",OU=www.entrust.net/CPS is incorporated by reference,O="Entrust, Inc.",C=US
+# Not Valid Before: Mon Nov 27 20:23:42 2006
+# Not Valid After : Fri Nov 27 20:53:42 2026
+# Fingerprint (MD5): D6:A5:C3:ED:5D:DD:3E:00:C1:3D:87:92:1F:1D:3F:E4
+# Fingerprint (SHA1): B3:1E:B1:B7:40:E3:6C:84:02:DA:DC:37:D4:4D:F5:D4:67:49:52:F9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\260\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\167\167\167\056\145\156\164\162\165\163\164\056\156
+\145\164\057\103\120\123\040\151\163\040\151\156\143\157\162\160
+\157\162\141\164\145\144\040\142\171\040\162\145\146\145\162\145
+\156\143\145\061\037\060\035\006\003\125\004\013\023\026\050\143
+\051\040\062\060\060\066\040\105\156\164\162\165\163\164\054\040
+\111\156\143\056\061\055\060\053\006\003\125\004\003\023\044\105
+\156\164\162\165\163\164\040\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\260\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\167\167\167\056\145\156\164\162\165\163\164\056\156
+\145\164\057\103\120\123\040\151\163\040\151\156\143\157\162\160
+\157\162\141\164\145\144\040\142\171\040\162\145\146\145\162\145
+\156\143\145\061\037\060\035\006\003\125\004\013\023\026\050\143
+\051\040\062\060\060\066\040\105\156\164\162\165\163\164\054\040
+\111\156\143\056\061\055\060\053\006\003\125\004\003\023\044\105
+\156\164\162\165\163\164\040\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\105\153\120\124
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\221\060\202\003\171\240\003\002\001\002\002\004\105
+\153\120\124\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\201\260\061\013\060\011\006\003\125\004\006\023\002
+\125\123\061\026\060\024\006\003\125\004\012\023\015\105\156\164
+\162\165\163\164\054\040\111\156\143\056\061\071\060\067\006\003
+\125\004\013\023\060\167\167\167\056\145\156\164\162\165\163\164
+\056\156\145\164\057\103\120\123\040\151\163\040\151\156\143\157
+\162\160\157\162\141\164\145\144\040\142\171\040\162\145\146\145
+\162\145\156\143\145\061\037\060\035\006\003\125\004\013\023\026
+\050\143\051\040\062\060\060\066\040\105\156\164\162\165\163\164
+\054\040\111\156\143\056\061\055\060\053\006\003\125\004\003\023
+\044\105\156\164\162\165\163\164\040\122\157\157\164\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171\060\036\027\015\060\066\061\061\062\067\062
+\060\062\063\064\062\132\027\015\062\066\061\061\062\067\062\060
+\065\063\064\062\132\060\201\260\061\013\060\011\006\003\125\004
+\006\023\002\125\123\061\026\060\024\006\003\125\004\012\023\015
+\105\156\164\162\165\163\164\054\040\111\156\143\056\061\071\060
+\067\006\003\125\004\013\023\060\167\167\167\056\145\156\164\162
+\165\163\164\056\156\145\164\057\103\120\123\040\151\163\040\151
+\156\143\157\162\160\157\162\141\164\145\144\040\142\171\040\162
+\145\146\145\162\145\156\143\145\061\037\060\035\006\003\125\004
+\013\023\026\050\143\051\040\062\060\060\066\040\105\156\164\162
+\165\163\164\054\040\111\156\143\056\061\055\060\053\006\003\125
+\004\003\023\044\105\156\164\162\165\163\164\040\122\157\157\164
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\060\202\001\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000
+\060\202\001\012\002\202\001\001\000\266\225\266\103\102\372\306
+\155\052\157\110\337\224\114\071\127\005\356\303\171\021\101\150
+\066\355\354\376\232\001\217\241\070\050\374\367\020\106\146\056
+\115\036\032\261\032\116\306\321\300\225\210\260\311\377\061\213
+\063\003\333\267\203\173\076\040\204\136\355\262\126\050\247\370
+\340\271\100\161\067\305\313\107\016\227\052\150\300\042\225\142
+\025\333\107\331\365\320\053\377\202\113\311\255\076\336\114\333
+\220\200\120\077\011\212\204\000\354\060\012\075\030\315\373\375
+\052\131\232\043\225\027\054\105\236\037\156\103\171\155\014\134
+\230\376\110\247\305\043\107\134\136\375\156\347\036\264\366\150
+\105\321\206\203\133\242\212\215\261\343\051\200\376\045\161\210
+\255\276\274\217\254\122\226\113\252\121\215\344\023\061\031\350
+\116\115\237\333\254\263\152\325\274\071\124\161\312\172\172\177
+\220\335\175\035\200\331\201\273\131\046\302\021\376\346\223\342
+\367\200\344\145\373\064\067\016\051\200\160\115\257\070\206\056
+\236\177\127\257\236\027\256\353\034\313\050\041\137\266\034\330
+\347\242\004\042\371\323\332\330\313\002\003\001\000\001\243\201
+\260\060\201\255\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\053\006\003\125\035\020\004\044\060\042
+\200\017\062\060\060\066\061\061\062\067\062\060\062\063\064\062
+\132\201\017\062\060\062\066\061\061\062\067\062\060\065\063\064
+\062\132\060\037\006\003\125\035\043\004\030\060\026\200\024\150
+\220\344\147\244\246\123\200\307\206\146\244\361\367\113\103\373
+\204\275\155\060\035\006\003\125\035\016\004\026\004\024\150\220
+\344\147\244\246\123\200\307\206\146\244\361\367\113\103\373\204
+\275\155\060\035\006\011\052\206\110\206\366\175\007\101\000\004
+\020\060\016\033\010\126\067\056\061\072\064\056\060\003\002\004
+\220\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\001\001\000\223\324\060\260\327\003\040\052\320\371\143
+\350\221\014\005\040\251\137\031\312\173\162\116\324\261\333\320
+\226\373\124\132\031\054\014\010\367\262\274\205\250\235\177\155
+\073\122\263\052\333\347\324\204\214\143\366\017\313\046\001\221
+\120\154\364\137\024\342\223\164\300\023\236\060\072\120\343\264
+\140\305\034\360\042\104\215\161\107\254\310\032\311\351\233\232
+\000\140\023\377\160\176\137\021\115\111\033\263\025\122\173\311
+\124\332\277\235\225\257\153\232\330\236\351\361\344\103\215\342
+\021\104\072\277\257\275\203\102\163\122\213\252\273\247\051\317
+\365\144\034\012\115\321\274\252\254\237\052\320\377\177\177\332
+\175\352\261\355\060\045\301\204\332\064\322\133\170\203\126\354
+\234\066\303\046\342\021\366\147\111\035\222\253\214\373\353\377
+\172\356\205\112\247\120\200\360\247\134\112\224\056\137\005\231
+\074\122\101\340\315\264\143\317\001\103\272\234\203\334\217\140
+\073\363\132\264\264\173\256\332\013\220\070\165\357\201\035\146
+\322\367\127\160\066\263\277\374\050\257\161\045\205\133\023\376
+\036\177\132\264\074
+END
+
+# Trust for Certificate "Entrust Root Certification Authority"
+# Issuer: CN=Entrust Root Certification Authority,OU="(c) 2006 Entrust, Inc.",OU=www.entrust.net/CPS is incorporated by reference,O="Entrust, Inc.",C=US
+# Serial Number: 1164660820 (0x456b5054)
+# Subject: CN=Entrust Root Certification Authority,OU="(c) 2006 Entrust, Inc.",OU=www.entrust.net/CPS is incorporated by reference,O="Entrust, Inc.",C=US
+# Not Valid Before: Mon Nov 27 20:23:42 2006
+# Not Valid After : Fri Nov 27 20:53:42 2026
+# Fingerprint (MD5): D6:A5:C3:ED:5D:DD:3E:00:C1:3D:87:92:1F:1D:3F:E4
+# Fingerprint (SHA1): B3:1E:B1:B7:40:E3:6C:84:02:DA:DC:37:D4:4D:F5:D4:67:49:52:F9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\263\036\261\267\100\343\154\204\002\332\334\067\324\115\365\324
+\147\111\122\371
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\326\245\303\355\135\335\076\000\301\075\207\222\037\035\077\344
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\260\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\167\167\167\056\145\156\164\162\165\163\164\056\156
+\145\164\057\103\120\123\040\151\163\040\151\156\143\157\162\160
+\157\162\141\164\145\144\040\142\171\040\162\145\146\145\162\145
+\156\143\145\061\037\060\035\006\003\125\004\013\023\026\050\143
+\051\040\062\060\060\066\040\105\156\164\162\165\163\164\054\040
+\111\156\143\056\061\055\060\053\006\003\125\004\003\023\044\105
+\156\164\162\165\163\164\040\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\105\153\120\124
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "RSA Security 2048 v3"
+#
+# Issuer: OU=RSA Security 2048 V3,O=RSA Security Inc
+# Serial Number:0a:01:01:01:00:00:02:7c:00:00:00:0a:00:00:00:02
+# Subject: OU=RSA Security 2048 V3,O=RSA Security Inc
+# Not Valid Before: Thu Feb 22 20:39:23 2001
+# Not Valid After : Sun Feb 22 20:39:23 2026
+# Fingerprint (MD5): 77:0D:19:B1:21:FD:00:42:9C:3E:0C:A5:DD:0B:02:8E
+# Fingerprint (SHA1): 25:01:90:19:CF:FB:D9:99:1C:B7:68:25:74:8D:94:5F:30:93:95:42
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "RSA Security 2048 v3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\072\061\031\060\027\006\003\125\004\012\023\020\122\123\101
+\040\123\145\143\165\162\151\164\171\040\111\156\143\061\035\060
+\033\006\003\125\004\013\023\024\122\123\101\040\123\145\143\165
+\162\151\164\171\040\062\060\064\070\040\126\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\072\061\031\060\027\006\003\125\004\012\023\020\122\123\101
+\040\123\145\143\165\162\151\164\171\040\111\156\143\061\035\060
+\033\006\003\125\004\013\023\024\122\123\101\040\123\145\143\165
+\162\151\164\171\040\062\060\064\070\040\126\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\012\001\001\001\000\000\002\174\000\000\000\012\000\000
+\000\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\141\060\202\002\111\240\003\002\001\002\002\020\012
+\001\001\001\000\000\002\174\000\000\000\012\000\000\000\002\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\072
+\061\031\060\027\006\003\125\004\012\023\020\122\123\101\040\123
+\145\143\165\162\151\164\171\040\111\156\143\061\035\060\033\006
+\003\125\004\013\023\024\122\123\101\040\123\145\143\165\162\151
+\164\171\040\062\060\064\070\040\126\063\060\036\027\015\060\061
+\060\062\062\062\062\060\063\071\062\063\132\027\015\062\066\060
+\062\062\062\062\060\063\071\062\063\132\060\072\061\031\060\027
+\006\003\125\004\012\023\020\122\123\101\040\123\145\143\165\162
+\151\164\171\040\111\156\143\061\035\060\033\006\003\125\004\013
+\023\024\122\123\101\040\123\145\143\165\162\151\164\171\040\062
+\060\064\070\040\126\063\060\202\001\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202
+\001\012\002\202\001\001\000\267\217\125\161\322\200\335\173\151
+\171\247\360\030\120\062\074\142\147\366\012\225\007\335\346\033
+\363\236\331\322\101\124\153\255\237\174\276\031\315\373\106\253
+\101\150\036\030\352\125\310\057\221\170\211\050\373\047\051\140
+\377\337\217\214\073\311\111\233\265\244\224\316\001\352\076\265
+\143\173\177\046\375\031\335\300\041\275\204\321\055\117\106\303
+\116\334\330\067\071\073\050\257\313\235\032\352\053\257\041\245
+\301\043\042\270\270\033\132\023\207\127\203\321\360\040\347\350
+\117\043\102\260\000\245\175\211\351\351\141\163\224\230\161\046
+\274\055\152\340\367\115\360\361\266\052\070\061\201\015\051\341
+\000\301\121\017\114\122\370\004\132\252\175\162\323\270\207\052
+\273\143\020\003\052\263\241\117\015\132\136\106\267\075\016\365
+\164\354\231\237\371\075\044\201\210\246\335\140\124\350\225\066
+\075\306\011\223\232\243\022\200\000\125\231\031\107\275\320\245
+\174\303\272\373\037\367\365\017\370\254\271\265\364\067\230\023
+\030\336\205\133\267\014\202\073\207\157\225\071\130\060\332\156
+\001\150\027\042\314\300\013\002\003\001\000\001\243\143\060\141
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\037\006\003\125\035\043\004\030\060\026\200\024\007\303
+\121\060\244\252\351\105\256\065\044\372\377\044\054\063\320\261
+\235\214\060\035\006\003\125\035\016\004\026\004\024\007\303\121
+\060\244\252\351\105\256\065\044\372\377\044\054\063\320\261\235
+\214\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\001\001\000\137\076\206\166\156\270\065\074\116\066\034
+\036\171\230\277\375\325\022\021\171\122\016\356\061\211\274\335
+\177\371\321\306\025\041\350\212\001\124\015\072\373\124\271\326
+\143\324\261\252\226\115\242\102\115\324\123\037\213\020\336\177
+\145\276\140\023\047\161\210\244\163\343\204\143\321\244\125\341
+\120\223\346\033\016\171\320\147\274\106\310\277\077\027\015\225
+\346\306\220\151\336\347\264\057\336\225\175\320\022\077\075\076
+\177\115\077\024\150\365\021\120\325\301\364\220\245\010\035\061
+\140\377\140\214\043\124\012\257\376\241\156\305\321\172\052\150
+\170\317\036\202\012\040\264\037\255\345\205\262\152\150\165\116
+\255\045\067\224\205\276\275\241\324\352\267\014\113\074\235\350
+\022\000\360\137\254\015\341\254\160\143\163\367\177\171\237\062
+\045\102\164\005\200\050\277\275\301\044\226\130\025\261\027\041
+\351\211\113\333\007\210\147\364\025\255\160\076\057\115\205\073
+\302\267\333\376\230\150\043\211\341\164\017\336\364\305\204\143
+\051\033\314\313\007\311\000\244\251\327\302\042\117\147\327\167
+\354\040\005\141\336
+END
+
+# Trust for Certificate "RSA Security 2048 v3"
+# Issuer: OU=RSA Security 2048 V3,O=RSA Security Inc
+# Serial Number:0a:01:01:01:00:00:02:7c:00:00:00:0a:00:00:00:02
+# Subject: OU=RSA Security 2048 V3,O=RSA Security Inc
+# Not Valid Before: Thu Feb 22 20:39:23 2001
+# Not Valid After : Sun Feb 22 20:39:23 2026
+# Fingerprint (MD5): 77:0D:19:B1:21:FD:00:42:9C:3E:0C:A5:DD:0B:02:8E
+# Fingerprint (SHA1): 25:01:90:19:CF:FB:D9:99:1C:B7:68:25:74:8D:94:5F:30:93:95:42
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "RSA Security 2048 v3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\045\001\220\031\317\373\331\231\034\267\150\045\164\215\224\137
+\060\223\225\102
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\167\015\031\261\041\375\000\102\234\076\014\245\335\013\002\216
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\072\061\031\060\027\006\003\125\004\012\023\020\122\123\101
+\040\123\145\143\165\162\151\164\171\040\111\156\143\061\035\060
+\033\006\003\125\004\013\023\024\122\123\101\040\123\145\143\165
+\162\151\164\171\040\062\060\064\070\040\126\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\012\001\001\001\000\000\002\174\000\000\000\012\000\000
+\000\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GeoTrust Global CA"
+#
+# Issuer: CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US
+# Serial Number: 144470 (0x23456)
+# Subject: CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US
+# Not Valid Before: Tue May 21 04:00:00 2002
+# Not Valid After : Sat May 21 04:00:00 2022
+# Fingerprint (MD5): F7:75:AB:29:FB:51:4E:B7:77:5E:FF:05:3C:99:8E:F5
+# Fingerprint (SHA1): DE:28:F4:A4:FF:E5:B9:2F:A3:C5:03:D1:A3:49:A7:F9:96:2A:82:12
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Global CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\102\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\033\060\031\006\003\125\004\003
+\023\022\107\145\157\124\162\165\163\164\040\107\154\157\142\141
+\154\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\102\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\033\060\031\006\003\125\004\003
+\023\022\107\145\157\124\162\165\163\164\040\107\154\157\142\141
+\154\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\002\064\126
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\124\060\202\002\074\240\003\002\001\002\002\003\002
+\064\126\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\060\102\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162
+\165\163\164\040\111\156\143\056\061\033\060\031\006\003\125\004
+\003\023\022\107\145\157\124\162\165\163\164\040\107\154\157\142
+\141\154\040\103\101\060\036\027\015\060\062\060\065\062\061\060
+\064\060\060\060\060\132\027\015\062\062\060\065\062\061\060\064
+\060\060\060\060\132\060\102\061\013\060\011\006\003\125\004\006
+\023\002\125\123\061\026\060\024\006\003\125\004\012\023\015\107
+\145\157\124\162\165\163\164\040\111\156\143\056\061\033\060\031
+\006\003\125\004\003\023\022\107\145\157\124\162\165\163\164\040
+\107\154\157\142\141\154\040\103\101\060\202\001\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017
+\000\060\202\001\012\002\202\001\001\000\332\314\030\143\060\375
+\364\027\043\032\126\176\133\337\074\154\070\344\161\267\170\221
+\324\274\241\330\114\370\250\103\266\003\351\115\041\007\010\210
+\332\130\057\146\071\051\275\005\170\213\235\070\350\005\267\152
+\176\161\244\346\304\140\246\260\357\200\344\211\050\017\236\045
+\326\355\203\363\255\246\221\307\230\311\102\030\065\024\235\255
+\230\106\222\056\117\312\361\207\103\301\026\225\127\055\120\357
+\211\055\200\172\127\255\362\356\137\153\322\000\215\271\024\370
+\024\025\065\331\300\106\243\173\162\310\221\277\311\125\053\315
+\320\227\076\234\046\144\314\337\316\203\031\161\312\116\346\324
+\325\173\251\031\315\125\336\310\354\322\136\070\123\345\134\117
+\214\055\376\120\043\066\374\146\346\313\216\244\071\031\000\267
+\225\002\071\221\013\016\376\070\056\321\035\005\232\366\115\076
+\157\017\007\035\257\054\036\217\140\071\342\372\066\123\023\071
+\324\136\046\053\333\075\250\024\275\062\353\030\003\050\122\004
+\161\345\253\063\075\341\070\273\007\066\204\142\234\171\352\026
+\060\364\137\300\053\350\161\153\344\371\002\003\001\000\001\243
+\123\060\121\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\300
+\172\230\150\215\211\373\253\005\144\014\021\175\252\175\145\270
+\312\314\116\060\037\006\003\125\035\043\004\030\060\026\200\024
+\300\172\230\150\215\211\373\253\005\144\014\021\175\252\175\145
+\270\312\314\116\060\015\006\011\052\206\110\206\367\015\001\001
+\005\005\000\003\202\001\001\000\065\343\051\152\345\057\135\124
+\216\051\120\224\237\231\032\024\344\217\170\052\142\224\242\047
+\147\236\320\317\032\136\107\351\301\262\244\317\335\101\032\005
+\116\233\113\356\112\157\125\122\263\044\241\067\012\353\144\166
+\052\056\054\363\375\073\165\220\277\372\161\330\307\075\067\322
+\265\005\225\142\271\246\336\211\075\066\173\070\167\110\227\254
+\246\040\217\056\246\311\014\302\262\231\105\000\307\316\021\121
+\042\042\340\245\352\266\025\110\011\144\352\136\117\164\367\005
+\076\307\212\122\014\333\025\264\275\155\233\345\306\261\124\150
+\251\343\151\220\266\232\245\017\270\271\077\040\175\256\112\265
+\270\234\344\035\266\253\346\224\245\301\307\203\255\333\365\047
+\207\016\004\154\325\377\335\240\135\355\207\122\267\053\025\002
+\256\071\246\152\164\351\332\304\347\274\115\064\036\251\134\115
+\063\137\222\011\057\210\146\135\167\227\307\035\166\023\251\325
+\345\361\026\011\021\065\325\254\333\044\161\160\054\230\126\013
+\331\027\264\321\343\121\053\136\165\350\325\320\334\117\064\355
+\302\005\146\200\241\313\346\063
+END
+
+# Trust for Certificate "GeoTrust Global CA"
+# Issuer: CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US
+# Serial Number: 144470 (0x23456)
+# Subject: CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US
+# Not Valid Before: Tue May 21 04:00:00 2002
+# Not Valid After : Sat May 21 04:00:00 2022
+# Fingerprint (MD5): F7:75:AB:29:FB:51:4E:B7:77:5E:FF:05:3C:99:8E:F5
+# Fingerprint (SHA1): DE:28:F4:A4:FF:E5:B9:2F:A3:C5:03:D1:A3:49:A7:F9:96:2A:82:12
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Global CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\336\050\364\244\377\345\271\057\243\305\003\321\243\111\247\371
+\226\052\202\022
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\367\165\253\051\373\121\116\267\167\136\377\005\074\231\216\365
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\102\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\033\060\031\006\003\125\004\003
+\023\022\107\145\157\124\162\165\163\164\040\107\154\157\142\141
+\154\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\002\064\126
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GeoTrust Global CA 2"
+#
+# Issuer: CN=GeoTrust Global CA 2,O=GeoTrust Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=GeoTrust Global CA 2,O=GeoTrust Inc.,C=US
+# Not Valid Before: Thu Mar 04 05:00:00 2004
+# Not Valid After : Mon Mar 04 05:00:00 2019
+# Fingerprint (MD5): 0E:40:A7:6C:DE:03:5D:8F:D1:0F:E4:D1:8D:F9:6C:A9
+# Fingerprint (SHA1): A9:E9:78:08:14:37:58:88:F2:05:19:B0:6D:2B:0D:2B:60:16:90:7D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Global CA 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\035\060\033\006\003\125\004\003
+\023\024\107\145\157\124\162\165\163\164\040\107\154\157\142\141
+\154\040\103\101\040\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\035\060\033\006\003\125\004\003
+\023\024\107\145\157\124\162\165\163\164\040\107\154\157\142\141
+\154\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\146\060\202\002\116\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061\026
+\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165\163
+\164\040\111\156\143\056\061\035\060\033\006\003\125\004\003\023
+\024\107\145\157\124\162\165\163\164\040\107\154\157\142\141\154
+\040\103\101\040\062\060\036\027\015\060\064\060\063\060\064\060
+\065\060\060\060\060\132\027\015\061\071\060\063\060\064\060\065
+\060\060\060\060\132\060\104\061\013\060\011\006\003\125\004\006
+\023\002\125\123\061\026\060\024\006\003\125\004\012\023\015\107
+\145\157\124\162\165\163\164\040\111\156\143\056\061\035\060\033
+\006\003\125\004\003\023\024\107\145\157\124\162\165\163\164\040
+\107\154\157\142\141\154\040\103\101\040\062\060\202\001\042\060
+\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202
+\001\017\000\060\202\001\012\002\202\001\001\000\357\074\115\100
+\075\020\337\073\123\000\341\147\376\224\140\025\076\205\210\361
+\211\015\220\310\050\043\231\005\350\053\040\235\306\363\140\106
+\330\301\262\325\214\061\331\334\040\171\044\201\277\065\062\374
+\143\151\333\261\052\153\356\041\130\362\010\351\170\313\157\313
+\374\026\122\310\221\304\377\075\163\336\261\076\247\302\175\146
+\301\365\176\122\044\032\342\325\147\221\320\202\020\327\170\113
+\117\053\102\071\275\144\055\100\240\260\020\323\070\110\106\210
+\241\014\273\072\063\052\142\230\373\000\235\023\131\177\157\073
+\162\252\356\246\017\206\371\005\141\352\147\177\014\067\226\213
+\346\151\026\107\021\302\047\131\003\263\246\140\302\041\100\126
+\372\240\307\175\072\023\343\354\127\307\263\326\256\235\211\200
+\367\001\347\054\366\226\053\023\015\171\054\331\300\344\206\173
+\113\214\014\162\202\212\373\027\315\000\154\072\023\074\260\204
+\207\113\026\172\051\262\117\333\035\324\013\363\146\067\275\330
+\366\127\273\136\044\172\270\074\213\271\372\222\032\032\204\236
+\330\164\217\252\033\177\136\364\376\105\042\041\002\003\001\000
+\001\243\143\060\141\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\035\006\003\125\035\016\004\026\004
+\024\161\070\066\362\002\061\123\107\053\156\272\145\106\251\020
+\025\130\040\005\011\060\037\006\003\125\035\043\004\030\060\026
+\200\024\161\070\066\362\002\061\123\107\053\156\272\145\106\251
+\020\025\130\040\005\011\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\206\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\001\001\000\003\367\265\053\253\135
+\020\374\173\262\262\136\254\233\016\176\123\170\131\076\102\004
+\376\165\243\255\254\201\116\327\002\213\136\304\055\310\122\166
+\307\054\037\374\201\062\230\321\113\306\222\223\063\065\061\057
+\374\330\035\104\335\340\201\177\235\351\213\341\144\221\142\013
+\071\010\214\254\164\235\131\331\172\131\122\227\021\271\026\173
+\157\105\323\226\331\061\175\002\066\017\234\073\156\317\054\015
+\003\106\105\353\240\364\177\110\104\306\010\100\314\336\033\160
+\265\051\255\272\213\073\064\145\165\033\161\041\035\054\024\012
+\260\226\225\270\326\352\362\145\373\051\272\117\352\221\223\164
+\151\266\362\377\341\032\320\014\321\166\205\313\212\045\275\227
+\136\054\157\025\231\046\347\266\051\377\042\354\311\002\307\126
+\000\315\111\271\263\154\173\123\004\032\342\250\311\252\022\005
+\043\302\316\347\273\004\002\314\300\107\242\344\304\051\057\133
+\105\127\211\121\356\074\353\122\010\377\007\065\036\237\065\152
+\107\112\126\230\321\132\205\037\214\365\042\277\253\316\203\363
+\342\042\051\256\175\203\100\250\272\154
+END
+
+# Trust for Certificate "GeoTrust Global CA 2"
+# Issuer: CN=GeoTrust Global CA 2,O=GeoTrust Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=GeoTrust Global CA 2,O=GeoTrust Inc.,C=US
+# Not Valid Before: Thu Mar 04 05:00:00 2004
+# Not Valid After : Mon Mar 04 05:00:00 2019
+# Fingerprint (MD5): 0E:40:A7:6C:DE:03:5D:8F:D1:0F:E4:D1:8D:F9:6C:A9
+# Fingerprint (SHA1): A9:E9:78:08:14:37:58:88:F2:05:19:B0:6D:2B:0D:2B:60:16:90:7D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Global CA 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\251\351\170\010\024\067\130\210\362\005\031\260\155\053\015\053
+\140\026\220\175
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\016\100\247\154\336\003\135\217\321\017\344\321\215\371\154\251
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\035\060\033\006\003\125\004\003
+\023\024\107\145\157\124\162\165\163\164\040\107\154\157\142\141
+\154\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GeoTrust Universal CA"
+#
+# Issuer: CN=GeoTrust Universal CA,O=GeoTrust Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=GeoTrust Universal CA,O=GeoTrust Inc.,C=US
+# Not Valid Before: Thu Mar 04 05:00:00 2004
+# Not Valid After : Sun Mar 04 05:00:00 2029
+# Fingerprint (MD5): 92:65:58:8B:A2:1A:31:72:73:68:5C:B4:A5:7A:07:48
+# Fingerprint (SHA1): E6:21:F3:35:43:79:05:9A:4B:68:30:9D:8A:2F:74:22:15:87:EC:79
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Universal CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\036\060\034\006\003\125\004\003
+\023\025\107\145\157\124\162\165\163\164\040\125\156\151\166\145
+\162\163\141\154\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\036\060\034\006\003\125\004\003
+\023\025\107\145\157\124\162\165\163\164\040\125\156\151\166\145
+\162\163\141\154\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\150\060\202\003\120\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\105\061\013\060\011\006\003\125\004\006\023\002\125\123\061\026
+\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165\163
+\164\040\111\156\143\056\061\036\060\034\006\003\125\004\003\023
+\025\107\145\157\124\162\165\163\164\040\125\156\151\166\145\162
+\163\141\154\040\103\101\060\036\027\015\060\064\060\063\060\064
+\060\065\060\060\060\060\132\027\015\062\071\060\063\060\064\060
+\065\060\060\060\060\132\060\105\061\013\060\011\006\003\125\004
+\006\023\002\125\123\061\026\060\024\006\003\125\004\012\023\015
+\107\145\157\124\162\165\163\164\040\111\156\143\056\061\036\060
+\034\006\003\125\004\003\023\025\107\145\157\124\162\165\163\164
+\040\125\156\151\166\145\162\163\141\154\040\103\101\060\202\002
+\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\002\017\000\060\202\002\012\002\202\002\001\000\246\025
+\125\240\243\306\340\037\214\235\041\120\327\301\276\053\133\265
+\244\236\241\331\162\130\275\000\033\114\277\141\311\024\035\105
+\202\253\306\035\200\326\075\353\020\234\072\257\155\044\370\274
+\161\001\236\006\365\174\137\036\301\016\125\312\203\232\131\060
+\256\031\313\060\110\225\355\042\067\215\364\112\232\162\146\076
+\255\225\300\340\026\000\340\020\037\053\061\016\327\224\124\323
+\102\063\240\064\035\036\105\166\335\117\312\030\067\354\205\025
+\172\031\010\374\325\307\234\360\362\251\056\020\251\222\346\075
+\130\075\251\026\150\074\057\165\041\030\177\050\167\245\341\141
+\027\267\246\351\370\036\231\333\163\156\364\012\242\041\154\356
+\332\252\205\222\146\257\366\172\153\202\332\272\042\010\065\017
+\317\102\361\065\372\152\356\176\053\045\314\072\021\344\155\257
+\163\262\166\035\255\320\262\170\147\032\244\071\034\121\013\147
+\126\203\375\070\135\015\316\335\360\273\053\226\037\336\173\062
+\122\375\035\273\265\006\241\262\041\136\245\326\225\150\177\360
+\231\236\334\105\010\076\347\322\011\015\065\224\335\200\116\123
+\227\327\265\011\104\040\144\026\027\003\002\114\123\015\150\336
+\325\252\162\115\223\155\202\016\333\234\275\317\264\363\134\135
+\124\172\151\011\226\326\333\021\301\215\165\250\264\317\071\310
+\316\074\274\044\174\346\142\312\341\275\175\247\275\127\145\013
+\344\376\045\355\266\151\020\334\050\032\106\275\001\035\320\227
+\265\341\230\073\300\067\144\326\075\224\356\013\341\365\050\256
+\013\126\277\161\213\043\051\101\216\206\305\113\122\173\330\161
+\253\037\212\025\246\073\203\132\327\130\001\121\306\114\101\331
+\177\330\101\147\162\242\050\337\140\203\251\236\310\173\374\123
+\163\162\131\365\223\172\027\166\016\316\367\345\134\331\013\125
+\064\242\252\133\265\152\124\347\023\312\127\354\227\155\364\136
+\006\057\105\213\130\324\043\026\222\344\026\156\050\143\131\060
+\337\120\001\234\143\211\032\237\333\027\224\202\160\067\303\044
+\236\232\107\326\132\312\116\250\151\211\162\037\221\154\333\176
+\236\033\255\307\037\163\335\054\117\031\145\375\177\223\100\020
+\056\322\360\355\074\236\056\050\076\151\046\063\305\173\002\003
+\001\000\001\243\143\060\141\060\017\006\003\125\035\023\001\001
+\377\004\005\060\003\001\001\377\060\035\006\003\125\035\016\004
+\026\004\024\332\273\056\252\260\014\270\210\046\121\164\134\155
+\003\323\300\330\217\172\326\060\037\006\003\125\035\043\004\030
+\060\026\200\024\332\273\056\252\260\014\270\210\046\121\164\134
+\155\003\323\300\330\217\172\326\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\001\206\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\002\001\000\061\170\346\307
+\265\337\270\224\100\311\161\304\250\065\354\106\035\302\205\363
+\050\130\206\260\013\374\216\262\071\217\104\125\253\144\204\134
+\151\251\320\232\070\074\372\345\037\065\345\104\343\200\171\224
+\150\244\273\304\237\075\341\064\315\060\106\213\124\053\225\245
+\357\367\077\231\204\375\065\346\317\061\306\334\152\277\247\327
+\043\010\341\230\136\303\132\010\166\251\246\257\167\057\267\140
+\275\104\106\152\357\227\377\163\225\301\216\350\223\373\375\061
+\267\354\127\021\021\105\233\060\361\032\210\071\301\117\074\247
+\000\325\307\374\253\155\200\042\160\245\014\340\135\004\051\002
+\373\313\240\221\321\174\326\303\176\120\325\235\130\276\101\070
+\353\271\165\074\025\331\233\311\112\203\131\300\332\123\375\063
+\273\066\030\233\205\017\025\335\356\055\254\166\223\271\331\001
+\215\110\020\250\373\365\070\206\361\333\012\306\275\204\243\043
+\101\336\326\167\157\205\324\205\034\120\340\256\121\212\272\215
+\076\166\342\271\312\047\362\137\237\357\156\131\015\006\330\053
+\027\244\322\174\153\273\137\024\032\110\217\032\114\347\263\107
+\034\216\114\105\053\040\356\110\337\347\335\011\216\030\250\332
+\100\215\222\046\021\123\141\163\135\353\275\347\304\115\051\067
+\141\353\254\071\055\147\056\026\326\365\000\203\205\241\314\177
+\166\304\175\344\267\113\146\357\003\105\140\151\266\014\122\226
+\222\204\136\246\243\265\244\076\053\331\314\330\033\107\252\362
+\104\332\117\371\003\350\360\024\313\077\363\203\336\320\301\124
+\343\267\350\012\067\115\213\040\131\003\060\031\241\054\310\275
+\021\037\337\256\311\112\305\363\047\146\146\206\254\150\221\377
+\331\346\123\034\017\213\134\151\145\012\046\310\036\064\303\135
+\121\173\327\251\234\006\241\066\335\325\211\224\274\331\344\055
+\014\136\011\154\010\227\174\243\075\174\223\377\077\241\024\247
+\317\265\135\353\333\333\034\304\166\337\210\271\275\105\005\225
+\033\256\374\106\152\114\257\110\343\316\256\017\322\176\353\346
+\154\234\117\201\152\172\144\254\273\076\325\347\313\166\056\305
+\247\110\301\134\220\017\313\310\077\372\346\062\341\215\033\157
+\244\346\216\330\371\051\110\212\316\163\376\054
+END
+
+# Trust for Certificate "GeoTrust Universal CA"
+# Issuer: CN=GeoTrust Universal CA,O=GeoTrust Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=GeoTrust Universal CA,O=GeoTrust Inc.,C=US
+# Not Valid Before: Thu Mar 04 05:00:00 2004
+# Not Valid After : Sun Mar 04 05:00:00 2029
+# Fingerprint (MD5): 92:65:58:8B:A2:1A:31:72:73:68:5C:B4:A5:7A:07:48
+# Fingerprint (SHA1): E6:21:F3:35:43:79:05:9A:4B:68:30:9D:8A:2F:74:22:15:87:EC:79
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Universal CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\346\041\363\065\103\171\005\232\113\150\060\235\212\057\164\042
+\025\207\354\171
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\222\145\130\213\242\032\061\162\163\150\134\264\245\172\007\110
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\036\060\034\006\003\125\004\003
+\023\025\107\145\157\124\162\165\163\164\040\125\156\151\166\145
+\162\163\141\154\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GeoTrust Universal CA 2"
+#
+# Issuer: CN=GeoTrust Universal CA 2,O=GeoTrust Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=GeoTrust Universal CA 2,O=GeoTrust Inc.,C=US
+# Not Valid Before: Thu Mar 04 05:00:00 2004
+# Not Valid After : Sun Mar 04 05:00:00 2029
+# Fingerprint (MD5): 34:FC:B8:D0:36:DB:9E:14:B3:C2:F2:DB:8F:E4:94:C7
+# Fingerprint (SHA1): 37:9A:19:7B:41:85:45:35:0C:A6:03:69:F3:3C:2E:AF:47:4F:20:79
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Universal CA 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\040\060\036\006\003\125\004\003
+\023\027\107\145\157\124\162\165\163\164\040\125\156\151\166\145
+\162\163\141\154\040\103\101\040\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\040\060\036\006\003\125\004\003
+\023\027\107\145\157\124\162\165\163\164\040\125\156\151\166\145
+\162\163\141\154\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\154\060\202\003\124\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\107\061\013\060\011\006\003\125\004\006\023\002\125\123\061\026
+\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165\163
+\164\040\111\156\143\056\061\040\060\036\006\003\125\004\003\023
+\027\107\145\157\124\162\165\163\164\040\125\156\151\166\145\162
+\163\141\154\040\103\101\040\062\060\036\027\015\060\064\060\063
+\060\064\060\065\060\060\060\060\132\027\015\062\071\060\063\060
+\064\060\065\060\060\060\060\132\060\107\061\013\060\011\006\003
+\125\004\006\023\002\125\123\061\026\060\024\006\003\125\004\012
+\023\015\107\145\157\124\162\165\163\164\040\111\156\143\056\061
+\040\060\036\006\003\125\004\003\023\027\107\145\157\124\162\165
+\163\164\040\125\156\151\166\145\162\163\141\154\040\103\101\040
+\062\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002
+\001\000\263\124\122\301\311\076\362\331\334\261\123\032\131\051
+\347\261\303\105\050\345\327\321\355\305\305\113\241\252\164\173
+\127\257\112\046\374\330\365\136\247\156\031\333\164\014\117\065
+\133\062\013\001\343\333\353\172\167\065\352\252\132\340\326\350
+\241\127\224\360\220\243\164\126\224\104\060\003\036\134\116\053
+\205\046\164\202\172\014\166\240\157\115\316\101\055\240\025\006
+\024\137\267\102\315\173\217\130\141\064\334\052\010\371\056\303
+\001\246\042\104\034\114\007\202\346\133\316\320\112\174\004\323
+\031\163\047\360\252\230\177\056\257\116\353\207\036\044\167\152
+\135\266\350\133\105\272\334\303\241\005\157\126\216\217\020\046
+\245\111\303\056\327\101\207\042\340\117\206\312\140\265\352\241
+\143\300\001\227\020\171\275\000\074\022\155\053\025\261\254\113
+\261\356\030\271\116\226\334\334\166\377\073\276\317\137\003\300
+\374\073\350\276\106\033\377\332\100\302\122\367\376\343\072\367
+\152\167\065\320\332\215\353\136\030\152\061\307\036\272\074\033
+\050\326\153\124\306\252\133\327\242\054\033\031\314\242\002\366
+\233\131\275\067\153\206\265\155\202\272\330\352\311\126\274\251
+\066\130\375\076\031\363\355\014\046\251\223\070\370\117\301\135
+\042\006\320\227\352\341\255\306\125\340\201\053\050\203\072\372
+\364\173\041\121\000\276\122\070\316\315\146\171\250\364\201\126
+\342\320\203\011\107\121\133\120\152\317\333\110\032\135\076\367
+\313\366\145\367\154\361\225\370\002\073\062\126\202\071\172\133
+\275\057\211\033\277\241\264\350\377\177\215\214\337\003\361\140
+\116\130\021\114\353\243\077\020\053\203\232\001\163\331\224\155
+\204\000\047\146\254\360\160\100\011\102\222\255\117\223\015\141
+\011\121\044\330\222\325\013\224\141\262\207\262\355\377\232\065
+\377\205\124\312\355\104\103\254\033\074\026\153\110\112\012\034
+\100\210\037\222\302\013\000\005\377\362\310\002\112\244\252\251
+\314\231\226\234\057\130\340\175\341\276\273\007\334\137\004\162
+\134\061\064\303\354\137\055\340\075\144\220\042\346\321\354\270
+\056\335\131\256\331\241\067\277\124\065\334\163\062\117\214\004
+\036\063\262\311\106\361\330\134\310\125\120\311\150\275\250\272
+\066\011\002\003\001\000\001\243\143\060\141\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\035\006\003
+\125\035\016\004\026\004\024\166\363\125\341\372\244\066\373\360
+\237\134\142\161\355\074\364\107\070\020\053\060\037\006\003\125
+\035\043\004\030\060\026\200\024\166\363\125\341\372\244\066\373
+\360\237\134\142\161\355\074\364\107\070\020\053\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\206\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\002\001\000
+\146\301\306\043\363\331\340\056\156\137\350\317\256\260\260\045
+\115\053\370\073\130\233\100\044\067\132\313\253\026\111\377\263
+\165\171\063\241\057\155\160\027\064\221\376\147\176\217\354\233
+\345\136\202\251\125\037\057\334\324\121\007\022\376\254\026\076
+\054\065\306\143\374\334\020\353\015\243\252\320\174\314\321\320
+\057\121\056\304\024\132\336\350\031\341\076\306\314\244\051\347
+\056\204\252\006\060\170\166\124\163\050\230\131\070\340\000\015
+\142\323\102\175\041\237\256\075\072\214\325\372\167\015\030\053
+\026\016\137\066\341\374\052\265\060\044\317\340\143\014\173\130
+\032\376\231\272\102\022\261\221\364\174\150\342\310\350\257\054
+\352\311\176\256\273\052\075\015\025\334\064\225\266\030\164\250
+\152\017\307\264\364\023\304\344\133\355\012\322\244\227\114\052
+\355\057\154\022\211\075\361\047\160\252\152\003\122\041\237\100
+\250\147\120\362\363\132\037\337\337\043\366\334\170\116\346\230
+\117\125\072\123\343\357\362\364\237\307\174\330\130\257\051\042
+\227\270\340\275\221\056\260\166\354\127\021\317\357\051\104\363
+\351\205\172\140\143\344\135\063\211\027\331\061\252\332\326\363
+\030\065\162\317\207\053\057\143\043\204\135\204\214\077\127\240
+\210\374\231\221\050\046\151\231\324\217\227\104\276\216\325\110
+\261\244\050\051\361\025\264\341\345\236\335\370\217\246\157\046
+\327\011\074\072\034\021\016\246\154\067\367\255\104\207\054\050
+\307\330\164\202\263\320\157\112\127\273\065\051\047\240\213\350
+\041\247\207\144\066\135\314\330\026\254\307\262\047\100\222\125
+\070\050\215\121\156\335\024\147\123\154\161\134\046\204\115\165
+\132\266\176\140\126\251\115\255\373\233\036\227\363\015\331\322
+\227\124\167\332\075\022\267\340\036\357\010\006\254\371\205\207
+\351\242\334\257\176\030\022\203\375\126\027\101\056\325\051\202
+\175\231\364\061\366\161\251\317\054\001\047\245\005\271\252\262
+\110\116\052\357\237\223\122\121\225\074\122\163\216\126\114\027
+\100\300\011\050\344\213\152\110\123\333\354\315\125\125\361\306
+\370\351\242\054\114\246\321\046\137\176\257\132\114\332\037\246
+\362\034\054\176\256\002\026\322\126\320\057\127\123\107\350\222
+END
+
+# Trust for Certificate "GeoTrust Universal CA 2"
+# Issuer: CN=GeoTrust Universal CA 2,O=GeoTrust Inc.,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=GeoTrust Universal CA 2,O=GeoTrust Inc.,C=US
+# Not Valid Before: Thu Mar 04 05:00:00 2004
+# Not Valid After : Sun Mar 04 05:00:00 2029
+# Fingerprint (MD5): 34:FC:B8:D0:36:DB:9E:14:B3:C2:F2:DB:8F:E4:94:C7
+# Fingerprint (SHA1): 37:9A:19:7B:41:85:45:35:0C:A6:03:69:F3:3C:2E:AF:47:4F:20:79
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Universal CA 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\067\232\031\173\101\205\105\065\014\246\003\151\363\074\056\257
+\107\117\040\171
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\064\374\270\320\066\333\236\024\263\302\362\333\217\344\224\307
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\040\060\036\006\003\125\004\003
+\023\027\107\145\157\124\162\165\163\164\040\125\156\151\166\145
+\162\163\141\154\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "UTN-USER First-Network Applications"
+#
+# Issuer: CN=UTN-USERFirst-Network Applications,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:30:4b:c0:33:77
+# Subject: CN=UTN-USERFirst-Network Applications,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 18:48:39 1999
+# Not Valid After : Tue Jul 09 18:57:49 2019
+# Fingerprint (MD5): BF:60:59:A3:5B:BA:F6:A7:76:42:DA:6F:1A:7B:50:CF
+# Fingerprint (SHA1): 5D:98:9C:DB:15:96:11:36:51:65:64:1B:56:0F:DB:EA:2A:C2:3E:F1
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN-USER First-Network Applications"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\243\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\053\060\051\006\003\125
+\004\003\023\042\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\116\145\164\167\157\162\153\040\101\160\160\154\151\143
+\141\164\151\157\156\163
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\243\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\053\060\051\006\003\125
+\004\003\023\042\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\116\145\164\167\157\162\153\040\101\160\160\154\151\143
+\141\164\151\157\156\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\060\113\300
+\063\167
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\144\060\202\003\114\240\003\002\001\002\002\020\104
+\276\014\213\120\000\044\264\021\323\066\060\113\300\063\167\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\243\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\053\060\051\006\003\125\004\003
+\023\042\125\124\116\055\125\123\105\122\106\151\162\163\164\055
+\116\145\164\167\157\162\153\040\101\160\160\154\151\143\141\164
+\151\157\156\163\060\036\027\015\071\071\060\067\060\071\061\070
+\064\070\063\071\132\027\015\061\071\060\067\060\071\061\070\065
+\067\064\071\132\060\201\243\061\013\060\011\006\003\125\004\006
+\023\002\125\123\061\013\060\011\006\003\125\004\010\023\002\125
+\124\061\027\060\025\006\003\125\004\007\023\016\123\141\154\164
+\040\114\141\153\145\040\103\151\164\171\061\036\060\034\006\003
+\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122\125
+\123\124\040\116\145\164\167\157\162\153\061\041\060\037\006\003
+\125\004\013\023\030\150\164\164\160\072\057\057\167\167\167\056
+\165\163\145\162\164\162\165\163\164\056\143\157\155\061\053\060
+\051\006\003\125\004\003\023\042\125\124\116\055\125\123\105\122
+\106\151\162\163\164\055\116\145\164\167\157\162\153\040\101\160
+\160\154\151\143\141\164\151\157\156\163\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\263\373\221\241\344
+\066\125\205\254\006\064\133\240\232\130\262\370\265\017\005\167
+\203\256\062\261\166\222\150\354\043\112\311\166\077\343\234\266
+\067\171\003\271\253\151\215\007\045\266\031\147\344\260\033\030
+\163\141\112\350\176\315\323\057\144\343\246\174\014\372\027\200
+\243\015\107\211\117\121\161\057\356\374\077\371\270\026\200\207
+\211\223\045\040\232\103\202\151\044\166\050\131\065\241\035\300
+\177\203\006\144\026\040\054\323\111\244\205\264\300\141\177\121
+\010\370\150\025\221\200\313\245\325\356\073\072\364\204\004\136
+\140\131\247\214\064\162\356\270\170\305\321\073\022\112\157\176
+\145\047\271\244\125\305\271\157\103\244\305\035\054\231\300\122
+\244\170\114\025\263\100\230\010\153\103\306\001\260\172\173\365
+\153\034\042\077\313\357\377\250\320\072\113\166\025\236\322\321
+\306\056\343\333\127\033\062\242\270\157\350\206\246\077\160\253
+\345\160\222\253\104\036\100\120\373\234\243\142\344\154\156\240
+\310\336\342\200\102\372\351\057\350\316\062\004\217\174\215\267
+\034\243\065\074\025\335\236\303\256\227\245\002\003\001\000\001
+\243\201\221\060\201\216\060\013\006\003\125\035\017\004\004\003
+\002\001\306\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\372
+\206\311\333\340\272\351\170\365\113\250\326\025\337\360\323\341
+\152\024\074\060\117\006\003\125\035\037\004\110\060\106\060\104
+\240\102\240\100\206\076\150\164\164\160\072\057\057\143\162\154
+\056\165\163\145\162\164\162\165\163\164\056\143\157\155\057\125
+\124\116\055\125\123\105\122\106\151\162\163\164\055\116\145\164
+\167\157\162\153\101\160\160\154\151\143\141\164\151\157\156\163
+\056\143\162\154\060\015\006\011\052\206\110\206\367\015\001\001
+\005\005\000\003\202\001\001\000\244\363\045\314\321\324\221\203
+\042\320\314\062\253\233\226\116\064\221\124\040\045\064\141\137
+\052\002\025\341\213\252\377\175\144\121\317\012\377\274\175\330
+\041\152\170\313\057\121\157\370\102\035\063\275\353\265\173\224
+\303\303\251\240\055\337\321\051\037\035\376\217\077\273\250\105
+\052\177\321\156\125\044\342\273\002\373\061\077\276\350\274\354
+\100\053\370\001\324\126\070\344\312\104\202\265\141\040\041\147
+\145\366\360\013\347\064\370\245\302\234\243\134\100\037\205\223
+\225\006\336\117\324\047\251\266\245\374\026\315\163\061\077\270
+\145\047\317\324\123\032\360\254\156\237\117\005\014\003\201\247
+\204\051\304\132\275\144\127\162\255\073\317\067\030\246\230\306
+\255\006\264\334\010\243\004\325\051\244\226\232\022\147\112\214
+\140\105\235\361\043\232\260\000\234\150\265\230\120\323\357\216
+\056\222\145\261\110\076\041\276\025\060\052\015\265\014\243\153
+\077\256\177\127\365\037\226\174\337\157\335\202\060\054\145\033
+\100\112\315\150\271\162\354\161\166\354\124\216\037\205\014\001
+\152\372\246\070\254\037\304\204
+END
+
+# Trust for Certificate "UTN-USER First-Network Applications"
+# Issuer: CN=UTN-USERFirst-Network Applications,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:30:4b:c0:33:77
+# Subject: CN=UTN-USERFirst-Network Applications,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 18:48:39 1999
+# Not Valid After : Tue Jul 09 18:57:49 2019
+# Fingerprint (MD5): BF:60:59:A3:5B:BA:F6:A7:76:42:DA:6F:1A:7B:50:CF
+# Fingerprint (SHA1): 5D:98:9C:DB:15:96:11:36:51:65:64:1B:56:0F:DB:EA:2A:C2:3E:F1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN-USER First-Network Applications"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\135\230\234\333\025\226\021\066\121\145\144\033\126\017\333\352
+\052\302\076\361
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\277\140\131\243\133\272\366\247\166\102\332\157\032\173\120\317
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\243\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\053\060\051\006\003\125
+\004\003\023\042\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\116\145\164\167\157\162\153\040\101\160\160\154\151\143
+\141\164\151\157\156\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\060\113\300
+\063\167
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Visa eCommerce Root"
+#
+# Issuer: CN=Visa eCommerce Root,OU=Visa International Service Association,O=VISA,C=US
+# Serial Number:13:86:35:4d:1d:3f:06:f2:c1:f9:65:05:d5:90:1c:62
+# Subject: CN=Visa eCommerce Root,OU=Visa International Service Association,O=VISA,C=US
+# Not Valid Before: Wed Jun 26 02:18:36 2002
+# Not Valid After : Fri Jun 24 00:16:12 2022
+# Fingerprint (MD5): FC:11:B8:D8:08:93:30:00:6D:23:F9:7E:EB:52:1E:02
+# Fingerprint (SHA1): 70:17:9B:86:8C:00:A4:FA:60:91:52:22:3F:9F:3E:32:BD:E0:05:62
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Visa eCommerce Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\153\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\015\060\013\006\003\125\004\012\023\004\126\111\123\101\061\057
+\060\055\006\003\125\004\013\023\046\126\151\163\141\040\111\156
+\164\145\162\156\141\164\151\157\156\141\154\040\123\145\162\166
+\151\143\145\040\101\163\163\157\143\151\141\164\151\157\156\061
+\034\060\032\006\003\125\004\003\023\023\126\151\163\141\040\145
+\103\157\155\155\145\162\143\145\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\153\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\015\060\013\006\003\125\004\012\023\004\126\111\123\101\061\057
+\060\055\006\003\125\004\013\023\046\126\151\163\141\040\111\156
+\164\145\162\156\141\164\151\157\156\141\154\040\123\145\162\166
+\151\143\145\040\101\163\163\157\143\151\141\164\151\157\156\061
+\034\060\032\006\003\125\004\003\023\023\126\151\163\141\040\145
+\103\157\155\155\145\162\143\145\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\023\206\065\115\035\077\006\362\301\371\145\005\325\220
+\034\142
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\242\060\202\002\212\240\003\002\001\002\002\020\023
+\206\065\115\035\077\006\362\301\371\145\005\325\220\034\142\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\153
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\015\060
+\013\006\003\125\004\012\023\004\126\111\123\101\061\057\060\055
+\006\003\125\004\013\023\046\126\151\163\141\040\111\156\164\145
+\162\156\141\164\151\157\156\141\154\040\123\145\162\166\151\143
+\145\040\101\163\163\157\143\151\141\164\151\157\156\061\034\060
+\032\006\003\125\004\003\023\023\126\151\163\141\040\145\103\157
+\155\155\145\162\143\145\040\122\157\157\164\060\036\027\015\060
+\062\060\066\062\066\060\062\061\070\063\066\132\027\015\062\062
+\060\066\062\064\060\060\061\066\061\062\132\060\153\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\015\060\013\006\003
+\125\004\012\023\004\126\111\123\101\061\057\060\055\006\003\125
+\004\013\023\046\126\151\163\141\040\111\156\164\145\162\156\141
+\164\151\157\156\141\154\040\123\145\162\166\151\143\145\040\101
+\163\163\157\143\151\141\164\151\157\156\061\034\060\032\006\003
+\125\004\003\023\023\126\151\163\141\040\145\103\157\155\155\145
+\162\143\145\040\122\157\157\164\060\202\001\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000
+\060\202\001\012\002\202\001\001\000\257\127\336\126\036\156\241
+\332\140\261\224\047\313\027\333\007\077\200\205\117\310\234\266
+\320\364\157\117\317\231\330\341\333\302\110\134\072\254\071\063
+\307\037\152\213\046\075\053\065\365\110\261\221\301\002\116\004
+\226\221\173\260\063\360\261\024\116\021\157\265\100\257\033\105
+\245\112\357\176\266\254\362\240\037\130\077\022\106\140\074\215
+\241\340\175\317\127\076\063\036\373\107\361\252\025\227\007\125
+\146\245\265\055\056\330\200\131\262\247\015\267\106\354\041\143
+\377\065\253\245\002\317\052\364\114\376\173\365\224\135\204\115
+\250\362\140\217\333\016\045\074\237\163\161\317\224\337\112\352
+\333\337\162\070\214\363\226\275\361\027\274\322\272\073\105\132
+\306\247\366\306\027\213\001\235\374\031\250\052\203\026\270\072
+\110\376\116\076\240\253\006\031\351\123\363\200\023\007\355\055
+\277\077\012\074\125\040\071\054\054\000\151\164\225\112\274\040
+\262\251\171\345\030\211\221\250\334\034\115\357\273\176\067\013
+\135\376\071\245\210\122\214\000\154\354\030\174\101\275\366\213
+\165\167\272\140\235\204\347\376\055\002\003\001\000\001\243\102
+\060\100\060\017\006\003\125\035\023\001\001\377\004\005\060\003
+\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\006\060\035\006\003\125\035\016\004\026\004\024\025\070
+\203\017\077\054\077\160\063\036\315\106\376\007\214\040\340\327
+\303\267\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\202\001\001\000\137\361\101\175\174\134\010\271\053\340
+\325\222\107\372\147\134\245\023\303\003\041\233\053\114\211\106
+\317\131\115\311\376\245\100\266\143\315\335\161\050\225\147\021
+\314\044\254\323\104\154\161\256\001\040\153\003\242\217\030\267
+\051\072\175\345\026\140\123\170\074\300\257\025\203\367\217\122
+\063\044\275\144\223\227\356\213\367\333\030\250\155\161\263\367
+\054\027\320\164\045\151\367\376\153\074\224\276\115\113\101\214
+\116\342\163\320\343\220\042\163\103\315\363\357\352\163\316\105
+\212\260\246\111\377\114\175\235\161\210\304\166\035\220\133\035
+\356\375\314\367\356\375\140\245\261\172\026\161\321\026\320\174
+\022\074\154\151\227\333\256\137\071\232\160\057\005\074\031\106
+\004\231\040\066\320\140\156\141\006\273\026\102\214\160\367\060
+\373\340\333\146\243\000\001\275\346\054\332\221\137\240\106\213
+\115\152\234\075\075\335\005\106\376\166\277\240\012\074\344\000
+\346\047\267\377\204\055\336\272\042\047\226\020\161\353\042\355
+\337\337\063\234\317\343\255\256\216\324\216\346\117\121\257\026
+\222\340\134\366\007\017
+END
+
+# Trust for Certificate "Visa eCommerce Root"
+# Issuer: CN=Visa eCommerce Root,OU=Visa International Service Association,O=VISA,C=US
+# Serial Number:13:86:35:4d:1d:3f:06:f2:c1:f9:65:05:d5:90:1c:62
+# Subject: CN=Visa eCommerce Root,OU=Visa International Service Association,O=VISA,C=US
+# Not Valid Before: Wed Jun 26 02:18:36 2002
+# Not Valid After : Fri Jun 24 00:16:12 2022
+# Fingerprint (MD5): FC:11:B8:D8:08:93:30:00:6D:23:F9:7E:EB:52:1E:02
+# Fingerprint (SHA1): 70:17:9B:86:8C:00:A4:FA:60:91:52:22:3F:9F:3E:32:BD:E0:05:62
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Visa eCommerce Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\160\027\233\206\214\000\244\372\140\221\122\042\077\237\076\062
+\275\340\005\142
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\374\021\270\330\010\223\060\000\155\043\371\176\353\122\036\002
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\153\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\015\060\013\006\003\125\004\012\023\004\126\111\123\101\061\057
+\060\055\006\003\125\004\013\023\046\126\151\163\141\040\111\156
+\164\145\162\156\141\164\151\157\156\141\154\040\123\145\162\166
+\151\143\145\040\101\163\163\157\143\151\141\164\151\157\156\061
+\034\060\032\006\003\125\004\003\023\023\126\151\163\141\040\145
+\103\157\155\155\145\162\143\145\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\023\206\065\115\035\077\006\362\301\371\145\005\325\220
+\034\142
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Certum Root CA"
+#
+# Issuer: CN=Certum CA,O=Unizeto Sp. z o.o.,C=PL
+# Serial Number: 65568 (0x10020)
+# Subject: CN=Certum CA,O=Unizeto Sp. z o.o.,C=PL
+# Not Valid Before: Tue Jun 11 10:46:39 2002
+# Not Valid After : Fri Jun 11 10:46:39 2027
+# Fingerprint (MD5): 2C:8F:9F:66:1D:18:90:B1:47:26:9D:8E:86:82:8C:A9
+# Fingerprint (SHA1): 62:52:DC:40:F7:11:43:A2:2F:DE:9E:F7:34:8E:06:42:51:B1:81:18
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certum Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\076\061\013\060\011\006\003\125\004\006\023\002\120\114\061
+\033\060\031\006\003\125\004\012\023\022\125\156\151\172\145\164
+\157\040\123\160\056\040\172\040\157\056\157\056\061\022\060\020
+\006\003\125\004\003\023\011\103\145\162\164\165\155\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\076\061\013\060\011\006\003\125\004\006\023\002\120\114\061
+\033\060\031\006\003\125\004\012\023\022\125\156\151\172\145\164
+\157\040\123\160\056\040\172\040\157\056\157\056\061\022\060\020
+\006\003\125\004\003\023\011\103\145\162\164\165\155\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\001\000\040
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\014\060\202\001\364\240\003\002\001\002\002\003\001
+\000\040\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\060\076\061\013\060\011\006\003\125\004\006\023\002\120\114
+\061\033\060\031\006\003\125\004\012\023\022\125\156\151\172\145
+\164\157\040\123\160\056\040\172\040\157\056\157\056\061\022\060
+\020\006\003\125\004\003\023\011\103\145\162\164\165\155\040\103
+\101\060\036\027\015\060\062\060\066\061\061\061\060\064\066\063
+\071\132\027\015\062\067\060\066\061\061\061\060\064\066\063\071
+\132\060\076\061\013\060\011\006\003\125\004\006\023\002\120\114
+\061\033\060\031\006\003\125\004\012\023\022\125\156\151\172\145
+\164\157\040\123\160\056\040\172\040\157\056\157\056\061\022\060
+\020\006\003\125\004\003\023\011\103\145\162\164\165\155\040\103
+\101\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\316\261\301\056\323\117\174\315\045\316\030\076\117\304
+\214\157\200\152\163\310\133\121\370\233\322\334\273\000\134\261
+\240\374\165\003\356\201\360\210\356\043\122\351\346\025\063\215
+\254\055\011\305\166\371\053\071\200\211\344\227\113\220\245\250
+\170\370\163\103\173\244\141\260\330\130\314\341\154\146\176\234
+\363\011\136\125\143\204\325\250\357\363\261\056\060\150\263\304
+\074\330\254\156\215\231\132\220\116\064\334\066\232\217\201\210
+\120\267\155\226\102\011\363\327\225\203\015\101\113\260\152\153
+\370\374\017\176\142\237\147\304\355\046\137\020\046\017\010\117
+\360\244\127\050\316\217\270\355\105\366\156\356\045\135\252\156
+\071\276\344\223\057\331\107\240\162\353\372\246\133\257\312\123
+\077\342\016\306\226\126\021\156\367\351\146\251\046\330\177\225
+\123\355\012\205\210\272\117\051\245\102\214\136\266\374\205\040
+\000\252\150\013\241\032\205\001\234\304\106\143\202\210\266\042
+\261\356\376\252\106\131\176\317\065\054\325\266\332\135\367\110
+\063\024\124\266\353\331\157\316\315\210\326\253\033\332\226\073
+\035\131\002\003\001\000\001\243\023\060\021\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000
+\270\215\316\357\347\024\272\317\356\260\104\222\154\264\071\076
+\242\204\156\255\270\041\167\322\324\167\202\207\346\040\101\201
+\356\342\370\021\267\143\321\027\067\276\031\166\044\034\004\032
+\114\353\075\252\147\157\055\324\315\376\145\061\160\305\033\246
+\002\012\272\140\173\155\130\302\232\111\376\143\062\013\153\343
+\072\300\254\253\073\260\350\323\011\121\214\020\203\306\064\340
+\305\053\340\032\266\140\024\047\154\062\167\214\274\262\162\230
+\317\315\314\077\271\310\044\102\024\326\127\374\346\046\103\251
+\035\345\200\220\316\003\124\050\076\367\077\323\370\115\355\152
+\012\072\223\023\233\073\024\043\023\143\234\077\321\207\047\171
+\345\114\121\343\001\255\205\135\032\073\261\325\163\020\244\323
+\362\274\156\144\365\132\126\220\250\307\016\114\164\017\056\161
+\073\367\310\107\364\151\157\025\362\021\136\203\036\234\174\122
+\256\375\002\332\022\250\131\147\030\333\274\160\335\233\261\151
+\355\200\316\211\100\110\152\016\065\312\051\146\025\041\224\054
+\350\140\052\233\205\112\100\363\153\212\044\354\006\026\054\163
+END
+
+# Trust for Certificate "Certum Root CA"
+# Issuer: CN=Certum CA,O=Unizeto Sp. z o.o.,C=PL
+# Serial Number: 65568 (0x10020)
+# Subject: CN=Certum CA,O=Unizeto Sp. z o.o.,C=PL
+# Not Valid Before: Tue Jun 11 10:46:39 2002
+# Not Valid After : Fri Jun 11 10:46:39 2027
+# Fingerprint (MD5): 2C:8F:9F:66:1D:18:90:B1:47:26:9D:8E:86:82:8C:A9
+# Fingerprint (SHA1): 62:52:DC:40:F7:11:43:A2:2F:DE:9E:F7:34:8E:06:42:51:B1:81:18
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certum Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\142\122\334\100\367\021\103\242\057\336\236\367\064\216\006\102
+\121\261\201\030
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\054\217\237\146\035\030\220\261\107\046\235\216\206\202\214\251
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\076\061\013\060\011\006\003\125\004\006\023\002\120\114\061
+\033\060\031\006\003\125\004\012\023\022\125\156\151\172\145\164
+\157\040\123\160\056\040\172\040\157\056\157\056\061\022\060\020
+\006\003\125\004\003\023\011\103\145\162\164\165\155\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\001\000\040
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Comodo AAA Services root"
+#
+# Issuer: CN=AAA Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number: 1 (0x1)
+# Subject: CN=AAA Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Jan 01 00:00:00 2004
+# Not Valid After : Sun Dec 31 23:59:59 2028
+# Fingerprint (MD5): 49:79:04:B0:EB:87:19:AC:47:B0:BC:11:51:9B:74:D0
+# Fingerprint (SHA1): D1:EB:23:A4:6D:17:D6:8F:D9:25:64:C2:F1:F1:60:17:64:D8:E3:49
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Comodo AAA Services root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\041\060\037\006\003
+\125\004\003\014\030\101\101\101\040\103\145\162\164\151\146\151
+\143\141\164\145\040\123\145\162\166\151\143\145\163
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\041\060\037\006\003
+\125\004\003\014\030\101\101\101\040\103\145\162\164\151\146\151
+\143\141\164\145\040\123\145\162\166\151\143\145\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\062\060\202\003\032\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\173\061\013\060\011\006\003\125\004\006\023\002\107\102\061\033
+\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145\162
+\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016\006
+\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032\060
+\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040\103
+\101\040\114\151\155\151\164\145\144\061\041\060\037\006\003\125
+\004\003\014\030\101\101\101\040\103\145\162\164\151\146\151\143
+\141\164\145\040\123\145\162\166\151\143\145\163\060\036\027\015
+\060\064\060\061\060\061\060\060\060\060\060\060\132\027\015\062
+\070\061\062\063\061\062\063\065\071\065\071\132\060\173\061\013
+\060\011\006\003\125\004\006\023\002\107\102\061\033\060\031\006
+\003\125\004\010\014\022\107\162\145\141\164\145\162\040\115\141
+\156\143\150\145\163\164\145\162\061\020\060\016\006\003\125\004
+\007\014\007\123\141\154\146\157\162\144\061\032\060\030\006\003
+\125\004\012\014\021\103\157\155\157\144\157\040\103\101\040\114
+\151\155\151\164\145\144\061\041\060\037\006\003\125\004\003\014
+\030\101\101\101\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\060\202\001\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017
+\000\060\202\001\012\002\202\001\001\000\276\100\235\364\156\341
+\352\166\207\034\115\105\104\216\276\106\310\203\006\235\301\052
+\376\030\037\216\344\002\372\363\253\135\120\212\026\061\013\232
+\006\320\305\160\042\315\111\055\124\143\314\266\156\150\106\013
+\123\352\313\114\044\300\274\162\116\352\361\025\256\364\124\232
+\022\012\303\172\262\063\140\342\332\211\125\363\042\130\363\336
+\334\317\357\203\206\242\214\224\117\237\150\362\230\220\106\204
+\047\307\166\277\343\314\065\054\213\136\007\144\145\202\300\110
+\260\250\221\371\141\237\166\040\120\250\221\307\146\265\353\170
+\142\003\126\360\212\032\023\352\061\243\036\240\231\375\070\366
+\366\047\062\130\157\007\365\153\270\373\024\053\257\267\252\314
+\326\143\137\163\214\332\005\231\250\070\250\313\027\170\066\121
+\254\351\236\364\170\072\215\317\017\331\102\342\230\014\253\057
+\237\016\001\336\357\237\231\111\361\055\337\254\164\115\033\230
+\265\107\305\345\051\321\371\220\030\307\142\234\276\203\307\046
+\173\076\212\045\307\300\335\235\346\065\150\020\040\235\217\330
+\336\322\303\204\234\015\136\350\057\311\002\003\001\000\001\243
+\201\300\060\201\275\060\035\006\003\125\035\016\004\026\004\024
+\240\021\012\043\076\226\361\007\354\342\257\051\357\202\245\177
+\320\060\244\264\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\173\006\003\125\035\037\004\164\060\162
+\060\070\240\066\240\064\206\062\150\164\164\160\072\057\057\143
+\162\154\056\143\157\155\157\144\157\143\141\056\143\157\155\057
+\101\101\101\103\145\162\164\151\146\151\143\141\164\145\123\145
+\162\166\151\143\145\163\056\143\162\154\060\066\240\064\240\062
+\206\060\150\164\164\160\072\057\057\143\162\154\056\143\157\155
+\157\144\157\056\156\145\164\057\101\101\101\103\145\162\164\151
+\146\151\143\141\164\145\123\145\162\166\151\143\145\163\056\143
+\162\154\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\202\001\001\000\010\126\374\002\360\233\350\377\244\372
+\326\173\306\104\200\316\117\304\305\366\000\130\314\246\266\274
+\024\111\150\004\166\350\346\356\135\354\002\017\140\326\215\120
+\030\117\046\116\001\343\346\260\245\356\277\274\164\124\101\277
+\375\374\022\270\307\117\132\364\211\140\005\177\140\267\005\112
+\363\366\361\302\277\304\271\164\206\266\055\175\153\314\322\363
+\106\335\057\306\340\152\303\303\064\003\054\175\226\335\132\302
+\016\247\012\231\301\005\213\253\014\057\363\134\072\317\154\067
+\125\011\207\336\123\100\154\130\357\374\266\253\145\156\004\366
+\033\334\074\340\132\025\306\236\331\361\131\110\060\041\145\003
+\154\354\351\041\163\354\233\003\241\340\067\255\240\025\030\217
+\372\272\002\316\247\054\251\020\023\054\324\345\010\046\253\042
+\227\140\370\220\136\164\324\242\232\123\275\362\251\150\340\242
+\156\302\327\154\261\243\017\236\277\353\150\347\126\362\256\362
+\343\053\070\072\011\201\265\153\205\327\276\055\355\077\032\267
+\262\143\342\365\142\054\202\324\152\000\101\120\361\071\203\237
+\225\351\066\226\230\156
+END
+
+# Trust for Certificate "Comodo AAA Services root"
+# Issuer: CN=AAA Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number: 1 (0x1)
+# Subject: CN=AAA Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Jan 01 00:00:00 2004
+# Not Valid After : Sun Dec 31 23:59:59 2028
+# Fingerprint (MD5): 49:79:04:B0:EB:87:19:AC:47:B0:BC:11:51:9B:74:D0
+# Fingerprint (SHA1): D1:EB:23:A4:6D:17:D6:8F:D9:25:64:C2:F1:F1:60:17:64:D8:E3:49
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Comodo AAA Services root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\321\353\043\244\155\027\326\217\331\045\144\302\361\361\140\027
+\144\330\343\111
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\111\171\004\260\353\207\031\254\107\260\274\021\121\233\164\320
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\041\060\037\006\003
+\125\004\003\014\030\101\101\101\040\103\145\162\164\151\146\151
+\143\141\164\145\040\123\145\162\166\151\143\145\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Comodo Secure Services root"
+#
+# Issuer: CN=Secure Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number: 1 (0x1)
+# Subject: CN=Secure Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Jan 01 00:00:00 2004
+# Not Valid After : Sun Dec 31 23:59:59 2028
+# Fingerprint (MD5): D3:D9:BD:AE:9F:AC:67:24:B3:C8:1B:52:E1:B9:A9:BD
+# Fingerprint (SHA1): 4A:65:D5:F4:1D:EF:39:B8:B8:90:4A:4A:D3:64:81:33:CF:C7:A1:D1
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Comodo Secure Services root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\176\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\044\060\042\006\003
+\125\004\003\014\033\123\145\143\165\162\145\040\103\145\162\164
+\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145\163
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\176\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\044\060\042\006\003
+\125\004\003\014\033\123\145\143\165\162\145\040\103\145\162\164
+\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\077\060\202\003\047\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\176\061\013\060\011\006\003\125\004\006\023\002\107\102\061\033
+\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145\162
+\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016\006
+\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032\060
+\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040\103
+\101\040\114\151\155\151\164\145\144\061\044\060\042\006\003\125
+\004\003\014\033\123\145\143\165\162\145\040\103\145\162\164\151
+\146\151\143\141\164\145\040\123\145\162\166\151\143\145\163\060
+\036\027\015\060\064\060\061\060\061\060\060\060\060\060\060\132
+\027\015\062\070\061\062\063\061\062\063\065\071\065\071\132\060
+\176\061\013\060\011\006\003\125\004\006\023\002\107\102\061\033
+\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145\162
+\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016\006
+\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032\060
+\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040\103
+\101\040\114\151\155\151\164\145\144\061\044\060\042\006\003\125
+\004\003\014\033\123\145\143\165\162\145\040\103\145\162\164\151
+\146\151\143\141\164\145\040\123\145\162\166\151\143\145\163\060
+\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000
+\300\161\063\202\212\320\160\353\163\207\202\100\325\035\344\313
+\311\016\102\220\371\336\064\271\241\272\021\364\045\205\363\314
+\162\155\362\173\227\153\263\007\361\167\044\221\137\045\217\366
+\164\075\344\200\302\370\074\015\363\277\100\352\367\310\122\321
+\162\157\357\310\253\101\270\156\056\027\052\225\151\014\315\322
+\036\224\173\055\224\035\252\165\327\263\230\313\254\274\144\123
+\100\274\217\254\254\066\313\134\255\273\335\340\224\027\354\321
+\134\320\277\357\245\225\311\220\305\260\254\373\033\103\337\172
+\010\135\267\270\362\100\033\053\047\236\120\316\136\145\202\210
+\214\136\323\116\014\172\352\010\221\266\066\252\053\102\373\352
+\302\243\071\345\333\046\070\255\213\012\356\031\143\307\034\044
+\337\003\170\332\346\352\301\107\032\013\013\106\011\335\002\374
+\336\313\207\137\327\060\143\150\241\256\334\062\241\272\276\376
+\104\253\150\266\245\027\025\375\275\325\247\247\232\344\104\063
+\351\210\216\374\355\121\353\223\161\116\255\001\347\104\216\253
+\055\313\250\376\001\111\110\360\300\335\307\150\330\222\376\075
+\002\003\001\000\001\243\201\307\060\201\304\060\035\006\003\125
+\035\016\004\026\004\024\074\330\223\210\302\300\202\011\314\001
+\231\006\223\040\351\236\160\011\143\117\060\016\006\003\125\035
+\017\001\001\377\004\004\003\002\001\006\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\201\201\006\003
+\125\035\037\004\172\060\170\060\073\240\071\240\067\206\065\150
+\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144\157
+\143\141\056\143\157\155\057\123\145\143\165\162\145\103\145\162
+\164\151\146\151\143\141\164\145\123\145\162\166\151\143\145\163
+\056\143\162\154\060\071\240\067\240\065\206\063\150\164\164\160
+\072\057\057\143\162\154\056\143\157\155\157\144\157\056\156\145
+\164\057\123\145\143\165\162\145\103\145\162\164\151\146\151\143
+\141\164\145\123\145\162\166\151\143\145\163\056\143\162\154\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\207\001\155\043\035\176\133\027\175\301\141\062\317
+\217\347\363\212\224\131\146\340\236\050\250\136\323\267\364\064
+\346\252\071\262\227\026\305\202\157\062\244\351\214\347\257\375
+\357\302\350\271\113\252\243\364\346\332\215\145\041\373\272\200
+\353\046\050\205\032\376\071\214\336\133\004\004\264\124\371\243
+\147\236\101\372\011\122\314\005\110\250\311\077\041\004\036\316
+\110\153\374\205\350\302\173\257\177\267\314\370\137\072\375\065
+\306\015\357\227\334\114\253\021\341\153\313\061\321\154\373\110
+\200\253\334\234\067\270\041\024\113\015\161\075\354\203\063\156
+\321\156\062\026\354\230\307\026\213\131\246\064\253\005\127\055
+\223\367\252\023\313\322\023\342\267\056\073\315\153\120\027\011
+\150\076\265\046\127\356\266\340\266\335\271\051\200\171\175\217
+\243\360\244\050\244\025\304\205\364\047\324\153\277\345\134\344
+\145\002\166\124\264\343\067\146\044\323\031\141\310\122\020\345
+\213\067\232\271\251\371\035\277\352\231\222\141\226\377\001\315
+\241\137\015\274\161\274\016\254\013\035\107\105\035\301\354\174
+\354\375\051
+END
+
+# Trust for Certificate "Comodo Secure Services root"
+# Issuer: CN=Secure Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number: 1 (0x1)
+# Subject: CN=Secure Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Jan 01 00:00:00 2004
+# Not Valid After : Sun Dec 31 23:59:59 2028
+# Fingerprint (MD5): D3:D9:BD:AE:9F:AC:67:24:B3:C8:1B:52:E1:B9:A9:BD
+# Fingerprint (SHA1): 4A:65:D5:F4:1D:EF:39:B8:B8:90:4A:4A:D3:64:81:33:CF:C7:A1:D1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Comodo Secure Services root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\112\145\325\364\035\357\071\270\270\220\112\112\323\144\201\063
+\317\307\241\321
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\323\331\275\256\237\254\147\044\263\310\033\122\341\271\251\275
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\176\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\044\060\042\006\003
+\125\004\003\014\033\123\145\143\165\162\145\040\103\145\162\164
+\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Comodo Trusted Services root"
+#
+# Issuer: CN=Trusted Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number: 1 (0x1)
+# Subject: CN=Trusted Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Jan 01 00:00:00 2004
+# Not Valid After : Sun Dec 31 23:59:59 2028
+# Fingerprint (MD5): 91:1B:3F:6E:CD:9E:AB:EE:07:FE:1F:71:D2:B3:61:27
+# Fingerprint (SHA1): E1:9F:E3:0E:8B:84:60:9E:80:9B:17:0D:72:A8:C5:BA:6E:14:09:BD
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Comodo Trusted Services root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\045\060\043\006\003
+\125\004\003\014\034\124\162\165\163\164\145\144\040\103\145\162
+\164\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145
+\163
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\045\060\043\006\003
+\125\004\003\014\034\124\162\165\163\164\145\144\040\103\145\162
+\164\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145
+\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\103\060\202\003\053\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\177\061\013\060\011\006\003\125\004\006\023\002\107\102\061\033
+\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145\162
+\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016\006
+\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032\060
+\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040\103
+\101\040\114\151\155\151\164\145\144\061\045\060\043\006\003\125
+\004\003\014\034\124\162\165\163\164\145\144\040\103\145\162\164
+\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145\163
+\060\036\027\015\060\064\060\061\060\061\060\060\060\060\060\060
+\132\027\015\062\070\061\062\063\061\062\063\065\071\065\071\132
+\060\177\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\045\060\043\006\003
+\125\004\003\014\034\124\162\165\163\164\145\144\040\103\145\162
+\164\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145
+\163\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\337\161\157\066\130\123\132\362\066\124\127\200\304\164
+\010\040\355\030\177\052\035\346\065\232\036\045\254\234\345\226
+\176\162\122\240\025\102\333\131\335\144\172\032\320\270\173\335
+\071\025\274\125\110\304\355\072\000\352\061\021\272\362\161\164
+\032\147\270\317\063\314\250\061\257\243\343\327\177\277\063\055
+\114\152\074\354\213\303\222\322\123\167\044\164\234\007\156\160
+\374\275\013\133\166\272\137\362\377\327\067\113\112\140\170\367
+\360\372\312\160\264\352\131\252\243\316\110\057\251\303\262\013
+\176\027\162\026\014\246\007\014\033\070\317\311\142\267\077\240
+\223\245\207\101\362\267\160\100\167\330\276\024\174\343\250\300
+\172\216\351\143\152\321\017\232\306\322\364\213\072\024\004\126
+\324\355\270\314\156\365\373\342\054\130\275\177\117\153\053\367
+\140\044\130\044\316\046\357\064\221\072\325\343\201\320\262\360
+\004\002\327\133\267\076\222\254\153\022\212\371\344\005\260\073
+\221\111\134\262\353\123\352\370\237\107\206\356\277\225\300\300
+\006\237\322\133\136\021\033\364\307\004\065\051\322\125\134\344
+\355\353\002\003\001\000\001\243\201\311\060\201\306\060\035\006
+\003\125\035\016\004\026\004\024\305\173\130\275\355\332\045\151
+\322\367\131\026\250\263\062\300\173\047\133\364\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\201\203
+\006\003\125\035\037\004\174\060\172\060\074\240\072\240\070\206
+\066\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157
+\144\157\143\141\056\143\157\155\057\124\162\165\163\164\145\144
+\103\145\162\164\151\146\151\143\141\164\145\123\145\162\166\151
+\143\145\163\056\143\162\154\060\072\240\070\240\066\206\064\150
+\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144\157
+\056\156\145\164\057\124\162\165\163\164\145\144\103\145\162\164
+\151\146\151\143\141\164\145\123\145\162\166\151\143\145\163\056
+\143\162\154\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\202\001\001\000\310\223\201\073\211\264\257\270\204
+\022\114\215\322\360\333\160\272\127\206\025\064\020\271\057\177
+\036\260\250\211\140\241\212\302\167\014\120\112\233\000\213\330
+\213\364\101\342\320\203\212\112\034\024\006\260\243\150\005\160
+\061\060\247\123\233\016\351\112\240\130\151\147\016\256\235\366
+\245\054\101\277\074\006\153\344\131\314\155\020\361\226\157\037
+\337\364\004\002\244\237\105\076\310\330\372\066\106\104\120\077
+\202\227\221\037\050\333\030\021\214\052\344\145\203\127\022\022
+\214\027\077\224\066\376\135\260\300\004\167\023\270\364\025\325
+\077\070\314\224\072\125\320\254\230\365\272\000\137\340\206\031
+\201\170\057\050\300\176\323\314\102\012\365\256\120\240\321\076
+\306\241\161\354\077\240\040\214\146\072\211\264\216\324\330\261
+\115\045\107\356\057\210\310\265\341\005\105\300\276\024\161\336
+\172\375\216\173\175\115\010\226\245\022\163\360\055\312\067\047
+\164\022\047\114\313\266\227\351\331\256\010\155\132\071\100\335
+\005\107\165\152\132\041\263\243\030\317\116\367\056\127\267\230
+\160\136\310\304\170\260\142
+END
+
+# Trust for Certificate "Comodo Trusted Services root"
+# Issuer: CN=Trusted Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number: 1 (0x1)
+# Subject: CN=Trusted Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Jan 01 00:00:00 2004
+# Not Valid After : Sun Dec 31 23:59:59 2028
+# Fingerprint (MD5): 91:1B:3F:6E:CD:9E:AB:EE:07:FE:1F:71:D2:B3:61:27
+# Fingerprint (SHA1): E1:9F:E3:0E:8B:84:60:9E:80:9B:17:0D:72:A8:C5:BA:6E:14:09:BD
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Comodo Trusted Services root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\341\237\343\016\213\204\140\236\200\233\027\015\162\250\305\272
+\156\024\011\275
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\221\033\077\156\315\236\253\356\007\376\037\161\322\263\141\047
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\033\060\031\006\003\125\004\010\014\022\107\162\145\141\164\145
+\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016
+\006\003\125\004\007\014\007\123\141\154\146\157\162\144\061\032
+\060\030\006\003\125\004\012\014\021\103\157\155\157\144\157\040
+\103\101\040\114\151\155\151\164\145\144\061\045\060\043\006\003
+\125\004\003\014\034\124\162\165\163\164\145\144\040\103\145\162
+\164\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145
+\163
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "QuoVadis Root CA"
+#
+# Issuer: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM
+# Serial Number: 985026699 (0x3ab6508b)
+# Subject: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM
+# Not Valid Before: Mon Mar 19 18:33:33 2001
+# Not Valid After : Wed Mar 17 18:33:33 2021
+# Fingerprint (MD5): 27:DE:36:FE:72:B7:00:03:00:9D:F4:F0:1E:6C:04:24
+# Fingerprint (SHA1): DE:3F:40:BD:50:93:D3:9B:6C:60:F6:DA:BC:07:62:01:00:89:76:C9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\045\060\043\006\003
+\125\004\013\023\034\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\056\060\054\006\003\125\004\003\023\045\121\165\157\126
+\141\144\151\163\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\045\060\043\006\003
+\125\004\013\023\034\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\056\060\054\006\003\125\004\003\023\045\121\165\157\126
+\141\144\151\163\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\072\266\120\213
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\320\060\202\004\270\240\003\002\001\002\002\004\072
+\266\120\213\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\177\061\013\060\011\006\003\125\004\006\023\002\102
+\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157\126
+\141\144\151\163\040\114\151\155\151\164\145\144\061\045\060\043
+\006\003\125\004\013\023\034\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\061\056\060\054\006\003\125\004\003\023\045\121\165
+\157\126\141\144\151\163\040\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\060\036\027\015\060\061\060\063\061\071\061\070\063
+\063\063\063\132\027\015\062\061\060\063\061\067\061\070\063\063
+\063\063\132\060\177\061\013\060\011\006\003\125\004\006\023\002
+\102\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157
+\126\141\144\151\163\040\114\151\155\151\164\145\144\061\045\060
+\043\006\003\125\004\013\023\034\122\157\157\164\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\061\056\060\054\006\003\125\004\003\023\045\121
+\165\157\126\141\144\151\163\040\122\157\157\164\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\277\141\265\225\123\272\127\374\372\362\147
+\013\072\032\337\021\200\144\225\264\321\274\315\172\317\366\051
+\226\056\044\124\100\044\070\367\032\205\334\130\114\313\244\047
+\102\227\320\237\203\212\303\344\006\003\133\000\245\121\036\160
+\004\164\342\301\324\072\253\327\255\073\007\030\005\216\375\203
+\254\352\146\331\030\033\150\212\365\127\032\230\272\365\355\166
+\075\174\331\336\224\152\073\113\027\301\325\217\275\145\070\072
+\225\320\075\125\066\116\337\171\127\061\052\036\330\131\145\111
+\130\040\230\176\253\137\176\237\351\326\115\354\203\164\251\307
+\154\330\356\051\112\205\052\006\024\371\124\346\323\332\145\007
+\213\143\067\022\327\320\354\303\173\040\101\104\243\355\313\240
+\027\341\161\145\316\035\146\061\367\166\001\031\310\175\003\130
+\266\225\111\035\246\022\046\350\306\014\166\340\343\146\313\352
+\135\246\046\356\345\314\137\275\147\247\001\047\016\242\312\124
+\305\261\172\225\035\161\036\112\051\212\003\334\152\105\301\244
+\031\136\157\066\315\303\242\260\267\376\134\070\342\122\274\370
+\104\103\346\220\273\002\003\001\000\001\243\202\002\122\060\202
+\002\116\060\075\006\010\053\006\001\005\005\007\001\001\004\061
+\060\057\060\055\006\010\053\006\001\005\005\007\060\001\206\041
+\150\164\164\160\163\072\057\057\157\143\163\160\056\161\165\157
+\166\141\144\151\163\157\146\146\163\150\157\162\145\056\143\157
+\155\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001
+\001\377\060\202\001\032\006\003\125\035\040\004\202\001\021\060
+\202\001\015\060\202\001\011\006\011\053\006\001\004\001\276\130
+\000\001\060\201\373\060\201\324\006\010\053\006\001\005\005\007
+\002\002\060\201\307\032\201\304\122\145\154\151\141\156\143\145
+\040\157\156\040\164\150\145\040\121\165\157\126\141\144\151\163
+\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164
+\145\040\142\171\040\141\156\171\040\160\141\162\164\171\040\141
+\163\163\165\155\145\163\040\141\143\143\145\160\164\141\156\143
+\145\040\157\146\040\164\150\145\040\164\150\145\156\040\141\160
+\160\154\151\143\141\142\154\145\040\163\164\141\156\144\141\162
+\144\040\164\145\162\155\163\040\141\156\144\040\143\157\156\144
+\151\164\151\157\156\163\040\157\146\040\165\163\145\054\040\143
+\145\162\164\151\146\151\143\141\164\151\157\156\040\160\162\141
+\143\164\151\143\145\163\054\040\141\156\144\040\164\150\145\040
+\121\165\157\126\141\144\151\163\040\103\145\162\164\151\146\151
+\143\141\164\145\040\120\157\154\151\143\171\056\060\042\006\010
+\053\006\001\005\005\007\002\001\026\026\150\164\164\160\072\057
+\057\167\167\167\056\161\165\157\166\141\144\151\163\056\142\155
+\060\035\006\003\125\035\016\004\026\004\024\213\113\155\355\323
+\051\271\006\031\354\071\071\251\360\227\204\152\313\357\337\060
+\201\256\006\003\125\035\043\004\201\246\060\201\243\200\024\213
+\113\155\355\323\051\271\006\031\354\071\071\251\360\227\204\152
+\313\357\337\241\201\204\244\201\201\060\177\061\013\060\011\006
+\003\125\004\006\023\002\102\115\061\031\060\027\006\003\125\004
+\012\023\020\121\165\157\126\141\144\151\163\040\114\151\155\151
+\164\145\144\061\045\060\043\006\003\125\004\013\023\034\122\157
+\157\164\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171\061\056\060\054\006\003
+\125\004\003\023\045\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171\202\004\072\266\120\213
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\212\324\024\265\376\364\232\222\247\031\324\244
+\176\162\030\217\331\150\174\122\044\335\147\157\071\172\304\252
+\136\075\342\130\260\115\160\230\204\141\350\033\343\151\030\016
+\316\373\107\120\240\116\377\360\044\037\275\262\316\365\047\374
+\354\057\123\252\163\173\003\075\164\156\346\026\236\353\245\056
+\304\277\126\047\120\053\142\272\276\113\034\074\125\134\101\035
+\044\276\202\040\107\135\325\104\176\172\026\150\337\175\115\121
+\160\170\127\035\063\036\375\002\231\234\014\315\012\005\117\307
+\273\216\244\165\372\112\155\261\200\216\011\126\271\234\032\140
+\376\135\301\327\172\334\021\170\320\326\135\301\267\325\255\062
+\231\003\072\212\314\124\045\071\061\201\173\023\042\121\272\106
+\154\241\273\236\372\004\154\111\046\164\217\322\163\353\314\060
+\242\346\352\131\042\207\370\227\365\016\375\352\314\222\244\026
+\304\122\030\352\041\316\261\361\346\204\201\345\272\251\206\050
+\362\103\132\135\022\235\254\036\331\250\345\012\152\247\177\240
+\207\051\317\362\211\115\324\354\305\342\346\172\320\066\043\212
+\112\164\066\371
+END
+
+# Trust for Certificate "QuoVadis Root CA"
+# Issuer: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM
+# Serial Number: 985026699 (0x3ab6508b)
+# Subject: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM
+# Not Valid Before: Mon Mar 19 18:33:33 2001
+# Not Valid After : Wed Mar 17 18:33:33 2021
+# Fingerprint (MD5): 27:DE:36:FE:72:B7:00:03:00:9D:F4:F0:1E:6C:04:24
+# Fingerprint (SHA1): DE:3F:40:BD:50:93:D3:9B:6C:60:F6:DA:BC:07:62:01:00:89:76:C9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\336\077\100\275\120\223\323\233\154\140\366\332\274\007\142\001
+\000\211\166\311
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\047\336\066\376\162\267\000\003\000\235\364\360\036\154\004\044
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\045\060\043\006\003
+\125\004\013\023\034\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\056\060\054\006\003\125\004\003\023\045\121\165\157\126
+\141\144\151\163\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\072\266\120\213
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "QuoVadis Root CA 2"
+#
+# Issuer: CN=QuoVadis Root CA 2,O=QuoVadis Limited,C=BM
+# Serial Number: 1289 (0x509)
+# Subject: CN=QuoVadis Root CA 2,O=QuoVadis Limited,C=BM
+# Not Valid Before: Fri Nov 24 18:27:00 2006
+# Not Valid After : Mon Nov 24 18:23:33 2031
+# Fingerprint (MD5): 5E:39:7B:DD:F8:BA:EC:82:E9:AC:62:BA:0C:54:00:2B
+# Fingerprint (SHA1): CA:3A:FB:CF:12:40:36:4B:44:B2:16:20:88:80:48:39:19:93:7C:F7
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\005\011
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\267\060\202\003\237\240\003\002\001\002\002\002\005
+\011\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\062\060\036\027\015\060\066\061\061\062
+\064\061\070\062\067\060\060\132\027\015\063\061\061\061\062\064
+\061\070\062\063\063\063\132\060\105\061\013\060\011\006\003\125
+\004\006\023\002\102\115\061\031\060\027\006\003\125\004\012\023
+\020\121\165\157\126\141\144\151\163\040\114\151\155\151\164\145
+\144\061\033\060\031\006\003\125\004\003\023\022\121\165\157\126
+\141\144\151\163\040\122\157\157\164\040\103\101\040\062\060\202
+\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000\232
+\030\312\113\224\015\000\055\257\003\051\212\360\017\201\310\256
+\114\031\205\035\010\237\253\051\104\205\363\057\201\255\062\036
+\220\106\277\243\206\046\032\036\376\176\034\030\072\134\234\140
+\027\052\072\164\203\063\060\175\141\124\021\313\355\253\340\346
+\322\242\176\365\153\157\030\267\012\013\055\375\351\076\357\012
+\306\263\020\351\334\302\106\027\370\135\375\244\332\377\236\111
+\132\234\346\063\346\044\226\367\077\272\133\053\034\172\065\302
+\326\147\376\253\146\120\213\155\050\140\053\357\327\140\303\307
+\223\274\215\066\221\363\177\370\333\021\023\304\234\167\166\301
+\256\267\002\152\201\172\251\105\203\342\005\346\271\126\301\224
+\067\217\110\161\143\042\354\027\145\007\225\212\113\337\217\306
+\132\012\345\260\343\137\136\153\021\253\014\371\205\353\104\351
+\370\004\163\362\351\376\134\230\214\365\163\257\153\264\176\315
+\324\134\002\053\114\071\341\262\225\225\055\102\207\327\325\263
+\220\103\267\154\023\361\336\335\366\304\370\211\077\321\165\365
+\222\303\221\325\212\210\320\220\354\334\155\336\211\302\145\161
+\226\213\015\003\375\234\277\133\026\254\222\333\352\376\171\174
+\255\353\257\367\026\313\333\315\045\053\345\037\373\232\237\342
+\121\314\072\123\014\110\346\016\275\311\264\166\006\122\346\021
+\023\205\162\143\003\004\340\004\066\053\040\031\002\350\164\247
+\037\266\311\126\146\360\165\045\334\147\301\016\141\140\210\263
+\076\321\250\374\243\332\035\260\321\261\043\124\337\104\166\155
+\355\101\330\301\262\042\266\123\034\337\065\035\334\241\167\052
+\061\344\055\365\345\345\333\310\340\377\345\200\327\013\143\240
+\377\063\241\017\272\054\025\025\352\227\263\322\242\265\276\362
+\214\226\036\032\217\035\154\244\141\067\271\206\163\063\327\227
+\226\236\043\175\202\244\114\201\342\241\321\272\147\137\225\007
+\243\047\021\356\026\020\173\274\105\112\114\262\004\322\253\357
+\325\375\014\121\316\120\152\010\061\371\221\332\014\217\144\134
+\003\303\072\213\040\077\156\215\147\075\072\326\376\175\133\210
+\311\136\373\314\141\334\213\063\167\323\104\062\065\011\142\004
+\222\026\020\330\236\047\107\373\073\041\343\370\353\035\133\002
+\003\001\000\001\243\201\260\060\201\255\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\013\006\003\125
+\035\017\004\004\003\002\001\006\060\035\006\003\125\035\016\004
+\026\004\024\032\204\142\274\110\114\063\045\004\324\356\320\366
+\003\304\031\106\321\224\153\060\156\006\003\125\035\043\004\147
+\060\145\200\024\032\204\142\274\110\114\063\045\004\324\356\320
+\366\003\304\031\106\321\224\153\241\111\244\107\060\105\061\013
+\060\011\006\003\125\004\006\023\002\102\115\061\031\060\027\006
+\003\125\004\012\023\020\121\165\157\126\141\144\151\163\040\114
+\151\155\151\164\145\144\061\033\060\031\006\003\125\004\003\023
+\022\121\165\157\126\141\144\151\163\040\122\157\157\164\040\103
+\101\040\062\202\002\005\011\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\003\202\002\001\000\076\012\026\115\237
+\006\133\250\256\161\135\057\005\057\147\346\023\105\203\304\066
+\366\363\300\046\014\015\265\107\144\135\370\264\162\311\106\245
+\003\030\047\125\211\170\175\166\352\226\064\200\027\040\334\347
+\203\370\215\374\007\270\332\137\115\056\147\262\204\375\331\104
+\374\167\120\201\346\174\264\311\015\013\162\123\370\166\007\007
+\101\107\226\014\373\340\202\046\223\125\214\376\042\037\140\145
+\174\137\347\046\263\367\062\220\230\120\324\067\161\125\366\222
+\041\170\367\225\171\372\370\055\046\207\146\126\060\167\246\067
+\170\063\122\020\130\256\077\141\216\362\152\261\357\030\176\112
+\131\143\312\215\242\126\325\247\057\274\126\037\317\071\301\342
+\373\012\250\025\054\175\115\172\143\306\154\227\104\074\322\157
+\303\112\027\012\370\220\322\127\242\031\121\245\055\227\101\332
+\007\117\251\120\332\220\215\224\106\341\076\360\224\375\020\000
+\070\365\073\350\100\341\264\156\126\032\040\314\157\130\215\355
+\056\105\217\326\351\223\077\347\261\054\337\072\326\042\214\334
+\204\273\042\157\320\370\344\306\071\351\004\210\074\303\272\353
+\125\172\155\200\231\044\365\154\001\373\370\227\260\224\133\353
+\375\322\157\361\167\150\015\065\144\043\254\270\125\241\003\321
+\115\102\031\334\370\165\131\126\243\371\250\111\171\370\257\016
+\271\021\240\174\267\152\355\064\320\266\046\142\070\032\207\014
+\370\350\375\056\323\220\177\007\221\052\035\326\176\134\205\203
+\231\260\070\010\077\351\136\371\065\007\344\311\142\156\127\177
+\247\120\225\367\272\310\233\346\216\242\001\305\326\146\277\171
+\141\363\074\034\341\271\202\134\135\240\303\351\330\110\275\031
+\242\021\024\031\156\262\206\033\150\076\110\067\032\210\267\135
+\226\136\234\307\357\047\142\010\342\221\031\134\322\361\041\335
+\272\027\102\202\227\161\201\123\061\251\237\366\175\142\277\162
+\341\243\223\035\314\212\046\132\011\070\320\316\327\015\200\026
+\264\170\245\072\207\114\215\212\245\325\106\227\362\054\020\271
+\274\124\042\300\001\120\151\103\236\364\262\357\155\370\354\332
+\361\343\261\357\337\221\217\124\052\013\045\301\046\031\304\122
+\020\005\145\325\202\020\352\302\061\315\056
+END
+
+# Trust for Certificate "QuoVadis Root CA 2"
+# Issuer: CN=QuoVadis Root CA 2,O=QuoVadis Limited,C=BM
+# Serial Number: 1289 (0x509)
+# Subject: CN=QuoVadis Root CA 2,O=QuoVadis Limited,C=BM
+# Not Valid Before: Fri Nov 24 18:27:00 2006
+# Not Valid After : Mon Nov 24 18:23:33 2031
+# Fingerprint (MD5): 5E:39:7B:DD:F8:BA:EC:82:E9:AC:62:BA:0C:54:00:2B
+# Fingerprint (SHA1): CA:3A:FB:CF:12:40:36:4B:44:B2:16:20:88:80:48:39:19:93:7C:F7
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\312\072\373\317\022\100\066\113\104\262\026\040\210\200\110\071
+\031\223\174\367
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\136\071\173\335\370\272\354\202\351\254\142\272\014\124\000\053
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\005\011
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "QuoVadis Root CA 3"
+#
+# Issuer: CN=QuoVadis Root CA 3,O=QuoVadis Limited,C=BM
+# Serial Number: 1478 (0x5c6)
+# Subject: CN=QuoVadis Root CA 3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Fri Nov 24 19:11:23 2006
+# Not Valid After : Mon Nov 24 19:06:44 2031
+# Fingerprint (MD5): 31:85:3C:62:94:97:63:B9:AA:FD:89:4E:AF:6F:E0:CF
+# Fingerprint (SHA1): 1F:49:14:F7:D8:74:95:1D:DD:AE:02:C0:BE:FD:3A:2D:82:75:51:85
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\005\306
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\235\060\202\004\205\240\003\002\001\002\002\002\005
+\306\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\063\060\036\027\015\060\066\061\061\062
+\064\061\071\061\061\062\063\132\027\015\063\061\061\061\062\064
+\061\071\060\066\064\064\132\060\105\061\013\060\011\006\003\125
+\004\006\023\002\102\115\061\031\060\027\006\003\125\004\012\023
+\020\121\165\157\126\141\144\151\163\040\114\151\155\151\164\145
+\144\061\033\060\031\006\003\125\004\003\023\022\121\165\157\126
+\141\144\151\163\040\122\157\157\164\040\103\101\040\063\060\202
+\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000\314
+\127\102\026\124\234\346\230\323\323\115\356\376\355\307\237\103
+\071\112\145\263\350\026\210\064\333\015\131\221\164\317\222\270
+\004\100\255\002\113\061\253\274\215\221\150\330\040\016\032\001
+\342\032\173\116\027\135\342\212\267\077\231\032\315\353\141\253
+\302\145\246\037\267\267\275\267\217\374\375\160\217\013\240\147
+\276\001\242\131\317\161\346\017\051\166\377\261\126\171\105\053
+\037\236\172\124\350\243\051\065\150\244\001\117\017\244\056\067
+\357\033\277\343\217\020\250\162\253\130\127\347\124\206\310\311
+\363\133\332\054\332\135\216\156\074\243\076\332\373\202\345\335
+\362\134\262\005\063\157\212\066\316\320\023\116\377\277\112\014
+\064\114\246\303\041\275\120\004\125\353\261\273\235\373\105\036
+\144\025\336\125\001\214\002\166\265\313\241\077\102\151\274\057
+\275\150\103\026\126\211\052\067\141\221\375\246\256\116\300\313
+\024\145\224\067\113\222\006\357\004\320\310\234\210\333\013\173
+\201\257\261\075\052\304\145\072\170\266\356\334\200\261\322\323
+\231\234\072\356\153\132\153\263\215\267\325\316\234\302\276\245
+\113\057\026\261\236\150\073\006\157\256\175\237\370\336\354\314
+\051\247\230\243\045\103\057\357\361\137\046\341\210\115\370\136
+\156\327\331\024\156\031\063\151\247\073\204\211\223\304\123\125
+\023\241\121\170\100\370\270\311\242\356\173\272\122\102\203\236
+\024\355\005\122\132\131\126\247\227\374\235\077\012\051\330\334
+\117\221\016\023\274\336\225\244\337\213\231\276\254\233\063\210
+\357\265\201\257\033\306\042\123\310\366\307\356\227\024\260\305
+\174\170\122\310\360\316\156\167\140\204\246\351\052\166\040\355
+\130\001\027\060\223\351\032\213\340\163\143\331\152\222\224\111
+\116\264\255\112\205\304\243\042\060\374\011\355\150\042\163\246
+\210\014\125\041\130\305\341\072\237\052\335\312\341\220\340\331
+\163\253\154\200\270\350\013\144\223\240\234\214\031\377\263\322
+\014\354\221\046\207\212\263\242\341\160\217\054\012\345\315\155
+\150\121\353\332\077\005\177\213\062\346\023\134\153\376\137\100
+\342\042\310\264\264\144\117\326\272\175\110\076\250\151\014\327
+\273\206\161\311\163\270\077\073\235\045\113\332\377\100\353\002
+\003\001\000\001\243\202\001\225\060\202\001\221\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\201\341
+\006\003\125\035\040\004\201\331\060\201\326\060\201\323\006\011
+\053\006\001\004\001\276\130\000\003\060\201\305\060\201\223\006
+\010\053\006\001\005\005\007\002\002\060\201\206\032\201\203\101
+\156\171\040\165\163\145\040\157\146\040\164\150\151\163\040\103
+\145\162\164\151\146\151\143\141\164\145\040\143\157\156\163\164
+\151\164\165\164\145\163\040\141\143\143\145\160\164\141\156\143
+\145\040\157\146\040\164\150\145\040\121\165\157\126\141\144\151
+\163\040\122\157\157\164\040\103\101\040\063\040\103\145\162\164
+\151\146\151\143\141\164\145\040\120\157\154\151\143\171\040\057
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\120
+\162\141\143\164\151\143\145\040\123\164\141\164\145\155\145\156
+\164\056\060\055\006\010\053\006\001\005\005\007\002\001\026\041
+\150\164\164\160\072\057\057\167\167\167\056\161\165\157\166\141
+\144\151\163\147\154\157\142\141\154\056\143\157\155\057\143\160
+\163\060\013\006\003\125\035\017\004\004\003\002\001\006\060\035
+\006\003\125\035\016\004\026\004\024\362\300\023\340\202\103\076
+\373\356\057\147\062\226\065\134\333\270\313\002\320\060\156\006
+\003\125\035\043\004\147\060\145\200\024\362\300\023\340\202\103
+\076\373\356\057\147\062\226\065\134\333\270\313\002\320\241\111
+\244\107\060\105\061\013\060\011\006\003\125\004\006\023\002\102
+\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157\126
+\141\144\151\163\040\114\151\155\151\164\145\144\061\033\060\031
+\006\003\125\004\003\023\022\121\165\157\126\141\144\151\163\040
+\122\157\157\164\040\103\101\040\063\202\002\005\306\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\002\001
+\000\117\255\240\054\114\372\300\362\157\367\146\125\253\043\064
+\356\347\051\332\303\133\266\260\203\331\320\320\342\041\373\363
+\140\247\073\135\140\123\047\242\233\366\010\042\052\347\277\240
+\162\345\234\044\152\061\261\220\172\047\333\204\021\211\047\246
+\167\132\070\327\277\254\206\374\356\135\203\274\006\306\321\167
+\153\017\155\044\057\113\172\154\247\007\226\312\343\204\237\255
+\210\213\035\253\026\215\133\146\027\331\026\364\213\200\322\335
+\370\262\166\303\374\070\023\252\014\336\102\151\053\156\363\074
+\353\200\047\333\365\246\104\015\237\132\125\131\013\325\015\122
+\110\305\256\237\362\057\200\305\352\062\120\065\022\227\056\301
+\341\377\361\043\210\121\070\237\362\146\126\166\347\017\121\227
+\245\122\014\115\111\121\225\066\075\277\242\113\014\020\035\206
+\231\114\252\363\162\021\223\344\352\366\233\332\250\135\247\115
+\267\236\002\256\163\000\310\332\043\003\350\371\352\031\164\142
+\000\224\313\042\040\276\224\247\131\265\202\152\276\231\171\172
+\251\362\112\044\122\367\164\375\272\116\346\250\035\002\156\261
+\015\200\104\301\256\323\043\067\137\273\205\174\053\222\056\350
+\176\245\213\335\231\341\277\047\157\055\135\252\173\207\376\012
+\335\113\374\216\365\046\344\156\160\102\156\063\354\061\236\173
+\223\301\344\311\151\032\075\300\153\116\042\155\356\253\130\115
+\306\320\101\301\053\352\117\022\207\136\353\105\330\154\365\230
+\002\323\240\330\125\212\006\231\031\242\240\167\321\060\236\254
+\314\165\356\203\365\260\142\071\317\154\127\342\114\322\221\013
+\016\165\050\033\232\277\375\032\103\361\312\167\373\073\217\141
+\270\151\050\026\102\004\136\160\052\034\041\330\217\341\275\043
+\133\055\164\100\222\331\143\031\015\163\335\151\274\142\107\274
+\340\164\053\262\353\175\276\101\033\265\300\106\305\241\042\313
+\137\116\301\050\222\336\030\272\325\052\050\273\021\213\027\223
+\230\231\140\224\134\043\317\132\047\227\136\013\005\006\223\067
+\036\073\151\066\353\251\236\141\035\217\062\332\216\014\326\164
+\076\173\011\044\332\001\167\107\304\073\315\064\214\231\365\312
+\341\045\141\063\262\131\033\342\156\327\067\127\266\015\251\022
+\332
+END
+
+# Trust for Certificate "QuoVadis Root CA 3"
+# Issuer: CN=QuoVadis Root CA 3,O=QuoVadis Limited,C=BM
+# Serial Number: 1478 (0x5c6)
+# Subject: CN=QuoVadis Root CA 3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Fri Nov 24 19:11:23 2006
+# Not Valid After : Mon Nov 24 19:06:44 2031
+# Fingerprint (MD5): 31:85:3C:62:94:97:63:B9:AA:FD:89:4E:AF:6F:E0:CF
+# Fingerprint (SHA1): 1F:49:14:F7:D8:74:95:1D:DD:AE:02:C0:BE:FD:3A:2D:82:75:51:85
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\037\111\024\367\330\164\225\035\335\256\002\300\276\375\072\055
+\202\165\121\205
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\061\205\074\142\224\227\143\271\252\375\211\116\257\157\340\317
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\033\060\031\006\003
+\125\004\003\023\022\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\005\306
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Security Communication Root CA"
+#
+# Issuer: OU=Security Communication RootCA1,O=SECOM Trust.net,C=JP
+# Serial Number: 0 (0x0)
+# Subject: OU=Security Communication RootCA1,O=SECOM Trust.net,C=JP
+# Not Valid Before: Tue Sep 30 04:20:49 2003
+# Not Valid After : Sat Sep 30 04:20:49 2023
+# Fingerprint (MD5): F1:BC:63:6A:54:E0:B5:27:F5:CD:E7:1A:E3:4D:6E:4A
+# Fingerprint (SHA1): 36:B1:2B:49:F9:81:9E:D7:4C:9E:BC:38:0F:C6:56:8F:5D:AC:B2:F7
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Security Communication Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\120\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\030\060\026\006\003\125\004\012\023\017\123\105\103\117\115\040
+\124\162\165\163\164\056\156\145\164\061\047\060\045\006\003\125
+\004\013\023\036\123\145\143\165\162\151\164\171\040\103\157\155
+\155\165\156\151\143\141\164\151\157\156\040\122\157\157\164\103
+\101\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\030\060\026\006\003\125\004\012\023\017\123\105\103\117\115\040
+\124\162\165\163\164\056\156\145\164\061\047\060\045\006\003\125
+\004\013\023\036\123\145\143\165\162\151\164\171\040\103\157\155
+\155\165\156\151\143\141\164\151\157\156\040\122\157\157\164\103
+\101\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\132\060\202\002\102\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\120\061\013\060\011\006\003\125\004\006\023\002\112\120\061\030
+\060\026\006\003\125\004\012\023\017\123\105\103\117\115\040\124
+\162\165\163\164\056\156\145\164\061\047\060\045\006\003\125\004
+\013\023\036\123\145\143\165\162\151\164\171\040\103\157\155\155
+\165\156\151\143\141\164\151\157\156\040\122\157\157\164\103\101
+\061\060\036\027\015\060\063\060\071\063\060\060\064\062\060\064
+\071\132\027\015\062\063\060\071\063\060\060\064\062\060\064\071
+\132\060\120\061\013\060\011\006\003\125\004\006\023\002\112\120
+\061\030\060\026\006\003\125\004\012\023\017\123\105\103\117\115
+\040\124\162\165\163\164\056\156\145\164\061\047\060\045\006\003
+\125\004\013\023\036\123\145\143\165\162\151\164\171\040\103\157
+\155\155\165\156\151\143\141\164\151\157\156\040\122\157\157\164
+\103\101\061\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\263\263\376\177\323\155\261\357\026\174\127\245
+\014\155\166\212\057\113\277\144\373\114\356\212\360\363\051\174
+\365\377\356\052\340\351\351\272\133\144\042\232\232\157\054\072
+\046\151\121\005\231\046\334\325\034\152\161\306\232\175\036\235
+\335\174\154\306\214\147\147\112\076\370\161\260\031\047\251\011
+\014\246\225\277\113\214\014\372\125\230\073\330\350\042\241\113
+\161\070\171\254\227\222\151\263\211\176\352\041\150\006\230\024
+\226\207\322\141\066\274\155\047\126\236\127\356\300\300\126\375
+\062\317\244\331\216\302\043\327\215\250\363\330\045\254\227\344
+\160\070\364\266\072\264\235\073\227\046\103\243\241\274\111\131
+\162\114\043\060\207\001\130\366\116\276\034\150\126\146\257\315
+\101\135\310\263\115\052\125\106\253\037\332\036\342\100\075\333
+\315\175\271\222\200\234\067\335\014\226\144\235\334\042\367\144
+\213\337\141\336\025\224\122\025\240\175\122\311\113\250\041\311
+\306\261\355\313\303\225\140\321\017\360\253\160\370\337\313\115
+\176\354\326\372\253\331\275\177\124\362\245\351\171\372\331\326
+\166\044\050\163\002\003\001\000\001\243\077\060\075\060\035\006
+\003\125\035\016\004\026\004\024\240\163\111\231\150\334\205\133
+\145\343\233\050\057\127\237\275\063\274\007\110\060\013\006\003
+\125\035\017\004\004\003\002\001\006\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\150\100
+\251\250\273\344\117\135\171\263\005\265\027\263\140\023\353\306
+\222\135\340\321\323\152\376\373\276\233\155\277\307\005\155\131
+\040\304\034\360\267\332\204\130\002\143\372\110\026\357\117\245
+\013\367\112\230\362\077\236\033\255\107\153\143\316\010\107\353
+\122\077\170\234\257\115\256\370\325\117\317\232\230\052\020\101
+\071\122\304\335\331\233\016\357\223\001\256\262\056\312\150\102
+\044\102\154\260\263\072\076\315\351\332\110\304\025\313\351\371
+\007\017\222\120\111\212\335\061\227\137\311\351\067\252\073\131
+\145\227\224\062\311\263\237\076\072\142\130\305\111\255\142\016
+\161\245\062\252\057\306\211\166\103\100\023\023\147\075\242\124
+\045\020\313\361\072\362\331\372\333\111\126\273\246\376\247\101
+\065\303\340\210\141\311\210\307\337\066\020\042\230\131\352\260
+\112\373\126\026\163\156\254\115\367\042\241\117\255\035\172\055
+\105\047\345\060\301\136\362\332\023\313\045\102\121\225\107\003
+\214\154\041\314\164\102\355\123\377\063\213\217\017\127\001\026
+\057\317\246\356\311\160\042\024\275\375\276\154\013\003
+END
+
+# Trust for Certificate "Security Communication Root CA"
+# Issuer: OU=Security Communication RootCA1,O=SECOM Trust.net,C=JP
+# Serial Number: 0 (0x0)
+# Subject: OU=Security Communication RootCA1,O=SECOM Trust.net,C=JP
+# Not Valid Before: Tue Sep 30 04:20:49 2003
+# Not Valid After : Sat Sep 30 04:20:49 2023
+# Fingerprint (MD5): F1:BC:63:6A:54:E0:B5:27:F5:CD:E7:1A:E3:4D:6E:4A
+# Fingerprint (SHA1): 36:B1:2B:49:F9:81:9E:D7:4C:9E:BC:38:0F:C6:56:8F:5D:AC:B2:F7
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Security Communication Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\066\261\053\111\371\201\236\327\114\236\274\070\017\306\126\217
+\135\254\262\367
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\361\274\143\152\124\340\265\047\365\315\347\032\343\115\156\112
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\030\060\026\006\003\125\004\012\023\017\123\105\103\117\115\040
+\124\162\165\163\164\056\156\145\164\061\047\060\045\006\003\125
+\004\013\023\036\123\145\143\165\162\151\164\171\040\103\157\155
+\155\165\156\151\143\141\164\151\157\156\040\122\157\157\164\103
+\101\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Sonera Class 1 Root CA"
+#
+# Issuer: CN=Sonera Class1 CA,O=Sonera,C=FI
+# Serial Number: 36 (0x24)
+# Subject: CN=Sonera Class1 CA,O=Sonera,C=FI
+# Not Valid Before: Fri Apr 06 10:49:13 2001
+# Not Valid After : Tue Apr 06 10:49:13 2021
+# Fingerprint (MD5): 33:B7:84:F5:5F:27:D7:68:27:DE:14:DE:12:2A:ED:6F
+# Fingerprint (SHA1): 07:47:22:01:99:CE:74:B9:7C:B0:3D:79:B2:64:A2:C8:55:E9:33:FF
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Sonera Class 1 Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061
+\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141
+\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162
+\141\040\103\154\141\163\163\061\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061
+\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141
+\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162
+\141\040\103\154\141\163\163\061\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\044
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\040\060\202\002\010\240\003\002\001\002\002\001\044
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061\017
+\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141\061
+\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162\141
+\040\103\154\141\163\163\061\040\103\101\060\036\027\015\060\061
+\060\064\060\066\061\060\064\071\061\063\132\027\015\062\061\060
+\064\060\066\061\060\064\071\061\063\132\060\071\061\013\060\011
+\006\003\125\004\006\023\002\106\111\061\017\060\015\006\003\125
+\004\012\023\006\123\157\156\145\162\141\061\031\060\027\006\003
+\125\004\003\023\020\123\157\156\145\162\141\040\103\154\141\163
+\163\061\040\103\101\060\202\001\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
+\012\002\202\001\001\000\265\211\037\053\117\147\012\171\377\305
+\036\370\177\074\355\321\176\332\260\315\155\057\066\254\064\306
+\333\331\144\027\010\143\060\063\042\212\114\356\216\273\017\015
+\102\125\311\235\056\245\357\367\247\214\303\253\271\227\313\216
+\357\077\025\147\250\202\162\143\123\017\101\214\175\020\225\044
+\241\132\245\006\372\222\127\235\372\245\001\362\165\351\037\274
+\126\046\122\116\170\031\145\130\125\003\130\300\024\256\214\174
+\125\137\160\133\167\043\006\066\227\363\044\265\232\106\225\344
+\337\015\013\005\105\345\321\362\035\202\273\306\023\340\376\252
+\172\375\151\060\224\363\322\105\205\374\362\062\133\062\336\350
+\154\135\037\313\244\042\164\260\200\216\135\224\367\006\000\113
+\251\324\136\056\065\120\011\363\200\227\364\014\027\256\071\330
+\137\315\063\301\034\312\211\302\042\367\105\022\355\136\022\223
+\235\143\253\202\056\271\353\102\101\104\313\112\032\000\202\015
+\236\371\213\127\076\114\307\027\355\054\213\162\063\137\162\172
+\070\126\325\346\331\256\005\032\035\165\105\261\313\245\045\034
+\022\127\066\375\042\067\002\003\001\000\001\243\063\060\061\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\021\006\003\125\035\016\004\012\004\010\107\342\014\213\366
+\123\210\122\060\013\006\003\125\035\017\004\004\003\002\001\006
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\213\032\262\311\135\141\264\341\271\053\271\123
+\321\262\205\235\167\216\026\356\021\075\333\302\143\331\133\227
+\145\373\022\147\330\052\134\266\253\345\136\303\267\026\057\310
+\350\253\035\212\375\253\032\174\325\137\143\317\334\260\335\167
+\271\250\346\322\042\070\207\007\024\331\377\276\126\265\375\007
+\016\074\125\312\026\314\247\246\167\067\373\333\134\037\116\131
+\006\207\243\003\103\365\026\253\267\204\275\116\357\237\061\067
+\360\106\361\100\266\321\014\245\144\370\143\136\041\333\125\116
+\117\061\166\234\020\141\216\266\123\072\243\021\276\257\155\174
+\036\275\256\055\342\014\151\307\205\123\150\242\141\272\305\076
+\264\171\124\170\236\012\307\002\276\142\321\021\202\113\145\057
+\221\132\302\250\207\261\126\150\224\171\371\045\367\301\325\256
+\032\270\273\075\217\251\212\070\025\367\163\320\132\140\321\200
+\260\360\334\325\120\315\116\356\222\110\151\355\262\043\036\060
+\314\310\224\310\266\365\073\206\177\077\246\056\237\366\076\054
+\265\222\226\076\337\054\223\212\377\201\214\017\017\131\041\031
+\127\275\125\232
+END
+
+# Trust for Certificate "Sonera Class 1 Root CA"
+# Issuer: CN=Sonera Class1 CA,O=Sonera,C=FI
+# Serial Number: 36 (0x24)
+# Subject: CN=Sonera Class1 CA,O=Sonera,C=FI
+# Not Valid Before: Fri Apr 06 10:49:13 2001
+# Not Valid After : Tue Apr 06 10:49:13 2021
+# Fingerprint (MD5): 33:B7:84:F5:5F:27:D7:68:27:DE:14:DE:12:2A:ED:6F
+# Fingerprint (SHA1): 07:47:22:01:99:CE:74:B9:7C:B0:3D:79:B2:64:A2:C8:55:E9:33:FF
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Sonera Class 1 Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\007\107\042\001\231\316\164\271\174\260\075\171\262\144\242\310
+\125\351\063\377
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\063\267\204\365\137\047\327\150\047\336\024\336\022\052\355\157
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061
+\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141
+\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162
+\141\040\103\154\141\163\163\061\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\044
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Sonera Class 2 Root CA"
+#
+# Issuer: CN=Sonera Class2 CA,O=Sonera,C=FI
+# Serial Number: 29 (0x1d)
+# Subject: CN=Sonera Class2 CA,O=Sonera,C=FI
+# Not Valid Before: Fri Apr 06 07:29:40 2001
+# Not Valid After : Tue Apr 06 07:29:40 2021
+# Fingerprint (MD5): A3:EC:75:0F:2E:88:DF:FA:48:01:4E:0B:5C:48:6F:FB
+# Fingerprint (SHA1): 37:F7:6D:E6:07:7C:90:C5:B1:3E:93:1A:B7:41:10:B4:F2:E4:9A:27
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Sonera Class 2 Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061
+\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141
+\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162
+\141\040\103\154\141\163\163\062\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061
+\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141
+\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162
+\141\040\103\154\141\163\163\062\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\035
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\040\060\202\002\010\240\003\002\001\002\002\001\035
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061\017
+\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141\061
+\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162\141
+\040\103\154\141\163\163\062\040\103\101\060\036\027\015\060\061
+\060\064\060\066\060\067\062\071\064\060\132\027\015\062\061\060
+\064\060\066\060\067\062\071\064\060\132\060\071\061\013\060\011
+\006\003\125\004\006\023\002\106\111\061\017\060\015\006\003\125
+\004\012\023\006\123\157\156\145\162\141\061\031\060\027\006\003
+\125\004\003\023\020\123\157\156\145\162\141\040\103\154\141\163
+\163\062\040\103\101\060\202\001\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
+\012\002\202\001\001\000\220\027\112\065\235\312\360\015\226\307
+\104\372\026\067\374\110\275\275\177\200\055\065\073\341\157\250
+\147\251\277\003\034\115\214\157\062\107\325\101\150\244\023\004
+\301\065\014\232\204\103\374\134\035\377\211\263\350\027\030\315
+\221\137\373\211\343\352\277\116\135\174\033\046\323\165\171\355
+\346\204\343\127\345\255\051\304\364\072\050\347\245\173\204\066
+\151\263\375\136\166\275\243\055\231\323\220\116\043\050\175\030
+\143\361\124\073\046\235\166\133\227\102\262\377\256\360\116\354
+\335\071\225\116\203\006\177\347\111\100\310\305\001\262\124\132
+\146\035\075\374\371\351\074\012\236\201\270\160\360\001\213\344
+\043\124\174\310\256\370\220\036\000\226\162\324\124\317\141\043
+\274\352\373\235\002\225\321\266\271\161\072\151\010\077\017\264
+\341\102\307\210\365\077\230\250\247\272\034\340\161\161\357\130
+\127\201\120\172\134\153\164\106\016\203\003\230\303\216\250\156
+\362\166\062\156\047\203\302\163\363\334\030\350\264\223\352\165
+\104\153\004\140\040\161\127\207\235\363\276\240\220\043\075\212
+\044\341\332\041\333\303\002\003\001\000\001\243\063\060\061\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\021\006\003\125\035\016\004\012\004\010\112\240\252\130\204
+\323\136\074\060\013\006\003\125\035\017\004\004\003\002\001\006
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\132\316\207\371\026\162\025\127\113\035\331\233
+\347\242\046\060\354\223\147\337\326\055\322\064\257\367\070\245
+\316\253\026\271\253\057\174\065\313\254\320\017\264\114\053\374
+\200\357\153\214\221\137\066\166\367\333\263\033\031\352\364\262
+\021\375\141\161\104\277\050\263\072\035\277\263\103\350\237\277
+\334\061\010\161\260\235\215\326\064\107\062\220\306\145\044\367
+\240\112\174\004\163\217\071\157\027\214\162\265\275\113\310\172
+\370\173\203\303\050\116\234\011\352\147\077\262\147\004\033\303
+\024\332\370\347\111\044\221\320\035\152\372\141\071\357\153\347
+\041\165\006\007\330\022\264\041\040\160\102\161\201\332\074\232
+\066\276\246\133\015\152\154\232\037\221\173\371\371\357\102\272
+\116\116\236\314\014\215\224\334\331\105\234\136\354\102\120\143
+\256\364\135\304\261\022\334\312\073\250\056\235\024\132\005\165
+\267\354\327\143\342\272\065\266\004\010\221\350\332\235\234\366
+\146\265\030\254\012\246\124\046\064\063\322\033\301\324\177\032
+\072\216\013\252\062\156\333\374\117\045\237\331\062\307\226\132
+\160\254\337\114
+END
+
+# Trust for Certificate "Sonera Class 2 Root CA"
+# Issuer: CN=Sonera Class2 CA,O=Sonera,C=FI
+# Serial Number: 29 (0x1d)
+# Subject: CN=Sonera Class2 CA,O=Sonera,C=FI
+# Not Valid Before: Fri Apr 06 07:29:40 2001
+# Not Valid After : Tue Apr 06 07:29:40 2021
+# Fingerprint (MD5): A3:EC:75:0F:2E:88:DF:FA:48:01:4E:0B:5C:48:6F:FB
+# Fingerprint (SHA1): 37:F7:6D:E6:07:7C:90:C5:B1:3E:93:1A:B7:41:10:B4:F2:E4:9A:27
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Sonera Class 2 Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\067\367\155\346\007\174\220\305\261\076\223\032\267\101\020\264
+\362\344\232\047
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\243\354\165\017\056\210\337\372\110\001\116\013\134\110\157\373
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061
+\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141
+\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162
+\141\040\103\154\141\163\163\062\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\035
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Staat der Nederlanden Root CA"
+#
+# Issuer: CN=Staat der Nederlanden Root CA,O=Staat der Nederlanden,C=NL
+# Serial Number: 10000010 (0x98968a)
+# Subject: CN=Staat der Nederlanden Root CA,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Tue Dec 17 09:23:49 2002
+# Not Valid After : Wed Dec 16 09:15:38 2015
+# Fingerprint (MD5): 60:84:7C:5A:CE:DB:0C:D4:CB:A7:E9:FE:02:C6:A9:C0
+# Fingerprint (SHA1): 10:1D:FA:3F:D5:0B:CB:BB:9B:B5:60:0C:19:55:A4:1A:F4:73:3A:04
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\125\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\023\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\046\060\044\006\003\125\004\003\023\035\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\125\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\023\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\046\060\044\006\003\125\004\003\023\035\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\226\212
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\272\060\202\002\242\240\003\002\001\002\002\004\000
+\230\226\212\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\125\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\036\060\034\006\003\125\004\012\023\025\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\061\046\060\044\006\003\125\004\003\023\035\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\040\122\157\157\164\040\103\101\060\036\027\015\060\062\061
+\062\061\067\060\071\062\063\064\071\132\027\015\061\065\061\062
+\061\066\060\071\061\065\063\070\132\060\125\061\013\060\011\006
+\003\125\004\006\023\002\116\114\061\036\060\034\006\003\125\004
+\012\023\025\123\164\141\141\164\040\144\145\162\040\116\145\144
+\145\162\154\141\156\144\145\156\061\046\060\044\006\003\125\004
+\003\023\035\123\164\141\141\164\040\144\145\162\040\116\145\144
+\145\162\154\141\156\144\145\156\040\122\157\157\164\040\103\101
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\230\322\265\121\021\172\201\246\024\230\161\155\276\314\347
+\023\033\326\047\016\172\263\152\030\034\266\141\132\325\141\011
+\277\336\220\023\307\147\356\335\363\332\305\014\022\236\065\125
+\076\054\047\210\100\153\367\334\335\042\141\365\302\307\016\365
+\366\325\166\123\115\217\214\274\030\166\067\205\235\350\312\111
+\307\322\117\230\023\011\242\076\042\210\234\177\326\362\020\145
+\264\356\137\030\325\027\343\370\305\375\342\235\242\357\123\016
+\205\167\242\017\341\060\107\356\000\347\063\175\104\147\032\013
+\121\350\213\240\236\120\230\150\064\122\037\056\155\001\362\140
+\105\362\061\353\251\061\150\051\273\172\101\236\306\031\177\224
+\264\121\071\003\177\262\336\247\062\233\264\107\216\157\264\112
+\256\345\257\261\334\260\033\141\274\231\162\336\344\211\267\172
+\046\135\332\063\111\133\122\234\016\365\212\255\303\270\075\350
+\006\152\302\325\052\013\154\173\204\275\126\005\313\206\145\222
+\354\104\053\260\216\271\334\160\013\106\332\255\274\143\210\071
+\372\333\152\376\043\372\274\344\110\364\147\053\152\021\020\041
+\111\002\003\001\000\001\243\201\221\060\201\216\060\014\006\003
+\125\035\023\004\005\060\003\001\001\377\060\117\006\003\125\035
+\040\004\110\060\106\060\104\006\004\125\035\040\000\060\074\060
+\072\006\010\053\006\001\005\005\007\002\001\026\056\150\164\164
+\160\072\057\057\167\167\167\056\160\153\151\157\166\145\162\150
+\145\151\144\056\156\154\057\160\157\154\151\143\151\145\163\057
+\162\157\157\164\055\160\157\154\151\143\171\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125
+\035\016\004\026\004\024\250\175\353\274\143\244\164\023\164\000
+\354\226\340\323\064\301\054\277\154\370\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\005\204
+\207\125\164\066\141\301\273\321\324\306\025\250\023\264\237\244
+\376\273\356\025\264\057\006\014\051\362\250\222\244\141\015\374
+\253\134\010\133\121\023\053\115\302\052\141\310\370\011\130\374
+\055\002\262\071\175\231\146\201\277\156\134\225\105\040\154\346
+\171\247\321\330\034\051\374\302\040\047\121\310\361\174\135\064
+\147\151\205\021\060\306\000\322\327\363\323\174\266\360\061\127
+\050\022\202\163\351\063\057\246\125\264\013\221\224\107\234\372
+\273\172\102\062\350\256\176\055\310\274\254\024\277\331\017\331
+\133\374\301\371\172\225\341\175\176\226\374\161\260\302\114\310
+\337\105\064\311\316\015\362\234\144\010\320\073\303\051\305\262
+\355\220\004\301\261\051\221\305\060\157\301\251\162\063\314\376
+\135\026\027\054\021\151\347\176\376\305\203\010\337\274\334\042
+\072\056\040\151\043\071\126\140\147\220\213\056\166\071\373\021
+\210\227\366\174\275\113\270\040\026\147\005\215\342\073\301\162
+\077\224\225\067\307\135\271\236\330\223\241\027\217\377\014\146
+\025\301\044\174\062\174\003\035\073\241\130\105\062\223
+END
+
+# Trust for Certificate "Staat der Nederlanden Root CA"
+# Issuer: CN=Staat der Nederlanden Root CA,O=Staat der Nederlanden,C=NL
+# Serial Number: 10000010 (0x98968a)
+# Subject: CN=Staat der Nederlanden Root CA,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Tue Dec 17 09:23:49 2002
+# Not Valid After : Wed Dec 16 09:15:38 2015
+# Fingerprint (MD5): 60:84:7C:5A:CE:DB:0C:D4:CB:A7:E9:FE:02:C6:A9:C0
+# Fingerprint (SHA1): 10:1D:FA:3F:D5:0B:CB:BB:9B:B5:60:0C:19:55:A4:1A:F4:73:3A:04
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\020\035\372\077\325\013\313\273\233\265\140\014\031\125\244\032
+\364\163\072\004
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\140\204\174\132\316\333\014\324\313\247\351\376\002\306\251\300
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\125\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\023\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\046\060\044\006\003\125\004\003\023\035\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\226\212
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "UTN DATACorp SGC Root CA"
+#
+# Issuer: CN=UTN - DATACorp SGC,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:21:b4:11:d3:2a:68:06:a9:ad:69
+# Subject: CN=UTN - DATACorp SGC,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Thu Jun 24 18:57:21 1999
+# Not Valid After : Mon Jun 24 19:06:30 2019
+# Fingerprint (MD5): B3:A5:3E:77:21:6D:AC:4A:C0:C9:FB:D5:41:3D:CA:06
+# Fingerprint (SHA1): 58:11:9F:0E:12:82:87:EA:50:FD:D9:87:45:6F:4F:78:DC:FA:D6:D4
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN DATACorp SGC Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\223\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\033\060\031\006\003\125
+\004\003\023\022\125\124\116\040\055\040\104\101\124\101\103\157
+\162\160\040\123\107\103
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\223\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\033\060\031\006\003\125
+\004\003\023\022\125\124\116\040\055\040\104\101\124\101\103\157
+\162\160\040\123\107\103
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\041\264\021\323\052\150\006\251
+\255\151
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\136\060\202\003\106\240\003\002\001\002\002\020\104
+\276\014\213\120\000\041\264\021\323\052\150\006\251\255\151\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\223\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\033\060\031\006\003\125\004\003
+\023\022\125\124\116\040\055\040\104\101\124\101\103\157\162\160
+\040\123\107\103\060\036\027\015\071\071\060\066\062\064\061\070
+\065\067\062\061\132\027\015\061\071\060\066\062\064\061\071\060
+\066\063\060\132\060\201\223\061\013\060\011\006\003\125\004\006
+\023\002\125\123\061\013\060\011\006\003\125\004\010\023\002\125
+\124\061\027\060\025\006\003\125\004\007\023\016\123\141\154\164
+\040\114\141\153\145\040\103\151\164\171\061\036\060\034\006\003
+\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122\125
+\123\124\040\116\145\164\167\157\162\153\061\041\060\037\006\003
+\125\004\013\023\030\150\164\164\160\072\057\057\167\167\167\056
+\165\163\145\162\164\162\165\163\164\056\143\157\155\061\033\060
+\031\006\003\125\004\003\023\022\125\124\116\040\055\040\104\101
+\124\101\103\157\162\160\040\123\107\103\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\337\356\130\020\242
+\053\156\125\304\216\277\056\106\011\347\340\010\017\056\053\172
+\023\224\033\275\366\266\200\216\145\005\223\000\036\274\257\342
+\017\216\031\015\022\107\354\254\255\243\372\056\160\370\336\156
+\373\126\102\025\236\056\134\357\043\336\041\271\005\166\047\031
+\017\117\326\303\234\264\276\224\031\143\362\246\021\012\353\123
+\110\234\276\362\051\073\026\350\032\240\114\246\311\364\030\131
+\150\300\160\362\123\000\300\136\120\202\245\126\157\066\371\112
+\340\104\206\240\115\116\326\107\156\111\112\313\147\327\246\304
+\005\271\216\036\364\374\377\315\347\066\340\234\005\154\262\063
+\042\025\320\264\340\314\027\300\262\300\364\376\062\077\051\052
+\225\173\330\362\247\116\017\124\174\241\015\200\263\011\003\301
+\377\134\335\136\232\076\274\256\274\107\212\152\256\161\312\037
+\261\052\270\137\102\005\013\354\106\060\321\162\013\312\351\126
+\155\365\357\337\170\276\141\272\262\245\256\004\114\274\250\254
+\151\025\227\275\357\353\264\214\277\065\370\324\303\321\050\016
+\134\072\237\160\030\063\040\167\304\242\257\002\003\001\000\001
+\243\201\253\060\201\250\060\013\006\003\125\035\017\004\004\003
+\002\001\306\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\123
+\062\321\263\317\177\372\340\361\240\135\205\116\222\322\236\105
+\035\264\117\060\075\006\003\125\035\037\004\066\060\064\060\062
+\240\060\240\056\206\054\150\164\164\160\072\057\057\143\162\154
+\056\165\163\145\162\164\162\165\163\164\056\143\157\155\057\125
+\124\116\055\104\101\124\101\103\157\162\160\123\107\103\056\143
+\162\154\060\052\006\003\125\035\045\004\043\060\041\006\010\053
+\006\001\005\005\007\003\001\006\012\053\006\001\004\001\202\067
+\012\003\003\006\011\140\206\110\001\206\370\102\004\001\060\015
+\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001
+\001\000\047\065\227\000\212\213\050\275\306\063\060\036\051\374
+\342\367\325\230\324\100\273\140\312\277\253\027\054\011\066\177
+\120\372\101\334\256\226\072\012\043\076\211\131\311\243\007\355
+\033\067\255\374\174\276\121\111\132\336\072\012\124\010\026\105
+\302\231\261\207\315\214\150\340\151\003\351\304\116\230\262\073
+\214\026\263\016\240\014\230\120\233\223\251\160\011\310\054\243
+\217\337\002\344\340\161\072\361\264\043\162\240\252\001\337\337
+\230\076\024\120\240\061\046\275\050\351\132\060\046\165\371\173
+\140\034\215\363\315\120\046\155\004\047\232\337\325\015\105\107
+\051\153\054\346\166\331\251\051\175\062\335\311\066\074\275\256
+\065\361\021\236\035\273\220\077\022\107\116\216\327\176\017\142
+\163\035\122\046\070\034\030\111\375\060\164\232\304\345\042\057
+\330\300\215\355\221\172\114\000\217\162\177\135\332\335\033\213
+\105\153\347\335\151\227\250\305\126\114\017\014\366\237\172\221
+\067\366\227\202\340\335\161\151\377\166\077\140\115\074\317\367
+\231\371\306\127\364\311\125\071\170\272\054\171\311\246\210\053
+\364\010
+END
+
+# Trust for Certificate "UTN DATACorp SGC Root CA"
+# Issuer: CN=UTN - DATACorp SGC,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:21:b4:11:d3:2a:68:06:a9:ad:69
+# Subject: CN=UTN - DATACorp SGC,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Thu Jun 24 18:57:21 1999
+# Not Valid After : Mon Jun 24 19:06:30 2019
+# Fingerprint (MD5): B3:A5:3E:77:21:6D:AC:4A:C0:C9:FB:D5:41:3D:CA:06
+# Fingerprint (SHA1): 58:11:9F:0E:12:82:87:EA:50:FD:D9:87:45:6F:4F:78:DC:FA:D6:D4
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN DATACorp SGC Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\130\021\237\016\022\202\207\352\120\375\331\207\105\157\117\170
+\334\372\326\324
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\263\245\076\167\041\155\254\112\300\311\373\325\101\075\312\006
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\223\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\033\060\031\006\003\125
+\004\003\023\022\125\124\116\040\055\040\104\101\124\101\103\157
+\162\160\040\123\107\103
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\041\264\021\323\052\150\006\251
+\255\151
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "UTN USERFirst Email Root CA"
+#
+# Issuer: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:25:25:67:c9:89
+# Subject: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 17:28:50 1999
+# Not Valid After : Tue Jul 09 17:36:58 2019
+# Fingerprint (MD5): D7:34:3D:EF:1D:27:09:28:E1:31:02:5B:13:2B:DD:F7
+# Fingerprint (SHA1): B1:72:B1:A5:6D:95:F9:1F:E5:02:87:E1:4D:37:EA:6A:44:63:76:8A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN USERFirst Email Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125
+\004\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164
+\151\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151
+\154
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125
+\004\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164
+\151\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151
+\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\045\045\147
+\311\211
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\242\060\202\003\212\240\003\002\001\002\002\020\104
+\276\014\213\120\000\044\264\021\323\066\045\045\147\311\211\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\256\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\066\060\064\006\003\125\004\003
+\023\055\125\124\116\055\125\123\105\122\106\151\162\163\164\055
+\103\154\151\145\156\164\040\101\165\164\150\145\156\164\151\143
+\141\164\151\157\156\040\141\156\144\040\105\155\141\151\154\060
+\036\027\015\071\071\060\067\060\071\061\067\062\070\065\060\132
+\027\015\061\071\060\067\060\071\061\067\063\066\065\070\132\060
+\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
+\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
+\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125\004
+\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164\151
+\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151\154
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\262\071\205\244\362\175\253\101\073\142\106\067\256\315\301
+\140\165\274\071\145\371\112\032\107\242\271\314\110\314\152\230
+\325\115\065\031\271\244\102\345\316\111\342\212\057\036\174\322
+\061\007\307\116\264\203\144\235\056\051\325\242\144\304\205\275
+\205\121\065\171\244\116\150\220\173\034\172\244\222\250\027\362
+\230\025\362\223\314\311\244\062\225\273\014\117\060\275\230\240
+\013\213\345\156\033\242\106\372\170\274\242\157\253\131\136\245
+\057\317\312\332\155\252\057\353\254\241\263\152\252\267\056\147
+\065\213\171\341\036\151\210\342\346\106\315\240\245\352\276\013
+\316\166\072\172\016\233\352\374\332\047\133\075\163\037\042\346
+\110\141\306\114\363\151\261\250\056\033\266\324\061\040\054\274
+\202\212\216\244\016\245\327\211\103\374\026\132\257\035\161\327
+\021\131\332\272\207\015\257\372\363\341\302\360\244\305\147\214
+\326\326\124\072\336\012\244\272\003\167\263\145\310\375\036\323
+\164\142\252\030\312\150\223\036\241\205\176\365\107\145\313\370
+\115\127\050\164\322\064\377\060\266\356\366\142\060\024\214\054
+\353\002\003\001\000\001\243\201\271\060\201\266\060\013\006\003
+\125\035\017\004\004\003\002\001\306\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035
+\016\004\026\004\024\211\202\147\175\304\235\046\160\000\113\264
+\120\110\174\336\075\256\004\156\175\060\130\006\003\125\035\037
+\004\121\060\117\060\115\240\113\240\111\206\107\150\164\164\160
+\072\057\057\143\162\154\056\165\163\145\162\164\162\165\163\164
+\056\143\157\155\057\125\124\116\055\125\123\105\122\106\151\162
+\163\164\055\103\154\151\145\156\164\101\165\164\150\145\156\164
+\151\143\141\164\151\157\156\141\156\144\105\155\141\151\154\056
+\143\162\154\060\035\006\003\125\035\045\004\026\060\024\006\010
+\053\006\001\005\005\007\003\002\006\010\053\006\001\005\005\007
+\003\004\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\202\001\001\000\261\155\141\135\246\032\177\174\253\112
+\344\060\374\123\157\045\044\306\312\355\342\061\134\053\016\356
+\356\141\125\157\004\076\317\071\336\305\033\111\224\344\353\040
+\114\264\346\236\120\056\162\331\215\365\252\243\263\112\332\126
+\034\140\227\200\334\202\242\255\112\275\212\053\377\013\011\264
+\306\327\040\004\105\344\315\200\001\272\272\053\156\316\252\327
+\222\376\344\257\353\364\046\035\026\052\177\154\060\225\067\057
+\063\022\254\177\335\307\321\021\214\121\230\262\320\243\221\320
+\255\366\237\236\203\223\036\035\102\270\106\257\153\146\360\233
+\177\352\343\003\002\345\002\121\301\252\325\065\235\162\100\003
+\211\272\061\035\305\020\150\122\236\337\242\205\305\134\010\246
+\170\346\123\117\261\350\267\323\024\236\223\246\303\144\343\254
+\176\161\315\274\237\351\003\033\314\373\351\254\061\301\257\174
+\025\164\002\231\303\262\107\246\302\062\141\327\307\157\110\044
+\121\047\241\325\207\125\362\173\217\230\075\026\236\356\165\266
+\370\320\216\362\363\306\256\050\133\247\360\363\066\027\374\303
+\005\323\312\003\112\124
+END
+
+# Trust for Certificate "UTN USERFirst Email Root CA"
+# Issuer: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:25:25:67:c9:89
+# Subject: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 17:28:50 1999
+# Not Valid After : Tue Jul 09 17:36:58 2019
+# Fingerprint (MD5): D7:34:3D:EF:1D:27:09:28:E1:31:02:5B:13:2B:DD:F7
+# Fingerprint (SHA1): B1:72:B1:A5:6D:95:F9:1F:E5:02:87:E1:4D:37:EA:6A:44:63:76:8A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN USERFirst Email Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\261\162\261\245\155\225\371\037\345\002\207\341\115\067\352\152
+\104\143\166\212
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\327\064\075\357\035\047\011\050\341\061\002\133\023\053\335\367
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125
+\004\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164
+\151\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151
+\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\045\045\147
+\311\211
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "UTN USERFirst Hardware Root CA"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:2a:fe:65:0a:fd
+# Subject: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 18:10:42 1999
+# Not Valid After : Tue Jul 09 18:19:22 2019
+# Fingerprint (MD5): 4C:56:41:E5:0D:BB:2B:E8:CA:A3:ED:18:08:AD:43:39
+# Fingerprint (SHA1): 04:83:ED:33:99:AC:36:08:05:87:22:ED:BC:5E:46:00:E3:BE:F9:D7
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN USERFirst Hardware Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\052\376\145
+\012\375
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\164\060\202\003\134\240\003\002\001\002\002\020\104
+\276\014\213\120\000\044\264\021\323\066\052\376\145\012\375\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004\003
+\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164\055
+\110\141\162\144\167\141\162\145\060\036\027\015\071\071\060\067
+\060\071\061\070\061\060\064\062\132\027\015\061\071\060\067\060
+\071\061\070\061\071\062\062\132\060\201\227\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\013\060\011\006\003\125\004
+\010\023\002\125\124\061\027\060\025\006\003\125\004\007\023\016
+\123\141\154\164\040\114\141\153\145\040\103\151\164\171\061\036
+\060\034\006\003\125\004\012\023\025\124\150\145\040\125\123\105
+\122\124\122\125\123\124\040\116\145\164\167\157\162\153\061\041
+\060\037\006\003\125\004\013\023\030\150\164\164\160\072\057\057
+\167\167\167\056\165\163\145\162\164\162\165\163\164\056\143\157
+\155\061\037\060\035\006\003\125\004\003\023\026\125\124\116\055
+\125\123\105\122\106\151\162\163\164\055\110\141\162\144\167\141
+\162\145\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\261\367\303\070\077\264\250\177\317\071\202\121\147
+\320\155\237\322\377\130\363\347\237\053\354\015\211\124\231\271
+\070\231\026\367\340\041\171\110\302\273\141\164\022\226\035\074
+\152\162\325\074\020\147\072\071\355\053\023\315\146\353\225\011
+\063\244\154\227\261\350\306\354\301\165\171\234\106\136\215\253
+\320\152\375\271\052\125\027\020\124\263\031\360\232\366\361\261
+\135\266\247\155\373\340\161\027\153\242\210\373\000\337\376\032
+\061\167\014\232\001\172\261\062\343\053\001\007\070\156\303\245
+\136\043\274\105\233\173\120\301\311\060\217\333\345\053\172\323
+\133\373\063\100\036\240\325\230\027\274\213\207\303\211\323\135
+\240\216\262\252\252\366\216\151\210\006\305\372\211\041\363\010
+\235\151\056\011\063\233\051\015\106\017\214\314\111\064\260\151
+\121\275\371\006\315\150\255\146\114\274\076\254\141\275\012\210
+\016\310\337\075\356\174\004\114\235\012\136\153\221\326\356\307
+\355\050\215\253\115\207\211\163\320\156\244\320\036\026\213\024
+\341\166\104\003\177\143\254\344\315\111\234\305\222\364\253\062
+\241\110\133\002\003\001\000\001\243\201\271\060\201\266\060\013
+\006\003\125\035\017\004\004\003\002\001\306\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\035\006\003
+\125\035\016\004\026\004\024\241\162\137\046\033\050\230\103\225
+\135\007\067\325\205\226\235\113\322\303\105\060\104\006\003\125
+\035\037\004\075\060\073\060\071\240\067\240\065\206\063\150\164
+\164\160\072\057\057\143\162\154\056\165\163\145\162\164\162\165
+\163\164\056\143\157\155\057\125\124\116\055\125\123\105\122\106
+\151\162\163\164\055\110\141\162\144\167\141\162\145\056\143\162
+\154\060\061\006\003\125\035\045\004\052\060\050\006\010\053\006
+\001\005\005\007\003\001\006\010\053\006\001\005\005\007\003\005
+\006\010\053\006\001\005\005\007\003\006\006\010\053\006\001\005
+\005\007\003\007\060\015\006\011\052\206\110\206\367\015\001\001
+\005\005\000\003\202\001\001\000\107\031\017\336\164\306\231\227
+\257\374\255\050\136\165\216\353\055\147\356\116\173\053\327\014
+\377\366\336\313\125\242\012\341\114\124\145\223\140\153\237\022
+\234\255\136\203\054\353\132\256\300\344\055\364\000\143\035\270
+\300\154\362\317\111\273\115\223\157\006\246\012\042\262\111\142
+\010\116\377\310\310\024\262\210\026\135\347\001\344\022\225\345
+\105\064\263\213\151\275\317\264\205\217\165\121\236\175\072\070
+\072\024\110\022\306\373\247\073\032\215\015\202\100\007\350\004
+\010\220\241\211\313\031\120\337\312\034\001\274\035\004\031\173
+\020\166\227\073\356\220\220\312\304\016\037\026\156\165\357\063
+\370\323\157\133\036\226\343\340\164\167\164\173\212\242\156\055
+\335\166\326\071\060\202\360\253\234\122\362\052\307\257\111\136
+\176\307\150\345\202\201\310\152\047\371\047\210\052\325\130\120
+\225\037\360\073\034\127\273\175\024\071\142\053\232\311\224\222
+\052\243\042\014\377\211\046\175\137\043\053\107\327\025\035\251
+\152\236\121\015\052\121\236\201\371\324\073\136\160\022\177\020
+\062\234\036\273\235\370\146\250
+END
+
+# Trust for Certificate "UTN USERFirst Hardware Root CA"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:2a:fe:65:0a:fd
+# Subject: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 18:10:42 1999
+# Not Valid After : Tue Jul 09 18:19:22 2019
+# Fingerprint (MD5): 4C:56:41:E5:0D:BB:2B:E8:CA:A3:ED:18:08:AD:43:39
+# Fingerprint (SHA1): 04:83:ED:33:99:AC:36:08:05:87:22:ED:BC:5E:46:00:E3:BE:F9:D7
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN USERFirst Hardware Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\004\203\355\063\231\254\066\010\005\207\042\355\274\136\106\000
+\343\276\371\327
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\114\126\101\345\015\273\053\350\312\243\355\030\010\255\103\071
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\052\376\145
+\012\375
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "UTN USERFirst Object Root CA"
+#
+# Issuer: CN=UTN-USERFirst-Object,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:2d:e0:b3:5f:1b
+# Subject: CN=UTN-USERFirst-Object,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 18:31:20 1999
+# Not Valid After : Tue Jul 09 18:40:36 2019
+# Fingerprint (MD5): A7:F2:E4:16:06:41:11:50:30:6B:9C:E3:B4:9C:B0:C9
+# Fingerprint (SHA1): E1:2D:FB:4B:41:D7:D9:C3:2B:30:51:4B:AC:1D:81:D8:38:5E:2D:46
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN USERFirst Object Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\225\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\035\060\033\006\003\125
+\004\003\023\024\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\117\142\152\145\143\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\225\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\035\060\033\006\003\125
+\004\003\023\024\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\117\142\152\145\143\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\055\340\263
+\137\033
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\146\060\202\003\116\240\003\002\001\002\002\020\104
+\276\014\213\120\000\044\264\021\323\066\055\340\263\137\033\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\225\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\035\060\033\006\003\125\004\003
+\023\024\125\124\116\055\125\123\105\122\106\151\162\163\164\055
+\117\142\152\145\143\164\060\036\027\015\071\071\060\067\060\071
+\061\070\063\061\062\060\132\027\015\061\071\060\067\060\071\061
+\070\064\060\063\066\132\060\201\225\061\013\060\011\006\003\125
+\004\006\023\002\125\123\061\013\060\011\006\003\125\004\010\023
+\002\125\124\061\027\060\025\006\003\125\004\007\023\016\123\141
+\154\164\040\114\141\153\145\040\103\151\164\171\061\036\060\034
+\006\003\125\004\012\023\025\124\150\145\040\125\123\105\122\124
+\122\125\123\124\040\116\145\164\167\157\162\153\061\041\060\037
+\006\003\125\004\013\023\030\150\164\164\160\072\057\057\167\167
+\167\056\165\163\145\162\164\162\165\163\164\056\143\157\155\061
+\035\060\033\006\003\125\004\003\023\024\125\124\116\055\125\123
+\105\122\106\151\162\163\164\055\117\142\152\145\143\164\060\202
+\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000\316
+\252\201\077\243\243\141\170\252\061\000\125\225\021\236\047\017
+\037\034\337\072\233\202\150\060\300\112\141\035\361\057\016\372
+\276\171\367\245\043\357\125\121\226\204\315\333\343\271\156\076
+\061\330\012\040\147\307\364\331\277\224\353\107\004\076\002\316
+\052\242\135\207\004\011\366\060\235\030\212\227\262\252\034\374
+\101\322\241\066\313\373\075\221\272\347\331\160\065\372\344\347
+\220\303\233\243\233\323\074\365\022\231\167\261\267\011\340\150
+\346\034\270\363\224\143\210\152\152\376\013\166\311\276\364\042
+\344\147\271\253\032\136\167\301\205\007\335\015\154\277\356\006
+\307\167\152\101\236\247\017\327\373\356\224\027\267\374\205\276
+\244\253\304\034\061\335\327\266\321\344\360\357\337\026\217\262
+\122\223\327\241\324\211\241\007\056\277\341\001\022\102\036\032
+\341\330\225\064\333\144\171\050\377\272\056\021\302\345\350\133
+\222\110\373\107\013\302\154\332\255\062\203\101\363\245\345\101
+\160\375\145\220\155\372\372\121\304\371\275\226\053\031\004\054
+\323\155\247\334\360\177\157\203\145\342\152\253\207\206\165\002
+\003\001\000\001\243\201\257\060\201\254\060\013\006\003\125\035
+\017\004\004\003\002\001\306\060\017\006\003\125\035\023\001\001
+\377\004\005\060\003\001\001\377\060\035\006\003\125\035\016\004
+\026\004\024\332\355\144\164\024\234\024\074\253\335\231\251\275
+\133\050\115\213\074\311\330\060\102\006\003\125\035\037\004\073
+\060\071\060\067\240\065\240\063\206\061\150\164\164\160\072\057
+\057\143\162\154\056\165\163\145\162\164\162\165\163\164\056\143
+\157\155\057\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\117\142\152\145\143\164\056\143\162\154\060\051\006\003\125
+\035\045\004\042\060\040\006\010\053\006\001\005\005\007\003\003
+\006\010\053\006\001\005\005\007\003\010\006\012\053\006\001\004
+\001\202\067\012\003\004\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\001\001\000\010\037\122\261\067\104
+\170\333\375\316\271\332\225\226\230\252\125\144\200\265\132\100
+\335\041\245\305\301\363\137\054\114\310\107\132\151\352\350\360
+\065\065\364\320\045\363\310\246\244\207\112\275\033\261\163\010
+\275\324\303\312\266\065\273\131\206\167\061\315\247\200\024\256
+\023\357\374\261\110\371\153\045\045\055\121\266\054\155\105\301
+\230\310\212\126\135\076\356\103\116\076\153\047\216\320\072\113
+\205\013\137\323\355\152\247\165\313\321\132\207\057\071\165\023
+\132\162\260\002\201\237\276\360\017\204\124\040\142\154\151\324
+\341\115\306\015\231\103\001\015\022\226\214\170\235\277\120\242
+\261\104\252\152\317\027\172\317\157\017\324\370\044\125\137\360
+\064\026\111\146\076\120\106\311\143\161\070\061\142\270\142\271
+\363\123\255\154\265\053\242\022\252\031\117\011\332\136\347\223
+\306\216\024\010\376\360\060\200\030\240\206\205\115\310\175\327
+\213\003\376\156\325\367\235\026\254\222\054\240\043\345\234\221
+\122\037\224\337\027\224\163\303\263\301\301\161\005\040\000\170
+\275\023\122\035\250\076\315\000\037\310
+END
+
+# Trust for Certificate "UTN USERFirst Object Root CA"
+# Issuer: CN=UTN-USERFirst-Object,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:2d:e0:b3:5f:1b
+# Subject: CN=UTN-USERFirst-Object,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Fri Jul 09 18:31:20 1999
+# Not Valid After : Tue Jul 09 18:40:36 2019
+# Fingerprint (MD5): A7:F2:E4:16:06:41:11:50:30:6B:9C:E3:B4:9C:B0:C9
+# Fingerprint (SHA1): E1:2D:FB:4B:41:D7:D9:C3:2B:30:51:4B:AC:1D:81:D8:38:5E:2D:46
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "UTN USERFirst Object Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\341\055\373\113\101\327\331\303\053\060\121\113\254\035\201\330
+\070\136\055\106
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\247\362\344\026\006\101\021\120\060\153\234\343\264\234\260\311
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\225\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\035\060\033\006\003\125
+\004\003\023\024\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\117\142\152\145\143\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\276\014\213\120\000\044\264\021\323\066\055\340\263
+\137\033
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Camerfirma Chambers of Commerce Root"
+#
+# Issuer: CN=Chambers of Commerce Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Serial Number: 0 (0x0)
+# Subject: CN=Chambers of Commerce Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Not Valid Before: Tue Sep 30 16:13:43 2003
+# Not Valid After : Wed Sep 30 16:13:44 2037
+# Fingerprint (MD5): B0:01:EE:14:D9:AF:29:18:94:76:8E:F1:69:33:2A:84
+# Fingerprint (SHA1): 6E:3A:55:A4:19:0C:19:5C:93:84:3C:C0:DB:72:2E:31:30:61:F0:B1
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Camerfirma Chambers of Commerce Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\105\125\061
+\047\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101
+\070\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004
+\013\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150
+\141\155\142\145\162\163\151\147\156\056\157\162\147\061\042\060
+\040\006\003\125\004\003\023\031\103\150\141\155\142\145\162\163
+\040\157\146\040\103\157\155\155\145\162\143\145\040\122\157\157
+\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\105\125\061
+\047\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101
+\070\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004
+\013\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150
+\141\155\142\145\162\163\151\147\156\056\157\162\147\061\042\060
+\040\006\003\125\004\003\023\031\103\150\141\155\142\145\162\163
+\040\157\146\040\103\157\155\155\145\162\143\145\040\122\157\157
+\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\275\060\202\003\245\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\177\061\013\060\011\006\003\125\004\006\023\002\105\125\061\047
+\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155\145
+\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101\070
+\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004\013
+\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150\141
+\155\142\145\162\163\151\147\156\056\157\162\147\061\042\060\040
+\006\003\125\004\003\023\031\103\150\141\155\142\145\162\163\040
+\157\146\040\103\157\155\155\145\162\143\145\040\122\157\157\164
+\060\036\027\015\060\063\060\071\063\060\061\066\061\063\064\063
+\132\027\015\063\067\060\071\063\060\061\066\061\063\064\064\132
+\060\177\061\013\060\011\006\003\125\004\006\023\002\105\125\061
+\047\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101
+\070\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004
+\013\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150
+\141\155\142\145\162\163\151\147\156\056\157\162\147\061\042\060
+\040\006\003\125\004\003\023\031\103\150\141\155\142\145\162\163
+\040\157\146\040\103\157\155\155\145\162\143\145\040\122\157\157
+\164\060\202\001\040\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\015\000\060\202\001\010\002\202\001
+\001\000\267\066\125\345\245\135\030\060\340\332\211\124\221\374
+\310\307\122\370\057\120\331\357\261\165\163\145\107\175\033\133
+\272\165\305\374\241\210\044\372\057\355\312\010\112\071\124\304
+\121\172\265\332\140\352\070\074\201\262\313\361\273\331\221\043
+\077\110\001\160\165\251\005\052\255\037\161\363\311\124\075\035
+\006\152\100\076\263\014\205\356\134\033\171\302\142\304\270\066
+\216\065\135\001\014\043\004\107\065\252\233\140\116\240\146\075
+\313\046\012\234\100\241\364\135\230\277\161\253\245\000\150\052
+\355\203\172\017\242\024\265\324\042\263\200\260\074\014\132\121
+\151\055\130\030\217\355\231\236\361\256\342\225\346\366\107\250
+\326\014\017\260\130\130\333\303\146\067\236\233\221\124\063\067
+\322\224\034\152\110\311\311\362\245\332\245\014\043\367\043\016
+\234\062\125\136\161\234\204\005\121\232\055\375\346\116\052\064
+\132\336\312\100\067\147\014\124\041\125\167\332\012\014\314\227
+\256\200\334\224\066\112\364\076\316\066\023\036\123\344\254\116
+\072\005\354\333\256\162\234\070\213\320\071\073\211\012\076\167
+\376\165\002\001\003\243\202\001\104\060\202\001\100\060\022\006
+\003\125\035\023\001\001\377\004\010\060\006\001\001\377\002\001
+\014\060\074\006\003\125\035\037\004\065\060\063\060\061\240\057
+\240\055\206\053\150\164\164\160\072\057\057\143\162\154\056\143
+\150\141\155\142\145\162\163\151\147\156\056\157\162\147\057\143
+\150\141\155\142\145\162\163\162\157\157\164\056\143\162\154\060
+\035\006\003\125\035\016\004\026\004\024\343\224\365\261\115\351
+\333\241\051\133\127\213\115\166\006\166\341\321\242\212\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\021
+\006\011\140\206\110\001\206\370\102\001\001\004\004\003\002\000
+\007\060\047\006\003\125\035\021\004\040\060\036\201\034\143\150
+\141\155\142\145\162\163\162\157\157\164\100\143\150\141\155\142
+\145\162\163\151\147\156\056\157\162\147\060\047\006\003\125\035
+\022\004\040\060\036\201\034\143\150\141\155\142\145\162\163\162
+\157\157\164\100\143\150\141\155\142\145\162\163\151\147\156\056
+\157\162\147\060\130\006\003\125\035\040\004\121\060\117\060\115
+\006\013\053\006\001\004\001\201\207\056\012\003\001\060\076\060
+\074\006\010\053\006\001\005\005\007\002\001\026\060\150\164\164
+\160\072\057\057\143\160\163\056\143\150\141\155\142\145\162\163
+\151\147\156\056\157\162\147\057\143\160\163\057\143\150\141\155
+\142\145\162\163\162\157\157\164\056\150\164\155\154\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\014\101\227\302\032\206\300\042\174\237\373\220\363\032\321
+\003\261\357\023\371\041\137\004\234\332\311\245\215\047\154\226
+\207\221\276\101\220\001\162\223\347\036\175\137\366\211\306\135
+\247\100\011\075\254\111\105\105\334\056\215\060\150\262\011\272
+\373\303\057\314\272\013\337\077\167\173\106\175\072\022\044\216
+\226\217\074\005\012\157\322\224\050\035\155\014\300\056\210\042
+\325\330\317\035\023\307\360\110\327\327\005\247\317\307\107\236
+\073\074\064\310\200\117\324\024\273\374\015\120\367\372\263\354
+\102\137\251\335\155\310\364\165\317\173\301\162\046\261\001\034
+\134\054\375\172\116\264\001\305\005\127\271\347\074\252\005\331
+\210\351\007\106\101\316\357\101\201\256\130\337\203\242\256\312
+\327\167\037\347\000\074\235\157\216\344\062\011\035\115\170\064
+\170\064\074\224\233\046\355\117\161\306\031\172\275\040\042\110
+\132\376\113\175\003\267\347\130\276\306\062\116\164\036\150\335
+\250\150\133\263\076\356\142\175\331\200\350\012\165\172\267\356
+\264\145\232\041\220\340\252\320\230\274\070\265\163\074\213\370
+\334
+END
+
+# Trust for Certificate "Camerfirma Chambers of Commerce Root"
+# Issuer: CN=Chambers of Commerce Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Serial Number: 0 (0x0)
+# Subject: CN=Chambers of Commerce Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Not Valid Before: Tue Sep 30 16:13:43 2003
+# Not Valid After : Wed Sep 30 16:13:44 2037
+# Fingerprint (MD5): B0:01:EE:14:D9:AF:29:18:94:76:8E:F1:69:33:2A:84
+# Fingerprint (SHA1): 6E:3A:55:A4:19:0C:19:5C:93:84:3C:C0:DB:72:2E:31:30:61:F0:B1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Camerfirma Chambers of Commerce Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\156\072\125\244\031\014\031\134\223\204\074\300\333\162\056\061
+\060\141\360\261
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\260\001\356\024\331\257\051\030\224\166\216\361\151\063\052\204
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\105\125\061
+\047\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101
+\070\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004
+\013\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150
+\141\155\142\145\162\163\151\147\156\056\157\162\147\061\042\060
+\040\006\003\125\004\003\023\031\103\150\141\155\142\145\162\163
+\040\157\146\040\103\157\155\155\145\162\143\145\040\122\157\157
+\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Camerfirma Global Chambersign Root"
+#
+# Issuer: CN=Global Chambersign Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Serial Number: 0 (0x0)
+# Subject: CN=Global Chambersign Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Not Valid Before: Tue Sep 30 16:14:18 2003
+# Not Valid After : Wed Sep 30 16:14:18 2037
+# Fingerprint (MD5): C5:E6:7B:BF:06:D0:4F:43:ED:C4:7A:65:8A:FB:6B:19
+# Fingerprint (SHA1): 33:9B:6B:14:50:24:9B:55:7A:01:87:72:84:D9:E0:2F:C3:D2:D8:E9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Camerfirma Global Chambersign Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\105\125\061
+\047\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101
+\070\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004
+\013\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150
+\141\155\142\145\162\163\151\147\156\056\157\162\147\061\040\060
+\036\006\003\125\004\003\023\027\107\154\157\142\141\154\040\103
+\150\141\155\142\145\162\163\151\147\156\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\105\125\061
+\047\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101
+\070\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004
+\013\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150
+\141\155\142\145\162\163\151\147\156\056\157\162\147\061\040\060
+\036\006\003\125\004\003\023\027\107\154\157\142\141\154\040\103
+\150\141\155\142\145\162\163\151\147\156\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\305\060\202\003\255\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\175\061\013\060\011\006\003\125\004\006\023\002\105\125\061\047
+\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155\145
+\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101\070
+\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004\013
+\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150\141
+\155\142\145\162\163\151\147\156\056\157\162\147\061\040\060\036
+\006\003\125\004\003\023\027\107\154\157\142\141\154\040\103\150
+\141\155\142\145\162\163\151\147\156\040\122\157\157\164\060\036
+\027\015\060\063\060\071\063\060\061\066\061\064\061\070\132\027
+\015\063\067\060\071\063\060\061\066\061\064\061\070\132\060\175
+\061\013\060\011\006\003\125\004\006\023\002\105\125\061\047\060
+\045\006\003\125\004\012\023\036\101\103\040\103\141\155\145\162
+\146\151\162\155\141\040\123\101\040\103\111\106\040\101\070\062
+\067\064\063\062\070\067\061\043\060\041\006\003\125\004\013\023
+\032\150\164\164\160\072\057\057\167\167\167\056\143\150\141\155
+\142\145\162\163\151\147\156\056\157\162\147\061\040\060\036\006
+\003\125\004\003\023\027\107\154\157\142\141\154\040\103\150\141
+\155\142\145\162\163\151\147\156\040\122\157\157\164\060\202\001
+\040\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\001\015\000\060\202\001\010\002\202\001\001\000\242\160
+\242\320\237\102\256\133\027\307\330\175\317\024\203\374\117\311
+\241\267\023\257\212\327\236\076\004\012\222\213\140\126\372\264
+\062\057\210\115\241\140\010\364\267\011\116\240\111\057\111\326
+\323\337\235\227\132\237\224\004\160\354\077\131\331\267\314\146
+\213\230\122\050\011\002\337\305\057\204\215\172\227\167\277\354
+\100\235\045\162\253\265\077\062\230\373\267\267\374\162\204\345
+\065\207\371\125\372\243\037\016\157\056\050\335\151\240\331\102
+\020\306\370\265\104\302\320\103\177\333\274\344\242\074\152\125
+\170\012\167\251\330\352\031\062\267\057\376\134\077\033\356\261
+\230\354\312\255\172\151\105\343\226\017\125\366\346\355\165\352
+\145\350\062\126\223\106\211\250\045\212\145\006\356\153\277\171
+\007\320\361\267\257\355\054\115\222\273\300\250\137\247\147\175
+\004\362\025\010\160\254\222\326\175\004\322\063\373\114\266\013
+\013\373\032\311\304\215\003\251\176\134\362\120\253\022\245\241
+\317\110\120\245\357\322\310\032\023\372\260\177\261\202\034\167
+\152\017\137\334\013\225\217\357\103\176\346\105\011\045\002\001
+\003\243\202\001\120\060\202\001\114\060\022\006\003\125\035\023
+\001\001\377\004\010\060\006\001\001\377\002\001\014\060\077\006
+\003\125\035\037\004\070\060\066\060\064\240\062\240\060\206\056
+\150\164\164\160\072\057\057\143\162\154\056\143\150\141\155\142
+\145\162\163\151\147\156\056\157\162\147\057\143\150\141\155\142
+\145\162\163\151\147\156\162\157\157\164\056\143\162\154\060\035
+\006\003\125\035\016\004\026\004\024\103\234\066\237\260\236\060
+\115\306\316\137\255\020\253\345\003\245\372\251\024\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\021\006
+\011\140\206\110\001\206\370\102\001\001\004\004\003\002\000\007
+\060\052\006\003\125\035\021\004\043\060\041\201\037\143\150\141
+\155\142\145\162\163\151\147\156\162\157\157\164\100\143\150\141
+\155\142\145\162\163\151\147\156\056\157\162\147\060\052\006\003
+\125\035\022\004\043\060\041\201\037\143\150\141\155\142\145\162
+\163\151\147\156\162\157\157\164\100\143\150\141\155\142\145\162
+\163\151\147\156\056\157\162\147\060\133\006\003\125\035\040\004
+\124\060\122\060\120\006\013\053\006\001\004\001\201\207\056\012
+\001\001\060\101\060\077\006\010\053\006\001\005\005\007\002\001
+\026\063\150\164\164\160\072\057\057\143\160\163\056\143\150\141
+\155\142\145\162\163\151\147\156\056\157\162\147\057\143\160\163
+\057\143\150\141\155\142\145\162\163\151\147\156\162\157\157\164
+\056\150\164\155\154\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\003\202\001\001\000\074\073\160\221\371\004\124
+\047\221\341\355\355\376\150\177\141\135\345\101\145\117\062\361
+\030\005\224\152\034\336\037\160\333\076\173\062\002\064\265\014
+\154\241\212\174\245\364\217\377\324\330\255\027\325\055\004\321
+\077\130\200\342\201\131\210\276\300\343\106\223\044\376\220\275
+\046\242\060\055\350\227\046\127\065\211\164\226\030\366\025\342
+\257\044\031\126\002\002\262\272\017\024\352\306\212\146\301\206
+\105\125\213\276\222\276\234\244\004\307\111\074\236\350\051\172
+\211\327\376\257\377\150\365\245\027\220\275\254\231\314\245\206
+\127\011\147\106\333\326\026\302\106\361\344\251\120\365\217\321
+\222\025\323\137\076\306\000\111\072\156\130\262\321\321\047\015
+\045\310\062\370\040\021\315\175\062\063\110\224\124\114\335\334
+\171\304\060\237\353\216\270\125\265\327\210\134\305\152\044\075
+\262\323\005\003\121\306\007\357\314\024\162\164\075\156\162\316
+\030\050\214\112\240\167\345\011\053\105\104\107\254\267\147\177
+\001\212\005\132\223\276\241\301\377\370\347\016\147\244\107\111
+\166\135\165\220\032\365\046\217\360
+END
+
+# Trust for Certificate "Camerfirma Global Chambersign Root"
+# Issuer: CN=Global Chambersign Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Serial Number: 0 (0x0)
+# Subject: CN=Global Chambersign Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
+# Not Valid Before: Tue Sep 30 16:14:18 2003
+# Not Valid After : Wed Sep 30 16:14:18 2037
+# Fingerprint (MD5): C5:E6:7B:BF:06:D0:4F:43:ED:C4:7A:65:8A:FB:6B:19
+# Fingerprint (SHA1): 33:9B:6B:14:50:24:9B:55:7A:01:87:72:84:D9:E0:2F:C3:D2:D8:E9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Camerfirma Global Chambersign Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\063\233\153\024\120\044\233\125\172\001\207\162\204\331\340\057
+\303\322\330\351
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\305\346\173\277\006\320\117\103\355\304\172\145\212\373\153\031
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\105\125\061
+\047\060\045\006\003\125\004\012\023\036\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\101\040\103\111\106\040\101
+\070\062\067\064\063\062\070\067\061\043\060\041\006\003\125\004
+\013\023\032\150\164\164\160\072\057\057\167\167\167\056\143\150
+\141\155\142\145\162\163\151\147\156\056\157\162\147\061\040\060
+\036\006\003\125\004\003\023\027\107\154\157\142\141\154\040\103
+\150\141\155\142\145\162\163\151\147\156\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "NetLock Qualified (Class QA) Root"
+#
+# Issuer: E=info@netlock.hu,CN=NetLock Minositett Kozjegyzoi (Class QA) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Serial Number: 123 (0x7b)
+# Subject: E=info@netlock.hu,CN=NetLock Minositett Kozjegyzoi (Class QA) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Not Valid Before: Sun Mar 30 01:47:11 2003
+# Not Valid After : Thu Dec 15 01:47:11 2022
+# Fingerprint (MD5): D4:80:65:68:24:F9:89:22:28:DB:F5:A4:9A:17:8F:14
+# Fingerprint (SHA1): 01:68:97:E1:A0:B8:F2:C3:B1:34:66:5C:20:A7:27:B7:A1:58:E2:8F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Qualified (Class QA) Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\311\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\102\060\100\006\003\125\004
+\003\023\071\116\145\164\114\157\143\153\040\115\151\156\157\163
+\151\164\145\164\164\040\113\157\172\152\145\147\171\172\157\151
+\040\050\103\154\141\163\163\040\121\101\051\040\124\141\156\165
+\163\151\164\166\141\156\171\153\151\141\144\157\061\036\060\034
+\006\011\052\206\110\206\367\015\001\011\001\026\017\151\156\146
+\157\100\156\145\164\154\157\143\153\056\150\165
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\311\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\102\060\100\006\003\125\004
+\003\023\071\116\145\164\114\157\143\153\040\115\151\156\157\163
+\151\164\145\164\164\040\113\157\172\152\145\147\171\172\157\151
+\040\050\103\154\141\163\163\040\121\101\051\040\124\141\156\165
+\163\151\164\166\141\156\171\153\151\141\144\157\061\036\060\034
+\006\011\052\206\110\206\367\015\001\011\001\026\017\151\156\146
+\157\100\156\145\164\154\157\143\153\056\150\165
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\173
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\321\060\202\005\271\240\003\002\001\002\002\001\173
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\311\061\013\060\011\006\003\125\004\006\023\002\110\125\061
+\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160\145
+\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145\164
+\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172\164
+\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030\006
+\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141\156
+\171\153\151\141\144\157\153\061\102\060\100\006\003\125\004\003
+\023\071\116\145\164\114\157\143\153\040\115\151\156\157\163\151
+\164\145\164\164\040\113\157\172\152\145\147\171\172\157\151\040
+\050\103\154\141\163\163\040\121\101\051\040\124\141\156\165\163
+\151\164\166\141\156\171\153\151\141\144\157\061\036\060\034\006
+\011\052\206\110\206\367\015\001\011\001\026\017\151\156\146\157
+\100\156\145\164\154\157\143\153\056\150\165\060\036\027\015\060
+\063\060\063\063\060\060\061\064\067\061\061\132\027\015\062\062
+\061\062\061\065\060\061\064\067\061\061\132\060\201\311\061\013
+\060\011\006\003\125\004\006\023\002\110\125\061\021\060\017\006
+\003\125\004\007\023\010\102\165\144\141\160\145\163\164\061\047
+\060\045\006\003\125\004\012\023\036\116\145\164\114\157\143\153
+\040\110\141\154\157\172\141\164\142\151\172\164\157\156\163\141
+\147\151\040\113\146\164\056\061\032\060\030\006\003\125\004\013
+\023\021\124\141\156\165\163\151\164\166\141\156\171\153\151\141
+\144\157\153\061\102\060\100\006\003\125\004\003\023\071\116\145
+\164\114\157\143\153\040\115\151\156\157\163\151\164\145\164\164
+\040\113\157\172\152\145\147\171\172\157\151\040\050\103\154\141
+\163\163\040\121\101\051\040\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\061\036\060\034\006\011\052\206\110
+\206\367\015\001\011\001\026\017\151\156\146\157\100\156\145\164
+\154\157\143\153\056\150\165\060\202\001\042\060\015\006\011\052
+\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060
+\202\001\012\002\202\001\001\000\307\122\045\262\330\075\324\204
+\125\011\247\033\275\154\271\024\364\212\002\333\166\374\152\052
+\170\253\345\167\360\156\340\214\043\147\333\245\144\231\271\335
+\001\076\157\357\055\232\074\042\360\135\311\127\240\125\101\177
+\362\103\136\130\202\123\061\145\316\036\362\046\272\000\124\036
+\257\260\274\034\344\122\214\240\062\257\267\067\261\123\147\150
+\164\147\120\366\055\056\144\336\256\046\171\337\337\231\206\253
+\253\177\205\354\240\373\200\314\364\270\014\036\223\105\143\271
+\334\270\133\233\355\133\071\324\137\142\260\247\216\174\146\070
+\054\252\261\010\143\027\147\175\314\275\263\361\303\077\317\120
+\071\355\321\031\203\025\333\207\022\047\226\267\332\352\345\235
+\274\272\352\071\117\213\357\164\232\347\305\320\322\352\206\121
+\034\344\376\144\010\050\004\171\005\353\312\305\161\016\013\357
+\253\352\354\022\021\241\030\005\062\151\321\014\054\032\075\045
+\231\077\265\174\312\155\260\256\231\231\372\010\140\347\031\302
+\362\275\121\323\314\323\002\254\301\021\014\200\316\253\334\224
+\235\153\243\071\123\072\326\205\002\003\000\305\175\243\202\002
+\300\060\202\002\274\060\022\006\003\125\035\023\001\001\377\004
+\010\060\006\001\001\377\002\001\004\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\006\060\202\002\165\006\011\140
+\206\110\001\206\370\102\001\015\004\202\002\146\026\202\002\142
+\106\111\107\131\105\114\105\115\041\040\105\172\145\156\040\164
+\141\156\165\163\151\164\166\141\156\171\040\141\040\116\145\164
+\114\157\143\153\040\113\146\164\056\040\115\151\156\157\163\151
+\164\145\164\164\040\123\172\157\154\147\141\154\164\141\164\141
+\163\151\040\123\172\141\142\141\154\171\172\141\164\141\142\141
+\156\040\154\145\151\162\164\040\145\154\152\141\162\141\163\157
+\153\040\141\154\141\160\152\141\156\040\153\145\163\172\165\154
+\164\056\040\101\040\155\151\156\157\163\151\164\145\164\164\040
+\145\154\145\153\164\162\157\156\151\153\165\163\040\141\154\141
+\151\162\141\163\040\152\157\147\150\141\164\141\163\040\145\162
+\166\145\156\171\145\163\165\154\145\163\145\156\145\153\054\040
+\166\141\154\141\155\151\156\164\040\145\154\146\157\147\141\144
+\141\163\141\156\141\153\040\146\145\154\164\145\164\145\154\145
+\040\141\040\115\151\156\157\163\151\164\145\164\164\040\123\172
+\157\154\147\141\154\164\141\164\141\163\151\040\123\172\141\142
+\141\154\171\172\141\164\142\141\156\054\040\141\172\040\101\154
+\164\141\154\141\156\157\163\040\123\172\145\162\172\157\144\145
+\163\151\040\106\145\154\164\145\164\145\154\145\153\142\145\156
+\040\145\154\157\151\162\164\040\145\154\154\145\156\157\162\172
+\145\163\151\040\145\154\152\141\162\141\163\040\155\145\147\164
+\145\164\145\154\145\056\040\101\040\144\157\153\165\155\145\156
+\164\165\155\157\153\040\155\145\147\164\141\154\141\154\150\141
+\164\157\153\040\141\040\150\164\164\160\163\072\057\057\167\167
+\167\056\156\145\164\154\157\143\153\056\150\165\057\144\157\143
+\163\057\040\143\151\155\145\156\040\166\141\147\171\040\153\145
+\162\150\145\164\157\153\040\141\172\040\151\156\146\157\100\156
+\145\164\154\157\143\153\056\156\145\164\040\145\055\155\141\151
+\154\040\143\151\155\145\156\056\040\127\101\122\116\111\116\107
+\041\040\124\150\145\040\151\163\163\165\141\156\143\145\040\141
+\156\144\040\164\150\145\040\165\163\145\040\157\146\040\164\150
+\151\163\040\143\145\162\164\151\146\151\143\141\164\145\040\141
+\162\145\040\163\165\142\152\145\143\164\040\164\157\040\164\150
+\145\040\116\145\164\114\157\143\153\040\121\165\141\154\151\146
+\151\145\144\040\103\120\123\040\141\166\141\151\154\141\142\154
+\145\040\141\164\040\150\164\164\160\163\072\057\057\167\167\167
+\056\156\145\164\154\157\143\153\056\150\165\057\144\157\143\163
+\057\040\157\162\040\142\171\040\145\055\155\141\151\154\040\141
+\164\040\151\156\146\157\100\156\145\164\154\157\143\153\056\156
+\145\164\060\035\006\003\125\035\016\004\026\004\024\011\152\142
+\026\222\260\132\273\125\016\313\165\062\072\062\345\262\041\311
+\050\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\001\001\000\221\152\120\234\333\170\201\233\077\213\102
+\343\073\374\246\303\356\103\340\317\363\342\200\065\111\105\166
+\002\342\343\057\005\305\361\052\347\300\101\063\306\266\233\320
+\063\071\315\300\333\241\255\154\067\002\114\130\101\073\362\227
+\222\306\110\250\315\345\212\071\211\141\371\122\227\351\275\366
+\371\224\164\350\161\016\274\167\206\303\006\314\132\174\112\176
+\064\120\060\056\373\177\062\232\215\075\363\040\133\370\152\312
+\206\363\061\114\054\131\200\002\175\376\070\311\060\165\034\267
+\125\343\274\237\272\250\155\204\050\005\165\263\213\015\300\221
+\124\041\347\246\013\264\231\365\121\101\334\315\243\107\042\331
+\307\001\201\304\334\107\117\046\352\037\355\333\315\015\230\364
+\243\234\264\163\062\112\226\231\376\274\177\310\045\130\370\130
+\363\166\146\211\124\244\246\076\304\120\134\272\211\030\202\165
+\110\041\322\117\023\350\140\176\007\166\333\020\265\121\346\252
+\271\150\252\315\366\235\220\165\022\352\070\032\312\104\350\267
+\231\247\052\150\225\146\225\253\255\357\211\313\140\251\006\022
+\306\224\107\351\050
+END
+
+# Trust for Certificate "NetLock Qualified (Class QA) Root"
+# Issuer: E=info@netlock.hu,CN=NetLock Minositett Kozjegyzoi (Class QA) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Serial Number: 123 (0x7b)
+# Subject: E=info@netlock.hu,CN=NetLock Minositett Kozjegyzoi (Class QA) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Not Valid Before: Sun Mar 30 01:47:11 2003
+# Not Valid After : Thu Dec 15 01:47:11 2022
+# Fingerprint (MD5): D4:80:65:68:24:F9:89:22:28:DB:F5:A4:9A:17:8F:14
+# Fingerprint (SHA1): 01:68:97:E1:A0:B8:F2:C3:B1:34:66:5C:20:A7:27:B7:A1:58:E2:8F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Qualified (Class QA) Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\001\150\227\341\240\270\362\303\261\064\146\134\040\247\047\267
+\241\130\342\217
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\324\200\145\150\044\371\211\042\050\333\365\244\232\027\217\024
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\311\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\102\060\100\006\003\125\004
+\003\023\071\116\145\164\114\157\143\153\040\115\151\156\157\163
+\151\164\145\164\164\040\113\157\172\152\145\147\171\172\157\151
+\040\050\103\154\141\163\163\040\121\101\051\040\124\141\156\165
+\163\151\164\166\141\156\171\153\151\141\144\157\061\036\060\034
+\006\011\052\206\110\206\367\015\001\011\001\026\017\151\156\146
+\157\100\156\145\164\154\157\143\153\056\150\165
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\173
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "NetLock Notary (Class A) Root"
+#
+# Issuer: CN=NetLock Kozjegyzoi (Class A) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,ST=Hungary,C=HU
+# Serial Number: 259 (0x103)
+# Subject: CN=NetLock Kozjegyzoi (Class A) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,ST=Hungary,C=HU
+# Not Valid Before: Wed Feb 24 23:14:47 1999
+# Not Valid After : Tue Feb 19 23:14:47 2019
+# Fingerprint (MD5): 86:38:6D:5E:49:63:6C:85:5C:DB:6D:DC:94:B7:D0:F7
+# Fingerprint (SHA1): AC:ED:5F:65:53:FD:25:CE:01:5F:1F:7A:48:3B:6A:74:9F:61:78:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Notary (Class A) Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\257\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\020\060\016\006\003\125\004\010\023\007\110\165\156\147\141
+\162\171\061\021\060\017\006\003\125\004\007\023\010\102\165\144
+\141\160\145\163\164\061\047\060\045\006\003\125\004\012\023\036
+\116\145\164\114\157\143\153\040\110\141\154\157\172\141\164\142
+\151\172\164\157\156\163\141\147\151\040\113\146\164\056\061\032
+\060\030\006\003\125\004\013\023\021\124\141\156\165\163\151\164
+\166\141\156\171\153\151\141\144\157\153\061\066\060\064\006\003
+\125\004\003\023\055\116\145\164\114\157\143\153\040\113\157\172
+\152\145\147\171\172\157\151\040\050\103\154\141\163\163\040\101
+\051\040\124\141\156\165\163\151\164\166\141\156\171\153\151\141
+\144\157
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\257\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\020\060\016\006\003\125\004\010\023\007\110\165\156\147\141
+\162\171\061\021\060\017\006\003\125\004\007\023\010\102\165\144
+\141\160\145\163\164\061\047\060\045\006\003\125\004\012\023\036
+\116\145\164\114\157\143\153\040\110\141\154\157\172\141\164\142
+\151\172\164\157\156\163\141\147\151\040\113\146\164\056\061\032
+\060\030\006\003\125\004\013\023\021\124\141\156\165\163\151\164
+\166\141\156\171\153\151\141\144\157\153\061\066\060\064\006\003
+\125\004\003\023\055\116\145\164\114\157\143\153\040\113\157\172
+\152\145\147\171\172\157\151\040\050\103\154\141\163\163\040\101
+\051\040\124\141\156\165\163\151\164\166\141\156\171\153\151\141
+\144\157
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\001\003
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\175\060\202\005\145\240\003\002\001\002\002\002\001
+\003\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000
+\060\201\257\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\020\060\016\006\003\125\004\010\023\007\110\165\156\147\141
+\162\171\061\021\060\017\006\003\125\004\007\023\010\102\165\144
+\141\160\145\163\164\061\047\060\045\006\003\125\004\012\023\036
+\116\145\164\114\157\143\153\040\110\141\154\157\172\141\164\142
+\151\172\164\157\156\163\141\147\151\040\113\146\164\056\061\032
+\060\030\006\003\125\004\013\023\021\124\141\156\165\163\151\164
+\166\141\156\171\153\151\141\144\157\153\061\066\060\064\006\003
+\125\004\003\023\055\116\145\164\114\157\143\153\040\113\157\172
+\152\145\147\171\172\157\151\040\050\103\154\141\163\163\040\101
+\051\040\124\141\156\165\163\151\164\166\141\156\171\153\151\141
+\144\157\060\036\027\015\071\071\060\062\062\064\062\063\061\064
+\064\067\132\027\015\061\071\060\062\061\071\062\063\061\064\064
+\067\132\060\201\257\061\013\060\011\006\003\125\004\006\023\002
+\110\125\061\020\060\016\006\003\125\004\010\023\007\110\165\156
+\147\141\162\171\061\021\060\017\006\003\125\004\007\023\010\102
+\165\144\141\160\145\163\164\061\047\060\045\006\003\125\004\012
+\023\036\116\145\164\114\157\143\153\040\110\141\154\157\172\141
+\164\142\151\172\164\157\156\163\141\147\151\040\113\146\164\056
+\061\032\060\030\006\003\125\004\013\023\021\124\141\156\165\163
+\151\164\166\141\156\171\153\151\141\144\157\153\061\066\060\064
+\006\003\125\004\003\023\055\116\145\164\114\157\143\153\040\113
+\157\172\152\145\147\171\172\157\151\040\050\103\154\141\163\163
+\040\101\051\040\124\141\156\165\163\151\164\166\141\156\171\153
+\151\141\144\157\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\274\164\214\017\273\114\364\067\036\251\005
+\202\330\346\341\154\160\352\170\265\156\321\070\104\015\250\203
+\316\135\322\326\325\201\305\324\113\347\133\224\160\046\333\073
+\235\152\114\142\367\161\363\144\326\141\073\075\353\163\243\067
+\331\317\352\214\222\073\315\367\007\334\146\164\227\364\105\042
+\335\364\134\340\277\155\363\276\145\063\344\025\072\277\333\230
+\220\125\070\304\355\246\125\143\013\260\170\004\364\343\156\301
+\077\216\374\121\170\037\222\236\203\302\376\331\260\251\311\274
+\132\000\377\251\250\230\164\373\366\054\076\025\071\015\266\004
+\125\250\016\230\040\102\263\261\045\255\176\232\157\135\123\261
+\253\014\374\353\340\363\172\263\250\263\377\106\366\143\242\330
+\072\230\173\266\254\205\377\260\045\117\164\143\347\023\007\245
+\012\217\005\367\300\144\157\176\247\047\200\226\336\324\056\206
+\140\307\153\053\136\163\173\027\347\221\077\144\014\330\113\042
+\064\053\233\062\362\110\037\237\241\012\204\172\342\302\255\227
+\075\216\325\301\371\126\243\120\351\306\264\372\230\242\356\225
+\346\052\003\214\337\002\003\001\000\001\243\202\002\237\060\202
+\002\233\060\016\006\003\125\035\017\001\001\377\004\004\003\002
+\000\006\060\022\006\003\125\035\023\001\001\377\004\010\060\006
+\001\001\377\002\001\004\060\021\006\011\140\206\110\001\206\370
+\102\001\001\004\004\003\002\000\007\060\202\002\140\006\011\140
+\206\110\001\206\370\102\001\015\004\202\002\121\026\202\002\115
+\106\111\107\131\105\114\105\115\041\040\105\172\145\156\040\164
+\141\156\165\163\151\164\166\141\156\171\040\141\040\116\145\164
+\114\157\143\153\040\113\146\164\056\040\101\154\164\141\154\141
+\156\157\163\040\123\172\157\154\147\141\154\164\141\164\141\163
+\151\040\106\145\154\164\145\164\145\154\145\151\142\145\156\040
+\154\145\151\162\164\040\145\154\152\141\162\141\163\157\153\040
+\141\154\141\160\152\141\156\040\153\145\163\172\165\154\164\056
+\040\101\040\150\151\164\145\154\145\163\151\164\145\163\040\146
+\157\154\171\141\155\141\164\141\164\040\141\040\116\145\164\114
+\157\143\153\040\113\146\164\056\040\164\145\162\155\145\153\146
+\145\154\145\154\157\163\163\145\147\055\142\151\172\164\157\163
+\151\164\141\163\141\040\166\145\144\151\056\040\101\040\144\151
+\147\151\164\141\154\151\163\040\141\154\141\151\162\141\163\040
+\145\154\146\157\147\141\144\141\163\141\156\141\153\040\146\145
+\154\164\145\164\145\154\145\040\141\172\040\145\154\157\151\162
+\164\040\145\154\154\145\156\157\162\172\145\163\151\040\145\154
+\152\141\162\141\163\040\155\145\147\164\145\164\145\154\145\056
+\040\101\172\040\145\154\152\141\162\141\163\040\154\145\151\162
+\141\163\141\040\155\145\147\164\141\154\141\154\150\141\164\157
+\040\141\040\116\145\164\114\157\143\153\040\113\146\164\056\040
+\111\156\164\145\162\156\145\164\040\150\157\156\154\141\160\152
+\141\156\040\141\040\150\164\164\160\163\072\057\057\167\167\167
+\056\156\145\164\154\157\143\153\056\156\145\164\057\144\157\143
+\163\040\143\151\155\145\156\040\166\141\147\171\040\153\145\162
+\150\145\164\157\040\141\172\040\145\154\154\145\156\157\162\172
+\145\163\100\156\145\164\154\157\143\153\056\156\145\164\040\145
+\055\155\141\151\154\040\143\151\155\145\156\056\040\111\115\120
+\117\122\124\101\116\124\041\040\124\150\145\040\151\163\163\165
+\141\156\143\145\040\141\156\144\040\164\150\145\040\165\163\145
+\040\157\146\040\164\150\151\163\040\143\145\162\164\151\146\151
+\143\141\164\145\040\151\163\040\163\165\142\152\145\143\164\040
+\164\157\040\164\150\145\040\116\145\164\114\157\143\153\040\103
+\120\123\040\141\166\141\151\154\141\142\154\145\040\141\164\040
+\150\164\164\160\163\072\057\057\167\167\167\056\156\145\164\154
+\157\143\153\056\156\145\164\057\144\157\143\163\040\157\162\040
+\142\171\040\145\055\155\141\151\154\040\141\164\040\143\160\163
+\100\156\145\164\154\157\143\153\056\156\145\164\056\060\015\006
+\011\052\206\110\206\367\015\001\001\004\005\000\003\202\001\001
+\000\110\044\106\367\272\126\157\372\310\050\003\100\116\345\061
+\071\153\046\153\123\177\333\337\337\363\161\075\046\300\024\016
+\306\147\173\043\250\014\163\335\001\273\306\312\156\067\071\125
+\325\307\214\126\040\016\050\012\016\322\052\244\260\111\122\306
+\070\007\376\276\012\011\214\321\230\317\312\332\024\061\241\117
+\322\071\374\017\021\054\103\303\335\253\223\307\125\076\107\174
+\030\032\000\334\363\173\330\362\177\122\154\040\364\013\137\151
+\122\364\356\370\262\051\140\353\343\111\061\041\015\326\265\020
+\101\342\101\011\154\342\032\232\126\113\167\002\366\240\233\232
+\047\207\350\125\051\161\302\220\237\105\170\032\341\025\144\075
+\320\016\330\240\166\237\256\305\320\056\352\326\017\126\354\144
+\177\132\233\024\130\001\047\176\023\120\307\153\052\346\150\074
+\277\134\240\012\033\341\016\172\351\342\200\303\351\351\366\375
+\154\021\236\320\345\050\047\053\124\062\102\024\202\165\346\112
+\360\053\146\165\143\214\242\373\004\076\203\016\233\066\360\030
+\344\046\040\303\214\360\050\007\255\074\027\146\210\265\375\266
+\210
+END
+
+# Trust for Certificate "NetLock Notary (Class A) Root"
+# Issuer: CN=NetLock Kozjegyzoi (Class A) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,ST=Hungary,C=HU
+# Serial Number: 259 (0x103)
+# Subject: CN=NetLock Kozjegyzoi (Class A) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,ST=Hungary,C=HU
+# Not Valid Before: Wed Feb 24 23:14:47 1999
+# Not Valid After : Tue Feb 19 23:14:47 2019
+# Fingerprint (MD5): 86:38:6D:5E:49:63:6C:85:5C:DB:6D:DC:94:B7:D0:F7
+# Fingerprint (SHA1): AC:ED:5F:65:53:FD:25:CE:01:5F:1F:7A:48:3B:6A:74:9F:61:78:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Notary (Class A) Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\254\355\137\145\123\375\045\316\001\137\037\172\110\073\152\164
+\237\141\170\306
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\206\070\155\136\111\143\154\205\134\333\155\334\224\267\320\367
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\257\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\020\060\016\006\003\125\004\010\023\007\110\165\156\147\141
+\162\171\061\021\060\017\006\003\125\004\007\023\010\102\165\144
+\141\160\145\163\164\061\047\060\045\006\003\125\004\012\023\036
+\116\145\164\114\157\143\153\040\110\141\154\157\172\141\164\142
+\151\172\164\157\156\163\141\147\151\040\113\146\164\056\061\032
+\060\030\006\003\125\004\013\023\021\124\141\156\165\163\151\164
+\166\141\156\171\153\151\141\144\157\153\061\066\060\064\006\003
+\125\004\003\023\055\116\145\164\114\157\143\153\040\113\157\172
+\152\145\147\171\172\157\151\040\050\103\154\141\163\163\040\101
+\051\040\124\141\156\165\163\151\164\166\141\156\171\153\151\141
+\144\157
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\001\003
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "NetLock Business (Class B) Root"
+#
+# Issuer: CN=NetLock Uzleti (Class B) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Serial Number: 105 (0x69)
+# Subject: CN=NetLock Uzleti (Class B) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Not Valid Before: Thu Feb 25 14:10:22 1999
+# Not Valid After : Wed Feb 20 14:10:22 2019
+# Fingerprint (MD5): 39:16:AA:B9:6A:41:E1:14:69:DF:9E:6C:3B:72:DC:B6
+# Fingerprint (SHA1): 87:9F:4B:EE:05:DF:98:58:3B:E3:60:D6:33:E7:0D:3F:FE:98:71:AF
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Business (Class B) Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\231\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\062\060\060\006\003\125\004
+\003\023\051\116\145\164\114\157\143\153\040\125\172\154\145\164
+\151\040\050\103\154\141\163\163\040\102\051\040\124\141\156\165
+\163\151\164\166\141\156\171\153\151\141\144\157
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\231\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\062\060\060\006\003\125\004
+\003\023\051\116\145\164\114\157\143\153\040\125\172\154\145\164
+\151\040\050\103\154\141\163\163\040\102\051\040\124\141\156\165
+\163\151\164\166\141\156\171\153\151\141\144\157
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\151
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\113\060\202\004\264\240\003\002\001\002\002\001\151
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
+\201\231\061\013\060\011\006\003\125\004\006\023\002\110\125\061
+\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160\145
+\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145\164
+\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172\164
+\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030\006
+\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141\156
+\171\153\151\141\144\157\153\061\062\060\060\006\003\125\004\003
+\023\051\116\145\164\114\157\143\153\040\125\172\154\145\164\151
+\040\050\103\154\141\163\163\040\102\051\040\124\141\156\165\163
+\151\164\166\141\156\171\153\151\141\144\157\060\036\027\015\071
+\071\060\062\062\065\061\064\061\060\062\062\132\027\015\061\071
+\060\062\062\060\061\064\061\060\062\062\132\060\201\231\061\013
+\060\011\006\003\125\004\006\023\002\110\125\061\021\060\017\006
+\003\125\004\007\023\010\102\165\144\141\160\145\163\164\061\047
+\060\045\006\003\125\004\012\023\036\116\145\164\114\157\143\153
+\040\110\141\154\157\172\141\164\142\151\172\164\157\156\163\141
+\147\151\040\113\146\164\056\061\032\060\030\006\003\125\004\013
+\023\021\124\141\156\165\163\151\164\166\141\156\171\153\151\141
+\144\157\153\061\062\060\060\006\003\125\004\003\023\051\116\145
+\164\114\157\143\153\040\125\172\154\145\164\151\040\050\103\154
+\141\163\163\040\102\051\040\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\060\201\237\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\201\215\000\060\201\211
+\002\201\201\000\261\352\004\354\040\240\043\302\217\070\140\317
+\307\106\263\325\033\376\373\271\231\236\004\334\034\177\214\112
+\201\230\356\244\324\312\212\027\271\042\177\203\012\165\114\233
+\300\151\330\144\071\243\355\222\243\375\133\134\164\032\300\107
+\312\072\151\166\232\272\342\104\027\374\114\243\325\376\270\227
+\210\257\210\003\211\037\244\362\004\076\310\007\013\346\371\263
+\057\172\142\024\011\106\024\312\144\365\213\200\265\142\250\330
+\153\326\161\223\055\263\277\011\124\130\355\006\353\250\173\334
+\103\261\241\151\002\003\001\000\001\243\202\002\237\060\202\002
+\233\060\022\006\003\125\035\023\001\001\377\004\010\060\006\001
+\001\377\002\001\004\060\016\006\003\125\035\017\001\001\377\004
+\004\003\002\000\006\060\021\006\011\140\206\110\001\206\370\102
+\001\001\004\004\003\002\000\007\060\202\002\140\006\011\140\206
+\110\001\206\370\102\001\015\004\202\002\121\026\202\002\115\106
+\111\107\131\105\114\105\115\041\040\105\172\145\156\040\164\141
+\156\165\163\151\164\166\141\156\171\040\141\040\116\145\164\114
+\157\143\153\040\113\146\164\056\040\101\154\164\141\154\141\156
+\157\163\040\123\172\157\154\147\141\154\164\141\164\141\163\151
+\040\106\145\154\164\145\164\145\154\145\151\142\145\156\040\154
+\145\151\162\164\040\145\154\152\141\162\141\163\157\153\040\141
+\154\141\160\152\141\156\040\153\145\163\172\165\154\164\056\040
+\101\040\150\151\164\145\154\145\163\151\164\145\163\040\146\157
+\154\171\141\155\141\164\141\164\040\141\040\116\145\164\114\157
+\143\153\040\113\146\164\056\040\164\145\162\155\145\153\146\145
+\154\145\154\157\163\163\145\147\055\142\151\172\164\157\163\151
+\164\141\163\141\040\166\145\144\151\056\040\101\040\144\151\147
+\151\164\141\154\151\163\040\141\154\141\151\162\141\163\040\145
+\154\146\157\147\141\144\141\163\141\156\141\153\040\146\145\154
+\164\145\164\145\154\145\040\141\172\040\145\154\157\151\162\164
+\040\145\154\154\145\156\157\162\172\145\163\151\040\145\154\152
+\141\162\141\163\040\155\145\147\164\145\164\145\154\145\056\040
+\101\172\040\145\154\152\141\162\141\163\040\154\145\151\162\141
+\163\141\040\155\145\147\164\141\154\141\154\150\141\164\157\040
+\141\040\116\145\164\114\157\143\153\040\113\146\164\056\040\111
+\156\164\145\162\156\145\164\040\150\157\156\154\141\160\152\141
+\156\040\141\040\150\164\164\160\163\072\057\057\167\167\167\056
+\156\145\164\154\157\143\153\056\156\145\164\057\144\157\143\163
+\040\143\151\155\145\156\040\166\141\147\171\040\153\145\162\150
+\145\164\157\040\141\172\040\145\154\154\145\156\157\162\172\145
+\163\100\156\145\164\154\157\143\153\056\156\145\164\040\145\055
+\155\141\151\154\040\143\151\155\145\156\056\040\111\115\120\117
+\122\124\101\116\124\041\040\124\150\145\040\151\163\163\165\141
+\156\143\145\040\141\156\144\040\164\150\145\040\165\163\145\040
+\157\146\040\164\150\151\163\040\143\145\162\164\151\146\151\143
+\141\164\145\040\151\163\040\163\165\142\152\145\143\164\040\164
+\157\040\164\150\145\040\116\145\164\114\157\143\153\040\103\120
+\123\040\141\166\141\151\154\141\142\154\145\040\141\164\040\150
+\164\164\160\163\072\057\057\167\167\167\056\156\145\164\154\157
+\143\153\056\156\145\164\057\144\157\143\163\040\157\162\040\142
+\171\040\145\055\155\141\151\154\040\141\164\040\143\160\163\100
+\156\145\164\154\157\143\153\056\156\145\164\056\060\015\006\011
+\052\206\110\206\367\015\001\001\004\005\000\003\201\201\000\004
+\333\256\214\027\257\370\016\220\061\116\315\076\011\300\155\072
+\260\370\063\114\107\114\343\165\210\020\227\254\260\070\025\221
+\306\051\226\314\041\300\155\074\245\164\317\330\202\245\071\303
+\145\343\102\160\273\042\220\343\175\333\065\166\341\240\265\332
+\237\160\156\223\032\060\071\035\060\333\056\343\174\262\221\262
+\321\067\051\372\271\326\027\134\107\117\343\035\070\353\237\325
+\173\225\250\050\236\025\112\321\321\320\053\000\227\240\342\222
+\066\053\143\254\130\001\153\063\051\120\206\203\361\001\110
+END
+
+# Trust for Certificate "NetLock Business (Class B) Root"
+# Issuer: CN=NetLock Uzleti (Class B) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Serial Number: 105 (0x69)
+# Subject: CN=NetLock Uzleti (Class B) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Not Valid Before: Thu Feb 25 14:10:22 1999
+# Not Valid After : Wed Feb 20 14:10:22 2019
+# Fingerprint (MD5): 39:16:AA:B9:6A:41:E1:14:69:DF:9E:6C:3B:72:DC:B6
+# Fingerprint (SHA1): 87:9F:4B:EE:05:DF:98:58:3B:E3:60:D6:33:E7:0D:3F:FE:98:71:AF
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Business (Class B) Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\207\237\113\356\005\337\230\130\073\343\140\326\063\347\015\077
+\376\230\161\257
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\071\026\252\271\152\101\341\024\151\337\236\154\073\162\334\266
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\231\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\062\060\060\006\003\125\004
+\003\023\051\116\145\164\114\157\143\153\040\125\172\154\145\164
+\151\040\050\103\154\141\163\163\040\102\051\040\124\141\156\165
+\163\151\164\166\141\156\171\153\151\141\144\157
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\151
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "NetLock Express (Class C) Root"
+#
+# Issuer: CN=NetLock Expressz (Class C) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Serial Number: 104 (0x68)
+# Subject: CN=NetLock Expressz (Class C) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Not Valid Before: Thu Feb 25 14:08:11 1999
+# Not Valid After : Wed Feb 20 14:08:11 2019
+# Fingerprint (MD5): 4F:EB:F1:F0:70:C2:80:63:5D:58:9F:DA:12:3C:A9:C4
+# Fingerprint (SHA1): E3:92:51:2F:0A:CF:F5:05:DF:F6:DE:06:7F:75:37:E1:65:EA:57:4B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Express (Class C) Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\233\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\064\060\062\006\003\125\004
+\003\023\053\116\145\164\114\157\143\153\040\105\170\160\162\145
+\163\163\172\040\050\103\154\141\163\163\040\103\051\040\124\141
+\156\165\163\151\164\166\141\156\171\153\151\141\144\157
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\233\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\064\060\062\006\003\125\004
+\003\023\053\116\145\164\114\157\143\153\040\105\170\160\162\145
+\163\163\172\040\050\103\154\141\163\163\040\103\051\040\124\141
+\156\165\163\151\164\166\141\156\171\153\151\141\144\157
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\150
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\117\060\202\004\270\240\003\002\001\002\002\001\150
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
+\201\233\061\013\060\011\006\003\125\004\006\023\002\110\125\061
+\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160\145
+\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145\164
+\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172\164
+\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030\006
+\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141\156
+\171\153\151\141\144\157\153\061\064\060\062\006\003\125\004\003
+\023\053\116\145\164\114\157\143\153\040\105\170\160\162\145\163
+\163\172\040\050\103\154\141\163\163\040\103\051\040\124\141\156
+\165\163\151\164\166\141\156\171\153\151\141\144\157\060\036\027
+\015\071\071\060\062\062\065\061\064\060\070\061\061\132\027\015
+\061\071\060\062\062\060\061\064\060\070\061\061\132\060\201\233
+\061\013\060\011\006\003\125\004\006\023\002\110\125\061\021\060
+\017\006\003\125\004\007\023\010\102\165\144\141\160\145\163\164
+\061\047\060\045\006\003\125\004\012\023\036\116\145\164\114\157
+\143\153\040\110\141\154\157\172\141\164\142\151\172\164\157\156
+\163\141\147\151\040\113\146\164\056\061\032\060\030\006\003\125
+\004\013\023\021\124\141\156\165\163\151\164\166\141\156\171\153
+\151\141\144\157\153\061\064\060\062\006\003\125\004\003\023\053
+\116\145\164\114\157\143\153\040\105\170\160\162\145\163\163\172
+\040\050\103\154\141\163\163\040\103\051\040\124\141\156\165\163
+\151\164\166\141\156\171\153\151\141\144\157\060\201\237\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\201\215
+\000\060\201\211\002\201\201\000\353\354\260\154\141\212\043\045
+\257\140\040\343\331\237\374\223\013\333\135\215\260\241\263\100
+\072\202\316\375\165\340\170\062\003\206\132\206\225\221\355\123
+\372\235\100\374\346\350\335\331\133\172\003\275\135\363\073\014
+\303\121\171\233\255\125\240\351\320\003\020\257\012\272\024\102
+\331\122\046\021\042\307\322\040\314\202\244\232\251\376\270\201
+\166\235\152\267\322\066\165\076\261\206\011\366\156\155\176\116
+\267\172\354\256\161\204\366\004\063\010\045\062\353\164\254\026
+\104\306\344\100\223\035\177\255\002\003\001\000\001\243\202\002
+\237\060\202\002\233\060\022\006\003\125\035\023\001\001\377\004
+\010\060\006\001\001\377\002\001\004\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\000\006\060\021\006\011\140\206\110
+\001\206\370\102\001\001\004\004\003\002\000\007\060\202\002\140
+\006\011\140\206\110\001\206\370\102\001\015\004\202\002\121\026
+\202\002\115\106\111\107\131\105\114\105\115\041\040\105\172\145
+\156\040\164\141\156\165\163\151\164\166\141\156\171\040\141\040
+\116\145\164\114\157\143\153\040\113\146\164\056\040\101\154\164
+\141\154\141\156\157\163\040\123\172\157\154\147\141\154\164\141
+\164\141\163\151\040\106\145\154\164\145\164\145\154\145\151\142
+\145\156\040\154\145\151\162\164\040\145\154\152\141\162\141\163
+\157\153\040\141\154\141\160\152\141\156\040\153\145\163\172\165
+\154\164\056\040\101\040\150\151\164\145\154\145\163\151\164\145
+\163\040\146\157\154\171\141\155\141\164\141\164\040\141\040\116
+\145\164\114\157\143\153\040\113\146\164\056\040\164\145\162\155
+\145\153\146\145\154\145\154\157\163\163\145\147\055\142\151\172
+\164\157\163\151\164\141\163\141\040\166\145\144\151\056\040\101
+\040\144\151\147\151\164\141\154\151\163\040\141\154\141\151\162
+\141\163\040\145\154\146\157\147\141\144\141\163\141\156\141\153
+\040\146\145\154\164\145\164\145\154\145\040\141\172\040\145\154
+\157\151\162\164\040\145\154\154\145\156\157\162\172\145\163\151
+\040\145\154\152\141\162\141\163\040\155\145\147\164\145\164\145
+\154\145\056\040\101\172\040\145\154\152\141\162\141\163\040\154
+\145\151\162\141\163\141\040\155\145\147\164\141\154\141\154\150
+\141\164\157\040\141\040\116\145\164\114\157\143\153\040\113\146
+\164\056\040\111\156\164\145\162\156\145\164\040\150\157\156\154
+\141\160\152\141\156\040\141\040\150\164\164\160\163\072\057\057
+\167\167\167\056\156\145\164\154\157\143\153\056\156\145\164\057
+\144\157\143\163\040\143\151\155\145\156\040\166\141\147\171\040
+\153\145\162\150\145\164\157\040\141\172\040\145\154\154\145\156
+\157\162\172\145\163\100\156\145\164\154\157\143\153\056\156\145
+\164\040\145\055\155\141\151\154\040\143\151\155\145\156\056\040
+\111\115\120\117\122\124\101\116\124\041\040\124\150\145\040\151
+\163\163\165\141\156\143\145\040\141\156\144\040\164\150\145\040
+\165\163\145\040\157\146\040\164\150\151\163\040\143\145\162\164
+\151\146\151\143\141\164\145\040\151\163\040\163\165\142\152\145
+\143\164\040\164\157\040\164\150\145\040\116\145\164\114\157\143
+\153\040\103\120\123\040\141\166\141\151\154\141\142\154\145\040
+\141\164\040\150\164\164\160\163\072\057\057\167\167\167\056\156
+\145\164\154\157\143\153\056\156\145\164\057\144\157\143\163\040
+\157\162\040\142\171\040\145\055\155\141\151\154\040\141\164\040
+\143\160\163\100\156\145\164\154\157\143\153\056\156\145\164\056
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\003
+\201\201\000\020\255\177\327\014\062\200\012\330\206\361\171\230
+\265\255\324\315\263\066\304\226\110\301\134\315\232\331\005\056
+\237\276\120\353\364\046\024\020\055\324\146\027\370\236\301\047
+\375\361\355\344\173\113\240\154\265\253\232\127\160\246\355\240
+\244\355\056\365\375\374\275\376\115\067\010\014\274\343\226\203
+\042\365\111\033\177\113\053\264\124\301\200\174\231\116\035\320
+\214\356\320\254\345\222\372\165\126\376\144\240\023\217\270\270
+\026\235\141\005\147\200\310\320\330\245\007\002\064\230\004\215
+\063\004\324
+END
+
+# Trust for Certificate "NetLock Express (Class C) Root"
+# Issuer: CN=NetLock Expressz (Class C) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Serial Number: 104 (0x68)
+# Subject: CN=NetLock Expressz (Class C) Tanusitvanykiado,OU=Tanusitvanykiadok,O=NetLock Halozatbiztonsagi Kft.,L=Budapest,C=HU
+# Not Valid Before: Thu Feb 25 14:08:11 1999
+# Not Valid After : Wed Feb 20 14:08:11 2019
+# Fingerprint (MD5): 4F:EB:F1:F0:70:C2:80:63:5D:58:9F:DA:12:3C:A9:C4
+# Fingerprint (SHA1): E3:92:51:2F:0A:CF:F5:05:DF:F6:DE:06:7F:75:37:E1:65:EA:57:4B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Express (Class C) Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\343\222\121\057\012\317\365\005\337\366\336\006\177\165\067\341
+\145\352\127\113
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\117\353\361\360\160\302\200\143\135\130\237\332\022\074\251\304
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\233\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160
+\145\163\164\061\047\060\045\006\003\125\004\012\023\036\116\145
+\164\114\157\143\153\040\110\141\154\157\172\141\164\142\151\172
+\164\157\156\163\141\147\151\040\113\146\164\056\061\032\060\030
+\006\003\125\004\013\023\021\124\141\156\165\163\151\164\166\141
+\156\171\153\151\141\144\157\153\061\064\060\062\006\003\125\004
+\003\023\053\116\145\164\114\157\143\153\040\105\170\160\162\145
+\163\163\172\040\050\103\154\141\163\163\040\103\051\040\124\141
+\156\165\163\151\164\166\141\156\171\153\151\141\144\157
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\150
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "XRamp Global CA Root"
+#
+# Issuer: CN=XRamp Global Certification Authority,O=XRamp Security Services Inc,OU=www.xrampsecurity.com,C=US
+# Serial Number:50:94:6c:ec:18:ea:d5:9c:4d:d5:97:ef:75:8f:a0:ad
+# Subject: CN=XRamp Global Certification Authority,O=XRamp Security Services Inc,OU=www.xrampsecurity.com,C=US
+# Not Valid Before: Mon Nov 01 17:14:04 2004
+# Not Valid After : Mon Jan 01 05:37:19 2035
+# Fingerprint (MD5): A1:0B:44:B3:CA:10:D8:00:6E:9D:0F:D8:0F:92:0A:D1
+# Fingerprint (SHA1): B8:01:86:D1:EB:9C:86:A5:41:04:CF:30:54:F3:4C:52:B7:E5:58:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "XRamp Global CA Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\036\060\034\006\003\125\004\013\023\025\167\167\167\056\170
+\162\141\155\160\163\145\143\165\162\151\164\171\056\143\157\155
+\061\044\060\042\006\003\125\004\012\023\033\130\122\141\155\160
+\040\123\145\143\165\162\151\164\171\040\123\145\162\166\151\143
+\145\163\040\111\156\143\061\055\060\053\006\003\125\004\003\023
+\044\130\122\141\155\160\040\107\154\157\142\141\154\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\036\060\034\006\003\125\004\013\023\025\167\167\167\056\170
+\162\141\155\160\163\145\143\165\162\151\164\171\056\143\157\155
+\061\044\060\042\006\003\125\004\012\023\033\130\122\141\155\160
+\040\123\145\143\165\162\151\164\171\040\123\145\162\166\151\143
+\145\163\040\111\156\143\061\055\060\053\006\003\125\004\003\023
+\044\130\122\141\155\160\040\107\154\157\142\141\154\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\120\224\154\354\030\352\325\234\115\325\227\357\165\217
+\240\255
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\060\060\202\003\030\240\003\002\001\002\002\020\120
+\224\154\354\030\352\325\234\115\325\227\357\165\217\240\255\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\202\061\013\060\011\006\003\125\004\006\023\002\125\123\061\036
+\060\034\006\003\125\004\013\023\025\167\167\167\056\170\162\141
+\155\160\163\145\143\165\162\151\164\171\056\143\157\155\061\044
+\060\042\006\003\125\004\012\023\033\130\122\141\155\160\040\123
+\145\143\165\162\151\164\171\040\123\145\162\166\151\143\145\163
+\040\111\156\143\061\055\060\053\006\003\125\004\003\023\044\130
+\122\141\155\160\040\107\154\157\142\141\154\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\060\036\027\015\060\064\061\061\060\061\061\067\061
+\064\060\064\132\027\015\063\065\060\061\060\061\060\065\063\067
+\061\071\132\060\201\202\061\013\060\011\006\003\125\004\006\023
+\002\125\123\061\036\060\034\006\003\125\004\013\023\025\167\167
+\167\056\170\162\141\155\160\163\145\143\165\162\151\164\171\056
+\143\157\155\061\044\060\042\006\003\125\004\012\023\033\130\122
+\141\155\160\040\123\145\143\165\162\151\164\171\040\123\145\162
+\166\151\143\145\163\040\111\156\143\061\055\060\053\006\003\125
+\004\003\023\044\130\122\141\155\160\040\107\154\157\142\141\154
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\060\202\001\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000
+\060\202\001\012\002\202\001\001\000\230\044\036\275\025\264\272
+\337\307\214\245\047\266\070\013\151\363\266\116\250\054\056\041
+\035\134\104\337\041\135\176\043\164\376\136\176\264\112\267\246
+\255\037\256\340\006\026\342\233\133\331\147\164\153\135\200\217
+\051\235\206\033\331\234\015\230\155\166\020\050\130\344\145\260
+\177\112\230\171\237\340\303\061\176\200\053\265\214\300\100\073
+\021\206\320\313\242\206\066\140\244\325\060\202\155\331\156\320
+\017\022\004\063\227\137\117\141\132\360\344\371\221\253\347\035
+\073\274\350\317\364\153\055\064\174\342\110\141\034\216\363\141
+\104\314\157\240\112\251\224\260\115\332\347\251\064\172\162\070
+\250\101\314\074\224\021\175\353\310\246\214\267\206\313\312\063
+\073\331\075\067\213\373\172\076\206\054\347\163\327\012\127\254
+\144\233\031\353\364\017\004\010\212\254\003\027\031\144\364\132
+\045\042\215\064\054\262\366\150\035\022\155\323\212\036\024\332
+\304\217\246\342\043\205\325\172\015\275\152\340\351\354\354\027
+\273\102\033\147\252\045\355\105\203\041\374\301\311\174\325\142
+\076\372\362\305\055\323\375\324\145\002\003\001\000\001\243\201
+\237\060\201\234\060\023\006\011\053\006\001\004\001\202\067\024
+\002\004\006\036\004\000\103\000\101\060\013\006\003\125\035\017
+\004\004\003\002\001\206\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\035\006\003\125\035\016\004\026
+\004\024\306\117\242\075\006\143\204\011\234\316\142\344\004\254
+\215\134\265\351\266\033\060\066\006\003\125\035\037\004\057\060
+\055\060\053\240\051\240\047\206\045\150\164\164\160\072\057\057
+\143\162\154\056\170\162\141\155\160\163\145\143\165\162\151\164
+\171\056\143\157\155\057\130\107\103\101\056\143\162\154\060\020
+\006\011\053\006\001\004\001\202\067\025\001\004\003\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\221\025\071\003\001\033\147\373\112\034\371\012
+\140\133\241\332\115\227\142\371\044\123\047\327\202\144\116\220
+\056\303\111\033\053\232\334\374\250\170\147\065\361\035\360\021
+\275\267\110\343\020\366\015\337\077\322\311\266\252\125\244\110
+\272\002\333\336\131\056\025\133\073\235\026\175\107\327\067\352
+\137\115\166\022\066\273\037\327\241\201\004\106\040\243\054\155
+\251\236\001\176\077\051\316\000\223\337\375\311\222\163\211\211
+\144\236\347\053\344\034\221\054\322\271\316\175\316\157\061\231
+\323\346\276\322\036\220\360\011\024\171\134\043\253\115\322\332
+\041\037\115\231\171\235\341\317\047\237\020\233\034\210\015\260
+\212\144\101\061\270\016\154\220\044\244\233\134\161\217\272\273
+\176\034\033\333\152\200\017\041\274\351\333\246\267\100\364\262
+\213\251\261\344\357\232\032\320\075\151\231\356\250\050\243\341
+\074\263\360\262\021\234\317\174\100\346\335\347\103\175\242\330
+\072\265\251\215\362\064\231\304\324\020\341\006\375\011\204\020
+\073\356\304\114\364\354\047\174\102\302\164\174\202\212\011\311
+\264\003\045\274
+END
+
+# Trust for Certificate "XRamp Global CA Root"
+# Issuer: CN=XRamp Global Certification Authority,O=XRamp Security Services Inc,OU=www.xrampsecurity.com,C=US
+# Serial Number:50:94:6c:ec:18:ea:d5:9c:4d:d5:97:ef:75:8f:a0:ad
+# Subject: CN=XRamp Global Certification Authority,O=XRamp Security Services Inc,OU=www.xrampsecurity.com,C=US
+# Not Valid Before: Mon Nov 01 17:14:04 2004
+# Not Valid After : Mon Jan 01 05:37:19 2035
+# Fingerprint (MD5): A1:0B:44:B3:CA:10:D8:00:6E:9D:0F:D8:0F:92:0A:D1
+# Fingerprint (SHA1): B8:01:86:D1:EB:9C:86:A5:41:04:CF:30:54:F3:4C:52:B7:E5:58:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "XRamp Global CA Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\270\001\206\321\353\234\206\245\101\004\317\060\124\363\114\122
+\267\345\130\306
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\241\013\104\263\312\020\330\000\156\235\017\330\017\222\012\321
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\036\060\034\006\003\125\004\013\023\025\167\167\167\056\170
+\162\141\155\160\163\145\143\165\162\151\164\171\056\143\157\155
+\061\044\060\042\006\003\125\004\012\023\033\130\122\141\155\160
+\040\123\145\143\165\162\151\164\171\040\123\145\162\166\151\143
+\145\163\040\111\156\143\061\055\060\053\006\003\125\004\003\023
+\044\130\122\141\155\160\040\107\154\157\142\141\154\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\120\224\154\354\030\352\325\234\115\325\227\357\165\217
+\240\255
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Go Daddy Class 2 CA"
+#
+# Issuer: OU=Go Daddy Class 2 Certification Authority,O="The Go Daddy Group, Inc.",C=US
+# Serial Number: 0 (0x0)
+# Subject: OU=Go Daddy Class 2 Certification Authority,O="The Go Daddy Group, Inc.",C=US
+# Not Valid Before: Tue Jun 29 17:06:20 2004
+# Not Valid After : Thu Jun 29 17:06:20 2034
+# Fingerprint (MD5): 91:DE:06:25:AB:DA:FD:32:17:0C:BB:25:17:2A:84:67
+# Fingerprint (SHA1): 27:96:BA:E6:3F:18:01:E2:77:26:1B:A0:D7:77:70:02:8F:20:EE:E4
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Go Daddy Class 2 CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\143\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\041\060\037\006\003\125\004\012\023\030\124\150\145\040\107\157
+\040\104\141\144\144\171\040\107\162\157\165\160\054\040\111\156
+\143\056\061\061\060\057\006\003\125\004\013\023\050\107\157\040
+\104\141\144\144\171\040\103\154\141\163\163\040\062\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\143\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\041\060\037\006\003\125\004\012\023\030\124\150\145\040\107\157
+\040\104\141\144\144\171\040\107\162\157\165\160\054\040\111\156
+\143\056\061\061\060\057\006\003\125\004\013\023\050\107\157\040
+\104\141\144\144\171\040\103\154\141\163\163\040\062\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\000\060\202\002\350\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\143\061\013\060\011\006\003\125\004\006\023\002\125\123\061\041
+\060\037\006\003\125\004\012\023\030\124\150\145\040\107\157\040
+\104\141\144\144\171\040\107\162\157\165\160\054\040\111\156\143
+\056\061\061\060\057\006\003\125\004\013\023\050\107\157\040\104
+\141\144\144\171\040\103\154\141\163\163\040\062\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\060\036\027\015\060\064\060\066\062\071\061\067
+\060\066\062\060\132\027\015\063\064\060\066\062\071\061\067\060
+\066\062\060\132\060\143\061\013\060\011\006\003\125\004\006\023
+\002\125\123\061\041\060\037\006\003\125\004\012\023\030\124\150
+\145\040\107\157\040\104\141\144\144\171\040\107\162\157\165\160
+\054\040\111\156\143\056\061\061\060\057\006\003\125\004\013\023
+\050\107\157\040\104\141\144\144\171\040\103\154\141\163\163\040
+\062\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\060\202\001\040\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\015
+\000\060\202\001\010\002\202\001\001\000\336\235\327\352\127\030
+\111\241\133\353\327\137\110\206\352\276\335\377\344\357\147\034
+\364\145\150\263\127\161\240\136\167\273\355\233\111\351\160\200
+\075\126\030\143\010\157\332\362\314\320\077\177\002\124\042\124
+\020\330\262\201\324\300\165\075\113\177\307\167\303\076\170\253
+\032\003\265\040\153\057\152\053\261\305\210\176\304\273\036\260
+\301\330\105\047\157\252\067\130\367\207\046\327\330\055\366\251
+\027\267\037\162\066\116\246\027\077\145\230\222\333\052\156\135
+\242\376\210\340\013\336\177\345\215\025\341\353\313\072\325\342
+\022\242\023\055\330\216\257\137\022\075\240\010\005\010\266\134
+\245\145\070\004\105\231\036\243\140\140\164\305\101\245\162\142
+\033\142\305\037\157\137\032\102\276\002\121\145\250\256\043\030
+\152\374\170\003\251\115\177\200\303\372\253\132\374\241\100\244
+\312\031\026\376\262\310\357\136\163\015\356\167\275\232\366\171
+\230\274\261\007\147\242\025\015\335\240\130\306\104\173\012\076
+\142\050\137\272\101\007\123\130\317\021\176\070\164\305\370\377
+\265\151\220\217\204\164\352\227\033\257\002\001\003\243\201\300
+\060\201\275\060\035\006\003\125\035\016\004\026\004\024\322\304
+\260\322\221\324\114\021\161\263\141\313\075\241\376\335\250\152
+\324\343\060\201\215\006\003\125\035\043\004\201\205\060\201\202
+\200\024\322\304\260\322\221\324\114\021\161\263\141\313\075\241
+\376\335\250\152\324\343\241\147\244\145\060\143\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\041\060\037\006\003\125
+\004\012\023\030\124\150\145\040\107\157\040\104\141\144\144\171
+\040\107\162\157\165\160\054\040\111\156\143\056\061\061\060\057
+\006\003\125\004\013\023\050\107\157\040\104\141\144\144\171\040
+\103\154\141\163\163\040\062\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\202
+\001\000\060\014\006\003\125\035\023\004\005\060\003\001\001\377
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\062\113\363\262\312\076\221\374\022\306\241\007
+\214\216\167\240\063\006\024\134\220\036\030\367\010\246\075\012
+\031\371\207\200\021\156\151\344\226\027\060\377\064\221\143\162
+\070\356\314\034\001\243\035\224\050\244\061\366\172\304\124\327
+\366\345\061\130\003\242\314\316\142\333\224\105\163\265\277\105
+\311\044\265\325\202\002\255\043\171\151\215\270\266\115\316\317
+\114\312\063\043\350\034\210\252\235\213\101\156\026\311\040\345
+\211\236\315\073\332\160\367\176\231\046\040\024\124\045\253\156
+\163\205\346\233\041\235\012\154\202\016\250\370\302\014\372\020
+\036\154\226\357\207\015\304\017\141\213\255\356\203\053\225\370
+\216\222\204\162\071\353\040\352\203\355\203\315\227\156\010\274
+\353\116\046\266\163\053\344\323\366\114\376\046\161\342\141\021
+\164\112\377\127\032\207\017\165\110\056\317\121\151\027\240\002
+\022\141\225\325\321\100\262\020\114\356\304\254\020\103\246\245
+\236\012\325\225\142\232\015\317\210\202\305\062\014\344\053\237
+\105\346\015\237\050\234\261\271\052\132\127\255\067\017\257\035
+\177\333\275\237
+END
+
+# Trust for Certificate "Go Daddy Class 2 CA"
+# Issuer: OU=Go Daddy Class 2 Certification Authority,O="The Go Daddy Group, Inc.",C=US
+# Serial Number: 0 (0x0)
+# Subject: OU=Go Daddy Class 2 Certification Authority,O="The Go Daddy Group, Inc.",C=US
+# Not Valid Before: Tue Jun 29 17:06:20 2004
+# Not Valid After : Thu Jun 29 17:06:20 2034
+# Fingerprint (MD5): 91:DE:06:25:AB:DA:FD:32:17:0C:BB:25:17:2A:84:67
+# Fingerprint (SHA1): 27:96:BA:E6:3F:18:01:E2:77:26:1B:A0:D7:77:70:02:8F:20:EE:E4
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Go Daddy Class 2 CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\047\226\272\346\077\030\001\342\167\046\033\240\327\167\160\002
+\217\040\356\344
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\221\336\006\045\253\332\375\062\027\014\273\045\027\052\204\147
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\143\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\041\060\037\006\003\125\004\012\023\030\124\150\145\040\107\157
+\040\104\141\144\144\171\040\107\162\157\165\160\054\040\111\156
+\143\056\061\061\060\057\006\003\125\004\013\023\050\107\157\040
+\104\141\144\144\171\040\103\154\141\163\163\040\062\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Starfield Class 2 CA"
+#
+# Issuer: OU=Starfield Class 2 Certification Authority,O="Starfield Technologies, Inc.",C=US
+# Serial Number: 0 (0x0)
+# Subject: OU=Starfield Class 2 Certification Authority,O="Starfield Technologies, Inc.",C=US
+# Not Valid Before: Tue Jun 29 17:39:16 2004
+# Not Valid After : Thu Jun 29 17:39:16 2034
+# Fingerprint (MD5): 32:4A:4B:BB:C8:63:69:9B:BE:74:9A:C6:DD:1D:46:24
+# Fingerprint (SHA1): AD:7E:1C:28:B0:64:EF:8F:60:03:40:20:14:C3:D0:E3:37:0E:B5:8A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Starfield Class 2 CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\045\060\043\006\003\125\004\012\023\034\123\164\141\162\146\151
+\145\154\144\040\124\145\143\150\156\157\154\157\147\151\145\163
+\054\040\111\156\143\056\061\062\060\060\006\003\125\004\013\023
+\051\123\164\141\162\146\151\145\154\144\040\103\154\141\163\163
+\040\062\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\045\060\043\006\003\125\004\012\023\034\123\164\141\162\146\151
+\145\154\144\040\124\145\143\150\156\157\154\157\147\151\145\163
+\054\040\111\156\143\056\061\062\060\060\006\003\125\004\013\023
+\051\123\164\141\162\146\151\145\154\144\040\103\154\141\163\163
+\040\062\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\017\060\202\002\367\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\150\061\013\060\011\006\003\125\004\006\023\002\125\123\061\045
+\060\043\006\003\125\004\012\023\034\123\164\141\162\146\151\145
+\154\144\040\124\145\143\150\156\157\154\157\147\151\145\163\054
+\040\111\156\143\056\061\062\060\060\006\003\125\004\013\023\051
+\123\164\141\162\146\151\145\154\144\040\103\154\141\163\163\040
+\062\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\060\036\027\015\060\064\060
+\066\062\071\061\067\063\071\061\066\132\027\015\063\064\060\066
+\062\071\061\067\063\071\061\066\132\060\150\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\045\060\043\006\003\125\004
+\012\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143
+\150\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061
+\062\060\060\006\003\125\004\013\023\051\123\164\141\162\146\151
+\145\154\144\040\103\154\141\163\163\040\062\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\060\202\001\040\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\015\000\060\202\001\010\002
+\202\001\001\000\267\062\310\376\351\161\246\004\205\255\014\021
+\144\337\316\115\357\310\003\030\207\077\241\253\373\074\246\237
+\360\303\241\332\324\330\156\053\123\220\373\044\244\076\204\360
+\236\350\137\354\345\047\104\365\050\246\077\173\336\340\052\360
+\310\257\123\057\236\312\005\001\223\036\217\146\034\071\247\115
+\372\132\266\163\004\045\146\353\167\177\347\131\306\112\231\045
+\024\124\353\046\307\363\177\031\325\060\160\217\257\260\106\052
+\377\255\353\051\355\327\237\252\004\207\243\324\371\211\245\064
+\137\333\103\221\202\066\331\146\074\261\270\271\202\375\234\072
+\076\020\310\073\357\006\145\146\172\233\031\030\075\377\161\121
+\074\060\056\137\276\075\167\163\262\135\006\154\303\043\126\232
+\053\205\046\222\034\247\002\263\344\077\015\257\010\171\202\270
+\066\075\352\234\323\065\263\274\151\312\365\314\235\350\375\144
+\215\027\200\063\156\136\112\135\231\311\036\207\264\235\032\300
+\325\156\023\065\043\136\337\233\137\075\357\326\367\166\302\352
+\076\273\170\015\034\102\147\153\004\330\370\326\332\157\213\362
+\104\240\001\253\002\001\003\243\201\305\060\201\302\060\035\006
+\003\125\035\016\004\026\004\024\277\137\267\321\316\335\037\206
+\364\133\125\254\334\327\020\302\016\251\210\347\060\201\222\006
+\003\125\035\043\004\201\212\060\201\207\200\024\277\137\267\321
+\316\335\037\206\364\133\125\254\334\327\020\302\016\251\210\347
+\241\154\244\152\060\150\061\013\060\011\006\003\125\004\006\023
+\002\125\123\061\045\060\043\006\003\125\004\012\023\034\123\164
+\141\162\146\151\145\154\144\040\124\145\143\150\156\157\154\157
+\147\151\145\163\054\040\111\156\143\056\061\062\060\060\006\003
+\125\004\013\023\051\123\164\141\162\146\151\145\154\144\040\103
+\154\141\163\163\040\062\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\202\001
+\000\060\014\006\003\125\035\023\004\005\060\003\001\001\377\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\005\235\077\210\235\321\311\032\125\241\254\151\363
+\363\131\332\233\001\207\032\117\127\251\241\171\011\052\333\367
+\057\262\036\314\307\136\152\330\203\207\241\227\357\111\065\076
+\167\006\101\130\142\277\216\130\270\012\147\077\354\263\335\041
+\146\037\311\124\372\162\314\075\114\100\330\201\257\167\236\203
+\172\273\242\307\365\064\027\216\331\021\100\364\374\054\052\115
+\025\177\247\142\135\056\045\323\000\013\040\032\035\150\371\027
+\270\364\275\213\355\050\131\335\115\026\213\027\203\310\262\145
+\307\055\172\245\252\274\123\206\155\335\127\244\312\370\040\101
+\013\150\360\364\373\164\276\126\135\172\171\365\371\035\205\343
+\055\225\276\365\161\220\103\314\215\037\232\000\012\207\051\351
+\125\042\130\000\043\352\343\022\103\051\133\107\010\335\214\101
+\152\145\006\250\345\041\252\101\264\225\041\225\271\175\321\064
+\253\023\326\255\274\334\342\075\071\315\275\076\165\160\241\030
+\131\003\311\042\264\217\234\325\136\052\327\245\266\324\012\155
+\370\267\100\021\106\232\037\171\016\142\277\017\227\354\340\057
+\037\027\224
+END
+
+# Trust for Certificate "Starfield Class 2 CA"
+# Issuer: OU=Starfield Class 2 Certification Authority,O="Starfield Technologies, Inc.",C=US
+# Serial Number: 0 (0x0)
+# Subject: OU=Starfield Class 2 Certification Authority,O="Starfield Technologies, Inc.",C=US
+# Not Valid Before: Tue Jun 29 17:39:16 2004
+# Not Valid After : Thu Jun 29 17:39:16 2034
+# Fingerprint (MD5): 32:4A:4B:BB:C8:63:69:9B:BE:74:9A:C6:DD:1D:46:24
+# Fingerprint (SHA1): AD:7E:1C:28:B0:64:EF:8F:60:03:40:20:14:C3:D0:E3:37:0E:B5:8A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Starfield Class 2 CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\255\176\034\050\260\144\357\217\140\003\100\040\024\303\320\343
+\067\016\265\212
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\062\112\113\273\310\143\151\233\276\164\232\306\335\035\106\044
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\045\060\043\006\003\125\004\012\023\034\123\164\141\162\146\151
+\145\154\144\040\124\145\143\150\156\157\154\157\147\151\145\163
+\054\040\111\156\143\056\061\062\060\060\006\003\125\004\013\023
+\051\123\164\141\162\146\151\145\154\144\040\103\154\141\163\163
+\040\062\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "StartCom Certification Authority"
+#
+# Issuer: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Serial Number: 1 (0x1)
+# Subject: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Not Valid Before: Sun Sep 17 19:46:36 2006
+# Not Valid After : Wed Sep 17 19:46:36 2036
+# Fingerprint (MD5): 22:4D:8F:8A:FC:F7:35:C2:BB:57:34:90:7B:8B:22:16
+# Fingerprint (SHA1): 3E:2B:F7:F2:03:1B:96:F3:8C:E6:C4:D8:A8:5D:3E:2D:58:47:6A:0F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "StartCom Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013
+\023\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154
+\040\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147
+\156\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123
+\164\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013
+\023\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154
+\040\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147
+\156\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123
+\164\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\007\311\060\202\005\261\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061\026
+\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103\157
+\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013\023
+\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154\040
+\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147\156
+\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123\164
+\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\036
+\027\015\060\066\060\071\061\067\061\071\064\066\063\066\132\027
+\015\063\066\060\071\061\067\061\071\064\066\063\066\132\060\175
+\061\013\060\011\006\003\125\004\006\023\002\111\114\061\026\060
+\024\006\003\125\004\012\023\015\123\164\141\162\164\103\157\155
+\040\114\164\144\056\061\053\060\051\006\003\125\004\013\023\042
+\123\145\143\165\162\145\040\104\151\147\151\164\141\154\040\103
+\145\162\164\151\146\151\143\141\164\145\040\123\151\147\156\151
+\156\147\061\051\060\047\006\003\125\004\003\023\040\123\164\141
+\162\164\103\157\155\040\103\145\162\164\151\146\151\143\141\164
+\151\157\156\040\101\165\164\150\157\162\151\164\171\060\202\002
+\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\002\017\000\060\202\002\012\002\202\002\001\000\301\210
+\333\011\274\154\106\174\170\237\225\173\265\063\220\362\162\142
+\326\301\066\040\042\044\136\316\351\167\362\103\012\242\006\144
+\244\314\216\066\370\070\346\043\360\156\155\261\074\335\162\243
+\205\034\241\323\075\264\063\053\323\057\257\376\352\260\101\131
+\147\266\304\006\175\012\236\164\205\326\171\114\200\067\172\337
+\071\005\122\131\367\364\033\106\103\244\322\205\205\322\303\161
+\363\165\142\064\272\054\212\177\036\217\356\355\064\320\021\307
+\226\315\122\075\272\063\326\335\115\336\013\073\112\113\237\302
+\046\057\372\265\026\034\162\065\167\312\074\135\346\312\341\046
+\213\032\066\166\134\001\333\164\024\045\376\355\265\240\210\017
+\335\170\312\055\037\007\227\060\001\055\162\171\372\106\326\023
+\052\250\271\246\253\203\111\035\345\362\357\335\344\001\216\030
+\012\217\143\123\026\205\142\251\016\031\072\314\265\146\246\302
+\153\164\007\344\053\341\166\076\264\155\330\366\104\341\163\142
+\037\073\304\276\240\123\126\045\154\121\011\367\252\253\312\277
+\166\375\155\233\363\235\333\277\075\146\274\014\126\252\257\230
+\110\225\072\113\337\247\130\120\331\070\165\251\133\352\103\014
+\002\377\231\353\350\154\115\160\133\051\145\234\335\252\135\314
+\257\001\061\354\014\353\322\215\350\352\234\173\346\156\367\047
+\146\014\032\110\327\156\102\343\077\336\041\076\173\341\015\160
+\373\143\252\250\154\032\124\264\134\045\172\311\242\311\213\026
+\246\273\054\176\027\136\005\115\130\156\022\035\001\356\022\020
+\015\306\062\177\030\377\374\364\372\315\156\221\350\066\111\276
+\032\110\151\213\302\226\115\032\022\262\151\027\301\012\220\326
+\372\171\042\110\277\272\173\151\370\160\307\372\172\067\330\330
+\015\322\166\117\127\377\220\267\343\221\322\335\357\302\140\267
+\147\072\335\376\252\234\360\324\213\177\162\042\316\306\237\227
+\266\370\257\212\240\020\250\331\373\030\306\266\265\134\122\074
+\211\266\031\052\163\001\012\017\003\263\022\140\362\172\057\201
+\333\243\156\377\046\060\227\365\213\335\211\127\266\255\075\263
+\257\053\305\267\166\002\360\245\326\053\232\206\024\052\162\366
+\343\063\214\135\011\113\023\337\273\214\164\023\122\113\002\003
+\001\000\001\243\202\002\122\060\202\002\116\060\014\006\003\125
+\035\023\004\005\060\003\001\001\377\060\013\006\003\125\035\017
+\004\004\003\002\001\256\060\035\006\003\125\035\016\004\026\004
+\024\116\013\357\032\244\100\133\245\027\151\207\060\312\064\150
+\103\320\101\256\362\060\144\006\003\125\035\037\004\135\060\133
+\060\054\240\052\240\050\206\046\150\164\164\160\072\057\057\143
+\145\162\164\056\163\164\141\162\164\143\157\155\056\157\162\147
+\057\163\146\163\143\141\055\143\162\154\056\143\162\154\060\053
+\240\051\240\047\206\045\150\164\164\160\072\057\057\143\162\154
+\056\163\164\141\162\164\143\157\155\056\157\162\147\057\163\146
+\163\143\141\055\143\162\154\056\143\162\154\060\202\001\135\006
+\003\125\035\040\004\202\001\124\060\202\001\120\060\202\001\114
+\006\013\053\006\001\004\001\201\265\067\001\001\001\060\202\001
+\073\060\057\006\010\053\006\001\005\005\007\002\001\026\043\150
+\164\164\160\072\057\057\143\145\162\164\056\163\164\141\162\164
+\143\157\155\056\157\162\147\057\160\157\154\151\143\171\056\160
+\144\146\060\065\006\010\053\006\001\005\005\007\002\001\026\051
+\150\164\164\160\072\057\057\143\145\162\164\056\163\164\141\162
+\164\143\157\155\056\157\162\147\057\151\156\164\145\162\155\145
+\144\151\141\164\145\056\160\144\146\060\201\320\006\010\053\006
+\001\005\005\007\002\002\060\201\303\060\047\026\040\123\164\141
+\162\164\040\103\157\155\155\145\162\143\151\141\154\040\050\123
+\164\141\162\164\103\157\155\051\040\114\164\144\056\060\003\002
+\001\001\032\201\227\114\151\155\151\164\145\144\040\114\151\141
+\142\151\154\151\164\171\054\040\162\145\141\144\040\164\150\145
+\040\163\145\143\164\151\157\156\040\052\114\145\147\141\154\040
+\114\151\155\151\164\141\164\151\157\156\163\052\040\157\146\040
+\164\150\145\040\123\164\141\162\164\103\157\155\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\040\120\157\154\151\143\171\040\141\166\141\151
+\154\141\142\154\145\040\141\164\040\150\164\164\160\072\057\057
+\143\145\162\164\056\163\164\141\162\164\143\157\155\056\157\162
+\147\057\160\157\154\151\143\171\056\160\144\146\060\021\006\011
+\140\206\110\001\206\370\102\001\001\004\004\003\002\000\007\060
+\070\006\011\140\206\110\001\206\370\102\001\015\004\053\026\051
+\123\164\141\162\164\103\157\155\040\106\162\145\145\040\123\123
+\114\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\002\001\000\026\154\231
+\364\146\014\064\365\320\205\136\175\012\354\332\020\116\070\034
+\136\337\246\045\005\113\221\062\301\350\073\361\075\335\104\011
+\133\007\111\212\051\313\146\002\267\261\232\367\045\230\011\074
+\216\033\341\335\066\207\053\113\273\150\323\071\146\075\240\046
+\307\362\071\221\035\121\253\202\173\176\325\316\132\344\342\003
+\127\160\151\227\010\371\136\130\246\012\337\214\006\232\105\026
+\026\070\012\136\127\366\142\307\172\002\005\346\274\036\265\362
+\236\364\251\051\203\370\262\024\343\156\050\207\104\303\220\032
+\336\070\251\074\254\103\115\144\105\316\335\050\251\134\362\163
+\173\004\370\027\350\253\261\363\056\134\144\156\163\061\072\022
+\270\274\263\021\344\175\217\201\121\232\073\215\211\364\115\223
+\146\173\074\003\355\323\232\035\232\363\145\120\365\240\320\165
+\237\057\257\360\352\202\103\230\370\151\234\211\171\304\103\216
+\106\162\343\144\066\022\257\367\045\036\070\211\220\167\176\303
+\153\152\271\303\313\104\113\254\170\220\213\347\307\054\036\113
+\021\104\310\064\122\047\315\012\135\237\205\301\211\325\032\170
+\362\225\020\123\062\335\200\204\146\165\331\265\150\050\373\141
+\056\276\204\250\070\300\231\022\206\245\036\147\144\255\006\056
+\057\251\160\205\307\226\017\174\211\145\365\216\103\124\016\253
+\335\245\200\071\224\140\300\064\311\226\160\054\243\022\365\037
+\110\173\275\034\176\153\267\235\220\364\042\073\256\370\374\052
+\312\372\202\122\240\357\257\113\125\223\353\301\265\360\042\213
+\254\064\116\046\042\004\241\207\054\165\112\267\345\175\023\327
+\270\014\144\300\066\322\311\057\206\022\214\043\011\301\033\202
+\073\163\111\243\152\127\207\224\345\326\170\305\231\103\143\343
+\115\340\167\055\341\145\231\162\151\004\032\107\011\346\017\001
+\126\044\373\037\277\016\171\251\130\056\271\304\011\001\176\225
+\272\155\000\006\076\262\352\112\020\071\330\320\053\365\277\354
+\165\277\227\002\305\011\033\010\334\125\067\342\201\373\067\204
+\103\142\040\312\347\126\113\145\352\376\154\301\044\223\044\241
+\064\353\005\377\232\042\256\233\175\077\361\145\121\012\246\060
+\152\263\364\210\034\200\015\374\162\212\350\203\136
+END
+
+# Trust for Certificate "StartCom Certification Authority"
+# Issuer: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Serial Number: 1 (0x1)
+# Subject: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Not Valid Before: Sun Sep 17 19:46:36 2006
+# Not Valid After : Wed Sep 17 19:46:36 2036
+# Fingerprint (MD5): 22:4D:8F:8A:FC:F7:35:C2:BB:57:34:90:7B:8B:22:16
+# Fingerprint (SHA1): 3E:2B:F7:F2:03:1B:96:F3:8C:E6:C4:D8:A8:5D:3E:2D:58:47:6A:0F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "StartCom Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\076\053\367\362\003\033\226\363\214\346\304\330\250\135\076\055
+\130\107\152\017
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\042\115\217\212\374\367\065\302\273\127\064\220\173\213\042\026
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013
+\023\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154
+\040\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147
+\156\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123
+\164\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Taiwan GRCA"
+#
+# Issuer: O=Government Root Certification Authority,C=TW
+# Serial Number:1f:9d:59:5a:d7:2f:c2:06:44:a5:80:08:69:e3:5e:f6
+# Subject: O=Government Root Certification Authority,C=TW
+# Not Valid Before: Thu Dec 05 13:23:33 2002
+# Not Valid After : Sun Dec 05 13:23:33 2032
+# Fingerprint (MD5): 37:85:44:53:32:45:1F:20:F0:F3:95:E1:25:C4:43:4E
+# Fingerprint (SHA1): F4:8B:11:BF:DE:AB:BE:94:54:20:71:E6:41:DE:6B:BE:88:2B:40:B9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Taiwan GRCA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\077\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\060\060\056\006\003\125\004\012\014\047\107\157\166\145\162\156
+\155\145\156\164\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\077\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\060\060\056\006\003\125\004\012\014\047\107\157\166\145\162\156
+\155\145\156\164\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\037\235\131\132\327\057\302\006\104\245\200\010\151\343
+\136\366
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\162\060\202\003\132\240\003\002\001\002\002\020\037
+\235\131\132\327\057\302\006\104\245\200\010\151\343\136\366\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\077
+\061\013\060\011\006\003\125\004\006\023\002\124\127\061\060\060
+\056\006\003\125\004\012\014\047\107\157\166\145\162\156\155\145
+\156\164\040\122\157\157\164\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060
+\036\027\015\060\062\061\062\060\065\061\063\062\063\063\063\132
+\027\015\063\062\061\062\060\065\061\063\062\063\063\063\132\060
+\077\061\013\060\011\006\003\125\004\006\023\002\124\127\061\060
+\060\056\006\003\125\004\012\014\047\107\157\166\145\162\156\155
+\145\156\164\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001
+\000\232\045\270\354\314\242\165\250\173\367\316\133\131\212\311
+\321\206\022\010\124\354\234\362\347\106\366\210\363\174\351\245
+\337\114\107\066\244\033\001\034\177\036\127\212\215\303\305\321
+\041\343\332\044\077\110\053\373\237\056\241\224\347\054\034\223
+\321\277\033\001\207\123\231\316\247\365\012\041\166\167\377\251
+\267\306\163\224\117\106\367\020\111\067\372\250\131\111\135\152
+\201\007\126\362\212\371\006\320\367\160\042\115\264\267\101\271
+\062\270\261\360\261\303\234\077\160\375\123\335\201\252\330\143
+\170\366\330\123\156\241\254\152\204\044\162\124\206\306\322\262
+\312\034\016\171\201\326\265\160\142\010\001\056\116\117\016\325
+\021\257\251\257\345\232\277\334\314\207\155\046\344\311\127\242
+\373\226\371\314\341\077\123\214\154\114\176\233\123\010\013\154
+\027\373\147\310\302\255\261\315\200\264\227\334\166\001\026\025
+\351\152\327\244\341\170\107\316\206\325\373\061\363\372\061\276
+\064\252\050\373\160\114\035\111\307\257\054\235\155\146\246\266
+\215\144\176\265\040\152\235\073\201\266\217\100\000\147\113\211
+\206\270\314\145\376\025\123\351\004\301\326\137\035\104\327\012
+\057\047\232\106\175\241\015\165\255\124\206\025\334\111\073\361
+\226\316\017\233\240\354\243\172\135\276\325\052\165\102\345\173
+\336\245\266\252\257\050\254\254\220\254\070\267\325\150\065\046
+\172\334\367\073\363\375\105\233\321\273\103\170\156\157\361\102
+\124\152\230\360\015\255\227\351\122\136\351\325\152\162\336\152
+\367\033\140\024\364\245\344\266\161\147\252\037\352\342\115\301
+\102\100\376\147\106\027\070\057\107\077\161\234\256\345\041\312
+\141\055\155\007\250\204\174\055\356\121\045\361\143\220\236\375
+\341\127\210\153\357\212\043\155\261\346\275\077\255\321\075\226
+\013\205\215\315\153\047\273\267\005\233\354\273\221\251\012\007
+\022\002\227\116\040\220\360\377\015\036\342\101\073\323\100\072
+\347\215\135\332\146\344\002\260\007\122\230\134\016\216\063\234
+\302\246\225\373\125\031\156\114\216\256\113\017\275\301\070\115
+\136\217\204\035\146\315\305\140\226\264\122\132\005\211\216\225
+\172\230\301\221\074\225\043\262\016\364\171\264\311\174\301\112
+\041\002\003\001\000\001\243\152\060\150\060\035\006\003\125\035
+\016\004\026\004\024\314\314\357\314\051\140\244\073\261\222\266
+\074\372\062\142\217\254\045\025\073\060\014\006\003\125\035\023
+\004\005\060\003\001\001\377\060\071\006\004\147\052\007\000\004
+\061\060\057\060\055\002\001\000\060\011\006\005\053\016\003\002
+\032\005\000\060\007\006\005\147\052\003\000\000\004\024\003\233
+\360\042\023\377\225\050\066\323\334\236\300\062\373\061\072\212
+\121\145\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\202\002\001\000\100\200\112\372\046\311\316\136\060\335
+\117\206\164\166\130\365\256\263\203\063\170\244\172\164\027\031
+\116\351\122\265\271\340\012\164\142\252\150\312\170\240\114\232
+\216\054\043\056\325\152\022\044\277\324\150\323\212\320\330\234
+\237\264\037\014\336\070\176\127\070\374\215\342\117\136\014\237
+\253\073\322\377\165\227\313\244\343\147\010\377\345\300\026\265
+\110\001\175\351\371\012\377\033\345\152\151\277\170\041\250\302
+\247\043\251\206\253\166\126\350\016\014\366\023\335\052\146\212
+\144\111\075\032\030\207\220\004\237\102\122\267\117\313\376\107
+\101\166\065\357\377\000\166\066\105\062\233\306\106\205\135\342
+\044\260\036\343\110\226\230\127\107\224\125\172\017\101\261\104
+\044\363\301\376\032\153\277\210\375\301\246\332\223\140\136\201
+\112\231\040\234\110\146\031\265\000\171\124\017\270\054\057\113
+\274\251\135\133\140\177\214\207\245\340\122\143\052\276\330\073
+\205\100\025\376\036\266\145\077\305\113\332\176\265\172\065\051
+\243\056\172\230\140\042\243\364\175\047\116\055\352\264\164\074
+\351\017\244\063\017\020\021\274\023\001\326\345\016\323\277\265
+\022\242\341\105\043\300\314\010\156\141\267\211\253\203\343\044
+\036\346\135\007\347\037\040\076\317\147\310\347\254\060\155\047
+\113\150\156\113\052\134\002\010\064\333\370\166\344\147\243\046
+\234\077\242\062\302\112\305\201\030\061\020\126\252\204\357\055
+\012\377\270\037\167\322\277\245\130\240\142\344\327\113\221\165
+\215\211\200\230\176\155\313\123\116\136\257\366\262\227\205\227
+\271\332\125\006\271\044\356\327\306\070\036\143\033\022\073\225
+\341\130\254\362\337\204\325\137\231\057\015\125\133\346\070\333
+\056\077\162\351\110\205\313\273\051\023\217\036\070\125\271\363
+\262\304\060\231\043\116\135\362\110\241\022\014\334\022\220\011
+\220\124\221\003\074\107\345\325\311\145\340\267\113\175\354\107
+\323\263\013\076\255\236\320\164\000\016\353\275\121\255\300\336
+\054\300\303\152\376\357\334\013\247\372\106\337\140\333\234\246
+\131\120\165\043\151\163\223\262\371\374\002\323\107\346\161\316
+\020\002\356\047\214\204\377\254\105\015\023\134\203\062\340\045
+\245\206\054\174\364\022
+END
+
+# Trust for Certificate "Taiwan GRCA"
+# Issuer: O=Government Root Certification Authority,C=TW
+# Serial Number:1f:9d:59:5a:d7:2f:c2:06:44:a5:80:08:69:e3:5e:f6
+# Subject: O=Government Root Certification Authority,C=TW
+# Not Valid Before: Thu Dec 05 13:23:33 2002
+# Not Valid After : Sun Dec 05 13:23:33 2032
+# Fingerprint (MD5): 37:85:44:53:32:45:1F:20:F0:F3:95:E1:25:C4:43:4E
+# Fingerprint (SHA1): F4:8B:11:BF:DE:AB:BE:94:54:20:71:E6:41:DE:6B:BE:88:2B:40:B9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Taiwan GRCA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\364\213\021\277\336\253\276\224\124\040\161\346\101\336\153\276
+\210\053\100\271
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\067\205\104\123\062\105\037\040\360\363\225\341\045\304\103\116
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\077\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\060\060\056\006\003\125\004\012\014\047\107\157\166\145\162\156
+\155\145\156\164\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\037\235\131\132\327\057\302\006\104\245\200\010\151\343
+\136\366
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Swisscom Root CA 1"
+#
+# Issuer: CN=Swisscom Root CA 1,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Serial Number:5c:0b:85:5c:0b:e7:59:41:df:57:cc:3f:7f:9d:a8:36
+# Subject: CN=Swisscom Root CA 1,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Not Valid Before: Thu Aug 18 12:06:20 2005
+# Not Valid After : Mon Aug 18 22:06:20 2025
+# Fingerprint (MD5): F8:38:7C:77:88:DF:2C:16:68:2E:C2:E2:52:4B:B8:F9
+# Fingerprint (SHA1): 5F:3A:FC:0A:8B:64:F6:86:67:34:74:DF:7E:A9:A2:FE:F9:FA:7A:51
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Swisscom Root CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
+\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\103\101\040\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
+\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\134\013\205\134\013\347\131\101\337\127\314\077\177\235
+\250\066
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\331\060\202\003\301\240\003\002\001\002\002\020\134
+\013\205\134\013\347\131\101\337\127\314\077\177\235\250\066\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\144
+\061\013\060\011\006\003\125\004\006\023\002\143\150\061\021\060
+\017\006\003\125\004\012\023\010\123\167\151\163\163\143\157\155
+\061\045\060\043\006\003\125\004\013\023\034\104\151\147\151\164
+\141\154\040\103\145\162\164\151\146\151\143\141\164\145\040\123
+\145\162\166\151\143\145\163\061\033\060\031\006\003\125\004\003
+\023\022\123\167\151\163\163\143\157\155\040\122\157\157\164\040
+\103\101\040\061\060\036\027\015\060\065\060\070\061\070\061\062
+\060\066\062\060\132\027\015\062\065\060\070\061\070\062\062\060
+\066\062\060\132\060\144\061\013\060\011\006\003\125\004\006\023
+\002\143\150\061\021\060\017\006\003\125\004\012\023\010\123\167
+\151\163\163\143\157\155\061\045\060\043\006\003\125\004\013\023
+\034\104\151\147\151\164\141\154\040\103\145\162\164\151\146\151
+\143\141\164\145\040\123\145\162\166\151\143\145\163\061\033\060
+\031\006\003\125\004\003\023\022\123\167\151\163\163\143\157\155
+\040\122\157\157\164\040\103\101\040\061\060\202\002\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002
+\017\000\060\202\002\012\002\202\002\001\000\320\271\260\250\014
+\331\273\077\041\370\033\325\063\223\200\026\145\040\165\262\075
+\233\140\155\106\310\214\061\157\027\303\372\232\154\126\355\074
+\305\221\127\303\315\253\226\111\220\052\031\113\036\243\155\127
+\335\361\053\142\050\165\105\136\252\326\133\372\013\045\330\241
+\026\371\034\304\056\346\225\052\147\314\320\051\156\074\205\064
+\070\141\111\261\000\237\326\072\161\137\115\155\316\137\271\251
+\344\211\177\152\122\372\312\233\362\334\251\371\235\231\107\077
+\116\051\137\264\246\215\135\173\013\231\021\003\003\376\347\333
+\333\243\377\035\245\315\220\036\001\037\065\260\177\000\333\220
+\157\306\176\173\321\356\172\172\247\252\014\127\157\244\155\305
+\023\073\260\245\331\355\062\034\264\136\147\213\124\334\163\207
+\345\323\027\174\146\120\162\135\324\032\130\301\331\317\330\211
+\002\157\247\111\264\066\135\320\244\336\007\054\266\165\267\050
+\221\326\227\276\050\365\230\036\352\133\046\311\275\260\227\163
+\332\256\221\046\353\150\301\371\071\025\326\147\113\012\155\117
+\313\317\260\344\102\161\214\123\171\347\356\341\333\035\240\156
+\035\214\032\167\065\134\026\036\053\123\037\064\213\321\154\374
+\362\147\007\172\365\255\355\326\232\253\241\261\113\341\314\067
+\137\375\177\315\115\256\270\037\234\103\371\052\130\125\103\105
+\274\226\315\160\016\374\311\343\146\272\116\215\073\201\313\025
+\144\173\271\224\350\135\063\122\205\161\056\117\216\242\006\021
+\121\311\343\313\241\156\061\010\144\014\302\322\074\365\066\350
+\327\320\016\170\043\040\221\311\044\052\145\051\133\042\367\041
+\316\203\136\244\363\336\113\323\150\217\106\165\134\203\011\156
+\051\153\304\160\214\365\235\327\040\057\377\106\322\053\070\302
+\057\165\034\075\176\332\245\357\036\140\205\151\102\323\314\370
+\143\376\036\103\071\205\246\266\143\101\020\263\163\036\274\323
+\372\312\175\026\107\342\247\325\320\243\212\012\010\226\142\126
+\156\064\333\331\002\271\060\165\343\004\322\347\217\302\260\021
+\100\012\254\325\161\002\142\213\061\276\335\306\043\130\061\102
+\103\055\164\371\306\236\246\212\017\351\376\277\203\346\103\127
+\044\272\357\106\064\252\327\022\001\070\355\002\003\001\000\001
+\243\201\206\060\201\203\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\206\060\035\006\003\125\035\041\004\026\060
+\024\060\022\006\007\140\205\164\001\123\000\001\006\007\140\205
+\164\001\123\000\001\060\022\006\003\125\035\023\001\001\377\004
+\010\060\006\001\001\377\002\001\007\060\037\006\003\125\035\043
+\004\030\060\026\200\024\003\045\057\336\157\202\001\072\134\054
+\334\053\241\151\265\147\324\214\323\375\060\035\006\003\125\035
+\016\004\026\004\024\003\045\057\336\157\202\001\072\134\054\334
+\053\241\151\265\147\324\214\323\375\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\002\001\000\065\020\313
+\354\246\004\015\015\017\315\300\333\253\250\362\210\227\014\337
+\223\057\115\174\100\126\061\172\353\244\017\140\315\172\363\276
+\303\047\216\003\076\244\335\022\357\176\036\164\006\074\077\061
+\362\034\173\221\061\041\264\360\320\154\227\324\351\227\262\044
+\126\036\126\303\065\275\210\005\017\133\020\032\144\341\307\202
+\060\371\062\255\236\120\054\347\170\005\320\061\261\132\230\212
+\165\116\220\134\152\024\052\340\122\107\202\140\346\036\332\201
+\261\373\024\013\132\361\237\322\225\272\076\320\033\326\025\035
+\243\276\206\325\333\017\300\111\144\273\056\120\031\113\322\044
+\370\335\036\007\126\320\070\240\225\160\040\166\214\327\335\036
+\336\237\161\304\043\357\203\023\134\243\044\025\115\051\100\074
+\152\304\251\330\267\246\104\245\015\364\340\235\167\036\100\160
+\046\374\332\331\066\344\171\344\265\077\274\233\145\276\273\021
+\226\317\333\306\050\071\072\010\316\107\133\123\132\305\231\376
+\135\251\335\357\114\324\306\245\255\002\346\214\007\022\036\157
+\003\321\157\240\243\363\051\275\022\307\120\242\260\177\210\251
+\231\167\232\261\300\245\071\056\134\174\151\342\054\260\352\067
+\152\244\341\132\341\365\120\345\203\357\245\273\052\210\347\214
+\333\375\155\136\227\031\250\176\146\165\153\161\352\277\261\307
+\157\240\364\216\244\354\064\121\133\214\046\003\160\241\167\325
+\001\022\127\000\065\333\043\336\016\212\050\231\375\261\020\157
+\113\377\070\055\140\116\054\234\353\147\265\255\111\356\113\037
+\254\257\373\015\220\132\146\140\160\135\252\315\170\324\044\356
+\310\101\240\223\001\222\234\152\236\374\271\044\305\263\025\202
+\176\276\256\225\053\353\261\300\332\343\001\140\013\136\151\254
+\204\126\141\276\161\027\376\035\023\017\376\306\207\105\351\376
+\062\240\032\015\023\244\224\125\161\245\026\213\272\312\211\260
+\262\307\374\217\330\124\265\223\142\235\316\317\131\373\075\030
+\316\052\313\065\025\202\135\377\124\042\133\161\122\373\267\311
+\376\140\233\000\101\144\360\252\052\354\266\102\103\316\211\146
+\201\310\213\237\071\124\003\045\323\026\065\216\204\320\137\372
+\060\032\365\232\154\364\016\123\371\072\133\321\034
+END
+
+# Trust for Certificate "Swisscom Root CA 1"
+# Issuer: CN=Swisscom Root CA 1,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Serial Number:5c:0b:85:5c:0b:e7:59:41:df:57:cc:3f:7f:9d:a8:36
+# Subject: CN=Swisscom Root CA 1,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Not Valid Before: Thu Aug 18 12:06:20 2005
+# Not Valid After : Mon Aug 18 22:06:20 2025
+# Fingerprint (MD5): F8:38:7C:77:88:DF:2C:16:68:2E:C2:E2:52:4B:B8:F9
+# Fingerprint (SHA1): 5F:3A:FC:0A:8B:64:F6:86:67:34:74:DF:7E:A9:A2:FE:F9:FA:7A:51
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Swisscom Root CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\137\072\374\012\213\144\366\206\147\064\164\337\176\251\242\376
+\371\372\172\121
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\370\070\174\167\210\337\054\026\150\056\302\342\122\113\270\371
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
+\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\134\013\205\134\013\347\131\101\337\127\314\077\177\235
+\250\066
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert Assured ID Root CA"
+#
+# Issuer: CN=DigiCert Assured ID Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:0c:e7:e0:e5:17:d8:46:fe:8f:e5:60:fc:1b:f0:30:39
+# Subject: CN=DigiCert Assured ID Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Fri Nov 10 00:00:00 2006
+# Not Valid After : Mon Nov 10 00:00:00 2031
+# Fingerprint (MD5): 87:CE:0B:7B:2A:0E:49:00:E1:58:71:9B:37:A8:93:72
+# Fingerprint (SHA1): 05:63:B8:63:0D:62:D7:5A:BB:C8:AB:1E:4B:DF:B5:A8:99:B2:4D:43
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Assured ID Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\014\347\340\345\027\330\106\376\217\345\140\374\033\360
+\060\071
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\267\060\202\002\237\240\003\002\001\002\002\020\014
+\347\340\345\027\330\106\376\217\345\140\374\033\360\060\071\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\145
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025\060
+\023\006\003\125\004\012\023\014\104\151\147\151\103\145\162\164
+\040\111\156\143\061\031\060\027\006\003\125\004\013\023\020\167
+\167\167\056\144\151\147\151\143\145\162\164\056\143\157\155\061
+\044\060\042\006\003\125\004\003\023\033\104\151\147\151\103\145
+\162\164\040\101\163\163\165\162\145\144\040\111\104\040\122\157
+\157\164\040\103\101\060\036\027\015\060\066\061\061\061\060\060
+\060\060\060\060\060\132\027\015\063\061\061\061\061\060\060\060
+\060\060\060\060\132\060\145\061\013\060\011\006\003\125\004\006
+\023\002\125\123\061\025\060\023\006\003\125\004\012\023\014\104
+\151\147\151\103\145\162\164\040\111\156\143\061\031\060\027\006
+\003\125\004\013\023\020\167\167\167\056\144\151\147\151\143\145
+\162\164\056\143\157\155\061\044\060\042\006\003\125\004\003\023
+\033\104\151\147\151\103\145\162\164\040\101\163\163\165\162\145
+\144\040\111\104\040\122\157\157\164\040\103\101\060\202\001\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\001\017\000\060\202\001\012\002\202\001\001\000\255\016\025
+\316\344\103\200\134\261\207\363\267\140\371\161\022\245\256\334
+\046\224\210\252\364\316\365\040\071\050\130\140\014\370\200\332
+\251\025\225\062\141\074\265\261\050\204\212\212\334\237\012\014
+\203\027\172\217\220\254\212\347\171\123\134\061\204\052\366\017
+\230\062\066\166\314\336\335\074\250\242\357\152\373\041\362\122
+\141\337\237\040\327\037\342\261\331\376\030\144\322\022\133\137
+\371\130\030\065\274\107\315\241\066\371\153\177\324\260\070\076
+\301\033\303\214\063\331\330\057\030\376\050\017\263\247\203\326
+\303\156\104\300\141\065\226\026\376\131\234\213\166\155\327\361
+\242\113\015\053\377\013\162\332\236\140\320\216\220\065\306\170
+\125\207\040\241\317\345\155\012\310\111\174\061\230\063\154\042
+\351\207\320\062\132\242\272\023\202\021\355\071\027\235\231\072
+\162\241\346\372\244\331\325\027\061\165\256\205\175\042\256\077
+\001\106\206\366\050\171\310\261\332\344\127\027\304\176\034\016
+\260\264\222\246\126\263\275\262\227\355\252\247\360\267\305\250
+\077\225\026\320\377\241\226\353\010\137\030\167\117\002\003\001
+\000\001\243\143\060\141\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\206\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\035\006\003\125\035\016\004\026
+\004\024\105\353\242\257\364\222\313\202\061\055\121\213\247\247
+\041\235\363\155\310\017\060\037\006\003\125\035\043\004\030\060
+\026\200\024\105\353\242\257\364\222\313\202\061\055\121\213\247
+\247\041\235\363\155\310\017\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\003\202\001\001\000\242\016\274\337\342
+\355\360\343\162\163\172\144\224\277\367\162\146\330\062\344\102
+\165\142\256\207\353\362\325\331\336\126\263\237\314\316\024\050
+\271\015\227\140\134\022\114\130\344\323\075\203\111\105\130\227
+\065\151\032\250\107\352\126\306\171\253\022\330\147\201\204\337
+\177\011\074\224\346\270\046\054\040\275\075\263\050\211\367\137
+\377\042\342\227\204\037\351\145\357\207\340\337\301\147\111\263
+\135\353\262\011\052\353\046\355\170\276\175\077\053\363\267\046
+\065\155\137\211\001\266\111\133\237\001\005\233\253\075\045\301
+\314\266\177\302\361\157\206\306\372\144\150\353\201\055\224\353
+\102\267\372\214\036\335\142\361\276\120\147\267\154\275\363\361
+\037\153\014\066\007\026\177\067\174\251\133\155\172\361\022\106
+\140\203\327\047\004\276\113\316\227\276\303\147\052\150\021\337
+\200\347\014\063\146\277\023\015\024\156\363\177\037\143\020\036
+\372\215\033\045\155\154\217\245\267\141\001\261\322\243\046\241
+\020\161\235\255\342\303\371\303\231\121\267\053\007\010\316\056
+\346\120\262\247\372\012\105\057\242\360\362
+END
+
+# Trust for Certificate "DigiCert Assured ID Root CA"
+# Issuer: CN=DigiCert Assured ID Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:0c:e7:e0:e5:17:d8:46:fe:8f:e5:60:fc:1b:f0:30:39
+# Subject: CN=DigiCert Assured ID Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Fri Nov 10 00:00:00 2006
+# Not Valid After : Mon Nov 10 00:00:00 2031
+# Fingerprint (MD5): 87:CE:0B:7B:2A:0E:49:00:E1:58:71:9B:37:A8:93:72
+# Fingerprint (SHA1): 05:63:B8:63:0D:62:D7:5A:BB:C8:AB:1E:4B:DF:B5:A8:99:B2:4D:43
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Assured ID Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\005\143\270\143\015\142\327\132\273\310\253\036\113\337\265\250
+\231\262\115\103
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\207\316\013\173\052\016\111\000\341\130\161\233\067\250\223\162
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\014\347\340\345\027\330\106\376\217\345\140\374\033\360
+\060\071
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert Global Root CA"
+#
+# Issuer: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:08:3b:e0:56:90:42:46:b1:a1:75:6a:c9:59:91:c7:4a
+# Subject: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Fri Nov 10 00:00:00 2006
+# Not Valid After : Mon Nov 10 00:00:00 2031
+# Fingerprint (MD5): 79:E4:A9:84:0D:7D:3A:96:D7:C0:4F:E2:43:4C:89:2E
+# Fingerprint (SHA1): A8:98:5D:3A:65:E5:E5:C4:B2:D7:D6:6D:40:C6:DD:2F:B1:9C:54:36
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Global Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\010\073\340\126\220\102\106\261\241\165\152\311\131\221
+\307\112
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\257\060\202\002\227\240\003\002\001\002\002\020\010
+\073\340\126\220\102\106\261\241\165\152\311\131\221\307\112\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\141
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025\060
+\023\006\003\125\004\012\023\014\104\151\147\151\103\145\162\164
+\040\111\156\143\061\031\060\027\006\003\125\004\013\023\020\167
+\167\167\056\144\151\147\151\143\145\162\164\056\143\157\155\061
+\040\060\036\006\003\125\004\003\023\027\104\151\147\151\103\145
+\162\164\040\107\154\157\142\141\154\040\122\157\157\164\040\103
+\101\060\036\027\015\060\066\061\061\061\060\060\060\060\060\060
+\060\132\027\015\063\061\061\061\061\060\060\060\060\060\060\060
+\132\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103
+\145\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013
+\023\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143
+\157\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147
+\151\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157
+\164\040\103\101\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\342\073\341\021\162\336\250\244\323\243\127
+\252\120\242\217\013\167\220\311\242\245\356\022\316\226\133\001
+\011\040\314\001\223\247\116\060\267\123\367\103\304\151\000\127
+\235\342\215\042\335\207\006\100\000\201\011\316\316\033\203\277
+\337\315\073\161\106\342\326\146\307\005\263\166\047\026\217\173
+\236\036\225\175\356\267\110\243\010\332\326\257\172\014\071\006
+\145\177\112\135\037\274\027\370\253\276\356\050\327\164\177\172
+\170\231\131\205\150\156\134\043\062\113\277\116\300\350\132\155
+\343\160\277\167\020\277\374\001\366\205\331\250\104\020\130\062
+\251\165\030\325\321\242\276\107\342\047\152\364\232\063\370\111
+\010\140\213\324\137\264\072\204\277\241\252\112\114\175\076\317
+\117\137\154\166\136\240\113\067\221\236\334\042\346\155\316\024
+\032\216\152\313\376\315\263\024\144\027\307\133\051\236\062\277
+\362\356\372\323\013\102\324\253\267\101\062\332\014\324\357\370
+\201\325\273\215\130\077\265\033\350\111\050\242\160\332\061\004
+\335\367\262\026\362\114\012\116\007\250\355\112\075\136\265\177
+\243\220\303\257\047\002\003\001\000\001\243\143\060\141\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\206\060\017
+\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060
+\035\006\003\125\035\016\004\026\004\024\003\336\120\065\126\321
+\114\273\146\360\243\342\033\033\303\227\262\075\321\125\060\037
+\006\003\125\035\043\004\030\060\026\200\024\003\336\120\065\126
+\321\114\273\146\360\243\342\033\033\303\227\262\075\321\125\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\313\234\067\252\110\023\022\012\372\335\104\234\117
+\122\260\364\337\256\004\365\171\171\010\243\044\030\374\113\053
+\204\300\055\271\325\307\376\364\301\037\130\313\270\155\234\172
+\164\347\230\051\253\021\265\343\160\240\241\315\114\210\231\223
+\214\221\160\342\253\017\034\276\223\251\377\143\325\344\007\140
+\323\243\277\235\133\011\361\325\216\343\123\364\216\143\372\077
+\247\333\264\146\337\142\146\326\321\156\101\215\362\055\265\352
+\167\112\237\235\130\342\053\131\300\100\043\355\055\050\202\105
+\076\171\124\222\046\230\340\200\110\250\067\357\360\326\171\140
+\026\336\254\350\016\315\156\254\104\027\070\057\111\332\341\105
+\076\052\271\066\123\317\072\120\006\367\056\350\304\127\111\154
+\141\041\030\325\004\255\170\074\054\072\200\153\247\353\257\025
+\024\351\330\211\301\271\070\154\342\221\154\212\377\144\271\167
+\045\127\060\300\033\044\243\341\334\351\337\107\174\265\264\044
+\010\005\060\354\055\275\013\277\105\277\120\271\251\363\353\230
+\001\022\255\310\210\306\230\064\137\215\012\074\306\351\325\225
+\225\155\336
+END
+
+# Trust for Certificate "DigiCert Global Root CA"
+# Issuer: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:08:3b:e0:56:90:42:46:b1:a1:75:6a:c9:59:91:c7:4a
+# Subject: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Fri Nov 10 00:00:00 2006
+# Not Valid After : Mon Nov 10 00:00:00 2031
+# Fingerprint (MD5): 79:E4:A9:84:0D:7D:3A:96:D7:C0:4F:E2:43:4C:89:2E
+# Fingerprint (SHA1): A8:98:5D:3A:65:E5:E5:C4:B2:D7:D6:6D:40:C6:DD:2F:B1:9C:54:36
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Global Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\250\230\135\072\145\345\345\304\262\327\326\155\100\306\335\057
+\261\234\124\066
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\171\344\251\204\015\175\072\226\327\300\117\342\103\114\211\056
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\010\073\340\126\220\102\106\261\241\165\152\311\131\221
+\307\112
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert High Assurance EV Root CA"
+#
+# Issuer: CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:02:ac:5c:26:6a:0b:40:9b:8f:0b:79:f2:ae:46:25:77
+# Subject: CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Fri Nov 10 00:00:00 2006
+# Not Valid After : Mon Nov 10 00:00:00 2031
+# Fingerprint (MD5): D4:74:DE:57:5C:39:B2:D3:9C:85:83:C5:C0:65:49:8A
+# Fingerprint (SHA1): 5F:B7:EE:06:33:E2:59:DB:AD:0C:4C:9A:E6:D3:8F:1A:61:C7:DC:25
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert High Assurance EV Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\154\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\053\060\051\006\003\125\004\003\023\042\104\151\147\151
+\103\145\162\164\040\110\151\147\150\040\101\163\163\165\162\141
+\156\143\145\040\105\126\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\154\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\053\060\051\006\003\125\004\003\023\042\104\151\147\151
+\103\145\162\164\040\110\151\147\150\040\101\163\163\165\162\141
+\156\143\145\040\105\126\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\002\254\134\046\152\013\100\233\217\013\171\362\256\106
+\045\167
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\305\060\202\002\255\240\003\002\001\002\002\020\002
+\254\134\046\152\013\100\233\217\013\171\362\256\106\045\167\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\154
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025\060
+\023\006\003\125\004\012\023\014\104\151\147\151\103\145\162\164
+\040\111\156\143\061\031\060\027\006\003\125\004\013\023\020\167
+\167\167\056\144\151\147\151\143\145\162\164\056\143\157\155\061
+\053\060\051\006\003\125\004\003\023\042\104\151\147\151\103\145
+\162\164\040\110\151\147\150\040\101\163\163\165\162\141\156\143
+\145\040\105\126\040\122\157\157\164\040\103\101\060\036\027\015
+\060\066\061\061\061\060\060\060\060\060\060\060\132\027\015\063
+\061\061\061\061\060\060\060\060\060\060\060\132\060\154\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\025\060\023\006
+\003\125\004\012\023\014\104\151\147\151\103\145\162\164\040\111
+\156\143\061\031\060\027\006\003\125\004\013\023\020\167\167\167
+\056\144\151\147\151\143\145\162\164\056\143\157\155\061\053\060
+\051\006\003\125\004\003\023\042\104\151\147\151\103\145\162\164
+\040\110\151\147\150\040\101\163\163\165\162\141\156\143\145\040
+\105\126\040\122\157\157\164\040\103\101\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\306\314\345\163\346
+\373\324\273\345\055\055\062\246\337\345\201\077\311\315\045\111
+\266\161\052\303\325\224\064\147\242\012\034\260\137\151\246\100
+\261\304\267\262\217\320\230\244\251\101\131\072\323\334\224\326
+\074\333\164\070\244\112\314\115\045\202\367\112\245\123\022\070
+\356\363\111\155\161\221\176\143\266\253\246\137\303\244\204\370
+\117\142\121\276\370\305\354\333\070\222\343\006\345\010\221\014
+\304\050\101\125\373\313\132\211\025\176\161\350\065\277\115\162
+\011\075\276\072\070\120\133\167\061\033\215\263\307\044\105\232
+\247\254\155\000\024\132\004\267\272\023\353\121\012\230\101\101
+\042\116\145\141\207\201\101\120\246\171\134\211\336\031\112\127
+\325\056\346\135\034\123\054\176\230\315\032\006\026\244\150\163
+\320\064\004\023\134\241\161\323\132\174\125\333\136\144\341\067
+\207\060\126\004\345\021\264\051\200\022\361\171\071\210\242\002
+\021\174\047\146\267\210\267\170\362\312\012\250\070\253\012\144
+\302\277\146\135\225\204\301\241\045\036\207\135\032\120\013\040
+\022\314\101\273\156\013\121\070\270\113\313\002\003\001\000\001
+\243\143\060\141\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\206\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024
+\261\076\303\151\003\370\277\107\001\324\230\046\032\010\002\357
+\143\144\053\303\060\037\006\003\125\035\043\004\030\060\026\200
+\024\261\076\303\151\003\370\277\107\001\324\230\046\032\010\002
+\357\143\144\053\303\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\003\202\001\001\000\034\032\006\227\334\327\234
+\237\074\210\146\006\010\127\041\333\041\107\370\052\147\252\277
+\030\062\166\100\020\127\301\212\363\172\331\021\145\216\065\372
+\236\374\105\265\236\331\114\061\113\270\221\350\103\054\216\263
+\170\316\333\343\123\171\161\326\345\041\224\001\332\125\207\232
+\044\144\366\212\146\314\336\234\067\315\250\064\261\151\233\043
+\310\236\170\042\053\160\103\343\125\107\061\141\031\357\130\305
+\205\057\116\060\366\240\061\026\043\310\347\342\145\026\063\313
+\277\032\033\240\075\370\312\136\213\061\213\140\010\211\055\014
+\006\134\122\267\304\371\012\230\321\025\137\237\022\276\174\066
+\143\070\275\104\244\177\344\046\053\012\304\227\151\015\351\214
+\342\300\020\127\270\310\166\022\221\125\362\110\151\330\274\052
+\002\133\017\104\324\040\061\333\364\272\160\046\135\220\140\236
+\274\113\027\011\057\264\313\036\103\150\311\007\047\301\322\134
+\367\352\041\271\150\022\234\074\234\277\236\374\200\134\233\143
+\315\354\107\252\045\047\147\240\067\363\000\202\175\124\327\251
+\370\351\056\023\243\167\350\037\112
+END
+
+# Trust for Certificate "DigiCert High Assurance EV Root CA"
+# Issuer: CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:02:ac:5c:26:6a:0b:40:9b:8f:0b:79:f2:ae:46:25:77
+# Subject: CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Fri Nov 10 00:00:00 2006
+# Not Valid After : Mon Nov 10 00:00:00 2031
+# Fingerprint (MD5): D4:74:DE:57:5C:39:B2:D3:9C:85:83:C5:C0:65:49:8A
+# Fingerprint (SHA1): 5F:B7:EE:06:33:E2:59:DB:AD:0C:4C:9A:E6:D3:8F:1A:61:C7:DC:25
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert High Assurance EV Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\137\267\356\006\063\342\131\333\255\014\114\232\346\323\217\032
+\141\307\334\045
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\324\164\336\127\134\071\262\323\234\205\203\305\300\145\111\212
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\154\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\053\060\051\006\003\125\004\003\023\042\104\151\147\151
+\103\145\162\164\040\110\151\147\150\040\101\163\163\165\162\141
+\156\143\145\040\105\126\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\002\254\134\046\152\013\100\233\217\013\171\362\256\106
+\045\167
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Certplus Class 2 Primary CA"
+#
+# Issuer: CN=Class 2 Primary CA,O=Certplus,C=FR
+# Serial Number:00:85:bd:4b:f3:d8:da:e3:69:f6:94:d7:5f:c3:a5:44:23
+# Subject: CN=Class 2 Primary CA,O=Certplus,C=FR
+# Not Valid Before: Wed Jul 07 17:05:00 1999
+# Not Valid After : Sat Jul 06 23:59:59 2019
+# Fingerprint (MD5): 88:2C:8C:52:B8:A2:3C:F3:F7:BB:03:EA:AE:AC:42:0B
+# Fingerprint (SHA1): 74:20:74:41:72:9C:DD:92:EC:79:31:D8:23:10:8D:C2:81:92:E2:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certplus Class 2 Primary CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\021\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154
+\165\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141
+\163\163\040\062\040\120\162\151\155\141\162\171\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\021\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154
+\165\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141
+\163\163\040\062\040\120\162\151\155\141\162\171\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\205\275\113\363\330\332\343\151\366\224\327\137\303
+\245\104\043
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\222\060\202\002\172\240\003\002\001\002\002\021\000
+\205\275\113\363\330\332\343\151\366\224\327\137\303\245\104\043
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061\021
+\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154\165
+\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141\163
+\163\040\062\040\120\162\151\155\141\162\171\040\103\101\060\036
+\027\015\071\071\060\067\060\067\061\067\060\065\060\060\132\027
+\015\061\071\060\067\060\066\062\063\065\071\065\071\132\060\075
+\061\013\060\011\006\003\125\004\006\023\002\106\122\061\021\060
+\017\006\003\125\004\012\023\010\103\145\162\164\160\154\165\163
+\061\033\060\031\006\003\125\004\003\023\022\103\154\141\163\163
+\040\062\040\120\162\151\155\141\162\171\040\103\101\060\202\001
+\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\001\017\000\060\202\001\012\002\202\001\001\000\334\120
+\226\320\022\370\065\322\010\170\172\266\122\160\375\157\356\317
+\271\021\313\135\167\341\354\351\176\004\215\326\314\157\163\103
+\127\140\254\063\012\104\354\003\137\034\200\044\221\345\250\221
+\126\022\202\367\340\053\364\333\256\141\056\211\020\215\153\154
+\272\263\002\275\325\066\305\110\067\043\342\360\132\067\122\063
+\027\022\342\321\140\115\276\057\101\021\343\366\027\045\014\213
+\221\300\033\231\173\231\126\015\257\356\322\274\107\127\343\171
+\111\173\064\211\047\044\204\336\261\354\351\130\116\376\116\337
+\132\276\101\255\254\010\305\030\016\357\322\123\356\154\320\235
+\022\001\023\215\334\200\142\367\225\251\104\210\112\161\116\140
+\125\236\333\043\031\171\126\007\014\077\143\013\134\260\342\276
+\176\025\374\224\063\130\101\070\164\304\341\217\213\337\046\254
+\037\265\213\073\267\103\131\153\260\044\246\155\220\213\304\162
+\352\135\063\230\267\313\336\136\173\357\224\361\033\076\312\311
+\041\301\305\230\002\252\242\366\133\167\233\365\176\226\125\064
+\034\147\151\300\361\102\343\107\254\374\050\034\146\125\002\003
+\001\000\001\243\201\214\060\201\211\060\017\006\003\125\035\023
+\004\010\060\006\001\001\377\002\001\012\060\013\006\003\125\035
+\017\004\004\003\002\001\006\060\035\006\003\125\035\016\004\026
+\004\024\343\163\055\337\313\016\050\014\336\335\263\244\312\171
+\270\216\273\350\060\211\060\021\006\011\140\206\110\001\206\370
+\102\001\001\004\004\003\002\001\006\060\067\006\003\125\035\037
+\004\060\060\056\060\054\240\052\240\050\206\046\150\164\164\160
+\072\057\057\167\167\167\056\143\145\162\164\160\154\165\163\056
+\143\157\155\057\103\122\114\057\143\154\141\163\163\062\056\143
+\162\154\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\202\001\001\000\247\124\317\210\104\031\313\337\324\177
+\000\337\126\063\142\265\367\121\001\220\353\303\077\321\210\104
+\351\044\135\357\347\024\275\040\267\232\074\000\376\155\237\333
+\220\334\327\364\142\326\213\160\135\347\345\004\110\251\150\174
+\311\361\102\363\154\177\305\172\174\035\121\210\272\322\012\076
+\047\135\336\055\121\116\323\023\144\151\344\056\343\323\347\233
+\011\231\246\340\225\233\316\032\327\177\276\074\316\122\263\021
+\025\301\017\027\315\003\273\234\045\025\272\242\166\211\374\006
+\361\030\320\223\113\016\174\202\267\245\364\366\137\376\355\100
+\246\235\204\164\071\271\334\036\205\026\332\051\033\206\043\000
+\311\273\211\176\156\200\210\036\057\024\264\003\044\250\062\157
+\003\232\107\054\060\276\126\306\247\102\002\160\033\352\100\330
+\272\005\003\160\007\244\226\377\375\110\063\012\341\334\245\201
+\220\233\115\335\175\347\347\262\315\134\310\152\225\370\245\366
+\215\304\135\170\010\276\173\006\326\111\317\031\066\120\043\056
+\010\346\236\005\115\107\030\325\026\351\261\326\266\020\325\273
+\227\277\242\216\264\124
+END
+
+# Trust for Certificate "Certplus Class 2 Primary CA"
+# Issuer: CN=Class 2 Primary CA,O=Certplus,C=FR
+# Serial Number:00:85:bd:4b:f3:d8:da:e3:69:f6:94:d7:5f:c3:a5:44:23
+# Subject: CN=Class 2 Primary CA,O=Certplus,C=FR
+# Not Valid Before: Wed Jul 07 17:05:00 1999
+# Not Valid After : Sat Jul 06 23:59:59 2019
+# Fingerprint (MD5): 88:2C:8C:52:B8:A2:3C:F3:F7:BB:03:EA:AE:AC:42:0B
+# Fingerprint (SHA1): 74:20:74:41:72:9C:DD:92:EC:79:31:D8:23:10:8D:C2:81:92:E2:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certplus Class 2 Primary CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\164\040\164\101\162\234\335\222\354\171\061\330\043\020\215\302
+\201\222\342\273
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\210\054\214\122\270\242\074\363\367\273\003\352\256\254\102\013
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\021\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154
+\165\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141
+\163\163\040\062\040\120\162\151\155\141\162\171\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\205\275\113\363\330\332\343\151\366\224\327\137\303
+\245\104\043
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DST Root CA X3"
+#
+# Issuer: CN=DST Root CA X3,O=Digital Signature Trust Co.
+# Serial Number:44:af:b0:80:d6:a3:27:ba:89:30:39:86:2e:f8:40:6b
+# Subject: CN=DST Root CA X3,O=Digital Signature Trust Co.
+# Not Valid Before: Sat Sep 30 21:12:19 2000
+# Not Valid After : Thu Sep 30 14:01:15 2021
+# Fingerprint (MD5): 41:03:52:DC:0F:F7:50:1B:16:F0:02:8E:BA:6F:45:C5
+# Fingerprint (SHA1): DA:C9:02:4F:54:D8:F6:DF:94:93:5F:B1:73:26:38:CA:6A:D7:7C:13
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DST Root CA X3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\077\061\044\060\042\006\003\125\004\012\023\033\104\151\147
+\151\164\141\154\040\123\151\147\156\141\164\165\162\145\040\124
+\162\165\163\164\040\103\157\056\061\027\060\025\006\003\125\004
+\003\023\016\104\123\124\040\122\157\157\164\040\103\101\040\130
+\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\077\061\044\060\042\006\003\125\004\012\023\033\104\151\147
+\151\164\141\154\040\123\151\147\156\141\164\165\162\145\040\124
+\162\165\163\164\040\103\157\056\061\027\060\025\006\003\125\004
+\003\023\016\104\123\124\040\122\157\157\164\040\103\101\040\130
+\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\257\260\200\326\243\047\272\211\060\071\206\056\370
+\100\153
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\112\060\202\002\062\240\003\002\001\002\002\020\104
+\257\260\200\326\243\047\272\211\060\071\206\056\370\100\153\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\077
+\061\044\060\042\006\003\125\004\012\023\033\104\151\147\151\164
+\141\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165
+\163\164\040\103\157\056\061\027\060\025\006\003\125\004\003\023
+\016\104\123\124\040\122\157\157\164\040\103\101\040\130\063\060
+\036\027\015\060\060\060\071\063\060\062\061\061\062\061\071\132
+\027\015\062\061\060\071\063\060\061\064\060\061\061\065\132\060
+\077\061\044\060\042\006\003\125\004\012\023\033\104\151\147\151
+\164\141\154\040\123\151\147\156\141\164\165\162\145\040\124\162
+\165\163\164\040\103\157\056\061\027\060\025\006\003\125\004\003
+\023\016\104\123\124\040\122\157\157\164\040\103\101\040\130\063
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\337\257\351\227\120\010\203\127\264\314\142\145\366\220\202
+\354\307\323\054\153\060\312\133\354\331\303\175\307\100\301\030
+\024\213\340\350\063\166\111\052\343\077\041\111\223\254\116\016
+\257\076\110\313\145\356\374\323\041\017\145\322\052\331\062\217
+\214\345\367\167\260\022\173\265\225\300\211\243\251\272\355\163
+\056\172\014\006\062\203\242\176\212\024\060\315\021\240\341\052
+\070\271\171\012\061\375\120\275\200\145\337\267\121\143\203\310
+\342\210\141\352\113\141\201\354\122\153\271\242\342\113\032\050
+\237\110\243\236\014\332\011\216\076\027\056\036\335\040\337\133
+\306\052\212\253\056\275\160\255\305\013\032\045\220\164\162\305
+\173\152\253\064\326\060\211\377\345\150\023\173\124\013\310\326
+\256\354\132\234\222\036\075\144\263\214\306\337\277\311\101\160
+\354\026\162\325\046\354\070\125\071\103\320\374\375\030\134\100
+\361\227\353\325\232\233\215\035\272\332\045\271\306\330\337\301
+\025\002\072\253\332\156\361\076\056\365\134\010\234\074\326\203
+\151\344\020\233\031\052\266\051\127\343\345\075\233\237\360\002
+\135\002\003\001\000\001\243\102\060\100\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125
+\035\016\004\026\004\024\304\247\261\244\173\054\161\372\333\341
+\113\220\165\377\304\025\140\205\211\020\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\243\032
+\054\233\027\000\134\251\036\356\050\146\067\072\277\203\307\077
+\113\303\011\240\225\040\135\343\331\131\104\322\076\015\076\275
+\212\113\240\164\037\316\020\202\234\164\032\035\176\230\032\335
+\313\023\113\263\040\104\344\221\351\314\374\175\245\333\152\345
+\376\346\375\340\116\335\267\000\072\265\160\111\257\362\345\353
+\002\361\321\002\213\031\313\224\072\136\110\304\030\036\130\031
+\137\036\002\132\360\014\361\261\255\251\334\131\206\213\156\351
+\221\365\206\312\372\271\146\063\252\131\133\316\342\247\026\163
+\107\313\053\314\231\260\067\110\317\343\126\113\365\317\017\014
+\162\062\207\306\360\104\273\123\162\155\103\365\046\110\232\122
+\147\267\130\253\376\147\166\161\170\333\015\242\126\024\023\071
+\044\061\205\242\250\002\132\060\107\341\335\120\007\274\002\011
+\220\000\353\144\143\140\233\026\274\210\311\022\346\322\175\221
+\213\371\075\062\215\145\264\351\174\261\127\166\352\305\266\050
+\071\277\025\145\034\310\366\167\226\152\012\215\167\013\330\221
+\013\004\216\007\333\051\266\012\356\235\202\065\065\020
+END
+
+# Trust for Certificate "DST Root CA X3"
+# Issuer: CN=DST Root CA X3,O=Digital Signature Trust Co.
+# Serial Number:44:af:b0:80:d6:a3:27:ba:89:30:39:86:2e:f8:40:6b
+# Subject: CN=DST Root CA X3,O=Digital Signature Trust Co.
+# Not Valid Before: Sat Sep 30 21:12:19 2000
+# Not Valid After : Thu Sep 30 14:01:15 2021
+# Fingerprint (MD5): 41:03:52:DC:0F:F7:50:1B:16:F0:02:8E:BA:6F:45:C5
+# Fingerprint (SHA1): DA:C9:02:4F:54:D8:F6:DF:94:93:5F:B1:73:26:38:CA:6A:D7:7C:13
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DST Root CA X3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\332\311\002\117\124\330\366\337\224\223\137\261\163\046\070\312
+\152\327\174\023
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\101\003\122\334\017\367\120\033\026\360\002\216\272\157\105\305
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\077\061\044\060\042\006\003\125\004\012\023\033\104\151\147
+\151\164\141\154\040\123\151\147\156\141\164\165\162\145\040\124
+\162\165\163\164\040\103\157\056\061\027\060\025\006\003\125\004
+\003\023\016\104\123\124\040\122\157\157\164\040\103\101\040\130
+\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\104\257\260\200\326\243\047\272\211\060\071\206\056\370
+\100\153
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DST ACES CA X6"
+#
+# Issuer: CN=DST ACES CA X6,OU=DST ACES,O=Digital Signature Trust,C=US
+# Serial Number:0d:5e:99:0a:d6:9d:b7:78:ec:d8:07:56:3b:86:15:d9
+# Subject: CN=DST ACES CA X6,OU=DST ACES,O=Digital Signature Trust,C=US
+# Not Valid Before: Thu Nov 20 21:19:58 2003
+# Not Valid After : Mon Nov 20 21:19:58 2017
+# Fingerprint (MD5): 21:D8:4C:82:2B:99:09:33:A2:EB:14:24:8D:8E:5F:E8
+# Fingerprint (SHA1): 40:54:DA:6F:1C:3F:40:74:AC:ED:0F:EC:CD:DB:79:D1:53:FB:90:1D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DST ACES CA X6"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\133\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\061\021\060\017\006\003\125\004\013\023\010\104\123\124\040
+\101\103\105\123\061\027\060\025\006\003\125\004\003\023\016\104
+\123\124\040\101\103\105\123\040\103\101\040\130\066
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\133\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\061\021\060\017\006\003\125\004\013\023\010\104\123\124\040
+\101\103\105\123\061\027\060\025\006\003\125\004\003\023\016\104
+\123\124\040\101\103\105\123\040\103\101\040\130\066
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\015\136\231\012\326\235\267\170\354\330\007\126\073\206
+\025\331
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\011\060\202\002\361\240\003\002\001\002\002\020\015
+\136\231\012\326\235\267\170\354\330\007\126\073\206\025\331\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\133
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\040\060
+\036\006\003\125\004\012\023\027\104\151\147\151\164\141\154\040
+\123\151\147\156\141\164\165\162\145\040\124\162\165\163\164\061
+\021\060\017\006\003\125\004\013\023\010\104\123\124\040\101\103
+\105\123\061\027\060\025\006\003\125\004\003\023\016\104\123\124
+\040\101\103\105\123\040\103\101\040\130\066\060\036\027\015\060
+\063\061\061\062\060\062\061\061\071\065\070\132\027\015\061\067
+\061\061\062\060\062\061\061\071\065\070\132\060\133\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\040\060\036\006\003
+\125\004\012\023\027\104\151\147\151\164\141\154\040\123\151\147
+\156\141\164\165\162\145\040\124\162\165\163\164\061\021\060\017
+\006\003\125\004\013\023\010\104\123\124\040\101\103\105\123\061
+\027\060\025\006\003\125\004\003\023\016\104\123\124\040\101\103
+\105\123\040\103\101\040\130\066\060\202\001\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000
+\060\202\001\012\002\202\001\001\000\271\075\365\054\311\224\334
+\165\212\225\135\143\350\204\167\166\146\271\131\221\134\106\335
+\222\076\237\371\016\003\264\075\141\222\275\043\046\265\143\356
+\222\322\236\326\074\310\015\220\137\144\201\261\250\010\015\114
+\330\371\323\005\050\122\264\001\045\305\225\034\014\176\076\020
+\204\165\317\301\031\221\143\317\350\250\221\210\271\103\122\273
+\200\261\125\211\213\061\372\320\267\166\276\101\075\060\232\244
+\042\045\027\163\350\036\342\323\254\052\275\133\070\041\325\052
+\113\327\125\175\343\072\125\275\327\155\153\002\127\153\346\107
+\174\010\310\202\272\336\247\207\075\241\155\270\060\126\302\263
+\002\201\137\055\365\342\232\060\030\050\270\146\323\313\001\226
+\157\352\212\105\125\326\340\235\377\147\053\027\002\246\116\032
+\152\021\013\176\267\173\347\230\326\214\166\157\301\073\333\120
+\223\176\345\320\216\037\067\270\275\272\306\237\154\351\174\063
+\362\062\074\046\107\372\047\044\002\311\176\035\133\210\102\023
+\152\065\174\175\065\351\056\146\221\162\223\325\062\046\304\164
+\365\123\243\263\135\232\366\011\313\002\003\001\000\001\243\201
+\310\060\201\305\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004
+\004\003\002\001\306\060\037\006\003\125\035\021\004\030\060\026
+\201\024\160\153\151\055\157\160\163\100\164\162\165\163\164\144
+\163\164\056\143\157\155\060\142\006\003\125\035\040\004\133\060
+\131\060\127\006\012\140\206\110\001\145\003\002\001\001\001\060
+\111\060\107\006\010\053\006\001\005\005\007\002\001\026\073\150
+\164\164\160\072\057\057\167\167\167\056\164\162\165\163\164\144
+\163\164\056\143\157\155\057\143\145\162\164\151\146\151\143\141
+\164\145\163\057\160\157\154\151\143\171\057\101\103\105\123\055
+\151\156\144\145\170\056\150\164\155\154\060\035\006\003\125\035
+\016\004\026\004\024\011\162\006\116\030\103\017\345\326\314\303
+\152\213\061\173\170\217\250\203\270\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\001\001\000\243\330\216
+\326\262\333\316\005\347\062\315\001\323\004\003\345\166\344\126
+\053\234\231\220\350\010\060\154\337\175\075\356\345\277\265\044
+\100\204\111\341\321\050\256\304\302\072\123\060\210\361\365\167
+\156\121\312\372\377\231\257\044\137\033\240\375\362\254\204\312
+\337\251\360\137\004\056\255\026\277\041\227\020\201\075\343\377
+\207\215\062\334\224\345\107\212\136\152\023\311\224\225\075\322
+\356\310\064\225\320\200\324\255\062\010\200\124\074\340\275\122
+\123\327\122\174\262\151\077\177\172\317\152\164\312\372\004\052
+\234\114\132\006\245\351\040\255\105\146\017\151\361\335\277\351
+\343\062\213\372\340\301\206\115\162\074\056\330\223\170\012\052
+\370\330\322\047\075\031\211\137\132\173\212\073\314\014\332\121
+\256\307\013\367\053\260\067\005\354\274\127\043\342\070\322\233
+\150\363\126\022\210\117\102\174\270\061\304\265\333\344\310\041
+\064\351\110\021\065\356\372\307\222\127\305\237\064\344\307\366
+\367\016\013\114\234\150\170\173\161\061\307\353\036\340\147\101
+\363\267\240\247\315\345\172\063\066\152\372\232\053
+END
+
+# Trust for Certificate "DST ACES CA X6"
+# Issuer: CN=DST ACES CA X6,OU=DST ACES,O=Digital Signature Trust,C=US
+# Serial Number:0d:5e:99:0a:d6:9d:b7:78:ec:d8:07:56:3b:86:15:d9
+# Subject: CN=DST ACES CA X6,OU=DST ACES,O=Digital Signature Trust,C=US
+# Not Valid Before: Thu Nov 20 21:19:58 2003
+# Not Valid After : Mon Nov 20 21:19:58 2017
+# Fingerprint (MD5): 21:D8:4C:82:2B:99:09:33:A2:EB:14:24:8D:8E:5F:E8
+# Fingerprint (SHA1): 40:54:DA:6F:1C:3F:40:74:AC:ED:0F:EC:CD:DB:79:D1:53:FB:90:1D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DST ACES CA X6"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\100\124\332\157\034\077\100\164\254\355\017\354\315\333\171\321
+\123\373\220\035
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\041\330\114\202\053\231\011\063\242\353\024\044\215\216\137\350
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\133\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\104\151\147\151\164\141
+\154\040\123\151\147\156\141\164\165\162\145\040\124\162\165\163
+\164\061\021\060\017\006\003\125\004\013\023\010\104\123\124\040
+\101\103\105\123\061\027\060\025\006\003\125\004\003\023\016\104
+\123\124\040\101\103\105\123\040\103\101\040\130\066
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\015\136\231\012\326\235\267\170\354\330\007\126\073\206
+\025\331
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TURKTRUST Certificate Services Provider Root 1"
+#
+# Issuer: O=(c) 2005 T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hiz...,L=ANKARA,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number: 1 (0x1)
+# Subject: O=(c) 2005 T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hiz...,L=ANKARA,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Fri May 13 10:27:17 2005
+# Not Valid After : Sun Mar 22 10:27:17 2015
+# Fingerprint (MD5): F1:6A:22:18:C9:CD:DF:CE:82:1D:1D:B7:78:5C:A9:A5
+# Fingerprint (SHA1): 79:98:A3:08:E1:4D:65:85:E6:C2:1E:15:3A:71:9F:BA:5A:D3:4A:D9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Certificate Services Provider Root 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\267\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\014\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\116\113\101
+\122\101\061\126\060\124\006\003\125\004\012\014\115\050\143\051
+\040\062\060\060\065\040\124\303\234\122\113\124\122\125\123\124
+\040\102\151\154\147\151\040\304\260\154\145\164\151\305\237\151
+\155\040\166\145\040\102\151\154\151\305\237\151\155\040\107\303
+\274\166\145\156\154\151\304\237\151\040\110\151\172\155\145\164
+\154\145\162\151\040\101\056\305\236\056
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\267\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\014\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\116\113\101
+\122\101\061\126\060\124\006\003\125\004\012\014\115\050\143\051
+\040\062\060\060\065\040\124\303\234\122\113\124\122\125\123\124
+\040\102\151\154\147\151\040\304\260\154\145\164\151\305\237\151
+\155\040\166\145\040\102\151\154\151\305\237\151\155\040\107\303
+\274\166\145\156\154\151\304\237\151\040\110\151\172\155\145\164
+\154\145\162\151\040\101\056\305\236\056
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\373\060\202\002\343\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\267\061\077\060\075\006\003\125\004\003\014\066\124\303\234
+\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157\156
+\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172
+\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261
+\163\304\261\061\013\060\011\006\003\125\004\006\014\002\124\122
+\061\017\060\015\006\003\125\004\007\014\006\101\116\113\101\122
+\101\061\126\060\124\006\003\125\004\012\014\115\050\143\051\040
+\062\060\060\065\040\124\303\234\122\113\124\122\125\123\124\040
+\102\151\154\147\151\040\304\260\154\145\164\151\305\237\151\155
+\040\166\145\040\102\151\154\151\305\237\151\155\040\107\303\274
+\166\145\156\154\151\304\237\151\040\110\151\172\155\145\164\154
+\145\162\151\040\101\056\305\236\056\060\036\027\015\060\065\060
+\065\061\063\061\060\062\067\061\067\132\027\015\061\065\060\063
+\062\062\061\060\062\067\061\067\132\060\201\267\061\077\060\075
+\006\003\125\004\003\014\066\124\303\234\122\113\124\122\125\123
+\124\040\105\154\145\153\164\162\157\156\151\153\040\123\145\162
+\164\151\146\151\153\141\040\110\151\172\155\145\164\040\123\141
+\304\237\154\141\171\304\261\143\304\261\163\304\261\061\013\060
+\011\006\003\125\004\006\014\002\124\122\061\017\060\015\006\003
+\125\004\007\014\006\101\116\113\101\122\101\061\126\060\124\006
+\003\125\004\012\014\115\050\143\051\040\062\060\060\065\040\124
+\303\234\122\113\124\122\125\123\124\040\102\151\154\147\151\040
+\304\260\154\145\164\151\305\237\151\155\040\166\145\040\102\151
+\154\151\305\237\151\155\040\107\303\274\166\145\156\154\151\304
+\237\151\040\110\151\172\155\145\164\154\145\162\151\040\101\056
+\305\236\056\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\312\122\005\326\143\003\330\034\137\335\322\173
+\135\362\014\140\141\133\153\073\164\053\170\015\175\105\275\042
+\164\350\214\003\301\306\021\052\075\225\274\251\224\260\273\221
+\227\310\151\174\204\305\264\221\154\154\023\152\244\125\255\244
+\205\350\225\176\263\000\257\000\302\005\030\365\160\235\066\213
+\256\313\344\033\201\177\223\210\373\152\125\273\175\205\222\316
+\272\130\237\333\062\305\275\135\357\042\112\057\101\007\176\111
+\141\263\206\354\116\246\101\156\204\274\003\354\365\073\034\310
+\037\302\356\250\356\352\022\112\215\024\317\363\012\340\120\071
+\371\010\065\370\021\131\255\347\042\352\113\312\024\006\336\102
+\272\262\231\363\055\124\210\020\006\352\341\032\076\075\147\037
+\373\316\373\174\202\350\021\135\112\301\271\024\352\124\331\146
+\233\174\211\175\004\232\142\311\351\122\074\236\234\357\322\365
+\046\344\346\345\030\174\213\156\337\154\314\170\133\117\162\262
+\313\134\077\214\005\215\321\114\214\255\222\307\341\170\177\145
+\154\111\006\120\054\236\062\302\327\112\306\165\212\131\116\165
+\157\107\136\301\002\003\001\000\001\243\020\060\016\060\014\006
+\003\125\035\023\004\005\060\003\001\001\377\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000\025
+\365\125\377\067\226\200\131\041\244\374\241\025\114\040\366\324
+\137\332\003\044\374\317\220\032\364\041\012\232\356\072\261\152
+\357\357\370\140\321\114\066\146\105\035\363\146\002\164\004\173
+\222\060\250\336\012\166\017\357\225\156\275\311\067\346\032\015
+\254\211\110\133\314\203\066\302\365\106\134\131\202\126\264\325
+\376\043\264\330\124\034\104\253\304\247\345\024\316\074\101\141
+\174\103\346\315\304\201\011\213\044\373\124\045\326\026\250\226
+\014\147\007\157\263\120\107\343\034\044\050\335\052\230\244\141
+\376\333\352\022\067\274\001\032\064\205\275\156\117\347\221\162
+\007\104\205\036\130\312\124\104\335\367\254\271\313\211\041\162
+\333\217\300\151\051\227\052\243\256\030\043\227\034\101\052\213
+\174\052\301\174\220\350\251\050\300\323\221\306\255\050\207\100
+\150\265\377\354\247\322\323\070\030\234\323\175\151\135\360\306
+\245\036\044\033\243\107\374\151\007\150\347\344\232\264\355\017
+\241\207\207\002\316\207\322\110\116\341\274\377\313\361\162\222
+\104\144\003\045\352\336\133\156\237\311\362\116\254\335\307
+END
+
+# Trust for Certificate "TURKTRUST Certificate Services Provider Root 1"
+# Issuer: O=(c) 2005 T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hiz...,L=ANKARA,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number: 1 (0x1)
+# Subject: O=(c) 2005 T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hiz...,L=ANKARA,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Fri May 13 10:27:17 2005
+# Not Valid After : Sun Mar 22 10:27:17 2015
+# Fingerprint (MD5): F1:6A:22:18:C9:CD:DF:CE:82:1D:1D:B7:78:5C:A9:A5
+# Fingerprint (SHA1): 79:98:A3:08:E1:4D:65:85:E6:C2:1E:15:3A:71:9F:BA:5A:D3:4A:D9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Certificate Services Provider Root 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\171\230\243\010\341\115\145\205\346\302\036\025\072\161\237\272
+\132\323\112\331
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\361\152\042\030\311\315\337\316\202\035\035\267\170\134\251\245
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\267\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\014\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\116\113\101
+\122\101\061\126\060\124\006\003\125\004\012\014\115\050\143\051
+\040\062\060\060\065\040\124\303\234\122\113\124\122\125\123\124
+\040\102\151\154\147\151\040\304\260\154\145\164\151\305\237\151
+\155\040\166\145\040\102\151\154\151\305\237\151\155\040\107\303
+\274\166\145\156\154\151\304\237\151\040\110\151\172\155\145\164
+\154\145\162\151\040\101\056\305\236\056
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TURKTRUST Certificate Services Provider Root 2"
+#
+# Issuer: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number: 1 (0x1)
+# Subject: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Mon Nov 07 10:07:57 2005
+# Not Valid After : Wed Sep 16 10:07:57 2015
+# Fingerprint (MD5): 37:A5:6E:D4:B1:25:84:97:B7:FD:56:15:7A:F9:A2:00
+# Fingerprint (SHA1): B4:35:D4:E1:11:9D:1C:66:90:A7:49:EB:B3:94:BD:63:7B:A7:82:B7
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Certificate Services Provider Root 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\276\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141
+\162\141\061\135\060\133\006\003\125\004\012\014\124\124\303\234
+\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260
+\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151
+\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151
+\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236
+\056\040\050\143\051\040\113\141\163\304\261\155\040\062\060\060
+\065
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\276\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141
+\162\141\061\135\060\133\006\003\125\004\012\014\124\124\303\234
+\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260
+\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151
+\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151
+\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236
+\056\040\050\143\051\040\113\141\163\304\261\155\040\062\060\060
+\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\074\060\202\003\044\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\276\061\077\060\075\006\003\125\004\003\014\066\124\303\234
+\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157\156
+\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172
+\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261
+\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124\122
+\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141\162
+\141\061\135\060\133\006\003\125\004\012\014\124\124\303\234\122
+\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260\154
+\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151\305
+\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151\040
+\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236\056
+\040\050\143\051\040\113\141\163\304\261\155\040\062\060\060\065
+\060\036\027\015\060\065\061\061\060\067\061\060\060\067\065\067
+\132\027\015\061\065\060\071\061\066\061\060\060\067\065\067\132
+\060\201\276\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141
+\162\141\061\135\060\133\006\003\125\004\012\014\124\124\303\234
+\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260
+\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151
+\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151
+\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236
+\056\040\050\143\051\040\113\141\163\304\261\155\040\062\060\060
+\065\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\251\066\176\303\221\103\114\303\031\230\010\310\307\130
+\173\117\026\214\245\316\111\001\037\163\016\254\165\023\246\372
+\236\054\040\336\330\220\016\012\321\151\322\047\373\252\167\237
+\047\122\045\342\313\135\330\330\203\120\027\175\212\265\202\077
+\004\216\264\325\360\111\247\144\267\036\056\137\040\234\120\165
+\117\257\341\265\101\024\364\230\222\210\307\345\345\144\107\141
+\107\171\375\300\121\361\301\231\347\334\316\152\373\257\265\001
+\060\334\106\034\357\212\354\225\357\334\377\257\020\034\353\235
+\330\260\252\152\205\030\015\027\311\076\277\361\233\320\011\211
+\102\375\240\102\264\235\211\121\125\051\317\033\160\274\204\124
+\255\301\023\037\230\364\056\166\140\213\135\077\232\255\312\014
+\277\247\126\133\217\167\270\325\236\171\111\222\077\340\361\227
+\044\172\154\233\027\017\155\357\123\230\221\053\344\017\276\131
+\171\007\170\273\227\225\364\237\151\324\130\207\012\251\343\314
+\266\130\031\237\046\041\261\304\131\215\262\101\165\300\255\151
+\316\234\000\010\362\066\377\076\360\241\017\032\254\024\375\246
+\140\017\002\003\001\000\001\243\103\060\101\060\035\006\003\125
+\035\016\004\026\004\024\331\067\263\116\005\375\331\317\237\022
+\026\256\266\211\057\353\045\072\210\034\060\017\006\003\125\035
+\017\001\001\377\004\005\003\003\007\006\000\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000
+\162\140\226\267\311\334\330\051\136\043\205\137\262\263\055\166
+\373\210\327\027\376\173\155\105\270\366\205\154\237\042\374\052
+\020\042\354\252\271\060\366\253\130\326\071\020\061\231\051\000
+\275\211\146\101\373\164\336\221\301\030\013\237\265\141\313\235
+\072\276\365\250\224\243\042\125\156\027\111\377\322\051\361\070
+\046\135\357\245\252\072\371\161\173\346\332\130\035\323\164\302
+\001\372\076\151\130\137\255\313\150\276\024\056\233\154\300\266
+\334\240\046\372\167\032\342\044\332\032\067\340\147\255\321\163
+\203\015\245\032\035\156\022\222\176\204\142\000\027\275\274\045
+\030\127\362\327\251\157\131\210\274\064\267\056\205\170\235\226
+\334\024\303\054\212\122\233\226\214\122\146\075\206\026\213\107
+\270\121\011\214\352\175\315\210\162\263\140\063\261\360\012\104
+\357\017\365\011\067\210\044\016\054\153\040\072\242\372\021\362
+\100\065\234\104\150\143\073\254\063\157\143\274\054\273\362\322
+\313\166\175\175\210\330\035\310\005\035\156\274\224\251\146\214
+\167\161\307\372\221\372\057\121\236\351\071\122\266\347\004\102
+END
+
+# Trust for Certificate "TURKTRUST Certificate Services Provider Root 2"
+# Issuer: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number: 1 (0x1)
+# Subject: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Mon Nov 07 10:07:57 2005
+# Not Valid After : Wed Sep 16 10:07:57 2015
+# Fingerprint (MD5): 37:A5:6E:D4:B1:25:84:97:B7:FD:56:15:7A:F9:A2:00
+# Fingerprint (SHA1): B4:35:D4:E1:11:9D:1C:66:90:A7:49:EB:B3:94:BD:63:7B:A7:82:B7
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Certificate Services Provider Root 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\264\065\324\341\021\235\034\146\220\247\111\353\263\224\275\143
+\173\247\202\267
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\067\245\156\324\261\045\204\227\267\375\126\025\172\371\242\000
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\276\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141
+\162\141\061\135\060\133\006\003\125\004\012\014\124\124\303\234
+\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260
+\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151
+\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151
+\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236
+\056\040\050\143\051\040\113\141\163\304\261\155\040\062\060\060
+\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "SwissSign Platinum CA - G2"
+#
+# Issuer: CN=SwissSign Platinum CA - G2,O=SwissSign AG,C=CH
+# Serial Number:4e:b2:00:67:0c:03:5d:4f
+# Subject: CN=SwissSign Platinum CA - G2,O=SwissSign AG,C=CH
+# Not Valid Before: Wed Oct 25 08:36:00 2006
+# Not Valid After : Sat Oct 25 08:36:00 2036
+# Fingerprint (MD5): C9:98:27:77:28:1E:3D:0E:15:3C:84:00:B8:85:03:E6
+# Fingerprint (SHA1): 56:E0:FA:C0:3B:8F:18:23:55:18:E5:D3:11:CA:E8:C2:43:31:AB:66
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SwissSign Platinum CA - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\111\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\043\060\041\006\003\125\004\003\023
+\032\123\167\151\163\163\123\151\147\156\040\120\154\141\164\151
+\156\165\155\040\103\101\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\111\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\043\060\041\006\003\125\004\003\023
+\032\123\167\151\163\163\123\151\147\156\040\120\154\141\164\151
+\156\165\155\040\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\116\262\000\147\014\003\135\117
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\301\060\202\003\251\240\003\002\001\002\002\010\116
+\262\000\147\014\003\135\117\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\060\111\061\013\060\011\006\003\125\004
+\006\023\002\103\110\061\025\060\023\006\003\125\004\012\023\014
+\123\167\151\163\163\123\151\147\156\040\101\107\061\043\060\041
+\006\003\125\004\003\023\032\123\167\151\163\163\123\151\147\156
+\040\120\154\141\164\151\156\165\155\040\103\101\040\055\040\107
+\062\060\036\027\015\060\066\061\060\062\065\060\070\063\066\060
+\060\132\027\015\063\066\061\060\062\065\060\070\063\066\060\060
+\132\060\111\061\013\060\011\006\003\125\004\006\023\002\103\110
+\061\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163
+\123\151\147\156\040\101\107\061\043\060\041\006\003\125\004\003
+\023\032\123\167\151\163\163\123\151\147\156\040\120\154\141\164
+\151\156\165\155\040\103\101\040\055\040\107\062\060\202\002\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\002\017\000\060\202\002\012\002\202\002\001\000\312\337\242
+\002\342\332\370\374\007\026\261\336\140\252\336\226\134\144\037
+\307\057\176\317\147\372\104\102\326\166\143\225\256\353\257\162
+\040\212\105\107\206\142\170\206\326\040\071\046\364\256\243\375
+\043\347\245\234\265\042\041\031\267\067\223\042\300\120\234\202
+\173\324\325\004\104\134\313\264\302\237\222\276\044\330\173\147
+\042\342\151\137\345\005\170\324\207\331\161\160\063\045\123\264
+\207\073\051\220\050\066\232\125\104\060\150\244\203\227\177\015
+\036\234\166\377\025\235\140\227\000\215\212\205\003\354\200\276
+\352\054\156\020\121\222\314\176\325\243\063\330\326\111\336\130
+\052\257\366\026\353\113\173\220\062\227\271\272\235\130\361\370
+\127\111\004\036\242\135\006\160\335\161\333\371\335\213\232\033
+\214\317\075\243\115\316\313\174\366\273\234\240\372\011\316\043
+\142\262\351\015\037\342\162\050\217\237\254\150\040\175\157\073
+\250\205\061\011\177\013\307\350\145\351\343\170\016\011\147\060
+\213\064\202\373\135\340\314\235\201\155\142\356\010\036\004\054
+\116\233\354\376\251\117\137\375\151\170\357\011\037\241\264\277
+\372\363\357\220\036\114\005\213\036\352\172\221\172\303\327\345
+\373\060\274\154\033\020\130\230\367\032\137\320\051\062\003\023
+\106\115\141\152\205\114\122\164\057\006\037\173\021\342\204\227
+\306\231\363\155\177\327\147\203\176\023\150\330\161\050\132\330
+\316\335\350\020\024\232\376\155\043\207\156\216\132\160\074\325
+\215\011\000\247\252\274\260\061\067\155\310\204\024\036\133\275
+\105\143\040\153\113\164\214\275\333\072\016\301\317\132\026\217
+\245\230\362\166\211\262\023\022\073\013\167\167\254\273\345\074
+\051\112\222\162\312\141\032\053\136\114\342\203\164\167\372\065
+\110\172\205\115\215\232\123\304\337\170\312\227\221\110\053\105
+\053\001\367\034\032\242\355\030\272\012\275\203\372\157\274\215
+\127\223\073\324\324\246\316\036\361\240\261\316\253\375\053\050
+\232\117\033\327\303\162\333\244\304\277\135\114\365\335\173\226
+\151\356\150\200\346\347\230\272\066\267\376\156\355\053\275\040
+\370\145\031\332\125\011\176\045\334\376\141\142\162\371\176\030
+\002\357\143\264\320\373\257\345\073\143\214\147\217\002\003\001
+\000\001\243\201\254\060\201\251\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\001\006\060\017\006\003\125\035\023\001
+\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035\016
+\004\026\004\024\120\257\314\007\207\025\107\157\070\305\264\145
+\321\336\225\252\351\337\234\314\060\037\006\003\125\035\043\004
+\030\060\026\200\024\120\257\314\007\207\025\107\157\070\305\264
+\145\321\336\225\252\351\337\234\314\060\106\006\003\125\035\040
+\004\077\060\075\060\073\006\011\140\205\164\001\131\001\001\001
+\001\060\056\060\054\006\010\053\006\001\005\005\007\002\001\026
+\040\150\164\164\160\072\057\057\162\145\160\157\163\151\164\157
+\162\171\056\163\167\151\163\163\163\151\147\156\056\143\157\155
+\057\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\002\001\000\010\205\246\365\026\014\374\104\032\301\143
+\340\371\125\106\010\374\160\034\102\050\226\216\267\305\301\101
+\165\116\011\161\171\345\155\226\312\113\245\210\140\320\060\164
+\270\312\010\334\264\060\236\100\007\026\153\145\225\167\001\256
+\244\267\065\013\201\332\161\025\251\164\027\070\173\130\312\371
+\057\373\300\145\166\215\133\001\271\175\336\202\075\144\270\276
+\024\164\243\012\124\323\054\225\030\027\065\365\121\153\077\217
+\242\226\141\071\170\153\113\345\246\240\370\123\337\121\020\223
+\142\347\200\057\342\321\340\274\216\066\106\167\063\354\270\373
+\216\232\054\211\115\061\021\017\046\236\004\273\267\004\215\013
+\362\271\374\132\235\073\026\267\057\310\230\253\376\212\120\131
+\056\243\073\374\051\135\213\301\113\311\342\212\023\035\261\277
+\273\102\035\122\335\116\330\024\136\020\306\061\007\357\161\047
+\367\033\071\011\334\202\352\213\263\225\206\136\375\365\332\135
+\061\246\340\061\266\224\346\104\111\164\305\026\345\367\037\003
+\141\050\305\310\313\022\240\102\113\371\153\210\010\215\264\062
+\030\363\165\237\304\177\000\117\005\225\234\243\027\002\303\263
+\123\233\252\040\071\051\053\146\372\235\257\136\263\222\322\265
+\246\341\032\371\055\101\151\201\024\264\264\265\355\211\075\316
+\373\251\235\065\102\104\261\034\024\163\201\317\052\001\065\232
+\061\325\055\217\155\204\337\200\115\127\343\077\305\204\165\332
+\211\306\060\273\353\217\313\042\010\240\256\252\361\003\154\072
+\113\115\011\245\016\162\306\126\153\041\102\116\043\045\024\150
+\256\166\012\174\014\007\160\144\371\232\057\366\005\071\046\306
+\014\217\031\177\103\136\156\364\133\025\057\333\141\135\346\147
+\057\077\010\224\371\140\264\230\061\332\164\361\204\223\161\115
+\137\373\140\130\321\373\304\301\155\211\242\273\040\037\235\161
+\221\313\062\233\023\075\076\175\222\122\065\254\222\224\242\323
+\030\302\174\307\352\257\166\005\026\335\147\047\302\176\034\007
+\042\041\363\100\012\033\064\007\104\023\302\204\152\216\337\031
+\132\277\177\353\035\342\032\070\321\134\257\107\222\153\200\265
+\060\245\311\215\330\253\061\201\037\337\302\146\067\323\223\251
+\205\206\171\145\322
+END
+
+# Trust for Certificate "SwissSign Platinum CA - G2"
+# Issuer: CN=SwissSign Platinum CA - G2,O=SwissSign AG,C=CH
+# Serial Number:4e:b2:00:67:0c:03:5d:4f
+# Subject: CN=SwissSign Platinum CA - G2,O=SwissSign AG,C=CH
+# Not Valid Before: Wed Oct 25 08:36:00 2006
+# Not Valid After : Sat Oct 25 08:36:00 2036
+# Fingerprint (MD5): C9:98:27:77:28:1E:3D:0E:15:3C:84:00:B8:85:03:E6
+# Fingerprint (SHA1): 56:E0:FA:C0:3B:8F:18:23:55:18:E5:D3:11:CA:E8:C2:43:31:AB:66
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SwissSign Platinum CA - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\126\340\372\300\073\217\030\043\125\030\345\323\021\312\350\302
+\103\061\253\146
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\311\230\047\167\050\036\075\016\025\074\204\000\270\205\003\346
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\111\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\043\060\041\006\003\125\004\003\023
+\032\123\167\151\163\163\123\151\147\156\040\120\154\141\164\151
+\156\165\155\040\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\116\262\000\147\014\003\135\117
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "SwissSign Gold CA - G2"
+#
+# Issuer: CN=SwissSign Gold CA - G2,O=SwissSign AG,C=CH
+# Serial Number:00:bb:40:1c:43:f5:5e:4f:b0
+# Subject: CN=SwissSign Gold CA - G2,O=SwissSign AG,C=CH
+# Not Valid Before: Wed Oct 25 08:30:35 2006
+# Not Valid After : Sat Oct 25 08:30:35 2036
+# Fingerprint (MD5): 24:77:D9:A8:91:D1:3B:FA:88:2D:C2:FF:F8:CD:33:93
+# Fingerprint (SHA1): D8:C5:38:8A:B7:30:1B:1B:6E:D4:7A:E6:45:25:3A:6F:9F:1A:27:61
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SwissSign Gold CA - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\037\060\035\006\003\125\004\003\023
+\026\123\167\151\163\163\123\151\147\156\040\107\157\154\144\040
+\103\101\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\037\060\035\006\003\125\004\003\023
+\026\123\167\151\163\163\123\151\147\156\040\107\157\154\144\040
+\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\273\100\034\103\365\136\117\260
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\272\060\202\003\242\240\003\002\001\002\002\011\000
+\273\100\034\103\365\136\117\260\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\060\105\061\013\060\011\006\003\125
+\004\006\023\002\103\110\061\025\060\023\006\003\125\004\012\023
+\014\123\167\151\163\163\123\151\147\156\040\101\107\061\037\060
+\035\006\003\125\004\003\023\026\123\167\151\163\163\123\151\147
+\156\040\107\157\154\144\040\103\101\040\055\040\107\062\060\036
+\027\015\060\066\061\060\062\065\060\070\063\060\063\065\132\027
+\015\063\066\061\060\062\065\060\070\063\060\063\065\132\060\105
+\061\013\060\011\006\003\125\004\006\023\002\103\110\061\025\060
+\023\006\003\125\004\012\023\014\123\167\151\163\163\123\151\147
+\156\040\101\107\061\037\060\035\006\003\125\004\003\023\026\123
+\167\151\163\163\123\151\147\156\040\107\157\154\144\040\103\101
+\040\055\040\107\062\060\202\002\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002
+\012\002\202\002\001\000\257\344\356\176\213\044\016\022\156\251
+\120\055\026\104\073\222\222\134\312\270\135\204\222\102\023\052
+\274\145\127\202\100\076\127\044\315\120\213\045\052\267\157\374
+\357\242\320\300\037\002\044\112\023\226\217\043\023\346\050\130
+\000\243\107\307\006\247\204\043\053\273\275\226\053\177\125\314
+\213\301\127\037\016\142\145\017\335\075\126\212\163\332\256\176
+\155\272\201\034\176\102\214\040\065\331\103\115\204\372\204\333
+\122\054\363\016\047\167\013\153\277\021\057\162\170\237\056\330
+\076\346\030\067\132\052\162\371\332\142\220\222\225\312\037\234
+\351\263\074\053\313\363\001\023\277\132\317\301\265\012\140\275
+\335\265\231\144\123\270\240\226\263\157\342\046\167\221\214\340
+\142\020\002\237\064\017\244\325\222\063\121\336\276\215\272\204
+\172\140\074\152\333\237\053\354\336\336\001\077\156\115\345\120
+\206\313\264\257\355\104\100\305\312\132\214\332\322\053\174\250
+\356\276\246\345\012\252\016\245\337\005\122\267\125\307\042\135
+\062\152\227\227\143\023\333\311\333\171\066\173\205\072\112\305
+\122\211\371\044\347\235\167\251\202\377\125\034\245\161\151\053
+\321\002\044\362\263\046\324\153\332\004\125\345\301\012\307\155
+\060\067\220\052\344\236\024\063\136\026\027\125\305\133\265\313
+\064\211\222\361\235\046\217\241\007\324\306\262\170\120\333\014
+\014\013\174\013\214\101\327\271\351\335\214\210\367\243\115\262
+\062\314\330\027\332\315\267\316\146\235\324\375\136\377\275\227
+\076\051\165\347\176\247\142\130\257\045\064\245\101\307\075\274
+\015\120\312\003\003\017\010\132\037\225\163\170\142\277\257\162
+\024\151\016\245\345\003\016\170\216\046\050\102\360\007\013\142
+\040\020\147\071\106\372\251\003\314\004\070\172\146\357\040\203
+\265\214\112\126\216\221\000\374\216\134\202\336\210\240\303\342
+\150\156\175\215\357\074\335\145\364\135\254\121\357\044\200\256
+\252\126\227\157\371\255\175\332\141\077\230\167\074\245\221\266
+\034\214\046\332\145\242\011\155\301\342\124\343\271\312\114\114
+\200\217\167\173\140\232\036\337\266\362\110\036\016\272\116\124
+\155\230\340\341\242\032\242\167\120\317\304\143\222\354\107\031
+\235\353\346\153\316\301\002\003\001\000\001\243\201\254\060\201
+\251\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001
+\001\377\060\035\006\003\125\035\016\004\026\004\024\133\045\173
+\226\244\145\121\176\270\071\363\300\170\146\136\350\072\347\360
+\356\060\037\006\003\125\035\043\004\030\060\026\200\024\133\045
+\173\226\244\145\121\176\270\071\363\300\170\146\136\350\072\347
+\360\356\060\106\006\003\125\035\040\004\077\060\075\060\073\006
+\011\140\205\164\001\131\001\002\001\001\060\056\060\054\006\010
+\053\006\001\005\005\007\002\001\026\040\150\164\164\160\072\057
+\057\162\145\160\157\163\151\164\157\162\171\056\163\167\151\163
+\163\163\151\147\156\056\143\157\155\057\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\002\001\000\047\272
+\343\224\174\361\256\300\336\027\346\345\330\325\365\124\260\203
+\364\273\315\136\005\173\117\237\165\146\257\074\350\126\176\374
+\162\170\070\003\331\053\142\033\000\271\370\351\140\315\314\316
+\121\212\307\120\061\156\341\112\176\030\057\151\131\266\075\144
+\201\053\343\203\204\346\042\207\216\175\340\356\002\231\141\270
+\036\364\270\053\210\022\026\204\302\061\223\070\226\061\246\271
+\073\123\077\303\044\223\126\133\151\222\354\305\301\273\070\000
+\343\354\027\251\270\334\307\174\001\203\237\062\107\272\122\042
+\064\035\062\172\011\126\247\174\045\066\251\075\113\332\300\202
+\157\012\273\022\310\207\113\047\021\371\036\055\307\223\077\236
+\333\137\046\153\122\331\056\212\361\024\306\104\215\025\251\267
+\277\275\336\246\032\356\256\055\373\110\167\027\376\273\354\257
+\030\365\052\121\360\071\204\227\225\154\156\033\303\053\304\164
+\140\171\045\260\012\047\337\337\136\322\071\317\105\175\102\113
+\337\263\054\036\305\306\135\312\125\072\240\234\151\232\217\332
+\357\262\260\074\237\207\154\022\053\145\160\025\122\061\032\044
+\317\157\061\043\120\037\214\117\217\043\303\164\101\143\034\125
+\250\024\335\076\340\121\120\317\361\033\060\126\016\222\260\202
+\205\330\203\313\042\144\274\055\270\045\325\124\242\270\006\352
+\255\222\244\044\240\301\206\265\112\023\152\107\317\056\013\126
+\225\124\313\316\232\333\152\264\246\262\333\101\010\206\047\167
+\367\152\240\102\154\013\070\316\327\165\120\062\222\302\337\053
+\060\042\110\320\325\101\070\045\135\244\351\135\237\306\224\165
+\320\105\375\060\227\103\217\220\253\012\307\206\163\140\112\151
+\055\336\245\170\327\006\332\152\236\113\076\167\072\040\023\042
+\001\320\277\150\236\143\140\153\065\115\013\155\272\241\075\300
+\223\340\177\043\263\125\255\162\045\116\106\371\322\026\357\260
+\144\301\001\236\351\312\240\152\230\016\317\330\140\362\057\111
+\270\344\102\341\070\065\026\364\310\156\117\367\201\126\350\272
+\243\276\043\257\256\375\157\003\340\002\073\060\166\372\033\155
+\101\317\001\261\351\270\311\146\364\333\046\363\072\244\164\362
+\111\044\133\311\260\320\127\301\372\076\172\341\227\311
+END
+
+# Trust for Certificate "SwissSign Gold CA - G2"
+# Issuer: CN=SwissSign Gold CA - G2,O=SwissSign AG,C=CH
+# Serial Number:00:bb:40:1c:43:f5:5e:4f:b0
+# Subject: CN=SwissSign Gold CA - G2,O=SwissSign AG,C=CH
+# Not Valid Before: Wed Oct 25 08:30:35 2006
+# Not Valid After : Sat Oct 25 08:30:35 2036
+# Fingerprint (MD5): 24:77:D9:A8:91:D1:3B:FA:88:2D:C2:FF:F8:CD:33:93
+# Fingerprint (SHA1): D8:C5:38:8A:B7:30:1B:1B:6E:D4:7A:E6:45:25:3A:6F:9F:1A:27:61
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SwissSign Gold CA - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\330\305\070\212\267\060\033\033\156\324\172\346\105\045\072\157
+\237\032\047\141
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\044\167\331\250\221\321\073\372\210\055\302\377\370\315\063\223
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\037\060\035\006\003\125\004\003\023
+\026\123\167\151\163\163\123\151\147\156\040\107\157\154\144\040
+\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\273\100\034\103\365\136\117\260
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "SwissSign Silver CA - G2"
+#
+# Issuer: CN=SwissSign Silver CA - G2,O=SwissSign AG,C=CH
+# Serial Number:4f:1b:d4:2f:54:bb:2f:4b
+# Subject: CN=SwissSign Silver CA - G2,O=SwissSign AG,C=CH
+# Not Valid Before: Wed Oct 25 08:32:46 2006
+# Not Valid After : Sat Oct 25 08:32:46 2036
+# Fingerprint (MD5): E0:06:A1:C9:7D:CF:C9:FC:0D:C0:56:75:96:D8:62:13
+# Fingerprint (SHA1): 9B:AA:E5:9F:56:EE:21:CB:43:5A:BE:25:93:DF:A7:F0:40:D1:1D:CB
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SwissSign Silver CA - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\041\060\037\006\003\125\004\003\023
+\030\123\167\151\163\163\123\151\147\156\040\123\151\154\166\145
+\162\040\103\101\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\041\060\037\006\003\125\004\003\023
+\030\123\167\151\163\163\123\151\147\156\040\123\151\154\166\145
+\162\040\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\117\033\324\057\124\273\057\113
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\275\060\202\003\245\240\003\002\001\002\002\010\117
+\033\324\057\124\273\057\113\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\060\107\061\013\060\011\006\003\125\004
+\006\023\002\103\110\061\025\060\023\006\003\125\004\012\023\014
+\123\167\151\163\163\123\151\147\156\040\101\107\061\041\060\037
+\006\003\125\004\003\023\030\123\167\151\163\163\123\151\147\156
+\040\123\151\154\166\145\162\040\103\101\040\055\040\107\062\060
+\036\027\015\060\066\061\060\062\065\060\070\063\062\064\066\132
+\027\015\063\066\061\060\062\065\060\070\063\062\064\066\132\060
+\107\061\013\060\011\006\003\125\004\006\023\002\103\110\061\025
+\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123\151
+\147\156\040\101\107\061\041\060\037\006\003\125\004\003\023\030
+\123\167\151\163\163\123\151\147\156\040\123\151\154\166\145\162
+\040\103\101\040\055\040\107\062\060\202\002\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\002\017\000
+\060\202\002\012\002\202\002\001\000\304\361\207\177\323\170\061
+\367\070\311\370\303\231\103\274\307\367\274\067\347\116\161\272
+\113\217\245\163\035\134\156\230\256\003\127\256\070\067\103\057
+\027\075\037\310\316\150\020\301\170\256\031\003\053\020\372\054
+\171\203\366\350\271\150\271\125\362\004\104\247\071\371\374\004
+\213\036\361\242\115\047\371\141\173\272\267\345\242\023\266\353
+\141\076\320\154\321\346\373\372\136\355\035\264\236\240\065\133
+\241\222\313\360\111\222\376\205\012\005\076\346\331\013\342\117
+\273\334\225\067\374\221\351\062\065\042\321\037\072\116\047\205
+\235\260\025\224\062\332\141\015\107\115\140\102\256\222\107\350
+\203\132\120\130\351\212\213\271\135\241\334\335\231\112\037\066
+\147\273\110\344\203\266\067\353\110\072\257\017\147\217\027\007
+\350\004\312\357\152\061\207\324\300\266\371\224\161\173\147\144
+\270\266\221\112\102\173\145\056\060\152\014\365\220\356\225\346
+\362\315\202\354\331\241\112\354\366\262\113\345\105\205\346\155
+\170\223\004\056\234\202\155\066\251\304\061\144\037\206\203\013
+\052\364\065\012\170\311\125\317\101\260\107\351\060\237\231\276
+\141\250\006\204\271\050\172\137\070\331\033\251\070\260\203\177
+\163\301\303\073\110\052\202\017\041\233\270\314\250\065\303\204
+\033\203\263\076\276\244\225\151\001\072\211\000\170\004\331\311
+\364\231\031\253\126\176\133\213\206\071\025\221\244\020\054\011
+\062\200\140\263\223\300\052\266\030\013\235\176\215\111\362\020
+\112\177\371\325\106\057\031\222\243\231\247\046\254\273\214\074
+\346\016\274\107\007\334\163\121\361\160\144\057\010\371\264\107
+\035\060\154\104\352\051\067\205\222\150\146\274\203\070\376\173
+\071\056\323\120\360\037\373\136\140\266\251\246\372\047\101\361
+\233\030\162\362\365\204\164\112\311\147\304\124\256\110\144\337
+\214\321\156\260\035\341\007\217\010\036\231\234\161\351\114\330
+\245\367\107\022\037\164\321\121\236\206\363\302\242\043\100\013
+\163\333\113\246\347\163\006\214\301\240\351\301\131\254\106\372
+\346\057\370\317\161\234\106\155\271\304\025\215\070\171\003\105
+\110\357\304\135\327\010\356\207\071\042\206\262\015\017\130\103
+\367\161\251\110\056\375\352\326\037\002\003\001\000\001\243\201
+\254\060\201\251\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024
+\027\240\315\301\344\101\266\072\133\073\313\105\235\275\034\302
+\230\372\206\130\060\037\006\003\125\035\043\004\030\060\026\200
+\024\027\240\315\301\344\101\266\072\133\073\313\105\235\275\034
+\302\230\372\206\130\060\106\006\003\125\035\040\004\077\060\075
+\060\073\006\011\140\205\164\001\131\001\003\001\001\060\056\060
+\054\006\010\053\006\001\005\005\007\002\001\026\040\150\164\164
+\160\072\057\057\162\145\160\157\163\151\164\157\162\171\056\163
+\167\151\163\163\163\151\147\156\056\143\157\155\057\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\002\001
+\000\163\306\201\340\047\322\055\017\340\225\060\342\232\101\177
+\120\054\137\137\142\141\251\206\152\151\030\014\164\111\326\135
+\204\352\101\122\030\157\130\255\120\126\040\152\306\275\050\151
+\130\221\334\221\021\065\251\072\035\274\032\245\140\236\330\037
+\177\105\221\151\331\176\273\170\162\301\006\017\052\316\217\205
+\160\141\254\240\315\013\270\071\051\126\204\062\116\206\273\075
+\304\052\331\327\037\162\356\376\121\241\042\101\261\161\002\143
+\032\202\260\142\253\136\127\022\037\337\313\335\165\240\300\135
+\171\220\214\033\340\120\346\336\061\376\230\173\160\137\245\220
+\330\255\370\002\266\157\323\140\335\100\113\042\305\075\255\072
+\172\237\032\032\107\221\171\063\272\202\334\062\151\003\226\156
+\037\113\360\161\376\343\147\162\240\261\277\134\213\344\372\231
+\042\307\204\271\033\215\043\227\077\355\045\340\317\145\273\365
+\141\004\357\335\036\262\132\101\042\132\241\237\135\054\350\133
+\311\155\251\014\014\170\252\140\306\126\217\001\132\014\150\274
+\151\031\171\304\037\176\227\005\277\305\351\044\121\136\324\325
+\113\123\355\331\043\132\066\003\145\243\301\003\255\101\060\363
+\106\033\205\220\257\145\265\325\261\344\026\133\170\165\035\227
+\172\155\131\251\052\217\173\336\303\207\211\020\231\111\163\170
+\310\075\275\121\065\164\052\325\361\176\151\033\052\273\073\275
+\045\270\232\132\075\162\141\220\146\207\356\014\326\115\324\021
+\164\013\152\376\013\003\374\243\125\127\211\376\112\313\256\133
+\027\005\310\362\215\043\061\123\070\322\055\152\077\202\271\215
+\010\152\367\136\101\164\156\303\021\176\007\254\051\140\221\077
+\070\312\127\020\015\275\060\057\307\245\346\101\240\332\256\005
+\207\232\240\244\145\154\114\011\014\211\272\270\323\271\300\223
+\212\060\372\215\345\232\153\025\001\116\147\252\332\142\126\076
+\204\010\146\322\304\066\175\247\076\020\374\210\340\324\200\345
+\000\275\252\363\116\006\243\172\152\371\142\162\343\011\117\353
+\233\016\001\043\361\237\273\174\334\334\154\021\227\045\262\362
+\264\143\024\322\006\052\147\214\203\365\316\352\007\330\232\152
+\036\354\344\012\273\052\114\353\011\140\071\316\312\142\330\056
+\156
+END
+
+# Trust for Certificate "SwissSign Silver CA - G2"
+# Issuer: CN=SwissSign Silver CA - G2,O=SwissSign AG,C=CH
+# Serial Number:4f:1b:d4:2f:54:bb:2f:4b
+# Subject: CN=SwissSign Silver CA - G2,O=SwissSign AG,C=CH
+# Not Valid Before: Wed Oct 25 08:32:46 2006
+# Not Valid After : Sat Oct 25 08:32:46 2036
+# Fingerprint (MD5): E0:06:A1:C9:7D:CF:C9:FC:0D:C0:56:75:96:D8:62:13
+# Fingerprint (SHA1): 9B:AA:E5:9F:56:EE:21:CB:43:5A:BE:25:93:DF:A7:F0:40:D1:1D:CB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SwissSign Silver CA - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\233\252\345\237\126\356\041\313\103\132\276\045\223\337\247\360
+\100\321\035\313
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\340\006\241\311\175\317\311\374\015\300\126\165\226\330\142\023
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\103\110\061
+\025\060\023\006\003\125\004\012\023\014\123\167\151\163\163\123
+\151\147\156\040\101\107\061\041\060\037\006\003\125\004\003\023
+\030\123\167\151\163\163\123\151\147\156\040\123\151\154\166\145
+\162\040\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\117\033\324\057\124\273\057\113
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GeoTrust Primary Certification Authority"
+#
+# Issuer: CN=GeoTrust Primary Certification Authority,O=GeoTrust Inc.,C=US
+# Serial Number:18:ac:b5:6a:fd:69:b6:15:3a:63:6c:af:da:fa:c4:a1
+# Subject: CN=GeoTrust Primary Certification Authority,O=GeoTrust Inc.,C=US
+# Not Valid Before: Mon Nov 27 00:00:00 2006
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): 02:26:C3:01:5E:08:30:37:43:A9:D0:7D:CF:37:E6:BF
+# Fingerprint (SHA1): 32:3C:11:8E:1B:F7:B8:B6:52:54:E2:E2:10:0D:D6:02:90:37:F0:96
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Primary Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\061\060\057\006\003\125\004\003
+\023\050\107\145\157\124\162\165\163\164\040\120\162\151\155\141
+\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\061\060\057\006\003\125\004\003
+\023\050\107\145\157\124\162\165\163\164\040\120\162\151\155\141
+\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\030\254\265\152\375\151\266\025\072\143\154\257\332\372
+\304\241
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\174\060\202\002\144\240\003\002\001\002\002\020\030
+\254\265\152\375\151\266\025\072\143\154\257\332\372\304\241\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\130
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\026\060
+\024\006\003\125\004\012\023\015\107\145\157\124\162\165\163\164
+\040\111\156\143\056\061\061\060\057\006\003\125\004\003\023\050
+\107\145\157\124\162\165\163\164\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\060\036\027\015\060\066\061\061
+\062\067\060\060\060\060\060\060\132\027\015\063\066\060\067\061
+\066\062\063\065\071\065\071\132\060\130\061\013\060\011\006\003
+\125\004\006\023\002\125\123\061\026\060\024\006\003\125\004\012
+\023\015\107\145\157\124\162\165\163\164\040\111\156\143\056\061
+\061\060\057\006\003\125\004\003\023\050\107\145\157\124\162\165
+\163\164\040\120\162\151\155\141\162\171\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\276\270\025\173\377\324\174\175\147\255\203\144\173
+\310\102\123\055\337\366\204\010\040\141\326\001\131\152\234\104
+\021\257\357\166\375\225\176\316\141\060\273\172\203\137\002\275
+\001\146\312\356\025\215\157\241\060\234\275\241\205\236\224\072
+\363\126\210\000\061\317\330\356\152\226\002\331\355\003\214\373
+\165\155\347\352\270\125\026\005\026\232\364\340\136\261\210\300
+\144\205\134\025\115\210\307\267\272\340\165\351\255\005\075\235
+\307\211\110\340\273\050\310\003\341\060\223\144\136\122\300\131
+\160\042\065\127\210\212\361\225\012\203\327\274\061\163\001\064
+\355\357\106\161\340\153\002\250\065\162\153\227\233\146\340\313
+\034\171\137\330\032\004\150\036\107\002\346\235\140\342\066\227
+\001\337\316\065\222\337\276\147\307\155\167\131\073\217\235\326
+\220\025\224\274\102\064\020\301\071\371\261\047\076\176\326\212
+\165\305\262\257\226\323\242\336\233\344\230\276\175\341\351\201
+\255\266\157\374\327\016\332\340\064\260\015\032\167\347\343\010
+\230\357\130\372\234\204\267\066\257\302\337\254\322\364\020\006
+\160\161\065\002\003\001\000\001\243\102\060\100\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\035\006
+\003\125\035\016\004\026\004\024\054\325\120\101\227\025\213\360
+\217\066\141\133\112\373\153\331\231\311\063\222\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000
+\132\160\177\054\335\267\064\117\365\206\121\251\046\276\113\270
+\252\361\161\015\334\141\307\240\352\064\036\172\167\017\004\065
+\350\047\217\154\220\277\221\026\044\106\076\112\116\316\053\026
+\325\013\122\035\374\037\147\242\002\105\061\117\316\363\372\003
+\247\171\235\123\152\331\332\143\072\370\200\327\323\231\341\245
+\341\276\324\125\161\230\065\072\276\223\352\256\255\102\262\220
+\157\340\374\041\115\065\143\063\211\111\326\233\116\312\307\347
+\116\011\000\367\332\307\357\231\142\231\167\266\225\042\136\212
+\240\253\364\270\170\230\312\070\031\231\311\162\236\170\315\113
+\254\257\031\240\163\022\055\374\302\101\272\201\221\332\026\132
+\061\267\371\264\161\200\022\110\231\162\163\132\131\123\301\143
+\122\063\355\247\311\322\071\002\160\372\340\261\102\146\051\252
+\233\121\355\060\124\042\024\137\331\253\035\301\344\224\360\370
+\365\053\367\352\312\170\106\326\270\221\375\246\015\053\032\024
+\001\076\200\360\102\240\225\007\136\155\315\314\113\244\105\215
+\253\022\350\263\336\132\345\240\174\350\017\042\035\132\351\131
+END
+
+# Trust for Certificate "GeoTrust Primary Certification Authority"
+# Issuer: CN=GeoTrust Primary Certification Authority,O=GeoTrust Inc.,C=US
+# Serial Number:18:ac:b5:6a:fd:69:b6:15:3a:63:6c:af:da:fa:c4:a1
+# Subject: CN=GeoTrust Primary Certification Authority,O=GeoTrust Inc.,C=US
+# Not Valid Before: Mon Nov 27 00:00:00 2006
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): 02:26:C3:01:5E:08:30:37:43:A9:D0:7D:CF:37:E6:BF
+# Fingerprint (SHA1): 32:3C:11:8E:1B:F7:B8:B6:52:54:E2:E2:10:0D:D6:02:90:37:F0:96
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Primary Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\062\074\021\216\033\367\270\266\122\124\342\342\020\015\326\002
+\220\067\360\226
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\002\046\303\001\136\010\060\067\103\251\320\175\317\067\346\277
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165
+\163\164\040\111\156\143\056\061\061\060\057\006\003\125\004\003
+\023\050\107\145\157\124\162\165\163\164\040\120\162\151\155\141
+\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\030\254\265\152\375\151\266\025\072\143\154\257\332\372
+\304\241
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "thawte Primary Root CA"
+#
+# Issuer: CN=thawte Primary Root CA,OU="(c) 2006 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Serial Number:34:4e:d5:57:20:d5:ed:ec:49:f4:2f:ce:37:db:2b:6d
+# Subject: CN=thawte Primary Root CA,OU="(c) 2006 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Not Valid Before: Fri Nov 17 00:00:00 2006
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): 8C:CA:DC:0B:22:CE:F5:BE:72:AC:41:1A:11:A8:D8:12
+# Fingerprint (SHA1): 91:C6:D6:EE:3E:8A:C8:63:84:E5:48:C2:99:29:5C:75:6C:81:7B:81
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "thawte Primary Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\251\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013
+\023\037\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\123\145\162\166\151\143\145\163\040\104\151\166\151\163\151\157
+\156\061\070\060\066\006\003\125\004\013\023\057\050\143\051\040
+\062\060\060\066\040\164\150\141\167\164\145\054\040\111\156\143
+\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151\172
+\145\144\040\165\163\145\040\157\156\154\171\061\037\060\035\006
+\003\125\004\003\023\026\164\150\141\167\164\145\040\120\162\151
+\155\141\162\171\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\251\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013
+\023\037\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\123\145\162\166\151\143\145\163\040\104\151\166\151\163\151\157
+\156\061\070\060\066\006\003\125\004\013\023\057\050\143\051\040
+\062\060\060\066\040\164\150\141\167\164\145\054\040\111\156\143
+\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151\172
+\145\144\040\165\163\145\040\157\156\154\171\061\037\060\035\006
+\003\125\004\003\023\026\164\150\141\167\164\145\040\120\162\151
+\155\141\162\171\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\064\116\325\127\040\325\355\354\111\364\057\316\067\333
+\053\155
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\040\060\202\003\010\240\003\002\001\002\002\020\064
+\116\325\127\040\325\355\354\111\364\057\316\067\333\053\155\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\251\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025
+\060\023\006\003\125\004\012\023\014\164\150\141\167\164\145\054
+\040\111\156\143\056\061\050\060\046\006\003\125\004\013\023\037
+\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145
+\162\166\151\143\145\163\040\104\151\166\151\163\151\157\156\061
+\070\060\066\006\003\125\004\013\023\057\050\143\051\040\062\060
+\060\066\040\164\150\141\167\164\145\054\040\111\156\143\056\040
+\055\040\106\157\162\040\141\165\164\150\157\162\151\172\145\144
+\040\165\163\145\040\157\156\154\171\061\037\060\035\006\003\125
+\004\003\023\026\164\150\141\167\164\145\040\120\162\151\155\141
+\162\171\040\122\157\157\164\040\103\101\060\036\027\015\060\066
+\061\061\061\067\060\060\060\060\060\060\132\027\015\063\066\060
+\067\061\066\062\063\065\071\065\071\132\060\201\251\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\025\060\023\006\003
+\125\004\012\023\014\164\150\141\167\164\145\054\040\111\156\143
+\056\061\050\060\046\006\003\125\004\013\023\037\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\123\145\162\166\151\143
+\145\163\040\104\151\166\151\163\151\157\156\061\070\060\066\006
+\003\125\004\013\023\057\050\143\051\040\062\060\060\066\040\164
+\150\141\167\164\145\054\040\111\156\143\056\040\055\040\106\157
+\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145
+\040\157\156\154\171\061\037\060\035\006\003\125\004\003\023\026
+\164\150\141\167\164\145\040\120\162\151\155\141\162\171\040\122
+\157\157\164\040\103\101\060\202\001\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202
+\001\012\002\202\001\001\000\254\240\360\373\200\131\324\234\307
+\244\317\235\241\131\163\011\020\105\014\015\054\156\150\361\154
+\133\110\150\111\131\067\374\013\063\031\302\167\177\314\020\055
+\225\064\034\346\353\115\011\247\034\322\270\311\227\066\002\267
+\211\324\044\137\006\300\314\104\224\224\215\002\142\157\353\132
+\335\021\215\050\232\134\204\220\020\172\015\275\164\146\057\152
+\070\240\342\325\124\104\353\035\007\237\007\272\157\356\351\375
+\116\013\051\365\076\204\240\001\361\234\253\370\034\176\211\244
+\350\241\330\161\145\015\243\121\173\356\274\322\042\140\015\271
+\133\235\337\272\374\121\133\013\257\230\262\351\056\351\004\350
+\142\207\336\053\310\327\116\301\114\144\036\335\317\207\130\272
+\112\117\312\150\007\035\034\235\112\306\325\057\221\314\174\161
+\162\034\305\300\147\353\062\375\311\222\134\224\332\205\300\233
+\277\123\175\053\011\364\214\235\221\037\227\152\122\313\336\011
+\066\244\167\330\173\207\120\104\325\076\156\051\151\373\071\111
+\046\036\011\245\200\173\100\055\353\350\047\205\311\376\141\375
+\176\346\174\227\035\325\235\002\003\001\000\001\243\102\060\100
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\035\006\003\125\035\016\004\026\004\024\173\133\105\317
+\257\316\313\172\375\061\222\032\152\266\363\106\353\127\110\120
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\171\021\300\113\263\221\266\374\360\351\147\324
+\015\156\105\276\125\350\223\322\316\003\077\355\332\045\260\035
+\127\313\036\072\166\240\114\354\120\166\350\144\162\014\244\251
+\361\270\213\326\326\207\204\273\062\345\101\021\300\167\331\263
+\140\235\353\033\325\321\156\104\104\251\246\001\354\125\142\035
+\167\270\134\216\110\111\174\234\073\127\021\254\255\163\067\216
+\057\170\134\220\150\107\331\140\140\346\374\007\075\042\040\027
+\304\367\026\351\304\330\162\371\310\163\174\337\026\057\025\251
+\076\375\152\047\266\241\353\132\272\230\037\325\343\115\144\012
+\235\023\310\141\272\365\071\034\207\272\270\275\173\042\177\366
+\376\254\100\171\345\254\020\157\075\217\033\171\166\213\304\067
+\263\041\030\204\345\066\000\353\143\040\231\271\351\376\063\004
+\273\101\310\301\002\371\104\143\040\236\201\316\102\323\326\077
+\054\166\323\143\234\131\335\217\246\341\016\240\056\101\367\056
+\225\107\317\274\375\063\363\366\013\141\176\176\221\053\201\107
+\302\047\060\356\247\020\135\067\217\134\071\053\344\004\360\173
+\215\126\214\150
+END
+
+# Trust for Certificate "thawte Primary Root CA"
+# Issuer: CN=thawte Primary Root CA,OU="(c) 2006 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Serial Number:34:4e:d5:57:20:d5:ed:ec:49:f4:2f:ce:37:db:2b:6d
+# Subject: CN=thawte Primary Root CA,OU="(c) 2006 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Not Valid Before: Fri Nov 17 00:00:00 2006
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): 8C:CA:DC:0B:22:CE:F5:BE:72:AC:41:1A:11:A8:D8:12
+# Fingerprint (SHA1): 91:C6:D6:EE:3E:8A:C8:63:84:E5:48:C2:99:29:5C:75:6C:81:7B:81
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "thawte Primary Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\221\306\326\356\076\212\310\143\204\345\110\302\231\051\134\165
+\154\201\173\201
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\214\312\334\013\042\316\365\276\162\254\101\032\021\250\330\022
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\251\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013
+\023\037\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\123\145\162\166\151\143\145\163\040\104\151\166\151\163\151\157
+\156\061\070\060\066\006\003\125\004\013\023\057\050\143\051\040
+\062\060\060\066\040\164\150\141\167\164\145\054\040\111\156\143
+\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151\172
+\145\144\040\165\163\145\040\157\156\154\171\061\037\060\035\006
+\003\125\004\003\023\026\164\150\141\167\164\145\040\120\162\151
+\155\141\162\171\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\064\116\325\127\040\325\355\354\111\364\057\316\067\333
+\053\155
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "VeriSign Class 3 Public Primary Certification Authority - G5"
+#
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:18:da:d1:9e:26:7d:e8:bb:4a:21:58:cd:cc:6b:3b:4a
+# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Wed Nov 08 00:00:00 2006
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): CB:17:E4:31:67:3E:E2:09:FE:45:57:93:F3:0A:FA:1C
+# Fingerprint (SHA1): 4E:B6:D5:78:49:9B:1C:CF:5F:58:1E:AD:56:BE:3D:9B:67:44:A5:E5
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign Class 3 Public Primary Certification Authority - G5"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\066\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\065
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\066\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\030\332\321\236\046\175\350\273\112\041\130\315\314\153
+\073\112
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\323\060\202\003\273\240\003\002\001\002\002\020\030
+\332\321\236\046\175\350\273\112\041\130\315\314\153\073\112\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\312\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027
+\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\061\037\060\035\006\003\125\004\013
+\023\026\126\145\162\151\123\151\147\156\040\124\162\165\163\164
+\040\116\145\164\167\157\162\153\061\072\060\070\006\003\125\004
+\013\023\061\050\143\051\040\062\060\060\066\040\126\145\162\151
+\123\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162
+\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040
+\157\156\154\171\061\105\060\103\006\003\125\004\003\023\074\126
+\145\162\151\123\151\147\156\040\103\154\141\163\163\040\063\040
+\120\165\142\154\151\143\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\065\060\036\027\015\060
+\066\061\061\060\070\060\060\060\060\060\060\132\027\015\063\066
+\060\067\061\066\062\063\065\071\065\071\132\060\201\312\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\027\060\025\006
+\003\125\004\012\023\016\126\145\162\151\123\151\147\156\054\040
+\111\156\143\056\061\037\060\035\006\003\125\004\013\023\026\126
+\145\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145
+\164\167\157\162\153\061\072\060\070\006\003\125\004\013\023\061
+\050\143\051\040\062\060\060\066\040\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165
+\164\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154
+\171\061\105\060\103\006\003\125\004\003\023\074\126\145\162\151
+\123\151\147\156\040\103\154\141\163\163\040\063\040\120\165\142
+\154\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\040\055\040\107\065\060\202\001\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000
+\060\202\001\012\002\202\001\001\000\257\044\010\010\051\172\065
+\236\140\014\252\347\113\073\116\334\174\274\074\105\034\273\053
+\340\376\051\002\371\127\010\243\144\205\025\047\365\361\255\310
+\061\211\135\042\350\052\252\246\102\263\217\370\271\125\267\261
+\267\113\263\376\217\176\007\127\354\357\103\333\146\142\025\141
+\317\140\015\244\330\336\370\340\303\142\010\075\124\023\353\111
+\312\131\124\205\046\345\053\217\033\237\353\365\241\221\302\063
+\111\330\103\143\152\122\113\322\217\350\160\121\115\321\211\151
+\173\307\160\366\263\334\022\164\333\173\135\113\126\323\226\277
+\025\167\241\260\364\242\045\362\257\034\222\147\030\345\364\006
+\004\357\220\271\344\000\344\335\072\265\031\377\002\272\364\074
+\356\340\213\353\067\213\354\364\327\254\362\366\360\075\257\335
+\165\221\063\031\035\034\100\313\164\044\031\041\223\331\024\376
+\254\052\122\307\217\325\004\111\344\215\143\107\210\074\151\203
+\313\376\107\275\053\176\117\305\225\256\016\235\324\321\103\300
+\147\163\343\024\010\176\345\077\237\163\270\063\012\317\135\077
+\064\207\226\212\356\123\350\045\025\002\003\001\000\001\243\201
+\262\060\201\257\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004
+\004\003\002\001\006\060\155\006\010\053\006\001\005\005\007\001
+\014\004\141\060\137\241\135\240\133\060\131\060\127\060\125\026
+\011\151\155\141\147\145\057\147\151\146\060\041\060\037\060\007
+\006\005\053\016\003\002\032\004\024\217\345\323\032\206\254\215
+\216\153\303\317\200\152\324\110\030\054\173\031\056\060\045\026
+\043\150\164\164\160\072\057\057\154\157\147\157\056\166\145\162
+\151\163\151\147\156\056\143\157\155\057\166\163\154\157\147\157
+\056\147\151\146\060\035\006\003\125\035\016\004\026\004\024\177
+\323\145\247\302\335\354\273\360\060\011\363\103\071\372\002\257
+\063\061\063\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\202\001\001\000\223\044\112\060\137\142\317\330\032
+\230\057\075\352\334\231\055\275\167\366\245\171\042\070\354\304
+\247\240\170\022\255\142\016\105\160\144\305\347\227\146\055\230
+\011\176\137\257\326\314\050\145\362\001\252\010\032\107\336\371
+\371\174\222\132\010\151\040\015\331\076\155\156\074\015\156\330
+\346\006\221\100\030\271\370\301\355\337\333\101\252\340\226\040
+\311\315\144\025\070\201\311\224\356\242\204\051\013\023\157\216
+\333\014\335\045\002\333\244\213\031\104\322\101\172\005\151\112
+\130\117\140\312\176\202\152\013\002\252\045\027\071\265\333\177
+\347\204\145\052\225\212\275\206\336\136\201\026\203\055\020\314
+\336\375\250\202\052\155\050\037\015\013\304\345\347\032\046\031
+\341\364\021\157\020\265\225\374\347\102\005\062\333\316\235\121
+\136\050\266\236\205\323\133\357\245\175\105\100\162\216\267\016
+\153\016\006\373\063\065\110\161\270\235\047\213\304\145\137\015
+\206\166\234\104\172\366\225\134\366\135\062\010\063\244\124\266
+\030\077\150\134\362\102\112\205\070\124\203\137\321\350\054\362
+\254\021\326\250\355\143\152
+END
+
+# Trust for Certificate "VeriSign Class 3 Public Primary Certification Authority - G5"
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:18:da:d1:9e:26:7d:e8:bb:4a:21:58:cd:cc:6b:3b:4a
+# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Wed Nov 08 00:00:00 2006
+# Not Valid After : Wed Jul 16 23:59:59 2036
+# Fingerprint (MD5): CB:17:E4:31:67:3E:E2:09:FE:45:57:93:F3:0A:FA:1C
+# Fingerprint (SHA1): 4E:B6:D5:78:49:9B:1C:CF:5F:58:1E:AD:56:BE:3D:9B:67:44:A5:E5
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign Class 3 Public Primary Certification Authority - G5"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\116\266\325\170\111\233\034\317\137\130\036\255\126\276\075\233
+\147\104\245\345
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\313\027\344\061\147\076\342\011\376\105\127\223\363\012\372\034
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\066\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\030\332\321\236\046\175\350\273\112\041\130\315\314\153
+\073\112
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "SecureTrust CA"
+#
+# Issuer: CN=SecureTrust CA,O=SecureTrust Corporation,C=US
+# Serial Number:0c:f0:8e:5c:08:16:a5:ad:42:7f:f0:eb:27:18:59:d0
+# Subject: CN=SecureTrust CA,O=SecureTrust Corporation,C=US
+# Not Valid Before: Tue Nov 07 19:31:18 2006
+# Not Valid After : Mon Dec 31 19:40:55 2029
+# Fingerprint (MD5): DC:32:C3:A7:6D:25:57:C7:68:09:9D:EA:2D:A9:A2:D1
+# Fingerprint (SHA1): 87:82:C6:C3:04:35:3B:CF:D2:96:92:D2:59:3E:7D:44:D9:34:FF:11
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SecureTrust CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\123\145\143\165\162\145
+\124\162\165\163\164\040\103\157\162\160\157\162\141\164\151\157
+\156\061\027\060\025\006\003\125\004\003\023\016\123\145\143\165
+\162\145\124\162\165\163\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\123\145\143\165\162\145
+\124\162\165\163\164\040\103\157\162\160\157\162\141\164\151\157
+\156\061\027\060\025\006\003\125\004\003\023\016\123\145\143\165
+\162\145\124\162\165\163\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\014\360\216\134\010\026\245\255\102\177\360\353\047\030
+\131\320
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\270\060\202\002\240\240\003\002\001\002\002\020\014
+\360\216\134\010\026\245\255\102\177\360\353\047\030\131\320\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\110
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\040\060
+\036\006\003\125\004\012\023\027\123\145\143\165\162\145\124\162
+\165\163\164\040\103\157\162\160\157\162\141\164\151\157\156\061
+\027\060\025\006\003\125\004\003\023\016\123\145\143\165\162\145
+\124\162\165\163\164\040\103\101\060\036\027\015\060\066\061\061
+\060\067\061\071\063\061\061\070\132\027\015\062\071\061\062\063
+\061\061\071\064\060\065\065\132\060\110\061\013\060\011\006\003
+\125\004\006\023\002\125\123\061\040\060\036\006\003\125\004\012
+\023\027\123\145\143\165\162\145\124\162\165\163\164\040\103\157
+\162\160\157\162\141\164\151\157\156\061\027\060\025\006\003\125
+\004\003\023\016\123\145\143\165\162\145\124\162\165\163\164\040
+\103\101\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\253\244\201\345\225\315\365\366\024\216\302\117\312
+\324\342\170\225\130\234\101\341\015\231\100\044\027\071\221\063
+\146\351\276\341\203\257\142\134\211\321\374\044\133\141\263\340
+\021\021\101\034\035\156\360\270\273\370\336\247\201\272\246\110
+\306\237\035\275\276\216\251\101\076\270\224\355\051\032\324\216
+\322\003\035\003\357\155\015\147\034\127\327\006\255\312\310\365
+\376\016\257\146\045\110\004\226\013\135\243\272\026\303\010\117
+\321\106\370\024\134\362\310\136\001\231\155\375\210\314\206\250
+\301\157\061\102\154\122\076\150\313\363\031\064\337\273\207\030
+\126\200\046\304\320\334\300\157\337\336\240\302\221\026\240\144
+\021\113\104\274\036\366\347\372\143\336\146\254\166\244\161\243
+\354\066\224\150\172\167\244\261\347\016\057\201\172\342\265\162
+\206\357\242\153\213\360\017\333\323\131\077\272\162\274\104\044
+\234\343\163\263\367\257\127\057\102\046\235\251\164\272\000\122
+\362\113\315\123\174\107\013\066\205\016\146\251\010\227\026\064
+\127\301\146\367\200\343\355\160\124\307\223\340\056\050\025\131
+\207\272\273\002\003\001\000\001\243\201\235\060\201\232\060\023
+\006\011\053\006\001\004\001\202\067\024\002\004\006\036\004\000
+\103\000\101\060\013\006\003\125\035\017\004\004\003\002\001\206
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\035\006\003\125\035\016\004\026\004\024\102\062\266\026
+\372\004\375\376\135\113\172\303\375\367\114\100\035\132\103\257
+\060\064\006\003\125\035\037\004\055\060\053\060\051\240\047\240
+\045\206\043\150\164\164\160\072\057\057\143\162\154\056\163\145
+\143\165\162\145\164\162\165\163\164\056\143\157\155\057\123\124
+\103\101\056\143\162\154\060\020\006\011\053\006\001\004\001\202
+\067\025\001\004\003\002\001\000\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\001\001\000\060\355\117\112
+\341\130\072\122\162\133\265\246\243\145\030\246\273\121\073\167
+\351\235\352\323\237\134\340\105\145\173\015\312\133\342\160\120
+\262\224\005\024\256\111\307\215\101\007\022\163\224\176\014\043
+\041\375\274\020\177\140\020\132\162\365\230\016\254\354\271\177
+\335\172\157\135\323\034\364\377\210\005\151\102\251\005\161\310
+\267\254\046\350\056\264\214\152\377\161\334\270\261\337\231\274
+\174\041\124\053\344\130\242\273\127\051\256\236\251\243\031\046
+\017\231\056\010\260\357\375\151\317\231\032\011\215\343\247\237
+\053\311\066\064\173\044\263\170\114\225\027\244\006\046\036\266
+\144\122\066\137\140\147\331\234\305\005\164\013\347\147\043\322
+\010\374\210\351\256\213\177\341\060\364\067\176\375\306\062\332
+\055\236\104\060\060\154\356\007\336\322\064\374\322\377\100\366
+\113\364\146\106\006\124\246\362\062\012\143\046\060\153\233\321
+\334\213\107\272\341\271\325\142\320\242\240\364\147\005\170\051
+\143\032\157\004\326\370\306\114\243\232\261\067\264\215\345\050
+\113\035\236\054\302\270\150\274\355\002\356\061
+END
+
+# Trust for Certificate "SecureTrust CA"
+# Issuer: CN=SecureTrust CA,O=SecureTrust Corporation,C=US
+# Serial Number:0c:f0:8e:5c:08:16:a5:ad:42:7f:f0:eb:27:18:59:d0
+# Subject: CN=SecureTrust CA,O=SecureTrust Corporation,C=US
+# Not Valid Before: Tue Nov 07 19:31:18 2006
+# Not Valid After : Mon Dec 31 19:40:55 2029
+# Fingerprint (MD5): DC:32:C3:A7:6D:25:57:C7:68:09:9D:EA:2D:A9:A2:D1
+# Fingerprint (SHA1): 87:82:C6:C3:04:35:3B:CF:D2:96:92:D2:59:3E:7D:44:D9:34:FF:11
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SecureTrust CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\207\202\306\303\004\065\073\317\322\226\222\322\131\076\175\104
+\331\064\377\021
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\334\062\303\247\155\045\127\307\150\011\235\352\055\251\242\321
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\123\145\143\165\162\145
+\124\162\165\163\164\040\103\157\162\160\157\162\141\164\151\157
+\156\061\027\060\025\006\003\125\004\003\023\016\123\145\143\165
+\162\145\124\162\165\163\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\014\360\216\134\010\026\245\255\102\177\360\353\047\030
+\131\320
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Secure Global CA"
+#
+# Issuer: CN=Secure Global CA,O=SecureTrust Corporation,C=US
+# Serial Number:07:56:22:a4:e8:d4:8a:89:4d:f4:13:c8:f0:f8:ea:a5
+# Subject: CN=Secure Global CA,O=SecureTrust Corporation,C=US
+# Not Valid Before: Tue Nov 07 19:42:28 2006
+# Not Valid After : Mon Dec 31 19:52:06 2029
+# Fingerprint (MD5): CF:F4:27:0D:D4:ED:DC:65:16:49:6D:3D:DA:BF:6E:DE
+# Fingerprint (SHA1): 3A:44:73:5A:E5:81:90:1F:24:86:61:46:1E:3B:9C:C4:5F:F5:3A:1B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Secure Global CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\123\145\143\165\162\145
+\124\162\165\163\164\040\103\157\162\160\157\162\141\164\151\157
+\156\061\031\060\027\006\003\125\004\003\023\020\123\145\143\165
+\162\145\040\107\154\157\142\141\154\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\123\145\143\165\162\145
+\124\162\165\163\164\040\103\157\162\160\157\162\141\164\151\157
+\156\061\031\060\027\006\003\125\004\003\023\020\123\145\143\165
+\162\145\040\107\154\157\142\141\154\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\007\126\042\244\350\324\212\211\115\364\023\310\360\370
+\352\245
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\274\060\202\002\244\240\003\002\001\002\002\020\007
+\126\042\244\350\324\212\211\115\364\023\310\360\370\352\245\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\112
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\040\060
+\036\006\003\125\004\012\023\027\123\145\143\165\162\145\124\162
+\165\163\164\040\103\157\162\160\157\162\141\164\151\157\156\061
+\031\060\027\006\003\125\004\003\023\020\123\145\143\165\162\145
+\040\107\154\157\142\141\154\040\103\101\060\036\027\015\060\066
+\061\061\060\067\061\071\064\062\062\070\132\027\015\062\071\061
+\062\063\061\061\071\065\062\060\066\132\060\112\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\040\060\036\006\003\125
+\004\012\023\027\123\145\143\165\162\145\124\162\165\163\164\040
+\103\157\162\160\157\162\141\164\151\157\156\061\031\060\027\006
+\003\125\004\003\023\020\123\145\143\165\162\145\040\107\154\157
+\142\141\154\040\103\101\060\202\001\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202
+\001\012\002\202\001\001\000\257\065\056\330\254\154\125\151\006
+\161\345\023\150\044\263\117\330\314\041\107\370\361\140\070\211
+\211\003\351\275\352\136\106\123\011\334\134\365\132\350\367\105
+\052\002\353\061\141\327\051\063\114\316\307\174\012\067\176\017
+\272\062\230\341\035\227\257\217\307\334\311\070\226\363\333\032
+\374\121\355\150\306\320\156\244\174\044\321\256\102\310\226\120
+\143\056\340\376\165\376\230\247\137\111\056\225\343\071\063\144
+\216\036\244\137\220\322\147\074\262\331\376\101\271\125\247\011
+\216\162\005\036\213\335\104\205\202\102\320\111\300\035\140\360
+\321\027\054\225\353\366\245\301\222\243\305\302\247\010\140\015
+\140\004\020\226\171\236\026\064\346\251\266\372\045\105\071\310
+\036\145\371\223\365\252\361\122\334\231\230\075\245\206\032\014
+\065\063\372\113\245\004\006\025\034\061\200\357\252\030\153\302
+\173\327\332\316\371\063\040\325\365\275\152\063\055\201\004\373
+\260\134\324\234\243\342\134\035\343\251\102\165\136\173\324\167
+\357\071\124\272\311\012\030\033\022\231\111\057\210\113\375\120
+\142\321\163\347\217\172\103\002\003\001\000\001\243\201\235\060
+\201\232\060\023\006\011\053\006\001\004\001\202\067\024\002\004
+\006\036\004\000\103\000\101\060\013\006\003\125\035\017\004\004
+\003\002\001\206\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024
+\257\104\004\302\101\176\110\203\333\116\071\002\354\354\204\172
+\346\316\311\244\060\064\006\003\125\035\037\004\055\060\053\060
+\051\240\047\240\045\206\043\150\164\164\160\072\057\057\143\162
+\154\056\163\145\143\165\162\145\164\162\165\163\164\056\143\157
+\155\057\123\107\103\101\056\143\162\154\060\020\006\011\053\006
+\001\004\001\202\067\025\001\004\003\002\001\000\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000
+\143\032\010\100\175\244\136\123\015\167\330\172\256\037\015\013
+\121\026\003\357\030\174\310\343\257\152\130\223\024\140\221\262
+\204\334\210\116\276\071\212\072\363\346\202\211\135\001\067\263
+\253\044\244\025\016\222\065\132\112\104\136\116\127\372\165\316
+\037\110\316\146\364\074\100\046\222\230\154\033\356\044\106\014
+\027\263\122\245\333\245\221\221\317\067\323\157\347\047\010\072
+\116\031\037\072\247\130\134\027\317\171\077\213\344\247\323\046
+\043\235\046\017\130\151\374\107\176\262\320\215\213\223\277\051
+\117\103\151\164\166\147\113\317\007\214\346\002\367\265\341\264
+\103\265\113\055\024\237\371\334\046\015\277\246\107\164\006\330
+\210\321\072\051\060\204\316\322\071\200\142\033\250\307\127\111
+\274\152\125\121\147\025\112\276\065\007\344\325\165\230\067\171
+\060\024\333\051\235\154\305\151\314\107\125\242\060\367\314\134
+\177\302\303\230\034\153\116\026\200\353\172\170\145\105\242\000
+\032\257\014\015\125\144\064\110\270\222\271\361\264\120\051\362
+\117\043\037\332\154\254\037\104\341\335\043\170\121\133\307\026
+END
+
+# Trust for Certificate "Secure Global CA"
+# Issuer: CN=Secure Global CA,O=SecureTrust Corporation,C=US
+# Serial Number:07:56:22:a4:e8:d4:8a:89:4d:f4:13:c8:f0:f8:ea:a5
+# Subject: CN=Secure Global CA,O=SecureTrust Corporation,C=US
+# Not Valid Before: Tue Nov 07 19:42:28 2006
+# Not Valid After : Mon Dec 31 19:52:06 2029
+# Fingerprint (MD5): CF:F4:27:0D:D4:ED:DC:65:16:49:6D:3D:DA:BF:6E:DE
+# Fingerprint (SHA1): 3A:44:73:5A:E5:81:90:1F:24:86:61:46:1E:3B:9C:C4:5F:F5:3A:1B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Secure Global CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\072\104\163\132\345\201\220\037\044\206\141\106\036\073\234\304
+\137\365\072\033
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\317\364\047\015\324\355\334\145\026\111\155\075\332\277\156\336
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\023\027\123\145\143\165\162\145
+\124\162\165\163\164\040\103\157\162\160\157\162\141\164\151\157
+\156\061\031\060\027\006\003\125\004\003\023\020\123\145\143\165
+\162\145\040\107\154\157\142\141\154\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\007\126\042\244\350\324\212\211\115\364\023\310\360\370
+\352\245
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "COMODO Certification Authority"
+#
+# Issuer: CN=COMODO Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number:4e:81:2d:8a:82:65:e0:0b:02:ee:3e:35:02:46:e5:3d
+# Subject: CN=COMODO Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Fri Dec 01 00:00:00 2006
+# Not Valid After : Mon Dec 31 23:59:59 2029
+# Fingerprint (MD5): 5C:48:DC:F7:42:72:EC:56:94:6D:1C:CC:71:35:80:75
+# Fingerprint (SHA1): 66:31:BF:9E:F7:4F:9E:B6:C9:D5:A6:0C:BA:6A:BE:D1:F7:BD:EF:7B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "COMODO Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\201\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\047\060\045\006
+\003\125\004\003\023\036\103\117\115\117\104\117\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\201\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\047\060\045\006
+\003\125\004\003\023\036\103\117\115\117\104\117\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\116\201\055\212\202\145\340\013\002\356\076\065\002\106
+\345\075
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\035\060\202\003\005\240\003\002\001\002\002\020\116
+\201\055\212\202\145\340\013\002\356\076\065\002\106\345\075\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\201\061\013\060\011\006\003\125\004\006\023\002\107\102\061\033
+\060\031\006\003\125\004\010\023\022\107\162\145\141\164\145\162
+\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016\006
+\003\125\004\007\023\007\123\141\154\146\157\162\144\061\032\060
+\030\006\003\125\004\012\023\021\103\117\115\117\104\117\040\103
+\101\040\114\151\155\151\164\145\144\061\047\060\045\006\003\125
+\004\003\023\036\103\117\115\117\104\117\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\060\036\027\015\060\066\061\062\060\061\060\060\060\060
+\060\060\132\027\015\062\071\061\062\063\061\062\063\065\071\065
+\071\132\060\201\201\061\013\060\011\006\003\125\004\006\023\002
+\107\102\061\033\060\031\006\003\125\004\010\023\022\107\162\145
+\141\164\145\162\040\115\141\156\143\150\145\163\164\145\162\061
+\020\060\016\006\003\125\004\007\023\007\123\141\154\146\157\162
+\144\061\032\060\030\006\003\125\004\012\023\021\103\117\115\117
+\104\117\040\103\101\040\114\151\155\151\164\145\144\061\047\060
+\045\006\003\125\004\003\023\036\103\117\115\117\104\117\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\060\202\001\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202
+\001\012\002\202\001\001\000\320\100\213\213\162\343\221\033\367
+\121\301\033\124\004\230\323\251\277\301\346\212\135\073\207\373
+\273\210\316\015\343\057\077\006\226\360\242\051\120\231\256\333
+\073\241\127\260\164\121\161\315\355\102\221\115\101\376\251\310
+\330\152\206\167\104\273\131\146\227\120\136\264\324\054\160\104
+\317\332\067\225\102\151\074\060\304\161\263\122\360\041\115\241
+\330\272\071\174\034\236\243\044\235\362\203\026\230\252\026\174
+\103\233\025\133\267\256\064\221\376\324\142\046\030\106\232\077
+\353\301\371\361\220\127\353\254\172\015\213\333\162\060\152\146
+\325\340\106\243\160\334\150\331\377\004\110\211\167\336\265\351
+\373\147\155\101\351\274\071\275\062\331\142\002\361\261\250\075
+\156\067\234\342\057\342\323\242\046\213\306\270\125\103\210\341
+\043\076\245\322\044\071\152\107\253\000\324\241\263\251\045\376
+\015\077\247\035\272\323\121\301\013\244\332\254\070\357\125\120
+\044\005\145\106\223\064\117\055\215\255\306\324\041\031\322\216
+\312\005\141\161\007\163\107\345\212\031\022\275\004\115\316\116
+\234\245\110\254\273\046\367\002\003\001\000\001\243\201\216\060
+\201\213\060\035\006\003\125\035\016\004\026\004\024\013\130\345
+\213\306\114\025\067\244\100\251\060\251\041\276\107\066\132\126
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001
+\001\377\060\111\006\003\125\035\037\004\102\060\100\060\076\240
+\074\240\072\206\070\150\164\164\160\072\057\057\143\162\154\056
+\143\157\155\157\144\157\143\141\056\143\157\155\057\103\117\115
+\117\104\117\103\145\162\164\151\146\151\143\141\164\151\157\156
+\101\165\164\150\157\162\151\164\171\056\143\162\154\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\076\230\236\233\366\033\351\327\071\267\170\256\035\162\030
+\111\323\207\344\103\202\353\077\311\252\365\250\265\357\125\174
+\041\122\145\371\325\015\341\154\364\076\214\223\163\221\056\002
+\304\116\007\161\157\300\217\070\141\010\250\036\201\012\300\057
+\040\057\101\213\221\334\110\105\274\361\306\336\272\166\153\063
+\310\000\055\061\106\114\355\347\235\317\210\224\377\063\300\126
+\350\044\206\046\270\330\070\070\337\052\153\335\022\314\307\077
+\107\027\114\242\302\006\226\011\326\333\376\077\074\106\101\337
+\130\342\126\017\074\073\301\034\223\065\331\070\122\254\356\310
+\354\056\060\116\224\065\264\044\037\113\170\151\332\362\002\070
+\314\225\122\223\360\160\045\131\234\040\147\304\356\371\213\127
+\141\364\222\166\175\077\204\215\125\267\350\345\254\325\361\365
+\031\126\246\132\373\220\034\257\223\353\345\034\324\147\227\135
+\004\016\276\013\203\246\027\203\271\060\022\240\305\063\025\005
+\271\015\373\307\005\166\343\330\112\215\374\064\027\243\306\041
+\050\276\060\105\061\036\307\170\276\130\141\070\254\073\342\001
+\145
+END
+
+# Trust for Certificate "COMODO Certification Authority"
+# Issuer: CN=COMODO Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number:4e:81:2d:8a:82:65:e0:0b:02:ee:3e:35:02:46:e5:3d
+# Subject: CN=COMODO Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Fri Dec 01 00:00:00 2006
+# Not Valid After : Mon Dec 31 23:59:59 2029
+# Fingerprint (MD5): 5C:48:DC:F7:42:72:EC:56:94:6D:1C:CC:71:35:80:75
+# Fingerprint (SHA1): 66:31:BF:9E:F7:4F:9E:B6:C9:D5:A6:0C:BA:6A:BE:D1:F7:BD:EF:7B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "COMODO Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\146\061\277\236\367\117\236\266\311\325\246\014\272\152\276\321
+\367\275\357\173
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\134\110\334\367\102\162\354\126\224\155\034\314\161\065\200\165
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\201\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\047\060\045\006
+\003\125\004\003\023\036\103\117\115\117\104\117\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\116\201\055\212\202\145\340\013\002\356\076\065\002\106
+\345\075
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Network Solutions Certificate Authority"
+#
+# Issuer: CN=Network Solutions Certificate Authority,O=Network Solutions L.L.C.,C=US
+# Serial Number:57:cb:33:6f:c2:5c:16:e6:47:16:17:e3:90:31:68:e0
+# Subject: CN=Network Solutions Certificate Authority,O=Network Solutions L.L.C.,C=US
+# Not Valid Before: Fri Dec 01 00:00:00 2006
+# Not Valid After : Mon Dec 31 23:59:59 2029
+# Fingerprint (MD5): D3:F3:A6:16:C0:FA:6B:1D:59:B1:2D:96:4D:0E:11:2E
+# Fingerprint (SHA1): 74:F8:A3:C3:EF:E7:B3:90:06:4B:83:90:3C:21:64:60:20:E5:DF:CE
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Network Solutions Certificate Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\142\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\041\060\037\006\003\125\004\012\023\030\116\145\164\167\157\162
+\153\040\123\157\154\165\164\151\157\156\163\040\114\056\114\056
+\103\056\061\060\060\056\006\003\125\004\003\023\047\116\145\164
+\167\157\162\153\040\123\157\154\165\164\151\157\156\163\040\103
+\145\162\164\151\146\151\143\141\164\145\040\101\165\164\150\157
+\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\142\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\041\060\037\006\003\125\004\012\023\030\116\145\164\167\157\162
+\153\040\123\157\154\165\164\151\157\156\163\040\114\056\114\056
+\103\056\061\060\060\056\006\003\125\004\003\023\047\116\145\164
+\167\157\162\153\040\123\157\154\165\164\151\157\156\163\040\103
+\145\162\164\151\146\151\143\141\164\145\040\101\165\164\150\157
+\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\127\313\063\157\302\134\026\346\107\026\027\343\220\061
+\150\340
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\346\060\202\002\316\240\003\002\001\002\002\020\127
+\313\063\157\302\134\026\346\107\026\027\343\220\061\150\340\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\142
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\041\060
+\037\006\003\125\004\012\023\030\116\145\164\167\157\162\153\040
+\123\157\154\165\164\151\157\156\163\040\114\056\114\056\103\056
+\061\060\060\056\006\003\125\004\003\023\047\116\145\164\167\157
+\162\153\040\123\157\154\165\164\151\157\156\163\040\103\145\162
+\164\151\146\151\143\141\164\145\040\101\165\164\150\157\162\151
+\164\171\060\036\027\015\060\066\061\062\060\061\060\060\060\060
+\060\060\132\027\015\062\071\061\062\063\061\062\063\065\071\065
+\071\132\060\142\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\041\060\037\006\003\125\004\012\023\030\116\145\164\167
+\157\162\153\040\123\157\154\165\164\151\157\156\163\040\114\056
+\114\056\103\056\061\060\060\056\006\003\125\004\003\023\047\116
+\145\164\167\157\162\153\040\123\157\154\165\164\151\157\156\163
+\040\103\145\162\164\151\146\151\143\141\164\145\040\101\165\164
+\150\157\162\151\164\171\060\202\001\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202
+\001\012\002\202\001\001\000\344\274\176\222\060\155\306\330\216
+\053\013\274\106\316\340\047\226\336\336\371\372\022\323\074\063
+\163\263\004\057\274\161\214\345\237\266\042\140\076\137\135\316
+\011\377\202\014\033\232\121\120\032\046\211\335\325\141\135\031
+\334\022\017\055\012\242\103\135\027\320\064\222\040\352\163\317
+\070\054\006\046\011\172\162\367\372\120\062\370\302\223\323\151
+\242\043\316\101\261\314\344\325\037\066\321\212\072\370\214\143
+\342\024\131\151\355\015\323\177\153\350\270\003\345\117\152\345
+\230\143\151\110\005\276\056\377\063\266\351\227\131\151\370\147
+\031\256\223\141\226\104\025\323\162\260\077\274\152\175\354\110
+\177\215\303\253\252\161\053\123\151\101\123\064\265\260\271\305
+\006\012\304\260\105\365\101\135\156\211\105\173\075\073\046\214
+\164\302\345\322\321\175\262\021\324\373\130\062\042\232\200\311
+\334\375\014\351\177\136\003\227\316\073\000\024\207\047\160\070
+\251\216\156\263\047\166\230\121\340\005\343\041\253\032\325\205
+\042\074\051\265\232\026\305\200\250\364\273\153\060\217\057\106
+\002\242\261\014\042\340\323\002\003\001\000\001\243\201\227\060
+\201\224\060\035\006\003\125\035\016\004\026\004\024\041\060\311
+\373\000\327\116\230\332\207\252\052\320\247\056\261\100\061\247
+\114\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001
+\001\377\060\122\006\003\125\035\037\004\113\060\111\060\107\240
+\105\240\103\206\101\150\164\164\160\072\057\057\143\162\154\056
+\156\145\164\163\157\154\163\163\154\056\143\157\155\057\116\145
+\164\167\157\162\153\123\157\154\165\164\151\157\156\163\103\145
+\162\164\151\146\151\143\141\164\145\101\165\164\150\157\162\151
+\164\171\056\143\162\154\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\001\001\000\273\256\113\347\267\127
+\353\177\252\055\267\163\107\205\152\301\344\245\035\344\347\074
+\351\364\131\145\167\265\172\133\132\215\045\066\340\172\227\056
+\070\300\127\140\203\230\006\203\237\271\166\172\156\120\340\272
+\210\054\374\105\314\030\260\231\225\121\016\354\035\270\210\377
+\207\120\034\202\302\343\340\062\200\277\240\013\107\310\303\061
+\357\231\147\062\200\117\027\041\171\014\151\134\336\136\064\256
+\002\265\046\352\120\337\177\030\145\054\311\362\143\341\251\007
+\376\174\161\037\153\063\044\152\036\005\367\005\150\300\152\022
+\313\056\136\141\313\256\050\323\176\302\264\146\221\046\137\074
+\056\044\137\313\130\017\353\050\354\257\021\226\363\334\173\157
+\300\247\210\362\123\167\263\140\136\256\256\050\332\065\054\157
+\064\105\323\046\341\336\354\133\117\047\153\026\174\275\104\004
+\030\202\263\211\171\027\020\161\075\172\242\026\116\365\001\315
+\244\154\145\150\241\111\166\134\103\311\330\274\066\147\154\245
+\224\265\324\314\271\275\152\065\126\041\336\330\303\353\373\313
+\244\140\114\260\125\240\240\173\127\262
+END
+
+# Trust for Certificate "Network Solutions Certificate Authority"
+# Issuer: CN=Network Solutions Certificate Authority,O=Network Solutions L.L.C.,C=US
+# Serial Number:57:cb:33:6f:c2:5c:16:e6:47:16:17:e3:90:31:68:e0
+# Subject: CN=Network Solutions Certificate Authority,O=Network Solutions L.L.C.,C=US
+# Not Valid Before: Fri Dec 01 00:00:00 2006
+# Not Valid After : Mon Dec 31 23:59:59 2029
+# Fingerprint (MD5): D3:F3:A6:16:C0:FA:6B:1D:59:B1:2D:96:4D:0E:11:2E
+# Fingerprint (SHA1): 74:F8:A3:C3:EF:E7:B3:90:06:4B:83:90:3C:21:64:60:20:E5:DF:CE
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Network Solutions Certificate Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\164\370\243\303\357\347\263\220\006\113\203\220\074\041\144\140
+\040\345\337\316
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\323\363\246\026\300\372\153\035\131\261\055\226\115\016\021\056
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\142\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\041\060\037\006\003\125\004\012\023\030\116\145\164\167\157\162
+\153\040\123\157\154\165\164\151\157\156\163\040\114\056\114\056
+\103\056\061\060\060\056\006\003\125\004\003\023\047\116\145\164
+\167\157\162\153\040\123\157\154\165\164\151\157\156\163\040\103
+\145\162\164\151\146\151\143\141\164\145\040\101\165\164\150\157
+\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\127\313\063\157\302\134\026\346\107\026\027\343\220\061
+\150\340
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "WellsSecure Public Root Certificate Authority"
+#
+# Issuer: CN=WellsSecure Public Root Certificate Authority,OU=Wells Fargo Bank NA,O=Wells Fargo WellsSecure,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=WellsSecure Public Root Certificate Authority,OU=Wells Fargo Bank NA,O=Wells Fargo WellsSecure,C=US
+# Not Valid Before: Thu Dec 13 17:07:54 2007
+# Not Valid After : Wed Dec 14 00:07:54 2022
+# Fingerprint (MD5): 15:AC:A5:C2:92:2D:79:BC:E8:7F:CB:67:ED:02:CF:36
+# Fingerprint (SHA1): E7:B4:F6:9D:61:EC:90:69:DB:7E:90:A7:40:1A:3C:F4:7D:4F:E8:EE
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "WellsSecure Public Root Certificate Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\040\060\036\006\003\125\004\012\014\027\127\145\154\154\163
+\040\106\141\162\147\157\040\127\145\154\154\163\123\145\143\165
+\162\145\061\034\060\032\006\003\125\004\013\014\023\127\145\154
+\154\163\040\106\141\162\147\157\040\102\141\156\153\040\116\101
+\061\066\060\064\006\003\125\004\003\014\055\127\145\154\154\163
+\123\145\143\165\162\145\040\120\165\142\154\151\143\040\122\157
+\157\164\040\103\145\162\164\151\146\151\143\141\164\145\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\040\060\036\006\003\125\004\012\014\027\127\145\154\154\163
+\040\106\141\162\147\157\040\127\145\154\154\163\123\145\143\165
+\162\145\061\034\060\032\006\003\125\004\013\014\023\127\145\154
+\154\163\040\106\141\162\147\157\040\102\141\156\153\040\116\101
+\061\066\060\064\006\003\125\004\003\014\055\127\145\154\154\163
+\123\145\143\165\162\145\040\120\165\142\154\151\143\040\122\157
+\157\164\040\103\145\162\164\151\146\151\143\141\164\145\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\275\060\202\003\245\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\205\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\040\060\036\006\003\125\004\012\014\027\127\145\154\154\163\040
+\106\141\162\147\157\040\127\145\154\154\163\123\145\143\165\162
+\145\061\034\060\032\006\003\125\004\013\014\023\127\145\154\154
+\163\040\106\141\162\147\157\040\102\141\156\153\040\116\101\061
+\066\060\064\006\003\125\004\003\014\055\127\145\154\154\163\123
+\145\143\165\162\145\040\120\165\142\154\151\143\040\122\157\157
+\164\040\103\145\162\164\151\146\151\143\141\164\145\040\101\165
+\164\150\157\162\151\164\171\060\036\027\015\060\067\061\062\061
+\063\061\067\060\067\065\064\132\027\015\062\062\061\062\061\064
+\060\060\060\067\065\064\132\060\201\205\061\013\060\011\006\003
+\125\004\006\023\002\125\123\061\040\060\036\006\003\125\004\012
+\014\027\127\145\154\154\163\040\106\141\162\147\157\040\127\145
+\154\154\163\123\145\143\165\162\145\061\034\060\032\006\003\125
+\004\013\014\023\127\145\154\154\163\040\106\141\162\147\157\040
+\102\141\156\153\040\116\101\061\066\060\064\006\003\125\004\003
+\014\055\127\145\154\154\163\123\145\143\165\162\145\040\120\165
+\142\154\151\143\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171\060
+\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000
+\356\157\264\275\171\342\217\010\041\236\070\004\101\045\357\253
+\133\034\123\222\254\155\236\335\302\304\056\105\224\003\065\210
+\147\164\127\343\337\214\270\247\166\217\073\367\250\304\333\051
+\143\016\221\150\066\212\227\216\212\161\150\011\007\344\350\324
+\016\117\370\326\053\114\244\026\371\357\103\230\217\263\236\122
+\337\155\221\071\217\070\275\167\213\103\143\353\267\223\374\060
+\114\034\001\223\266\023\373\367\241\037\277\045\341\164\067\054
+\036\244\136\074\150\370\113\277\015\271\036\056\066\350\251\344
+\247\370\017\313\202\165\174\065\055\042\326\302\277\013\363\264
+\374\154\225\141\036\127\327\004\201\062\203\122\171\346\203\143
+\317\267\313\143\213\021\342\275\136\353\366\215\355\225\162\050
+\264\254\022\142\351\112\063\346\203\062\256\005\165\225\275\204
+\225\333\052\134\233\216\056\014\270\201\053\101\346\070\126\237
+\111\233\154\166\372\212\135\367\001\171\201\174\301\203\100\005
+\376\161\375\014\077\314\116\140\011\016\145\107\020\057\001\300
+\005\077\217\370\263\101\357\132\102\176\131\357\322\227\014\145
+\002\003\001\000\001\243\202\001\064\060\202\001\060\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\071
+\006\003\125\035\037\004\062\060\060\060\056\240\054\240\052\206
+\050\150\164\164\160\072\057\057\143\162\154\056\160\153\151\056
+\167\145\154\154\163\146\141\162\147\157\056\143\157\155\057\167
+\163\160\162\143\141\056\143\162\154\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\306\060\035\006\003\125\035\016
+\004\026\004\024\046\225\031\020\331\350\241\227\221\377\334\031
+\331\265\004\076\322\163\012\152\060\201\262\006\003\125\035\043
+\004\201\252\060\201\247\200\024\046\225\031\020\331\350\241\227
+\221\377\334\031\331\265\004\076\322\163\012\152\241\201\213\244
+\201\210\060\201\205\061\013\060\011\006\003\125\004\006\023\002
+\125\123\061\040\060\036\006\003\125\004\012\014\027\127\145\154
+\154\163\040\106\141\162\147\157\040\127\145\154\154\163\123\145
+\143\165\162\145\061\034\060\032\006\003\125\004\013\014\023\127
+\145\154\154\163\040\106\141\162\147\157\040\102\141\156\153\040
+\116\101\061\066\060\064\006\003\125\004\003\014\055\127\145\154
+\154\163\123\145\143\165\162\145\040\120\165\142\154\151\143\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\145
+\040\101\165\164\150\157\162\151\164\171\202\001\001\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\271\025\261\104\221\314\043\310\053\115\167\343\370\232\173
+\047\015\315\162\273\231\000\312\174\146\031\120\306\325\230\355
+\253\277\003\132\345\115\345\036\310\117\161\227\206\325\343\035
+\375\220\311\074\165\167\127\172\175\370\336\364\324\325\367\225
+\346\164\156\035\074\256\174\235\333\002\003\005\054\161\113\045
+\076\007\343\136\232\365\146\027\051\210\032\070\237\317\252\101
+\003\204\227\153\223\070\172\312\060\104\033\044\104\063\320\344
+\321\334\050\070\364\023\103\065\065\051\143\250\174\242\265\255
+\070\244\355\255\375\306\232\037\377\227\163\376\373\263\065\247
+\223\206\306\166\221\000\346\254\121\026\304\047\062\134\333\163
+\332\245\223\127\216\076\155\065\046\010\131\325\347\104\327\166
+\040\143\347\254\023\147\303\155\261\160\106\174\325\226\021\075
+\211\157\135\250\241\353\215\012\332\303\035\063\154\243\352\147
+\031\232\231\177\113\075\203\121\052\035\312\057\206\014\242\176
+\020\055\053\324\026\225\013\007\252\056\024\222\111\267\051\157
+\330\155\061\175\365\374\241\020\007\207\316\057\131\334\076\130
+\333
+END
+
+# Trust for Certificate "WellsSecure Public Root Certificate Authority"
+# Issuer: CN=WellsSecure Public Root Certificate Authority,OU=Wells Fargo Bank NA,O=Wells Fargo WellsSecure,C=US
+# Serial Number: 1 (0x1)
+# Subject: CN=WellsSecure Public Root Certificate Authority,OU=Wells Fargo Bank NA,O=Wells Fargo WellsSecure,C=US
+# Not Valid Before: Thu Dec 13 17:07:54 2007
+# Not Valid After : Wed Dec 14 00:07:54 2022
+# Fingerprint (MD5): 15:AC:A5:C2:92:2D:79:BC:E8:7F:CB:67:ED:02:CF:36
+# Fingerprint (SHA1): E7:B4:F6:9D:61:EC:90:69:DB:7E:90:A7:40:1A:3C:F4:7D:4F:E8:EE
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "WellsSecure Public Root Certificate Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\347\264\366\235\141\354\220\151\333\176\220\247\100\032\074\364
+\175\117\350\356
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\025\254\245\302\222\055\171\274\350\177\313\147\355\002\317\066
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\040\060\036\006\003\125\004\012\014\027\127\145\154\154\163
+\040\106\141\162\147\157\040\127\145\154\154\163\123\145\143\165
+\162\145\061\034\060\032\006\003\125\004\013\014\023\127\145\154
+\154\163\040\106\141\162\147\157\040\102\141\156\153\040\116\101
+\061\066\060\064\006\003\125\004\003\014\055\127\145\154\154\163
+\123\145\143\165\162\145\040\120\165\142\154\151\143\040\122\157
+\157\164\040\103\145\162\164\151\146\151\143\141\164\145\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "COMODO ECC Certification Authority"
+#
+# Issuer: CN=COMODO ECC Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number:1f:47:af:aa:62:00:70:50:54:4c:01:9e:9b:63:99:2a
+# Subject: CN=COMODO ECC Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Mar 06 00:00:00 2008
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 7C:62:FF:74:9D:31:53:5E:68:4A:D5:78:AA:1E:BF:23
+# Fingerprint (SHA1): 9F:74:4E:9F:2B:4D:BA:EC:0F:31:2C:50:B6:56:3B:8E:2D:93:C3:11
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "COMODO ECC Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\053\060\051\006
+\003\125\004\003\023\042\103\117\115\117\104\117\040\105\103\103
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\053\060\051\006
+\003\125\004\003\023\042\103\117\115\117\104\117\040\105\103\103
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\037\107\257\252\142\000\160\120\124\114\001\236\233\143
+\231\052
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\211\060\202\002\017\240\003\002\001\002\002\020\037
+\107\257\252\142\000\160\120\124\114\001\236\233\143\231\052\060
+\012\006\010\052\206\110\316\075\004\003\003\060\201\205\061\013
+\060\011\006\003\125\004\006\023\002\107\102\061\033\060\031\006
+\003\125\004\010\023\022\107\162\145\141\164\145\162\040\115\141
+\156\143\150\145\163\164\145\162\061\020\060\016\006\003\125\004
+\007\023\007\123\141\154\146\157\162\144\061\032\060\030\006\003
+\125\004\012\023\021\103\117\115\117\104\117\040\103\101\040\114
+\151\155\151\164\145\144\061\053\060\051\006\003\125\004\003\023
+\042\103\117\115\117\104\117\040\105\103\103\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\060\036\027\015\060\070\060\063\060\066\060\060\060
+\060\060\060\132\027\015\063\070\060\061\061\070\062\063\065\071
+\065\071\132\060\201\205\061\013\060\011\006\003\125\004\006\023
+\002\107\102\061\033\060\031\006\003\125\004\010\023\022\107\162
+\145\141\164\145\162\040\115\141\156\143\150\145\163\164\145\162
+\061\020\060\016\006\003\125\004\007\023\007\123\141\154\146\157
+\162\144\061\032\060\030\006\003\125\004\012\023\021\103\117\115
+\117\104\117\040\103\101\040\114\151\155\151\164\145\144\061\053
+\060\051\006\003\125\004\003\023\042\103\117\115\117\104\117\040
+\105\103\103\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\060\166\060\020\006
+\007\052\206\110\316\075\002\001\006\005\053\201\004\000\042\003
+\142\000\004\003\107\173\057\165\311\202\025\205\373\165\344\221
+\026\324\253\142\231\365\076\122\013\006\316\101\000\177\227\341
+\012\044\074\035\001\004\356\075\322\215\011\227\014\340\165\344
+\372\373\167\212\052\365\003\140\113\066\213\026\043\026\255\011
+\161\364\112\364\050\120\264\376\210\034\156\077\154\057\057\011
+\131\133\245\133\013\063\231\342\303\075\211\371\152\054\357\262
+\323\006\351\243\102\060\100\060\035\006\003\125\035\016\004\026
+\004\024\165\161\247\031\110\031\274\235\235\352\101\107\337\224
+\304\110\167\231\323\171\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\012\006\010\052\206\110\316\075
+\004\003\003\003\150\000\060\145\002\061\000\357\003\133\172\254
+\267\170\012\162\267\210\337\377\265\106\024\011\012\372\240\346
+\175\010\306\032\207\275\030\250\163\275\046\312\140\014\235\316
+\231\237\317\134\017\060\341\276\024\061\352\002\060\024\364\223
+\074\111\247\063\172\220\106\107\263\143\175\023\233\116\267\157
+\030\067\200\123\376\335\040\340\065\232\066\321\307\001\271\346
+\334\335\363\377\035\054\072\026\127\331\222\071\326
+END
+
+# Trust for Certificate "COMODO ECC Certification Authority"
+# Issuer: CN=COMODO ECC Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number:1f:47:af:aa:62:00:70:50:54:4c:01:9e:9b:63:99:2a
+# Subject: CN=COMODO ECC Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Thu Mar 06 00:00:00 2008
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 7C:62:FF:74:9D:31:53:5E:68:4A:D5:78:AA:1E:BF:23
+# Fingerprint (SHA1): 9F:74:4E:9F:2B:4D:BA:EC:0F:31:2C:50:B6:56:3B:8E:2D:93:C3:11
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "COMODO ECC Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\237\164\116\237\053\115\272\354\017\061\054\120\266\126\073\216
+\055\223\303\021
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\174\142\377\164\235\061\123\136\150\112\325\170\252\036\277\043
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\053\060\051\006
+\003\125\004\003\023\042\103\117\115\117\104\117\040\105\103\103
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\037\107\257\252\142\000\160\120\124\114\001\236\233\143
+\231\052
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "MD5 Collisions Forged Rogue CA 25c3"
+#
+# Issuer: CN=Equifax Secure Global eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Serial Number: 66 (0x42)
+# Subject: CN=MD5 Collisions Inc. (http://www.phreedom.org/md5)
+# Not Valid Before: Sat Jul 31 00:00:01 2004
+# Not Valid After : Thu Sep 02 00:00:01 2004
+# Fingerprint (MD5): 16:7A:13:15:B9:17:39:A3:F1:05:6A:E6:3E:D9:3A:38
+# Fingerprint (SHA1): 64:23:13:7E:5C:53:D6:4A:A6:64:85:ED:36:54:F5:AB:05:5A:8B:8A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "MD5 Collisions Forged Rogue CA 25c3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\074\061\072\060\070\006\003\125\004\003\023\061\115\104\065
+\040\103\157\154\154\151\163\151\157\156\163\040\111\156\143\056
+\040\050\150\164\164\160\072\057\057\167\167\167\056\160\150\162
+\145\145\144\157\155\056\157\162\147\057\155\144\065\051
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\055\060
+\053\006\003\125\004\003\023\044\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\107\154\157\142\141\154\040\145\102
+\165\163\151\156\145\163\163\040\103\101\055\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\102
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\062\060\202\003\233\240\003\002\001\002\002\001\102
+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
+\132\061\013\060\011\006\003\125\004\006\023\002\125\123\061\034
+\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141\170
+\040\123\145\143\165\162\145\040\111\156\143\056\061\055\060\053
+\006\003\125\004\003\023\044\105\161\165\151\146\141\170\040\123
+\145\143\165\162\145\040\107\154\157\142\141\154\040\145\102\165
+\163\151\156\145\163\163\040\103\101\055\061\060\036\027\015\060
+\064\060\067\063\061\060\060\060\060\060\061\132\027\015\060\064
+\060\071\060\062\060\060\060\060\060\061\132\060\074\061\072\060
+\070\006\003\125\004\003\023\061\115\104\065\040\103\157\154\154
+\151\163\151\157\156\163\040\111\156\143\056\040\050\150\164\164
+\160\072\057\057\167\167\167\056\160\150\162\145\145\144\157\155
+\056\157\162\147\057\155\144\065\051\060\201\237\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\201\215\000\060
+\201\211\002\201\201\000\272\246\131\311\054\050\326\052\260\370
+\355\237\106\244\244\067\356\016\031\150\131\321\263\003\231\121
+\326\026\232\136\067\153\025\340\016\113\365\204\144\370\243\333
+\101\157\065\325\233\025\037\333\304\070\122\160\201\227\136\217
+\240\265\367\176\071\360\062\254\036\255\104\322\263\372\110\303
+\316\221\233\354\364\234\174\341\132\365\310\067\153\232\203\336
+\347\312\040\227\061\102\163\025\221\150\364\210\257\371\050\050
+\305\351\017\163\260\027\113\023\114\231\165\320\104\346\176\010
+\154\032\362\117\033\101\002\003\001\000\001\243\202\002\044\060
+\202\002\040\060\013\006\003\125\035\017\004\004\003\002\001\306
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\035\006\003\125\035\016\004\026\004\024\247\004\140\037
+\253\162\103\010\305\177\010\220\125\126\034\326\316\346\070\353
+\060\037\006\003\125\035\043\004\030\060\026\200\024\276\250\240
+\164\162\120\153\104\267\311\043\330\373\250\377\263\127\153\150
+\154\060\202\001\276\006\011\140\206\110\001\206\370\102\001\015
+\004\202\001\257\026\202\001\253\063\000\000\000\047\136\071\340
+\211\141\017\116\243\305\105\013\066\273\001\321\123\252\303\010
+\217\157\370\117\076\207\207\104\021\334\140\340\337\222\125\371
+\270\163\033\124\223\305\237\320\106\304\140\266\065\142\315\271
+\257\034\250\151\032\311\133\074\226\067\300\355\147\357\273\376
+\300\213\234\120\057\051\275\203\042\236\216\010\372\254\023\160
+\242\130\177\142\142\212\021\367\211\366\337\266\147\131\163\026
+\373\143\026\212\264\221\070\316\056\365\266\276\114\244\224\111
+\344\145\021\012\102\025\311\301\060\342\151\325\105\175\245\046
+\273\271\141\354\142\144\360\071\341\347\274\150\330\120\121\236
+\035\140\323\321\243\247\012\370\003\040\241\160\001\027\221\066
+\117\002\160\061\206\203\335\367\017\330\007\035\021\263\023\004
+\245\334\360\256\120\261\050\016\143\151\052\014\202\157\217\107
+\063\337\154\242\006\222\361\117\105\276\331\060\066\243\053\214
+\326\167\256\065\143\177\116\114\232\223\110\066\331\237\002\003
+\001\000\001\243\201\275\060\201\272\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\004\360\060\035\006\003\125\035\016
+\004\026\004\024\315\246\203\372\245\140\067\367\226\067\027\051
+\336\101\170\361\207\211\125\347\060\073\006\003\125\035\037\004
+\064\060\062\060\060\240\056\240\054\206\052\150\164\164\160\072
+\057\057\143\162\154\056\147\145\157\164\162\165\163\164\056\143
+\157\155\057\143\162\154\163\057\147\154\157\142\141\154\143\141
+\061\056\143\162\154\060\037\006\003\125\035\043\004\030\060\026
+\200\024\276\250\240\164\162\120\153\104\267\311\043\330\373\250
+\377\263\127\153\150\154\060\035\006\003\125\035\045\004\026\060
+\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006\001
+\005\005\007\003\002\060\014\006\003\125\035\023\001\001\377\004
+\002\060\000\060\015\006\011\052\206\110\206\367\015\001\001\004
+\005\000\003\201\201\000\247\041\002\215\321\016\242\200\167\045
+\375\103\140\025\217\354\357\220\107\324\204\102\025\046\021\034
+\315\302\074\020\051\251\266\337\253\127\165\221\332\345\053\263
+\220\105\034\060\143\126\077\212\331\120\372\355\130\154\300\145
+\254\146\127\336\034\306\166\073\365\000\016\216\105\316\177\114
+\220\354\053\306\315\263\264\217\142\320\376\267\305\046\162\104
+\355\366\230\133\256\313\321\225\365\332\010\276\150\106\261\165
+\310\354\035\217\036\172\224\361\252\123\170\242\105\256\124\352
+\321\236\164\310\166\147
+END
+
+# Trust for Certificate "MD5 Collisions Forged Rogue CA 25c3"
+# Issuer: CN=Equifax Secure Global eBusiness CA-1,O=Equifax Secure Inc.,C=US
+# Serial Number: 66 (0x42)
+# Subject: CN=MD5 Collisions Inc. (http://www.phreedom.org/md5)
+# Not Valid Before: Sat Jul 31 00:00:01 2004
+# Not Valid After : Thu Sep 02 00:00:01 2004
+# Fingerprint (MD5): 16:7A:13:15:B9:17:39:A3:F1:05:6A:E6:3E:D9:3A:38
+# Fingerprint (SHA1): 64:23:13:7E:5C:53:D6:4A:A6:64:85:ED:36:54:F5:AB:05:5A:8B:8A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "MD5 Collisions Forged Rogue CA 25c3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\144\043\023\176\134\123\326\112\246\144\205\355\066\124\365\253
+\005\132\213\212
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\026\172\023\025\271\027\071\243\361\005\152\346\076\331\072\070
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\034\060\032\006\003\125\004\012\023\023\105\161\165\151\146\141
+\170\040\123\145\143\165\162\145\040\111\156\143\056\061\055\060
+\053\006\003\125\004\003\023\044\105\161\165\151\146\141\170\040
+\123\145\143\165\162\145\040\107\154\157\142\141\154\040\145\102
+\165\163\151\156\145\163\163\040\103\101\055\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\102
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "IGC/A"
+#
+# Issuer: E=igca@sgdn.pm.gouv.fr,CN=IGC/A,OU=DCSSI,O=PM/SGDN,L=Paris,ST=France,C=FR
+# Serial Number:39:11:45:10:94
+# Subject: E=igca@sgdn.pm.gouv.fr,CN=IGC/A,OU=DCSSI,O=PM/SGDN,L=Paris,ST=France,C=FR
+# Not Valid Before: Fri Dec 13 14:29:23 2002
+# Not Valid After : Sat Oct 17 14:29:22 2020
+# Fingerprint (MD5): 0C:7F:DD:6A:F4:2A:B9:C8:9B:BD:20:7E:A9:DB:5C:37
+# Fingerprint (SHA1): 60:D6:89:74:B5:C2:65:9E:8A:0F:C1:88:7C:88:D2:46:69:1B:18:2C
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "IGC/A"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\106\122
+\061\017\060\015\006\003\125\004\010\023\006\106\162\141\156\143
+\145\061\016\060\014\006\003\125\004\007\023\005\120\141\162\151
+\163\061\020\060\016\006\003\125\004\012\023\007\120\115\057\123
+\107\104\116\061\016\060\014\006\003\125\004\013\023\005\104\103
+\123\123\111\061\016\060\014\006\003\125\004\003\023\005\111\107
+\103\057\101\061\043\060\041\006\011\052\206\110\206\367\015\001
+\011\001\026\024\151\147\143\141\100\163\147\144\156\056\160\155
+\056\147\157\165\166\056\146\162
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\106\122
+\061\017\060\015\006\003\125\004\010\023\006\106\162\141\156\143
+\145\061\016\060\014\006\003\125\004\007\023\005\120\141\162\151
+\163\061\020\060\016\006\003\125\004\012\023\007\120\115\057\123
+\107\104\116\061\016\060\014\006\003\125\004\013\023\005\104\103
+\123\123\111\061\016\060\014\006\003\125\004\003\023\005\111\107
+\103\057\101\061\043\060\041\006\011\052\206\110\206\367\015\001
+\011\001\026\024\151\147\143\141\100\163\147\144\156\056\160\155
+\056\147\157\165\166\056\146\162
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\005\071\021\105\020\224
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\002\060\202\002\352\240\003\002\001\002\002\005\071
+\021\105\020\224\060\015\006\011\052\206\110\206\367\015\001\001
+\005\005\000\060\201\205\061\013\060\011\006\003\125\004\006\023
+\002\106\122\061\017\060\015\006\003\125\004\010\023\006\106\162
+\141\156\143\145\061\016\060\014\006\003\125\004\007\023\005\120
+\141\162\151\163\061\020\060\016\006\003\125\004\012\023\007\120
+\115\057\123\107\104\116\061\016\060\014\006\003\125\004\013\023
+\005\104\103\123\123\111\061\016\060\014\006\003\125\004\003\023
+\005\111\107\103\057\101\061\043\060\041\006\011\052\206\110\206
+\367\015\001\011\001\026\024\151\147\143\141\100\163\147\144\156
+\056\160\155\056\147\157\165\166\056\146\162\060\036\027\015\060
+\062\061\062\061\063\061\064\062\071\062\063\132\027\015\062\060
+\061\060\061\067\061\064\062\071\062\062\132\060\201\205\061\013
+\060\011\006\003\125\004\006\023\002\106\122\061\017\060\015\006
+\003\125\004\010\023\006\106\162\141\156\143\145\061\016\060\014
+\006\003\125\004\007\023\005\120\141\162\151\163\061\020\060\016
+\006\003\125\004\012\023\007\120\115\057\123\107\104\116\061\016
+\060\014\006\003\125\004\013\023\005\104\103\123\123\111\061\016
+\060\014\006\003\125\004\003\023\005\111\107\103\057\101\061\043
+\060\041\006\011\052\206\110\206\367\015\001\011\001\026\024\151
+\147\143\141\100\163\147\144\156\056\160\155\056\147\157\165\166
+\056\146\162\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\262\037\321\320\142\305\063\073\300\004\206\210
+\263\334\370\210\367\375\337\103\337\172\215\232\111\134\366\116
+\252\314\034\271\241\353\047\211\362\106\351\073\112\161\325\035
+\216\055\317\346\255\253\143\120\307\124\013\156\022\311\220\066
+\306\330\057\332\221\252\150\305\162\376\027\012\262\027\176\171
+\265\062\210\160\312\160\300\226\112\216\344\125\315\035\047\224
+\277\316\162\052\354\134\371\163\040\376\275\367\056\211\147\270
+\273\107\163\022\367\321\065\151\072\362\012\271\256\377\106\102
+\106\242\277\241\205\032\371\277\344\377\111\205\367\243\160\206
+\062\034\135\237\140\367\251\255\245\377\317\321\064\371\175\133
+\027\306\334\326\016\050\153\302\335\361\365\063\150\235\116\374
+\207\174\066\022\326\243\200\350\103\015\125\141\224\352\144\067
+\107\352\167\312\320\262\130\005\303\135\176\261\250\106\220\061
+\126\316\160\052\226\262\060\270\167\346\171\300\275\051\073\375
+\224\167\114\275\040\315\101\045\340\056\307\033\273\356\244\004
+\101\322\135\255\022\152\212\233\107\373\311\335\106\100\341\235
+\074\063\320\265\002\003\001\000\001\243\167\060\165\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\013
+\006\003\125\035\017\004\004\003\002\001\106\060\025\006\003\125
+\035\040\004\016\060\014\060\012\006\010\052\201\172\001\171\001
+\001\001\060\035\006\003\125\035\016\004\026\004\024\243\005\057
+\030\140\120\302\211\012\335\053\041\117\377\216\116\250\060\061
+\066\060\037\006\003\125\035\043\004\030\060\026\200\024\243\005
+\057\030\140\120\302\211\012\335\053\041\117\377\216\116\250\060
+\061\066\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\202\001\001\000\005\334\046\330\372\167\025\104\150\374
+\057\146\072\164\340\135\344\051\377\006\007\023\204\112\253\317
+\155\240\037\121\224\370\111\313\164\066\024\274\025\335\333\211
+\057\335\217\240\135\174\365\022\353\237\236\070\244\107\314\263
+\226\331\276\234\045\253\003\176\063\017\225\201\015\375\026\340
+\210\276\067\360\154\135\320\061\233\062\053\135\027\145\223\230
+\140\274\156\217\261\250\074\036\331\034\363\251\046\102\371\144
+\035\302\347\222\366\364\036\132\252\031\122\135\257\350\242\367
+\140\240\366\215\360\211\365\156\340\012\005\001\225\311\213\040
+\012\272\132\374\232\054\074\275\303\267\311\135\170\045\005\077
+\126\024\233\014\332\373\072\110\376\227\151\136\312\020\206\367
+\116\226\004\010\115\354\260\276\135\334\073\216\117\301\375\232
+\066\064\232\114\124\176\027\003\110\225\010\021\034\007\157\205
+\010\176\135\115\304\235\333\373\256\316\262\321\263\270\203\154
+\035\262\263\171\361\330\160\231\176\360\023\002\316\136\335\121
+\323\337\066\201\241\033\170\057\161\263\361\131\114\106\030\050
+\253\205\322\140\126\132
+END
+
+# Trust for Certificate "IGC/A"
+# Issuer: E=igca@sgdn.pm.gouv.fr,CN=IGC/A,OU=DCSSI,O=PM/SGDN,L=Paris,ST=France,C=FR
+# Serial Number:39:11:45:10:94
+# Subject: E=igca@sgdn.pm.gouv.fr,CN=IGC/A,OU=DCSSI,O=PM/SGDN,L=Paris,ST=France,C=FR
+# Not Valid Before: Fri Dec 13 14:29:23 2002
+# Not Valid After : Sat Oct 17 14:29:22 2020
+# Fingerprint (MD5): 0C:7F:DD:6A:F4:2A:B9:C8:9B:BD:20:7E:A9:DB:5C:37
+# Fingerprint (SHA1): 60:D6:89:74:B5:C2:65:9E:8A:0F:C1:88:7C:88:D2:46:69:1B:18:2C
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "IGC/A"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\140\326\211\164\265\302\145\236\212\017\301\210\174\210\322\106
+\151\033\030\054
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\014\177\335\152\364\052\271\310\233\275\040\176\251\333\134\067
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\106\122
+\061\017\060\015\006\003\125\004\010\023\006\106\162\141\156\143
+\145\061\016\060\014\006\003\125\004\007\023\005\120\141\162\151
+\163\061\020\060\016\006\003\125\004\012\023\007\120\115\057\123
+\107\104\116\061\016\060\014\006\003\125\004\013\023\005\104\103
+\123\123\111\061\016\060\014\006\003\125\004\003\023\005\111\107
+\103\057\101\061\043\060\041\006\011\052\206\110\206\367\015\001
+\011\001\026\024\151\147\143\141\100\163\147\144\156\056\160\155
+\056\147\157\165\166\056\146\162
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\005\071\021\105\020\224
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Distrust "Distrusted AC DG Tresor SSL"
+# Issuer: CN=AC DGTPE Signature Authentification,O=DGTPE,C=FR
+# Serial Number: 204199 (0x31da7)
+# Subject: CN=AC DG Tr..sor SSL,O=DG Tr..sor,C=FR
+# Not Valid Before: Thu Jul 18 10:05:28 2013
+# Not Valid After : Fri Jul 18 10:05:28 2014
+# Fingerprint (MD5): 3A:EA:9E:FC:00:0C:E2:06:6C:E0:AC:39:C1:31:DE:C8
+# Fingerprint (SHA1): 5C:E3:39:46:5F:41:A1:E4:23:14:9F:65:54:40:95:40:4D:E6:EB:E2
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Distrusted AC DG Tresor SSL"
+CKA_ISSUER MULTILINE_OCTAL
+\060\113\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\016\060\014\006\003\125\004\012\023\005\104\107\124\120\105\061
+\054\060\052\006\003\125\004\003\023\043\101\103\040\104\107\124
+\120\105\040\123\151\147\156\141\164\165\162\145\040\101\165\164
+\150\145\156\164\151\146\151\143\141\164\151\157\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\003\035\247
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Security Communication EV RootCA1"
+#
+# Issuer: OU=Security Communication EV RootCA1,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Serial Number: 0 (0x0)
+# Subject: OU=Security Communication EV RootCA1,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Not Valid Before: Wed Jun 06 02:12:32 2007
+# Not Valid After : Sat Jun 06 02:12:32 2037
+# Fingerprint (MD5): 22:2D:A6:01:EA:7C:0A:F7:F0:6C:56:43:3F:77:76:D3
+# Fingerprint (SHA1): FE:B8:C4:32:DC:F9:76:9A:CE:AE:3D:D8:90:8F:FD:28:86:65:64:7D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Security Communication EV RootCA1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\140\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040
+\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117
+\056\054\114\124\104\056\061\052\060\050\006\003\125\004\013\023
+\041\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156
+\151\143\141\164\151\157\156\040\105\126\040\122\157\157\164\103
+\101\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\140\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040
+\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117
+\056\054\114\124\104\056\061\052\060\050\006\003\125\004\013\023
+\041\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156
+\151\143\141\164\151\157\156\040\105\126\040\122\157\157\164\103
+\101\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\175\060\202\002\145\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\140\061\013\060\011\006\003\125\004\006\023\002\112\120\061\045
+\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040\124
+\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117\056
+\054\114\124\104\056\061\052\060\050\006\003\125\004\013\023\041
+\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156\151
+\143\141\164\151\157\156\040\105\126\040\122\157\157\164\103\101
+\061\060\036\027\015\060\067\060\066\060\066\060\062\061\062\063
+\062\132\027\015\063\067\060\066\060\066\060\062\061\062\063\062
+\132\060\140\061\013\060\011\006\003\125\004\006\023\002\112\120
+\061\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115
+\040\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103
+\117\056\054\114\124\104\056\061\052\060\050\006\003\125\004\013
+\023\041\123\145\143\165\162\151\164\171\040\103\157\155\155\165
+\156\151\143\141\164\151\157\156\040\105\126\040\122\157\157\164
+\103\101\061\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\274\177\354\127\233\044\340\376\234\272\102\171
+\251\210\212\372\200\340\365\007\051\103\352\216\012\064\066\215
+\034\372\247\265\071\170\377\227\165\367\057\344\252\153\004\204
+\104\312\246\342\150\216\375\125\120\142\017\244\161\016\316\007
+\070\055\102\205\120\255\074\226\157\213\325\242\016\317\336\111
+\211\075\326\144\056\070\345\036\154\265\127\212\236\357\110\016
+\315\172\151\026\207\104\265\220\344\006\235\256\241\004\227\130
+\171\357\040\112\202\153\214\042\277\354\037\017\351\204\161\355
+\361\016\344\270\030\023\314\126\066\135\321\232\036\121\153\071
+\156\140\166\210\064\013\363\263\321\260\235\312\141\342\144\035
+\301\106\007\270\143\335\036\063\145\263\216\011\125\122\075\265
+\275\377\007\353\255\141\125\030\054\251\151\230\112\252\100\305
+\063\024\145\164\000\371\221\336\257\003\110\305\100\124\334\017
+\204\220\150\040\305\222\226\334\056\345\002\105\252\300\137\124
+\370\155\352\111\317\135\154\113\257\357\232\302\126\134\306\065
+\126\102\152\060\137\302\253\366\342\075\077\263\311\021\217\061
+\114\327\237\111\002\003\001\000\001\243\102\060\100\060\035\006
+\003\125\035\016\004\026\004\024\065\112\365\115\257\077\327\202
+\070\254\253\161\145\027\165\214\235\125\223\346\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\250\207\351\354\370\100\147\135\303\301\146\307\100\113\227
+\374\207\023\220\132\304\357\240\312\137\213\267\247\267\361\326
+\265\144\267\212\263\270\033\314\332\373\254\146\210\101\316\350
+\374\344\333\036\210\246\355\047\120\033\002\060\044\106\171\376
+\004\207\160\227\100\163\321\300\301\127\031\232\151\245\047\231
+\253\235\142\204\366\121\301\054\311\043\025\330\050\267\253\045
+\023\265\106\341\206\002\377\046\214\304\210\222\035\126\376\031
+\147\362\125\344\200\243\153\234\253\167\341\121\161\015\040\333
+\020\232\333\275\166\171\007\167\231\050\255\232\136\332\261\117
+\104\054\065\216\245\226\307\375\203\360\130\306\171\326\230\174
+\250\215\376\206\076\007\026\222\341\173\347\035\354\063\166\176
+\102\056\112\205\371\221\211\150\204\003\201\245\233\232\276\343
+\067\305\124\253\126\073\030\055\101\244\014\370\102\333\231\240
+\340\162\157\273\135\341\026\117\123\012\144\371\116\364\277\116
+\124\275\170\154\210\352\277\234\023\044\302\160\151\242\177\017
+\310\074\255\010\311\260\230\100\243\052\347\210\203\355\167\217
+\164
+END
+
+# Trust for Certificate "Security Communication EV RootCA1"
+# Issuer: OU=Security Communication EV RootCA1,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Serial Number: 0 (0x0)
+# Subject: OU=Security Communication EV RootCA1,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Not Valid Before: Wed Jun 06 02:12:32 2007
+# Not Valid After : Sat Jun 06 02:12:32 2037
+# Fingerprint (MD5): 22:2D:A6:01:EA:7C:0A:F7:F0:6C:56:43:3F:77:76:D3
+# Fingerprint (SHA1): FE:B8:C4:32:DC:F9:76:9A:CE:AE:3D:D8:90:8F:FD:28:86:65:64:7D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Security Communication EV RootCA1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\376\270\304\062\334\371\166\232\316\256\075\330\220\217\375\050
+\206\145\144\175
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\042\055\246\001\352\174\012\367\360\154\126\103\077\167\166\323
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\140\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040
+\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117
+\056\054\114\124\104\056\061\052\060\050\006\003\125\004\013\023
+\041\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156
+\151\143\141\164\151\157\156\040\105\126\040\122\157\157\164\103
+\101\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "OISTE WISeKey Global Root GA CA"
+#
+# Issuer: CN=OISTE WISeKey Global Root GA CA,OU=OISTE Foundation Endorsed,OU=Copyright (c) 2005,O=WISeKey,C=CH
+# Serial Number:41:3d:72:c7:f4:6b:1f:81:43:7d:f1:d2:28:54:df:9a
+# Subject: CN=OISTE WISeKey Global Root GA CA,OU=OISTE Foundation Endorsed,OU=Copyright (c) 2005,O=WISeKey,C=CH
+# Not Valid Before: Sun Dec 11 16:03:44 2005
+# Not Valid After : Fri Dec 11 16:09:51 2037
+# Fingerprint (MD5): BC:6C:51:33:A7:E9:D3:66:63:54:15:72:1B:21:92:93
+# Fingerprint (SHA1): 59:22:A1:E1:5A:EA:16:35:21:F8:98:39:6A:46:46:B0:44:1B:0F:A9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "OISTE WISeKey Global Root GA CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\212\061\013\060\011\006\003\125\004\006\023\002\103\110
+\061\020\060\016\006\003\125\004\012\023\007\127\111\123\145\113
+\145\171\061\033\060\031\006\003\125\004\013\023\022\103\157\160
+\171\162\151\147\150\164\040\050\143\051\040\062\060\060\065\061
+\042\060\040\006\003\125\004\013\023\031\117\111\123\124\105\040
+\106\157\165\156\144\141\164\151\157\156\040\105\156\144\157\162
+\163\145\144\061\050\060\046\006\003\125\004\003\023\037\117\111
+\123\124\105\040\127\111\123\145\113\145\171\040\107\154\157\142
+\141\154\040\122\157\157\164\040\107\101\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\212\061\013\060\011\006\003\125\004\006\023\002\103\110
+\061\020\060\016\006\003\125\004\012\023\007\127\111\123\145\113
+\145\171\061\033\060\031\006\003\125\004\013\023\022\103\157\160
+\171\162\151\147\150\164\040\050\143\051\040\062\060\060\065\061
+\042\060\040\006\003\125\004\013\023\031\117\111\123\124\105\040
+\106\157\165\156\144\141\164\151\157\156\040\105\156\144\157\162
+\163\145\144\061\050\060\046\006\003\125\004\003\023\037\117\111
+\123\124\105\040\127\111\123\145\113\145\171\040\107\154\157\142
+\141\154\040\122\157\157\164\040\107\101\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\101\075\162\307\364\153\037\201\103\175\361\322\050\124
+\337\232
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\361\060\202\002\331\240\003\002\001\002\002\020\101
+\075\162\307\364\153\037\201\103\175\361\322\050\124\337\232\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\212\061\013\060\011\006\003\125\004\006\023\002\103\110\061\020
+\060\016\006\003\125\004\012\023\007\127\111\123\145\113\145\171
+\061\033\060\031\006\003\125\004\013\023\022\103\157\160\171\162
+\151\147\150\164\040\050\143\051\040\062\060\060\065\061\042\060
+\040\006\003\125\004\013\023\031\117\111\123\124\105\040\106\157
+\165\156\144\141\164\151\157\156\040\105\156\144\157\162\163\145
+\144\061\050\060\046\006\003\125\004\003\023\037\117\111\123\124
+\105\040\127\111\123\145\113\145\171\040\107\154\157\142\141\154
+\040\122\157\157\164\040\107\101\040\103\101\060\036\027\015\060
+\065\061\062\061\061\061\066\060\063\064\064\132\027\015\063\067
+\061\062\061\061\061\066\060\071\065\061\132\060\201\212\061\013
+\060\011\006\003\125\004\006\023\002\103\110\061\020\060\016\006
+\003\125\004\012\023\007\127\111\123\145\113\145\171\061\033\060
+\031\006\003\125\004\013\023\022\103\157\160\171\162\151\147\150
+\164\040\050\143\051\040\062\060\060\065\061\042\060\040\006\003
+\125\004\013\023\031\117\111\123\124\105\040\106\157\165\156\144
+\141\164\151\157\156\040\105\156\144\157\162\163\145\144\061\050
+\060\046\006\003\125\004\003\023\037\117\111\123\124\105\040\127
+\111\123\145\113\145\171\040\107\154\157\142\141\154\040\122\157
+\157\164\040\107\101\040\103\101\060\202\001\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000
+\060\202\001\012\002\202\001\001\000\313\117\263\000\233\075\066
+\335\371\321\111\152\153\020\111\037\354\330\053\262\306\370\062
+\201\051\103\225\114\232\031\043\041\025\105\336\343\310\034\121
+\125\133\256\223\350\067\377\053\153\351\324\352\276\052\335\250
+\121\053\327\146\303\141\134\140\002\310\365\316\162\173\073\270
+\362\116\145\010\232\315\244\152\031\301\001\273\163\246\327\366
+\303\335\315\274\244\213\265\231\141\270\001\242\243\324\115\324
+\005\075\221\255\370\264\010\161\144\257\160\361\034\153\176\366
+\303\167\235\044\163\173\344\014\214\341\331\066\341\231\213\005
+\231\013\355\105\061\011\312\302\000\333\367\162\240\226\252\225
+\207\320\216\307\266\141\163\015\166\146\214\334\033\264\143\242
+\237\177\223\023\060\361\241\047\333\331\377\054\125\210\221\240
+\340\117\007\260\050\126\214\030\033\227\104\216\211\335\340\027
+\156\347\052\357\217\071\012\061\204\202\330\100\024\111\056\172
+\101\344\247\376\343\144\314\301\131\161\113\054\041\247\133\175
+\340\035\321\056\201\233\303\330\150\367\275\226\033\254\160\261
+\026\024\013\333\140\271\046\001\005\002\003\001\000\001\243\121
+\060\117\060\013\006\003\125\035\017\004\004\003\002\001\206\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\035\006\003\125\035\016\004\026\004\024\263\003\176\256\066
+\274\260\171\321\334\224\046\266\021\276\041\262\151\206\224\060
+\020\006\011\053\006\001\004\001\202\067\025\001\004\003\002\001
+\000\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\001\001\000\113\241\377\013\207\156\263\371\301\103\261
+\110\363\050\300\035\056\311\011\101\372\224\000\034\244\244\253
+\111\117\217\075\036\357\115\157\275\274\244\366\362\046\060\311
+\020\312\035\210\373\164\031\037\205\105\275\260\154\121\371\066
+\176\333\365\114\062\072\101\117\133\107\317\350\013\055\266\304
+\031\235\164\305\107\306\073\152\017\254\024\333\074\364\163\234
+\251\005\337\000\334\164\170\372\370\065\140\131\002\023\030\174
+\274\373\115\260\040\155\103\273\140\060\172\147\063\134\305\231
+\321\370\055\071\122\163\373\214\252\227\045\134\162\331\010\036
+\253\116\074\343\201\061\237\003\246\373\300\376\051\210\125\332
+\204\325\120\003\266\342\204\243\246\066\252\021\072\001\341\030
+\113\326\104\150\263\075\371\123\164\204\263\106\221\106\226\000
+\267\200\054\266\341\343\020\342\333\242\347\050\217\001\226\142
+\026\076\000\343\034\245\066\201\030\242\114\122\166\300\021\243
+\156\346\035\272\343\132\276\066\123\305\076\165\217\206\151\051
+\130\123\265\234\273\157\237\134\305\030\354\335\057\341\230\311
+\374\276\337\012\015
+END
+
+# Trust for Certificate "OISTE WISeKey Global Root GA CA"
+# Issuer: CN=OISTE WISeKey Global Root GA CA,OU=OISTE Foundation Endorsed,OU=Copyright (c) 2005,O=WISeKey,C=CH
+# Serial Number:41:3d:72:c7:f4:6b:1f:81:43:7d:f1:d2:28:54:df:9a
+# Subject: CN=OISTE WISeKey Global Root GA CA,OU=OISTE Foundation Endorsed,OU=Copyright (c) 2005,O=WISeKey,C=CH
+# Not Valid Before: Sun Dec 11 16:03:44 2005
+# Not Valid After : Fri Dec 11 16:09:51 2037
+# Fingerprint (MD5): BC:6C:51:33:A7:E9:D3:66:63:54:15:72:1B:21:92:93
+# Fingerprint (SHA1): 59:22:A1:E1:5A:EA:16:35:21:F8:98:39:6A:46:46:B0:44:1B:0F:A9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "OISTE WISeKey Global Root GA CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\131\042\241\341\132\352\026\065\041\370\230\071\152\106\106\260
+\104\033\017\251
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\274\154\121\063\247\351\323\146\143\124\025\162\033\041\222\223
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\212\061\013\060\011\006\003\125\004\006\023\002\103\110
+\061\020\060\016\006\003\125\004\012\023\007\127\111\123\145\113
+\145\171\061\033\060\031\006\003\125\004\013\023\022\103\157\160
+\171\162\151\147\150\164\040\050\143\051\040\062\060\060\065\061
+\042\060\040\006\003\125\004\013\023\031\117\111\123\124\105\040
+\106\157\165\156\144\141\164\151\157\156\040\105\156\144\157\162
+\163\145\144\061\050\060\046\006\003\125\004\003\023\037\117\111
+\123\124\105\040\127\111\123\145\113\145\171\040\107\154\157\142
+\141\154\040\122\157\157\164\040\107\101\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\101\075\162\307\364\153\037\201\103\175\361\322\050\124
+\337\232
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "S-TRUST Authentication and Encryption Root CA 2005 PN"
+#
+# Issuer: CN=S-TRUST Authentication and Encryption Root CA 2005:PN,O=Deutscher Sparkassen Verlag GmbH,L=Stuttgart,ST=Baden-Wuerttemberg (BW),C=DE
+# Serial Number:37:19:18:e6:53:54:7c:1a:b5:b8:cb:59:5a:db:35:b7
+# Subject: CN=S-TRUST Authentication and Encryption Root CA 2005:PN,O=Deutscher Sparkassen Verlag GmbH,L=Stuttgart,ST=Baden-Wuerttemberg (BW),C=DE
+# Not Valid Before: Wed Jun 22 00:00:00 2005
+# Not Valid After : Fri Jun 21 23:59:59 2030
+# Fingerprint (MD5): 04:4B:FD:C9:6C:DA:2A:32:85:7C:59:84:61:46:8A:64
+# Fingerprint (SHA1): BE:B5:A9:95:74:6B:9E:DF:73:8B:56:E6:DF:43:7A:77:BE:10:6B:81
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "S-TRUST Authentication and Encryption Root CA 2005 PN"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\040\060\036\006\003\125\004\010\023\027\102\141\144\145\156
+\055\127\165\145\162\164\164\145\155\142\145\162\147\040\050\102
+\127\051\061\022\060\020\006\003\125\004\007\023\011\123\164\165
+\164\164\147\141\162\164\061\051\060\047\006\003\125\004\012\023
+\040\104\145\165\164\163\143\150\145\162\040\123\160\141\162\153
+\141\163\163\145\156\040\126\145\162\154\141\147\040\107\155\142
+\110\061\076\060\074\006\003\125\004\003\023\065\123\055\124\122
+\125\123\124\040\101\165\164\150\145\156\164\151\143\141\164\151
+\157\156\040\141\156\144\040\105\156\143\162\171\160\164\151\157
+\156\040\122\157\157\164\040\103\101\040\062\060\060\065\072\120
+\116
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\040\060\036\006\003\125\004\010\023\027\102\141\144\145\156
+\055\127\165\145\162\164\164\145\155\142\145\162\147\040\050\102
+\127\051\061\022\060\020\006\003\125\004\007\023\011\123\164\165
+\164\164\147\141\162\164\061\051\060\047\006\003\125\004\012\023
+\040\104\145\165\164\163\143\150\145\162\040\123\160\141\162\153
+\141\163\163\145\156\040\126\145\162\154\141\147\040\107\155\142
+\110\061\076\060\074\006\003\125\004\003\023\065\123\055\124\122
+\125\123\124\040\101\165\164\150\145\156\164\151\143\141\164\151
+\157\156\040\141\156\144\040\105\156\143\162\171\160\164\151\157
+\156\040\122\157\157\164\040\103\101\040\062\060\060\065\072\120
+\116
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\067\031\030\346\123\124\174\032\265\270\313\131\132\333
+\065\267
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\173\060\202\003\143\240\003\002\001\002\002\020\067
+\031\030\346\123\124\174\032\265\270\313\131\132\333\065\267\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\256\061\013\060\011\006\003\125\004\006\023\002\104\105\061\040
+\060\036\006\003\125\004\010\023\027\102\141\144\145\156\055\127
+\165\145\162\164\164\145\155\142\145\162\147\040\050\102\127\051
+\061\022\060\020\006\003\125\004\007\023\011\123\164\165\164\164
+\147\141\162\164\061\051\060\047\006\003\125\004\012\023\040\104
+\145\165\164\163\143\150\145\162\040\123\160\141\162\153\141\163
+\163\145\156\040\126\145\162\154\141\147\040\107\155\142\110\061
+\076\060\074\006\003\125\004\003\023\065\123\055\124\122\125\123
+\124\040\101\165\164\150\145\156\164\151\143\141\164\151\157\156
+\040\141\156\144\040\105\156\143\162\171\160\164\151\157\156\040
+\122\157\157\164\040\103\101\040\062\060\060\065\072\120\116\060
+\036\027\015\060\065\060\066\062\062\060\060\060\060\060\060\132
+\027\015\063\060\060\066\062\061\062\063\065\071\065\071\132\060
+\201\256\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\040\060\036\006\003\125\004\010\023\027\102\141\144\145\156\055
+\127\165\145\162\164\164\145\155\142\145\162\147\040\050\102\127
+\051\061\022\060\020\006\003\125\004\007\023\011\123\164\165\164
+\164\147\141\162\164\061\051\060\047\006\003\125\004\012\023\040
+\104\145\165\164\163\143\150\145\162\040\123\160\141\162\153\141
+\163\163\145\156\040\126\145\162\154\141\147\040\107\155\142\110
+\061\076\060\074\006\003\125\004\003\023\065\123\055\124\122\125
+\123\124\040\101\165\164\150\145\156\164\151\143\141\164\151\157
+\156\040\141\156\144\040\105\156\143\162\171\160\164\151\157\156
+\040\122\157\157\164\040\103\101\040\062\060\060\065\072\120\116
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\331\265\112\301\323\063\352\323\106\263\321\342\114\322\365
+\266\203\320\157\325\030\351\223\257\047\216\023\315\265\045\066
+\120\064\022\144\051\241\125\341\072\140\223\236\050\311\343\363
+\233\341\004\260\043\277\225\212\216\133\033\101\177\132\303\350
+\115\114\325\044\026\076\207\110\324\047\256\346\367\123\035\273
+\014\000\357\076\141\161\255\277\072\172\130\037\224\075\134\201
+\325\325\157\337\270\233\322\365\345\313\203\162\222\302\123\262
+\202\002\353\255\255\137\026\055\222\123\166\361\211\266\054\365
+\301\057\340\247\112\157\240\060\152\062\353\232\164\003\150\170
+\023\235\312\057\233\013\035\276\317\165\015\046\227\233\307\365
+\136\012\237\170\337\263\274\354\232\272\357\125\217\033\232\246
+\007\143\051\027\131\142\011\052\171\007\167\245\340\321\027\151
+\351\133\335\366\220\253\342\230\012\000\321\045\155\236\327\205
+\207\057\222\361\321\166\203\117\013\072\131\067\050\057\063\247
+\027\120\326\040\013\012\364\046\371\237\070\347\055\244\270\233
+\211\215\255\255\311\152\175\211\027\273\366\177\200\203\172\346
+\355\002\003\001\000\001\243\201\222\060\201\217\060\022\006\003
+\125\035\023\001\001\377\004\010\060\006\001\001\377\002\001\000
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006
+\060\051\006\003\125\035\021\004\042\060\040\244\036\060\034\061
+\032\060\030\006\003\125\004\003\023\021\123\124\122\157\156\154
+\151\156\145\061\055\062\060\064\070\055\065\060\035\006\003\125
+\035\016\004\026\004\024\017\312\036\134\171\340\242\363\051\266
+\322\205\263\013\112\265\145\354\153\122\060\037\006\003\125\035
+\043\004\030\060\026\200\024\017\312\036\134\171\340\242\363\051
+\266\322\205\263\013\112\265\145\354\153\122\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000\257
+\001\360\355\031\074\050\350\115\134\273\245\143\034\210\063\003
+\247\000\207\244\037\040\253\326\034\343\006\037\227\176\124\275
+\267\321\262\311\325\332\200\354\027\327\212\365\173\302\000\366
+\351\021\157\204\240\132\045\061\342\211\371\244\000\077\061\150
+\056\325\075\350\156\346\325\035\074\077\262\275\237\167\353\235
+\323\214\272\300\327\266\115\354\123\234\017\004\156\352\065\147
+\127\343\012\145\173\220\072\341\117\076\303\000\222\172\273\005
+\211\163\214\313\246\115\300\373\366\002\326\260\007\243\003\302
+\047\100\237\014\344\205\202\055\257\232\102\035\320\307\215\370
+\100\356\235\006\127\034\331\242\330\200\024\376\341\143\055\062
+\207\325\224\122\226\072\106\306\161\226\075\367\230\016\262\221
+\252\217\332\364\116\044\000\071\125\350\255\027\271\323\064\053
+\112\251\100\314\027\052\125\145\101\164\102\176\365\300\257\310
+\223\255\362\030\133\075\211\014\333\107\071\044\370\340\114\362
+\037\260\075\012\312\005\116\211\041\032\343\052\231\254\374\177
+\241\361\017\033\037\075\236\004\203\335\226\331\035\072\224
+END
+
+# Trust for Certificate "S-TRUST Authentication and Encryption Root CA 2005 PN"
+# Issuer: CN=S-TRUST Authentication and Encryption Root CA 2005:PN,O=Deutscher Sparkassen Verlag GmbH,L=Stuttgart,ST=Baden-Wuerttemberg (BW),C=DE
+# Serial Number:37:19:18:e6:53:54:7c:1a:b5:b8:cb:59:5a:db:35:b7
+# Subject: CN=S-TRUST Authentication and Encryption Root CA 2005:PN,O=Deutscher Sparkassen Verlag GmbH,L=Stuttgart,ST=Baden-Wuerttemberg (BW),C=DE
+# Not Valid Before: Wed Jun 22 00:00:00 2005
+# Not Valid After : Fri Jun 21 23:59:59 2030
+# Fingerprint (MD5): 04:4B:FD:C9:6C:DA:2A:32:85:7C:59:84:61:46:8A:64
+# Fingerprint (SHA1): BE:B5:A9:95:74:6B:9E:DF:73:8B:56:E6:DF:43:7A:77:BE:10:6B:81
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "S-TRUST Authentication and Encryption Root CA 2005 PN"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\276\265\251\225\164\153\236\337\163\213\126\346\337\103\172\167
+\276\020\153\201
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\004\113\375\311\154\332\052\062\205\174\131\204\141\106\212\144
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\040\060\036\006\003\125\004\010\023\027\102\141\144\145\156
+\055\127\165\145\162\164\164\145\155\142\145\162\147\040\050\102
+\127\051\061\022\060\020\006\003\125\004\007\023\011\123\164\165
+\164\164\147\141\162\164\061\051\060\047\006\003\125\004\012\023
+\040\104\145\165\164\163\143\150\145\162\040\123\160\141\162\153
+\141\163\163\145\156\040\126\145\162\154\141\147\040\107\155\142
+\110\061\076\060\074\006\003\125\004\003\023\065\123\055\124\122
+\125\123\124\040\101\165\164\150\145\156\164\151\143\141\164\151
+\157\156\040\141\156\144\040\105\156\143\162\171\160\164\151\157
+\156\040\122\157\157\164\040\103\101\040\062\060\060\065\072\120
+\116
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\067\031\030\346\123\124\174\032\265\270\313\131\132\333
+\065\267
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Microsec e-Szigno Root CA"
+#
+# Issuer: CN=Microsec e-Szigno Root CA,OU=e-Szigno CA,O=Microsec Ltd.,L=Budapest,C=HU
+# Serial Number:00:cc:b8:e7:bf:4e:29:1a:fd:a2:dc:66:a5:1c:2c:0f:11
+# Subject: CN=Microsec e-Szigno Root CA,OU=e-Szigno CA,O=Microsec Ltd.,L=Budapest,C=HU
+# Not Valid Before: Wed Apr 06 12:28:44 2005
+# Not Valid After : Thu Apr 06 12:28:44 2017
+# Fingerprint (MD5): F0:96:B6:2F:C5:10:D5:67:8E:83:25:32:E8:5E:2E:E5
+# Fingerprint (SHA1): 23:88:C9:D3:71:CC:9E:96:3D:FF:7D:3C:A7:CE:FC:D6:25:EC:19:0D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Microsec e-Szigno Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\162\061\013\060\011\006\003\125\004\006\023\002\110\125\061
+\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160\145
+\163\164\061\026\060\024\006\003\125\004\012\023\015\115\151\143
+\162\157\163\145\143\040\114\164\144\056\061\024\060\022\006\003
+\125\004\013\023\013\145\055\123\172\151\147\156\157\040\103\101
+\061\042\060\040\006\003\125\004\003\023\031\115\151\143\162\157
+\163\145\143\040\145\055\123\172\151\147\156\157\040\122\157\157
+\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\162\061\013\060\011\006\003\125\004\006\023\002\110\125\061
+\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160\145
+\163\164\061\026\060\024\006\003\125\004\012\023\015\115\151\143
+\162\157\163\145\143\040\114\164\144\056\061\024\060\022\006\003
+\125\004\013\023\013\145\055\123\172\151\147\156\157\040\103\101
+\061\042\060\040\006\003\125\004\003\023\031\115\151\143\162\157
+\163\145\143\040\145\055\123\172\151\147\156\157\040\122\157\157
+\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\314\270\347\277\116\051\032\375\242\334\146\245\034
+\054\017\021
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\007\250\060\202\006\220\240\003\002\001\002\002\021\000
+\314\270\347\277\116\051\032\375\242\334\146\245\034\054\017\021
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\162\061\013\060\011\006\003\125\004\006\023\002\110\125\061\021
+\060\017\006\003\125\004\007\023\010\102\165\144\141\160\145\163
+\164\061\026\060\024\006\003\125\004\012\023\015\115\151\143\162
+\157\163\145\143\040\114\164\144\056\061\024\060\022\006\003\125
+\004\013\023\013\145\055\123\172\151\147\156\157\040\103\101\061
+\042\060\040\006\003\125\004\003\023\031\115\151\143\162\157\163
+\145\143\040\145\055\123\172\151\147\156\157\040\122\157\157\164
+\040\103\101\060\036\027\015\060\065\060\064\060\066\061\062\062
+\070\064\064\132\027\015\061\067\060\064\060\066\061\062\062\070
+\064\064\132\060\162\061\013\060\011\006\003\125\004\006\023\002
+\110\125\061\021\060\017\006\003\125\004\007\023\010\102\165\144
+\141\160\145\163\164\061\026\060\024\006\003\125\004\012\023\015
+\115\151\143\162\157\163\145\143\040\114\164\144\056\061\024\060
+\022\006\003\125\004\013\023\013\145\055\123\172\151\147\156\157
+\040\103\101\061\042\060\040\006\003\125\004\003\023\031\115\151
+\143\162\157\163\145\143\040\145\055\123\172\151\147\156\157\040
+\122\157\157\164\040\103\101\060\202\001\042\060\015\006\011\052
+\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060
+\202\001\012\002\202\001\001\000\355\310\000\325\201\173\315\070
+\000\107\314\333\204\301\041\151\054\164\220\014\041\331\123\207
+\355\076\103\104\123\257\253\370\200\233\074\170\215\324\215\256
+\270\357\323\021\334\201\346\317\073\226\214\326\157\025\306\167
+\176\241\057\340\137\222\266\047\327\166\232\035\103\074\352\331
+\354\057\356\071\363\152\147\113\213\202\317\042\370\145\125\376
+\054\313\057\175\110\172\075\165\371\252\240\047\273\170\302\006
+\312\121\302\176\146\113\257\315\242\247\115\002\202\077\202\254
+\205\306\341\017\220\107\231\224\012\161\162\223\052\311\246\300
+\276\074\126\114\163\222\047\361\153\265\365\375\374\060\005\140
+\222\306\353\226\176\001\221\302\151\261\036\035\173\123\105\270
+\334\101\037\311\213\161\326\124\024\343\213\124\170\077\276\364
+\142\073\133\365\243\354\325\222\164\342\164\060\357\001\333\341
+\324\253\231\233\052\153\370\275\246\034\206\043\102\137\354\111
+\336\232\213\133\364\162\072\100\305\111\076\245\276\216\252\161
+\353\154\372\365\032\344\152\375\173\175\125\100\357\130\156\346
+\331\325\274\044\253\301\357\267\002\003\001\000\001\243\202\004
+\067\060\202\004\063\060\147\006\010\053\006\001\005\005\007\001
+\001\004\133\060\131\060\050\006\010\053\006\001\005\005\007\060
+\001\206\034\150\164\164\160\163\072\057\057\162\143\141\056\145
+\055\163\172\151\147\156\157\056\150\165\057\157\143\163\160\060
+\055\006\010\053\006\001\005\005\007\060\002\206\041\150\164\164
+\160\072\057\057\167\167\167\056\145\055\163\172\151\147\156\157
+\056\150\165\057\122\157\157\164\103\101\056\143\162\164\060\017
+\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060
+\202\001\163\006\003\125\035\040\004\202\001\152\060\202\001\146
+\060\202\001\142\006\014\053\006\001\004\001\201\250\030\002\001
+\001\001\060\202\001\120\060\050\006\010\053\006\001\005\005\007
+\002\001\026\034\150\164\164\160\072\057\057\167\167\167\056\145
+\055\163\172\151\147\156\157\056\150\165\057\123\132\123\132\057
+\060\202\001\042\006\010\053\006\001\005\005\007\002\002\060\202
+\001\024\036\202\001\020\000\101\000\040\000\164\000\141\000\156
+\000\372\000\163\000\355\000\164\000\166\000\341\000\156\000\171
+\000\040\000\351\000\162\000\164\000\145\000\154\000\155\000\145
+\000\172\000\351\000\163\000\351\000\150\000\145\000\172\000\040
+\000\351\000\163\000\040\000\145\000\154\000\146\000\157\000\147
+\000\141\000\144\000\341\000\163\000\341\000\150\000\157\000\172
+\000\040\000\141\000\040\000\123\000\172\000\157\000\154\000\147
+\000\341\000\154\000\164\000\141\000\164\000\363\000\040\000\123
+\000\172\000\157\000\154\000\147\000\341\000\154\000\164\000\141
+\000\164\000\341\000\163\000\151\000\040\000\123\000\172\000\141
+\000\142\000\341\000\154\000\171\000\172\000\141\000\164\000\141
+\000\040\000\163\000\172\000\145\000\162\000\151\000\156\000\164
+\000\040\000\153\000\145\000\154\000\154\000\040\000\145\000\154
+\000\152\000\341\000\162\000\156\000\151\000\072\000\040\000\150
+\000\164\000\164\000\160\000\072\000\057\000\057\000\167\000\167
+\000\167\000\056\000\145\000\055\000\163\000\172\000\151\000\147
+\000\156\000\157\000\056\000\150\000\165\000\057\000\123\000\132
+\000\123\000\132\000\057\060\201\310\006\003\125\035\037\004\201
+\300\060\201\275\060\201\272\240\201\267\240\201\264\206\041\150
+\164\164\160\072\057\057\167\167\167\056\145\055\163\172\151\147
+\156\157\056\150\165\057\122\157\157\164\103\101\056\143\162\154
+\206\201\216\154\144\141\160\072\057\057\154\144\141\160\056\145
+\055\163\172\151\147\156\157\056\150\165\057\103\116\075\115\151
+\143\162\157\163\145\143\045\062\060\145\055\123\172\151\147\156
+\157\045\062\060\122\157\157\164\045\062\060\103\101\054\117\125
+\075\145\055\123\172\151\147\156\157\045\062\060\103\101\054\117
+\075\115\151\143\162\157\163\145\143\045\062\060\114\164\144\056
+\054\114\075\102\165\144\141\160\145\163\164\054\103\075\110\125
+\077\143\145\162\164\151\146\151\143\141\164\145\122\145\166\157
+\143\141\164\151\157\156\114\151\163\164\073\142\151\156\141\162
+\171\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\201\226\006\003\125\035\021\004\201\216\060\201\213\201
+\020\151\156\146\157\100\145\055\163\172\151\147\156\157\056\150
+\165\244\167\060\165\061\043\060\041\006\003\125\004\003\014\032
+\115\151\143\162\157\163\145\143\040\145\055\123\172\151\147\156
+\303\263\040\122\157\157\164\040\103\101\061\026\060\024\006\003
+\125\004\013\014\015\145\055\123\172\151\147\156\303\263\040\110
+\123\132\061\026\060\024\006\003\125\004\012\023\015\115\151\143
+\162\157\163\145\143\040\113\146\164\056\061\021\060\017\006\003
+\125\004\007\023\010\102\165\144\141\160\145\163\164\061\013\060
+\011\006\003\125\004\006\023\002\110\125\060\201\254\006\003\125
+\035\043\004\201\244\060\201\241\200\024\307\240\111\165\026\141
+\204\333\061\113\204\322\361\067\100\220\357\116\334\367\241\166
+\244\164\060\162\061\013\060\011\006\003\125\004\006\023\002\110
+\125\061\021\060\017\006\003\125\004\007\023\010\102\165\144\141
+\160\145\163\164\061\026\060\024\006\003\125\004\012\023\015\115
+\151\143\162\157\163\145\143\040\114\164\144\056\061\024\060\022
+\006\003\125\004\013\023\013\145\055\123\172\151\147\156\157\040
+\103\101\061\042\060\040\006\003\125\004\003\023\031\115\151\143
+\162\157\163\145\143\040\145\055\123\172\151\147\156\157\040\122
+\157\157\164\040\103\101\202\021\000\314\270\347\277\116\051\032
+\375\242\334\146\245\034\054\017\021\060\035\006\003\125\035\016
+\004\026\004\024\307\240\111\165\026\141\204\333\061\113\204\322
+\361\067\100\220\357\116\334\367\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\001\001\000\323\023\234\146
+\143\131\056\312\134\160\014\374\203\274\125\261\364\216\007\154
+\146\047\316\301\073\040\251\034\273\106\124\160\356\132\314\240
+\167\352\150\104\047\353\362\051\335\167\251\325\373\343\324\247
+\004\304\225\270\013\341\104\150\140\007\103\060\061\102\141\345
+\356\331\345\044\325\033\337\341\112\033\252\237\307\137\370\172
+\021\352\023\223\000\312\212\130\261\356\355\016\115\264\327\250
+\066\046\174\340\072\301\325\127\202\361\165\266\375\211\137\332
+\363\250\070\237\065\006\010\316\042\225\276\315\325\374\276\133
+\336\171\153\334\172\251\145\146\276\261\045\132\137\355\176\323
+\254\106\155\114\364\062\207\264\040\004\340\154\170\260\167\321
+\205\106\113\246\022\267\165\350\112\311\126\154\327\222\253\235
+\365\111\070\322\117\123\343\125\220\021\333\230\226\306\111\362
+\076\364\237\033\340\367\210\334\045\142\231\104\330\163\277\077
+\060\363\014\067\076\324\302\050\200\163\261\001\267\235\132\226
+\024\001\113\251\021\235\051\152\056\320\135\201\300\317\262\040
+\103\307\003\340\067\116\135\012\334\131\040\045
+END
+
+# Trust for Certificate "Microsec e-Szigno Root CA"
+# Issuer: CN=Microsec e-Szigno Root CA,OU=e-Szigno CA,O=Microsec Ltd.,L=Budapest,C=HU
+# Serial Number:00:cc:b8:e7:bf:4e:29:1a:fd:a2:dc:66:a5:1c:2c:0f:11
+# Subject: CN=Microsec e-Szigno Root CA,OU=e-Szigno CA,O=Microsec Ltd.,L=Budapest,C=HU
+# Not Valid Before: Wed Apr 06 12:28:44 2005
+# Not Valid After : Thu Apr 06 12:28:44 2017
+# Fingerprint (MD5): F0:96:B6:2F:C5:10:D5:67:8E:83:25:32:E8:5E:2E:E5
+# Fingerprint (SHA1): 23:88:C9:D3:71:CC:9E:96:3D:FF:7D:3C:A7:CE:FC:D6:25:EC:19:0D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Microsec e-Szigno Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\043\210\311\323\161\314\236\226\075\377\175\074\247\316\374\326
+\045\354\031\015
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\360\226\266\057\305\020\325\147\216\203\045\062\350\136\056\345
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\162\061\013\060\011\006\003\125\004\006\023\002\110\125\061
+\021\060\017\006\003\125\004\007\023\010\102\165\144\141\160\145
+\163\164\061\026\060\024\006\003\125\004\012\023\015\115\151\143
+\162\157\163\145\143\040\114\164\144\056\061\024\060\022\006\003
+\125\004\013\023\013\145\055\123\172\151\147\156\157\040\103\101
+\061\042\060\040\006\003\125\004\003\023\031\115\151\143\162\157
+\163\145\143\040\145\055\123\172\151\147\156\157\040\122\157\157
+\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\314\270\347\277\116\051\032\375\242\334\146\245\034
+\054\017\021
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Certigna"
+#
+# Issuer: CN=Certigna,O=Dhimyotis,C=FR
+# Serial Number:00:fe:dc:e3:01:0f:c9:48:ff
+# Subject: CN=Certigna,O=Dhimyotis,C=FR
+# Not Valid Before: Fri Jun 29 15:13:05 2007
+# Not Valid After : Tue Jun 29 15:13:05 2027
+# Fingerprint (MD5): AB:57:A6:5B:7D:42:82:19:B5:D8:58:26:28:5E:FD:FF
+# Fingerprint (SHA1): B1:2E:13:63:45:86:A4:6F:1A:B2:60:68:37:58:2D:C4:AC:FD:94:97
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certigna"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\064\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\022\060\020\006\003\125\004\012\014\011\104\150\151\155\171\157
+\164\151\163\061\021\060\017\006\003\125\004\003\014\010\103\145
+\162\164\151\147\156\141
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\064\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\022\060\020\006\003\125\004\012\014\011\104\150\151\155\171\157
+\164\151\163\061\021\060\017\006\003\125\004\003\014\010\103\145
+\162\164\151\147\156\141
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\376\334\343\001\017\311\110\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\250\060\202\002\220\240\003\002\001\002\002\011\000
+\376\334\343\001\017\311\110\377\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\060\064\061\013\060\011\006\003\125
+\004\006\023\002\106\122\061\022\060\020\006\003\125\004\012\014
+\011\104\150\151\155\171\157\164\151\163\061\021\060\017\006\003
+\125\004\003\014\010\103\145\162\164\151\147\156\141\060\036\027
+\015\060\067\060\066\062\071\061\065\061\063\060\065\132\027\015
+\062\067\060\066\062\071\061\065\061\063\060\065\132\060\064\061
+\013\060\011\006\003\125\004\006\023\002\106\122\061\022\060\020
+\006\003\125\004\012\014\011\104\150\151\155\171\157\164\151\163
+\061\021\060\017\006\003\125\004\003\014\010\103\145\162\164\151
+\147\156\141\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\310\150\361\311\326\326\263\064\165\046\202\036
+\354\264\276\352\134\341\046\355\021\107\141\341\242\174\026\170
+\100\041\344\140\236\132\310\143\341\304\261\226\222\377\030\155
+\151\043\341\053\142\367\335\342\066\057\221\007\271\110\317\016
+\354\171\266\054\347\064\113\160\010\045\243\074\207\033\031\362
+\201\007\017\070\220\031\323\021\376\206\264\362\321\136\036\036
+\226\315\200\154\316\073\061\223\266\362\240\320\251\225\022\175
+\245\232\314\153\310\204\126\212\063\251\347\042\025\123\026\360
+\314\027\354\127\137\351\242\012\230\011\336\343\137\234\157\334
+\110\343\205\013\025\132\246\272\237\254\110\343\011\262\367\364
+\062\336\136\064\276\034\170\135\102\133\316\016\042\217\115\220
+\327\175\062\030\263\013\054\152\277\216\077\024\021\211\040\016
+\167\024\265\075\224\010\207\367\045\036\325\262\140\000\354\157
+\052\050\045\156\052\076\030\143\027\045\077\076\104\040\026\366
+\046\310\045\256\005\112\264\347\143\054\363\214\026\123\176\134
+\373\021\032\010\301\106\142\237\042\270\361\302\215\151\334\372
+\072\130\006\337\002\003\001\000\001\243\201\274\060\201\271\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\035\006\003\125\035\016\004\026\004\024\032\355\376\101\071
+\220\264\044\131\276\001\362\122\325\105\366\132\071\334\021\060
+\144\006\003\125\035\043\004\135\060\133\200\024\032\355\376\101
+\071\220\264\044\131\276\001\362\122\325\105\366\132\071\334\021
+\241\070\244\066\060\064\061\013\060\011\006\003\125\004\006\023
+\002\106\122\061\022\060\020\006\003\125\004\012\014\011\104\150
+\151\155\171\157\164\151\163\061\021\060\017\006\003\125\004\003
+\014\010\103\145\162\164\151\147\156\141\202\011\000\376\334\343
+\001\017\311\110\377\060\016\006\003\125\035\017\001\001\377\004
+\004\003\002\001\006\060\021\006\011\140\206\110\001\206\370\102
+\001\001\004\004\003\002\000\007\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\001\001\000\205\003\036\222
+\161\366\102\257\341\243\141\236\353\363\300\017\362\245\324\332
+\225\346\326\276\150\066\075\176\156\037\114\212\357\321\017\041
+\155\136\245\122\143\316\022\370\357\052\332\157\353\067\376\023
+\002\307\313\073\076\042\153\332\141\056\177\324\162\075\335\060
+\341\036\114\100\031\214\017\327\234\321\203\060\173\230\131\334
+\175\306\271\014\051\114\241\063\242\353\147\072\145\204\323\226
+\342\355\166\105\160\217\265\053\336\371\043\326\111\156\074\024
+\265\306\237\065\036\120\320\301\217\152\160\104\002\142\313\256
+\035\150\101\247\252\127\350\123\252\007\322\006\366\325\024\006
+\013\221\003\165\054\154\162\265\141\225\232\015\213\271\015\347
+\365\337\124\315\336\346\330\326\011\010\227\143\345\301\056\260
+\267\104\046\300\046\300\257\125\060\236\073\325\066\052\031\004
+\364\134\036\377\317\054\267\377\320\375\207\100\021\325\021\043
+\273\110\300\041\251\244\050\055\375\025\370\260\116\053\364\060
+\133\041\374\021\221\064\276\101\357\173\235\227\165\377\227\225
+\300\226\130\057\352\273\106\327\273\344\331\056
+END
+
+# Trust for Certificate "Certigna"
+# Issuer: CN=Certigna,O=Dhimyotis,C=FR
+# Serial Number:00:fe:dc:e3:01:0f:c9:48:ff
+# Subject: CN=Certigna,O=Dhimyotis,C=FR
+# Not Valid Before: Fri Jun 29 15:13:05 2007
+# Not Valid After : Tue Jun 29 15:13:05 2027
+# Fingerprint (MD5): AB:57:A6:5B:7D:42:82:19:B5:D8:58:26:28:5E:FD:FF
+# Fingerprint (SHA1): B1:2E:13:63:45:86:A4:6F:1A:B2:60:68:37:58:2D:C4:AC:FD:94:97
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certigna"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\261\056\023\143\105\206\244\157\032\262\140\150\067\130\055\304
+\254\375\224\227
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\253\127\246\133\175\102\202\031\265\330\130\046\050\136\375\377
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\064\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\022\060\020\006\003\125\004\012\014\011\104\150\151\155\171\157
+\164\151\163\061\021\060\017\006\003\125\004\003\014\010\103\145
+\162\164\151\147\156\141
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\376\334\343\001\017\311\110\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AC Raiz Certicamara S.A."
+#
+# Issuer: CN=AC Ra..z Certic..mara S.A.,O=Sociedad Cameral de Certificaci..n Digital - Certic..mara S.A.,C=CO
+# Serial Number:07:7e:52:93:7b:e0:15:e3:57:f0:69:8c:cb:ec:0c
+# Subject: CN=AC Ra..z Certic..mara S.A.,O=Sociedad Cameral de Certificaci..n Digital - Certic..mara S.A.,C=CO
+# Not Valid Before: Mon Nov 27 20:46:29 2006
+# Not Valid After : Tue Apr 02 21:42:02 2030
+# Fingerprint (MD5): 93:2A:3E:F6:FD:23:69:0D:71:20:D4:2B:47:99:2B:A6
+# Fingerprint (SHA1): CB:A1:C5:F8:B0:E3:5E:B8:B9:45:12:D3:F9:34:A2:E9:06:10:D3:36
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AC Ra\xC3\xADz Certic\xC3\xA1mara S.A."
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\103\117\061
+\107\060\105\006\003\125\004\012\014\076\123\157\143\151\145\144
+\141\144\040\103\141\155\145\162\141\154\040\144\145\040\103\145
+\162\164\151\146\151\143\141\143\151\303\263\156\040\104\151\147
+\151\164\141\154\040\055\040\103\145\162\164\151\143\303\241\155
+\141\162\141\040\123\056\101\056\061\043\060\041\006\003\125\004
+\003\014\032\101\103\040\122\141\303\255\172\040\103\145\162\164
+\151\143\303\241\155\141\162\141\040\123\056\101\056
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\103\117\061
+\107\060\105\006\003\125\004\012\014\076\123\157\143\151\145\144
+\141\144\040\103\141\155\145\162\141\154\040\144\145\040\103\145
+\162\164\151\146\151\143\141\143\151\303\263\156\040\104\151\147
+\151\164\141\154\040\055\040\103\145\162\164\151\143\303\241\155
+\141\162\141\040\123\056\101\056\061\043\060\041\006\003\125\004
+\003\014\032\101\103\040\122\141\303\255\172\040\103\145\162\164
+\151\143\303\241\155\141\162\141\040\123\056\101\056
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\017\007\176\122\223\173\340\025\343\127\360\151\214\313\354
+\014
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\146\060\202\004\116\240\003\002\001\002\002\017\007
+\176\122\223\173\340\025\343\127\360\151\214\313\354\014\060\015
+\006\011\052\206\110\206\367\015\001\001\005\005\000\060\173\061
+\013\060\011\006\003\125\004\006\023\002\103\117\061\107\060\105
+\006\003\125\004\012\014\076\123\157\143\151\145\144\141\144\040
+\103\141\155\145\162\141\154\040\144\145\040\103\145\162\164\151
+\146\151\143\141\143\151\303\263\156\040\104\151\147\151\164\141
+\154\040\055\040\103\145\162\164\151\143\303\241\155\141\162\141
+\040\123\056\101\056\061\043\060\041\006\003\125\004\003\014\032
+\101\103\040\122\141\303\255\172\040\103\145\162\164\151\143\303
+\241\155\141\162\141\040\123\056\101\056\060\036\027\015\060\066
+\061\061\062\067\062\060\064\066\062\071\132\027\015\063\060\060
+\064\060\062\062\061\064\062\060\062\132\060\173\061\013\060\011
+\006\003\125\004\006\023\002\103\117\061\107\060\105\006\003\125
+\004\012\014\076\123\157\143\151\145\144\141\144\040\103\141\155
+\145\162\141\154\040\144\145\040\103\145\162\164\151\146\151\143
+\141\143\151\303\263\156\040\104\151\147\151\164\141\154\040\055
+\040\103\145\162\164\151\143\303\241\155\141\162\141\040\123\056
+\101\056\061\043\060\041\006\003\125\004\003\014\032\101\103\040
+\122\141\303\255\172\040\103\145\162\164\151\143\303\241\155\141
+\162\141\040\123\056\101\056\060\202\002\042\060\015\006\011\052
+\206\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060
+\202\002\012\002\202\002\001\000\253\153\211\243\123\314\110\043
+\010\373\303\317\121\226\010\056\270\010\172\155\074\220\027\206
+\251\351\355\056\023\064\107\262\320\160\334\311\074\320\215\312
+\356\113\027\253\320\205\260\247\043\004\313\250\242\374\345\165
+\333\100\312\142\211\217\120\236\001\075\046\133\030\204\034\313
+\174\067\267\175\354\323\177\163\031\260\152\262\330\210\212\055
+\105\164\250\367\263\270\300\324\332\315\042\211\164\115\132\025
+\071\163\030\164\117\265\353\231\247\301\036\210\264\302\223\220
+\143\227\363\247\247\022\262\011\042\007\063\331\221\315\016\234
+\037\016\040\307\356\273\063\215\217\302\322\130\247\137\375\145
+\067\342\210\302\330\217\206\165\136\371\055\247\207\063\362\170
+\067\057\213\274\035\206\067\071\261\224\362\330\274\112\234\203
+\030\132\006\374\363\324\324\272\214\025\011\045\360\371\266\215
+\004\176\027\022\063\153\127\110\114\117\333\046\036\353\314\220
+\347\213\371\150\174\160\017\243\052\320\072\070\337\067\227\342
+\133\336\200\141\323\200\330\221\203\102\132\114\004\211\150\021
+\074\254\137\150\200\101\314\140\102\316\015\132\052\014\017\233
+\060\300\246\360\206\333\253\111\327\227\155\110\213\371\003\300
+\122\147\233\022\367\302\362\056\230\145\102\331\326\232\343\320
+\031\061\014\255\207\325\127\002\172\060\350\206\046\373\217\043
+\212\124\207\344\277\074\356\353\303\165\110\137\036\071\157\201
+\142\154\305\055\304\027\124\031\267\067\215\234\067\221\310\366
+\013\325\352\143\157\203\254\070\302\363\077\336\232\373\341\043
+\141\360\310\046\313\066\310\241\363\060\217\244\243\242\241\335
+\123\263\336\360\232\062\037\203\221\171\060\301\251\037\123\233
+\123\242\025\123\077\335\235\263\020\073\110\175\211\017\374\355
+\003\365\373\045\144\165\016\027\031\015\217\000\026\147\171\172
+\100\374\055\131\007\331\220\372\232\255\075\334\200\212\346\134
+\065\242\147\114\021\153\261\370\200\144\000\055\157\042\141\305
+\254\113\046\345\132\020\202\233\244\203\173\064\367\236\211\221
+\040\227\216\267\102\307\146\303\320\351\244\326\365\040\215\304
+\303\225\254\104\012\235\133\163\074\046\075\057\112\276\247\311
+\247\020\036\373\237\120\151\363\002\003\001\000\001\243\201\346
+\060\201\343\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\035\006\003\125\035\016\004\026\004\024\321
+\011\320\351\327\316\171\164\124\371\072\060\263\364\155\054\003
+\003\033\150\060\201\240\006\003\125\035\040\004\201\230\060\201
+\225\060\201\222\006\004\125\035\040\000\060\201\211\060\053\006
+\010\053\006\001\005\005\007\002\001\026\037\150\164\164\160\072
+\057\057\167\167\167\056\143\145\162\164\151\143\141\155\141\162
+\141\056\143\157\155\057\144\160\143\057\060\132\006\010\053\006
+\001\005\005\007\002\002\060\116\032\114\114\151\155\151\164\141
+\143\151\157\156\145\163\040\144\145\040\147\141\162\141\156\164
+\355\141\163\040\144\145\040\145\163\164\145\040\143\145\162\164
+\151\146\151\143\141\144\157\040\163\145\040\160\165\145\144\145
+\156\040\145\156\143\157\156\164\162\141\162\040\145\156\040\154
+\141\040\104\120\103\056\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\002\001\000\134\224\265\270\105\221
+\115\216\141\037\003\050\017\123\174\346\244\131\251\263\212\172
+\305\260\377\010\174\054\243\161\034\041\023\147\241\225\022\100
+\065\203\203\217\164\333\063\134\360\111\166\012\201\122\335\111
+\324\232\062\063\357\233\247\313\165\345\172\313\227\022\220\134
+\272\173\305\233\337\273\071\043\310\377\230\316\012\115\042\001
+\110\007\176\212\300\325\040\102\224\104\357\277\167\242\211\147
+\110\033\100\003\005\241\211\354\317\142\343\075\045\166\146\277
+\046\267\273\042\276\157\377\071\127\164\272\172\311\001\225\301
+\225\121\350\253\054\370\261\206\040\351\077\313\065\133\322\027
+\351\052\376\203\023\027\100\356\210\142\145\133\325\073\140\351
+\173\074\270\311\325\177\066\002\045\252\150\302\061\025\267\060
+\145\353\177\035\110\171\261\317\071\342\102\200\026\323\365\223
+\043\374\114\227\311\132\067\154\174\042\330\112\315\322\216\066
+\203\071\221\220\020\310\361\311\065\176\077\270\323\201\306\040
+\144\032\266\120\302\041\244\170\334\320\057\073\144\223\164\360
+\226\220\361\357\373\011\132\064\100\226\360\066\022\301\243\164
+\214\223\176\101\336\167\213\354\206\331\322\017\077\055\321\314
+\100\242\211\146\110\036\040\263\234\043\131\163\251\104\163\274
+\044\171\220\126\067\263\306\051\176\243\017\361\051\071\357\176
+\134\050\062\160\065\254\332\270\310\165\146\374\233\114\071\107
+\216\033\157\233\115\002\124\042\063\357\141\272\236\051\204\357
+\116\113\063\107\166\227\152\313\176\137\375\025\246\236\102\103
+\133\146\132\212\210\015\367\026\271\077\121\145\053\146\152\213
+\321\070\122\242\326\106\021\372\374\232\034\164\236\217\227\013
+\002\117\144\306\365\150\323\113\055\377\244\067\036\213\077\277
+\104\276\141\106\241\204\075\010\047\114\201\040\167\211\010\352
+\147\100\136\154\010\121\137\064\132\214\226\150\315\327\367\211
+\302\034\323\062\000\257\122\313\323\140\133\052\072\107\176\153
+\060\063\241\142\051\177\112\271\341\055\347\024\043\016\016\030
+\107\341\171\374\025\125\320\261\374\045\161\143\165\063\034\043
+\053\257\134\331\355\107\167\140\016\073\017\036\322\300\334\144
+\005\211\374\170\326\134\054\046\103\251
+END
+
+# Trust for Certificate "AC Raiz Certicamara S.A."
+# Issuer: CN=AC Ra..z Certic..mara S.A.,O=Sociedad Cameral de Certificaci..n Digital - Certic..mara S.A.,C=CO
+# Serial Number:07:7e:52:93:7b:e0:15:e3:57:f0:69:8c:cb:ec:0c
+# Subject: CN=AC Ra..z Certic..mara S.A.,O=Sociedad Cameral de Certificaci..n Digital - Certic..mara S.A.,C=CO
+# Not Valid Before: Mon Nov 27 20:46:29 2006
+# Not Valid After : Tue Apr 02 21:42:02 2030
+# Fingerprint (MD5): 93:2A:3E:F6:FD:23:69:0D:71:20:D4:2B:47:99:2B:A6
+# Fingerprint (SHA1): CB:A1:C5:F8:B0:E3:5E:B8:B9:45:12:D3:F9:34:A2:E9:06:10:D3:36
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AC Ra\xC3\xADz Certic\xC3\xA1mara S.A."
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\313\241\305\370\260\343\136\270\271\105\022\323\371\064\242\351
+\006\020\323\066
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\223\052\076\366\375\043\151\015\161\040\324\053\107\231\053\246
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\103\117\061
+\107\060\105\006\003\125\004\012\014\076\123\157\143\151\145\144
+\141\144\040\103\141\155\145\162\141\154\040\144\145\040\103\145
+\162\164\151\146\151\143\141\143\151\303\263\156\040\104\151\147
+\151\164\141\154\040\055\040\103\145\162\164\151\143\303\241\155
+\141\162\141\040\123\056\101\056\061\043\060\041\006\003\125\004
+\003\014\032\101\103\040\122\141\303\255\172\040\103\145\162\164
+\151\143\303\241\155\141\162\141\040\123\056\101\056
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\017\007\176\122\223\173\340\025\343\127\360\151\214\313\354
+\014
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TC TrustCenter Class 2 CA II"
+#
+# Issuer: CN=TC TrustCenter Class 2 CA II,OU=TC TrustCenter Class 2 CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:2e:6a:00:01:00:02:1f:d7:52:21:2c:11:5c:3b
+# Subject: CN=TC TrustCenter Class 2 CA II,OU=TC TrustCenter Class 2 CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Thu Jan 12 14:38:43 2006
+# Not Valid After : Wed Dec 31 22:59:59 2025
+# Fingerprint (MD5): CE:78:33:5C:59:78:01:6E:18:EA:B9:36:A0:B9:2E:23
+# Fingerprint (SHA1): AE:50:83:ED:7C:F4:5C:BC:8F:61:C6:21:FE:68:5D:79:42:21:15:6E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Class 2 CA II"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\166\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\042\060
+\040\006\003\125\004\013\023\031\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\062\040\103
+\101\061\045\060\043\006\003\125\004\003\023\034\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\062\040\103\101\040\111\111
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\166\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\042\060
+\040\006\003\125\004\013\023\031\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\062\040\103
+\101\061\045\060\043\006\003\125\004\003\023\034\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\062\040\103\101\040\111\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\056\152\000\001\000\002\037\327\122\041\054\021\134\073
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\252\060\202\003\222\240\003\002\001\002\002\016\056
+\152\000\001\000\002\037\327\122\041\054\021\134\073\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\060\166\061\013
+\060\011\006\003\125\004\006\023\002\104\105\061\034\060\032\006
+\003\125\004\012\023\023\124\103\040\124\162\165\163\164\103\145
+\156\164\145\162\040\107\155\142\110\061\042\060\040\006\003\125
+\004\013\023\031\124\103\040\124\162\165\163\164\103\145\156\164
+\145\162\040\103\154\141\163\163\040\062\040\103\101\061\045\060
+\043\006\003\125\004\003\023\034\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\062\040\103
+\101\040\111\111\060\036\027\015\060\066\060\061\061\062\061\064
+\063\070\064\063\132\027\015\062\065\061\062\063\061\062\062\065
+\071\065\071\132\060\166\061\013\060\011\006\003\125\004\006\023
+\002\104\105\061\034\060\032\006\003\125\004\012\023\023\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\107\155\142
+\110\061\042\060\040\006\003\125\004\013\023\031\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\062\040\103\101\061\045\060\043\006\003\125\004\003\023\034
+\124\103\040\124\162\165\163\164\103\145\156\164\145\162\040\103
+\154\141\163\163\040\062\040\103\101\040\111\111\060\202\001\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\001\017\000\060\202\001\012\002\202\001\001\000\253\200\207
+\233\216\360\303\174\207\327\350\044\202\021\263\074\335\103\142
+\356\370\303\105\332\350\341\240\137\321\052\262\352\223\150\337
+\264\310\326\103\351\304\165\131\177\374\341\035\370\061\160\043
+\033\210\236\047\271\173\375\072\322\311\251\351\024\057\220\276
+\003\122\301\111\315\366\375\344\010\146\013\127\212\242\102\240
+\270\325\177\151\134\220\062\262\227\015\312\112\334\106\076\002
+\125\211\123\343\032\132\313\066\306\007\126\367\214\317\021\364
+\114\273\060\160\004\225\245\366\071\214\375\163\201\010\175\211
+\136\062\036\042\251\042\105\113\260\146\056\060\314\237\145\375
+\374\313\201\251\361\340\073\257\243\206\321\211\352\304\105\171
+\120\135\256\351\041\164\222\115\213\131\202\217\224\343\351\112
+\361\347\111\260\024\343\365\142\313\325\162\275\037\271\322\237
+\240\315\250\372\001\310\331\015\337\332\374\107\235\263\310\124
+\337\111\112\361\041\251\376\030\116\356\110\324\031\273\357\175
+\344\342\235\313\133\266\156\377\343\315\132\347\164\202\005\272
+\200\045\070\313\344\151\236\257\101\252\032\204\365\002\003\001
+\000\001\243\202\001\064\060\202\001\060\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125
+\035\016\004\026\004\024\343\253\124\114\200\241\333\126\103\267
+\221\112\313\363\202\172\023\134\010\253\060\201\355\006\003\125
+\035\037\004\201\345\060\201\342\060\201\337\240\201\334\240\201
+\331\206\065\150\164\164\160\072\057\057\167\167\167\056\164\162
+\165\163\164\143\145\156\164\145\162\056\144\145\057\143\162\154
+\057\166\062\057\164\143\137\143\154\141\163\163\137\062\137\143
+\141\137\111\111\056\143\162\154\206\201\237\154\144\141\160\072
+\057\057\167\167\167\056\164\162\165\163\164\143\145\156\164\145
+\162\056\144\145\057\103\116\075\124\103\045\062\060\124\162\165
+\163\164\103\145\156\164\145\162\045\062\060\103\154\141\163\163
+\045\062\060\062\045\062\060\103\101\045\062\060\111\111\054\117
+\075\124\103\045\062\060\124\162\165\163\164\103\145\156\164\145
+\162\045\062\060\107\155\142\110\054\117\125\075\162\157\157\164
+\143\145\162\164\163\054\104\103\075\164\162\165\163\164\143\145
+\156\164\145\162\054\104\103\075\144\145\077\143\145\162\164\151
+\146\151\143\141\164\145\122\145\166\157\143\141\164\151\157\156
+\114\151\163\164\077\142\141\163\145\077\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\214\327
+\337\176\356\033\200\020\263\203\365\333\021\352\153\113\250\222
+\030\331\367\007\071\365\054\276\006\165\172\150\123\025\034\352
+\112\355\136\374\043\262\023\240\323\011\377\366\366\056\153\101
+\161\171\315\342\155\375\256\131\153\205\035\270\116\042\232\355
+\146\071\156\113\224\346\125\374\013\033\213\167\301\123\023\146
+\211\331\050\326\213\363\105\112\143\267\375\173\013\141\135\270
+\155\276\303\334\133\171\322\355\206\345\242\115\276\136\164\174
+\152\355\026\070\037\177\130\201\132\032\353\062\210\055\262\363
+\071\167\200\257\136\266\141\165\051\333\043\115\210\312\120\050
+\313\205\322\323\020\242\131\156\323\223\124\000\172\242\106\225
+\206\005\234\251\031\230\345\061\162\014\000\342\147\331\100\340
+\044\063\173\157\054\271\134\253\145\235\054\254\166\352\065\231
+\365\227\271\017\044\354\307\166\041\050\145\256\127\350\007\210
+\165\112\126\240\322\005\072\244\346\215\222\210\054\363\362\341
+\301\306\141\333\101\305\307\233\367\016\032\121\105\302\141\153
+\334\144\047\027\214\132\267\332\164\050\315\227\344\275
+END
+
+# Trust for Certificate "TC TrustCenter Class 2 CA II"
+# Issuer: CN=TC TrustCenter Class 2 CA II,OU=TC TrustCenter Class 2 CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:2e:6a:00:01:00:02:1f:d7:52:21:2c:11:5c:3b
+# Subject: CN=TC TrustCenter Class 2 CA II,OU=TC TrustCenter Class 2 CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Thu Jan 12 14:38:43 2006
+# Not Valid After : Wed Dec 31 22:59:59 2025
+# Fingerprint (MD5): CE:78:33:5C:59:78:01:6E:18:EA:B9:36:A0:B9:2E:23
+# Fingerprint (SHA1): AE:50:83:ED:7C:F4:5C:BC:8F:61:C6:21:FE:68:5D:79:42:21:15:6E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Class 2 CA II"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\256\120\203\355\174\364\134\274\217\141\306\041\376\150\135\171
+\102\041\025\156
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\316\170\063\134\131\170\001\156\030\352\271\066\240\271\056\043
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\166\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\042\060
+\040\006\003\125\004\013\023\031\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\062\040\103
+\101\061\045\060\043\006\003\125\004\003\023\034\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\062\040\103\101\040\111\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\056\152\000\001\000\002\037\327\122\041\054\021\134\073
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TC TrustCenter Class 3 CA II"
+#
+# Issuer: CN=TC TrustCenter Class 3 CA II,OU=TC TrustCenter Class 3 CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:4a:47:00:01:00:02:e5:a0:5d:d6:3f:00:51:bf
+# Subject: CN=TC TrustCenter Class 3 CA II,OU=TC TrustCenter Class 3 CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Thu Jan 12 14:41:57 2006
+# Not Valid After : Wed Dec 31 22:59:59 2025
+# Fingerprint (MD5): 56:5F:AA:80:61:12:17:F6:67:21:E6:2B:6D:61:56:8E
+# Fingerprint (SHA1): 80:25:EF:F4:6E:70:C8:D4:72:24:65:84:FE:40:3B:8A:8D:6A:DB:F5
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Class 3 CA II"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\166\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\042\060
+\040\006\003\125\004\013\023\031\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\063\040\103
+\101\061\045\060\043\006\003\125\004\003\023\034\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\063\040\103\101\040\111\111
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\166\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\042\060
+\040\006\003\125\004\013\023\031\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\063\040\103
+\101\061\045\060\043\006\003\125\004\003\023\034\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\063\040\103\101\040\111\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\112\107\000\001\000\002\345\240\135\326\077\000\121\277
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\252\060\202\003\222\240\003\002\001\002\002\016\112
+\107\000\001\000\002\345\240\135\326\077\000\121\277\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\060\166\061\013
+\060\011\006\003\125\004\006\023\002\104\105\061\034\060\032\006
+\003\125\004\012\023\023\124\103\040\124\162\165\163\164\103\145
+\156\164\145\162\040\107\155\142\110\061\042\060\040\006\003\125
+\004\013\023\031\124\103\040\124\162\165\163\164\103\145\156\164
+\145\162\040\103\154\141\163\163\040\063\040\103\101\061\045\060
+\043\006\003\125\004\003\023\034\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\063\040\103
+\101\040\111\111\060\036\027\015\060\066\060\061\061\062\061\064
+\064\061\065\067\132\027\015\062\065\061\062\063\061\062\062\065
+\071\065\071\132\060\166\061\013\060\011\006\003\125\004\006\023
+\002\104\105\061\034\060\032\006\003\125\004\012\023\023\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\107\155\142
+\110\061\042\060\040\006\003\125\004\013\023\031\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\063\040\103\101\061\045\060\043\006\003\125\004\003\023\034
+\124\103\040\124\162\165\163\164\103\145\156\164\145\162\040\103
+\154\141\163\163\040\063\040\103\101\040\111\111\060\202\001\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\001\017\000\060\202\001\012\002\202\001\001\000\264\340\273
+\121\273\071\134\213\004\305\114\171\034\043\206\061\020\143\103
+\125\047\077\306\105\307\244\075\354\011\015\032\036\040\302\126
+\036\336\033\067\007\060\042\057\157\361\006\361\253\255\326\310
+\253\141\243\057\103\304\260\262\055\374\303\226\151\173\176\212
+\344\314\300\071\022\220\102\140\311\314\065\150\356\332\137\220
+\126\137\315\034\115\133\130\111\353\016\001\117\144\372\054\074
+\211\130\330\057\056\342\260\150\351\042\073\165\211\326\104\032
+\145\362\033\227\046\035\050\155\254\350\275\131\035\053\044\366
+\326\204\003\146\210\044\000\170\140\361\370\253\376\002\262\153
+\373\042\373\065\346\026\321\255\366\056\022\344\372\065\152\345
+\031\271\135\333\073\036\032\373\323\377\025\024\010\330\011\152
+\272\105\235\024\171\140\175\257\100\212\007\163\263\223\226\323
+\164\064\215\072\067\051\336\134\354\365\356\056\061\302\040\334
+\276\361\117\177\043\122\331\133\342\144\331\234\252\007\010\265
+\105\275\321\320\061\301\253\124\237\251\322\303\142\140\003\361
+\273\071\112\222\112\075\012\271\235\305\240\376\067\002\003\001
+\000\001\243\202\001\064\060\202\001\060\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125
+\035\016\004\026\004\024\324\242\374\237\263\303\330\003\323\127
+\134\007\244\320\044\247\300\362\000\324\060\201\355\006\003\125
+\035\037\004\201\345\060\201\342\060\201\337\240\201\334\240\201
+\331\206\065\150\164\164\160\072\057\057\167\167\167\056\164\162
+\165\163\164\143\145\156\164\145\162\056\144\145\057\143\162\154
+\057\166\062\057\164\143\137\143\154\141\163\163\137\063\137\143
+\141\137\111\111\056\143\162\154\206\201\237\154\144\141\160\072
+\057\057\167\167\167\056\164\162\165\163\164\143\145\156\164\145
+\162\056\144\145\057\103\116\075\124\103\045\062\060\124\162\165
+\163\164\103\145\156\164\145\162\045\062\060\103\154\141\163\163
+\045\062\060\063\045\062\060\103\101\045\062\060\111\111\054\117
+\075\124\103\045\062\060\124\162\165\163\164\103\145\156\164\145
+\162\045\062\060\107\155\142\110\054\117\125\075\162\157\157\164
+\143\145\162\164\163\054\104\103\075\164\162\165\163\164\143\145
+\156\164\145\162\054\104\103\075\144\145\077\143\145\162\164\151
+\146\151\143\141\164\145\122\145\166\157\143\141\164\151\157\156
+\114\151\163\164\077\142\141\163\145\077\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\001\001\000\066\140
+\344\160\367\006\040\103\331\043\032\102\362\370\243\262\271\115
+\212\264\363\302\232\125\061\174\304\073\147\232\264\337\115\016
+\212\223\112\027\213\033\215\312\211\341\317\072\036\254\035\361
+\234\062\264\216\131\166\242\101\205\045\067\240\023\320\365\174
+\116\325\352\226\342\156\162\301\273\052\376\154\156\370\221\230
+\106\374\311\033\127\133\352\310\032\073\077\260\121\230\074\007
+\332\054\131\001\332\213\104\350\341\164\375\247\150\335\124\272
+\203\106\354\310\106\265\370\257\227\300\073\011\034\217\316\162
+\226\075\063\126\160\274\226\313\330\325\175\040\232\203\237\032
+\334\071\361\305\162\243\021\003\375\073\102\122\051\333\350\001
+\367\233\136\214\326\215\206\116\031\372\274\034\276\305\041\245
+\207\236\170\056\066\333\011\161\243\162\064\370\154\343\006\011
+\362\136\126\245\323\335\230\372\324\346\006\364\360\266\040\143
+\113\352\051\275\252\202\146\036\373\201\252\247\067\255\023\030
+\346\222\303\201\301\063\273\210\036\241\347\342\264\275\061\154
+\016\121\075\157\373\226\126\200\342\066\027\321\334\344
+END
+
+# Trust for Certificate "TC TrustCenter Class 3 CA II"
+# Issuer: CN=TC TrustCenter Class 3 CA II,OU=TC TrustCenter Class 3 CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:4a:47:00:01:00:02:e5:a0:5d:d6:3f:00:51:bf
+# Subject: CN=TC TrustCenter Class 3 CA II,OU=TC TrustCenter Class 3 CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Thu Jan 12 14:41:57 2006
+# Not Valid After : Wed Dec 31 22:59:59 2025
+# Fingerprint (MD5): 56:5F:AA:80:61:12:17:F6:67:21:E6:2B:6D:61:56:8E
+# Fingerprint (SHA1): 80:25:EF:F4:6E:70:C8:D4:72:24:65:84:FE:40:3B:8A:8D:6A:DB:F5
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Class 3 CA II"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\200\045\357\364\156\160\310\324\162\044\145\204\376\100\073\212
+\215\152\333\365
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\126\137\252\200\141\022\027\366\147\041\346\053\155\141\126\216
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\166\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\042\060
+\040\006\003\125\004\013\023\031\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\103\154\141\163\163\040\063\040\103
+\101\061\045\060\043\006\003\125\004\003\023\034\124\103\040\124
+\162\165\163\164\103\145\156\164\145\162\040\103\154\141\163\163
+\040\063\040\103\101\040\111\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\112\107\000\001\000\002\345\240\135\326\077\000\121\277
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TC TrustCenter Universal CA I"
+#
+# Issuer: CN=TC TrustCenter Universal CA I,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:1d:a2:00:01:00:02:ec:b7:60:80:78:8d:b6:06
+# Subject: CN=TC TrustCenter Universal CA I,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Wed Mar 22 15:54:28 2006
+# Not Valid After : Wed Dec 31 22:59:59 2025
+# Fingerprint (MD5): 45:E1:A5:72:C5:A9:36:64:40:9E:F5:E4:58:84:67:8C
+# Fingerprint (SHA1): 6B:2F:34:AD:89:58:BE:62:FD:B0:6B:5C:CE:BB:9D:D9:4F:4E:39:F3
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Universal CA I"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\171\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\044\060
+\042\006\003\125\004\013\023\033\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\125\156\151\166\145\162\163\141\154
+\040\103\101\061\046\060\044\006\003\125\004\003\023\035\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\125\156\151
+\166\145\162\163\141\154\040\103\101\040\111
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\171\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\044\060
+\042\006\003\125\004\013\023\033\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\125\156\151\166\145\162\163\141\154
+\040\103\101\061\046\060\044\006\003\125\004\003\023\035\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\125\156\151
+\166\145\162\163\141\154\040\103\101\040\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\035\242\000\001\000\002\354\267\140\200\170\215\266\006
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\335\060\202\002\305\240\003\002\001\002\002\016\035
+\242\000\001\000\002\354\267\140\200\170\215\266\006\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\060\171\061\013
+\060\011\006\003\125\004\006\023\002\104\105\061\034\060\032\006
+\003\125\004\012\023\023\124\103\040\124\162\165\163\164\103\145
+\156\164\145\162\040\107\155\142\110\061\044\060\042\006\003\125
+\004\013\023\033\124\103\040\124\162\165\163\164\103\145\156\164
+\145\162\040\125\156\151\166\145\162\163\141\154\040\103\101\061
+\046\060\044\006\003\125\004\003\023\035\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\125\156\151\166\145\162\163
+\141\154\040\103\101\040\111\060\036\027\015\060\066\060\063\062
+\062\061\065\065\064\062\070\132\027\015\062\065\061\062\063\061
+\062\062\065\071\065\071\132\060\171\061\013\060\011\006\003\125
+\004\006\023\002\104\105\061\034\060\032\006\003\125\004\012\023
+\023\124\103\040\124\162\165\163\164\103\145\156\164\145\162\040
+\107\155\142\110\061\044\060\042\006\003\125\004\013\023\033\124
+\103\040\124\162\165\163\164\103\145\156\164\145\162\040\125\156
+\151\166\145\162\163\141\154\040\103\101\061\046\060\044\006\003
+\125\004\003\023\035\124\103\040\124\162\165\163\164\103\145\156
+\164\145\162\040\125\156\151\166\145\162\163\141\154\040\103\101
+\040\111\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\244\167\043\226\104\257\220\364\061\247\020\364\046
+\207\234\363\070\331\017\136\336\317\101\350\061\255\306\164\221
+\044\226\170\036\011\240\233\232\225\112\112\365\142\174\002\250
+\312\254\373\132\004\166\071\336\137\361\371\263\277\363\003\130
+\125\322\252\267\343\004\042\321\370\224\332\042\010\000\215\323
+\174\046\135\314\167\171\347\054\170\071\250\046\163\016\242\135
+\045\151\205\117\125\016\232\357\306\271\104\341\127\075\337\037
+\124\042\345\157\145\252\063\204\072\363\316\172\276\125\227\256
+\215\022\017\024\063\342\120\160\303\111\207\023\274\121\336\327
+\230\022\132\357\072\203\063\222\006\165\213\222\174\022\150\173
+\160\152\017\265\233\266\167\133\110\131\235\344\357\132\255\363
+\301\236\324\327\105\116\312\126\064\041\274\076\027\133\157\167
+\014\110\001\103\051\260\335\077\226\156\346\225\252\014\300\040
+\266\375\076\066\047\234\343\134\317\116\201\334\031\273\221\220
+\175\354\346\227\004\036\223\314\042\111\327\227\206\266\023\012
+\074\103\043\167\176\360\334\346\315\044\037\073\203\233\064\072
+\203\064\343\002\003\001\000\001\243\143\060\141\060\037\006\003
+\125\035\043\004\030\060\026\200\024\222\244\165\054\244\236\276
+\201\104\353\171\374\212\305\225\245\353\020\165\163\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\206\060\035
+\006\003\125\035\016\004\026\004\024\222\244\165\054\244\236\276
+\201\104\353\171\374\212\305\225\245\353\020\165\163\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\050\322\340\206\325\346\370\173\360\227\334\042\153\073\225
+\024\126\017\021\060\245\232\117\072\260\072\340\006\313\145\365
+\355\306\227\047\376\045\362\127\346\136\225\214\076\144\140\025
+\132\177\057\015\001\305\261\140\375\105\065\317\360\262\277\006
+\331\357\132\276\263\142\041\264\327\253\065\174\123\076\246\047
+\361\241\055\332\032\043\235\314\335\354\074\055\236\047\064\135
+\017\302\066\171\274\311\112\142\055\355\153\331\175\101\103\174
+\266\252\312\355\141\261\067\202\025\011\032\212\026\060\330\354
+\311\326\107\162\170\113\020\106\024\216\137\016\257\354\307\057
+\253\020\327\266\361\156\354\206\262\302\350\015\222\163\334\242
+\364\017\072\277\141\043\020\211\234\110\100\156\160\000\263\323
+\272\067\104\130\021\172\002\152\210\360\067\064\360\031\351\254
+\324\145\163\366\151\214\144\224\072\171\205\051\260\026\053\014
+\202\077\006\234\307\375\020\053\236\017\054\266\236\343\025\277
+\331\066\034\272\045\032\122\075\032\354\042\014\034\340\244\242
+\075\360\350\071\317\201\300\173\355\135\037\157\305\320\013\327
+\230
+END
+
+# Trust for Certificate "TC TrustCenter Universal CA I"
+# Issuer: CN=TC TrustCenter Universal CA I,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:1d:a2:00:01:00:02:ec:b7:60:80:78:8d:b6:06
+# Subject: CN=TC TrustCenter Universal CA I,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Wed Mar 22 15:54:28 2006
+# Not Valid After : Wed Dec 31 22:59:59 2025
+# Fingerprint (MD5): 45:E1:A5:72:C5:A9:36:64:40:9E:F5:E4:58:84:67:8C
+# Fingerprint (SHA1): 6B:2F:34:AD:89:58:BE:62:FD:B0:6B:5C:CE:BB:9D:D9:4F:4E:39:F3
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Universal CA I"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\153\057\064\255\211\130\276\142\375\260\153\134\316\273\235\331
+\117\116\071\363
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\105\341\245\162\305\251\066\144\100\236\365\344\130\204\147\214
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\171\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\044\060
+\042\006\003\125\004\013\023\033\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\125\156\151\166\145\162\163\141\154
+\040\103\101\061\046\060\044\006\003\125\004\003\023\035\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\125\156\151
+\166\145\162\163\141\154\040\103\101\040\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\035\242\000\001\000\002\354\267\140\200\170\215\266\006
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Deutsche Telekom Root CA 2"
+#
+# Issuer: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
+# Serial Number: 38 (0x26)
+# Subject: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
+# Not Valid Before: Fri Jul 09 12:11:00 1999
+# Not Valid After : Tue Jul 09 23:59:00 2019
+# Fingerprint (MD5): 74:01:4A:91:B1:08:C4:58:CE:47:CD:F0:DD:11:53:08
+# Fingerprint (SHA1): 85:A4:08:C0:9C:19:3E:5D:51:58:7D:CD:D6:13:30:FD:8C:DE:37:BF
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Deutsche Telekom Root CA 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143
+\150\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060
+\035\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145
+\143\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043
+\060\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150
+\145\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103
+\101\040\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143
+\150\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060
+\035\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145
+\143\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043
+\060\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150
+\145\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103
+\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\046
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\237\060\202\002\207\240\003\002\001\002\002\001\046
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061\034
+\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143\150
+\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060\035
+\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145\143
+\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043\060
+\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150\145
+\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103\101
+\040\062\060\036\027\015\071\071\060\067\060\071\061\062\061\061
+\060\060\132\027\015\061\071\060\067\060\071\062\063\065\071\060
+\060\132\060\161\061\013\060\011\006\003\125\004\006\023\002\104
+\105\061\034\060\032\006\003\125\004\012\023\023\104\145\165\164
+\163\143\150\145\040\124\145\154\145\153\157\155\040\101\107\061
+\037\060\035\006\003\125\004\013\023\026\124\055\124\145\154\145
+\123\145\143\040\124\162\165\163\164\040\103\145\156\164\145\162
+\061\043\060\041\006\003\125\004\003\023\032\104\145\165\164\163
+\143\150\145\040\124\145\154\145\153\157\155\040\122\157\157\164
+\040\103\101\040\062\060\202\001\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
+\012\002\202\001\001\000\253\013\243\065\340\213\051\024\261\024
+\205\257\074\020\344\071\157\065\135\112\256\335\352\141\215\225
+\111\364\157\144\243\032\140\146\244\251\100\042\204\331\324\245
+\345\170\223\016\150\001\255\271\115\134\072\316\323\270\250\102
+\100\337\317\243\272\202\131\152\222\033\254\034\232\332\010\053
+\045\047\371\151\043\107\361\340\353\054\172\233\365\023\002\320
+\176\064\174\302\236\074\000\131\253\365\332\014\365\062\074\053
+\254\120\332\326\303\336\203\224\312\250\014\231\062\016\010\110
+\126\133\152\373\332\341\130\130\001\111\137\162\101\074\025\006
+\001\216\135\255\252\270\223\264\315\236\353\247\350\152\055\122
+\064\333\072\357\134\165\121\332\333\363\061\371\356\161\230\062
+\304\124\025\104\014\371\233\125\355\255\337\030\010\240\243\206
+\212\111\356\123\005\217\031\114\325\336\130\171\233\322\152\034
+\102\253\305\325\247\317\150\017\226\344\341\141\230\166\141\310
+\221\174\326\076\000\342\221\120\207\341\235\012\346\255\227\322
+\035\306\072\175\313\274\332\003\064\325\216\133\001\365\152\007
+\267\026\266\156\112\177\002\003\001\000\001\243\102\060\100\060
+\035\006\003\125\035\016\004\026\004\024\061\303\171\033\272\365
+\123\327\027\340\211\172\055\027\154\012\263\053\235\063\060\017
+\006\003\125\035\023\004\010\060\006\001\001\377\002\001\005\060
+\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\224\144\131\255\071\144\347\051\353\023\376\132\303
+\213\023\127\310\004\044\360\164\167\300\140\343\147\373\351\211
+\246\203\277\226\202\174\156\324\303\075\357\236\200\156\273\051
+\264\230\172\261\073\124\353\071\027\107\176\032\216\013\374\037
+\061\131\061\004\262\316\027\363\054\307\142\066\125\342\042\330
+\211\125\264\230\110\252\144\372\326\034\066\330\104\170\132\132
+\043\072\127\227\365\172\060\117\256\237\152\114\113\053\216\240
+\003\343\076\340\251\324\322\173\322\263\250\342\162\074\255\236
+\377\200\131\344\233\105\264\366\073\260\315\071\031\230\062\345
+\352\041\141\220\344\061\041\216\064\261\367\057\065\112\205\020
+\332\347\212\067\041\276\131\143\340\362\205\210\061\123\324\124
+\024\205\160\171\364\056\006\167\047\165\057\037\270\212\371\376
+\305\272\330\066\344\203\354\347\145\267\277\143\132\363\106\257
+\201\224\067\324\101\214\326\043\326\036\317\365\150\033\104\143
+\242\132\272\247\065\131\241\345\160\005\233\016\043\127\231\224
+\012\155\272\071\143\050\206\222\363\030\204\330\373\321\317\005
+\126\144\127
+END
+
+# Trust for Certificate "Deutsche Telekom Root CA 2"
+# Issuer: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
+# Serial Number: 38 (0x26)
+# Subject: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
+# Not Valid Before: Fri Jul 09 12:11:00 1999
+# Not Valid After : Tue Jul 09 23:59:00 2019
+# Fingerprint (MD5): 74:01:4A:91:B1:08:C4:58:CE:47:CD:F0:DD:11:53:08
+# Fingerprint (SHA1): 85:A4:08:C0:9C:19:3E:5D:51:58:7D:CD:D6:13:30:FD:8C:DE:37:BF
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Deutsche Telekom Root CA 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\205\244\010\300\234\031\076\135\121\130\175\315\326\023\060\375
+\214\336\067\277
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\164\001\112\221\261\010\304\130\316\107\315\360\335\021\123\010
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143
+\150\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060
+\035\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145
+\143\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043
+\060\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150
+\145\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103
+\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\046
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ComSign CA"
+#
+# Issuer: C=IL,O=ComSign,CN=ComSign CA
+# Serial Number:14:13:96:83:14:55:8c:ea:7b:63:e5:fc:34:87:77:44
+# Subject: C=IL,O=ComSign,CN=ComSign CA
+# Not Valid Before: Wed Mar 24 11:32:18 2004
+# Not Valid After : Mon Mar 19 15:02:18 2029
+# Fingerprint (MD5): CD:F4:39:F3:B5:18:50:D7:3E:A4:C5:91:A0:3E:21:4B
+# Fingerprint (SHA1): E1:A4:5B:14:1A:21:DA:1A:79:F4:1A:42:A9:61:D6:69:CD:06:34:C1
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ComSign CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\064\061\023\060\021\006\003\125\004\003\023\012\103\157\155
+\123\151\147\156\040\103\101\061\020\060\016\006\003\125\004\012
+\023\007\103\157\155\123\151\147\156\061\013\060\011\006\003\125
+\004\006\023\002\111\114
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\064\061\023\060\021\006\003\125\004\003\023\012\103\157\155
+\123\151\147\156\040\103\101\061\020\060\016\006\003\125\004\012
+\023\007\103\157\155\123\151\147\156\061\013\060\011\006\003\125
+\004\006\023\002\111\114
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\024\023\226\203\024\125\214\352\173\143\345\374\064\207
+\167\104
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\223\060\202\002\173\240\003\002\001\002\002\020\024
+\023\226\203\024\125\214\352\173\143\345\374\064\207\167\104\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\064
+\061\023\060\021\006\003\125\004\003\023\012\103\157\155\123\151
+\147\156\040\103\101\061\020\060\016\006\003\125\004\012\023\007
+\103\157\155\123\151\147\156\061\013\060\011\006\003\125\004\006
+\023\002\111\114\060\036\027\015\060\064\060\063\062\064\061\061
+\063\062\061\070\132\027\015\062\071\060\063\061\071\061\065\060
+\062\061\070\132\060\064\061\023\060\021\006\003\125\004\003\023
+\012\103\157\155\123\151\147\156\040\103\101\061\020\060\016\006
+\003\125\004\012\023\007\103\157\155\123\151\147\156\061\013\060
+\011\006\003\125\004\006\023\002\111\114\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\360\344\124\151\053
+\323\307\217\152\104\344\176\130\047\370\013\320\344\224\022\212
+\361\033\070\070\057\037\061\234\006\324\054\247\336\013\052\256
+\032\240\343\236\152\277\237\074\307\156\242\371\213\144\154\072
+\255\205\125\121\124\245\070\125\270\253\203\004\362\077\144\066
+\367\300\215\103\103\152\146\321\367\027\052\325\357\066\372\060
+\020\102\327\123\315\371\372\063\163\114\263\351\204\040\212\326
+\101\047\065\344\070\372\224\233\270\172\344\171\037\063\373\033
+\330\041\011\050\174\115\030\151\136\144\212\172\031\223\312\176
+\354\363\162\347\067\007\130\131\050\254\102\371\305\377\315\077
+\347\245\372\070\261\320\014\307\331\122\032\123\326\201\314\102
+\172\065\133\355\113\072\172\366\265\216\314\377\017\174\344\140
+\066\207\057\255\360\241\045\175\377\322\113\021\210\160\124\246
+\101\250\147\123\122\102\136\344\064\236\344\276\243\354\252\142
+\135\335\303\114\246\202\101\344\063\013\254\311\063\017\144\202
+\127\052\375\014\255\066\341\014\256\113\305\357\073\231\331\043
+\263\133\135\264\127\354\164\160\014\052\117\002\003\001\000\001
+\243\201\240\060\201\235\060\014\006\003\125\035\023\004\005\060
+\003\001\001\377\060\075\006\003\125\035\037\004\066\060\064\060
+\062\240\060\240\056\206\054\150\164\164\160\072\057\057\146\145
+\144\151\162\056\143\157\155\163\151\147\156\056\143\157\056\151
+\154\057\143\162\154\057\103\157\155\123\151\147\156\103\101\056
+\143\162\154\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\206\060\037\006\003\125\035\043\004\030\060\026\200\024
+\113\001\233\076\126\032\145\066\166\313\173\227\252\222\005\356
+\062\347\050\061\060\035\006\003\125\035\016\004\026\004\024\113
+\001\233\076\126\032\145\066\166\313\173\227\252\222\005\356\062
+\347\050\061\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\202\001\001\000\320\331\245\176\376\051\140\105\235
+\176\203\317\156\274\107\156\365\032\236\124\166\102\161\264\074
+\130\077\055\100\045\102\366\201\234\361\211\020\310\016\252\170
+\117\070\011\127\260\074\300\010\374\065\216\361\110\121\215\014
+\161\164\272\204\304\327\162\233\204\174\070\116\144\006\047\052
+\341\247\265\354\010\231\264\012\015\324\205\163\310\022\341\065
+\355\361\005\061\035\163\231\014\353\226\312\335\323\346\205\252
+\360\212\373\165\301\362\011\074\145\145\144\363\114\330\255\313
+\210\151\363\344\203\267\014\275\027\132\226\027\312\133\377\255
+\273\034\351\055\204\200\330\041\276\205\122\331\324\164\271\151
+\205\272\115\355\050\062\353\371\141\112\344\304\066\036\031\334
+\157\204\021\037\225\365\203\050\030\250\063\222\103\047\335\135
+\023\004\105\117\207\325\106\315\075\250\272\360\363\270\126\044
+\105\353\067\307\341\166\117\162\071\030\337\176\164\162\307\163
+\055\071\352\140\346\255\021\242\126\207\173\303\150\232\376\370
+\214\160\250\337\145\062\364\244\100\214\241\302\104\003\016\224
+\000\147\240\161\000\202\110
+END
+
+# Trust for Certificate "ComSign CA"
+# Issuer: C=IL,O=ComSign,CN=ComSign CA
+# Serial Number:14:13:96:83:14:55:8c:ea:7b:63:e5:fc:34:87:77:44
+# Subject: C=IL,O=ComSign,CN=ComSign CA
+# Not Valid Before: Wed Mar 24 11:32:18 2004
+# Not Valid After : Mon Mar 19 15:02:18 2029
+# Fingerprint (MD5): CD:F4:39:F3:B5:18:50:D7:3E:A4:C5:91:A0:3E:21:4B
+# Fingerprint (SHA1): E1:A4:5B:14:1A:21:DA:1A:79:F4:1A:42:A9:61:D6:69:CD:06:34:C1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ComSign CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\341\244\133\024\032\041\332\032\171\364\032\102\251\141\326\151
+\315\006\064\301
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\315\364\071\363\265\030\120\327\076\244\305\221\240\076\041\113
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\064\061\023\060\021\006\003\125\004\003\023\012\103\157\155
+\123\151\147\156\040\103\101\061\020\060\016\006\003\125\004\012
+\023\007\103\157\155\123\151\147\156\061\013\060\011\006\003\125
+\004\006\023\002\111\114
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\024\023\226\203\024\125\214\352\173\143\345\374\064\207
+\167\104
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ComSign Secured CA"
+#
+# Issuer: C=IL,O=ComSign,CN=ComSign Secured CA
+# Serial Number:00:c7:28:47:09:b3:b8:6c:45:8c:1d:fa:24:f5:36:4e:e9
+# Subject: C=IL,O=ComSign,CN=ComSign Secured CA
+# Not Valid Before: Wed Mar 24 11:37:20 2004
+# Not Valid After : Fri Mar 16 15:04:56 2029
+# Fingerprint (MD5): 40:01:25:06:8D:21:43:6A:0E:43:00:9C:E7:43:F3:D5
+# Fingerprint (SHA1): F9:CD:0E:2C:DA:76:24:C1:8F:BD:F0:F0:AB:B6:45:B8:F7:FE:D5:7A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ComSign Secured CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\074\061\033\060\031\006\003\125\004\003\023\022\103\157\155
+\123\151\147\156\040\123\145\143\165\162\145\144\040\103\101\061
+\020\060\016\006\003\125\004\012\023\007\103\157\155\123\151\147
+\156\061\013\060\011\006\003\125\004\006\023\002\111\114
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\074\061\033\060\031\006\003\125\004\003\023\022\103\157\155
+\123\151\147\156\040\123\145\143\165\162\145\144\040\103\101\061
+\020\060\016\006\003\125\004\012\023\007\103\157\155\123\151\147
+\156\061\013\060\011\006\003\125\004\006\023\002\111\114
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\307\050\107\011\263\270\154\105\214\035\372\044\365
+\066\116\351
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\253\060\202\002\223\240\003\002\001\002\002\021\000
+\307\050\107\011\263\270\154\105\214\035\372\044\365\066\116\351
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\074\061\033\060\031\006\003\125\004\003\023\022\103\157\155\123
+\151\147\156\040\123\145\143\165\162\145\144\040\103\101\061\020
+\060\016\006\003\125\004\012\023\007\103\157\155\123\151\147\156
+\061\013\060\011\006\003\125\004\006\023\002\111\114\060\036\027
+\015\060\064\060\063\062\064\061\061\063\067\062\060\132\027\015
+\062\071\060\063\061\066\061\065\060\064\065\066\132\060\074\061
+\033\060\031\006\003\125\004\003\023\022\103\157\155\123\151\147
+\156\040\123\145\143\165\162\145\144\040\103\101\061\020\060\016
+\006\003\125\004\012\023\007\103\157\155\123\151\147\156\061\013
+\060\011\006\003\125\004\006\023\002\111\114\060\202\001\042\060
+\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202
+\001\017\000\060\202\001\012\002\202\001\001\000\306\265\150\137
+\035\224\025\303\244\010\125\055\343\240\127\172\357\351\164\052
+\273\271\174\127\111\032\021\136\117\051\207\014\110\326\152\347
+\217\324\176\127\044\271\006\211\344\034\074\352\254\343\332\041
+\200\163\041\012\357\171\230\154\037\010\377\241\120\175\362\230
+\033\311\124\157\076\245\050\354\041\004\017\105\273\007\075\241
+\300\372\052\230\035\116\006\223\373\365\210\073\253\137\313\026
+\277\346\363\236\112\207\355\031\352\302\237\103\344\361\201\245
+\177\020\117\076\321\112\142\255\123\033\313\203\377\007\145\245
+\222\055\146\251\133\270\132\364\035\264\041\221\112\027\173\236
+\062\376\126\044\071\262\124\204\103\365\204\302\330\274\101\220
+\314\235\326\150\332\351\202\120\251\073\150\317\265\135\002\224
+\140\026\261\103\331\103\135\335\135\207\156\352\273\263\311\153
+\366\003\224\011\160\336\026\021\172\053\350\166\217\111\020\230
+\167\271\143\134\213\063\227\165\366\013\214\262\253\133\336\164
+\040\045\077\343\363\021\371\207\150\206\065\161\303\035\214\055
+\353\345\032\254\017\163\325\202\131\100\200\323\002\003\001\000
+\001\243\201\247\060\201\244\060\014\006\003\125\035\023\004\005
+\060\003\001\001\377\060\104\006\003\125\035\037\004\075\060\073
+\060\071\240\067\240\065\206\063\150\164\164\160\072\057\057\146
+\145\144\151\162\056\143\157\155\163\151\147\156\056\143\157\056
+\151\154\057\143\162\154\057\103\157\155\123\151\147\156\123\145
+\143\165\162\145\144\103\101\056\143\162\154\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\206\060\037\006\003\125
+\035\043\004\030\060\026\200\024\301\113\355\160\266\367\076\174
+\000\073\000\217\307\076\016\105\237\036\135\354\060\035\006\003
+\125\035\016\004\026\004\024\301\113\355\160\266\367\076\174\000
+\073\000\217\307\076\016\105\237\036\135\354\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000\026
+\317\356\222\023\120\253\173\024\236\063\266\102\040\152\324\025
+\275\011\253\374\162\350\357\107\172\220\254\121\301\144\116\351
+\210\275\103\105\201\343\146\043\077\022\206\115\031\344\005\260
+\346\067\302\215\332\006\050\311\017\211\244\123\251\165\077\260
+\226\373\253\114\063\125\371\170\046\106\157\033\066\230\373\102
+\166\301\202\271\216\336\373\105\371\143\033\142\073\071\006\312
+\167\172\250\074\011\317\154\066\075\017\012\105\113\151\026\032
+\105\175\063\003\145\371\122\161\220\046\225\254\114\014\365\213
+\223\077\314\165\164\205\230\272\377\142\172\115\037\211\376\256
+\275\224\000\231\277\021\245\334\340\171\305\026\013\175\002\141
+\035\352\205\371\002\025\117\347\132\211\116\024\157\343\067\113
+\205\365\301\074\141\340\375\005\101\262\222\177\303\035\240\320
+\256\122\144\140\153\030\306\046\234\330\365\144\344\066\032\142
+\237\212\017\076\377\155\116\031\126\116\040\221\154\237\064\063
+\072\064\127\120\072\157\201\136\006\306\365\076\174\116\216\053
+\316\145\006\056\135\322\052\123\164\136\323\156\047\236\217
+END
+
+# Trust for Certificate "ComSign Secured CA"
+# Issuer: C=IL,O=ComSign,CN=ComSign Secured CA
+# Serial Number:00:c7:28:47:09:b3:b8:6c:45:8c:1d:fa:24:f5:36:4e:e9
+# Subject: C=IL,O=ComSign,CN=ComSign Secured CA
+# Not Valid Before: Wed Mar 24 11:37:20 2004
+# Not Valid After : Fri Mar 16 15:04:56 2029
+# Fingerprint (MD5): 40:01:25:06:8D:21:43:6A:0E:43:00:9C:E7:43:F3:D5
+# Fingerprint (SHA1): F9:CD:0E:2C:DA:76:24:C1:8F:BD:F0:F0:AB:B6:45:B8:F7:FE:D5:7A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ComSign Secured CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\371\315\016\054\332\166\044\301\217\275\360\360\253\266\105\270
+\367\376\325\172
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\100\001\045\006\215\041\103\152\016\103\000\234\347\103\363\325
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\074\061\033\060\031\006\003\125\004\003\023\022\103\157\155
+\123\151\147\156\040\123\145\143\165\162\145\144\040\103\101\061
+\020\060\016\006\003\125\004\012\023\007\103\157\155\123\151\147
+\156\061\013\060\011\006\003\125\004\006\023\002\111\114
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\307\050\107\011\263\270\154\105\214\035\372\044\365
+\066\116\351
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Cybertrust Global Root"
+#
+# Issuer: CN=Cybertrust Global Root,O="Cybertrust, Inc"
+# Serial Number:04:00:00:00:00:01:0f:85:aa:2d:48
+# Subject: CN=Cybertrust Global Root,O="Cybertrust, Inc"
+# Not Valid Before: Fri Dec 15 08:00:00 2006
+# Not Valid After : Wed Dec 15 08:00:00 2021
+# Fingerprint (MD5): 72:E4:4A:87:E3:69:40:80:77:EA:BC:E3:F4:FF:F0:E1
+# Fingerprint (SHA1): 5F:43:E5:B1:BF:F8:78:8C:AC:1C:C7:CA:4A:9A:C6:22:2B:CC:34:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Cybertrust Global Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\073\061\030\060\026\006\003\125\004\012\023\017\103\171\142
+\145\162\164\162\165\163\164\054\040\111\156\143\061\037\060\035
+\006\003\125\004\003\023\026\103\171\142\145\162\164\162\165\163
+\164\040\107\154\157\142\141\154\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\073\061\030\060\026\006\003\125\004\012\023\017\103\171\142
+\145\162\164\162\165\163\164\054\040\111\156\143\061\037\060\035
+\006\003\125\004\003\023\026\103\171\142\145\162\164\162\165\163
+\164\040\107\154\157\142\141\154\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\017\205\252\055\110
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\241\060\202\002\211\240\003\002\001\002\002\013\004
+\000\000\000\000\001\017\205\252\055\110\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\073\061\030\060\026\006
+\003\125\004\012\023\017\103\171\142\145\162\164\162\165\163\164
+\054\040\111\156\143\061\037\060\035\006\003\125\004\003\023\026
+\103\171\142\145\162\164\162\165\163\164\040\107\154\157\142\141
+\154\040\122\157\157\164\060\036\027\015\060\066\061\062\061\065
+\060\070\060\060\060\060\132\027\015\062\061\061\062\061\065\060
+\070\060\060\060\060\132\060\073\061\030\060\026\006\003\125\004
+\012\023\017\103\171\142\145\162\164\162\165\163\164\054\040\111
+\156\143\061\037\060\035\006\003\125\004\003\023\026\103\171\142
+\145\162\164\162\165\163\164\040\107\154\157\142\141\154\040\122
+\157\157\164\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\370\310\274\275\024\120\146\023\377\360\323\171
+\354\043\362\267\032\307\216\205\361\022\163\246\031\252\020\333
+\234\242\145\164\132\167\076\121\175\126\366\334\043\266\324\355
+\137\130\261\067\115\325\111\016\156\365\152\207\326\322\214\322
+\047\306\342\377\066\237\230\145\240\023\116\306\052\144\233\325
+\220\022\317\024\006\364\073\343\324\050\276\350\016\370\253\116
+\110\224\155\216\225\061\020\134\355\242\055\275\325\072\155\262
+\034\273\140\300\106\113\001\365\111\256\176\106\212\320\164\215
+\241\014\002\316\356\374\347\217\270\153\146\363\177\104\000\277
+\146\045\024\053\335\020\060\035\007\226\077\115\366\153\270\217
+\267\173\014\245\070\353\336\107\333\325\135\071\374\210\247\363
+\327\052\164\361\350\132\242\073\237\120\272\246\214\105\065\302
+\120\145\225\334\143\202\357\335\277\167\115\234\142\311\143\163
+\026\320\051\017\111\251\110\360\263\252\267\154\305\247\060\071
+\100\135\256\304\342\135\046\123\360\316\034\043\010\141\250\224
+\031\272\004\142\100\354\037\070\160\167\022\006\161\247\060\030
+\135\045\047\245\002\003\001\000\001\243\201\245\060\201\242\060
+\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\035\006\003\125\035\016\004\026\004\024\266\010\173\015\172
+\314\254\040\114\206\126\062\136\317\253\156\205\055\160\127\060
+\077\006\003\125\035\037\004\070\060\066\060\064\240\062\240\060
+\206\056\150\164\164\160\072\057\057\167\167\167\062\056\160\165
+\142\154\151\143\055\164\162\165\163\164\056\143\157\155\057\143
+\162\154\057\143\164\057\143\164\162\157\157\164\056\143\162\154
+\060\037\006\003\125\035\043\004\030\060\026\200\024\266\010\173
+\015\172\314\254\040\114\206\126\062\136\317\253\156\205\055\160
+\127\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\001\001\000\126\357\012\043\240\124\116\225\227\311\370
+\211\332\105\301\324\243\000\045\364\037\023\253\267\243\205\130
+\151\302\060\255\330\025\212\055\343\311\315\201\132\370\163\043
+\132\247\174\005\363\375\042\073\016\321\006\304\333\066\114\163
+\004\216\345\260\042\344\305\363\056\245\331\043\343\270\116\112
+\040\247\156\002\044\237\042\140\147\173\213\035\162\011\305\061
+\134\351\171\237\200\107\075\255\241\013\007\024\075\107\377\003
+\151\032\014\013\104\347\143\045\247\177\262\311\270\166\204\355
+\043\366\175\007\253\105\176\323\337\263\277\351\212\266\315\250
+\242\147\053\122\325\267\145\360\071\114\143\240\221\171\223\122
+\017\124\335\203\273\237\321\217\247\123\163\303\313\377\060\354
+\174\004\270\330\104\037\223\137\161\011\042\267\156\076\352\034
+\003\116\235\032\040\141\373\201\067\354\136\374\012\105\253\327
+\347\027\125\320\240\352\140\233\246\366\343\214\133\051\302\006
+\140\024\235\055\227\114\251\223\025\235\141\304\001\137\110\326
+\130\275\126\061\022\116\021\310\041\340\263\021\221\145\333\264
+\246\210\070\316\125
+END
+
+# Trust for Certificate "Cybertrust Global Root"
+# Issuer: CN=Cybertrust Global Root,O="Cybertrust, Inc"
+# Serial Number:04:00:00:00:00:01:0f:85:aa:2d:48
+# Subject: CN=Cybertrust Global Root,O="Cybertrust, Inc"
+# Not Valid Before: Fri Dec 15 08:00:00 2006
+# Not Valid After : Wed Dec 15 08:00:00 2021
+# Fingerprint (MD5): 72:E4:4A:87:E3:69:40:80:77:EA:BC:E3:F4:FF:F0:E1
+# Fingerprint (SHA1): 5F:43:E5:B1:BF:F8:78:8C:AC:1C:C7:CA:4A:9A:C6:22:2B:CC:34:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Cybertrust Global Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\137\103\345\261\277\370\170\214\254\034\307\312\112\232\306\042
+\053\314\064\306
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\162\344\112\207\343\151\100\200\167\352\274\343\364\377\360\341
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\073\061\030\060\026\006\003\125\004\012\023\017\103\171\142
+\145\162\164\162\165\163\164\054\040\111\156\143\061\037\060\035
+\006\003\125\004\003\023\026\103\171\142\145\162\164\162\165\163
+\164\040\107\154\157\142\141\154\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\017\205\252\055\110
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ePKI Root Certification Authority"
+#
+# Issuer: OU=ePKI Root Certification Authority,O="Chunghwa Telecom Co., Ltd.",C=TW
+# Serial Number:15:c8:bd:65:47:5c:af:b8:97:00:5e:e4:06:d2:bc:9d
+# Subject: OU=ePKI Root Certification Authority,O="Chunghwa Telecom Co., Ltd.",C=TW
+# Not Valid Before: Mon Dec 20 02:31:27 2004
+# Not Valid After : Wed Dec 20 02:31:27 2034
+# Fingerprint (MD5): 1B:2E:00:CA:26:06:90:3D:AD:FE:6F:15:68:D3:6B:B3
+# Fingerprint (SHA1): 67:65:0D:F1:7E:8E:7E:5B:82:40:A4:F4:56:4B:CF:E2:3D:69:C6:F0
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ePKI Root Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\136\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\043\060\041\006\003\125\004\012\014\032\103\150\165\156\147\150
+\167\141\040\124\145\154\145\143\157\155\040\103\157\056\054\040
+\114\164\144\056\061\052\060\050\006\003\125\004\013\014\041\145
+\120\113\111\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\136\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\043\060\041\006\003\125\004\012\014\032\103\150\165\156\147\150
+\167\141\040\124\145\154\145\143\157\155\040\103\157\056\054\040
+\114\164\144\056\061\052\060\050\006\003\125\004\013\014\041\145
+\120\113\111\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\025\310\275\145\107\134\257\270\227\000\136\344\006\322
+\274\235
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\260\060\202\003\230\240\003\002\001\002\002\020\025
+\310\275\145\107\134\257\270\227\000\136\344\006\322\274\235\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\136
+\061\013\060\011\006\003\125\004\006\023\002\124\127\061\043\060
+\041\006\003\125\004\012\014\032\103\150\165\156\147\150\167\141
+\040\124\145\154\145\143\157\155\040\103\157\056\054\040\114\164
+\144\056\061\052\060\050\006\003\125\004\013\014\041\145\120\113
+\111\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\036
+\027\015\060\064\061\062\062\060\060\062\063\061\062\067\132\027
+\015\063\064\061\062\062\060\060\062\063\061\062\067\132\060\136
+\061\013\060\011\006\003\125\004\006\023\002\124\127\061\043\060
+\041\006\003\125\004\012\014\032\103\150\165\156\147\150\167\141
+\040\124\145\154\145\143\157\155\040\103\157\056\054\040\114\164
+\144\056\061\052\060\050\006\003\125\004\013\014\041\145\120\113
+\111\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\202
+\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000\341
+\045\017\356\215\333\210\063\165\147\315\255\037\175\072\116\155
+\235\323\057\024\363\143\164\313\001\041\152\067\352\204\120\007
+\113\046\133\011\103\154\041\236\152\310\325\003\365\140\151\217
+\314\360\042\344\037\347\367\152\042\061\267\054\025\362\340\376
+\000\152\103\377\207\145\306\265\032\301\247\114\155\042\160\041
+\212\061\362\227\164\211\011\022\046\034\236\312\331\022\242\225
+\074\332\351\147\277\010\240\144\343\326\102\267\105\357\227\364
+\366\365\327\265\112\025\002\130\175\230\130\113\140\274\315\327
+\015\232\023\063\123\321\141\371\172\325\327\170\263\232\063\367
+\000\206\316\035\115\224\070\257\250\354\170\121\160\212\134\020
+\203\121\041\367\021\075\064\206\136\345\110\315\227\201\202\065
+\114\031\354\145\366\153\305\005\241\356\107\023\326\263\041\047
+\224\020\012\331\044\073\272\276\104\023\106\060\077\227\074\330
+\327\327\152\356\073\070\343\053\324\227\016\271\033\347\007\111
+\177\067\052\371\167\170\317\124\355\133\106\235\243\200\016\221
+\103\301\326\133\137\024\272\237\246\215\044\107\100\131\277\162
+\070\262\066\154\067\377\231\321\135\016\131\012\253\151\367\300
+\262\004\105\172\124\000\256\276\123\366\265\347\341\370\074\243
+\061\322\251\376\041\122\144\305\246\147\360\165\007\006\224\024
+\201\125\306\047\344\001\217\027\301\152\161\327\276\113\373\224
+\130\175\176\021\063\261\102\367\142\154\030\326\317\011\150\076
+\177\154\366\036\217\142\255\245\143\333\011\247\037\042\102\101
+\036\157\231\212\076\327\371\077\100\172\171\260\245\001\222\322
+\235\075\010\025\245\020\001\055\263\062\166\250\225\015\263\172
+\232\373\007\020\170\021\157\341\217\307\272\017\045\032\164\052
+\345\034\230\101\231\337\041\207\350\225\006\152\012\263\152\107
+\166\145\366\072\317\217\142\027\031\173\012\050\315\032\322\203
+\036\041\307\054\277\276\377\141\150\267\147\033\273\170\115\215
+\316\147\345\344\301\216\267\043\146\342\235\220\165\064\230\251
+\066\053\212\232\224\271\235\354\314\212\261\370\045\211\134\132
+\266\057\214\037\155\171\044\247\122\150\303\204\065\342\146\215
+\143\016\045\115\325\031\262\346\171\067\247\042\235\124\061\002
+\003\001\000\001\243\152\060\150\060\035\006\003\125\035\016\004
+\026\004\024\036\014\367\266\147\362\341\222\046\011\105\300\125
+\071\056\167\077\102\112\242\060\014\006\003\125\035\023\004\005
+\060\003\001\001\377\060\071\006\004\147\052\007\000\004\061\060
+\057\060\055\002\001\000\060\011\006\005\053\016\003\002\032\005
+\000\060\007\006\005\147\052\003\000\000\004\024\105\260\302\307
+\012\126\174\356\133\170\014\225\371\030\123\301\246\034\330\020
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\002\001\000\011\263\203\123\131\001\076\225\111\271\361\201
+\272\371\166\040\043\265\047\140\164\324\152\231\064\136\154\000
+\123\331\237\362\246\261\044\007\104\152\052\306\245\216\170\022
+\350\107\331\130\033\023\052\136\171\233\237\012\052\147\246\045
+\077\006\151\126\163\303\212\146\110\373\051\201\127\164\006\312
+\234\352\050\350\070\147\046\053\361\325\265\077\145\223\370\066
+\135\216\215\215\100\040\207\031\352\357\047\300\075\264\071\017
+\045\173\150\120\164\125\234\014\131\175\132\075\101\224\045\122
+\010\340\107\054\025\061\031\325\277\007\125\306\273\022\265\227
+\364\137\203\205\272\161\301\331\154\201\021\166\012\012\260\277
+\202\227\367\352\075\372\372\354\055\251\050\224\073\126\335\322
+\121\056\256\300\275\010\025\214\167\122\064\226\326\233\254\323
+\035\216\141\017\065\173\233\256\071\151\013\142\140\100\040\066
+\217\257\373\066\356\055\010\112\035\270\277\233\134\370\352\245
+\033\240\163\246\330\370\156\340\063\004\137\150\252\047\207\355
+\331\301\220\234\355\275\343\152\065\257\143\337\253\030\331\272
+\346\351\112\352\120\212\017\141\223\036\342\055\031\342\060\224
+\065\222\135\016\266\007\257\031\200\217\107\220\121\113\056\115
+\335\205\342\322\012\122\012\027\232\374\032\260\120\002\345\001
+\243\143\067\041\114\104\304\233\121\231\021\016\163\234\006\217
+\124\056\247\050\136\104\071\207\126\055\067\275\205\104\224\341
+\014\113\054\234\303\222\205\064\141\313\017\270\233\112\103\122
+\376\064\072\175\270\351\051\334\166\251\310\060\370\024\161\200
+\306\036\066\110\164\042\101\134\207\202\350\030\161\213\101\211
+\104\347\176\130\133\250\270\215\023\351\247\154\303\107\355\263
+\032\235\142\256\215\202\352\224\236\335\131\020\303\255\335\342
+\115\343\061\325\307\354\350\362\260\376\222\036\026\012\032\374
+\331\363\370\047\266\311\276\035\264\154\144\220\177\364\344\304
+\133\327\067\256\102\016\335\244\032\157\174\210\124\305\026\156
+\341\172\150\056\370\072\277\015\244\074\211\073\170\247\116\143
+\203\004\041\010\147\215\362\202\111\320\133\375\261\315\017\203
+\204\324\076\040\205\367\112\075\053\234\375\052\012\011\115\352
+\201\370\021\234
+END
+
+# Trust for Certificate "ePKI Root Certification Authority"
+# Issuer: OU=ePKI Root Certification Authority,O="Chunghwa Telecom Co., Ltd.",C=TW
+# Serial Number:15:c8:bd:65:47:5c:af:b8:97:00:5e:e4:06:d2:bc:9d
+# Subject: OU=ePKI Root Certification Authority,O="Chunghwa Telecom Co., Ltd.",C=TW
+# Not Valid Before: Mon Dec 20 02:31:27 2004
+# Not Valid After : Wed Dec 20 02:31:27 2034
+# Fingerprint (MD5): 1B:2E:00:CA:26:06:90:3D:AD:FE:6F:15:68:D3:6B:B3
+# Fingerprint (SHA1): 67:65:0D:F1:7E:8E:7E:5B:82:40:A4:F4:56:4B:CF:E2:3D:69:C6:F0
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ePKI Root Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\147\145\015\361\176\216\176\133\202\100\244\364\126\113\317\342
+\075\151\306\360
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\033\056\000\312\046\006\220\075\255\376\157\025\150\323\153\263
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\136\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\043\060\041\006\003\125\004\012\014\032\103\150\165\156\147\150
+\167\141\040\124\145\154\145\143\157\155\040\103\157\056\054\040
+\114\164\144\056\061\052\060\050\006\003\125\004\013\014\041\145
+\120\113\111\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\025\310\275\145\107\134\257\270\227\000\136\344\006\322
+\274\235
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TUBITAK UEKAE Kok Sertifika Hizmet Saglayicisi - Surum 3"
+#
+# Issuer: CN=T..B..TAK UEKAE K..k Sertifika Hizmet Sa..lay..c..s.. - S..r..m ...,OU=Kamu Sertifikasyon Merkezi,OU=Ulusal Elektronik ve Kriptoloji Ara..t..rma Enstit..s.. - UEKAE,O=T..rkiye Bilimsel ve Teknolojik Ara..t..rma Kurumu - T..B..TAK,L=Gebze - Kocaeli,C=TR
+# Serial Number: 17 (0x11)
+# Subject: CN=T..B..TAK UEKAE K..k Sertifika Hizmet Sa..lay..c..s.. - S..r..m ...,OU=Kamu Sertifikasyon Merkezi,OU=Ulusal Elektronik ve Kriptoloji Ara..t..rma Enstit..s.. - UEKAE,O=T..rkiye Bilimsel ve Teknolojik Ara..t..rma Kurumu - T..B..TAK,L=Gebze - Kocaeli,C=TR
+# Not Valid Before: Fri Aug 24 11:37:07 2007
+# Not Valid After : Mon Aug 21 11:37:07 2017
+# Fingerprint (MD5): ED:41:F5:8C:50:C5:2B:9C:73:E6:EE:6C:EB:C2:A8:26
+# Fingerprint (SHA1): 1B:4B:39:61:26:27:6B:64:91:A2:68:6D:D7:02:43:21:2D:1F:1D:96
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "T\xc3\x9c\x42\xC4\xB0TAK UEKAE K\xC3\xB6k Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 - S\xC3\xBCr\xC3\xBCm 3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\202\001\053\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\030\060\026\006\003\125\004\007\014\017\107\145\142\172
+\145\040\055\040\113\157\143\141\145\154\151\061\107\060\105\006
+\003\125\004\012\014\076\124\303\274\162\153\151\171\145\040\102
+\151\154\151\155\163\145\154\040\166\145\040\124\145\153\156\157
+\154\157\152\151\153\040\101\162\141\305\237\164\304\261\162\155
+\141\040\113\165\162\165\155\165\040\055\040\124\303\234\102\304
+\260\124\101\113\061\110\060\106\006\003\125\004\013\014\077\125
+\154\165\163\141\154\040\105\154\145\153\164\162\157\156\151\153
+\040\166\145\040\113\162\151\160\164\157\154\157\152\151\040\101
+\162\141\305\237\164\304\261\162\155\141\040\105\156\163\164\151
+\164\303\274\163\303\274\040\055\040\125\105\113\101\105\061\043
+\060\041\006\003\125\004\013\014\032\113\141\155\165\040\123\145
+\162\164\151\146\151\153\141\163\171\157\156\040\115\145\162\153
+\145\172\151\061\112\060\110\006\003\125\004\003\014\101\124\303
+\234\102\304\260\124\101\113\040\125\105\113\101\105\040\113\303
+\266\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172
+\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261
+\163\304\261\040\055\040\123\303\274\162\303\274\155\040\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\202\001\053\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\030\060\026\006\003\125\004\007\014\017\107\145\142\172
+\145\040\055\040\113\157\143\141\145\154\151\061\107\060\105\006
+\003\125\004\012\014\076\124\303\274\162\153\151\171\145\040\102
+\151\154\151\155\163\145\154\040\166\145\040\124\145\153\156\157
+\154\157\152\151\153\040\101\162\141\305\237\164\304\261\162\155
+\141\040\113\165\162\165\155\165\040\055\040\124\303\234\102\304
+\260\124\101\113\061\110\060\106\006\003\125\004\013\014\077\125
+\154\165\163\141\154\040\105\154\145\153\164\162\157\156\151\153
+\040\166\145\040\113\162\151\160\164\157\154\157\152\151\040\101
+\162\141\305\237\164\304\261\162\155\141\040\105\156\163\164\151
+\164\303\274\163\303\274\040\055\040\125\105\113\101\105\061\043
+\060\041\006\003\125\004\013\014\032\113\141\155\165\040\123\145
+\162\164\151\146\151\153\141\163\171\157\156\040\115\145\162\153
+\145\172\151\061\112\060\110\006\003\125\004\003\014\101\124\303
+\234\102\304\260\124\101\113\040\125\105\113\101\105\040\113\303
+\266\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172
+\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261
+\163\304\261\040\055\040\123\303\274\162\303\274\155\040\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\021
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\027\060\202\003\377\240\003\002\001\002\002\001\021
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\202\001\053\061\013\060\011\006\003\125\004\006\023\002\124\122
+\061\030\060\026\006\003\125\004\007\014\017\107\145\142\172\145
+\040\055\040\113\157\143\141\145\154\151\061\107\060\105\006\003
+\125\004\012\014\076\124\303\274\162\153\151\171\145\040\102\151
+\154\151\155\163\145\154\040\166\145\040\124\145\153\156\157\154
+\157\152\151\153\040\101\162\141\305\237\164\304\261\162\155\141
+\040\113\165\162\165\155\165\040\055\040\124\303\234\102\304\260
+\124\101\113\061\110\060\106\006\003\125\004\013\014\077\125\154
+\165\163\141\154\040\105\154\145\153\164\162\157\156\151\153\040
+\166\145\040\113\162\151\160\164\157\154\157\152\151\040\101\162
+\141\305\237\164\304\261\162\155\141\040\105\156\163\164\151\164
+\303\274\163\303\274\040\055\040\125\105\113\101\105\061\043\060
+\041\006\003\125\004\013\014\032\113\141\155\165\040\123\145\162
+\164\151\146\151\153\141\163\171\157\156\040\115\145\162\153\145
+\172\151\061\112\060\110\006\003\125\004\003\014\101\124\303\234
+\102\304\260\124\101\113\040\125\105\113\101\105\040\113\303\266
+\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172\155
+\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261\163
+\304\261\040\055\040\123\303\274\162\303\274\155\040\063\060\036
+\027\015\060\067\060\070\062\064\061\061\063\067\060\067\132\027
+\015\061\067\060\070\062\061\061\061\063\067\060\067\132\060\202
+\001\053\061\013\060\011\006\003\125\004\006\023\002\124\122\061
+\030\060\026\006\003\125\004\007\014\017\107\145\142\172\145\040
+\055\040\113\157\143\141\145\154\151\061\107\060\105\006\003\125
+\004\012\014\076\124\303\274\162\153\151\171\145\040\102\151\154
+\151\155\163\145\154\040\166\145\040\124\145\153\156\157\154\157
+\152\151\153\040\101\162\141\305\237\164\304\261\162\155\141\040
+\113\165\162\165\155\165\040\055\040\124\303\234\102\304\260\124
+\101\113\061\110\060\106\006\003\125\004\013\014\077\125\154\165
+\163\141\154\040\105\154\145\153\164\162\157\156\151\153\040\166
+\145\040\113\162\151\160\164\157\154\157\152\151\040\101\162\141
+\305\237\164\304\261\162\155\141\040\105\156\163\164\151\164\303
+\274\163\303\274\040\055\040\125\105\113\101\105\061\043\060\041
+\006\003\125\004\013\014\032\113\141\155\165\040\123\145\162\164
+\151\146\151\153\141\163\171\157\156\040\115\145\162\153\145\172
+\151\061\112\060\110\006\003\125\004\003\014\101\124\303\234\102
+\304\260\124\101\113\040\125\105\113\101\105\040\113\303\266\153
+\040\123\145\162\164\151\146\151\153\141\040\110\151\172\155\145
+\164\040\123\141\304\237\154\141\171\304\261\143\304\261\163\304
+\261\040\055\040\123\303\274\162\303\274\155\040\063\060\202\001
+\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\001\017\000\060\202\001\012\002\202\001\001\000\212\155
+\113\377\020\210\072\303\366\176\224\350\352\040\144\160\256\041
+\201\276\072\173\074\333\361\035\122\177\131\372\363\042\114\225
+\240\220\274\110\116\021\253\373\267\265\215\172\203\050\214\046
+\106\330\116\225\100\207\141\237\305\236\155\201\207\127\154\212
+\073\264\146\352\314\100\374\343\252\154\262\313\001\333\062\277
+\322\353\205\317\241\015\125\303\133\070\127\160\270\165\306\171
+\321\024\060\355\033\130\133\153\357\065\362\241\041\116\305\316
+\174\231\137\154\271\270\042\223\120\247\315\114\160\152\276\152
+\005\177\023\234\053\036\352\376\107\316\004\245\157\254\223\056
+\174\053\237\236\171\023\221\350\352\236\312\070\165\216\142\260
+\225\223\052\345\337\351\136\227\156\040\137\137\204\172\104\071
+\031\100\034\272\125\053\373\060\262\201\357\204\343\334\354\230
+\070\071\003\205\010\251\124\003\005\051\360\311\217\213\352\013
+\206\145\031\021\323\351\011\043\336\150\223\003\311\066\034\041
+\156\316\214\146\361\231\060\330\327\263\303\035\370\201\056\250
+\275\202\013\146\376\202\313\341\340\032\202\303\100\201\002\003
+\001\000\001\243\102\060\100\060\035\006\003\125\035\016\004\026
+\004\024\275\210\207\311\217\366\244\012\013\252\353\305\376\221
+\043\235\253\112\212\062\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\003\202\001\001\000\035\174\372\111\217
+\064\351\267\046\222\026\232\005\164\347\113\320\155\071\154\303
+\046\366\316\270\061\274\304\337\274\052\370\067\221\030\334\004
+\310\144\231\053\030\155\200\003\131\311\256\370\130\320\076\355
+\303\043\237\151\074\206\070\034\236\357\332\047\170\321\204\067
+\161\212\074\113\071\317\176\105\006\326\055\330\212\115\170\022
+\326\255\302\323\313\322\320\101\363\046\066\112\233\225\154\014
+\356\345\321\103\047\146\301\210\367\172\263\040\154\352\260\151
+\053\307\040\350\014\003\304\101\005\231\342\077\344\153\370\240
+\206\201\307\204\306\037\325\113\201\022\262\026\041\054\023\241
+\200\262\136\014\112\023\236\040\330\142\100\253\220\352\144\112
+\057\254\015\001\022\171\105\250\057\207\031\150\310\342\205\307
+\060\262\165\371\070\077\262\300\223\264\153\342\003\104\316\147
+\240\337\211\326\255\214\166\243\023\303\224\141\053\153\331\154
+\301\007\012\042\007\205\154\205\044\106\251\276\077\213\170\204
+\202\176\044\014\235\375\201\067\343\045\250\355\066\116\225\054
+\311\234\220\332\354\251\102\074\255\266\002
+END
+
+# Trust for Certificate "TUBITAK UEKAE Kok Sertifika Hizmet Saglayicisi - Surum 3"
+# Issuer: CN=T..B..TAK UEKAE K..k Sertifika Hizmet Sa..lay..c..s.. - S..r..m ...,OU=Kamu Sertifikasyon Merkezi,OU=Ulusal Elektronik ve Kriptoloji Ara..t..rma Enstit..s.. - UEKAE,O=T..rkiye Bilimsel ve Teknolojik Ara..t..rma Kurumu - T..B..TAK,L=Gebze - Kocaeli,C=TR
+# Serial Number: 17 (0x11)
+# Subject: CN=T..B..TAK UEKAE K..k Sertifika Hizmet Sa..lay..c..s.. - S..r..m ...,OU=Kamu Sertifikasyon Merkezi,OU=Ulusal Elektronik ve Kriptoloji Ara..t..rma Enstit..s.. - UEKAE,O=T..rkiye Bilimsel ve Teknolojik Ara..t..rma Kurumu - T..B..TAK,L=Gebze - Kocaeli,C=TR
+# Not Valid Before: Fri Aug 24 11:37:07 2007
+# Not Valid After : Mon Aug 21 11:37:07 2017
+# Fingerprint (MD5): ED:41:F5:8C:50:C5:2B:9C:73:E6:EE:6C:EB:C2:A8:26
+# Fingerprint (SHA1): 1B:4B:39:61:26:27:6B:64:91:A2:68:6D:D7:02:43:21:2D:1F:1D:96
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "T\xc3\x9c\x42\xC4\xB0TAK UEKAE K\xC3\xB6k Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 - S\xC3\xBCr\xC3\xBCm 3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\033\113\071\141\046\047\153\144\221\242\150\155\327\002\103\041
+\055\037\035\226
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\355\101\365\214\120\305\053\234\163\346\356\154\353\302\250\046
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\202\001\053\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\030\060\026\006\003\125\004\007\014\017\107\145\142\172
+\145\040\055\040\113\157\143\141\145\154\151\061\107\060\105\006
+\003\125\004\012\014\076\124\303\274\162\153\151\171\145\040\102
+\151\154\151\155\163\145\154\040\166\145\040\124\145\153\156\157
+\154\157\152\151\153\040\101\162\141\305\237\164\304\261\162\155
+\141\040\113\165\162\165\155\165\040\055\040\124\303\234\102\304
+\260\124\101\113\061\110\060\106\006\003\125\004\013\014\077\125
+\154\165\163\141\154\040\105\154\145\153\164\162\157\156\151\153
+\040\166\145\040\113\162\151\160\164\157\154\157\152\151\040\101
+\162\141\305\237\164\304\261\162\155\141\040\105\156\163\164\151
+\164\303\274\163\303\274\040\055\040\125\105\113\101\105\061\043
+\060\041\006\003\125\004\013\014\032\113\141\155\165\040\123\145
+\162\164\151\146\151\153\141\163\171\157\156\040\115\145\162\153
+\145\172\151\061\112\060\110\006\003\125\004\003\014\101\124\303
+\234\102\304\260\124\101\113\040\125\105\113\101\105\040\113\303
+\266\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172
+\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261
+\163\304\261\040\055\040\123\303\274\162\303\274\155\040\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\021
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Buypass Class 2 CA 1"
+#
+# Issuer: CN=Buypass Class 2 CA 1,O=Buypass AS-983163327,C=NO
+# Serial Number: 1 (0x1)
+# Subject: CN=Buypass Class 2 CA 1,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Fri Oct 13 10:25:09 2006
+# Not Valid After : Thu Oct 13 10:25:09 2016
+# Fingerprint (MD5): B8:08:9A:F0:03:CC:1B:0D:C8:6C:0B:76:A1:75:64:23
+# Fingerprint (SHA1): A0:A1:AB:90:C9:FC:84:7B:3B:12:61:E8:97:7D:5F:D3:22:61:D3:CC
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 2 CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035
+\060\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\062\040\103\101\040\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035
+\060\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\062\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\123\060\202\002\073\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061\035
+\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163\163
+\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035\060
+\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163\040
+\103\154\141\163\163\040\062\040\103\101\040\061\060\036\027\015
+\060\066\061\060\061\063\061\060\062\065\060\071\132\027\015\061
+\066\061\060\061\063\061\060\062\065\060\071\132\060\113\061\013
+\060\011\006\003\125\004\006\023\002\116\117\061\035\060\033\006
+\003\125\004\012\014\024\102\165\171\160\141\163\163\040\101\123
+\055\071\070\063\061\066\063\063\062\067\061\035\060\033\006\003
+\125\004\003\014\024\102\165\171\160\141\163\163\040\103\154\141
+\163\163\040\062\040\103\101\040\061\060\202\001\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017
+\000\060\202\001\012\002\202\001\001\000\213\074\007\105\330\366
+\337\346\307\312\272\215\103\305\107\215\260\132\301\070\333\222
+\204\034\257\023\324\017\157\066\106\040\304\056\314\161\160\064
+\242\064\323\067\056\330\335\072\167\057\300\353\051\350\134\322
+\265\251\221\064\207\042\131\376\314\333\347\231\257\226\301\250
+\307\100\335\245\025\214\156\310\174\227\003\313\346\040\362\327
+\227\137\061\241\057\067\322\276\356\276\251\255\250\114\236\041
+\146\103\073\250\274\363\011\243\070\325\131\044\301\302\107\166
+\261\210\134\202\073\273\053\246\004\327\214\007\217\315\325\101
+\035\360\256\270\051\054\224\122\140\064\224\073\332\340\070\321
+\235\063\076\025\364\223\062\305\000\332\265\051\146\016\072\170
+\017\041\122\137\002\345\222\173\045\323\222\036\057\025\235\201
+\344\235\216\350\357\211\316\024\114\124\035\034\201\022\115\160
+\250\276\020\005\027\176\037\321\270\127\125\355\315\273\122\302
+\260\036\170\302\115\066\150\313\126\046\301\122\301\275\166\367
+\130\325\162\176\037\104\166\273\000\211\035\026\235\121\065\357
+\115\302\126\357\153\340\214\073\015\351\002\003\001\000\001\243
+\102\060\100\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\077
+\215\232\131\213\374\173\173\234\243\257\070\260\071\355\220\161
+\200\326\310\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\006\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\202\001\001\000\025\032\176\023\212\271\350\007\243
+\113\047\062\262\100\221\362\041\321\144\205\276\143\152\322\317
+\201\302\025\325\172\176\014\051\254\067\036\034\174\166\122\225
+\332\265\177\043\241\051\167\145\311\062\235\250\056\126\253\140
+\166\316\026\264\215\177\170\300\325\231\121\203\177\136\331\276
+\014\250\120\355\042\307\255\005\114\166\373\355\356\036\107\144
+\366\367\047\175\134\050\017\105\305\134\142\136\246\232\221\221
+\267\123\027\056\334\255\140\235\226\144\071\275\147\150\262\256
+\005\313\115\347\137\037\127\206\325\040\234\050\373\157\023\070
+\365\366\021\222\366\175\231\136\037\014\350\253\104\044\051\162
+\100\075\066\122\257\214\130\220\163\301\354\141\054\171\241\354
+\207\265\077\332\115\331\041\000\060\336\220\332\016\323\032\110
+\251\076\205\013\024\213\214\274\101\236\152\367\016\160\300\065
+\367\071\242\135\146\320\173\131\237\250\107\022\232\047\043\244
+\055\216\047\203\222\040\241\327\025\177\361\056\030\356\364\110
+\177\057\177\361\241\030\265\241\013\224\240\142\040\062\234\035
+\366\324\357\277\114\210\150
+END
+
+# Trust for Certificate "Buypass Class 2 CA 1"
+# Issuer: CN=Buypass Class 2 CA 1,O=Buypass AS-983163327,C=NO
+# Serial Number: 1 (0x1)
+# Subject: CN=Buypass Class 2 CA 1,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Fri Oct 13 10:25:09 2006
+# Not Valid After : Thu Oct 13 10:25:09 2016
+# Fingerprint (MD5): B8:08:9A:F0:03:CC:1B:0D:C8:6C:0B:76:A1:75:64:23
+# Fingerprint (SHA1): A0:A1:AB:90:C9:FC:84:7B:3B:12:61:E8:97:7D:5F:D3:22:61:D3:CC
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 2 CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\240\241\253\220\311\374\204\173\073\022\141\350\227\175\137\323
+\042\141\323\314
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\270\010\232\360\003\314\033\015\310\154\013\166\241\165\144\043
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035
+\060\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\062\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Buypass Class 3 CA 1"
+#
+# Issuer: CN=Buypass Class 3 CA 1,O=Buypass AS-983163327,C=NO
+# Serial Number: 2 (0x2)
+# Subject: CN=Buypass Class 3 CA 1,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Mon May 09 14:13:03 2005
+# Not Valid After : Sat May 09 14:13:03 2015
+# Fingerprint (MD5): DF:3C:73:59:81:E7:39:50:81:04:4C:34:A2:CB:B3:7B
+# Fingerprint (SHA1): 61:57:3A:11:DF:0E:D8:7E:D5:92:65:22:EA:D0:56:D7:44:B3:23:71
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 3 CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035
+\060\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\063\040\103\101\040\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035
+\060\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\063\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\123\060\202\002\073\240\003\002\001\002\002\001\002
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061\035
+\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163\163
+\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035\060
+\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163\040
+\103\154\141\163\163\040\063\040\103\101\040\061\060\036\027\015
+\060\065\060\065\060\071\061\064\061\063\060\063\132\027\015\061
+\065\060\065\060\071\061\064\061\063\060\063\132\060\113\061\013
+\060\011\006\003\125\004\006\023\002\116\117\061\035\060\033\006
+\003\125\004\012\014\024\102\165\171\160\141\163\163\040\101\123
+\055\071\070\063\061\066\063\063\062\067\061\035\060\033\006\003
+\125\004\003\014\024\102\165\171\160\141\163\163\040\103\154\141
+\163\163\040\063\040\103\101\040\061\060\202\001\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017
+\000\060\202\001\012\002\202\001\001\000\244\216\327\164\331\051
+\144\336\137\037\207\200\221\352\116\071\346\031\306\104\013\200
+\325\013\257\123\007\213\022\275\346\147\360\002\261\211\366\140
+\212\304\133\260\102\321\300\041\250\313\341\233\357\144\121\266
+\247\317\025\365\164\200\150\004\220\240\130\242\346\164\246\123
+\123\125\110\143\077\222\126\335\044\116\216\370\272\053\377\363
+\064\212\236\050\327\064\237\254\057\326\017\361\244\057\275\122
+\262\111\205\155\071\065\360\104\060\223\106\044\363\266\347\123
+\373\274\141\257\251\243\024\373\302\027\027\204\154\340\174\210
+\370\311\034\127\054\360\075\176\224\274\045\223\204\350\232\000
+\232\105\005\102\127\200\364\116\316\331\256\071\366\310\123\020
+\014\145\072\107\173\140\302\326\372\221\311\306\161\154\275\221
+\207\074\221\206\111\253\363\017\240\154\046\166\136\034\254\233
+\161\345\215\274\233\041\036\234\326\070\176\044\200\025\061\202
+\226\261\111\323\142\067\133\210\014\012\142\064\376\247\110\176
+\231\261\060\213\220\067\225\034\250\037\245\054\215\364\125\310
+\333\335\131\012\302\255\170\240\364\213\002\003\001\000\001\243
+\102\060\100\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\070
+\024\346\310\360\251\244\003\364\116\076\042\243\133\362\326\340
+\255\100\164\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\006\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\202\001\001\000\001\147\243\214\311\045\075\023\143
+\135\026\157\354\241\076\011\134\221\025\052\052\331\200\041\117
+\005\334\273\245\211\253\023\063\052\236\070\267\214\157\002\162
+\143\307\163\167\036\011\006\272\073\050\173\244\107\311\141\153
+\010\010\040\374\212\005\212\037\274\272\306\302\376\317\156\354
+\023\063\161\147\056\151\372\251\054\077\146\300\022\131\115\013
+\124\002\222\204\273\333\022\357\203\160\160\170\310\123\372\337
+\306\306\377\334\210\057\007\300\111\235\062\127\140\323\362\366
+\231\051\137\347\252\001\314\254\063\250\034\012\273\221\304\003
+\240\157\266\064\371\206\323\263\166\124\230\364\112\201\263\123
+\235\115\100\354\345\167\023\105\257\133\252\037\330\057\114\202
+\173\376\052\304\130\273\117\374\236\375\003\145\032\052\016\303
+\245\040\026\224\153\171\246\242\022\264\273\032\244\043\172\137
+\360\256\204\044\344\363\053\373\212\044\243\047\230\145\332\060
+\165\166\374\031\221\350\333\353\233\077\062\277\100\227\007\046
+\272\314\363\224\205\112\172\047\223\317\220\102\324\270\133\026
+\246\347\313\100\003\335\171
+END
+
+# Trust for Certificate "Buypass Class 3 CA 1"
+# Issuer: CN=Buypass Class 3 CA 1,O=Buypass AS-983163327,C=NO
+# Serial Number: 2 (0x2)
+# Subject: CN=Buypass Class 3 CA 1,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Mon May 09 14:13:03 2005
+# Not Valid After : Sat May 09 14:13:03 2015
+# Fingerprint (MD5): DF:3C:73:59:81:E7:39:50:81:04:4C:34:A2:CB:B3:7B
+# Fingerprint (SHA1): 61:57:3A:11:DF:0E:D8:7E:D5:92:65:22:EA:D0:56:D7:44:B3:23:71
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 3 CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\141\127\072\021\337\016\330\176\325\222\145\042\352\320\126\327
+\104\263\043\161
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\337\074\163\131\201\347\071\120\201\004\114\064\242\313\263\173
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\113\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\035
+\060\033\006\003\125\004\003\014\024\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\063\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "EBG Elektronik Sertifika Hizmet Saglayicisi"
+#
+# Issuer: C=TR,O=EBG Bili..im Teknolojileri ve Hizmetleri A....,CN=EBG Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number:4c:af:73:42:1c:8e:74:02
+# Subject: C=TR,O=EBG Bili..im Teknolojileri ve Hizmetleri A....,CN=EBG Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Thu Aug 17 00:21:09 2006
+# Not Valid After : Sun Aug 14 00:31:09 2016
+# Fingerprint (MD5): 2C:20:26:9D:CB:1A:4A:00:85:B5:B7:5A:AE:C2:01:37
+# Fingerprint (SHA1): 8C:96:BA:EB:DD:2B:07:07:48:EE:30:32:66:A0:F3:98:6E:7C:AE:58
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "EBG Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\200\061\070\060\066\006\003\125\004\003\014\057\105\102
+\107\040\105\154\145\153\164\162\157\156\151\153\040\123\145\162
+\164\151\146\151\153\141\040\110\151\172\155\145\164\040\123\141
+\304\237\154\141\171\304\261\143\304\261\163\304\261\061\067\060
+\065\006\003\125\004\012\014\056\105\102\107\040\102\151\154\151
+\305\237\151\155\040\124\145\153\156\157\154\157\152\151\154\145
+\162\151\040\166\145\040\110\151\172\155\145\164\154\145\162\151
+\040\101\056\305\236\056\061\013\060\011\006\003\125\004\006\023
+\002\124\122
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\200\061\070\060\066\006\003\125\004\003\014\057\105\102
+\107\040\105\154\145\153\164\162\157\156\151\153\040\123\145\162
+\164\151\146\151\153\141\040\110\151\172\155\145\164\040\123\141
+\304\237\154\141\171\304\261\143\304\261\163\304\261\061\067\060
+\065\006\003\125\004\012\014\056\105\102\107\040\102\151\154\151
+\305\237\151\155\040\124\145\153\156\157\154\157\152\151\154\145
+\162\151\040\166\145\040\110\151\172\155\145\164\154\145\162\151
+\040\101\056\305\236\056\061\013\060\011\006\003\125\004\006\023
+\002\124\122
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\114\257\163\102\034\216\164\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\347\060\202\003\317\240\003\002\001\002\002\010\114
+\257\163\102\034\216\164\002\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\060\201\200\061\070\060\066\006\003\125
+\004\003\014\057\105\102\107\040\105\154\145\153\164\162\157\156
+\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172
+\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261
+\163\304\261\061\067\060\065\006\003\125\004\012\014\056\105\102
+\107\040\102\151\154\151\305\237\151\155\040\124\145\153\156\157
+\154\157\152\151\154\145\162\151\040\166\145\040\110\151\172\155
+\145\164\154\145\162\151\040\101\056\305\236\056\061\013\060\011
+\006\003\125\004\006\023\002\124\122\060\036\027\015\060\066\060
+\070\061\067\060\060\062\061\060\071\132\027\015\061\066\060\070
+\061\064\060\060\063\061\060\071\132\060\201\200\061\070\060\066
+\006\003\125\004\003\014\057\105\102\107\040\105\154\145\153\164
+\162\157\156\151\153\040\123\145\162\164\151\146\151\153\141\040
+\110\151\172\155\145\164\040\123\141\304\237\154\141\171\304\261
+\143\304\261\163\304\261\061\067\060\065\006\003\125\004\012\014
+\056\105\102\107\040\102\151\154\151\305\237\151\155\040\124\145
+\153\156\157\154\157\152\151\154\145\162\151\040\166\145\040\110
+\151\172\155\145\164\154\145\162\151\040\101\056\305\236\056\061
+\013\060\011\006\003\125\004\006\023\002\124\122\060\202\002\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\002\017\000\060\202\002\012\002\202\002\001\000\356\240\204
+\141\320\072\152\146\020\062\330\061\070\177\247\247\345\375\241
+\341\373\227\167\270\161\226\350\023\226\106\203\117\266\362\137
+\162\126\156\023\140\245\001\221\342\133\305\315\127\037\167\143
+\121\377\057\075\333\271\077\252\251\065\347\171\320\365\320\044
+\266\041\352\353\043\224\376\051\277\373\211\221\014\144\232\005
+\112\053\314\014\356\361\075\233\202\151\244\114\370\232\157\347
+\042\332\020\272\137\222\374\030\047\012\250\252\104\372\056\054
+\264\373\106\232\010\003\203\162\253\210\344\152\162\311\345\145
+\037\156\052\017\235\263\350\073\344\014\156\172\332\127\375\327
+\353\171\213\136\040\006\323\166\013\154\002\225\243\226\344\313
+\166\121\321\050\235\241\032\374\104\242\115\314\172\166\250\015
+\075\277\027\117\042\210\120\375\256\266\354\220\120\112\133\237
+\225\101\252\312\017\262\112\376\200\231\116\243\106\025\253\370
+\163\102\152\302\146\166\261\012\046\025\335\223\222\354\333\251
+\137\124\042\122\221\160\135\023\352\110\354\156\003\154\331\335
+\154\374\353\015\003\377\246\203\022\233\361\251\223\017\305\046
+\114\061\262\143\231\141\162\347\052\144\231\322\270\351\165\342
+\174\251\251\232\032\252\303\126\333\020\232\074\203\122\266\173
+\226\267\254\207\167\250\271\362\147\013\224\103\263\257\076\163
+\372\102\066\261\045\305\012\061\046\067\126\147\272\243\013\175
+\326\367\211\315\147\241\267\072\036\146\117\366\240\125\024\045
+\114\054\063\015\246\101\214\275\004\061\152\020\162\012\235\016
+\056\166\275\136\363\121\211\213\250\077\125\163\277\333\072\306
+\044\005\226\222\110\252\113\215\052\003\345\127\221\020\364\152
+\050\025\156\107\167\204\134\121\164\237\031\351\346\036\143\026
+\071\343\021\025\343\130\032\104\275\313\304\154\146\327\204\006
+\337\060\364\067\242\103\042\171\322\020\154\337\273\346\023\021
+\374\235\204\012\023\173\360\073\320\374\243\012\327\211\352\226
+\176\215\110\205\036\144\137\333\124\242\254\325\172\002\171\153
+\322\212\360\147\332\145\162\015\024\160\344\351\216\170\217\062
+\164\174\127\362\326\326\364\066\211\033\370\051\154\213\271\366
+\227\321\244\056\252\276\013\031\302\105\351\160\135\002\003\000
+\235\331\243\143\060\141\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\016\006\003\125\035\017\001\001
+\377\004\004\003\002\001\006\060\035\006\003\125\035\016\004\026
+\004\024\347\316\306\117\374\026\147\226\372\112\243\007\301\004
+\247\313\152\336\332\107\060\037\006\003\125\035\043\004\030\060
+\026\200\024\347\316\306\117\374\026\147\226\372\112\243\007\301
+\004\247\313\152\336\332\107\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\003\202\002\001\000\233\230\232\135\276
+\363\050\043\166\306\154\367\177\346\100\236\300\066\334\225\015
+\035\255\025\305\066\330\325\071\357\362\036\042\136\263\202\264
+\135\273\114\032\312\222\015\337\107\044\036\263\044\332\221\210
+\351\203\160\335\223\327\351\272\263\337\026\132\076\336\340\310
+\373\323\375\154\051\370\025\106\240\150\046\314\223\122\256\202
+\001\223\220\312\167\312\115\111\357\342\132\331\052\275\060\316
+\114\262\201\266\060\316\131\117\332\131\035\152\172\244\105\260
+\202\046\201\206\166\365\365\020\000\270\356\263\011\350\117\207
+\002\007\256\044\134\360\137\254\012\060\314\212\100\240\163\004
+\301\373\211\044\366\232\034\134\267\074\012\147\066\005\010\061
+\263\257\330\001\150\052\340\170\217\164\336\270\121\244\214\154
+\040\075\242\373\263\324\011\375\173\302\200\252\223\154\051\230
+\041\250\273\026\363\251\022\137\164\265\207\230\362\225\046\337
+\064\357\212\123\221\210\135\032\224\243\077\174\042\370\327\210
+\272\246\214\226\250\075\122\064\142\237\000\036\124\125\102\147
+\306\115\106\217\273\024\105\075\012\226\026\216\020\241\227\231
+\325\323\060\205\314\336\264\162\267\274\212\074\030\051\150\375
+\334\161\007\356\044\071\152\372\355\245\254\070\057\371\036\020
+\016\006\161\032\020\114\376\165\176\377\036\127\071\102\312\327
+\341\025\241\126\125\131\033\321\243\257\021\330\116\303\245\053
+\357\220\277\300\354\202\023\133\215\326\162\054\223\116\217\152
+\051\337\205\074\323\015\340\242\030\022\314\125\057\107\267\247
+\233\002\376\101\366\210\114\155\332\251\001\107\203\144\047\142
+\020\202\326\022\173\136\003\037\064\251\311\221\376\257\135\155
+\206\047\267\043\252\165\030\312\040\347\260\017\327\211\016\246
+\147\042\143\364\203\101\053\006\113\273\130\325\321\327\267\271
+\020\143\330\211\112\264\252\335\026\143\365\156\276\140\241\370
+\355\350\326\220\117\032\306\305\240\051\323\247\041\250\365\132
+\074\367\307\111\242\041\232\112\225\122\040\226\162\232\146\313
+\367\322\206\103\174\042\276\226\371\275\001\250\107\335\345\073
+\100\371\165\053\233\053\106\144\206\215\036\364\217\373\007\167
+\320\352\111\242\034\215\122\024\246\012\223
+END
+
+# Trust for Certificate "EBG Elektronik Sertifika Hizmet Saglayicisi"
+# Issuer: C=TR,O=EBG Bili..im Teknolojileri ve Hizmetleri A....,CN=EBG Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number:4c:af:73:42:1c:8e:74:02
+# Subject: C=TR,O=EBG Bili..im Teknolojileri ve Hizmetleri A....,CN=EBG Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Thu Aug 17 00:21:09 2006
+# Not Valid After : Sun Aug 14 00:31:09 2016
+# Fingerprint (MD5): 2C:20:26:9D:CB:1A:4A:00:85:B5:B7:5A:AE:C2:01:37
+# Fingerprint (SHA1): 8C:96:BA:EB:DD:2B:07:07:48:EE:30:32:66:A0:F3:98:6E:7C:AE:58
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "EBG Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\214\226\272\353\335\053\007\007\110\356\060\062\146\240\363\230
+\156\174\256\130
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\054\040\046\235\313\032\112\000\205\265\267\132\256\302\001\067
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\200\061\070\060\066\006\003\125\004\003\014\057\105\102
+\107\040\105\154\145\153\164\162\157\156\151\153\040\123\145\162
+\164\151\146\151\153\141\040\110\151\172\155\145\164\040\123\141
+\304\237\154\141\171\304\261\143\304\261\163\304\261\061\067\060
+\065\006\003\125\004\012\014\056\105\102\107\040\102\151\154\151
+\305\237\151\155\040\124\145\153\156\157\154\157\152\151\154\145
+\162\151\040\166\145\040\110\151\172\155\145\164\154\145\162\151
+\040\101\056\305\236\056\061\013\060\011\006\003\125\004\006\023
+\002\124\122
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\114\257\163\102\034\216\164\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "certSIGN ROOT CA"
+#
+# Issuer: OU=certSIGN ROOT CA,O=certSIGN,C=RO
+# Serial Number:20:06:05:16:70:02
+# Subject: OU=certSIGN ROOT CA,O=certSIGN,C=RO
+# Not Valid Before: Tue Jul 04 17:20:04 2006
+# Not Valid After : Fri Jul 04 17:20:04 2031
+# Fingerprint (MD5): 18:98:C0:D6:E9:3A:FC:F9:B0:F5:0C:F7:4B:01:44:17
+# Fingerprint (SHA1): FA:B7:EE:36:97:26:62:FB:2D:B0:2A:F6:BF:03:FD:E8:7C:4B:2F:9B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "certSIGN ROOT CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\073\061\013\060\011\006\003\125\004\006\023\002\122\117\061
+\021\060\017\006\003\125\004\012\023\010\143\145\162\164\123\111
+\107\116\061\031\060\027\006\003\125\004\013\023\020\143\145\162
+\164\123\111\107\116\040\122\117\117\124\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\073\061\013\060\011\006\003\125\004\006\023\002\122\117\061
+\021\060\017\006\003\125\004\012\023\010\143\145\162\164\123\111
+\107\116\061\031\060\027\006\003\125\004\013\023\020\143\145\162
+\164\123\111\107\116\040\122\117\117\124\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\040\006\005\026\160\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\070\060\202\002\040\240\003\002\001\002\002\006\040
+\006\005\026\160\002\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\060\073\061\013\060\011\006\003\125\004\006\023
+\002\122\117\061\021\060\017\006\003\125\004\012\023\010\143\145
+\162\164\123\111\107\116\061\031\060\027\006\003\125\004\013\023
+\020\143\145\162\164\123\111\107\116\040\122\117\117\124\040\103
+\101\060\036\027\015\060\066\060\067\060\064\061\067\062\060\060
+\064\132\027\015\063\061\060\067\060\064\061\067\062\060\060\064
+\132\060\073\061\013\060\011\006\003\125\004\006\023\002\122\117
+\061\021\060\017\006\003\125\004\012\023\010\143\145\162\164\123
+\111\107\116\061\031\060\027\006\003\125\004\013\023\020\143\145
+\162\164\123\111\107\116\040\122\117\117\124\040\103\101\060\202
+\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000\267
+\063\271\176\310\045\112\216\265\333\264\050\033\252\127\220\350
+\321\042\323\144\272\323\223\350\324\254\206\141\100\152\140\127
+\150\124\204\115\274\152\124\002\005\377\337\233\232\052\256\135
+\007\217\112\303\050\177\357\373\053\372\171\361\307\255\360\020
+\123\044\220\213\146\311\250\210\253\257\132\243\000\351\276\272
+\106\356\133\163\173\054\027\202\201\136\142\054\241\002\145\263
+\275\305\053\000\176\304\374\003\063\127\015\355\342\372\316\135
+\105\326\070\315\065\266\262\301\320\234\201\112\252\344\262\001
+\134\035\217\137\231\304\261\255\333\210\041\353\220\010\202\200
+\363\060\243\103\346\220\202\256\125\050\111\355\133\327\251\020
+\070\016\376\217\114\133\233\106\352\101\365\260\010\164\303\320
+\210\063\266\174\327\164\337\334\204\321\103\016\165\071\241\045
+\100\050\352\170\313\016\054\056\071\235\214\213\156\026\034\057
+\046\202\020\342\343\145\224\012\004\300\136\367\135\133\370\020
+\342\320\272\172\113\373\336\067\000\000\032\133\050\343\322\234
+\163\076\062\207\230\241\311\121\057\327\336\254\063\263\117\002
+\003\001\000\001\243\102\060\100\060\017\006\003\125\035\023\001
+\001\377\004\005\060\003\001\001\377\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\306\060\035\006\003\125\035\016
+\004\026\004\024\340\214\233\333\045\111\263\361\174\206\326\262
+\102\207\013\320\153\240\331\344\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\001\001\000\076\322\034\211
+\056\065\374\370\165\335\346\177\145\210\364\162\114\311\054\327
+\062\116\363\335\031\171\107\275\216\073\133\223\017\120\111\044
+\023\153\024\006\162\357\011\323\241\241\343\100\204\311\347\030
+\062\164\074\110\156\017\237\113\324\367\036\323\223\206\144\124
+\227\143\162\120\325\125\317\372\040\223\002\242\233\303\043\223
+\116\026\125\166\240\160\171\155\315\041\037\317\057\055\274\031
+\343\210\061\370\131\032\201\011\310\227\246\164\307\140\304\133
+\314\127\216\262\165\375\033\002\011\333\131\157\162\223\151\367
+\061\101\326\210\070\277\207\262\275\026\171\371\252\344\276\210
+\045\335\141\047\043\034\265\061\007\004\066\264\032\220\275\240
+\164\161\120\211\155\274\024\343\017\206\256\361\253\076\307\240
+\011\314\243\110\321\340\333\144\347\222\265\317\257\162\103\160
+\213\371\303\204\074\023\252\176\222\233\127\123\223\372\160\302
+\221\016\061\371\233\147\135\351\226\070\136\137\263\163\116\210
+\025\147\336\236\166\020\142\040\276\125\151\225\103\000\071\115
+\366\356\260\132\116\111\104\124\130\137\102\203
+END
+
+# Trust for Certificate "certSIGN ROOT CA"
+# Issuer: OU=certSIGN ROOT CA,O=certSIGN,C=RO
+# Serial Number:20:06:05:16:70:02
+# Subject: OU=certSIGN ROOT CA,O=certSIGN,C=RO
+# Not Valid Before: Tue Jul 04 17:20:04 2006
+# Not Valid After : Fri Jul 04 17:20:04 2031
+# Fingerprint (MD5): 18:98:C0:D6:E9:3A:FC:F9:B0:F5:0C:F7:4B:01:44:17
+# Fingerprint (SHA1): FA:B7:EE:36:97:26:62:FB:2D:B0:2A:F6:BF:03:FD:E8:7C:4B:2F:9B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "certSIGN ROOT CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\372\267\356\066\227\046\142\373\055\260\052\366\277\003\375\350
+\174\113\057\233
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\030\230\300\326\351\072\374\371\260\365\014\367\113\001\104\027
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\073\061\013\060\011\006\003\125\004\006\023\002\122\117\061
+\021\060\017\006\003\125\004\012\023\010\143\145\162\164\123\111
+\107\116\061\031\060\027\006\003\125\004\013\023\020\143\145\162
+\164\123\111\107\116\040\122\117\117\124\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\040\006\005\026\160\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "CNNIC ROOT"
+#
+# Issuer: CN=CNNIC ROOT,O=CNNIC,C=CN
+# Serial Number: 1228079105 (0x49330001)
+# Subject: CN=CNNIC ROOT,O=CNNIC,C=CN
+# Not Valid Before: Mon Apr 16 07:09:14 2007
+# Not Valid After : Fri Apr 16 07:09:14 2027
+# Fingerprint (MD5): 21:BC:82:AB:49:C4:13:3B:4B:B2:2B:5C:6B:90:9C:19
+# Fingerprint (SHA1): 8B:AF:4C:9B:1D:F0:2A:92:F7:DA:12:8E:B9:1B:AC:F4:98:60:4B:6F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CNNIC ROOT"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\062\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\016\060\014\006\003\125\004\012\023\005\103\116\116\111\103\061
+\023\060\021\006\003\125\004\003\023\012\103\116\116\111\103\040
+\122\117\117\124
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\062\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\016\060\014\006\003\125\004\012\023\005\103\116\116\111\103\061
+\023\060\021\006\003\125\004\003\023\012\103\116\116\111\103\040
+\122\117\117\124
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\111\063\000\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\125\060\202\002\075\240\003\002\001\002\002\004\111
+\063\000\001\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\062\061\013\060\011\006\003\125\004\006\023\002\103
+\116\061\016\060\014\006\003\125\004\012\023\005\103\116\116\111
+\103\061\023\060\021\006\003\125\004\003\023\012\103\116\116\111
+\103\040\122\117\117\124\060\036\027\015\060\067\060\064\061\066
+\060\067\060\071\061\064\132\027\015\062\067\060\064\061\066\060
+\067\060\071\061\064\132\060\062\061\013\060\011\006\003\125\004
+\006\023\002\103\116\061\016\060\014\006\003\125\004\012\023\005
+\103\116\116\111\103\061\023\060\021\006\003\125\004\003\023\012
+\103\116\116\111\103\040\122\117\117\124\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\323\065\367\077\163
+\167\255\350\133\163\027\302\321\157\355\125\274\156\352\350\244
+\171\262\154\303\243\357\341\237\261\073\110\205\365\232\134\041
+\042\020\054\305\202\316\332\343\232\156\067\341\207\054\334\271
+\014\132\272\210\125\337\375\252\333\037\061\352\001\361\337\071
+\001\301\023\375\110\122\041\304\125\337\332\330\263\124\166\272
+\164\261\267\175\327\300\350\366\131\305\115\310\275\255\037\024
+\332\337\130\104\045\062\031\052\307\176\176\216\256\070\260\060
+\173\107\162\011\061\360\060\333\303\033\166\051\273\151\166\116
+\127\371\033\144\242\223\126\267\157\231\156\333\012\004\234\021
+\343\200\037\313\143\224\020\012\251\341\144\202\061\371\214\047
+\355\246\231\000\366\160\223\030\370\241\064\206\243\335\172\302
+\030\171\366\172\145\065\317\220\353\275\063\223\237\123\253\163
+\073\346\233\064\040\057\035\357\251\035\143\032\240\200\333\003
+\057\371\046\032\206\322\215\273\251\276\122\072\207\147\110\015
+\277\264\240\330\046\276\043\137\163\067\177\046\346\222\004\243
+\177\317\040\247\267\363\072\312\313\231\313\002\003\001\000\001
+\243\163\060\161\060\021\006\011\140\206\110\001\206\370\102\001
+\001\004\004\003\002\000\007\060\037\006\003\125\035\043\004\030
+\060\026\200\024\145\362\061\255\052\367\367\335\122\226\012\307
+\002\301\016\357\246\325\073\021\060\017\006\003\125\035\023\001
+\001\377\004\005\060\003\001\001\377\060\013\006\003\125\035\017
+\004\004\003\002\001\376\060\035\006\003\125\035\016\004\026\004
+\024\145\362\061\255\052\367\367\335\122\226\012\307\002\301\016
+\357\246\325\073\021\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\003\202\001\001\000\113\065\356\314\344\256\277
+\303\156\255\237\225\073\113\077\133\036\337\127\051\242\131\312
+\070\342\271\032\377\236\346\156\062\335\036\256\352\065\267\365
+\223\221\116\332\102\341\303\027\140\120\362\321\134\046\271\202
+\267\352\155\344\234\204\347\003\171\027\257\230\075\224\333\307
+\272\000\347\270\277\001\127\301\167\105\062\014\073\361\264\034
+\010\260\375\121\240\241\335\232\035\023\066\232\155\267\307\074
+\271\341\305\331\027\372\203\325\075\025\240\074\273\036\013\342
+\310\220\077\250\206\014\374\371\213\136\205\313\117\133\113\142
+\021\107\305\105\174\005\057\101\261\236\020\151\033\231\226\340
+\125\171\373\116\206\231\270\224\332\206\070\152\223\243\347\313
+\156\345\337\352\041\125\211\234\175\175\177\230\365\000\211\356
+\343\204\300\134\226\265\305\106\352\106\340\205\125\266\033\311
+\022\326\301\315\315\200\363\002\001\074\310\151\313\105\110\143
+\330\224\320\354\205\016\073\116\021\145\364\202\214\246\075\256
+\056\042\224\011\310\134\352\074\201\135\026\052\003\227\026\125
+\011\333\212\101\202\236\146\233\021
+END
+
+# Trust for Certificate "CNNIC ROOT"
+# Issuer: CN=CNNIC ROOT,O=CNNIC,C=CN
+# Serial Number: 1228079105 (0x49330001)
+# Subject: CN=CNNIC ROOT,O=CNNIC,C=CN
+# Not Valid Before: Mon Apr 16 07:09:14 2007
+# Not Valid After : Fri Apr 16 07:09:14 2027
+# Fingerprint (MD5): 21:BC:82:AB:49:C4:13:3B:4B:B2:2B:5C:6B:90:9C:19
+# Fingerprint (SHA1): 8B:AF:4C:9B:1D:F0:2A:92:F7:DA:12:8E:B9:1B:AC:F4:98:60:4B:6F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CNNIC ROOT"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\213\257\114\233\035\360\052\222\367\332\022\216\271\033\254\364
+\230\140\113\157
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\041\274\202\253\111\304\023\073\113\262\053\134\153\220\234\031
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\062\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\016\060\014\006\003\125\004\012\023\005\103\116\116\111\103\061
+\023\060\021\006\003\125\004\003\023\012\103\116\116\111\103\040
+\122\117\117\124
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\111\063\000\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ApplicationCA - Japanese Government"
+#
+# Issuer: OU=ApplicationCA,O=Japanese Government,C=JP
+# Serial Number: 49 (0x31)
+# Subject: OU=ApplicationCA,O=Japanese Government,C=JP
+# Not Valid Before: Wed Dec 12 15:00:00 2007
+# Not Valid After : Tue Dec 12 15:00:00 2017
+# Fingerprint (MD5): 7E:23:4E:5B:A7:A5:B4:25:E9:00:07:74:11:62:AE:D6
+# Fingerprint (SHA1): 7F:8A:B0:CF:D0:51:87:6A:66:F3:36:0F:47:C8:8D:8C:D3:35:FC:74
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ApplicationCA - Japanese Government"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\103\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\034\060\032\006\003\125\004\012\023\023\112\141\160\141\156\145
+\163\145\040\107\157\166\145\162\156\155\145\156\164\061\026\060
+\024\006\003\125\004\013\023\015\101\160\160\154\151\143\141\164
+\151\157\156\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\103\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\034\060\032\006\003\125\004\012\023\023\112\141\160\141\156\145
+\163\145\040\107\157\166\145\162\156\155\145\156\164\061\026\060
+\024\006\003\125\004\013\023\015\101\160\160\154\151\143\141\164
+\151\157\156\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\061
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\240\060\202\002\210\240\003\002\001\002\002\001\061
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\103\061\013\060\011\006\003\125\004\006\023\002\112\120\061\034
+\060\032\006\003\125\004\012\023\023\112\141\160\141\156\145\163
+\145\040\107\157\166\145\162\156\155\145\156\164\061\026\060\024
+\006\003\125\004\013\023\015\101\160\160\154\151\143\141\164\151
+\157\156\103\101\060\036\027\015\060\067\061\062\061\062\061\065
+\060\060\060\060\132\027\015\061\067\061\062\061\062\061\065\060
+\060\060\060\132\060\103\061\013\060\011\006\003\125\004\006\023
+\002\112\120\061\034\060\032\006\003\125\004\012\023\023\112\141
+\160\141\156\145\163\145\040\107\157\166\145\162\156\155\145\156
+\164\061\026\060\024\006\003\125\004\013\023\015\101\160\160\154
+\151\143\141\164\151\157\156\103\101\060\202\001\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017
+\000\060\202\001\012\002\202\001\001\000\247\155\340\164\116\207
+\217\245\006\336\150\242\333\206\231\113\144\015\161\360\012\005
+\233\216\252\341\314\056\322\152\073\301\172\264\227\141\215\212
+\276\306\232\234\006\264\206\121\344\067\016\164\170\176\137\212
+\177\224\244\327\107\010\375\120\132\126\344\150\254\050\163\240
+\173\351\177\030\222\100\117\055\235\365\256\104\110\163\066\006
+\236\144\054\073\064\043\333\134\046\344\161\171\217\324\156\171
+\042\271\223\301\312\315\301\126\355\210\152\327\240\071\041\004
+\127\054\242\365\274\107\101\117\136\064\042\225\265\037\051\155
+\136\112\363\115\162\276\101\126\040\207\374\351\120\107\327\060
+\024\356\134\214\125\272\131\215\207\374\043\336\223\320\004\214
+\375\357\155\275\320\172\311\245\072\152\162\063\306\112\015\005
+\027\052\055\173\261\247\330\326\360\276\364\077\352\016\050\155
+\101\141\043\166\170\303\270\145\244\363\132\256\314\302\252\331
+\347\130\336\266\176\235\205\156\237\052\012\157\237\003\051\060
+\227\050\035\274\267\317\124\051\116\121\061\371\047\266\050\046
+\376\242\143\346\101\026\360\063\230\107\002\003\001\000\001\243
+\201\236\060\201\233\060\035\006\003\125\035\016\004\026\004\024
+\124\132\313\046\077\161\314\224\106\015\226\123\352\153\110\320
+\223\376\102\165\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\131\006\003\125\035\021\004\122\060\120\244
+\116\060\114\061\013\060\011\006\003\125\004\006\023\002\112\120
+\061\030\060\026\006\003\125\004\012\014\017\346\227\245\346\234
+\254\345\233\275\346\224\277\345\272\234\061\043\060\041\006\003
+\125\004\013\014\032\343\202\242\343\203\227\343\203\252\343\202
+\261\343\203\274\343\202\267\343\203\247\343\203\263\103\101\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\071\152\104\166\167\070\072\354\243\147\106\017
+\371\213\006\250\373\152\220\061\316\176\354\332\321\211\174\172
+\353\056\014\275\231\062\347\260\044\326\303\377\365\262\210\011
+\207\054\343\124\341\243\246\262\010\013\300\205\250\310\322\234
+\161\366\035\237\140\374\070\063\023\341\236\334\013\137\332\026
+\120\051\173\057\160\221\017\231\272\064\064\215\225\164\305\176
+\170\251\146\135\275\312\041\167\102\020\254\146\046\075\336\221
+\253\375\025\360\157\355\154\137\020\370\363\026\366\003\212\217
+\247\022\021\014\313\375\077\171\301\234\375\142\356\243\317\124
+\014\321\053\137\027\076\343\076\277\300\053\076\011\233\376\210
+\246\176\264\222\027\374\043\224\201\275\156\247\305\214\302\353
+\021\105\333\370\101\311\226\166\352\160\137\171\022\153\344\243
+\007\132\005\357\047\111\317\041\237\212\114\011\160\146\251\046
+\301\053\021\116\063\322\016\374\326\154\322\016\062\144\150\377
+\255\005\170\137\003\035\250\343\220\254\044\340\017\100\247\113
+\256\213\050\267\202\312\030\007\346\267\133\164\351\040\031\177
+\262\033\211\124
+END
+
+# Trust for Certificate "ApplicationCA - Japanese Government"
+# Issuer: OU=ApplicationCA,O=Japanese Government,C=JP
+# Serial Number: 49 (0x31)
+# Subject: OU=ApplicationCA,O=Japanese Government,C=JP
+# Not Valid Before: Wed Dec 12 15:00:00 2007
+# Not Valid After : Tue Dec 12 15:00:00 2017
+# Fingerprint (MD5): 7E:23:4E:5B:A7:A5:B4:25:E9:00:07:74:11:62:AE:D6
+# Fingerprint (SHA1): 7F:8A:B0:CF:D0:51:87:6A:66:F3:36:0F:47:C8:8D:8C:D3:35:FC:74
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ApplicationCA - Japanese Government"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\177\212\260\317\320\121\207\152\146\363\066\017\107\310\215\214
+\323\065\374\164
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\176\043\116\133\247\245\264\045\351\000\007\164\021\142\256\326
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\103\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\034\060\032\006\003\125\004\012\023\023\112\141\160\141\156\145
+\163\145\040\107\157\166\145\162\156\155\145\156\164\061\026\060
+\024\006\003\125\004\013\023\015\101\160\160\154\151\143\141\164
+\151\157\156\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\061
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GeoTrust Primary Certification Authority - G3"
+#
+# Issuer: CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Serial Number:15:ac:6e:94:19:b2:79:4b:41:f6:27:a9:c3:18:0f:1f
+# Subject: CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Not Valid Before: Wed Apr 02 00:00:00 2008
+# Not Valid After : Tue Dec 01 23:59:59 2037
+# Fingerprint (MD5): B5:E8:34:36:C9:10:44:58:48:70:6D:2E:83:D4:B8:05
+# Fingerprint (SHA1): 03:9E:ED:B8:0B:E7:A0:3C:69:53:89:3B:20:D2:D9:32:3A:4C:2A:FD
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Primary Certification Authority - G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162
+\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\050\143\051\040\062\060\060\070\040\107\145\157\124
+\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145
+\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162
+\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\050\143\051\040\062\060\060\070\040\107\145\157\124
+\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145
+\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\025\254\156\224\031\262\171\113\101\366\047\251\303\030
+\017\037
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\376\060\202\002\346\240\003\002\001\002\002\020\025
+\254\156\224\031\262\171\113\101\366\047\251\303\030\017\037\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\201
+\230\061\013\060\011\006\003\125\004\006\023\002\125\123\061\026
+\060\024\006\003\125\004\012\023\015\107\145\157\124\162\165\163
+\164\040\111\156\143\056\061\071\060\067\006\003\125\004\013\023
+\060\050\143\051\040\062\060\060\070\040\107\145\157\124\162\165
+\163\164\040\111\156\143\056\040\055\040\106\157\162\040\141\165
+\164\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154
+\171\061\066\060\064\006\003\125\004\003\023\055\107\145\157\124
+\162\165\163\164\040\120\162\151\155\141\162\171\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\040\055\040\107\063\060\036\027\015\060\070\060
+\064\060\062\060\060\060\060\060\060\132\027\015\063\067\061\062
+\060\061\062\063\065\071\065\071\132\060\201\230\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\026\060\024\006\003\125
+\004\012\023\015\107\145\157\124\162\165\163\164\040\111\156\143
+\056\061\071\060\067\006\003\125\004\013\023\060\050\143\051\040
+\062\060\060\070\040\107\145\157\124\162\165\163\164\040\111\156
+\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151
+\172\145\144\040\165\163\145\040\157\156\154\171\061\066\060\064
+\006\003\125\004\003\023\055\107\145\157\124\162\165\163\164\040
+\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040
+\055\040\107\063\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\334\342\136\142\130\035\063\127\071\062\063
+\372\353\313\207\214\247\324\112\335\006\210\352\144\216\061\230
+\245\070\220\036\230\317\056\143\053\360\106\274\104\262\211\241
+\300\050\014\111\160\041\225\237\144\300\246\223\022\002\145\046
+\206\306\245\211\360\372\327\204\240\160\257\117\032\227\077\006
+\104\325\311\353\162\020\175\344\061\050\373\034\141\346\050\007
+\104\163\222\042\151\247\003\210\154\235\143\310\122\332\230\047
+\347\010\114\160\076\264\311\022\301\305\147\203\135\063\363\003
+\021\354\152\320\123\342\321\272\066\140\224\200\273\141\143\154
+\133\027\176\337\100\224\036\253\015\302\041\050\160\210\377\326
+\046\154\154\140\004\045\116\125\176\175\357\277\224\110\336\267
+\035\335\160\215\005\137\210\245\233\362\302\356\352\321\100\101
+\155\142\070\035\126\006\305\003\107\121\040\031\374\173\020\013
+\016\142\256\166\125\277\137\167\276\076\111\001\123\075\230\045
+\003\166\044\132\035\264\333\211\352\171\345\266\263\073\077\272
+\114\050\101\177\006\254\152\216\301\320\366\005\035\175\346\102
+\206\343\245\325\107\002\003\001\000\001\243\102\060\100\060\017
+\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060
+\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060
+\035\006\003\125\035\016\004\026\004\024\304\171\312\216\241\116
+\003\035\034\334\153\333\061\133\224\076\077\060\177\055\060\015
+\006\011\052\206\110\206\367\015\001\001\013\005\000\003\202\001
+\001\000\055\305\023\317\126\200\173\172\170\275\237\256\054\231
+\347\357\332\337\224\136\011\151\247\347\156\150\214\275\162\276
+\107\251\016\227\022\270\112\361\144\323\071\337\045\064\324\301
+\315\116\201\360\017\004\304\044\263\064\226\306\246\252\060\337
+\150\141\163\327\371\216\205\211\357\016\136\225\050\112\052\047
+\217\020\216\056\174\206\304\002\236\332\014\167\145\016\104\015
+\222\375\375\263\026\066\372\021\015\035\214\016\007\211\152\051
+\126\367\162\364\335\025\234\167\065\146\127\253\023\123\330\216
+\301\100\305\327\023\026\132\162\307\267\151\001\304\172\261\203
+\001\150\175\215\101\241\224\030\301\045\134\374\360\376\203\002
+\207\174\015\015\317\056\010\134\112\100\015\076\354\201\141\346
+\044\333\312\340\016\055\007\262\076\126\334\215\365\101\205\007
+\110\233\014\013\313\111\077\175\354\267\375\313\215\147\211\032
+\253\355\273\036\243\000\010\010\027\052\202\134\061\135\106\212
+\055\017\206\233\164\331\105\373\324\100\261\172\252\150\055\206
+\262\231\042\341\301\053\307\234\370\363\137\250\202\022\353\031
+\021\055
+END
+
+# Trust for Certificate "GeoTrust Primary Certification Authority - G3"
+# Issuer: CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Serial Number:15:ac:6e:94:19:b2:79:4b:41:f6:27:a9:c3:18:0f:1f
+# Subject: CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Not Valid Before: Wed Apr 02 00:00:00 2008
+# Not Valid After : Tue Dec 01 23:59:59 2037
+# Fingerprint (MD5): B5:E8:34:36:C9:10:44:58:48:70:6D:2E:83:D4:B8:05
+# Fingerprint (SHA1): 03:9E:ED:B8:0B:E7:A0:3C:69:53:89:3B:20:D2:D9:32:3A:4C:2A:FD
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Primary Certification Authority - G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\003\236\355\270\013\347\240\074\151\123\211\073\040\322\331\062
+\072\114\052\375
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\265\350\064\066\311\020\104\130\110\160\155\056\203\324\270\005
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162
+\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\050\143\051\040\062\060\060\070\040\107\145\157\124
+\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145
+\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\025\254\156\224\031\262\171\113\101\366\047\251\303\030
+\017\037
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "thawte Primary Root CA - G2"
+#
+# Issuer: CN=thawte Primary Root CA - G2,OU="(c) 2007 thawte, Inc. - For authorized use only",O="thawte, Inc.",C=US
+# Serial Number:35:fc:26:5c:d9:84:4f:c9:3d:26:3d:57:9b:ae:d7:56
+# Subject: CN=thawte Primary Root CA - G2,OU="(c) 2007 thawte, Inc. - For authorized use only",O="thawte, Inc.",C=US
+# Not Valid Before: Mon Nov 05 00:00:00 2007
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 74:9D:EA:60:24:C4:FD:22:53:3E:CC:3A:72:D9:29:4F
+# Fingerprint (SHA1): AA:DB:BC:22:23:8F:C4:01:A1:27:BB:38:DD:F4:1D:DB:08:9E:F0:12
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "thawte Primary Root CA - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\204\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\070\060\066\006\003\125\004\013
+\023\057\050\143\051\040\062\060\060\067\040\164\150\141\167\164
+\145\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165
+\164\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154
+\171\061\044\060\042\006\003\125\004\003\023\033\164\150\141\167
+\164\145\040\120\162\151\155\141\162\171\040\122\157\157\164\040
+\103\101\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\204\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\070\060\066\006\003\125\004\013
+\023\057\050\143\051\040\062\060\060\067\040\164\150\141\167\164
+\145\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165
+\164\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154
+\171\061\044\060\042\006\003\125\004\003\023\033\164\150\141\167
+\164\145\040\120\162\151\155\141\162\171\040\122\157\157\164\040
+\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\065\374\046\134\331\204\117\311\075\046\075\127\233\256
+\327\126
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\210\060\202\002\015\240\003\002\001\002\002\020\065
+\374\046\134\331\204\117\311\075\046\075\127\233\256\327\126\060
+\012\006\010\052\206\110\316\075\004\003\003\060\201\204\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\025\060\023\006
+\003\125\004\012\023\014\164\150\141\167\164\145\054\040\111\156
+\143\056\061\070\060\066\006\003\125\004\013\023\057\050\143\051
+\040\062\060\060\067\040\164\150\141\167\164\145\054\040\111\156
+\143\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151
+\172\145\144\040\165\163\145\040\157\156\154\171\061\044\060\042
+\006\003\125\004\003\023\033\164\150\141\167\164\145\040\120\162
+\151\155\141\162\171\040\122\157\157\164\040\103\101\040\055\040
+\107\062\060\036\027\015\060\067\061\061\060\065\060\060\060\060
+\060\060\132\027\015\063\070\060\061\061\070\062\063\065\071\065
+\071\132\060\201\204\061\013\060\011\006\003\125\004\006\023\002
+\125\123\061\025\060\023\006\003\125\004\012\023\014\164\150\141
+\167\164\145\054\040\111\156\143\056\061\070\060\066\006\003\125
+\004\013\023\057\050\143\051\040\062\060\060\067\040\164\150\141
+\167\164\145\054\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\044\060\042\006\003\125\004\003\023\033\164\150
+\141\167\164\145\040\120\162\151\155\141\162\171\040\122\157\157
+\164\040\103\101\040\055\040\107\062\060\166\060\020\006\007\052
+\206\110\316\075\002\001\006\005\053\201\004\000\042\003\142\000
+\004\242\325\234\202\173\225\235\361\122\170\207\376\212\026\277
+\005\346\337\243\002\117\015\007\306\000\121\272\014\002\122\055
+\042\244\102\071\304\376\217\352\311\301\276\324\115\377\237\172
+\236\342\261\174\232\255\247\206\011\163\207\321\347\232\343\172
+\245\252\156\373\272\263\160\300\147\210\242\065\324\243\232\261
+\375\255\302\357\061\372\250\271\363\373\010\306\221\321\373\051
+\225\243\102\060\100\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\035\006\003\125\035\016\004\026\004
+\024\232\330\000\060\000\347\153\177\205\030\356\213\266\316\212
+\014\370\021\341\273\060\012\006\010\052\206\110\316\075\004\003
+\003\003\151\000\060\146\002\061\000\335\370\340\127\107\133\247
+\346\012\303\275\365\200\212\227\065\015\033\211\074\124\206\167
+\050\312\241\364\171\336\265\346\070\260\360\145\160\214\177\002
+\124\302\277\377\330\241\076\331\317\002\061\000\304\215\224\374
+\334\123\322\334\235\170\026\037\025\063\043\123\122\343\132\061
+\135\235\312\256\275\023\051\104\015\047\133\250\347\150\234\022
+\367\130\077\056\162\002\127\243\217\241\024\056
+END
+
+# Trust for Certificate "thawte Primary Root CA - G2"
+# Issuer: CN=thawte Primary Root CA - G2,OU="(c) 2007 thawte, Inc. - For authorized use only",O="thawte, Inc.",C=US
+# Serial Number:35:fc:26:5c:d9:84:4f:c9:3d:26:3d:57:9b:ae:d7:56
+# Subject: CN=thawte Primary Root CA - G2,OU="(c) 2007 thawte, Inc. - For authorized use only",O="thawte, Inc.",C=US
+# Not Valid Before: Mon Nov 05 00:00:00 2007
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 74:9D:EA:60:24:C4:FD:22:53:3E:CC:3A:72:D9:29:4F
+# Fingerprint (SHA1): AA:DB:BC:22:23:8F:C4:01:A1:27:BB:38:DD:F4:1D:DB:08:9E:F0:12
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "thawte Primary Root CA - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\252\333\274\042\043\217\304\001\241\047\273\070\335\364\035\333
+\010\236\360\022
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\164\235\352\140\044\304\375\042\123\076\314\072\162\331\051\117
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\204\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\070\060\066\006\003\125\004\013
+\023\057\050\143\051\040\062\060\060\067\040\164\150\141\167\164
+\145\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165
+\164\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154
+\171\061\044\060\042\006\003\125\004\003\023\033\164\150\141\167
+\164\145\040\120\162\151\155\141\162\171\040\122\157\157\164\040
+\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\065\374\046\134\331\204\117\311\075\046\075\127\233\256
+\327\126
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "thawte Primary Root CA - G3"
+#
+# Issuer: CN=thawte Primary Root CA - G3,OU="(c) 2008 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Serial Number:60:01:97:b7:46:a7:ea:b4:b4:9a:d6:4b:2f:f7:90:fb
+# Subject: CN=thawte Primary Root CA - G3,OU="(c) 2008 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Not Valid Before: Wed Apr 02 00:00:00 2008
+# Not Valid After : Tue Dec 01 23:59:59 2037
+# Fingerprint (MD5): FB:1B:5D:43:8A:94:CD:44:C6:76:F2:43:4B:47:E7:31
+# Fingerprint (SHA1): F1:8B:53:8D:1B:E9:03:B6:A6:F0:56:43:5B:17:15:89:CA:F3:6B:F2
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "thawte Primary Root CA - G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013
+\023\037\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\123\145\162\166\151\143\145\163\040\104\151\166\151\163\151\157
+\156\061\070\060\066\006\003\125\004\013\023\057\050\143\051\040
+\062\060\060\070\040\164\150\141\167\164\145\054\040\111\156\143
+\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151\172
+\145\144\040\165\163\145\040\157\156\154\171\061\044\060\042\006
+\003\125\004\003\023\033\164\150\141\167\164\145\040\120\162\151
+\155\141\162\171\040\122\157\157\164\040\103\101\040\055\040\107
+\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013
+\023\037\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\123\145\162\166\151\143\145\163\040\104\151\166\151\163\151\157
+\156\061\070\060\066\006\003\125\004\013\023\057\050\143\051\040
+\062\060\060\070\040\164\150\141\167\164\145\054\040\111\156\143
+\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151\172
+\145\144\040\165\163\145\040\157\156\154\171\061\044\060\042\006
+\003\125\004\003\023\033\164\150\141\167\164\145\040\120\162\151
+\155\141\162\171\040\122\157\157\164\040\103\101\040\055\040\107
+\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\140\001\227\267\106\247\352\264\264\232\326\113\057\367
+\220\373
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\052\060\202\003\022\240\003\002\001\002\002\020\140
+\001\227\267\106\247\352\264\264\232\326\113\057\367\220\373\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\201
+\256\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025
+\060\023\006\003\125\004\012\023\014\164\150\141\167\164\145\054
+\040\111\156\143\056\061\050\060\046\006\003\125\004\013\023\037
+\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145
+\162\166\151\143\145\163\040\104\151\166\151\163\151\157\156\061
+\070\060\066\006\003\125\004\013\023\057\050\143\051\040\062\060
+\060\070\040\164\150\141\167\164\145\054\040\111\156\143\056\040
+\055\040\106\157\162\040\141\165\164\150\157\162\151\172\145\144
+\040\165\163\145\040\157\156\154\171\061\044\060\042\006\003\125
+\004\003\023\033\164\150\141\167\164\145\040\120\162\151\155\141
+\162\171\040\122\157\157\164\040\103\101\040\055\040\107\063\060
+\036\027\015\060\070\060\064\060\062\060\060\060\060\060\060\132
+\027\015\063\067\061\062\060\061\062\063\065\071\065\071\132\060
+\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164\145
+\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013\023
+\037\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123
+\145\162\166\151\143\145\163\040\104\151\166\151\163\151\157\156
+\061\070\060\066\006\003\125\004\013\023\057\050\143\051\040\062
+\060\060\070\040\164\150\141\167\164\145\054\040\111\156\143\056
+\040\055\040\106\157\162\040\141\165\164\150\157\162\151\172\145
+\144\040\165\163\145\040\157\156\154\171\061\044\060\042\006\003
+\125\004\003\023\033\164\150\141\167\164\145\040\120\162\151\155
+\141\162\171\040\122\157\157\164\040\103\101\040\055\040\107\063
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\262\277\047\054\373\333\330\133\335\170\173\033\236\167\146
+\201\313\076\274\174\256\363\246\047\232\064\243\150\061\161\070
+\063\142\344\363\161\146\171\261\251\145\243\245\213\325\217\140
+\055\077\102\314\252\153\062\300\043\313\054\101\335\344\337\374
+\141\234\342\163\262\042\225\021\103\030\137\304\266\037\127\154
+\012\005\130\042\310\066\114\072\174\245\321\317\206\257\210\247
+\104\002\023\164\161\163\012\102\131\002\370\033\024\153\102\337
+\157\137\272\153\202\242\235\133\347\112\275\036\001\162\333\113
+\164\350\073\177\177\175\037\004\264\046\233\340\264\132\254\107
+\075\125\270\327\260\046\122\050\001\061\100\146\330\331\044\275
+\366\052\330\354\041\111\134\233\366\172\351\177\125\065\176\226
+\153\215\223\223\047\313\222\273\352\254\100\300\237\302\370\200
+\317\135\364\132\334\316\164\206\246\076\154\013\123\312\275\222
+\316\031\006\162\346\014\134\070\151\307\004\326\274\154\316\133
+\366\367\150\234\334\045\025\110\210\241\351\251\370\230\234\340
+\363\325\061\050\141\021\154\147\226\215\071\231\313\302\105\044
+\071\002\003\001\000\001\243\102\060\100\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125
+\035\016\004\026\004\024\255\154\252\224\140\234\355\344\377\372
+\076\012\164\053\143\003\367\266\131\277\060\015\006\011\052\206
+\110\206\367\015\001\001\013\005\000\003\202\001\001\000\032\100
+\330\225\145\254\011\222\211\306\071\364\020\345\251\016\146\123
+\135\170\336\372\044\221\273\347\104\121\337\306\026\064\012\357
+\152\104\121\352\053\007\212\003\172\303\353\077\012\054\122\026
+\240\053\103\271\045\220\077\160\251\063\045\155\105\032\050\073
+\047\317\252\303\051\102\033\337\073\114\300\063\064\133\101\210
+\277\153\053\145\257\050\357\262\365\303\252\146\316\173\126\356
+\267\310\313\147\301\311\234\032\030\270\304\303\111\003\361\140
+\016\120\315\106\305\363\167\171\367\266\025\340\070\333\307\057
+\050\240\014\077\167\046\164\331\045\022\332\061\332\032\036\334
+\051\101\221\042\074\151\247\273\002\362\266\134\047\003\211\364
+\006\352\233\344\162\202\343\241\011\301\351\000\031\323\076\324
+\160\153\272\161\246\252\130\256\364\273\351\154\266\357\207\314
+\233\273\377\071\346\126\141\323\012\247\304\134\114\140\173\005
+\167\046\172\277\330\007\122\054\142\367\160\143\331\071\274\157
+\034\302\171\334\166\051\257\316\305\054\144\004\136\210\066\156
+\061\324\100\032\142\064\066\077\065\001\256\254\143\240
+END
+
+# Trust for Certificate "thawte Primary Root CA - G3"
+# Issuer: CN=thawte Primary Root CA - G3,OU="(c) 2008 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Serial Number:60:01:97:b7:46:a7:ea:b4:b4:9a:d6:4b:2f:f7:90:fb
+# Subject: CN=thawte Primary Root CA - G3,OU="(c) 2008 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
+# Not Valid Before: Wed Apr 02 00:00:00 2008
+# Not Valid After : Tue Dec 01 23:59:59 2037
+# Fingerprint (MD5): FB:1B:5D:43:8A:94:CD:44:C6:76:F2:43:4B:47:E7:31
+# Fingerprint (SHA1): F1:8B:53:8D:1B:E9:03:B6:A6:F0:56:43:5B:17:15:89:CA:F3:6B:F2
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "thawte Primary Root CA - G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\361\213\123\215\033\351\003\266\246\360\126\103\133\027\025\211
+\312\363\153\362
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\373\033\135\103\212\224\315\104\306\166\362\103\113\107\347\061
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\164\150\141\167\164
+\145\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013
+\023\037\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\123\145\162\166\151\143\145\163\040\104\151\166\151\163\151\157
+\156\061\070\060\066\006\003\125\004\013\023\057\050\143\051\040
+\062\060\060\070\040\164\150\141\167\164\145\054\040\111\156\143
+\056\040\055\040\106\157\162\040\141\165\164\150\157\162\151\172
+\145\144\040\165\163\145\040\157\156\154\171\061\044\060\042\006
+\003\125\004\003\023\033\164\150\141\167\164\145\040\120\162\151
+\155\141\162\171\040\122\157\157\164\040\103\101\040\055\040\107
+\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\140\001\227\267\106\247\352\264\264\232\326\113\057\367
+\220\373
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GeoTrust Primary Certification Authority - G2"
+#
+# Issuer: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Serial Number:3c:b2:f4:48:0a:00:e2:fe:eb:24:3b:5e:60:3e:c3:6b
+# Subject: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Not Valid Before: Mon Nov 05 00:00:00 2007
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 01:5E:D8:6B:BD:6F:3D:8E:A1:31:F8:12:E0:98:73:6A
+# Fingerprint (SHA1): 8D:17:84:D5:37:F3:03:7D:EC:70:FE:57:8B:51:9A:99:E6:10:D7:B0
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Primary Certification Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162
+\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\050\143\051\040\062\060\060\067\040\107\145\157\124
+\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145
+\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162
+\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\050\143\051\040\062\060\060\067\040\107\145\157\124
+\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145
+\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\074\262\364\110\012\000\342\376\353\044\073\136\140\076
+\303\153
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\256\060\202\002\065\240\003\002\001\002\002\020\074
+\262\364\110\012\000\342\376\353\044\073\136\140\076\303\153\060
+\012\006\010\052\206\110\316\075\004\003\003\060\201\230\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\026\060\024\006
+\003\125\004\012\023\015\107\145\157\124\162\165\163\164\040\111
+\156\143\056\061\071\060\067\006\003\125\004\013\023\060\050\143
+\051\040\062\060\060\067\040\107\145\157\124\162\165\163\164\040
+\111\156\143\056\040\055\040\106\157\162\040\141\165\164\150\157
+\162\151\172\145\144\040\165\163\145\040\157\156\154\171\061\066
+\060\064\006\003\125\004\003\023\055\107\145\157\124\162\165\163
+\164\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\040\055\040\107\062\060\036\027\015\060\067\061\061\060\065
+\060\060\060\060\060\060\132\027\015\063\070\060\061\061\070\062
+\063\065\071\065\071\132\060\201\230\061\013\060\011\006\003\125
+\004\006\023\002\125\123\061\026\060\024\006\003\125\004\012\023
+\015\107\145\157\124\162\165\163\164\040\111\156\143\056\061\071
+\060\067\006\003\125\004\013\023\060\050\143\051\040\062\060\060
+\067\040\107\145\157\124\162\165\163\164\040\111\156\143\056\040
+\055\040\106\157\162\040\141\165\164\150\157\162\151\172\145\144
+\040\165\163\145\040\157\156\154\171\061\066\060\064\006\003\125
+\004\003\023\055\107\145\157\124\162\165\163\164\040\120\162\151
+\155\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\062\060\166\060\020\006\007\052\206\110\316\075\002\001\006\005
+\053\201\004\000\042\003\142\000\004\025\261\350\375\003\025\103
+\345\254\353\207\067\021\142\357\322\203\066\122\175\105\127\013
+\112\215\173\124\073\072\156\137\025\002\300\120\246\317\045\057
+\175\312\110\270\307\120\143\034\052\041\010\174\232\066\330\013
+\376\321\046\305\130\061\060\050\045\363\135\135\243\270\266\245
+\264\222\355\154\054\237\353\335\103\211\242\074\113\110\221\035
+\120\354\046\337\326\140\056\275\041\243\102\060\100\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\035
+\006\003\125\035\016\004\026\004\024\025\137\065\127\121\125\373
+\045\262\255\003\151\374\001\243\372\276\021\125\325\060\012\006
+\010\052\206\110\316\075\004\003\003\003\147\000\060\144\002\060
+\144\226\131\246\350\011\336\213\272\372\132\210\210\360\037\221
+\323\106\250\362\112\114\002\143\373\154\137\070\333\056\101\223
+\251\016\346\235\334\061\034\262\240\247\030\034\171\341\307\066
+\002\060\072\126\257\232\164\154\366\373\203\340\063\323\010\137
+\241\234\302\133\237\106\326\266\313\221\006\143\242\006\347\063
+\254\076\250\201\022\320\313\272\320\222\013\266\236\226\252\004
+\017\212
+END
+
+# Trust for Certificate "GeoTrust Primary Certification Authority - G2"
+# Issuer: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Serial Number:3c:b2:f4:48:0a:00:e2:fe:eb:24:3b:5e:60:3e:c3:6b
+# Subject: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
+# Not Valid Before: Mon Nov 05 00:00:00 2007
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 01:5E:D8:6B:BD:6F:3D:8E:A1:31:F8:12:E0:98:73:6A
+# Fingerprint (SHA1): 8D:17:84:D5:37:F3:03:7D:EC:70:FE:57:8B:51:9A:99:E6:10:D7:B0
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GeoTrust Primary Certification Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\215\027\204\325\067\363\003\175\354\160\376\127\213\121\232\231
+\346\020\327\260
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\001\136\330\153\275\157\075\216\241\061\370\022\340\230\163\152
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162
+\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004
+\013\023\060\050\143\051\040\062\060\060\067\040\107\145\157\124
+\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040
+\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157
+\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145
+\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\074\262\364\110\012\000\342\376\353\044\073\136\140\076
+\303\153
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "VeriSign Universal Root Certification Authority"
+#
+# Issuer: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:40:1a:c4:64:21:b3:13:21:03:0e:bb:e4:12:1a:c5:1d
+# Subject: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Wed Apr 02 00:00:00 2008
+# Not Valid After : Tue Dec 01 23:59:59 2037
+# Fingerprint (MD5): 8E:AD:B5:01:AA:4D:81:E4:8C:1D:D1:E1:14:00:95:19
+# Fingerprint (SHA1): 36:79:CA:35:66:87:72:30:4D:30:A5:FB:87:3B:0F:A7:7B:B7:0D:54
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign Universal Root Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\275\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\070\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\070\060\066\006\003\125\004\003\023
+\057\126\145\162\151\123\151\147\156\040\125\156\151\166\145\162
+\163\141\154\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\275\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\070\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\070\060\066\006\003\125\004\003\023
+\057\126\145\162\151\123\151\147\156\040\125\156\151\166\145\162
+\163\141\154\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\100\032\304\144\041\263\023\041\003\016\273\344\022\032
+\305\035
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\271\060\202\003\241\240\003\002\001\002\002\020\100
+\032\304\144\041\263\023\041\003\016\273\344\022\032\305\035\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\201
+\275\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027
+\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\061\037\060\035\006\003\125\004\013
+\023\026\126\145\162\151\123\151\147\156\040\124\162\165\163\164
+\040\116\145\164\167\157\162\153\061\072\060\070\006\003\125\004
+\013\023\061\050\143\051\040\062\060\060\070\040\126\145\162\151
+\123\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162
+\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040
+\157\156\154\171\061\070\060\066\006\003\125\004\003\023\057\126
+\145\162\151\123\151\147\156\040\125\156\151\166\145\162\163\141
+\154\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\036
+\027\015\060\070\060\064\060\062\060\060\060\060\060\060\132\027
+\015\063\067\061\062\060\061\062\063\065\071\065\071\132\060\201
+\275\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027
+\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\061\037\060\035\006\003\125\004\013
+\023\026\126\145\162\151\123\151\147\156\040\124\162\165\163\164
+\040\116\145\164\167\157\162\153\061\072\060\070\006\003\125\004
+\013\023\061\050\143\051\040\062\060\060\070\040\126\145\162\151
+\123\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162
+\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040
+\157\156\154\171\061\070\060\066\006\003\125\004\003\023\057\126
+\145\162\151\123\151\147\156\040\125\156\151\166\145\162\163\141
+\154\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\202
+\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000\307
+\141\067\136\261\001\064\333\142\327\025\233\377\130\132\214\043
+\043\326\140\216\221\327\220\230\203\172\346\130\031\070\214\305
+\366\345\144\205\264\242\161\373\355\275\271\332\315\115\000\264
+\310\055\163\245\307\151\161\225\037\071\074\262\104\007\234\350
+\016\372\115\112\304\041\337\051\141\217\062\042\141\202\305\207
+\037\156\214\174\137\026\040\121\104\321\160\117\127\352\343\034
+\343\314\171\356\130\330\016\302\263\105\223\300\054\347\232\027
+\053\173\000\067\172\101\063\170\341\063\342\363\020\032\177\207
+\054\276\366\365\367\102\342\345\277\207\142\211\137\000\113\337
+\305\335\344\165\104\062\101\072\036\161\156\151\313\013\165\106
+\010\321\312\322\053\225\320\317\373\271\100\153\144\214\127\115
+\374\023\021\171\204\355\136\124\366\064\237\010\001\363\020\045
+\006\027\112\332\361\035\172\146\153\230\140\146\244\331\357\322
+\056\202\361\360\357\011\352\104\311\025\152\342\003\156\063\323
+\254\237\125\000\307\366\010\152\224\271\137\334\340\063\361\204
+\140\371\133\047\021\264\374\026\362\273\126\152\200\045\215\002
+\003\001\000\001\243\201\262\060\201\257\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\155\006\010\053
+\006\001\005\005\007\001\014\004\141\060\137\241\135\240\133\060
+\131\060\127\060\125\026\011\151\155\141\147\145\057\147\151\146
+\060\041\060\037\060\007\006\005\053\016\003\002\032\004\024\217
+\345\323\032\206\254\215\216\153\303\317\200\152\324\110\030\054
+\173\031\056\060\045\026\043\150\164\164\160\072\057\057\154\157
+\147\157\056\166\145\162\151\163\151\147\156\056\143\157\155\057
+\166\163\154\157\147\157\056\147\151\146\060\035\006\003\125\035
+\016\004\026\004\024\266\167\372\151\110\107\237\123\022\325\302
+\352\007\062\166\007\321\227\007\031\060\015\006\011\052\206\110
+\206\367\015\001\001\013\005\000\003\202\001\001\000\112\370\370
+\260\003\346\054\147\173\344\224\167\143\314\156\114\371\175\016
+\015\334\310\271\065\271\160\117\143\372\044\372\154\203\214\107
+\235\073\143\363\232\371\166\062\225\221\261\167\274\254\232\276
+\261\344\061\041\306\201\225\126\132\016\261\302\324\261\246\131
+\254\361\143\313\270\114\035\131\220\112\357\220\026\050\037\132
+\256\020\373\201\120\070\014\154\314\361\075\303\365\143\343\263
+\343\041\311\044\071\351\375\025\146\106\364\033\021\320\115\163
+\243\175\106\371\075\355\250\137\142\324\361\077\370\340\164\127
+\053\030\235\201\264\304\050\332\224\227\245\160\353\254\035\276
+\007\021\360\325\333\335\345\214\360\325\062\260\203\346\127\342
+\217\277\276\241\252\277\075\035\265\324\070\352\327\260\134\072
+\117\152\077\217\300\146\154\143\252\351\331\244\026\364\201\321
+\225\024\016\175\315\225\064\331\322\217\160\163\201\173\234\176
+\275\230\141\330\105\207\230\220\305\353\206\060\306\065\277\360
+\377\303\125\210\203\113\357\005\222\006\161\362\270\230\223\267
+\354\315\202\141\361\070\346\117\227\230\052\132\215
+END
+
+# Trust for Certificate "VeriSign Universal Root Certification Authority"
+# Issuer: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:40:1a:c4:64:21:b3:13:21:03:0e:bb:e4:12:1a:c5:1d
+# Subject: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Wed Apr 02 00:00:00 2008
+# Not Valid After : Tue Dec 01 23:59:59 2037
+# Fingerprint (MD5): 8E:AD:B5:01:AA:4D:81:E4:8C:1D:D1:E1:14:00:95:19
+# Fingerprint (SHA1): 36:79:CA:35:66:87:72:30:4D:30:A5:FB:87:3B:0F:A7:7B:B7:0D:54
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign Universal Root Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\066\171\312\065\146\207\162\060\115\060\245\373\207\073\017\247
+\173\267\015\124
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\216\255\265\001\252\115\201\344\214\035\321\341\024\000\225\031
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\275\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\070\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\070\060\066\006\003\125\004\003\023
+\057\126\145\162\151\123\151\147\156\040\125\156\151\166\145\162
+\163\141\154\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\100\032\304\144\041\263\023\041\003\016\273\344\022\032
+\305\035
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "VeriSign Class 3 Public Primary Certification Authority - G4"
+#
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G4,OU="(c) 2007 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:2f:80:fe:23:8c:0e:22:0f:48:67:12:28:91:87:ac:b3
+# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G4,OU="(c) 2007 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Nov 05 00:00:00 2007
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 3A:52:E1:E7:FD:6F:3A:E3:6F:F3:6F:99:1B:F9:22:41
+# Fingerprint (SHA1): 22:D5:D8:DF:8F:02:31:D1:8D:F7:9D:B7:CF:8A:2D:64:C9:3F:6C:3A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign Class 3 Public Primary Certification Authority - G4"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\067\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\064
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\067\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\064
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\057\200\376\043\214\016\042\017\110\147\022\050\221\207
+\254\263
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\204\060\202\003\012\240\003\002\001\002\002\020\057
+\200\376\043\214\016\042\017\110\147\022\050\221\207\254\263\060
+\012\006\010\052\206\110\316\075\004\003\003\060\201\312\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\027\060\025\006
+\003\125\004\012\023\016\126\145\162\151\123\151\147\156\054\040
+\111\156\143\056\061\037\060\035\006\003\125\004\013\023\026\126
+\145\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145
+\164\167\157\162\153\061\072\060\070\006\003\125\004\013\023\061
+\050\143\051\040\062\060\060\067\040\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\040\055\040\106\157\162\040\141\165
+\164\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154
+\171\061\105\060\103\006\003\125\004\003\023\074\126\145\162\151
+\123\151\147\156\040\103\154\141\163\163\040\063\040\120\165\142
+\154\151\143\040\120\162\151\155\141\162\171\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\040\055\040\107\064\060\036\027\015\060\067\061\061
+\060\065\060\060\060\060\060\060\132\027\015\063\070\060\061\061
+\070\062\063\065\071\065\071\132\060\201\312\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125\004
+\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156\143
+\056\061\037\060\035\006\003\125\004\013\023\026\126\145\162\151
+\123\151\147\156\040\124\162\165\163\164\040\116\145\164\167\157
+\162\153\061\072\060\070\006\003\125\004\013\023\061\050\143\051
+\040\062\060\060\067\040\126\145\162\151\123\151\147\156\054\040
+\111\156\143\056\040\055\040\106\157\162\040\141\165\164\150\157
+\162\151\172\145\144\040\165\163\145\040\157\156\154\171\061\105
+\060\103\006\003\125\004\003\023\074\126\145\162\151\123\151\147
+\156\040\103\154\141\163\163\040\063\040\120\165\142\154\151\143
+\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\040\055\040\107\064\060\166\060\020\006\007\052\206\110\316\075
+\002\001\006\005\053\201\004\000\042\003\142\000\004\247\126\172
+\174\122\332\144\233\016\055\134\330\136\254\222\075\376\001\346
+\031\112\075\024\003\113\372\140\047\040\331\203\211\151\372\124
+\306\232\030\136\125\052\144\336\006\366\215\112\073\255\020\074
+\145\075\220\210\004\211\340\060\141\263\256\135\001\247\173\336
+\174\262\276\312\145\141\000\206\256\332\217\173\320\211\255\115
+\035\131\232\101\261\274\107\200\334\236\142\303\371\243\201\262
+\060\201\257\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\155\006\010\053\006\001\005\005\007\001\014
+\004\141\060\137\241\135\240\133\060\131\060\127\060\125\026\011
+\151\155\141\147\145\057\147\151\146\060\041\060\037\060\007\006
+\005\053\016\003\002\032\004\024\217\345\323\032\206\254\215\216
+\153\303\317\200\152\324\110\030\054\173\031\056\060\045\026\043
+\150\164\164\160\072\057\057\154\157\147\157\056\166\145\162\151
+\163\151\147\156\056\143\157\155\057\166\163\154\157\147\157\056
+\147\151\146\060\035\006\003\125\035\016\004\026\004\024\263\026
+\221\375\356\246\156\344\265\056\111\217\207\170\201\200\354\345
+\261\265\060\012\006\010\052\206\110\316\075\004\003\003\003\150
+\000\060\145\002\060\146\041\014\030\046\140\132\070\173\126\102
+\340\247\374\066\204\121\221\040\054\166\115\103\075\304\035\204
+\043\320\254\326\174\065\006\316\315\151\275\220\015\333\154\110
+\102\035\016\252\102\002\061\000\234\075\110\071\043\071\130\032
+\025\022\131\152\236\357\325\131\262\035\122\054\231\161\315\307
+\051\337\033\052\141\173\161\321\336\363\300\345\015\072\112\252
+\055\247\330\206\052\335\056\020
+END
+
+# Trust for Certificate "VeriSign Class 3 Public Primary Certification Authority - G4"
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G4,OU="(c) 2007 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:2f:80:fe:23:8c:0e:22:0f:48:67:12:28:91:87:ac:b3
+# Subject: CN=VeriSign Class 3 Public Primary Certification Authority - G4,OU="(c) 2007 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Nov 05 00:00:00 2007
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (MD5): 3A:52:E1:E7:FD:6F:3A:E3:6F:F3:6F:99:1B:F9:22:41
+# Fingerprint (SHA1): 22:D5:D8:DF:8F:02:31:D1:8D:F7:9D:B7:CF:8A:2D:64:C9:3F:6C:3A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign Class 3 Public Primary Certification Authority - G4"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\042\325\330\337\217\002\061\321\215\367\235\267\317\212\055\144
+\311\077\154\072
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\072\122\341\347\375\157\072\343\157\363\157\231\033\371\042\101
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\067\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\064
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\057\200\376\043\214\016\042\017\110\147\022\050\221\207
+\254\263
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "NetLock Arany (Class Gold) Főtanúsítvány"
+#
+# Issuer: CN=NetLock Arany (Class Gold) F..tan..s..tv..ny,OU=Tan..s..tv..nykiad..k (Certification Services),O=NetLock Kft.,L=Budapest,C=HU
+# Serial Number:49:41:2c:e4:00:10
+# Subject: CN=NetLock Arany (Class Gold) F..tan..s..tv..ny,OU=Tan..s..tv..nykiad..k (Certification Services),O=NetLock Kft.,L=Budapest,C=HU
+# Not Valid Before: Thu Dec 11 15:08:21 2008
+# Not Valid After : Wed Dec 06 15:08:21 2028
+# Fingerprint (MD5): C5:A1:B7:FF:73:DD:D6:D7:34:32:18:DF:FC:3C:AD:88
+# Fingerprint (SHA1): 06:08:3F:59:3F:15:A1:04:A0:69:A4:6B:A9:03:D0:06:B7:97:09:91
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Arany (Class Gold) Főtanúsítvány"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\247\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\014\010\102\165\144\141\160
+\145\163\164\061\025\060\023\006\003\125\004\012\014\014\116\145
+\164\114\157\143\153\040\113\146\164\056\061\067\060\065\006\003
+\125\004\013\014\056\124\141\156\303\272\163\303\255\164\166\303
+\241\156\171\153\151\141\144\303\263\153\040\050\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\123\145\162\166\151\143
+\145\163\051\061\065\060\063\006\003\125\004\003\014\054\116\145
+\164\114\157\143\153\040\101\162\141\156\171\040\050\103\154\141
+\163\163\040\107\157\154\144\051\040\106\305\221\164\141\156\303
+\272\163\303\255\164\166\303\241\156\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\247\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\014\010\102\165\144\141\160
+\145\163\164\061\025\060\023\006\003\125\004\012\014\014\116\145
+\164\114\157\143\153\040\113\146\164\056\061\067\060\065\006\003
+\125\004\013\014\056\124\141\156\303\272\163\303\255\164\166\303
+\241\156\171\153\151\141\144\303\263\153\040\050\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\123\145\162\166\151\143
+\145\163\051\061\065\060\063\006\003\125\004\003\014\054\116\145
+\164\114\157\143\153\040\101\162\141\156\171\040\050\103\154\141
+\163\163\040\107\157\154\144\051\040\106\305\221\164\141\156\303
+\272\163\303\255\164\166\303\241\156\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\111\101\054\344\000\020
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\025\060\202\002\375\240\003\002\001\002\002\006\111
+\101\054\344\000\020\060\015\006\011\052\206\110\206\367\015\001
+\001\013\005\000\060\201\247\061\013\060\011\006\003\125\004\006
+\023\002\110\125\061\021\060\017\006\003\125\004\007\014\010\102
+\165\144\141\160\145\163\164\061\025\060\023\006\003\125\004\012
+\014\014\116\145\164\114\157\143\153\040\113\146\164\056\061\067
+\060\065\006\003\125\004\013\014\056\124\141\156\303\272\163\303
+\255\164\166\303\241\156\171\153\151\141\144\303\263\153\040\050
+\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145
+\162\166\151\143\145\163\051\061\065\060\063\006\003\125\004\003
+\014\054\116\145\164\114\157\143\153\040\101\162\141\156\171\040
+\050\103\154\141\163\163\040\107\157\154\144\051\040\106\305\221
+\164\141\156\303\272\163\303\255\164\166\303\241\156\171\060\036
+\027\015\060\070\061\062\061\061\061\065\060\070\062\061\132\027
+\015\062\070\061\062\060\066\061\065\060\070\062\061\132\060\201
+\247\061\013\060\011\006\003\125\004\006\023\002\110\125\061\021
+\060\017\006\003\125\004\007\014\010\102\165\144\141\160\145\163
+\164\061\025\060\023\006\003\125\004\012\014\014\116\145\164\114
+\157\143\153\040\113\146\164\056\061\067\060\065\006\003\125\004
+\013\014\056\124\141\156\303\272\163\303\255\164\166\303\241\156
+\171\153\151\141\144\303\263\153\040\050\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\123\145\162\166\151\143\145\163
+\051\061\065\060\063\006\003\125\004\003\014\054\116\145\164\114
+\157\143\153\040\101\162\141\156\171\040\050\103\154\141\163\163
+\040\107\157\154\144\051\040\106\305\221\164\141\156\303\272\163
+\303\255\164\166\303\241\156\171\060\202\001\042\060\015\006\011
+\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000
+\060\202\001\012\002\202\001\001\000\304\044\136\163\276\113\155
+\024\303\241\364\343\227\220\156\322\060\105\036\074\356\147\331
+\144\340\032\212\177\312\060\312\203\343\040\301\343\364\072\323
+\224\137\032\174\133\155\277\060\117\204\047\366\237\037\111\274
+\306\231\012\220\362\017\365\177\103\204\067\143\121\213\172\245
+\160\374\172\130\315\216\233\355\303\106\154\204\160\135\332\363
+\001\220\043\374\116\060\251\176\341\047\143\347\355\144\074\240
+\270\311\063\143\376\026\220\377\260\270\375\327\250\300\300\224
+\103\013\266\325\131\246\236\126\320\044\037\160\171\257\333\071
+\124\015\145\165\331\025\101\224\001\257\136\354\366\215\361\377
+\255\144\376\040\232\327\134\353\376\246\037\010\144\243\213\166
+\125\255\036\073\050\140\056\207\045\350\252\257\037\306\144\106
+\040\267\160\177\074\336\110\333\226\123\267\071\167\344\032\342
+\307\026\204\166\227\133\057\273\031\025\205\370\151\205\365\231
+\247\251\362\064\247\251\266\246\003\374\157\206\075\124\174\166
+\004\233\153\371\100\135\000\064\307\056\231\165\235\345\210\003
+\252\115\370\003\322\102\166\300\033\002\003\000\250\213\243\105
+\060\103\060\022\006\003\125\035\023\001\001\377\004\010\060\006
+\001\001\377\002\001\004\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\035\006\003\125\035\016\004\026\004
+\024\314\372\147\223\360\266\270\320\245\300\036\363\123\375\214
+\123\337\203\327\226\060\015\006\011\052\206\110\206\367\015\001
+\001\013\005\000\003\202\001\001\000\253\177\356\034\026\251\234
+\074\121\000\240\300\021\010\005\247\231\346\157\001\210\124\141
+\156\361\271\030\255\112\255\376\201\100\043\224\057\373\165\174
+\057\050\113\142\044\201\202\013\365\141\361\034\156\270\141\070
+\353\201\372\142\241\073\132\142\323\224\145\304\341\346\155\202
+\370\057\045\160\262\041\046\301\162\121\037\214\054\303\204\220
+\303\132\217\272\317\364\247\145\245\353\230\321\373\005\262\106
+\165\025\043\152\157\205\143\060\200\360\325\236\037\051\034\302
+\154\260\120\131\135\220\133\073\250\015\060\317\277\175\177\316
+\361\235\203\275\311\106\156\040\246\371\141\121\272\041\057\173
+\276\245\025\143\241\324\225\207\361\236\271\363\211\363\075\205
+\270\270\333\276\265\271\051\371\332\067\005\000\111\224\003\204
+\104\347\277\103\061\317\165\213\045\321\364\246\144\365\222\366
+\253\005\353\075\351\245\013\066\142\332\314\006\137\066\213\266
+\136\061\270\052\373\136\366\161\337\104\046\236\304\346\015\221
+\264\056\165\225\200\121\152\113\060\246\260\142\241\223\361\233
+\330\316\304\143\165\077\131\107\261
+END
+
+# Trust for Certificate "NetLock Arany (Class Gold) Főtanúsítvány"
+# Issuer: CN=NetLock Arany (Class Gold) F..tan..s..tv..ny,OU=Tan..s..tv..nykiad..k (Certification Services),O=NetLock Kft.,L=Budapest,C=HU
+# Serial Number:49:41:2c:e4:00:10
+# Subject: CN=NetLock Arany (Class Gold) F..tan..s..tv..ny,OU=Tan..s..tv..nykiad..k (Certification Services),O=NetLock Kft.,L=Budapest,C=HU
+# Not Valid Before: Thu Dec 11 15:08:21 2008
+# Not Valid After : Wed Dec 06 15:08:21 2028
+# Fingerprint (MD5): C5:A1:B7:FF:73:DD:D6:D7:34:32:18:DF:FC:3C:AD:88
+# Fingerprint (SHA1): 06:08:3F:59:3F:15:A1:04:A0:69:A4:6B:A9:03:D0:06:B7:97:09:91
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "NetLock Arany (Class Gold) Főtanúsítvány"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\006\010\077\131\077\025\241\004\240\151\244\153\251\003\320\006
+\267\227\011\221
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\305\241\267\377\163\335\326\327\064\062\030\337\374\074\255\210
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\247\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\014\010\102\165\144\141\160
+\145\163\164\061\025\060\023\006\003\125\004\012\014\014\116\145
+\164\114\157\143\153\040\113\146\164\056\061\067\060\065\006\003
+\125\004\013\014\056\124\141\156\303\272\163\303\255\164\166\303
+\241\156\171\153\151\141\144\303\263\153\040\050\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\123\145\162\166\151\143
+\145\163\051\061\065\060\063\006\003\125\004\003\014\054\116\145
+\164\114\157\143\153\040\101\162\141\156\171\040\050\103\154\141
+\163\163\040\107\157\154\144\051\040\106\305\221\164\141\156\303
+\272\163\303\255\164\166\303\241\156\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\111\101\054\344\000\020
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Staat der Nederlanden Root CA - G2"
+#
+# Issuer: CN=Staat der Nederlanden Root CA - G2,O=Staat der Nederlanden,C=NL
+# Serial Number: 10000012 (0x98968c)
+# Subject: CN=Staat der Nederlanden Root CA - G2,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Wed Mar 26 11:18:17 2008
+# Not Valid After : Wed Mar 25 11:03:10 2020
+# Fingerprint (MD5): 7C:A5:0F:F8:5B:9A:7D:6D:30:AE:54:5A:E3:42:A2:8A
+# Fingerprint (SHA1): 59:AF:82:79:91:86:C7:B4:75:07:CB:CF:03:57:46:EB:04:DD:B7:16
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden Root CA - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\053\060\051\006\003\125\004\003\014\042\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\053\060\051\006\003\125\004\003\014\042\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\226\214
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\312\060\202\003\262\240\003\002\001\002\002\004\000
+\230\226\214\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\132\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\036\060\034\006\003\125\004\012\014\025\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\061\053\060\051\006\003\125\004\003\014\042\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\040\122\157\157\164\040\103\101\040\055\040\107\062\060\036
+\027\015\060\070\060\063\062\066\061\061\061\070\061\067\132\027
+\015\062\060\060\063\062\065\061\061\060\063\061\060\132\060\132
+\061\013\060\011\006\003\125\004\006\023\002\116\114\061\036\060
+\034\006\003\125\004\012\014\025\123\164\141\141\164\040\144\145
+\162\040\116\145\144\145\162\154\141\156\144\145\156\061\053\060
+\051\006\003\125\004\003\014\042\123\164\141\141\164\040\144\145
+\162\040\116\145\144\145\162\154\141\156\144\145\156\040\122\157
+\157\164\040\103\101\040\055\040\107\062\060\202\002\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002
+\017\000\060\202\002\012\002\202\002\001\000\305\131\347\157\165
+\252\076\113\234\265\270\254\236\013\344\371\331\312\253\135\217
+\265\071\020\202\327\257\121\340\073\341\000\110\152\317\332\341
+\006\103\021\231\252\024\045\022\255\042\350\000\155\103\304\251
+\270\345\037\211\113\147\275\141\110\357\375\322\340\140\210\345
+\271\030\140\050\303\167\053\255\260\067\252\067\336\144\131\052
+\106\127\344\113\271\370\067\174\325\066\347\200\301\266\363\324
+\147\233\226\350\316\327\306\012\123\320\153\111\226\363\243\013
+\005\167\110\367\045\345\160\254\060\024\040\045\343\177\165\132
+\345\110\370\116\173\003\007\004\372\202\141\207\156\360\073\304
+\244\307\320\365\164\076\245\135\032\010\362\233\045\322\366\254
+\004\046\076\125\072\142\050\245\173\262\060\257\370\067\302\321
+\272\326\070\375\364\357\111\060\067\231\046\041\110\205\001\251
+\345\026\347\334\220\125\337\017\350\070\315\231\067\041\117\135
+\365\042\157\152\305\022\026\140\027\125\362\145\146\246\247\060
+\221\070\301\070\035\206\004\204\272\032\045\170\136\235\257\314
+\120\140\326\023\207\122\355\143\037\155\145\175\302\025\030\164
+\312\341\176\144\051\214\162\330\026\023\175\013\111\112\361\050
+\033\040\164\153\305\075\335\260\252\110\011\075\056\202\224\315
+\032\145\331\053\210\232\231\274\030\176\237\356\175\146\174\076
+\275\224\270\201\316\315\230\060\170\301\157\147\320\276\137\340
+\150\355\336\342\261\311\054\131\170\222\252\337\053\140\143\362
+\345\136\271\343\312\372\177\120\206\076\242\064\030\014\011\150
+\050\021\034\344\341\271\134\076\107\272\062\077\030\314\133\204
+\365\363\153\164\304\162\164\341\343\213\240\112\275\215\146\057
+\352\255\065\332\040\323\210\202\141\360\022\042\266\274\320\325
+\244\354\257\124\210\045\044\074\247\155\261\162\051\077\076\127
+\246\177\125\257\156\046\306\376\347\314\100\134\121\104\201\012
+\170\336\112\316\125\277\035\325\331\267\126\357\360\166\377\013
+\171\265\257\275\373\251\151\221\106\227\150\200\024\066\035\263
+\177\273\051\230\066\245\040\372\202\140\142\063\244\354\326\272
+\007\247\156\305\317\024\246\347\326\222\064\330\201\365\374\035
+\135\252\134\036\366\243\115\073\270\367\071\002\003\001\000\001
+\243\201\227\060\201\224\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\122\006\003\125\035\040\004\113
+\060\111\060\107\006\004\125\035\040\000\060\077\060\075\006\010
+\053\006\001\005\005\007\002\001\026\061\150\164\164\160\072\057
+\057\167\167\167\056\160\153\151\157\166\145\162\150\145\151\144
+\056\156\154\057\160\157\154\151\143\151\145\163\057\162\157\157
+\164\055\160\157\154\151\143\171\055\107\062\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125
+\035\016\004\026\004\024\221\150\062\207\025\035\211\342\265\361
+\254\066\050\064\215\013\174\142\210\353\060\015\006\011\052\206
+\110\206\367\015\001\001\013\005\000\003\202\002\001\000\250\101
+\112\147\052\222\201\202\120\156\341\327\330\263\071\073\363\002
+\025\011\120\121\357\055\275\044\173\210\206\073\371\264\274\222
+\011\226\271\366\300\253\043\140\006\171\214\021\116\121\322\171
+\200\063\373\235\110\276\354\101\103\201\037\176\107\100\034\345
+\172\010\312\252\213\165\255\024\304\302\350\146\074\202\007\247
+\346\047\202\133\030\346\017\156\331\120\076\212\102\030\051\306
+\264\126\374\126\020\240\005\027\275\014\043\177\364\223\355\234
+\032\121\276\335\105\101\277\221\044\264\037\214\351\137\317\173
+\041\231\237\225\237\071\072\106\034\154\371\315\173\234\220\315
+\050\251\307\251\125\273\254\142\064\142\065\023\113\024\072\125
+\203\271\206\215\222\246\306\364\007\045\124\314\026\127\022\112
+\202\170\310\024\331\027\202\046\055\135\040\037\171\256\376\324
+\160\026\026\225\203\330\065\071\377\122\135\165\034\026\305\023
+\125\317\107\314\165\145\122\112\336\360\260\247\344\012\226\013
+\373\255\302\342\045\204\262\335\344\275\176\131\154\233\360\360
+\330\347\312\362\351\227\070\176\211\276\314\373\071\027\141\077
+\162\333\072\221\330\145\001\031\035\255\120\244\127\012\174\113
+\274\234\161\163\052\105\121\031\205\314\216\375\107\247\164\225
+\035\250\321\257\116\027\261\151\046\302\252\170\127\133\305\115
+\247\345\236\005\027\224\312\262\137\240\111\030\215\064\351\046
+\154\110\036\252\150\222\005\341\202\163\132\233\334\007\133\010
+\155\175\235\327\215\041\331\374\024\040\252\302\105\337\077\347
+\000\262\121\344\302\370\005\271\171\032\214\064\363\236\133\344
+\067\133\153\112\337\054\127\212\100\132\066\272\335\165\104\010
+\067\102\160\014\376\334\136\041\240\243\212\300\220\234\150\332
+\120\346\105\020\107\170\266\116\322\145\311\303\067\337\341\102
+\143\260\127\067\105\055\173\212\234\277\005\352\145\125\063\367
+\071\020\305\050\052\041\172\033\212\304\044\371\077\025\310\232
+\025\040\365\125\142\226\355\155\223\120\274\344\252\170\255\331
+\313\012\145\207\246\146\301\304\201\243\167\072\130\036\013\356
+\203\213\235\036\322\122\244\314\035\157\260\230\155\224\061\265
+\370\161\012\334\271\374\175\062\140\346\353\257\212\001
+END
+
+# Trust for Certificate "Staat der Nederlanden Root CA - G2"
+# Issuer: CN=Staat der Nederlanden Root CA - G2,O=Staat der Nederlanden,C=NL
+# Serial Number: 10000012 (0x98968c)
+# Subject: CN=Staat der Nederlanden Root CA - G2,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Wed Mar 26 11:18:17 2008
+# Not Valid After : Wed Mar 25 11:03:10 2020
+# Fingerprint (MD5): 7C:A5:0F:F8:5B:9A:7D:6D:30:AE:54:5A:E3:42:A2:8A
+# Fingerprint (SHA1): 59:AF:82:79:91:86:C7:B4:75:07:CB:CF:03:57:46:EB:04:DD:B7:16
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden Root CA - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\131\257\202\171\221\206\307\264\165\007\313\317\003\127\106\353
+\004\335\267\026
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\174\245\017\370\133\232\175\155\060\256\124\132\343\102\242\212
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\053\060\051\006\003\125\004\003\014\042\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\226\214
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "CA Disig"
+#
+# Issuer: CN=CA Disig,O=Disig a.s.,L=Bratislava,C=SK
+# Serial Number: 1 (0x1)
+# Subject: CN=CA Disig,O=Disig a.s.,L=Bratislava,C=SK
+# Not Valid Before: Wed Mar 22 01:39:34 2006
+# Not Valid After : Tue Mar 22 01:39:34 2016
+# Fingerprint (MD5): 3F:45:96:39:E2:50:87:F7:BB:FE:98:0C:3C:20:98:E6
+# Fingerprint (SHA1): 2A:C8:D5:8B:57:CE:BF:2F:49:AF:F2:FC:76:8F:51:14:62:90:7A:41
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CA Disig"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\021\060\017\006\003\125
+\004\003\023\010\103\101\040\104\151\163\151\147
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\021\060\017\006\003\125
+\004\003\023\010\103\101\040\104\151\163\151\147
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\017\060\202\002\367\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\112\061\013\060\011\006\003\125\004\006\023\002\123\113\061\023
+\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163\154
+\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104\151
+\163\151\147\040\141\056\163\056\061\021\060\017\006\003\125\004
+\003\023\010\103\101\040\104\151\163\151\147\060\036\027\015\060
+\066\060\063\062\062\060\061\063\071\063\064\132\027\015\061\066
+\060\063\062\062\060\061\063\071\063\064\132\060\112\061\013\060
+\011\006\003\125\004\006\023\002\123\113\061\023\060\021\006\003
+\125\004\007\023\012\102\162\141\164\151\163\154\141\166\141\061
+\023\060\021\006\003\125\004\012\023\012\104\151\163\151\147\040
+\141\056\163\056\061\021\060\017\006\003\125\004\003\023\010\103
+\101\040\104\151\163\151\147\060\202\001\042\060\015\006\011\052
+\206\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060
+\202\001\012\002\202\001\001\000\222\366\061\301\175\210\375\231
+\001\251\330\173\362\161\165\361\061\306\363\165\146\372\121\050
+\106\204\227\170\064\274\154\374\274\105\131\210\046\030\112\304
+\067\037\241\112\104\275\343\161\004\365\104\027\342\077\374\110
+\130\157\134\236\172\011\272\121\067\042\043\146\103\041\260\074
+\144\242\370\152\025\016\077\353\121\341\124\251\335\006\231\327
+\232\074\124\213\071\003\077\017\305\316\306\353\203\162\002\250
+\037\161\363\055\370\165\010\333\142\114\350\372\316\371\347\152
+\037\266\153\065\202\272\342\217\026\222\175\005\014\154\106\003
+\135\300\355\151\277\072\301\212\240\350\216\331\271\105\050\207
+\010\354\264\312\025\276\202\335\265\104\213\055\255\206\014\150
+\142\155\205\126\362\254\024\143\072\306\321\231\254\064\170\126
+\113\317\266\255\077\214\212\327\004\345\343\170\114\365\206\252
+\365\217\372\075\154\161\243\055\312\147\353\150\173\156\063\251
+\014\202\050\250\114\152\041\100\025\040\014\046\133\203\302\251
+\026\025\300\044\202\135\053\026\255\312\143\366\164\000\260\337
+\103\304\020\140\126\147\143\105\002\003\001\000\001\243\201\377
+\060\201\374\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\215
+\262\111\150\235\162\010\045\271\300\047\365\120\223\126\110\106
+\161\371\217\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\006\060\066\006\003\125\035\021\004\057\060\055\201\023
+\143\141\157\160\145\162\141\164\157\162\100\144\151\163\151\147
+\056\163\153\206\026\150\164\164\160\072\057\057\167\167\167\056
+\144\151\163\151\147\056\163\153\057\143\141\060\146\006\003\125
+\035\037\004\137\060\135\060\055\240\053\240\051\206\047\150\164
+\164\160\072\057\057\167\167\167\056\144\151\163\151\147\056\163
+\153\057\143\141\057\143\162\154\057\143\141\137\144\151\163\151
+\147\056\143\162\154\060\054\240\052\240\050\206\046\150\164\164
+\160\072\057\057\143\141\056\144\151\163\151\147\056\163\153\057
+\143\141\057\143\162\154\057\143\141\137\144\151\163\151\147\056
+\143\162\154\060\032\006\003\125\035\040\004\023\060\021\060\017
+\006\015\053\201\036\221\223\346\012\000\000\000\001\001\001\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\135\064\164\141\114\257\073\330\377\237\155\130\066
+\034\075\013\201\015\022\053\106\020\200\375\347\074\047\320\172
+\310\251\266\176\164\060\063\243\072\212\173\164\300\171\171\102
+\223\155\377\261\051\024\202\253\041\214\057\027\371\077\046\057
+\365\131\306\357\200\006\267\232\111\051\354\316\176\161\074\152
+\020\101\300\366\323\232\262\174\132\221\234\300\254\133\310\115
+\136\367\341\123\377\103\167\374\236\113\147\154\327\363\203\321
+\240\340\177\045\337\270\230\013\232\062\070\154\060\240\363\377
+\010\025\063\367\120\112\173\076\243\076\040\251\334\057\126\200
+\012\355\101\120\260\311\364\354\262\343\046\104\000\016\157\236
+\006\274\042\226\123\160\145\304\120\012\106\153\244\057\047\201
+\022\047\023\137\020\241\166\316\212\173\067\352\303\071\141\003
+\225\230\072\347\154\210\045\010\374\171\150\015\207\175\142\370
+\264\137\373\305\330\114\275\130\274\077\103\133\324\036\001\115
+\074\143\276\043\357\214\315\132\120\270\150\124\371\012\231\063
+\021\000\341\236\302\106\167\202\365\131\006\214\041\114\207\011
+\315\345\250
+END
+
+# Trust for Certificate "CA Disig"
+# Issuer: CN=CA Disig,O=Disig a.s.,L=Bratislava,C=SK
+# Serial Number: 1 (0x1)
+# Subject: CN=CA Disig,O=Disig a.s.,L=Bratislava,C=SK
+# Not Valid Before: Wed Mar 22 01:39:34 2006
+# Not Valid After : Tue Mar 22 01:39:34 2016
+# Fingerprint (MD5): 3F:45:96:39:E2:50:87:F7:BB:FE:98:0C:3C:20:98:E6
+# Fingerprint (SHA1): 2A:C8:D5:8B:57:CE:BF:2F:49:AF:F2:FC:76:8F:51:14:62:90:7A:41
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CA Disig"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\052\310\325\213\127\316\277\057\111\257\362\374\166\217\121\024
+\142\220\172\101
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\077\105\226\071\342\120\207\367\273\376\230\014\074\040\230\346
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\021\060\017\006\003\125
+\004\003\023\010\103\101\040\104\151\163\151\147
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Juur-SK"
+#
+# Issuer: CN=Juur-SK,O=AS Sertifitseerimiskeskus,C=EE,E=pki@sk.ee
+# Serial Number: 999181308 (0x3b8e4bfc)
+# Subject: CN=Juur-SK,O=AS Sertifitseerimiskeskus,C=EE,E=pki@sk.ee
+# Not Valid Before: Thu Aug 30 14:23:01 2001
+# Not Valid After : Fri Aug 26 14:23:01 2016
+# Fingerprint (MD5): AA:8E:5D:D9:F8:DB:0A:58:B7:8D:26:87:6C:82:35:55
+# Fingerprint (SHA1): 40:9D:4B:D9:17:B5:5C:27:B6:9B:64:CB:98:22:44:0D:CD:09:B8:89
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Juur-SK"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\135\061\030\060\026\006\011\052\206\110\206\367\015\001\011
+\001\026\011\160\153\151\100\163\153\056\145\145\061\013\060\011
+\006\003\125\004\006\023\002\105\105\061\042\060\040\006\003\125
+\004\012\023\031\101\123\040\123\145\162\164\151\146\151\164\163
+\145\145\162\151\155\151\163\153\145\163\153\165\163\061\020\060
+\016\006\003\125\004\003\023\007\112\165\165\162\055\123\113
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\135\061\030\060\026\006\011\052\206\110\206\367\015\001\011
+\001\026\011\160\153\151\100\163\153\056\145\145\061\013\060\011
+\006\003\125\004\006\023\002\105\105\061\042\060\040\006\003\125
+\004\012\023\031\101\123\040\123\145\162\164\151\146\151\164\163
+\145\145\162\151\155\151\163\153\145\163\153\165\163\061\020\060
+\016\006\003\125\004\003\023\007\112\165\165\162\055\123\113
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\073\216\113\374
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\346\060\202\003\316\240\003\002\001\002\002\004\073
+\216\113\374\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\135\061\030\060\026\006\011\052\206\110\206\367\015
+\001\011\001\026\011\160\153\151\100\163\153\056\145\145\061\013
+\060\011\006\003\125\004\006\023\002\105\105\061\042\060\040\006
+\003\125\004\012\023\031\101\123\040\123\145\162\164\151\146\151
+\164\163\145\145\162\151\155\151\163\153\145\163\153\165\163\061
+\020\060\016\006\003\125\004\003\023\007\112\165\165\162\055\123
+\113\060\036\027\015\060\061\060\070\063\060\061\064\062\063\060
+\061\132\027\015\061\066\060\070\062\066\061\064\062\063\060\061
+\132\060\135\061\030\060\026\006\011\052\206\110\206\367\015\001
+\011\001\026\011\160\153\151\100\163\153\056\145\145\061\013\060
+\011\006\003\125\004\006\023\002\105\105\061\042\060\040\006\003
+\125\004\012\023\031\101\123\040\123\145\162\164\151\146\151\164
+\163\145\145\162\151\155\151\163\153\145\163\153\165\163\061\020
+\060\016\006\003\125\004\003\023\007\112\165\165\162\055\123\113
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\201\161\066\076\063\007\326\343\060\215\023\176\167\062\106
+\313\317\031\262\140\061\106\227\206\364\230\106\244\302\145\105
+\317\323\100\174\343\132\042\250\020\170\063\314\210\261\323\201
+\112\366\142\027\173\137\115\012\056\320\317\213\043\356\117\002
+\116\273\353\016\312\275\030\143\350\200\034\215\341\034\215\075
+\340\377\133\137\352\144\345\227\350\077\231\177\014\012\011\063
+\000\032\123\247\041\341\070\113\326\203\033\255\257\144\302\371
+\034\172\214\146\110\115\146\037\030\012\342\076\273\037\007\145
+\223\205\271\032\260\271\304\373\015\021\366\365\326\371\033\307
+\054\053\267\030\121\376\340\173\366\250\110\257\154\073\117\057
+\357\370\321\107\036\046\127\360\121\035\063\226\377\357\131\075
+\332\115\321\025\064\307\352\077\026\110\173\221\034\200\103\017
+\075\270\005\076\321\263\225\315\330\312\017\302\103\147\333\267
+\223\340\042\202\056\276\365\150\050\203\271\301\073\151\173\040
+\332\116\234\155\341\272\315\217\172\154\260\011\042\327\213\013
+\333\034\325\132\046\133\015\300\352\345\140\320\237\376\065\337
+\077\002\003\001\000\001\243\202\001\254\060\202\001\250\060\017
+\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060
+\202\001\026\006\003\125\035\040\004\202\001\015\060\202\001\011
+\060\202\001\005\006\012\053\006\001\004\001\316\037\001\001\001
+\060\201\366\060\201\320\006\010\053\006\001\005\005\007\002\002
+\060\201\303\036\201\300\000\123\000\145\000\145\000\040\000\163
+\000\145\000\162\000\164\000\151\000\146\000\151\000\153\000\141
+\000\141\000\164\000\040\000\157\000\156\000\040\000\166\000\344
+\000\154\000\152\000\141\000\163\000\164\000\141\000\164\000\165
+\000\144\000\040\000\101\000\123\000\055\000\151\000\163\000\040
+\000\123\000\145\000\162\000\164\000\151\000\146\000\151\000\164
+\000\163\000\145\000\145\000\162\000\151\000\155\000\151\000\163
+\000\153\000\145\000\163\000\153\000\165\000\163\000\040\000\141
+\000\154\000\141\000\155\000\055\000\123\000\113\000\040\000\163
+\000\145\000\162\000\164\000\151\000\146\000\151\000\153\000\141
+\000\141\000\164\000\151\000\144\000\145\000\040\000\153\000\151
+\000\156\000\156\000\151\000\164\000\141\000\155\000\151\000\163
+\000\145\000\153\000\163\060\041\006\010\053\006\001\005\005\007
+\002\001\026\025\150\164\164\160\072\057\057\167\167\167\056\163
+\153\056\145\145\057\143\160\163\057\060\053\006\003\125\035\037
+\004\044\060\042\060\040\240\036\240\034\206\032\150\164\164\160
+\072\057\057\167\167\167\056\163\153\056\145\145\057\152\165\165
+\162\057\143\162\154\057\060\035\006\003\125\035\016\004\026\004
+\024\004\252\172\107\243\344\211\257\032\317\012\100\247\030\077
+\157\357\351\175\276\060\037\006\003\125\035\043\004\030\060\026
+\200\024\004\252\172\107\243\344\211\257\032\317\012\100\247\030
+\077\157\357\351\175\276\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\346\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\001\001\000\173\301\030\224\123\242
+\011\363\376\046\147\232\120\344\303\005\057\053\065\170\221\114
+\174\250\021\021\171\114\111\131\254\310\367\205\145\134\106\273
+\073\020\240\002\257\315\117\265\314\066\052\354\135\376\357\240
+\221\311\266\223\157\174\200\124\354\307\010\160\015\216\373\202
+\354\052\140\170\151\066\066\321\305\234\213\151\265\100\310\224
+\145\167\362\127\041\146\073\316\205\100\266\063\143\032\277\171
+\036\374\134\035\323\035\223\033\213\014\135\205\275\231\060\062
+\030\011\221\122\351\174\241\272\377\144\222\232\354\376\065\356
+\214\057\256\374\040\206\354\112\336\033\170\062\067\246\201\322
+\235\257\132\022\026\312\231\133\374\157\155\016\305\240\036\206
+\311\221\320\134\230\202\137\143\014\212\132\253\330\225\246\314
+\313\212\326\277\144\113\216\312\212\262\260\351\041\062\236\252
+\250\205\230\064\201\071\041\073\250\072\122\062\075\366\153\067
+\206\006\132\025\230\334\360\021\146\376\064\040\267\003\364\101
+\020\175\071\204\171\226\162\143\266\226\002\345\153\271\255\031
+\115\273\306\104\333\066\313\052\234\216
+END
+
+# Trust for Certificate "Juur-SK"
+# Issuer: CN=Juur-SK,O=AS Sertifitseerimiskeskus,C=EE,E=pki@sk.ee
+# Serial Number: 999181308 (0x3b8e4bfc)
+# Subject: CN=Juur-SK,O=AS Sertifitseerimiskeskus,C=EE,E=pki@sk.ee
+# Not Valid Before: Thu Aug 30 14:23:01 2001
+# Not Valid After : Fri Aug 26 14:23:01 2016
+# Fingerprint (MD5): AA:8E:5D:D9:F8:DB:0A:58:B7:8D:26:87:6C:82:35:55
+# Fingerprint (SHA1): 40:9D:4B:D9:17:B5:5C:27:B6:9B:64:CB:98:22:44:0D:CD:09:B8:89
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Juur-SK"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\100\235\113\331\027\265\134\047\266\233\144\313\230\042\104\015
+\315\011\270\211
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\252\216\135\331\370\333\012\130\267\215\046\207\154\202\065\125
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\135\061\030\060\026\006\011\052\206\110\206\367\015\001\011
+\001\026\011\160\153\151\100\163\153\056\145\145\061\013\060\011
+\006\003\125\004\006\023\002\105\105\061\042\060\040\006\003\125
+\004\012\023\031\101\123\040\123\145\162\164\151\146\151\164\163
+\145\145\162\151\155\151\163\153\145\163\153\165\163\061\020\060
+\016\006\003\125\004\003\023\007\112\165\165\162\055\123\113
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\073\216\113\374
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Hongkong Post Root CA 1"
+#
+# Issuer: CN=Hongkong Post Root CA 1,O=Hongkong Post,C=HK
+# Serial Number: 1000 (0x3e8)
+# Subject: CN=Hongkong Post Root CA 1,O=Hongkong Post,C=HK
+# Not Valid Before: Thu May 15 05:13:14 2003
+# Not Valid After : Mon May 15 04:52:29 2023
+# Fingerprint (MD5): A8:0D:6F:39:78:B9:43:6D:77:42:6D:98:5A:CC:23:CA
+# Fingerprint (SHA1): D6:DA:A8:20:8D:09:D2:15:4D:24:B5:2F:CB:34:6E:B2:58:B2:8A:58
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Hongkong Post Root CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\110\113\061
+\026\060\024\006\003\125\004\012\023\015\110\157\156\147\153\157
+\156\147\040\120\157\163\164\061\040\060\036\006\003\125\004\003
+\023\027\110\157\156\147\153\157\156\147\040\120\157\163\164\040
+\122\157\157\164\040\103\101\040\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\110\113\061
+\026\060\024\006\003\125\004\012\023\015\110\157\156\147\153\157
+\156\147\040\120\157\163\164\061\040\060\036\006\003\125\004\003
+\023\027\110\157\156\147\153\157\156\147\040\120\157\163\164\040
+\122\157\157\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\003\350
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\060\060\202\002\030\240\003\002\001\002\002\002\003
+\350\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\060\107\061\013\060\011\006\003\125\004\006\023\002\110\113\061
+\026\060\024\006\003\125\004\012\023\015\110\157\156\147\153\157
+\156\147\040\120\157\163\164\061\040\060\036\006\003\125\004\003
+\023\027\110\157\156\147\153\157\156\147\040\120\157\163\164\040
+\122\157\157\164\040\103\101\040\061\060\036\027\015\060\063\060
+\065\061\065\060\065\061\063\061\064\132\027\015\062\063\060\065
+\061\065\060\064\065\062\062\071\132\060\107\061\013\060\011\006
+\003\125\004\006\023\002\110\113\061\026\060\024\006\003\125\004
+\012\023\015\110\157\156\147\153\157\156\147\040\120\157\163\164
+\061\040\060\036\006\003\125\004\003\023\027\110\157\156\147\153
+\157\156\147\040\120\157\163\164\040\122\157\157\164\040\103\101
+\040\061\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\254\377\070\266\351\146\002\111\343\242\264\341\220
+\371\100\217\171\371\342\275\171\376\002\275\356\044\222\035\042
+\366\332\205\162\151\376\327\077\011\324\335\221\265\002\234\320
+\215\132\341\125\303\120\206\271\051\046\302\343\331\240\361\151
+\003\050\040\200\105\042\055\126\247\073\124\225\126\042\131\037
+\050\337\037\040\075\155\242\066\276\043\240\261\156\265\261\047
+\077\071\123\011\352\253\152\350\164\262\302\145\134\216\277\174
+\303\170\204\315\236\026\374\365\056\117\040\052\010\237\167\363
+\305\036\304\232\122\146\036\110\136\343\020\006\217\042\230\341
+\145\216\033\135\043\146\073\270\245\062\121\310\206\252\241\251
+\236\177\166\224\302\246\154\267\101\360\325\310\006\070\346\324
+\014\342\363\073\114\155\120\214\304\203\047\301\023\204\131\075
+\236\165\164\266\330\002\136\072\220\172\300\102\066\162\354\152
+\115\334\357\304\000\337\023\030\127\137\046\170\310\326\012\171
+\167\277\367\257\267\166\271\245\013\204\027\135\020\352\157\341
+\253\225\021\137\155\074\243\134\115\203\133\362\263\031\212\200
+\213\013\207\002\003\001\000\001\243\046\060\044\060\022\006\003
+\125\035\023\001\001\377\004\010\060\006\001\001\377\002\001\003
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\306
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\016\106\325\074\256\342\207\331\136\201\213\002
+\230\101\010\214\114\274\332\333\356\047\033\202\347\152\105\354
+\026\213\117\205\240\363\262\160\275\132\226\272\312\156\155\356
+\106\213\156\347\052\056\226\263\031\063\353\264\237\250\262\067
+\356\230\250\227\266\056\266\147\047\324\246\111\375\034\223\145
+\166\236\102\057\334\042\154\232\117\362\132\025\071\261\161\327
+\053\121\350\155\034\230\300\331\052\364\241\202\173\325\311\101
+\242\043\001\164\070\125\213\017\271\056\147\242\040\004\067\332
+\234\013\323\027\041\340\217\227\171\064\157\204\110\002\040\063
+\033\346\064\104\237\221\160\364\200\136\204\103\302\051\322\154
+\022\024\344\141\215\254\020\220\236\204\120\273\360\226\157\105
+\237\212\363\312\154\117\372\021\072\025\025\106\303\315\037\203
+\133\055\101\022\355\120\147\101\023\075\041\253\224\212\252\116
+\174\301\261\373\247\326\265\047\057\227\253\156\340\035\342\321
+\034\054\037\104\342\374\276\221\241\234\373\326\051\123\163\206
+\237\123\330\103\016\135\326\143\202\161\035\200\164\312\366\342
+\002\153\331\132
+END
+
+# Trust for Certificate "Hongkong Post Root CA 1"
+# Issuer: CN=Hongkong Post Root CA 1,O=Hongkong Post,C=HK
+# Serial Number: 1000 (0x3e8)
+# Subject: CN=Hongkong Post Root CA 1,O=Hongkong Post,C=HK
+# Not Valid Before: Thu May 15 05:13:14 2003
+# Not Valid After : Mon May 15 04:52:29 2023
+# Fingerprint (MD5): A8:0D:6F:39:78:B9:43:6D:77:42:6D:98:5A:CC:23:CA
+# Fingerprint (SHA1): D6:DA:A8:20:8D:09:D2:15:4D:24:B5:2F:CB:34:6E:B2:58:B2:8A:58
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Hongkong Post Root CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\326\332\250\040\215\011\322\025\115\044\265\057\313\064\156\262
+\130\262\212\130
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\250\015\157\071\170\271\103\155\167\102\155\230\132\314\043\312
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\107\061\013\060\011\006\003\125\004\006\023\002\110\113\061
+\026\060\024\006\003\125\004\012\023\015\110\157\156\147\153\157
+\156\147\040\120\157\163\164\061\040\060\036\006\003\125\004\003
+\023\027\110\157\156\147\153\157\156\147\040\120\157\163\164\040
+\122\157\157\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\003\350
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "SecureSign RootCA11"
+#
+# Issuer: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP
+# Serial Number: 1 (0x1)
+# Subject: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP
+# Not Valid Before: Wed Apr 08 04:56:47 2009
+# Not Valid After : Sun Apr 08 04:56:47 2029
+# Fingerprint (MD5): B7:52:74:E2:92:B4:80:93:F2:75:E4:CC:D7:F2:EA:26
+# Fingerprint (SHA1): 3B:C4:9F:48:F8:F3:73:A0:9C:1E:BD:F8:5B:B1:C3:65:C7:D8:11:B3
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SecureSign RootCA11"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\053\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040
+\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145
+\162\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032
+\006\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147
+\156\040\122\157\157\164\103\101\061\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\053\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040
+\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145
+\162\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032
+\006\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147
+\156\040\122\157\157\164\103\101\061\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\155\060\202\002\125\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061\053
+\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145\162
+\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032\006
+\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147\156
+\040\122\157\157\164\103\101\061\061\060\036\027\015\060\071\060
+\064\060\070\060\064\065\066\064\067\132\027\015\062\071\060\064
+\060\070\060\064\065\066\064\067\132\060\130\061\013\060\011\006
+\003\125\004\006\023\002\112\120\061\053\060\051\006\003\125\004
+\012\023\042\112\141\160\141\156\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\123\145\162\166\151\143\145\163\054
+\040\111\156\143\056\061\034\060\032\006\003\125\004\003\023\023
+\123\145\143\165\162\145\123\151\147\156\040\122\157\157\164\103
+\101\061\061\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\375\167\252\245\034\220\005\073\313\114\233\063
+\213\132\024\105\244\347\220\026\321\337\127\322\041\020\244\027
+\375\337\254\326\037\247\344\333\174\367\354\337\270\003\332\224
+\130\375\135\162\174\214\077\137\001\147\164\025\226\343\002\074
+\207\333\256\313\001\216\302\363\146\306\205\105\364\002\306\072
+\265\142\262\257\372\234\277\244\346\324\200\060\230\363\015\266
+\223\217\251\324\330\066\362\260\374\212\312\054\241\025\063\225
+\061\332\300\033\362\356\142\231\206\143\077\277\335\223\052\203
+\250\166\271\023\037\267\316\116\102\205\217\042\347\056\032\362
+\225\011\262\005\265\104\116\167\241\040\275\251\362\116\012\175
+\120\255\365\005\015\105\117\106\161\375\050\076\123\373\004\330
+\055\327\145\035\112\033\372\317\073\260\061\232\065\156\310\213
+\006\323\000\221\362\224\010\145\114\261\064\006\000\172\211\342
+\360\307\003\131\317\325\326\350\247\062\263\346\230\100\206\305
+\315\047\022\213\314\173\316\267\021\074\142\140\007\043\076\053
+\100\156\224\200\011\155\266\263\157\167\157\065\010\120\373\002
+\207\305\076\211\002\003\001\000\001\243\102\060\100\060\035\006
+\003\125\035\016\004\026\004\024\133\370\115\117\262\245\206\324
+\072\322\361\143\232\240\276\011\366\127\267\336\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\240\241\070\026\146\056\247\126\037\041\234\006\372\035\355
+\271\042\305\070\046\330\116\117\354\243\177\171\336\106\041\241
+\207\167\217\007\010\232\262\244\305\257\017\062\230\013\174\146
+\051\266\233\175\045\122\111\103\253\114\056\053\156\172\160\257
+\026\016\343\002\154\373\102\346\030\235\105\330\125\310\350\073
+\335\347\341\364\056\013\034\064\134\154\130\112\373\214\210\120
+\137\225\034\277\355\253\042\265\145\263\205\272\236\017\270\255
+\345\172\033\212\120\072\035\275\015\274\173\124\120\013\271\102
+\257\125\240\030\201\255\145\231\357\276\344\234\277\304\205\253
+\101\262\124\157\334\045\315\355\170\342\216\014\215\011\111\335
+\143\173\132\151\226\002\041\250\275\122\131\351\175\065\313\310
+\122\312\177\201\376\331\153\323\367\021\355\045\337\370\347\371
+\244\372\162\227\204\123\015\245\320\062\030\121\166\131\024\154
+\017\353\354\137\200\214\165\103\203\303\205\230\377\114\236\055
+\015\344\167\203\223\116\265\226\007\213\050\023\233\214\031\215
+\101\047\111\100\356\336\346\043\104\071\334\241\042\326\272\003
+\362
+END
+
+# Trust for Certificate "SecureSign RootCA11"
+# Issuer: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP
+# Serial Number: 1 (0x1)
+# Subject: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP
+# Not Valid Before: Wed Apr 08 04:56:47 2009
+# Not Valid After : Sun Apr 08 04:56:47 2029
+# Fingerprint (MD5): B7:52:74:E2:92:B4:80:93:F2:75:E4:CC:D7:F2:EA:26
+# Fingerprint (SHA1): 3B:C4:9F:48:F8:F3:73:A0:9C:1E:BD:F8:5B:B1:C3:65:C7:D8:11:B3
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SecureSign RootCA11"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\073\304\237\110\370\363\163\240\234\036\275\370\133\261\303\145
+\307\330\021\263
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\267\122\164\342\222\264\200\223\362\165\344\314\327\362\352\046
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\053\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040
+\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145
+\162\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032
+\006\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147
+\156\040\122\157\157\164\103\101\061\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ACEDICOM Root"
+#
+# Issuer: C=ES,O=EDICOM,OU=PKI,CN=ACEDICOM Root
+# Serial Number:61:8d:c7:86:3b:01:82:05
+# Subject: C=ES,O=EDICOM,OU=PKI,CN=ACEDICOM Root
+# Not Valid Before: Fri Apr 18 16:24:22 2008
+# Not Valid After : Thu Apr 13 16:24:22 2028
+# Fingerprint (MD5): 42:81:A0:E2:1C:E3:55:10:DE:55:89:42:65:96:22:E6
+# Fingerprint (SHA1): E0:B4:32:2E:B2:F6:A5:68:B6:54:53:84:48:18:4A:50:36:87:43:84
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ACEDICOM Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\104\061\026\060\024\006\003\125\004\003\014\015\101\103\105
+\104\111\103\117\115\040\122\157\157\164\061\014\060\012\006\003
+\125\004\013\014\003\120\113\111\061\017\060\015\006\003\125\004
+\012\014\006\105\104\111\103\117\115\061\013\060\011\006\003\125
+\004\006\023\002\105\123
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\026\060\024\006\003\125\004\003\014\015\101\103\105
+\104\111\103\117\115\040\122\157\157\164\061\014\060\012\006\003
+\125\004\013\014\003\120\113\111\061\017\060\015\006\003\125\004
+\012\014\006\105\104\111\103\117\115\061\013\060\011\006\003\125
+\004\006\023\002\105\123
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\141\215\307\206\073\001\202\005
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\265\060\202\003\235\240\003\002\001\002\002\010\141
+\215\307\206\073\001\202\005\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\060\104\061\026\060\024\006\003\125\004
+\003\014\015\101\103\105\104\111\103\117\115\040\122\157\157\164
+\061\014\060\012\006\003\125\004\013\014\003\120\113\111\061\017
+\060\015\006\003\125\004\012\014\006\105\104\111\103\117\115\061
+\013\060\011\006\003\125\004\006\023\002\105\123\060\036\027\015
+\060\070\060\064\061\070\061\066\062\064\062\062\132\027\015\062
+\070\060\064\061\063\061\066\062\064\062\062\132\060\104\061\026
+\060\024\006\003\125\004\003\014\015\101\103\105\104\111\103\117
+\115\040\122\157\157\164\061\014\060\012\006\003\125\004\013\014
+\003\120\113\111\061\017\060\015\006\003\125\004\012\014\006\105
+\104\111\103\117\115\061\013\060\011\006\003\125\004\006\023\002
+\105\123\060\202\002\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202
+\002\001\000\377\222\225\341\150\006\166\264\054\310\130\110\312
+\375\200\124\051\125\143\044\377\220\145\233\020\165\173\303\152
+\333\142\002\001\362\030\206\265\174\132\070\261\344\130\271\373
+\323\330\055\237\275\062\067\277\054\025\155\276\265\364\041\322
+\023\221\331\007\255\001\005\326\363\275\167\316\137\102\201\012
+\371\152\343\203\000\250\053\056\125\023\143\201\312\107\034\173
+\134\026\127\172\033\203\140\004\072\076\145\303\315\001\336\336
+\244\326\014\272\216\336\331\004\356\027\126\042\233\217\143\375
+\115\026\013\267\173\167\214\371\045\265\321\155\231\022\056\117
+\032\270\346\352\004\222\256\075\021\271\121\102\075\207\260\061
+\205\257\171\132\234\376\347\116\136\222\117\103\374\253\072\255
+\245\022\046\146\271\342\014\327\230\316\324\130\245\225\100\012
+\267\104\235\023\164\053\302\245\353\042\025\230\020\330\213\305
+\004\237\035\217\140\345\006\033\233\317\271\171\240\075\242\043
+\077\102\077\153\372\034\003\173\060\215\316\154\300\277\346\033
+\137\277\147\270\204\031\325\025\357\173\313\220\066\061\142\311
+\274\002\253\106\137\233\376\032\150\224\064\075\220\216\255\366
+\344\035\011\177\112\210\070\077\276\147\375\064\226\365\035\274
+\060\164\313\070\356\325\154\253\324\374\364\000\267\000\133\205
+\062\026\166\063\351\330\243\231\235\005\000\252\026\346\363\201
+\175\157\175\252\206\155\255\025\164\323\304\242\161\252\364\024
+\175\347\062\270\037\274\325\361\116\275\157\027\002\071\327\016
+\225\102\072\307\000\076\351\046\143\021\352\013\321\112\377\030
+\235\262\327\173\057\072\331\226\373\350\036\222\256\023\125\310
+\331\047\366\334\110\033\260\044\301\205\343\167\235\232\244\363
+\014\021\035\015\310\264\024\356\265\202\127\011\277\040\130\177
+\057\042\043\330\160\313\171\154\311\113\362\251\052\310\374\207
+\053\327\032\120\370\047\350\057\103\343\072\275\330\127\161\375
+\316\246\122\133\371\335\115\355\345\366\157\211\355\273\223\234
+\166\041\165\360\222\114\051\367\057\234\001\056\376\120\106\236
+\144\014\024\263\007\133\305\302\163\154\361\007\134\105\044\024
+\065\256\203\361\152\115\211\172\372\263\330\055\146\360\066\207
+\365\053\123\002\003\001\000\001\243\201\252\060\201\247\060\017
+\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060
+\037\006\003\125\035\043\004\030\060\026\200\024\246\263\341\053
+\053\111\266\327\163\241\252\224\365\001\347\163\145\114\254\120
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\206
+\060\035\006\003\125\035\016\004\026\004\024\246\263\341\053\053
+\111\266\327\163\241\252\224\365\001\347\163\145\114\254\120\060
+\104\006\003\125\035\040\004\075\060\073\060\071\006\004\125\035
+\040\000\060\061\060\057\006\010\053\006\001\005\005\007\002\001
+\026\043\150\164\164\160\072\057\057\141\143\145\144\151\143\157
+\155\056\145\144\151\143\157\155\147\162\157\165\160\056\143\157
+\155\057\144\157\143\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\003\202\002\001\000\316\054\013\122\121\142\046
+\175\014\047\203\217\305\366\332\240\150\173\117\222\136\352\244
+\163\062\021\123\104\262\104\313\235\354\017\171\102\263\020\246
+\307\015\235\313\266\372\077\072\174\352\277\210\123\033\074\367
+\202\372\005\065\063\341\065\250\127\300\347\375\215\117\077\223
+\062\117\170\146\003\167\007\130\351\225\310\176\076\320\171\000
+\214\362\033\121\063\233\274\224\351\072\173\156\122\055\062\236
+\043\244\105\373\266\056\023\260\213\030\261\335\316\325\035\247
+\102\177\125\276\373\133\273\107\324\374\044\315\004\256\226\005
+\025\326\254\316\060\363\312\013\305\272\342\042\340\246\255\042
+\344\002\356\164\021\177\114\377\170\035\065\332\346\002\064\353
+\030\022\141\167\006\011\026\143\352\030\255\242\207\037\362\307
+\200\011\011\165\116\020\250\217\075\206\270\165\021\300\044\142
+\212\226\173\112\105\351\354\131\305\276\153\203\346\341\350\254
+\265\060\036\376\005\007\200\371\341\043\015\120\217\005\230\377
+\054\137\350\073\266\255\317\201\265\041\207\312\010\052\043\047
+\060\040\053\317\355\224\133\254\262\172\322\307\050\241\212\013
+\233\115\112\054\155\205\077\011\162\074\147\342\331\334\007\272
+\353\145\173\132\001\143\326\220\133\117\027\146\075\177\013\031
+\243\223\143\020\122\052\237\024\026\130\342\334\245\364\241\026
+\213\016\221\213\201\312\233\131\372\330\153\221\007\145\125\137
+\122\037\257\072\373\220\335\151\245\133\234\155\016\054\266\372
+\316\254\245\174\062\112\147\100\334\060\064\043\335\327\004\043
+\146\360\374\125\200\247\373\146\031\202\065\147\142\160\071\136
+\157\307\352\220\100\104\010\036\270\262\326\333\356\131\247\015
+\030\171\064\274\124\030\136\123\312\064\121\355\105\012\346\216
+\307\202\066\076\247\070\143\251\060\054\027\020\140\222\237\125
+\207\022\131\020\302\017\147\151\021\314\116\036\176\112\232\255
+\257\100\250\165\254\126\220\164\270\240\234\245\171\157\334\351
+\032\310\151\005\351\272\372\003\263\174\344\340\116\302\316\235
+\350\266\106\015\156\176\127\072\147\224\302\313\037\234\167\112
+\147\116\151\206\103\223\070\373\266\333\117\203\221\324\140\176
+\113\076\053\070\007\125\230\136\244
+END
+
+# Trust for Certificate "ACEDICOM Root"
+# Issuer: C=ES,O=EDICOM,OU=PKI,CN=ACEDICOM Root
+# Serial Number:61:8d:c7:86:3b:01:82:05
+# Subject: C=ES,O=EDICOM,OU=PKI,CN=ACEDICOM Root
+# Not Valid Before: Fri Apr 18 16:24:22 2008
+# Not Valid After : Thu Apr 13 16:24:22 2028
+# Fingerprint (MD5): 42:81:A0:E2:1C:E3:55:10:DE:55:89:42:65:96:22:E6
+# Fingerprint (SHA1): E0:B4:32:2E:B2:F6:A5:68:B6:54:53:84:48:18:4A:50:36:87:43:84
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ACEDICOM Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\340\264\062\056\262\366\245\150\266\124\123\204\110\030\112\120
+\066\207\103\204
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\102\201\240\342\034\343\125\020\336\125\211\102\145\226\042\346
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\026\060\024\006\003\125\004\003\014\015\101\103\105
+\104\111\103\117\115\040\122\157\157\164\061\014\060\012\006\003
+\125\004\013\014\003\120\113\111\061\017\060\015\006\003\125\004
+\012\014\006\105\104\111\103\117\115\061\013\060\011\006\003\125
+\004\006\023\002\105\123
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\141\215\307\206\073\001\202\005
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+
+#
+# Certificate "Verisign Class 1 Public Primary Certification Authority"
+#
+# Issuer: OU=Class 1 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Serial Number:3f:69:1e:81:9c:f0:9a:4a:f3:73:ff:b9:48:a2:e4:dd
+# Subject: OU=Class 1 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Jan 29 00:00:00 1996
+# Not Valid After : Wed Aug 02 23:59:59 2028
+# Fingerprint (MD5): 86:AC:DE:2B:C5:6D:C3:D9:8C:28:88:D3:8D:16:13:1E
+# Fingerprint (SHA1): CE:6A:64:A3:09:E4:2F:BB:D9:85:1C:45:3E:64:09:EA:E8:7D:60:F1
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 1 Public Primary Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\061\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\061\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\077\151\036\201\234\360\232\112\363\163\377\271\110\242
+\344\335
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\074\060\202\001\245\002\020\077\151\036\201\234\360
+\232\112\363\163\377\271\110\242\344\335\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\137\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125\004
+\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156\143
+\056\061\067\060\065\006\003\125\004\013\023\056\103\154\141\163
+\163\040\061\040\120\165\142\154\151\143\040\120\162\151\155\141
+\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171\060\036\027\015\071\066
+\060\061\062\071\060\060\060\060\060\060\132\027\015\062\070\060
+\070\060\062\062\063\065\071\065\071\132\060\137\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125
+\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\061\067\060\065\006\003\125\004\013\023\056\103\154\141
+\163\163\040\061\040\120\165\142\154\151\143\040\120\162\151\155
+\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\060\201\237\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\201\215
+\000\060\201\211\002\201\201\000\345\031\277\155\243\126\141\055
+\231\110\161\366\147\336\271\215\353\267\236\206\200\012\221\016
+\372\070\045\257\106\210\202\345\163\250\240\233\044\135\015\037
+\314\145\156\014\260\320\126\204\030\207\232\006\233\020\241\163
+\337\264\130\071\153\156\301\366\025\325\250\250\077\252\022\006
+\215\061\254\177\260\064\327\217\064\147\210\011\315\024\021\342
+\116\105\126\151\037\170\002\200\332\334\107\221\051\273\066\311
+\143\134\305\340\327\055\207\173\241\267\062\260\173\060\272\052
+\057\061\252\356\243\147\332\333\002\003\001\000\001\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\201\201\000
+\130\025\051\071\074\167\243\332\134\045\003\174\140\372\356\011
+\231\074\047\020\160\310\014\011\346\263\207\317\012\342\030\226
+\065\142\314\277\233\047\171\211\137\311\304\011\364\316\265\035
+\337\052\275\345\333\206\234\150\045\345\060\174\266\211\025\376
+\147\321\255\341\120\254\074\174\142\113\217\272\204\327\022\025
+\033\037\312\135\017\301\122\224\052\021\231\332\173\317\014\066
+\023\325\065\334\020\031\131\352\224\301\000\277\165\217\331\372
+\375\166\004\333\142\273\220\152\003\331\106\065\331\370\174\133
+END
+
+# Trust for Certificate "Verisign Class 1 Public Primary Certification Authority"
+# Issuer: OU=Class 1 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Serial Number:3f:69:1e:81:9c:f0:9a:4a:f3:73:ff:b9:48:a2:e4:dd
+# Subject: OU=Class 1 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Jan 29 00:00:00 1996
+# Not Valid After : Wed Aug 02 23:59:59 2028
+# Fingerprint (MD5): 86:AC:DE:2B:C5:6D:C3:D9:8C:28:88:D3:8D:16:13:1E
+# Fingerprint (SHA1): CE:6A:64:A3:09:E4:2F:BB:D9:85:1C:45:3E:64:09:EA:E8:7D:60:F1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 1 Public Primary Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\316\152\144\243\011\344\057\273\331\205\034\105\076\144\011\352
+\350\175\140\361
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\206\254\336\053\305\155\303\331\214\050\210\323\215\026\023\036
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\061\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\077\151\036\201\234\360\232\112\363\163\377\271\110\242
+\344\335
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Verisign Class 3 Public Primary Certification Authority"
+#
+# Issuer: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Serial Number:3c:91:31:cb:1f:f6:d0:1b:0e:9a:b8:d0:44:bf:12:be
+# Subject: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Jan 29 00:00:00 1996
+# Not Valid After : Wed Aug 02 23:59:59 2028
+# Fingerprint (MD5): EF:5A:F1:33:EF:F1:CD:BB:51:02:EE:12:14:4B:96:C4
+# Fingerprint (SHA1): A1:DB:63:93:91:6F:17:E4:18:55:09:40:04:15:C7:02:40:B0:AE:6B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\063\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\063\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\074\221\061\313\037\366\320\033\016\232\270\320\104\277
+\022\276
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\074\060\202\001\245\002\020\074\221\061\313\037\366
+\320\033\016\232\270\320\104\277\022\276\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\060\137\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125\004
+\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156\143
+\056\061\067\060\065\006\003\125\004\013\023\056\103\154\141\163
+\163\040\063\040\120\165\142\154\151\143\040\120\162\151\155\141
+\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157\156
+\040\101\165\164\150\157\162\151\164\171\060\036\027\015\071\066
+\060\061\062\071\060\060\060\060\060\060\132\027\015\062\070\060
+\070\060\062\062\063\065\071\065\071\132\060\137\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\027\060\025\006\003\125
+\004\012\023\016\126\145\162\151\123\151\147\156\054\040\111\156
+\143\056\061\067\060\065\006\003\125\004\013\023\056\103\154\141
+\163\163\040\063\040\120\165\142\154\151\143\040\120\162\151\155
+\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\060\201\237\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\201\215
+\000\060\201\211\002\201\201\000\311\134\131\236\362\033\212\001
+\024\264\020\337\004\100\333\343\127\257\152\105\100\217\204\014
+\013\321\063\331\331\021\317\356\002\130\037\045\367\052\250\104
+\005\252\354\003\037\170\177\236\223\271\232\000\252\043\175\326
+\254\205\242\143\105\307\162\047\314\364\114\306\165\161\322\071
+\357\117\102\360\165\337\012\220\306\216\040\157\230\017\370\254
+\043\137\160\051\066\244\311\206\347\261\232\040\313\123\245\205
+\347\075\276\175\232\376\044\105\063\334\166\025\355\017\242\161
+\144\114\145\056\201\150\105\247\002\003\001\000\001\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\201\201\000
+\020\162\122\251\005\024\031\062\010\101\360\305\153\012\314\176
+\017\041\031\315\344\147\334\137\251\033\346\312\350\163\235\042
+\330\230\156\163\003\141\221\305\174\260\105\100\156\104\235\215
+\260\261\226\164\141\055\015\251\105\322\244\222\052\326\232\165
+\227\156\077\123\375\105\231\140\035\250\053\114\371\136\247\011
+\330\165\060\327\322\145\140\075\147\326\110\125\165\151\077\221
+\365\110\013\107\151\042\151\202\226\276\311\310\070\206\112\172
+\054\163\031\110\151\116\153\174\145\277\017\374\160\316\210\220
+END
+
+# Trust for Certificate "Verisign Class 3 Public Primary Certification Authority"
+# Issuer: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Serial Number:3c:91:31:cb:1f:f6:d0:1b:0e:9a:b8:d0:44:bf:12:be
+# Subject: OU=Class 3 Public Primary Certification Authority,O="VeriSign, Inc.",C=US
+# Not Valid Before: Mon Jan 29 00:00:00 1996
+# Not Valid After : Wed Aug 02 23:59:59 2028
+# Fingerprint (MD5): EF:5A:F1:33:EF:F1:CD:BB:51:02:EE:12:14:4B:96:C4
+# Fingerprint (SHA1): A1:DB:63:93:91:6F:17:E4:18:55:09:40:04:15:C7:02:40:B0:AE:6B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Verisign Class 3 Public Primary Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\241\333\143\223\221\157\027\344\030\125\011\100\004\025\307\002
+\100\260\256\153
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\357\132\361\063\357\361\315\273\121\002\356\022\024\113\226\304
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151
+\147\156\054\040\111\156\143\056\061\067\060\065\006\003\125\004
+\013\023\056\103\154\141\163\163\040\063\040\120\165\142\154\151
+\143\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\074\221\061\313\037\366\320\033\016\232\270\320\104\277
+\022\276
+END
+LEGACY_CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+LEGACY_CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Microsec e-Szigno Root CA 2009"
+#
+# Issuer: E=info@e-szigno.hu,CN=Microsec e-Szigno Root CA 2009,O=Microsec Ltd.,L=Budapest,C=HU
+# Serial Number:00:c2:7e:43:04:4e:47:3f:19
+# Subject: E=info@e-szigno.hu,CN=Microsec e-Szigno Root CA 2009,O=Microsec Ltd.,L=Budapest,C=HU
+# Not Valid Before: Tue Jun 16 11:30:18 2009
+# Not Valid After : Sun Dec 30 11:30:18 2029
+# Fingerprint (MD5): F8:49:F4:03:BC:44:2D:83:BE:48:69:7D:29:64:FC:B1
+# Fingerprint (SHA1): 89:DF:74:FE:5C:F4:0F:4A:80:F9:E3:37:7D:54:DA:91:E1:01:31:8E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Microsec e-Szigno Root CA 2009"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\014\010\102\165\144\141\160
+\145\163\164\061\026\060\024\006\003\125\004\012\014\015\115\151
+\143\162\157\163\145\143\040\114\164\144\056\061\047\060\045\006
+\003\125\004\003\014\036\115\151\143\162\157\163\145\143\040\145
+\055\123\172\151\147\156\157\040\122\157\157\164\040\103\101\040
+\062\060\060\071\061\037\060\035\006\011\052\206\110\206\367\015
+\001\011\001\026\020\151\156\146\157\100\145\055\163\172\151\147
+\156\157\056\150\165
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\014\010\102\165\144\141\160
+\145\163\164\061\026\060\024\006\003\125\004\012\014\015\115\151
+\143\162\157\163\145\143\040\114\164\144\056\061\047\060\045\006
+\003\125\004\003\014\036\115\151\143\162\157\163\145\143\040\145
+\055\123\172\151\147\156\157\040\122\157\157\164\040\103\101\040
+\062\060\060\071\061\037\060\035\006\011\052\206\110\206\367\015
+\001\011\001\026\020\151\156\146\157\100\145\055\163\172\151\147
+\156\157\056\150\165
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\302\176\103\004\116\107\077\031
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\012\060\202\002\362\240\003\002\001\002\002\011\000
+\302\176\103\004\116\107\077\031\060\015\006\011\052\206\110\206
+\367\015\001\001\013\005\000\060\201\202\061\013\060\011\006\003
+\125\004\006\023\002\110\125\061\021\060\017\006\003\125\004\007
+\014\010\102\165\144\141\160\145\163\164\061\026\060\024\006\003
+\125\004\012\014\015\115\151\143\162\157\163\145\143\040\114\164
+\144\056\061\047\060\045\006\003\125\004\003\014\036\115\151\143
+\162\157\163\145\143\040\145\055\123\172\151\147\156\157\040\122
+\157\157\164\040\103\101\040\062\060\060\071\061\037\060\035\006
+\011\052\206\110\206\367\015\001\011\001\026\020\151\156\146\157
+\100\145\055\163\172\151\147\156\157\056\150\165\060\036\027\015
+\060\071\060\066\061\066\061\061\063\060\061\070\132\027\015\062
+\071\061\062\063\060\061\061\063\060\061\070\132\060\201\202\061
+\013\060\011\006\003\125\004\006\023\002\110\125\061\021\060\017
+\006\003\125\004\007\014\010\102\165\144\141\160\145\163\164\061
+\026\060\024\006\003\125\004\012\014\015\115\151\143\162\157\163
+\145\143\040\114\164\144\056\061\047\060\045\006\003\125\004\003
+\014\036\115\151\143\162\157\163\145\143\040\145\055\123\172\151
+\147\156\157\040\122\157\157\164\040\103\101\040\062\060\060\071
+\061\037\060\035\006\011\052\206\110\206\367\015\001\011\001\026
+\020\151\156\146\157\100\145\055\163\172\151\147\156\157\056\150
+\165\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\351\370\217\363\143\255\332\206\330\247\340\102\373\317
+\221\336\246\046\370\231\245\143\160\255\233\256\312\063\100\175
+\155\226\156\241\016\104\356\341\023\235\224\102\122\232\275\165
+\205\164\054\250\016\035\223\266\030\267\214\054\250\317\373\134
+\161\271\332\354\376\350\176\217\344\057\035\262\250\165\207\330
+\267\241\345\073\317\231\112\106\320\203\031\175\300\241\022\034
+\225\155\112\364\330\307\245\115\063\056\205\071\100\165\176\024
+\174\200\022\230\120\307\101\147\270\240\200\141\124\246\154\116
+\037\340\235\016\007\351\311\272\063\347\376\300\125\050\054\002
+\200\247\031\365\236\334\125\123\003\227\173\007\110\377\231\373
+\067\212\044\304\131\314\120\020\143\216\252\251\032\260\204\032
+\206\371\137\273\261\120\156\244\321\012\314\325\161\176\037\247
+\033\174\365\123\156\042\137\313\053\346\324\174\135\256\326\302
+\306\114\345\005\001\331\355\127\374\301\043\171\374\372\310\044
+\203\225\363\265\152\121\001\320\167\326\351\022\241\371\032\203
+\373\202\033\271\260\227\364\166\006\063\103\111\240\377\013\265
+\372\265\002\003\001\000\001\243\201\200\060\176\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\035\006
+\003\125\035\016\004\026\004\024\313\017\306\337\102\103\314\075
+\313\265\110\043\241\032\172\246\052\273\064\150\060\037\006\003
+\125\035\043\004\030\060\026\200\024\313\017\306\337\102\103\314
+\075\313\265\110\043\241\032\172\246\052\273\064\150\060\033\006
+\003\125\035\021\004\024\060\022\201\020\151\156\146\157\100\145
+\055\163\172\151\147\156\157\056\150\165\060\015\006\011\052\206
+\110\206\367\015\001\001\013\005\000\003\202\001\001\000\311\321
+\016\136\056\325\314\263\174\076\313\374\075\377\015\050\225\223
+\004\310\277\332\315\171\270\103\220\360\244\276\357\362\357\041
+\230\274\324\324\135\006\366\356\102\354\060\154\240\252\251\312
+\361\257\212\372\077\013\163\152\076\352\056\100\176\037\256\124
+\141\171\353\056\010\067\327\043\363\214\237\276\035\261\341\244
+\165\333\240\342\124\024\261\272\034\051\244\030\366\022\272\242
+\024\024\343\061\065\310\100\377\267\340\005\166\127\301\034\131
+\362\370\277\344\355\045\142\134\204\360\176\176\037\263\276\371
+\267\041\021\314\003\001\126\160\247\020\222\036\033\064\201\036
+\255\234\032\303\004\074\355\002\141\326\036\006\363\137\072\207
+\362\053\361\105\207\345\075\254\321\307\127\204\275\153\256\334
+\330\371\266\033\142\160\013\075\066\311\102\362\062\327\172\141
+\346\322\333\075\317\310\251\311\233\334\333\130\104\327\157\070
+\257\177\170\323\243\255\032\165\272\034\301\066\174\217\036\155
+\034\303\165\106\256\065\005\246\366\134\075\041\356\126\360\311
+\202\042\055\172\124\253\160\303\175\042\145\202\160\226
+END
+
+# Trust for Certificate "Microsec e-Szigno Root CA 2009"
+# Issuer: E=info@e-szigno.hu,CN=Microsec e-Szigno Root CA 2009,O=Microsec Ltd.,L=Budapest,C=HU
+# Serial Number:00:c2:7e:43:04:4e:47:3f:19
+# Subject: E=info@e-szigno.hu,CN=Microsec e-Szigno Root CA 2009,O=Microsec Ltd.,L=Budapest,C=HU
+# Not Valid Before: Tue Jun 16 11:30:18 2009
+# Not Valid After : Sun Dec 30 11:30:18 2029
+# Fingerprint (MD5): F8:49:F4:03:BC:44:2D:83:BE:48:69:7D:29:64:FC:B1
+# Fingerprint (SHA1): 89:DF:74:FE:5C:F4:0F:4A:80:F9:E3:37:7D:54:DA:91:E1:01:31:8E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Microsec e-Szigno Root CA 2009"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\211\337\164\376\134\364\017\112\200\371\343\067\175\124\332\221
+\341\001\061\216
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\370\111\364\003\274\104\055\203\276\110\151\175\051\144\374\261
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\110\125
+\061\021\060\017\006\003\125\004\007\014\010\102\165\144\141\160
+\145\163\164\061\026\060\024\006\003\125\004\012\014\015\115\151
+\143\162\157\163\145\143\040\114\164\144\056\061\047\060\045\006
+\003\125\004\003\014\036\115\151\143\162\157\163\145\143\040\145
+\055\123\172\151\147\156\157\040\122\157\157\164\040\103\101\040
+\062\060\060\071\061\037\060\035\006\011\052\206\110\206\367\015
+\001\011\001\026\020\151\156\146\157\100\145\055\163\172\151\147
+\156\157\056\150\165
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\302\176\103\004\116\107\077\031
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GlobalSign Root CA - R3"
+#
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R3
+# Serial Number:04:00:00:00:00:01:21:58:53:08:a2
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R3
+# Not Valid Before: Wed Mar 18 10:00:00 2009
+# Not Valid After : Sun Mar 18 10:00:00 2029
+# Fingerprint (MD5): C5:DF:B8:49:CA:05:13:55:EE:2D:BA:1A:C3:3E:B0:28
+# Fingerprint (SHA1): D6:9B:56:11:48:F0:1C:77:C5:45:78:C1:09:26:DF:5B:85:69:76:AD
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign Root CA - R3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\114\061\040\060\036\006\003\125\004\013\023\027\107\154\157
+\142\141\154\123\151\147\156\040\122\157\157\164\040\103\101\040
+\055\040\122\063\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\114\061\040\060\036\006\003\125\004\013\023\027\107\154\157
+\142\141\154\123\151\147\156\040\122\157\157\164\040\103\101\040
+\055\040\122\063\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\041\130\123\010\242
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\137\060\202\002\107\240\003\002\001\002\002\013\004
+\000\000\000\000\001\041\130\123\010\242\060\015\006\011\052\206
+\110\206\367\015\001\001\013\005\000\060\114\061\040\060\036\006
+\003\125\004\013\023\027\107\154\157\142\141\154\123\151\147\156
+\040\122\157\157\164\040\103\101\040\055\040\122\063\061\023\060
+\021\006\003\125\004\012\023\012\107\154\157\142\141\154\123\151
+\147\156\061\023\060\021\006\003\125\004\003\023\012\107\154\157
+\142\141\154\123\151\147\156\060\036\027\015\060\071\060\063\061
+\070\061\060\060\060\060\060\132\027\015\062\071\060\063\061\070
+\061\060\060\060\060\060\132\060\114\061\040\060\036\006\003\125
+\004\013\023\027\107\154\157\142\141\154\123\151\147\156\040\122
+\157\157\164\040\103\101\040\055\040\122\063\061\023\060\021\006
+\003\125\004\012\023\012\107\154\157\142\141\154\123\151\147\156
+\061\023\060\021\006\003\125\004\003\023\012\107\154\157\142\141
+\154\123\151\147\156\060\202\001\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
+\012\002\202\001\001\000\314\045\166\220\171\006\170\042\026\365
+\300\203\266\204\312\050\236\375\005\166\021\305\255\210\162\374
+\106\002\103\307\262\212\235\004\137\044\313\056\113\341\140\202
+\106\341\122\253\014\201\107\160\154\335\144\321\353\365\054\243
+\017\202\075\014\053\256\227\327\266\024\206\020\171\273\073\023
+\200\167\214\010\341\111\322\152\142\057\037\136\372\226\150\337
+\211\047\225\070\237\006\327\076\311\313\046\131\015\163\336\260
+\310\351\046\016\203\025\306\357\133\213\322\004\140\312\111\246
+\050\366\151\073\366\313\310\050\221\345\235\212\141\127\067\254
+\164\024\334\164\340\072\356\162\057\056\234\373\320\273\277\365
+\075\000\341\006\063\350\202\053\256\123\246\072\026\163\214\335
+\101\016\040\072\300\264\247\241\351\262\117\220\056\062\140\351
+\127\313\271\004\222\150\150\345\070\046\140\165\262\237\167\377
+\221\024\357\256\040\111\374\255\100\025\110\321\002\061\141\031
+\136\270\227\357\255\167\267\144\232\172\277\137\301\023\357\233
+\142\373\015\154\340\124\151\026\251\003\332\156\351\203\223\161
+\166\306\151\205\202\027\002\003\001\000\001\243\102\060\100\060
+\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\035\006\003\125\035\016\004\026\004\024\217\360\113\177\250
+\056\105\044\256\115\120\372\143\232\213\336\342\335\033\274\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003\202
+\001\001\000\113\100\333\300\120\252\376\310\014\357\367\226\124
+\105\111\273\226\000\011\101\254\263\023\206\206\050\007\063\312
+\153\346\164\271\272\000\055\256\244\012\323\365\361\361\017\212
+\277\163\147\112\203\307\104\173\170\340\257\156\154\157\003\051
+\216\063\071\105\303\216\344\271\127\154\252\374\022\226\354\123
+\306\055\344\044\154\271\224\143\373\334\123\150\147\126\076\203
+\270\317\065\041\303\311\150\376\316\332\302\123\252\314\220\212
+\351\360\135\106\214\225\335\172\130\050\032\057\035\336\315\000
+\067\101\217\355\104\155\327\123\050\227\176\363\147\004\036\025
+\327\212\226\264\323\336\114\047\244\114\033\163\163\166\364\027
+\231\302\037\172\016\343\055\010\255\012\034\054\377\074\253\125
+\016\017\221\176\066\353\303\127\111\276\341\056\055\174\140\213
+\303\101\121\023\043\235\316\367\062\153\224\001\250\231\347\054
+\063\037\072\073\045\322\206\100\316\073\054\206\170\311\141\057
+\024\272\356\333\125\157\337\204\356\005\011\115\275\050\330\162
+\316\323\142\120\145\036\353\222\227\203\061\331\263\265\312\107
+\130\077\137
+END
+
+# Trust for Certificate "GlobalSign Root CA - R3"
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R3
+# Serial Number:04:00:00:00:00:01:21:58:53:08:a2
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R3
+# Not Valid Before: Wed Mar 18 10:00:00 2009
+# Not Valid After : Sun Mar 18 10:00:00 2029
+# Fingerprint (MD5): C5:DF:B8:49:CA:05:13:55:EE:2D:BA:1A:C3:3E:B0:28
+# Fingerprint (SHA1): D6:9B:56:11:48:F0:1C:77:C5:45:78:C1:09:26:DF:5B:85:69:76:AD
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign Root CA - R3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\326\233\126\021\110\360\034\167\305\105\170\301\011\046\337\133
+\205\151\166\255
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\305\337\270\111\312\005\023\125\356\055\272\032\303\076\260\050
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\114\061\040\060\036\006\003\125\004\013\023\027\107\154\157
+\142\141\154\123\151\147\156\040\122\157\157\164\040\103\101\040
+\055\040\122\063\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\013\004\000\000\000\000\001\041\130\123\010\242
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TC TrustCenter Universal CA III"
+#
+# Issuer: CN=TC TrustCenter Universal CA III,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:63:25:00:01:00:02:14:8d:33:15:02:e4:6c:f4
+# Subject: CN=TC TrustCenter Universal CA III,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Wed Sep 09 08:15:27 2009
+# Not Valid After : Mon Dec 31 23:59:59 2029
+# Fingerprint (MD5): 9F:DD:DB:AB:FF:8E:FF:45:21:5F:F0:6C:9D:8F:FE:2B
+# Fingerprint (SHA1): 96:56:CD:7B:57:96:98:95:D0:E1:41:46:68:06:FB:B8:C6:11:06:87
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Universal CA III"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\044\060
+\042\006\003\125\004\013\023\033\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\125\156\151\166\145\162\163\141\154
+\040\103\101\061\050\060\046\006\003\125\004\003\023\037\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\125\156\151
+\166\145\162\163\141\154\040\103\101\040\111\111\111
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\044\060
+\042\006\003\125\004\013\023\033\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\125\156\151\166\145\162\163\141\154
+\040\103\101\061\050\060\046\006\003\125\004\003\023\037\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\125\156\151
+\166\145\162\163\141\154\040\103\101\040\111\111\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\143\045\000\001\000\002\024\215\063\025\002\344\154\364
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\341\060\202\002\311\240\003\002\001\002\002\016\143
+\045\000\001\000\002\024\215\063\025\002\344\154\364\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\060\173\061\013
+\060\011\006\003\125\004\006\023\002\104\105\061\034\060\032\006
+\003\125\004\012\023\023\124\103\040\124\162\165\163\164\103\145
+\156\164\145\162\040\107\155\142\110\061\044\060\042\006\003\125
+\004\013\023\033\124\103\040\124\162\165\163\164\103\145\156\164
+\145\162\040\125\156\151\166\145\162\163\141\154\040\103\101\061
+\050\060\046\006\003\125\004\003\023\037\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\125\156\151\166\145\162\163
+\141\154\040\103\101\040\111\111\111\060\036\027\015\060\071\060
+\071\060\071\060\070\061\065\062\067\132\027\015\062\071\061\062
+\063\061\062\063\065\071\065\071\132\060\173\061\013\060\011\006
+\003\125\004\006\023\002\104\105\061\034\060\032\006\003\125\004
+\012\023\023\124\103\040\124\162\165\163\164\103\145\156\164\145
+\162\040\107\155\142\110\061\044\060\042\006\003\125\004\013\023
+\033\124\103\040\124\162\165\163\164\103\145\156\164\145\162\040
+\125\156\151\166\145\162\163\141\154\040\103\101\061\050\060\046
+\006\003\125\004\003\023\037\124\103\040\124\162\165\163\164\103
+\145\156\164\145\162\040\125\156\151\166\145\162\163\141\154\040
+\103\101\040\111\111\111\060\202\001\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202
+\001\012\002\202\001\001\000\302\332\234\142\260\271\161\022\260
+\013\310\032\127\262\256\203\024\231\263\064\113\233\220\242\305
+\347\347\057\002\240\115\055\244\372\205\332\233\045\205\055\100
+\050\040\155\352\340\275\261\110\203\042\051\104\237\116\203\356
+\065\121\023\163\164\325\274\362\060\146\224\123\300\100\066\057
+\014\204\145\316\017\156\302\130\223\350\054\013\072\351\301\216
+\373\362\153\312\074\342\234\116\216\344\371\175\323\047\237\033
+\325\147\170\207\055\177\013\107\263\307\350\311\110\174\257\057
+\314\012\331\101\357\237\376\232\341\262\256\371\123\265\345\351
+\106\237\140\343\337\215\323\177\373\226\176\263\265\162\370\113
+\255\010\171\315\151\211\100\047\365\052\301\255\103\354\244\123
+\310\141\266\367\322\171\052\147\030\166\110\155\133\045\001\321
+\046\305\267\127\151\043\025\133\141\212\255\360\033\055\331\257
+\134\361\046\220\151\251\325\014\100\365\063\200\103\217\234\243
+\166\052\105\264\257\277\177\076\207\077\166\305\315\052\336\040
+\305\026\130\313\371\033\365\017\313\015\021\122\144\270\322\166
+\142\167\203\361\130\237\377\002\003\001\000\001\243\143\060\141
+\060\037\006\003\125\035\043\004\030\060\026\200\024\126\347\341
+\133\045\103\200\340\366\214\341\161\274\216\345\200\057\304\110
+\342\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001
+\001\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002
+\001\006\060\035\006\003\125\035\016\004\026\004\024\126\347\341
+\133\045\103\200\340\366\214\341\161\274\216\345\200\057\304\110
+\342\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\001\001\000\203\307\257\352\177\115\012\074\071\261\150
+\276\173\155\211\056\351\263\011\347\030\127\215\205\232\027\363
+\166\102\120\023\017\307\220\157\063\255\305\111\140\053\154\111
+\130\031\324\342\276\267\277\253\111\274\224\310\253\276\050\154
+\026\150\340\310\227\106\040\240\150\147\140\210\071\040\121\330
+\150\001\021\316\247\366\021\007\366\354\354\254\032\037\262\146
+\156\126\147\140\172\164\136\300\155\227\066\256\265\015\135\146
+\163\300\045\062\105\330\112\006\007\217\304\267\007\261\115\006
+\015\341\245\353\364\165\312\272\234\320\275\263\323\062\044\114
+\356\176\342\166\004\113\111\123\330\362\351\124\063\374\345\161
+\037\075\024\134\226\113\361\072\362\000\273\154\264\372\226\125
+\010\210\011\301\314\221\031\051\260\040\055\377\313\070\244\100
+\341\027\276\171\141\200\377\007\003\206\114\116\173\006\237\021
+\206\215\211\356\047\304\333\342\274\031\216\013\303\303\023\307
+\055\003\143\073\323\350\344\242\052\302\202\010\224\026\124\360
+\357\037\047\220\045\270\015\016\050\033\107\167\107\275\034\250
+\045\361\224\264\146
+END
+
+# Trust for Certificate "TC TrustCenter Universal CA III"
+# Issuer: CN=TC TrustCenter Universal CA III,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Serial Number:63:25:00:01:00:02:14:8d:33:15:02:e4:6c:f4
+# Subject: CN=TC TrustCenter Universal CA III,OU=TC TrustCenter Universal CA,O=TC TrustCenter GmbH,C=DE
+# Not Valid Before: Wed Sep 09 08:15:27 2009
+# Not Valid After : Mon Dec 31 23:59:59 2029
+# Fingerprint (MD5): 9F:DD:DB:AB:FF:8E:FF:45:21:5F:F0:6C:9D:8F:FE:2B
+# Fingerprint (SHA1): 96:56:CD:7B:57:96:98:95:D0:E1:41:46:68:06:FB:B8:C6:11:06:87
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TC TrustCenter Universal CA III"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\226\126\315\173\127\226\230\225\320\341\101\106\150\006\373\270
+\306\021\006\207
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\237\335\333\253\377\216\377\105\041\137\360\154\235\217\376\053
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\173\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\034\060\032\006\003\125\004\012\023\023\124\103\040\124\162\165
+\163\164\103\145\156\164\145\162\040\107\155\142\110\061\044\060
+\042\006\003\125\004\013\023\033\124\103\040\124\162\165\163\164
+\103\145\156\164\145\162\040\125\156\151\166\145\162\163\141\154
+\040\103\101\061\050\060\046\006\003\125\004\003\023\037\124\103
+\040\124\162\165\163\164\103\145\156\164\145\162\040\125\156\151
+\166\145\162\163\141\154\040\103\101\040\111\111\111
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\016\143\045\000\001\000\002\024\215\063\025\002\344\154\364
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Autoridad de Certificacion Firmaprofesional CIF A62634068"
+#
+# Issuer: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068,C=ES
+# Serial Number:53:ec:3b:ee:fb:b2:48:5f
+# Subject: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068,C=ES
+# Not Valid Before: Wed May 20 08:38:15 2009
+# Not Valid After : Tue Dec 31 08:38:15 2030
+# Fingerprint (MD5): 73:3A:74:7A:EC:BB:A3:96:A6:C2:E4:E2:C8:9B:C0:C3
+# Fingerprint (SHA1): AE:C5:FB:3F:C8:E1:BF:C4:E5:4F:03:07:5A:9A:E8:00:B7:F7:B6:FA
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Autoridad de Certificacion Firmaprofesional CIF A62634068"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\121\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\102\060\100\006\003\125\004\003\014\071\101\165\164\157\162\151
+\144\141\144\040\144\145\040\103\145\162\164\151\146\151\143\141
+\143\151\157\156\040\106\151\162\155\141\160\162\157\146\145\163
+\151\157\156\141\154\040\103\111\106\040\101\066\062\066\063\064
+\060\066\070
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\121\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\102\060\100\006\003\125\004\003\014\071\101\165\164\157\162\151
+\144\141\144\040\144\145\040\103\145\162\164\151\146\151\143\141
+\143\151\157\156\040\106\151\162\155\141\160\162\157\146\145\163
+\151\157\156\141\154\040\103\111\106\040\101\066\062\066\063\064
+\060\066\070
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\123\354\073\356\373\262\110\137
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\024\060\202\003\374\240\003\002\001\002\002\010\123
+\354\073\356\373\262\110\137\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\060\121\061\013\060\011\006\003\125\004
+\006\023\002\105\123\061\102\060\100\006\003\125\004\003\014\071
+\101\165\164\157\162\151\144\141\144\040\144\145\040\103\145\162
+\164\151\146\151\143\141\143\151\157\156\040\106\151\162\155\141
+\160\162\157\146\145\163\151\157\156\141\154\040\103\111\106\040
+\101\066\062\066\063\064\060\066\070\060\036\027\015\060\071\060
+\065\062\060\060\070\063\070\061\065\132\027\015\063\060\061\062
+\063\061\060\070\063\070\061\065\132\060\121\061\013\060\011\006
+\003\125\004\006\023\002\105\123\061\102\060\100\006\003\125\004
+\003\014\071\101\165\164\157\162\151\144\141\144\040\144\145\040
+\103\145\162\164\151\146\151\143\141\143\151\157\156\040\106\151
+\162\155\141\160\162\157\146\145\163\151\157\156\141\154\040\103
+\111\106\040\101\066\062\066\063\064\060\066\070\060\202\002\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\002\017\000\060\202\002\012\002\202\002\001\000\312\226\153
+\216\352\370\373\361\242\065\340\177\114\332\340\303\122\327\175
+\266\020\310\002\136\263\103\052\304\117\152\262\312\034\135\050
+\232\170\021\032\151\131\127\257\265\040\102\344\213\017\346\337
+\133\246\003\222\057\365\021\344\142\327\062\161\070\331\004\014
+\161\253\075\121\176\017\007\337\143\005\134\351\277\224\157\301
+\051\202\300\264\332\121\260\301\074\273\255\067\112\134\312\361
+\113\066\016\044\253\277\303\204\167\375\250\120\364\261\347\306
+\057\322\055\131\215\172\012\116\226\151\122\002\252\066\230\354
+\374\372\024\203\014\067\037\311\222\067\177\327\201\055\345\304
+\271\340\076\064\376\147\364\076\146\321\323\364\100\317\136\142
+\064\017\160\006\076\040\030\132\316\367\162\033\045\154\223\164
+\024\223\243\163\261\016\252\207\020\043\131\137\040\005\031\107
+\355\150\216\222\022\312\135\374\326\053\262\222\074\040\317\341
+\137\257\040\276\240\166\177\166\345\354\032\206\141\063\076\347
+\173\264\077\240\017\216\242\271\152\157\271\207\046\157\101\154
+\210\246\120\375\152\143\013\365\223\026\033\031\217\262\355\233
+\233\311\220\365\001\014\337\031\075\017\076\070\043\311\057\217
+\014\321\002\376\033\125\326\116\320\215\074\257\117\244\363\376
+\257\052\323\005\235\171\010\241\313\127\061\264\234\310\220\262
+\147\364\030\026\223\072\374\107\330\321\170\226\061\037\272\053
+\014\137\135\231\255\143\211\132\044\040\166\330\337\375\253\116
+\246\042\252\235\136\346\047\212\175\150\051\243\347\212\270\332
+\021\273\027\055\231\235\023\044\106\367\305\342\330\237\216\177
+\307\217\164\155\132\262\350\162\365\254\356\044\020\255\057\024
+\332\377\055\232\106\161\107\276\102\337\273\001\333\364\177\323
+\050\217\061\131\133\323\311\002\246\264\122\312\156\227\373\103
+\305\010\046\157\212\364\273\375\237\050\252\015\325\105\363\023
+\072\035\330\300\170\217\101\147\074\036\224\144\256\173\013\305
+\350\331\001\210\071\032\227\206\144\101\325\073\207\014\156\372
+\017\306\275\110\024\277\071\115\324\236\101\266\217\226\035\143
+\226\223\331\225\006\170\061\150\236\067\006\073\200\211\105\141
+\071\043\307\033\104\243\025\345\034\370\222\060\273\002\003\001
+\000\001\243\201\357\060\201\354\060\022\006\003\125\035\023\001
+\001\377\004\010\060\006\001\001\377\002\001\001\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003
+\125\035\016\004\026\004\024\145\315\353\253\065\036\000\076\176
+\325\164\300\034\264\163\107\016\032\144\057\060\201\246\006\003
+\125\035\040\004\201\236\060\201\233\060\201\230\006\004\125\035
+\040\000\060\201\217\060\057\006\010\053\006\001\005\005\007\002
+\001\026\043\150\164\164\160\072\057\057\167\167\167\056\146\151
+\162\155\141\160\162\157\146\145\163\151\157\156\141\154\056\143
+\157\155\057\143\160\163\060\134\006\010\053\006\001\005\005\007
+\002\002\060\120\036\116\000\120\000\141\000\163\000\145\000\157
+\000\040\000\144\000\145\000\040\000\154\000\141\000\040\000\102
+\000\157\000\156\000\141\000\156\000\157\000\166\000\141\000\040
+\000\064\000\067\000\040\000\102\000\141\000\162\000\143\000\145
+\000\154\000\157\000\156\000\141\000\040\000\060\000\070\000\060
+\000\061\000\067\060\015\006\011\052\206\110\206\367\015\001\001
+\005\005\000\003\202\002\001\000\027\175\240\371\264\335\305\305
+\353\255\113\044\265\241\002\253\335\245\210\112\262\017\125\113
+\053\127\214\073\345\061\335\376\304\062\361\347\133\144\226\066
+\062\030\354\245\062\167\327\343\104\266\300\021\052\200\271\075
+\152\156\174\233\323\255\374\303\326\243\346\144\051\174\321\341
+\070\036\202\053\377\047\145\257\373\026\025\304\056\161\204\345
+\265\377\372\244\107\275\144\062\273\366\045\204\242\047\102\365
+\040\260\302\023\020\021\315\020\025\272\102\220\052\322\104\341
+\226\046\353\061\110\022\375\052\332\311\006\317\164\036\251\113
+\325\207\050\371\171\064\222\076\056\104\350\366\217\117\217\065
+\077\045\263\071\334\143\052\220\153\040\137\304\122\022\116\227
+\054\052\254\235\227\336\110\362\243\146\333\302\322\203\225\246
+\146\247\236\045\017\351\013\063\221\145\012\132\303\331\124\022
+\335\257\303\116\016\037\046\136\015\334\263\215\354\325\201\160
+\336\322\117\044\005\363\154\116\365\114\111\146\215\321\377\322
+\013\045\101\110\376\121\204\306\102\257\200\004\317\320\176\144
+\111\344\362\337\242\354\261\114\300\052\035\347\264\261\145\242
+\304\274\361\230\364\252\160\007\143\264\270\332\073\114\372\100
+\042\060\133\021\246\360\005\016\306\002\003\110\253\206\233\205
+\335\333\335\352\242\166\200\163\175\365\234\004\304\105\215\347
+\271\034\213\236\352\327\165\321\162\261\336\165\104\347\102\175
+\342\127\153\175\334\231\274\075\203\050\352\200\223\215\305\114
+\145\301\160\201\270\070\374\103\061\262\366\003\064\107\262\254
+\373\042\006\313\036\335\027\107\034\137\146\271\323\032\242\332
+\021\261\244\274\043\311\344\276\207\377\271\224\266\370\135\040
+\112\324\137\347\275\150\173\145\362\025\036\322\072\251\055\351
+\330\153\044\254\227\130\104\107\255\131\030\361\041\145\160\336
+\316\064\140\250\100\361\363\074\244\303\050\043\214\376\047\063
+\103\100\240\027\074\353\352\073\260\162\246\243\271\112\113\136
+\026\110\364\262\274\310\214\222\305\235\237\254\162\066\274\064
+\200\064\153\251\213\222\300\270\027\355\354\166\123\365\044\001
+\214\263\042\350\113\174\125\306\235\372\243\024\273\145\205\156
+\156\117\022\176\012\074\235\225
+END
+
+# Trust for Certificate "Autoridad de Certificacion Firmaprofesional CIF A62634068"
+# Issuer: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068,C=ES
+# Serial Number:53:ec:3b:ee:fb:b2:48:5f
+# Subject: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068,C=ES
+# Not Valid Before: Wed May 20 08:38:15 2009
+# Not Valid After : Tue Dec 31 08:38:15 2030
+# Fingerprint (MD5): 73:3A:74:7A:EC:BB:A3:96:A6:C2:E4:E2:C8:9B:C0:C3
+# Fingerprint (SHA1): AE:C5:FB:3F:C8:E1:BF:C4:E5:4F:03:07:5A:9A:E8:00:B7:F7:B6:FA
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Autoridad de Certificacion Firmaprofesional CIF A62634068"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\256\305\373\077\310\341\277\304\345\117\003\007\132\232\350\000
+\267\367\266\372
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\163\072\164\172\354\273\243\226\246\302\344\342\310\233\300\303
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\121\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\102\060\100\006\003\125\004\003\014\071\101\165\164\157\162\151
+\144\141\144\040\144\145\040\103\145\162\164\151\146\151\143\141
+\143\151\157\156\040\106\151\162\155\141\160\162\157\146\145\163
+\151\157\156\141\154\040\103\111\106\040\101\066\062\066\063\064
+\060\066\070
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\123\354\073\356\373\262\110\137
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Izenpe.com"
+#
+# Issuer: CN=Izenpe.com,O=IZENPE S.A.,C=ES
+# Serial Number:00:b0:b7:5a:16:48:5f:bf:e1:cb:f5:8b:d7:19:e6:7d
+# Subject: CN=Izenpe.com,O=IZENPE S.A.,C=ES
+# Not Valid Before: Thu Dec 13 13:08:28 2007
+# Not Valid After : Sun Dec 13 08:27:25 2037
+# Fingerprint (MD5): A6:B0:CD:85:80:DA:5C:50:34:A3:39:90:2F:55:67:73
+# Fingerprint (SHA1): 2F:78:3D:25:52:18:A7:4A:65:39:71:B5:2C:A2:9C:45:15:6F:E9:19
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Izenpe.com"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\070\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\024\060\022\006\003\125\004\012\014\013\111\132\105\116\120\105
+\040\123\056\101\056\061\023\060\021\006\003\125\004\003\014\012
+\111\172\145\156\160\145\056\143\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\070\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\024\060\022\006\003\125\004\012\014\013\111\132\105\116\120\105
+\040\123\056\101\056\061\023\060\021\006\003\125\004\003\014\012
+\111\172\145\156\160\145\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\000\260\267\132\026\110\137\277\341\313\365\213\327\031
+\346\175
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\361\060\202\003\331\240\003\002\001\002\002\020\000
+\260\267\132\026\110\137\277\341\313\365\213\327\031\346\175\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\070
+\061\013\060\011\006\003\125\004\006\023\002\105\123\061\024\060
+\022\006\003\125\004\012\014\013\111\132\105\116\120\105\040\123
+\056\101\056\061\023\060\021\006\003\125\004\003\014\012\111\172
+\145\156\160\145\056\143\157\155\060\036\027\015\060\067\061\062
+\061\063\061\063\060\070\062\070\132\027\015\063\067\061\062\061
+\063\060\070\062\067\062\065\132\060\070\061\013\060\011\006\003
+\125\004\006\023\002\105\123\061\024\060\022\006\003\125\004\012
+\014\013\111\132\105\116\120\105\040\123\056\101\056\061\023\060
+\021\006\003\125\004\003\014\012\111\172\145\156\160\145\056\143
+\157\155\060\202\002\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202
+\002\001\000\311\323\172\312\017\036\254\247\206\350\026\145\152
+\261\302\033\105\062\161\225\331\376\020\133\314\257\347\245\171
+\001\217\211\303\312\362\125\161\367\167\276\167\224\363\162\244
+\054\104\330\236\222\233\024\072\241\347\044\220\012\012\126\216
+\305\330\046\224\341\331\110\341\055\076\332\012\162\335\243\231
+\025\332\201\242\207\364\173\156\046\167\211\130\255\326\353\014
+\262\101\172\163\156\155\333\172\170\101\351\010\210\022\176\207
+\056\146\021\143\154\124\373\074\235\162\300\274\056\377\302\267
+\335\015\166\343\072\327\367\264\150\276\242\365\343\201\156\301
+\106\157\135\215\340\115\306\124\125\211\032\063\061\012\261\127
+\271\243\212\230\303\354\073\064\305\225\101\151\176\165\302\074
+\040\305\141\272\121\107\240\040\220\223\241\220\113\363\116\174
+\205\105\124\232\321\005\046\101\260\265\115\035\063\276\304\003
+\310\045\174\301\160\333\073\364\011\055\124\047\110\254\057\341
+\304\254\076\310\313\222\114\123\071\067\043\354\323\001\371\340
+\011\104\115\115\144\300\341\015\132\207\042\274\255\033\243\376
+\046\265\025\363\247\374\204\031\351\354\241\210\264\104\151\204
+\203\363\211\321\164\006\251\314\013\326\302\336\047\205\120\046
+\312\027\270\311\172\207\126\054\032\001\036\154\276\023\255\020
+\254\265\044\365\070\221\241\326\113\332\361\273\322\336\107\265
+\361\274\201\366\131\153\317\031\123\351\215\025\313\112\313\251
+\157\104\345\033\101\317\341\206\247\312\320\152\237\274\114\215
+\006\063\132\242\205\345\220\065\240\142\134\026\116\360\343\242
+\372\003\032\264\054\161\263\130\054\336\173\013\333\032\017\353
+\336\041\037\006\167\006\003\260\311\357\231\374\300\271\117\013
+\206\050\376\322\271\352\343\332\245\303\107\151\022\340\333\360
+\366\031\213\355\173\160\327\002\326\355\207\030\050\054\004\044
+\114\167\344\110\212\032\306\073\232\324\017\312\372\165\322\001
+\100\132\215\171\277\213\317\113\317\252\026\301\225\344\255\114
+\212\076\027\221\324\261\142\345\202\345\200\004\244\003\176\215
+\277\332\177\242\017\227\117\014\323\015\373\327\321\345\162\176
+\034\310\167\377\133\232\017\267\256\005\106\345\361\250\026\354
+\107\244\027\002\003\001\000\001\243\201\366\060\201\363\060\201
+\260\006\003\125\035\021\004\201\250\060\201\245\201\017\151\156
+\146\157\100\151\172\145\156\160\145\056\143\157\155\244\201\221
+\060\201\216\061\107\060\105\006\003\125\004\012\014\076\111\132
+\105\116\120\105\040\123\056\101\056\040\055\040\103\111\106\040
+\101\060\061\063\063\067\062\066\060\055\122\115\145\162\143\056
+\126\151\164\157\162\151\141\055\107\141\163\164\145\151\172\040
+\124\061\060\065\065\040\106\066\062\040\123\070\061\103\060\101
+\006\003\125\004\011\014\072\101\166\144\141\040\144\145\154\040
+\115\145\144\151\164\145\162\162\141\156\145\157\040\105\164\157
+\162\142\151\144\145\141\040\061\064\040\055\040\060\061\060\061
+\060\040\126\151\164\157\162\151\141\055\107\141\163\164\145\151
+\172\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001
+\001\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002
+\001\006\060\035\006\003\125\035\016\004\026\004\024\035\034\145
+\016\250\362\045\173\264\221\317\344\261\261\346\275\125\164\154
+\005\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000
+\003\202\002\001\000\170\246\014\026\112\237\114\210\072\300\313
+\016\245\026\175\237\271\110\137\030\217\015\142\066\366\315\031
+\153\254\253\325\366\221\175\256\161\363\077\263\016\170\205\233
+\225\244\047\041\107\102\112\174\110\072\365\105\174\263\014\216
+\121\170\254\225\023\336\306\375\175\270\032\220\114\253\222\003
+\307\355\102\001\316\017\330\261\372\242\222\341\140\155\256\172
+\153\011\252\306\051\356\150\111\147\060\200\044\172\061\026\071
+\133\176\361\034\056\335\154\011\255\362\061\301\202\116\271\273
+\371\276\277\052\205\077\300\100\243\072\131\374\131\113\074\050
+\044\333\264\025\165\256\015\210\272\056\163\300\275\130\207\345
+\102\362\353\136\356\036\060\042\231\313\067\321\304\041\154\201
+\354\276\155\046\346\034\344\102\040\236\107\260\254\203\131\160
+\054\065\326\257\066\064\264\315\073\370\062\250\357\343\170\211
+\373\215\105\054\332\234\270\176\100\034\141\347\076\242\222\054
+\113\362\315\372\230\266\051\377\363\362\173\251\037\056\240\223
+\127\053\336\205\003\371\151\067\313\236\170\152\005\264\305\061
+\170\211\354\172\247\205\341\271\173\074\336\276\036\171\204\316
+\237\160\016\131\302\065\056\220\052\061\331\344\105\172\101\244
+\056\023\233\064\016\146\173\111\253\144\227\320\106\303\171\235
+\162\120\143\246\230\133\006\275\110\155\330\071\203\160\350\065
+\360\005\321\252\274\343\333\310\002\352\174\375\202\332\302\133
+\122\065\256\230\072\255\272\065\223\043\247\037\110\335\065\106
+\230\262\020\150\344\245\061\302\012\130\056\031\201\020\311\120
+\165\374\352\132\026\316\021\327\356\357\120\210\055\141\377\077
+\102\163\005\224\103\325\216\074\116\001\072\031\245\037\106\116
+\167\320\135\345\201\042\041\207\376\224\175\204\330\223\255\326
+\150\103\110\262\333\353\163\044\347\221\177\124\244\266\200\076
+\235\243\074\114\162\302\127\304\240\324\314\070\047\316\325\006
+\236\242\110\331\351\237\316\202\160\066\223\232\073\337\226\041
+\343\131\267\014\332\221\067\360\375\131\132\263\231\310\151\154
+\103\046\001\065\143\140\125\211\003\072\165\330\272\112\331\124
+\377\356\336\200\330\055\321\070\325\136\055\013\230\175\076\154
+\333\374\046\210\307
+END
+
+# Trust for Certificate "Izenpe.com"
+# Issuer: CN=Izenpe.com,O=IZENPE S.A.,C=ES
+# Serial Number:00:b0:b7:5a:16:48:5f:bf:e1:cb:f5:8b:d7:19:e6:7d
+# Subject: CN=Izenpe.com,O=IZENPE S.A.,C=ES
+# Not Valid Before: Thu Dec 13 13:08:28 2007
+# Not Valid After : Sun Dec 13 08:27:25 2037
+# Fingerprint (MD5): A6:B0:CD:85:80:DA:5C:50:34:A3:39:90:2F:55:67:73
+# Fingerprint (SHA1): 2F:78:3D:25:52:18:A7:4A:65:39:71:B5:2C:A2:9C:45:15:6F:E9:19
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Izenpe.com"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\057\170\075\045\122\030\247\112\145\071\161\265\054\242\234\105
+\025\157\351\031
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\246\260\315\205\200\332\134\120\064\243\071\220\057\125\147\163
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\070\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\024\060\022\006\003\125\004\012\014\013\111\132\105\116\120\105
+\040\123\056\101\056\061\023\060\021\006\003\125\004\003\014\012
+\111\172\145\156\160\145\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\000\260\267\132\026\110\137\277\341\313\365\213\327\031
+\346\175
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Chambers of Commerce Root - 2008"
+#
+# Issuer: CN=Chambers of Commerce Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Serial Number:00:a3:da:42:7e:a4:b1:ae:da
+# Subject: CN=Chambers of Commerce Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Not Valid Before: Fri Aug 01 12:29:50 2008
+# Not Valid After : Sat Jul 31 12:29:50 2038
+# Fingerprint (MD5): 5E:80:9E:84:5A:0E:65:0B:17:02:F3:55:18:2A:3E:D7
+# Fingerprint (SHA1): 78:6A:74:AC:76:AB:14:7F:9C:6A:30:50:BA:9E:A8:7E:FE:9A:CE:3C
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Chambers of Commerce Root - 2008"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\105\125
+\061\103\060\101\006\003\125\004\007\023\072\115\141\144\162\151
+\144\040\050\163\145\145\040\143\165\162\162\145\156\164\040\141
+\144\144\162\145\163\163\040\141\164\040\167\167\167\056\143\141
+\155\145\162\146\151\162\155\141\056\143\157\155\057\141\144\144
+\162\145\163\163\051\061\022\060\020\006\003\125\004\005\023\011
+\101\070\062\067\064\063\062\070\067\061\033\060\031\006\003\125
+\004\012\023\022\101\103\040\103\141\155\145\162\146\151\162\155
+\141\040\123\056\101\056\061\051\060\047\006\003\125\004\003\023
+\040\103\150\141\155\142\145\162\163\040\157\146\040\103\157\155
+\155\145\162\143\145\040\122\157\157\164\040\055\040\062\060\060
+\070
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\105\125
+\061\103\060\101\006\003\125\004\007\023\072\115\141\144\162\151
+\144\040\050\163\145\145\040\143\165\162\162\145\156\164\040\141
+\144\144\162\145\163\163\040\141\164\040\167\167\167\056\143\141
+\155\145\162\146\151\162\155\141\056\143\157\155\057\141\144\144
+\162\145\163\163\051\061\022\060\020\006\003\125\004\005\023\011
+\101\070\062\067\064\063\062\070\067\061\033\060\031\006\003\125
+\004\012\023\022\101\103\040\103\141\155\145\162\146\151\162\155
+\141\040\123\056\101\056\061\051\060\047\006\003\125\004\003\023
+\040\103\150\141\155\142\145\162\163\040\157\146\040\103\157\155
+\155\145\162\143\145\040\122\157\157\164\040\055\040\062\060\060
+\070
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\243\332\102\176\244\261\256\332
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\007\117\060\202\005\067\240\003\002\001\002\002\011\000
+\243\332\102\176\244\261\256\332\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\060\201\256\061\013\060\011\006\003
+\125\004\006\023\002\105\125\061\103\060\101\006\003\125\004\007
+\023\072\115\141\144\162\151\144\040\050\163\145\145\040\143\165
+\162\162\145\156\164\040\141\144\144\162\145\163\163\040\141\164
+\040\167\167\167\056\143\141\155\145\162\146\151\162\155\141\056
+\143\157\155\057\141\144\144\162\145\163\163\051\061\022\060\020
+\006\003\125\004\005\023\011\101\070\062\067\064\063\062\070\067
+\061\033\060\031\006\003\125\004\012\023\022\101\103\040\103\141
+\155\145\162\146\151\162\155\141\040\123\056\101\056\061\051\060
+\047\006\003\125\004\003\023\040\103\150\141\155\142\145\162\163
+\040\157\146\040\103\157\155\155\145\162\143\145\040\122\157\157
+\164\040\055\040\062\060\060\070\060\036\027\015\060\070\060\070
+\060\061\061\062\062\071\065\060\132\027\015\063\070\060\067\063
+\061\061\062\062\071\065\060\132\060\201\256\061\013\060\011\006
+\003\125\004\006\023\002\105\125\061\103\060\101\006\003\125\004
+\007\023\072\115\141\144\162\151\144\040\050\163\145\145\040\143
+\165\162\162\145\156\164\040\141\144\144\162\145\163\163\040\141
+\164\040\167\167\167\056\143\141\155\145\162\146\151\162\155\141
+\056\143\157\155\057\141\144\144\162\145\163\163\051\061\022\060
+\020\006\003\125\004\005\023\011\101\070\062\067\064\063\062\070
+\067\061\033\060\031\006\003\125\004\012\023\022\101\103\040\103
+\141\155\145\162\146\151\162\155\141\040\123\056\101\056\061\051
+\060\047\006\003\125\004\003\023\040\103\150\141\155\142\145\162
+\163\040\157\146\040\103\157\155\155\145\162\143\145\040\122\157
+\157\164\040\055\040\062\060\060\070\060\202\002\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002\017
+\000\060\202\002\012\002\202\002\001\000\257\000\313\160\067\053
+\200\132\112\072\154\170\224\175\243\177\032\037\366\065\325\275
+\333\313\015\104\162\076\046\262\220\122\272\143\073\050\130\157
+\245\263\155\224\246\363\335\144\014\125\366\366\347\362\042\042
+\200\136\341\142\306\266\051\341\201\154\362\277\345\175\062\152
+\124\240\062\031\131\376\037\213\327\075\140\206\205\044\157\343
+\021\263\167\076\040\226\065\041\153\263\010\331\160\056\144\367
+\204\222\123\326\016\260\220\212\212\343\207\215\006\323\275\220
+\016\342\231\241\033\206\016\332\232\012\273\013\141\120\006\122
+\361\236\177\166\354\313\017\320\036\015\317\231\060\075\034\304
+\105\020\130\254\326\323\350\327\345\352\305\001\007\167\326\121
+\346\003\177\212\110\245\115\150\165\271\351\274\236\116\031\161
+\365\062\113\234\155\140\031\013\373\314\235\165\334\277\046\315
+\217\223\170\071\171\163\136\045\016\312\134\353\167\022\007\313
+\144\101\107\162\223\253\120\303\353\011\166\144\064\322\071\267
+\166\021\011\015\166\105\304\251\256\075\152\257\265\175\145\057
+\224\130\020\354\134\174\257\176\342\266\030\331\320\233\116\132
+\111\337\251\146\013\314\074\306\170\174\247\234\035\343\316\216
+\123\276\005\336\140\017\153\345\032\333\077\343\341\041\311\051
+\301\361\353\007\234\122\033\001\104\121\074\173\045\327\304\345
+\122\124\135\045\007\312\026\040\270\255\344\101\356\172\010\376
+\231\157\203\246\221\002\260\154\066\125\152\347\175\365\226\346
+\312\201\326\227\361\224\203\351\355\260\261\153\022\151\036\254
+\373\135\251\305\230\351\264\133\130\172\276\075\242\104\072\143
+\131\324\013\045\336\033\117\275\345\001\236\315\322\051\325\237
+\027\031\012\157\277\014\220\323\011\137\331\343\212\065\314\171
+\132\115\031\067\222\267\304\301\255\257\364\171\044\232\262\001
+\013\261\257\134\226\363\200\062\373\134\075\230\361\240\077\112
+\336\276\257\224\056\331\125\232\027\156\140\235\143\154\270\143
+\311\256\201\134\030\065\340\220\273\276\074\117\067\042\271\176
+\353\317\236\167\041\246\075\070\201\373\110\332\061\075\053\343
+\211\365\320\265\275\176\340\120\304\022\211\263\043\232\020\061
+\205\333\256\157\357\070\063\030\166\021\002\003\001\000\001\243
+\202\001\154\060\202\001\150\060\022\006\003\125\035\023\001\001
+\377\004\010\060\006\001\001\377\002\001\014\060\035\006\003\125
+\035\016\004\026\004\024\371\044\254\017\262\265\370\171\300\372
+\140\210\033\304\331\115\002\236\027\031\060\201\343\006\003\125
+\035\043\004\201\333\060\201\330\200\024\371\044\254\017\262\265
+\370\171\300\372\140\210\033\304\331\115\002\236\027\031\241\201
+\264\244\201\261\060\201\256\061\013\060\011\006\003\125\004\006
+\023\002\105\125\061\103\060\101\006\003\125\004\007\023\072\115
+\141\144\162\151\144\040\050\163\145\145\040\143\165\162\162\145
+\156\164\040\141\144\144\162\145\163\163\040\141\164\040\167\167
+\167\056\143\141\155\145\162\146\151\162\155\141\056\143\157\155
+\057\141\144\144\162\145\163\163\051\061\022\060\020\006\003\125
+\004\005\023\011\101\070\062\067\064\063\062\070\067\061\033\060
+\031\006\003\125\004\012\023\022\101\103\040\103\141\155\145\162
+\146\151\162\155\141\040\123\056\101\056\061\051\060\047\006\003
+\125\004\003\023\040\103\150\141\155\142\145\162\163\040\157\146
+\040\103\157\155\155\145\162\143\145\040\122\157\157\164\040\055
+\040\062\060\060\070\202\011\000\243\332\102\176\244\261\256\332
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006
+\060\075\006\003\125\035\040\004\066\060\064\060\062\006\004\125
+\035\040\000\060\052\060\050\006\010\053\006\001\005\005\007\002
+\001\026\034\150\164\164\160\072\057\057\160\157\154\151\143\171
+\056\143\141\155\145\162\146\151\162\155\141\056\143\157\155\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\002\001\000\220\022\257\042\065\302\243\071\360\056\336\351\265
+\351\170\174\110\276\077\175\105\222\136\351\332\261\031\374\026
+\074\237\264\133\146\236\152\347\303\271\135\210\350\017\255\317
+\043\017\336\045\072\136\314\117\245\301\265\055\254\044\322\130
+\007\336\242\317\151\204\140\063\350\020\015\023\251\043\320\205
+\345\216\173\246\236\075\162\023\162\063\365\252\175\306\143\037
+\010\364\376\001\177\044\317\053\054\124\011\336\342\053\155\222
+\306\071\117\026\352\074\176\172\106\324\105\152\106\250\353\165
+\202\126\247\253\240\174\150\023\063\366\235\060\360\157\047\071
+\044\043\052\220\375\220\051\065\362\223\337\064\245\306\367\370
+\357\214\017\142\112\174\256\323\365\124\370\215\266\232\126\207
+\026\202\072\063\253\132\042\010\367\202\272\352\056\340\107\232
+\264\265\105\243\005\073\331\334\056\105\100\073\352\334\177\350
+\073\353\321\354\046\330\065\244\060\305\072\254\127\236\263\166
+\245\040\173\371\036\112\005\142\001\246\050\165\140\227\222\015
+\156\076\115\067\103\015\222\025\234\030\042\315\121\231\240\051
+\032\074\137\212\062\063\133\060\307\211\057\107\230\017\243\003
+\306\366\361\254\337\062\360\331\201\032\344\234\275\366\200\024
+\360\321\054\271\205\365\330\243\261\310\245\041\345\034\023\227
+\356\016\275\337\051\251\357\064\123\133\323\344\152\023\204\006
+\266\062\002\304\122\256\042\322\334\262\041\102\032\332\100\360
+\051\311\354\012\014\134\342\320\272\314\110\323\067\012\314\022
+\012\212\171\260\075\003\177\151\113\364\064\040\175\263\064\352
+\216\113\144\365\076\375\263\043\147\025\015\004\270\360\055\301
+\011\121\074\262\154\025\360\245\043\327\203\164\344\345\056\311
+\376\230\047\102\306\253\306\236\260\320\133\070\245\233\120\336
+\176\030\230\265\105\073\366\171\264\350\367\032\173\006\203\373
+\320\213\332\273\307\275\030\253\010\157\074\200\153\100\077\031
+\031\272\145\212\346\276\325\134\323\066\327\357\100\122\044\140
+\070\147\004\061\354\217\363\202\306\336\271\125\363\073\061\221
+\132\334\265\010\025\255\166\045\012\015\173\056\207\342\014\246
+\006\274\046\020\155\067\235\354\335\170\214\174\200\305\360\331
+\167\110\320
+END
+
+# Trust for Certificate "Chambers of Commerce Root - 2008"
+# Issuer: CN=Chambers of Commerce Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Serial Number:00:a3:da:42:7e:a4:b1:ae:da
+# Subject: CN=Chambers of Commerce Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Not Valid Before: Fri Aug 01 12:29:50 2008
+# Not Valid After : Sat Jul 31 12:29:50 2038
+# Fingerprint (MD5): 5E:80:9E:84:5A:0E:65:0B:17:02:F3:55:18:2A:3E:D7
+# Fingerprint (SHA1): 78:6A:74:AC:76:AB:14:7F:9C:6A:30:50:BA:9E:A8:7E:FE:9A:CE:3C
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Chambers of Commerce Root - 2008"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\170\152\164\254\166\253\024\177\234\152\060\120\272\236\250\176
+\376\232\316\074
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\136\200\236\204\132\016\145\013\027\002\363\125\030\052\076\327
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\256\061\013\060\011\006\003\125\004\006\023\002\105\125
+\061\103\060\101\006\003\125\004\007\023\072\115\141\144\162\151
+\144\040\050\163\145\145\040\143\165\162\162\145\156\164\040\141
+\144\144\162\145\163\163\040\141\164\040\167\167\167\056\143\141
+\155\145\162\146\151\162\155\141\056\143\157\155\057\141\144\144
+\162\145\163\163\051\061\022\060\020\006\003\125\004\005\023\011
+\101\070\062\067\064\063\062\070\067\061\033\060\031\006\003\125
+\004\012\023\022\101\103\040\103\141\155\145\162\146\151\162\155
+\141\040\123\056\101\056\061\051\060\047\006\003\125\004\003\023
+\040\103\150\141\155\142\145\162\163\040\157\146\040\103\157\155
+\155\145\162\143\145\040\122\157\157\164\040\055\040\062\060\060
+\070
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\243\332\102\176\244\261\256\332
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Global Chambersign Root - 2008"
+#
+# Issuer: CN=Global Chambersign Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Serial Number:00:c9:cd:d3:e9:d5:7d:23:ce
+# Subject: CN=Global Chambersign Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Not Valid Before: Fri Aug 01 12:31:40 2008
+# Not Valid After : Sat Jul 31 12:31:40 2038
+# Fingerprint (MD5): 9E:80:FF:78:01:0C:2E:C1:36:BD:FE:96:90:6E:08:F3
+# Fingerprint (SHA1): 4A:BD:EE:EC:95:0D:35:9C:89:AE:C7:52:A1:2C:5B:29:F6:D6:AA:0C
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Global Chambersign Root - 2008"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\254\061\013\060\011\006\003\125\004\006\023\002\105\125
+\061\103\060\101\006\003\125\004\007\023\072\115\141\144\162\151
+\144\040\050\163\145\145\040\143\165\162\162\145\156\164\040\141
+\144\144\162\145\163\163\040\141\164\040\167\167\167\056\143\141
+\155\145\162\146\151\162\155\141\056\143\157\155\057\141\144\144
+\162\145\163\163\051\061\022\060\020\006\003\125\004\005\023\011
+\101\070\062\067\064\063\062\070\067\061\033\060\031\006\003\125
+\004\012\023\022\101\103\040\103\141\155\145\162\146\151\162\155
+\141\040\123\056\101\056\061\047\060\045\006\003\125\004\003\023
+\036\107\154\157\142\141\154\040\103\150\141\155\142\145\162\163
+\151\147\156\040\122\157\157\164\040\055\040\062\060\060\070
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\254\061\013\060\011\006\003\125\004\006\023\002\105\125
+\061\103\060\101\006\003\125\004\007\023\072\115\141\144\162\151
+\144\040\050\163\145\145\040\143\165\162\162\145\156\164\040\141
+\144\144\162\145\163\163\040\141\164\040\167\167\167\056\143\141
+\155\145\162\146\151\162\155\141\056\143\157\155\057\141\144\144
+\162\145\163\163\051\061\022\060\020\006\003\125\004\005\023\011
+\101\070\062\067\064\063\062\070\067\061\033\060\031\006\003\125
+\004\012\023\022\101\103\040\103\141\155\145\162\146\151\162\155
+\141\040\123\056\101\056\061\047\060\045\006\003\125\004\003\023
+\036\107\154\157\142\141\154\040\103\150\141\155\142\145\162\163
+\151\147\156\040\122\157\157\164\040\055\040\062\060\060\070
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\311\315\323\351\325\175\043\316
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\007\111\060\202\005\061\240\003\002\001\002\002\011\000
+\311\315\323\351\325\175\043\316\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\060\201\254\061\013\060\011\006\003
+\125\004\006\023\002\105\125\061\103\060\101\006\003\125\004\007
+\023\072\115\141\144\162\151\144\040\050\163\145\145\040\143\165
+\162\162\145\156\164\040\141\144\144\162\145\163\163\040\141\164
+\040\167\167\167\056\143\141\155\145\162\146\151\162\155\141\056
+\143\157\155\057\141\144\144\162\145\163\163\051\061\022\060\020
+\006\003\125\004\005\023\011\101\070\062\067\064\063\062\070\067
+\061\033\060\031\006\003\125\004\012\023\022\101\103\040\103\141
+\155\145\162\146\151\162\155\141\040\123\056\101\056\061\047\060
+\045\006\003\125\004\003\023\036\107\154\157\142\141\154\040\103
+\150\141\155\142\145\162\163\151\147\156\040\122\157\157\164\040
+\055\040\062\060\060\070\060\036\027\015\060\070\060\070\060\061
+\061\062\063\061\064\060\132\027\015\063\070\060\067\063\061\061
+\062\063\061\064\060\132\060\201\254\061\013\060\011\006\003\125
+\004\006\023\002\105\125\061\103\060\101\006\003\125\004\007\023
+\072\115\141\144\162\151\144\040\050\163\145\145\040\143\165\162
+\162\145\156\164\040\141\144\144\162\145\163\163\040\141\164\040
+\167\167\167\056\143\141\155\145\162\146\151\162\155\141\056\143
+\157\155\057\141\144\144\162\145\163\163\051\061\022\060\020\006
+\003\125\004\005\023\011\101\070\062\067\064\063\062\070\067\061
+\033\060\031\006\003\125\004\012\023\022\101\103\040\103\141\155
+\145\162\146\151\162\155\141\040\123\056\101\056\061\047\060\045
+\006\003\125\004\003\023\036\107\154\157\142\141\154\040\103\150
+\141\155\142\145\162\163\151\147\156\040\122\157\157\164\040\055
+\040\062\060\060\070\060\202\002\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002
+\012\002\202\002\001\000\300\337\126\323\344\072\233\166\105\264
+\023\333\377\301\266\031\213\067\101\030\225\122\107\353\027\235
+\051\210\216\065\154\006\062\056\107\142\363\111\004\277\175\104
+\066\261\161\314\275\132\011\163\325\331\205\104\377\221\127\045
+\337\136\066\216\160\321\134\161\103\035\331\332\357\134\322\373
+\033\275\072\265\313\255\243\314\104\247\015\256\041\025\077\271
+\172\133\222\165\330\244\022\070\211\031\212\267\200\322\342\062
+\157\126\234\221\326\210\020\013\263\164\144\222\164\140\363\366
+\317\030\117\140\262\043\320\307\073\316\141\113\231\217\302\014
+\320\100\262\230\334\015\250\116\243\271\012\256\140\240\255\105
+\122\143\272\146\275\150\340\371\276\032\250\201\273\036\101\170
+\165\323\301\376\000\125\260\207\124\350\047\220\065\035\114\063
+\255\227\374\227\056\230\204\277\054\311\243\277\321\230\021\024
+\355\143\370\312\230\210\130\027\231\355\105\003\227\176\074\206
+\036\210\214\276\362\221\204\217\145\064\330\000\114\175\267\061
+\027\132\051\172\012\030\044\060\243\067\265\172\251\001\175\046
+\326\371\016\216\131\361\375\033\063\265\051\073\027\073\101\266
+\041\335\324\300\075\245\237\237\037\103\120\311\273\274\154\172
+\227\230\356\315\214\037\373\234\121\256\213\160\275\047\237\161
+\300\153\254\175\220\146\350\327\135\072\015\260\325\302\215\325
+\310\235\235\301\155\320\320\277\121\344\343\370\303\070\066\256
+\326\247\165\346\257\204\103\135\223\222\014\152\007\336\073\035
+\230\042\326\254\301\065\333\243\240\045\377\162\265\166\035\336
+\155\351\054\146\054\122\204\320\105\222\316\034\345\345\063\035
+\334\007\123\124\243\252\202\073\232\067\057\334\335\240\144\351
+\346\335\275\256\374\144\205\035\074\247\311\006\336\204\377\153
+\350\153\032\074\305\242\263\102\373\213\011\076\137\010\122\307
+\142\304\324\005\161\277\304\144\344\370\241\203\350\076\022\233
+\250\036\324\066\115\057\161\366\215\050\366\203\251\023\322\141
+\301\221\273\110\300\064\217\101\214\113\114\333\151\022\377\120
+\224\234\040\203\131\163\355\174\241\362\361\375\335\367\111\323
+\103\130\240\126\143\312\075\075\345\065\126\131\351\016\312\040
+\314\053\113\223\051\017\002\003\001\000\001\243\202\001\152\060
+\202\001\146\060\022\006\003\125\035\023\001\001\377\004\010\060
+\006\001\001\377\002\001\014\060\035\006\003\125\035\016\004\026
+\004\024\271\011\312\234\036\333\323\154\072\153\256\355\124\361
+\133\223\006\065\056\136\060\201\341\006\003\125\035\043\004\201
+\331\060\201\326\200\024\271\011\312\234\036\333\323\154\072\153
+\256\355\124\361\133\223\006\065\056\136\241\201\262\244\201\257
+\060\201\254\061\013\060\011\006\003\125\004\006\023\002\105\125
+\061\103\060\101\006\003\125\004\007\023\072\115\141\144\162\151
+\144\040\050\163\145\145\040\143\165\162\162\145\156\164\040\141
+\144\144\162\145\163\163\040\141\164\040\167\167\167\056\143\141
+\155\145\162\146\151\162\155\141\056\143\157\155\057\141\144\144
+\162\145\163\163\051\061\022\060\020\006\003\125\004\005\023\011
+\101\070\062\067\064\063\062\070\067\061\033\060\031\006\003\125
+\004\012\023\022\101\103\040\103\141\155\145\162\146\151\162\155
+\141\040\123\056\101\056\061\047\060\045\006\003\125\004\003\023
+\036\107\154\157\142\141\154\040\103\150\141\155\142\145\162\163
+\151\147\156\040\122\157\157\164\040\055\040\062\060\060\070\202
+\011\000\311\315\323\351\325\175\043\316\060\016\006\003\125\035
+\017\001\001\377\004\004\003\002\001\006\060\075\006\003\125\035
+\040\004\066\060\064\060\062\006\004\125\035\040\000\060\052\060
+\050\006\010\053\006\001\005\005\007\002\001\026\034\150\164\164
+\160\072\057\057\160\157\154\151\143\171\056\143\141\155\145\162
+\146\151\162\155\141\056\143\157\155\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\002\001\000\200\210\177
+\160\336\222\050\331\005\224\106\377\220\127\251\361\057\337\032
+\015\153\372\174\016\034\111\044\171\047\330\106\252\157\051\131
+\122\210\160\022\352\335\075\365\233\123\124\157\341\140\242\250
+\011\271\354\353\131\174\306\065\361\334\030\351\361\147\345\257
+\272\105\340\011\336\312\104\017\302\027\016\167\221\105\172\063
+\137\137\226\054\150\213\301\107\217\230\233\075\300\354\313\365
+\325\202\222\204\065\321\276\066\070\126\162\061\133\107\055\252
+\027\244\143\121\353\012\001\255\177\354\165\236\313\241\037\361
+\177\022\261\271\344\144\177\147\326\043\052\364\270\071\135\230
+\350\041\247\341\275\075\102\032\164\232\160\257\150\154\120\135
+\111\317\377\373\016\135\346\054\107\327\201\072\131\000\265\163
+\153\143\040\366\061\105\010\071\016\364\160\176\100\160\132\077
+\320\153\102\251\164\075\050\057\002\155\165\162\225\011\215\110
+\143\306\306\043\127\222\223\136\065\301\215\371\012\367\054\235
+\142\034\366\255\174\335\246\061\036\266\261\307\176\205\046\372
+\244\152\265\332\143\060\321\357\223\067\262\146\057\175\005\367
+\347\267\113\230\224\065\300\331\072\051\301\235\262\120\063\035
+\112\251\132\246\311\003\357\355\364\347\250\156\212\264\127\204
+\353\244\077\320\356\252\252\207\133\143\350\223\342\153\250\324
+\270\162\170\153\033\355\071\344\135\313\233\252\207\325\117\116
+\000\376\331\152\237\074\061\017\050\002\001\175\230\350\247\260
+\242\144\236\171\370\110\362\025\251\314\346\310\104\353\077\170
+\231\362\173\161\076\074\361\230\247\305\030\022\077\346\273\050
+\063\102\351\105\012\174\155\362\206\171\057\305\202\031\175\011
+\211\174\262\124\166\210\256\336\301\363\314\341\156\333\061\326
+\223\256\231\240\357\045\152\163\230\211\133\072\056\023\210\036
+\277\300\222\224\064\033\343\047\267\213\036\157\102\377\347\351
+\067\233\120\035\055\242\371\002\356\313\130\130\072\161\274\150
+\343\252\301\257\034\050\037\242\334\043\145\077\201\352\256\231
+\323\330\060\317\023\015\117\025\311\204\274\247\110\055\370\060
+\043\167\330\106\113\171\155\366\214\355\072\177\140\021\170\364
+\351\233\256\325\124\300\164\200\321\013\102\237\301
+END
+
+# Trust for Certificate "Global Chambersign Root - 2008"
+# Issuer: CN=Global Chambersign Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Serial Number:00:c9:cd:d3:e9:d5:7d:23:ce
+# Subject: CN=Global Chambersign Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
+# Not Valid Before: Fri Aug 01 12:31:40 2008
+# Not Valid After : Sat Jul 31 12:31:40 2038
+# Fingerprint (MD5): 9E:80:FF:78:01:0C:2E:C1:36:BD:FE:96:90:6E:08:F3
+# Fingerprint (SHA1): 4A:BD:EE:EC:95:0D:35:9C:89:AE:C7:52:A1:2C:5B:29:F6:D6:AA:0C
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Global Chambersign Root - 2008"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\112\275\356\354\225\015\065\234\211\256\307\122\241\054\133\051
+\366\326\252\014
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\236\200\377\170\001\014\056\301\066\275\376\226\220\156\010\363
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\254\061\013\060\011\006\003\125\004\006\023\002\105\125
+\061\103\060\101\006\003\125\004\007\023\072\115\141\144\162\151
+\144\040\050\163\145\145\040\143\165\162\162\145\156\164\040\141
+\144\144\162\145\163\163\040\141\164\040\167\167\167\056\143\141
+\155\145\162\146\151\162\155\141\056\143\157\155\057\141\144\144
+\162\145\163\163\051\061\022\060\020\006\003\125\004\005\023\011
+\101\070\062\067\064\063\062\070\067\061\033\060\031\006\003\125
+\004\012\023\022\101\103\040\103\141\155\145\162\146\151\162\155
+\141\040\123\056\101\056\061\047\060\045\006\003\125\004\003\023
+\036\107\154\157\142\141\154\040\103\150\141\155\142\145\162\163
+\151\147\156\040\122\157\157\164\040\055\040\062\060\060\070
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\311\315\323\351\325\175\043\316
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus Mozilla Addons"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:92:39:d5:34:8f:40:d1:69:5a:74:54:70:e1:f2:3f:43
+# Subject: CN=addons.mozilla.org,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 84:C5:18:67:1F:2A:1A:90:BE:E2:B1:18:4F:03:00:32
+# Fingerprint (SHA1): 30:5F:8B:D1:7A:A2:CB:C4:83:A4:C4:1B:19:A3:9A:0C:75:DA:39:D6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Mozilla Addons"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\342\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\033\060\031\006\003\125\004
+\003\023\022\141\144\144\157\156\163\056\155\157\172\151\154\154
+\141\056\157\162\147
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\222\071\325\064\217\100\321\151\132\164\124\160\341
+\362\077\103
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\370\060\202\004\340\240\003\002\001\002\002\021\000
+\222\071\325\064\217\100\321\151\132\164\124\160\341\362\077\103
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
+\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
+\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004
+\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060
+\063\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063
+\061\064\062\063\065\071\065\071\132\060\201\342\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125
+\004\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125
+\004\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006
+\003\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060
+\025\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154
+\141\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023
+\013\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021
+\006\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164
+\056\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164
+\145\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040
+\103\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006
+\003\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123
+\114\061\033\060\031\006\003\125\004\003\023\022\141\144\144\157
+\156\163\056\155\157\172\151\154\154\141\056\157\162\147\060\202
+\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000\253
+\306\155\066\363\025\163\170\203\163\316\164\205\325\256\354\262
+\360\340\044\037\023\203\270\040\254\273\232\376\210\273\253\241
+\035\013\037\105\000\252\111\267\065\067\014\152\357\107\114\271
+\321\276\343\127\022\004\215\222\307\266\354\001\274\266\332\307
+\201\070\040\255\162\205\346\016\374\201\154\007\255\150\166\070
+\305\104\327\314\306\112\305\227\076\144\364\121\346\360\176\262
+\354\126\367\045\202\115\111\230\313\026\230\335\043\361\211\221
+\321\027\227\100\231\046\326\342\242\053\136\337\275\211\362\033
+\032\123\055\314\120\101\172\320\075\052\014\125\160\024\001\351
+\130\111\020\172\013\223\202\213\341\036\355\072\200\020\202\316
+\226\212\064\360\314\327\323\271\264\120\207\125\124\011\270\235
+\102\050\125\000\345\214\065\124\277\335\045\221\106\267\015\345
+\135\203\250\345\213\373\204\344\074\256\166\332\304\103\053\133
+\164\013\370\276\135\150\361\170\133\265\316\175\361\135\231\100
+\332\312\356\070\201\120\276\230\241\154\270\044\255\363\257\214
+\017\327\021\050\054\204\030\114\175\265\331\217\060\265\033\002
+\003\001\000\001\243\202\001\360\060\202\001\354\060\037\006\003
+\125\035\043\004\030\060\026\200\024\241\162\137\046\033\050\230
+\103\225\135\007\067\325\205\226\235\113\322\303\105\060\035\006
+\003\125\035\016\004\026\004\024\335\200\322\124\075\367\114\160
+\312\243\260\335\064\172\062\344\350\073\132\073\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\005\240\060\014\006\003
+\125\035\023\001\001\377\004\002\060\000\060\035\006\003\125\035
+\045\004\026\060\024\006\010\053\006\001\005\005\007\003\001\006
+\010\053\006\001\005\005\007\003\002\060\106\006\003\125\035\040
+\004\077\060\075\060\073\006\014\053\006\001\004\001\262\061\001
+\002\001\003\004\060\053\060\051\006\010\053\006\001\005\005\007
+\002\001\026\035\150\164\164\160\163\072\057\057\163\145\143\165
+\162\145\056\143\157\155\157\144\157\056\143\157\155\057\103\120
+\123\060\173\006\003\125\035\037\004\164\060\162\060\070\240\066
+\240\064\206\062\150\164\164\160\072\057\057\143\162\154\056\143
+\157\155\157\144\157\143\141\056\143\157\155\057\125\124\116\055
+\125\123\105\122\106\151\162\163\164\055\110\141\162\144\167\141
+\162\145\056\143\162\154\060\066\240\064\240\062\206\060\150\164
+\164\160\072\057\057\143\162\154\056\143\157\155\157\144\157\056
+\156\145\164\057\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145\056\143\162\154\060\161
+\006\010\053\006\001\005\005\007\001\001\004\145\060\143\060\073
+\006\010\053\006\001\005\005\007\060\002\206\057\150\164\164\160
+\072\057\057\143\162\164\056\143\157\155\157\144\157\143\141\056
+\143\157\155\057\125\124\116\101\144\144\124\162\165\163\164\123
+\145\162\166\145\162\103\101\056\143\162\164\060\044\006\010\053
+\006\001\005\005\007\060\001\206\030\150\164\164\160\072\057\057
+\157\143\163\160\056\143\157\155\157\144\157\143\141\056\143\157
+\155\060\065\006\003\125\035\021\004\056\060\054\202\022\141\144
+\144\157\156\163\056\155\157\172\151\154\154\141\056\157\162\147
+\202\026\167\167\167\056\141\144\144\157\156\163\056\155\157\172
+\151\154\154\141\056\157\162\147\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\001\001\000\063\073\143\025
+\374\261\354\024\054\223\335\165\224\336\201\132\331\116\231\276
+\373\112\244\071\125\115\241\100\172\336\023\052\207\251\067\317
+\350\325\373\255\321\173\155\157\214\040\207\202\124\346\127\111
+\274\040\050\204\315\326\001\331\223\213\027\156\043\146\345\204
+\310\200\077\306\241\160\200\344\354\115\035\371\374\221\132\163
+\142\051\232\367\040\034\141\340\213\071\237\312\274\176\215\335
+\274\331\261\343\237\236\337\025\123\221\041\122\013\331\032\043
+\017\146\066\333\254\223\226\112\243\245\042\317\051\367\242\231
+\250\366\266\331\100\256\331\176\266\366\130\056\233\254\066\312
+\144\217\145\122\334\206\234\202\253\156\120\113\332\137\372\005
+\000\210\060\016\336\215\126\277\201\107\215\075\006\342\262\142
+\222\147\217\236\310\232\262\345\006\270\160\044\270\167\174\043
+\012\070\303\171\010\330\261\121\235\254\225\021\307\100\027\236
+\243\034\217\362\021\247\150\047\332\111\005\204\030\174\130\055
+\001\147\134\345\237\241\051\273\112\071\105\057\277\021\252\171
+\242\355\264\324\265\145\103\267\223\106\212\323
+END
+
+# Trust for Certificate "Bogus Mozilla Addons"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:92:39:d5:34:8f:40:d1:69:5a:74:54:70:e1:f2:3f:43
+# Subject: CN=addons.mozilla.org,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 84:C5:18:67:1F:2A:1A:90:BE:E2:B1:18:4F:03:00:32
+# Fingerprint (SHA1): 30:5F:8B:D1:7A:A2:CB:C4:83:A4:C4:1B:19:A3:9A:0C:75:DA:39:D6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Mozilla Addons"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\060\137\213\321\172\242\313\304\203\244\304\033\031\243\232\014
+\165\332\071\326
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\204\305\030\147\037\052\032\220\276\342\261\030\117\003\000\062
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\222\071\325\064\217\100\321\151\132\164\124\160\341
+\362\077\103
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus Global Trustee"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:d8:f3:5f:4e:b7:87:2b:2d:ab:06:92:e3:15:38:2f:b0
+# Subject: CN=global trustee,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Global Trustee,O=Global Trustee,STREET=Sea Village 10,L=Tampa,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): FE:0D:01:6E:71:CB:8C:D8:3F:0E:0C:CD:49:35:B8:57
+# Fingerprint (SHA1): 61:79:3F:CB:FA:4F:90:08:30:9B:BA:5F:F1:2D:2C:B2:9C:D4:15:1A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Global Trustee"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\343\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\016\060\014\006\003\125\004\007\023\005\124\141\155
+\160\141\061\027\060\025\006\003\125\004\011\023\016\123\145\141
+\040\126\151\154\154\141\147\145\040\061\060\061\027\060\025\006
+\003\125\004\012\023\016\107\154\157\142\141\154\040\124\162\165
+\163\164\145\145\061\027\060\025\006\003\125\004\013\023\016\107
+\154\157\142\141\154\040\124\162\165\163\164\145\145\061\050\060
+\046\006\003\125\004\013\023\037\110\157\163\164\145\144\040\142
+\171\040\107\124\111\040\107\162\157\165\160\040\103\157\162\160
+\157\162\141\164\151\157\156\061\024\060\022\006\003\125\004\013
+\023\013\120\154\141\164\151\156\165\155\123\123\114\061\027\060
+\025\006\003\125\004\003\023\016\147\154\157\142\141\154\040\164
+\162\165\163\164\145\145
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\330\363\137\116\267\207\053\055\253\006\222\343\025
+\070\057\260
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\335\060\202\005\305\240\003\002\001\002\002\021\000
+\330\363\137\116\267\207\053\055\253\006\222\343\025\070\057\260
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
+\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
+\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004
+\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060
+\063\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063
+\061\064\062\063\065\071\065\071\132\060\201\343\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125
+\004\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125
+\004\010\023\007\106\154\157\162\151\144\141\061\016\060\014\006
+\003\125\004\007\023\005\124\141\155\160\141\061\027\060\025\006
+\003\125\004\011\023\016\123\145\141\040\126\151\154\154\141\147
+\145\040\061\060\061\027\060\025\006\003\125\004\012\023\016\107
+\154\157\142\141\154\040\124\162\165\163\164\145\145\061\027\060
+\025\006\003\125\004\013\023\016\107\154\157\142\141\154\040\124
+\162\165\163\164\145\145\061\050\060\046\006\003\125\004\013\023
+\037\110\157\163\164\145\144\040\142\171\040\107\124\111\040\107
+\162\157\165\160\040\103\157\162\160\157\162\141\164\151\157\156
+\061\024\060\022\006\003\125\004\013\023\013\120\154\141\164\151
+\156\165\155\123\123\114\061\027\060\025\006\003\125\004\003\023
+\016\147\154\157\142\141\154\040\164\162\165\163\164\145\145\060
+\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000
+\331\164\362\252\101\035\337\365\302\026\103\111\134\051\277\266
+\211\164\051\274\234\215\014\106\117\131\176\262\101\027\146\064
+\014\145\211\341\154\045\343\206\012\236\042\105\042\214\335\235
+\346\243\225\336\334\210\002\125\134\343\133\221\165\353\046\151
+\143\271\056\306\312\056\047\337\210\272\002\040\156\376\271\013
+\051\327\247\326\327\110\032\034\316\335\037\251\047\016\142\117
+\241\226\036\335\124\072\064\143\112\166\365\167\175\131\147\330
+\020\324\265\017\072\103\042\230\333\364\011\304\012\160\316\335
+\220\324\057\357\164\023\303\315\302\211\071\142\025\235\346\164
+\250\350\233\360\143\156\234\211\266\016\255\233\367\314\202\350
+\350\055\270\013\332\042\354\111\205\007\210\231\230\077\364\164
+\251\011\367\201\174\227\013\131\231\030\162\213\333\224\202\053
+\247\350\252\153\227\277\210\176\165\260\213\105\105\014\307\250
+\011\352\033\101\130\060\073\137\170\145\025\064\322\344\074\064
+\015\035\330\144\074\212\245\126\111\231\050\055\113\362\317\315
+\331\156\111\144\233\251\171\220\167\125\251\010\033\255\032\164
+\236\340\003\223\012\011\267\255\247\264\134\357\203\154\267\232
+\264\306\150\100\200\035\102\321\156\171\233\251\031\041\232\234
+\371\206\055\000\321\064\376\340\266\371\125\266\365\046\305\225
+\026\245\174\163\237\012\051\211\254\072\230\367\233\164\147\267
+\220\267\135\011\043\152\152\355\054\020\356\123\012\020\360\026
+\037\127\263\261\015\171\221\031\260\353\315\060\077\240\024\137
+\263\306\375\134\063\247\260\377\230\260\125\214\271\245\362\157
+\107\044\111\041\151\314\102\242\121\000\100\205\214\202\202\253
+\062\245\313\232\334\320\331\030\015\337\031\364\257\203\015\301
+\076\061\333\044\110\266\165\200\241\341\311\167\144\036\247\345
+\213\177\025\115\113\247\302\320\355\171\225\136\221\061\354\030
+\377\116\237\110\024\352\165\272\041\316\051\166\351\037\116\121
+\207\056\263\314\004\140\272\043\037\037\145\262\012\270\325\156
+\217\113\102\211\107\251\201\220\133\053\262\266\256\346\240\160
+\173\170\220\012\172\305\345\347\305\373\012\366\057\151\214\214
+\037\127\340\006\231\377\021\325\122\062\040\227\047\230\356\145
+\002\003\001\000\001\243\202\001\324\060\202\001\320\060\037\006
+\003\125\035\043\004\030\060\026\200\024\241\162\137\046\033\050
+\230\103\225\135\007\067\325\205\226\235\113\322\303\105\060\035
+\006\003\125\035\016\004\026\004\024\267\303\336\032\103\355\101
+\227\251\217\051\170\234\003\271\254\100\102\000\254\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\005\240\060\014\006
+\003\125\035\023\001\001\377\004\002\060\000\060\035\006\003\125
+\035\045\004\026\060\024\006\010\053\006\001\005\005\007\003\001
+\006\010\053\006\001\005\005\007\003\002\060\106\006\003\125\035
+\040\004\077\060\075\060\073\006\014\053\006\001\004\001\262\061
+\001\002\001\003\004\060\053\060\051\006\010\053\006\001\005\005
+\007\002\001\026\035\150\164\164\160\163\072\057\057\163\145\143
+\165\162\145\056\143\157\155\157\144\157\056\143\157\155\057\103
+\120\123\060\173\006\003\125\035\037\004\164\060\162\060\070\240
+\066\240\064\206\062\150\164\164\160\072\057\057\143\162\154\056
+\143\157\155\157\144\157\143\141\056\143\157\155\057\125\124\116
+\055\125\123\105\122\106\151\162\163\164\055\110\141\162\144\167
+\141\162\145\056\143\162\154\060\066\240\064\240\062\206\060\150
+\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144\157
+\056\156\145\164\057\125\124\116\055\125\123\105\122\106\151\162
+\163\164\055\110\141\162\144\167\141\162\145\056\143\162\154\060
+\161\006\010\053\006\001\005\005\007\001\001\004\145\060\143\060
+\073\006\010\053\006\001\005\005\007\060\002\206\057\150\164\164
+\160\072\057\057\143\162\164\056\143\157\155\157\144\157\143\141
+\056\143\157\155\057\125\124\116\101\144\144\124\162\165\163\164
+\123\145\162\166\145\162\103\101\056\143\162\164\060\044\006\010
+\053\006\001\005\005\007\060\001\206\030\150\164\164\160\072\057
+\057\157\143\163\160\056\143\157\155\157\144\157\143\141\056\143
+\157\155\060\031\006\003\125\035\021\004\022\060\020\202\016\147
+\154\157\142\141\154\040\164\162\165\163\164\145\145\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\217\272\165\272\071\324\046\323\160\017\304\263\002\247\305
+\022\043\161\311\376\143\351\243\142\170\044\104\117\324\271\021
+\076\037\307\050\347\125\153\356\364\341\000\221\206\212\311\011
+\153\237\056\244\105\071\321\141\142\136\223\245\005\105\170\237
+\140\022\054\364\154\145\145\015\314\106\064\213\050\272\240\306
+\364\231\161\144\363\042\166\254\117\363\142\311\247\063\132\007
+\037\075\311\206\200\334\333\004\057\207\047\350\277\110\104\201
+\300\360\111\043\156\037\345\344\003\206\044\023\242\205\142\174
+\130\004\312\346\215\023\162\012\272\126\104\242\017\274\373\240
+\075\015\052\177\373\236\251\011\075\267\132\324\212\215\341\045
+\350\244\011\204\160\255\022\104\271\317\271\063\172\272\134\346
+\113\246\273\005\006\230\377\362\230\122\173\167\200\047\112\331
+\342\372\271\122\324\373\373\346\326\055\236\217\301\025\104\215
+\233\164\057\356\224\132\116\323\304\213\212\254\103\235\163\366
+\256\014\207\211\255\207\311\311\307\335\272\024\140\172\370\265
+\065\235\302\215\306\226\201\015\251\122\212\051\100\004\351\031
+\264
+END
+
+# Trust for Certificate "Bogus Global Trustee"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:d8:f3:5f:4e:b7:87:2b:2d:ab:06:92:e3:15:38:2f:b0
+# Subject: CN=global trustee,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Global Trustee,O=Global Trustee,STREET=Sea Village 10,L=Tampa,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): FE:0D:01:6E:71:CB:8C:D8:3F:0E:0C:CD:49:35:B8:57
+# Fingerprint (SHA1): 61:79:3F:CB:FA:4F:90:08:30:9B:BA:5F:F1:2D:2C:B2:9C:D4:15:1A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Global Trustee"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\141\171\077\313\372\117\220\010\060\233\272\137\361\055\054\262
+\234\324\025\032
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\376\015\001\156\161\313\214\330\077\016\014\315\111\065\270\127
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\330\363\137\116\267\207\053\055\253\006\222\343\025
+\070\057\260
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus GMail"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:04:7e:cb:e9:fc:a5:5f:7b:d0:9e:ae:36:e1:0c:ae:1e
+# Subject: CN=mail.google.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 4C:77:1F:EB:CA:31:C1:29:98:E9:2C:10:B3:AF:49:1C
+# Fingerprint (SHA1): 64:31:72:30:36:FD:26:DE:A5:02:79:2F:A5:95:92:24:93:03:0F:97
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus GMail"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\337\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\030\060\026\006\003\125\004
+\003\023\017\155\141\151\154\056\147\157\157\147\154\145\056\143
+\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\004\176\313\351\374\245\137\173\320\236\256\066\341\014
+\256\036
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\356\060\202\004\326\240\003\002\001\002\002\020\004
+\176\313\351\374\245\137\173\320\236\256\066\341\014\256\036\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004\003
+\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164\055
+\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060\063
+\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063\061
+\064\062\063\065\071\065\071\132\060\201\337\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125\004
+\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125\004
+\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006\003
+\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060\025
+\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154\141
+\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023\013
+\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021\006
+\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164\056
+\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164\145
+\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040\103
+\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006\003
+\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123\114
+\061\030\060\026\006\003\125\004\003\023\017\155\141\151\154\056
+\147\157\157\147\154\145\056\143\157\155\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\260\163\360\362\004
+\356\302\242\106\312\064\052\252\273\140\043\321\021\166\037\037
+\072\320\145\203\116\232\105\250\103\160\205\166\360\037\207\000
+\002\037\156\073\027\027\304\265\351\031\106\242\222\045\215\142
+\052\264\143\060\037\271\205\370\065\341\026\132\166\111\314\120
+\110\123\071\131\211\326\204\002\373\232\354\033\307\121\325\166
+\225\220\324\072\052\270\246\336\002\115\006\373\315\355\245\106
+\101\137\125\164\345\354\176\100\334\120\234\265\344\065\135\036
+\150\040\370\351\336\243\152\050\277\101\322\241\263\342\045\215
+\014\033\312\075\223\014\030\256\337\305\274\375\274\202\272\150
+\000\327\026\062\161\237\145\265\021\332\150\131\320\246\127\144
+\033\311\376\230\345\365\245\145\352\341\333\356\364\263\235\263
+\216\352\207\256\026\322\036\240\174\174\151\077\051\026\205\001
+\123\247\154\361\140\253\335\242\374\045\107\324\062\321\022\335
+\367\110\022\340\374\234\242\167\230\351\211\231\270\370\070\361
+\214\006\302\172\043\066\155\233\235\315\060\310\307\064\027\036
+\273\175\102\310\253\347\025\026\366\163\265\002\003\001\000\001
+\243\202\001\352\060\202\001\346\060\037\006\003\125\035\043\004
+\030\060\026\200\024\241\162\137\046\033\050\230\103\225\135\007
+\067\325\205\226\235\113\322\303\105\060\035\006\003\125\035\016
+\004\026\004\024\030\052\242\310\324\172\077\173\255\004\213\275
+\157\236\020\106\023\170\161\235\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\005\240\060\014\006\003\125\035\023\001
+\001\377\004\002\060\000\060\035\006\003\125\035\045\004\026\060
+\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006\001
+\005\005\007\003\002\060\106\006\003\125\035\040\004\077\060\075
+\060\073\006\014\053\006\001\004\001\262\061\001\002\001\003\004
+\060\053\060\051\006\010\053\006\001\005\005\007\002\001\026\035
+\150\164\164\160\163\072\057\057\163\145\143\165\162\145\056\143
+\157\155\157\144\157\056\143\157\155\057\103\120\123\060\173\006
+\003\125\035\037\004\164\060\162\060\070\240\066\240\064\206\062
+\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144
+\157\143\141\056\143\157\155\057\125\124\116\055\125\123\105\122
+\106\151\162\163\164\055\110\141\162\144\167\141\162\145\056\143
+\162\154\060\066\240\064\240\062\206\060\150\164\164\160\072\057
+\057\143\162\154\056\143\157\155\157\144\157\056\156\145\164\057
+\125\124\116\055\125\123\105\122\106\151\162\163\164\055\110\141
+\162\144\167\141\162\145\056\143\162\154\060\161\006\010\053\006
+\001\005\005\007\001\001\004\145\060\143\060\073\006\010\053\006
+\001\005\005\007\060\002\206\057\150\164\164\160\072\057\057\143
+\162\164\056\143\157\155\157\144\157\143\141\056\143\157\155\057
+\125\124\116\101\144\144\124\162\165\163\164\123\145\162\166\145
+\162\103\101\056\143\162\164\060\044\006\010\053\006\001\005\005
+\007\060\001\206\030\150\164\164\160\072\057\057\157\143\163\160
+\056\143\157\155\157\144\157\143\141\056\143\157\155\060\057\006
+\003\125\035\021\004\050\060\046\202\017\155\141\151\154\056\147
+\157\157\147\154\145\056\143\157\155\202\023\167\167\167\056\155
+\141\151\154\056\147\157\157\147\154\145\056\143\157\155\060\015
+\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001
+\001\000\147\006\010\012\047\305\223\156\002\362\336\027\077\320
+\323\033\174\377\265\315\172\307\167\307\276\337\022\312\031\336
+\260\023\127\014\003\221\304\171\122\317\177\267\136\125\040\204
+\111\335\365\320\051\057\016\004\332\131\236\016\023\237\364\300
+\062\233\377\241\021\044\052\227\243\362\077\075\052\153\250\255
+\214\031\165\225\016\035\045\375\117\304\172\025\303\035\307\023
+\100\310\015\276\227\140\162\246\376\045\276\217\354\325\246\206
+\303\041\134\131\122\331\152\013\134\237\113\336\265\371\354\342
+\364\305\314\142\123\166\211\145\344\051\332\267\277\226\340\140
+\215\015\267\011\125\326\100\125\035\301\362\226\041\165\257\211
+\206\037\135\201\227\051\050\036\051\327\226\301\040\003\062\173
+\000\073\152\067\027\132\243\263\032\157\062\073\156\361\243\135
+\253\253\314\052\313\060\014\037\065\043\213\151\104\134\352\254
+\050\140\355\253\153\143\236\366\222\274\275\232\132\046\114\305
+\230\270\016\031\076\374\005\061\343\026\331\375\220\005\003\206
+\306\127\001\037\177\170\240\317\063\152\252\146\153\042\320\247
+\111\043
+END
+
+# Trust for Certificate "Bogus GMail"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:04:7e:cb:e9:fc:a5:5f:7b:d0:9e:ae:36:e1:0c:ae:1e
+# Subject: CN=mail.google.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 4C:77:1F:EB:CA:31:C1:29:98:E9:2C:10:B3:AF:49:1C
+# Fingerprint (SHA1): 64:31:72:30:36:FD:26:DE:A5:02:79:2F:A5:95:92:24:93:03:0F:97
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus GMail"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\144\061\162\060\066\375\046\336\245\002\171\057\245\225\222\044
+\223\003\017\227
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\114\167\037\353\312\061\301\051\230\351\054\020\263\257\111\034
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\004\176\313\351\374\245\137\173\320\236\256\066\341\014
+\256\036
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus Google"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:f5:c8:6a:f3:61:62:f1:3a:64:f5:4f:6d:c9:58:7c:06
+# Subject: CN=www.google.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 01:73:A9:58:F0:BC:C9:BE:94:2B:1A:4C:98:24:E3:B8
+# Fingerprint (SHA1): 19:16:A2:AF:34:6D:39:9F:50:31:3C:39:32:00:F1:41:40:45:66:16
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Google"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\336\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\027\060\025\006\003\125\004
+\003\023\016\167\167\167\056\147\157\157\147\154\145\056\143\157
+\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\365\310\152\363\141\142\361\072\144\365\117\155\311
+\130\174\006
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\344\060\202\004\314\240\003\002\001\002\002\021\000
+\365\310\152\363\141\142\361\072\144\365\117\155\311\130\174\006
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
+\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
+\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004
+\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060
+\063\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063
+\061\064\062\063\065\071\065\071\132\060\201\336\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125
+\004\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125
+\004\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006
+\003\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060
+\025\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154
+\141\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023
+\013\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021
+\006\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164
+\056\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164
+\145\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040
+\103\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006
+\003\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123
+\114\061\027\060\025\006\003\125\004\003\023\016\167\167\167\056
+\147\157\157\147\154\145\056\143\157\155\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\260\163\360\362\004
+\356\302\242\106\312\064\052\252\273\140\043\321\021\166\037\037
+\072\320\145\203\116\232\105\250\103\160\205\166\360\037\207\000
+\002\037\156\073\027\027\304\265\351\031\106\242\222\045\215\142
+\052\264\143\060\037\271\205\370\065\341\026\132\166\111\314\120
+\110\123\071\131\211\326\204\002\373\232\354\033\307\121\325\166
+\225\220\324\072\052\270\246\336\002\115\006\373\315\355\245\106
+\101\137\125\164\345\354\176\100\334\120\234\265\344\065\135\036
+\150\040\370\351\336\243\152\050\277\101\322\241\263\342\045\215
+\014\033\312\075\223\014\030\256\337\305\274\375\274\202\272\150
+\000\327\026\062\161\237\145\265\021\332\150\131\320\246\127\144
+\033\311\376\230\345\365\245\145\352\341\333\356\364\263\235\263
+\216\352\207\256\026\322\036\240\174\174\151\077\051\026\205\001
+\123\247\154\361\140\253\335\242\374\045\107\324\062\321\022\335
+\367\110\022\340\374\234\242\167\230\351\211\231\270\370\070\361
+\214\006\302\172\043\066\155\233\235\315\060\310\307\064\027\036
+\273\175\102\310\253\347\025\026\366\163\265\002\003\001\000\001
+\243\202\001\340\060\202\001\334\060\037\006\003\125\035\043\004
+\030\060\026\200\024\241\162\137\046\033\050\230\103\225\135\007
+\067\325\205\226\235\113\322\303\105\060\035\006\003\125\035\016
+\004\026\004\024\030\052\242\310\324\172\077\173\255\004\213\275
+\157\236\020\106\023\170\161\235\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\005\240\060\014\006\003\125\035\023\001
+\001\377\004\002\060\000\060\035\006\003\125\035\045\004\026\060
+\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006\001
+\005\005\007\003\002\060\106\006\003\125\035\040\004\077\060\075
+\060\073\006\014\053\006\001\004\001\262\061\001\002\001\003\004
+\060\053\060\051\006\010\053\006\001\005\005\007\002\001\026\035
+\150\164\164\160\163\072\057\057\163\145\143\165\162\145\056\143
+\157\155\157\144\157\056\143\157\155\057\103\120\123\060\173\006
+\003\125\035\037\004\164\060\162\060\070\240\066\240\064\206\062
+\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144
+\157\143\141\056\143\157\155\057\125\124\116\055\125\123\105\122
+\106\151\162\163\164\055\110\141\162\144\167\141\162\145\056\143
+\162\154\060\066\240\064\240\062\206\060\150\164\164\160\072\057
+\057\143\162\154\056\143\157\155\157\144\157\056\156\145\164\057
+\125\124\116\055\125\123\105\122\106\151\162\163\164\055\110\141
+\162\144\167\141\162\145\056\143\162\154\060\161\006\010\053\006
+\001\005\005\007\001\001\004\145\060\143\060\073\006\010\053\006
+\001\005\005\007\060\002\206\057\150\164\164\160\072\057\057\143
+\162\164\056\143\157\155\157\144\157\143\141\056\143\157\155\057
+\125\124\116\101\144\144\124\162\165\163\164\123\145\162\166\145
+\162\103\101\056\143\162\164\060\044\006\010\053\006\001\005\005
+\007\060\001\206\030\150\164\164\160\072\057\057\157\143\163\160
+\056\143\157\155\157\144\157\143\141\056\143\157\155\060\045\006
+\003\125\035\021\004\036\060\034\202\016\167\167\167\056\147\157
+\157\147\154\145\056\143\157\155\202\012\147\157\157\147\154\145
+\056\143\157\155\060\015\006\011\052\206\110\206\367\015\001\001
+\005\005\000\003\202\001\001\000\161\300\231\077\136\366\275\063
+\377\236\026\313\250\277\335\160\371\322\123\073\066\256\311\027
+\310\256\136\115\335\142\367\267\323\076\167\243\376\300\173\062
+\265\311\224\005\122\120\362\137\075\171\204\111\117\135\154\260
+\327\131\275\324\154\210\372\374\305\145\206\353\050\122\242\102
+\366\174\274\152\307\007\056\045\321\220\142\040\306\215\121\302
+\054\105\071\116\003\332\367\030\350\314\012\072\331\105\330\154
+\156\064\213\142\234\116\025\371\103\356\345\227\300\077\255\065
+\023\305\053\006\307\101\375\342\367\176\105\255\233\321\341\146
+\355\370\172\113\224\071\172\057\353\350\077\103\330\065\326\126
+\372\164\347\155\346\355\254\145\204\376\320\115\006\022\336\332
+\131\000\074\011\134\317\210\113\350\075\264\025\041\222\314\155
+\246\121\342\216\227\361\364\202\106\313\304\123\136\332\134\235
+\145\222\001\145\211\000\345\266\231\377\046\100\361\057\031\061
+\010\032\261\147\125\206\015\256\065\063\206\274\227\110\222\327
+\226\140\370\316\374\226\353\207\304\163\314\224\233\130\133\363
+\172\244\047\023\326\117\364\151
+END
+
+# Trust for Certificate "Bogus Google"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:f5:c8:6a:f3:61:62:f1:3a:64:f5:4f:6d:c9:58:7c:06
+# Subject: CN=www.google.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 01:73:A9:58:F0:BC:C9:BE:94:2B:1A:4C:98:24:E3:B8
+# Fingerprint (SHA1): 19:16:A2:AF:34:6D:39:9F:50:31:3C:39:32:00:F1:41:40:45:66:16
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Google"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\031\026\242\257\064\155\071\237\120\061\074\071\062\000\361\101
+\100\105\146\026
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\001\163\251\130\360\274\311\276\224\053\032\114\230\044\343\270
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\365\310\152\363\141\142\361\072\144\365\117\155\311
+\130\174\006
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus Skype"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:e9:02:8b:95:78:e4:15:dc:1a:71:0a:2b:88:15:44:47
+# Subject: CN=login.skype.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 85:A4:B4:C4:69:21:DF:A1:6A:0D:58:56:58:4B:33:44
+# Fingerprint (SHA1): 47:1C:94:9A:81:43:DB:5A:D5:CD:F1:C9:72:86:4A:25:04:FA:23:C9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Skype"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\337\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\030\060\026\006\003\125\004
+\003\023\017\154\157\147\151\156\056\163\153\171\160\145\056\143
+\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\351\002\213\225\170\344\025\334\032\161\012\053\210
+\025\104\107
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\357\060\202\004\327\240\003\002\001\002\002\021\000
+\351\002\213\225\170\344\025\334\032\161\012\053\210\025\104\107
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
+\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
+\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004
+\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060
+\063\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063
+\061\064\062\063\065\071\065\071\132\060\201\337\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125
+\004\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125
+\004\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006
+\003\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060
+\025\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154
+\141\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023
+\013\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021
+\006\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164
+\056\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164
+\145\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040
+\103\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006
+\003\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123
+\114\061\030\060\026\006\003\125\004\003\023\017\154\157\147\151
+\156\056\163\153\171\160\145\056\143\157\155\060\202\001\042\060
+\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202
+\001\017\000\060\202\001\012\002\202\001\001\000\260\170\231\206
+\016\242\163\043\324\132\303\111\353\261\066\214\174\312\204\256
+\074\257\070\210\050\231\215\055\130\023\261\227\170\076\122\040
+\147\254\133\163\230\154\062\125\311\160\321\331\252\025\350\056
+\046\205\201\274\126\344\274\200\143\333\116\327\365\002\276\121
+\143\036\074\333\337\327\000\135\132\271\345\173\152\352\070\040
+\262\073\266\356\165\124\204\371\246\312\070\160\335\277\260\377
+\245\205\135\264\101\376\335\075\331\052\341\060\103\032\230\171
+\223\240\137\340\147\154\225\372\076\172\256\161\173\343\155\210
+\102\077\045\324\356\276\150\150\254\255\254\140\340\040\243\071
+\203\271\133\050\243\223\155\241\275\166\012\343\353\256\207\047
+\016\124\217\264\110\014\232\124\364\135\216\067\120\334\136\244
+\213\153\113\334\246\363\064\276\167\131\042\210\377\031\053\155
+\166\144\163\332\014\207\007\053\232\067\072\320\342\214\366\066
+\062\153\232\171\314\322\073\223\157\032\115\154\346\301\235\100
+\254\055\164\303\276\352\134\163\145\001\051\261\052\277\160\131
+\301\316\306\303\242\310\105\137\272\147\075\017\002\003\001\000
+\001\243\202\001\352\060\202\001\346\060\037\006\003\125\035\043
+\004\030\060\026\200\024\241\162\137\046\033\050\230\103\225\135
+\007\067\325\205\226\235\113\322\303\105\060\035\006\003\125\035
+\016\004\026\004\024\325\216\132\121\023\264\051\015\061\266\034
+\215\076\121\121\061\012\063\252\201\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\005\240\060\014\006\003\125\035\023
+\001\001\377\004\002\060\000\060\035\006\003\125\035\045\004\026
+\060\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006
+\001\005\005\007\003\002\060\106\006\003\125\035\040\004\077\060
+\075\060\073\006\014\053\006\001\004\001\262\061\001\002\001\003
+\004\060\053\060\051\006\010\053\006\001\005\005\007\002\001\026
+\035\150\164\164\160\163\072\057\057\163\145\143\165\162\145\056
+\143\157\155\157\144\157\056\143\157\155\057\103\120\123\060\173
+\006\003\125\035\037\004\164\060\162\060\070\240\066\240\064\206
+\062\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157
+\144\157\143\141\056\143\157\155\057\125\124\116\055\125\123\105
+\122\106\151\162\163\164\055\110\141\162\144\167\141\162\145\056
+\143\162\154\060\066\240\064\240\062\206\060\150\164\164\160\072
+\057\057\143\162\154\056\143\157\155\157\144\157\056\156\145\164
+\057\125\124\116\055\125\123\105\122\106\151\162\163\164\055\110
+\141\162\144\167\141\162\145\056\143\162\154\060\161\006\010\053
+\006\001\005\005\007\001\001\004\145\060\143\060\073\006\010\053
+\006\001\005\005\007\060\002\206\057\150\164\164\160\072\057\057
+\143\162\164\056\143\157\155\157\144\157\143\141\056\143\157\155
+\057\125\124\116\101\144\144\124\162\165\163\164\123\145\162\166
+\145\162\103\101\056\143\162\164\060\044\006\010\053\006\001\005
+\005\007\060\001\206\030\150\164\164\160\072\057\057\157\143\163
+\160\056\143\157\155\157\144\157\143\141\056\143\157\155\060\057
+\006\003\125\035\021\004\050\060\046\202\017\154\157\147\151\156
+\056\163\153\171\160\145\056\143\157\155\202\023\167\167\167\056
+\154\157\147\151\156\056\163\153\171\160\145\056\143\157\155\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\010\362\201\165\221\273\316\022\004\030\302\115\132
+\373\106\220\012\124\104\364\362\335\007\201\360\037\246\172\157
+\237\317\270\016\054\117\234\304\232\365\250\366\272\244\311\172
+\135\261\342\132\312\074\372\140\250\150\076\313\272\055\342\315
+\326\266\344\222\074\151\255\127\352\250\057\070\020\204\162\345
+\150\161\355\276\353\156\030\357\143\172\276\347\044\377\300\143
+\375\130\073\114\201\222\330\051\253\216\065\135\327\323\011\153
+\205\323\325\163\005\104\342\345\273\203\123\020\313\362\317\267
+\156\341\151\267\241\222\144\305\317\315\202\273\066\240\070\255
+\327\044\337\123\374\077\142\267\267\325\307\127\343\223\061\160
+\216\044\211\206\312\143\053\071\272\135\331\152\140\354\241\116
+\212\376\123\370\136\222\337\057\134\046\027\155\003\175\002\017
+\017\252\103\147\155\260\142\277\176\123\335\314\354\170\163\225
+\345\245\366\000\243\004\375\077\004\052\263\230\305\267\003\034
+\333\311\120\253\260\005\035\036\276\126\264\317\076\102\023\224
+\236\371\347\001\201\245\170\157\014\172\166\254\005\206\354\254
+\302\021\254
+END
+
+# Trust for Certificate "Bogus Skype"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:e9:02:8b:95:78:e4:15:dc:1a:71:0a:2b:88:15:44:47
+# Subject: CN=login.skype.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 85:A4:B4:C4:69:21:DF:A1:6A:0D:58:56:58:4B:33:44
+# Fingerprint (SHA1): 47:1C:94:9A:81:43:DB:5A:D5:CD:F1:C9:72:86:4A:25:04:FA:23:C9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Skype"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\107\034\224\232\201\103\333\132\325\315\361\311\162\206\112\045
+\004\372\043\311
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\205\244\264\304\151\041\337\241\152\015\130\126\130\113\063\104
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\351\002\213\225\170\344\025\334\032\161\012\053\210
+\025\104\107
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus Yahoo 1"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:d7:55:8f:da:f5:f1:10:5b:b2:13:28:2b:70:77:29:a3
+# Subject: CN=login.yahoo.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 0C:1F:BE:D3:FC:09:6E:E6:6E:C2:66:39:75:86:6B:EB
+# Fingerprint (SHA1): 63:FE:AE:96:0B:AA:91:E3:43:CE:2B:D8:B7:17:98:C7:6B:DB:77:D0
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Yahoo 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\337\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\030\060\026\006\003\125\004
+\003\023\017\154\157\147\151\156\056\171\141\150\157\157\056\143
+\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\327\125\217\332\365\361\020\133\262\023\050\053\160
+\167\051\243
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\357\060\202\004\327\240\003\002\001\002\002\021\000
+\327\125\217\332\365\361\020\133\262\023\050\053\160\167\051\243
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
+\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
+\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004
+\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060
+\063\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063
+\061\064\062\063\065\071\065\071\132\060\201\337\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125
+\004\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125
+\004\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006
+\003\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060
+\025\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154
+\141\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023
+\013\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021
+\006\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164
+\056\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164
+\145\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040
+\103\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006
+\003\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123
+\114\061\030\060\026\006\003\125\004\003\023\017\154\157\147\151
+\156\056\171\141\150\157\157\056\143\157\155\060\202\001\042\060
+\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202
+\001\017\000\060\202\001\012\002\202\001\001\000\241\244\005\075
+\355\205\105\223\212\030\115\306\003\000\127\342\100\167\360\034
+\353\320\031\337\042\135\010\177\321\007\074\101\211\106\027\243
+\011\372\374\370\251\004\321\226\217\253\327\117\074\371\255\030
+\251\164\201\304\127\012\072\046\026\316\142\076\274\077\154\041
+\356\223\215\313\015\240\037\232\226\320\217\255\365\223\223\202
+\356\162\014\241\165\025\243\173\204\126\270\255\377\122\021\161
+\204\274\072\060\013\176\230\250\341\250\077\067\122\320\361\174
+\157\220\330\105\012\254\071\162\152\141\325\273\303\214\371\302
+\314\337\375\072\161\271\257\274\334\072\334\014\266\261\322\321
+\211\273\101\266\362\336\127\325\025\337\374\375\342\061\305\337
+\312\301\330\217\054\277\360\016\133\161\340\064\161\303\305\115
+\175\172\324\372\355\060\113\057\352\266\056\236\223\074\342\072
+\370\102\242\032\356\334\337\315\017\251\366\171\204\032\216\154
+\002\266\206\345\277\121\152\146\370\363\234\323\131\014\173\245
+\231\170\315\174\231\372\306\226\107\330\062\324\164\166\016\167
+\113\040\164\244\267\211\165\222\112\264\133\125\002\003\001\000
+\001\243\202\001\352\060\202\001\346\060\037\006\003\125\035\043
+\004\030\060\026\200\024\241\162\137\046\033\050\230\103\225\135
+\007\067\325\205\226\235\113\322\303\105\060\035\006\003\125\035
+\016\004\026\004\024\206\111\105\374\063\031\063\324\004\355\047
+\141\356\350\001\311\014\177\057\176\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\005\240\060\014\006\003\125\035\023
+\001\001\377\004\002\060\000\060\035\006\003\125\035\045\004\026
+\060\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006
+\001\005\005\007\003\002\060\106\006\003\125\035\040\004\077\060
+\075\060\073\006\014\053\006\001\004\001\262\061\001\002\001\003
+\004\060\053\060\051\006\010\053\006\001\005\005\007\002\001\026
+\035\150\164\164\160\163\072\057\057\163\145\143\165\162\145\056
+\143\157\155\157\144\157\056\143\157\155\057\103\120\123\060\173
+\006\003\125\035\037\004\164\060\162\060\070\240\066\240\064\206
+\062\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157
+\144\157\143\141\056\143\157\155\057\125\124\116\055\125\123\105
+\122\106\151\162\163\164\055\110\141\162\144\167\141\162\145\056
+\143\162\154\060\066\240\064\240\062\206\060\150\164\164\160\072
+\057\057\143\162\154\056\143\157\155\157\144\157\056\156\145\164
+\057\125\124\116\055\125\123\105\122\106\151\162\163\164\055\110
+\141\162\144\167\141\162\145\056\143\162\154\060\161\006\010\053
+\006\001\005\005\007\001\001\004\145\060\143\060\073\006\010\053
+\006\001\005\005\007\060\002\206\057\150\164\164\160\072\057\057
+\143\162\164\056\143\157\155\157\144\157\143\141\056\143\157\155
+\057\125\124\116\101\144\144\124\162\165\163\164\123\145\162\166
+\145\162\103\101\056\143\162\164\060\044\006\010\053\006\001\005
+\005\007\060\001\206\030\150\164\164\160\072\057\057\157\143\163
+\160\056\143\157\155\157\144\157\143\141\056\143\157\155\060\057
+\006\003\125\035\021\004\050\060\046\202\017\154\157\147\151\156
+\056\171\141\150\157\157\056\143\157\155\202\023\167\167\167\056
+\154\157\147\151\156\056\171\141\150\157\157\056\143\157\155\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\075\127\311\110\044\134\356\144\201\365\256\276\125
+\051\026\377\052\057\204\355\331\370\243\003\310\060\146\273\310
+\324\201\055\041\367\010\367\254\226\102\232\101\165\172\272\135
+\020\043\313\222\102\141\372\212\332\155\145\064\031\345\251\326
+\055\023\170\327\201\104\222\251\156\200\143\025\313\376\065\037
+\002\321\212\024\260\250\314\224\040\073\250\032\360\135\066\120
+\333\015\256\351\144\344\366\215\151\175\060\310\024\027\000\112
+\345\246\065\373\175\015\042\235\171\166\122\054\274\227\006\210
+\232\025\364\163\346\361\365\230\245\315\007\104\221\270\247\150
+\147\105\322\162\021\140\342\161\267\120\125\342\212\251\015\326
+\222\356\004\052\213\060\240\242\005\106\064\155\222\306\073\252
+\115\240\320\253\001\031\012\062\267\350\343\317\361\322\227\111
+\173\254\244\227\367\360\127\256\143\167\232\177\226\332\115\375
+\276\334\007\066\343\045\275\211\171\216\051\022\023\213\210\007
+\373\153\333\244\315\263\055\047\351\324\312\140\327\205\123\373
+\164\306\134\065\214\160\037\371\262\267\222\047\040\307\224\325
+\147\024\060
+END
+
+# Trust for Certificate "Bogus Yahoo 1"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:d7:55:8f:da:f5:f1:10:5b:b2:13:28:2b:70:77:29:a3
+# Subject: CN=login.yahoo.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 0C:1F:BE:D3:FC:09:6E:E6:6E:C2:66:39:75:86:6B:EB
+# Fingerprint (SHA1): 63:FE:AE:96:0B:AA:91:E3:43:CE:2B:D8:B7:17:98:C7:6B:DB:77:D0
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Yahoo 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\143\376\256\226\013\252\221\343\103\316\053\330\267\027\230\307
+\153\333\167\320
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\014\037\276\323\374\011\156\346\156\302\146\071\165\206\153\353
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\327\125\217\332\365\361\020\133\262\023\050\053\160
+\167\051\243
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus Yahoo 2"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:39:2a:43:4f:0e:07:df:1f:8a:a3:05:de:34:e0:c2:29
+# Subject: CN=login.yahoo.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 72:DC:C8:72:6C:53:3B:B2:FD:CC:5D:19:BD:AF:A6:31
+# Fingerprint (SHA1): D0:18:B6:2D:C5:18:90:72:47:DF:50:92:5B:B0:9A:CF:4A:5C:B3:AD
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Yahoo 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\337\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\030\060\026\006\003\125\004
+\003\023\017\154\157\147\151\156\056\171\141\150\157\157\056\143
+\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\071\052\103\117\016\007\337\037\212\243\005\336\064\340
+\302\051
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\331\060\202\004\301\240\003\002\001\002\002\020\071
+\052\103\117\016\007\337\037\212\243\005\336\064\340\302\051\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004\003
+\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164\055
+\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060\063
+\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063\061
+\064\062\063\065\071\065\071\132\060\201\337\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125\004
+\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125\004
+\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006\003
+\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060\025
+\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154\141
+\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023\013
+\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021\006
+\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164\056
+\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164\145
+\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040\103
+\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006\003
+\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123\114
+\061\030\060\026\006\003\125\004\003\023\017\154\157\147\151\156
+\056\171\141\150\157\157\056\143\157\155\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\241\244\005\075\355
+\205\105\223\212\030\115\306\003\000\127\342\100\167\360\034\353
+\320\031\337\042\135\010\177\321\007\074\101\211\106\027\243\011
+\372\374\370\251\004\321\226\217\253\327\117\074\371\255\030\251
+\164\201\304\127\012\072\046\026\316\142\076\274\077\154\041\356
+\223\215\313\015\240\037\232\226\320\217\255\365\223\223\202\356
+\162\014\241\165\025\243\173\204\126\270\255\377\122\021\161\204
+\274\072\060\013\176\230\250\341\250\077\067\122\320\361\174\157
+\220\330\105\012\254\071\162\152\141\325\273\303\214\371\302\314
+\337\375\072\161\271\257\274\334\072\334\014\266\261\322\321\211
+\273\101\266\362\336\127\325\025\337\374\375\342\061\305\337\312
+\301\330\217\054\277\360\016\133\161\340\064\161\303\305\115\175
+\172\324\372\355\060\113\057\352\266\056\236\223\074\342\072\370
+\102\242\032\356\334\337\315\017\251\366\171\204\032\216\154\002
+\266\206\345\277\121\152\146\370\363\234\323\131\014\173\245\231
+\170\315\174\231\372\306\226\107\330\062\324\164\166\016\167\113
+\040\164\244\267\211\165\222\112\264\133\125\002\003\001\000\001
+\243\202\001\325\060\202\001\321\060\037\006\003\125\035\043\004
+\030\060\026\200\024\241\162\137\046\033\050\230\103\225\135\007
+\067\325\205\226\235\113\322\303\105\060\035\006\003\125\035\016
+\004\026\004\024\206\111\105\374\063\031\063\324\004\355\047\141
+\356\350\001\311\014\177\057\176\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\005\240\060\014\006\003\125\035\023\001
+\001\377\004\002\060\000\060\035\006\003\125\035\045\004\026\060
+\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006\001
+\005\005\007\003\002\060\106\006\003\125\035\040\004\077\060\075
+\060\073\006\014\053\006\001\004\001\262\061\001\002\001\003\004
+\060\053\060\051\006\010\053\006\001\005\005\007\002\001\026\035
+\150\164\164\160\163\072\057\057\163\145\143\165\162\145\056\143
+\157\155\157\144\157\056\143\157\155\057\103\120\123\060\173\006
+\003\125\035\037\004\164\060\162\060\070\240\066\240\064\206\062
+\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144
+\157\143\141\056\143\157\155\057\125\124\116\055\125\123\105\122
+\106\151\162\163\164\055\110\141\162\144\167\141\162\145\056\143
+\162\154\060\066\240\064\240\062\206\060\150\164\164\160\072\057
+\057\143\162\154\056\143\157\155\157\144\157\056\156\145\164\057
+\125\124\116\055\125\123\105\122\106\151\162\163\164\055\110\141
+\162\144\167\141\162\145\056\143\162\154\060\161\006\010\053\006
+\001\005\005\007\001\001\004\145\060\143\060\073\006\010\053\006
+\001\005\005\007\060\002\206\057\150\164\164\160\072\057\057\143
+\162\164\056\143\157\155\157\144\157\143\141\056\143\157\155\057
+\125\124\116\101\144\144\124\162\165\163\164\123\145\162\166\145
+\162\103\101\056\143\162\164\060\044\006\010\053\006\001\005\005
+\007\060\001\206\030\150\164\164\160\072\057\057\157\143\163\160
+\056\143\157\155\157\144\157\143\141\056\143\157\155\060\032\006
+\003\125\035\021\004\023\060\021\202\017\154\157\147\151\156\056
+\171\141\150\157\157\056\143\157\155\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\001\001\000\127\142\341
+\167\353\374\037\277\210\123\257\130\323\324\326\155\147\060\027
+\100\276\340\037\144\336\207\025\314\340\244\126\251\321\237\371
+\001\376\002\261\261\352\342\137\356\161\026\061\371\010\325\302
+\327\232\233\262\132\070\327\251\177\351\207\153\061\371\013\254
+\331\375\120\161\340\333\202\222\017\201\234\215\167\351\353\056
+\352\324\043\101\207\354\055\262\170\263\216\261\147\322\356\161
+\003\010\022\231\263\002\051\157\336\213\336\301\251\003\012\132
+\063\034\075\021\003\306\110\014\230\234\025\056\331\246\205\122
+\347\005\212\256\060\043\353\355\050\154\140\351\055\177\217\107
+\213\057\320\334\346\273\017\176\137\362\110\201\216\120\004\143
+\261\121\200\165\232\251\266\020\034\020\137\157\030\157\340\016
+\226\105\316\356\361\265\040\333\357\332\156\310\225\343\366\105
+\375\312\374\245\137\111\155\006\036\322\336\141\075\025\175\067
+\345\034\065\216\006\302\153\367\264\250\050\054\061\313\252\264
+\247\227\117\235\212\366\257\176\067\271\173\075\337\222\146\213
+\217\116\235\306\066\347\134\246\253\022\017\326\317
+END
+
+# Trust for Certificate "Bogus Yahoo 2"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:39:2a:43:4f:0e:07:df:1f:8a:a3:05:de:34:e0:c2:29
+# Subject: CN=login.yahoo.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 72:DC:C8:72:6C:53:3B:B2:FD:CC:5D:19:BD:AF:A6:31
+# Fingerprint (SHA1): D0:18:B6:2D:C5:18:90:72:47:DF:50:92:5B:B0:9A:CF:4A:5C:B3:AD
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Yahoo 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\320\030\266\055\305\030\220\162\107\337\120\222\133\260\232\317
+\112\134\263\255
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\162\334\310\162\154\123\073\262\375\314\135\031\275\257\246\061
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\071\052\103\117\016\007\337\037\212\243\005\336\064\340
+\302\051
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus Yahoo 3"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:3e:75:ce:d4:6b:69:30:21:21:88:30:ae:86:a8:2a:71
+# Subject: CN=login.yahoo.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 4A:DC:3C:67:ED:21:CD:5B:CE:5D:C8:11:E4:9E:CF:3D
+# Fingerprint (SHA1): 80:96:2A:E4:D6:C5:B4:42:89:4E:95:A1:3E:4A:69:9E:07:D6:94:CF
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Yahoo 3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\337\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\030\060\026\006\003\125\004
+\003\023\017\154\157\147\151\156\056\171\141\150\157\157\056\143
+\157\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\076\165\316\324\153\151\060\041\041\210\060\256\206\250
+\052\161
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\331\060\202\004\301\240\003\002\001\002\002\020\076
+\165\316\324\153\151\060\041\041\210\060\256\206\250\052\161\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
+\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004\003
+\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164\055
+\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060\063
+\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063\061
+\064\062\063\065\071\065\071\132\060\201\337\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125\004
+\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125\004
+\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006\003
+\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060\025
+\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154\141
+\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023\013
+\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021\006
+\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164\056
+\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164\145
+\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040\103
+\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006\003
+\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123\114
+\061\030\060\026\006\003\125\004\003\023\017\154\157\147\151\156
+\056\171\141\150\157\157\056\143\157\155\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\241\244\005\075\355
+\205\105\223\212\030\115\306\003\000\127\342\100\167\360\034\353
+\320\031\337\042\135\010\177\321\007\074\101\211\106\027\243\011
+\372\374\370\251\004\321\226\217\253\327\117\074\371\255\030\251
+\164\201\304\127\012\072\046\026\316\142\076\274\077\154\041\356
+\223\215\313\015\240\037\232\226\320\217\255\365\223\223\202\356
+\162\014\241\165\025\243\173\204\126\270\255\377\122\021\161\204
+\274\072\060\013\176\230\250\341\250\077\067\122\320\361\174\157
+\220\330\105\012\254\071\162\152\141\325\273\303\214\371\302\314
+\337\375\072\161\271\257\274\334\072\334\014\266\261\322\321\211
+\273\101\266\362\336\127\325\025\337\374\375\342\061\305\337\312
+\301\330\217\054\277\360\016\133\161\340\064\161\303\305\115\175
+\172\324\372\355\060\113\057\352\266\056\236\223\074\342\072\370
+\102\242\032\356\334\337\315\017\251\366\171\204\032\216\154\002
+\266\206\345\277\121\152\146\370\363\234\323\131\014\173\245\231
+\170\315\174\231\372\306\226\107\330\062\324\164\166\016\167\113
+\040\164\244\267\211\165\222\112\264\133\125\002\003\001\000\001
+\243\202\001\325\060\202\001\321\060\037\006\003\125\035\043\004
+\030\060\026\200\024\241\162\137\046\033\050\230\103\225\135\007
+\067\325\205\226\235\113\322\303\105\060\035\006\003\125\035\016
+\004\026\004\024\206\111\105\374\063\031\063\324\004\355\047\141
+\356\350\001\311\014\177\057\176\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\005\240\060\014\006\003\125\035\023\001
+\001\377\004\002\060\000\060\035\006\003\125\035\045\004\026\060
+\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006\001
+\005\005\007\003\002\060\106\006\003\125\035\040\004\077\060\075
+\060\073\006\014\053\006\001\004\001\262\061\001\002\001\003\004
+\060\053\060\051\006\010\053\006\001\005\005\007\002\001\026\035
+\150\164\164\160\163\072\057\057\163\145\143\165\162\145\056\143
+\157\155\157\144\157\056\143\157\155\057\103\120\123\060\173\006
+\003\125\035\037\004\164\060\162\060\070\240\066\240\064\206\062
+\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144
+\157\143\141\056\143\157\155\057\125\124\116\055\125\123\105\122
+\106\151\162\163\164\055\110\141\162\144\167\141\162\145\056\143
+\162\154\060\066\240\064\240\062\206\060\150\164\164\160\072\057
+\057\143\162\154\056\143\157\155\157\144\157\056\156\145\164\057
+\125\124\116\055\125\123\105\122\106\151\162\163\164\055\110\141
+\162\144\167\141\162\145\056\143\162\154\060\161\006\010\053\006
+\001\005\005\007\001\001\004\145\060\143\060\073\006\010\053\006
+\001\005\005\007\060\002\206\057\150\164\164\160\072\057\057\143
+\162\164\056\143\157\155\157\144\157\143\141\056\143\157\155\057
+\125\124\116\101\144\144\124\162\165\163\164\123\145\162\166\145
+\162\103\101\056\143\162\164\060\044\006\010\053\006\001\005\005
+\007\060\001\206\030\150\164\164\160\072\057\057\157\143\163\160
+\056\143\157\155\157\144\157\143\141\056\143\157\155\060\032\006
+\003\125\035\021\004\023\060\021\202\017\154\157\147\151\156\056
+\171\141\150\157\157\056\143\157\155\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\001\001\000\123\151\230
+\216\050\116\234\053\133\035\314\153\167\050\075\273\372\245\116
+\176\126\051\244\352\020\342\364\346\055\006\321\204\333\043\316
+\227\363\150\266\017\072\336\025\013\044\035\221\343\154\056\060
+\267\351\160\260\303\106\200\360\323\261\121\277\117\326\170\240
+\374\254\306\317\061\004\143\342\064\125\005\112\075\366\060\272
+\363\063\345\272\322\226\363\325\261\266\223\211\032\244\150\276
+\176\355\143\264\032\110\300\123\344\243\360\071\014\062\222\307
+\103\015\032\161\355\320\106\223\277\223\142\154\063\113\315\066
+\015\151\136\273\154\226\231\041\151\304\113\147\162\333\154\152
+\270\367\150\355\305\217\255\143\145\225\012\114\340\371\017\176
+\067\075\252\324\223\272\147\011\303\245\244\015\003\132\155\325
+\013\376\360\100\024\264\366\270\151\174\155\302\062\113\237\265
+\032\347\106\256\114\132\053\252\172\136\220\127\225\372\333\146
+\002\040\036\152\151\146\025\234\302\266\365\274\120\265\375\105
+\307\037\150\264\107\131\254\304\033\050\223\116\122\123\022\003
+\130\113\161\203\237\146\346\254\171\110\376\376\107
+END
+
+# Trust for Certificate "Bogus Yahoo 3"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:3e:75:ce:d4:6b:69:30:21:21:88:30:ae:86:a8:2a:71
+# Subject: CN=login.yahoo.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): 4A:DC:3C:67:ED:21:CD:5B:CE:5D:C8:11:E4:9E:CF:3D
+# Fingerprint (SHA1): 80:96:2A:E4:D6:C5:B4:42:89:4E:95:A1:3E:4A:69:9E:07:D6:94:CF
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus Yahoo 3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\200\226\052\344\326\305\264\102\211\116\225\241\076\112\151\236
+\007\326\224\317
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\112\334\074\147\355\041\315\133\316\135\310\021\344\236\317\075
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\076\165\316\324\153\151\060\041\041\210\060\256\206\250
+\052\161
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Bogus live.com"
+#
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:b0:b7:13:3e:d0:96:f9:b5:6f:ae:91:c8:74:bd:3a:c0
+# Subject: CN=login.live.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): D0:D4:39:E3:CC:5C:52:DD:08:CD:E9:AB:E8:11:59:D4
+# Fingerprint (SHA1): CE:A5:86:B2:CE:59:3E:C7:D9:39:89:83:37:C5:78:14:70:8A:B2:BE
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus live.com"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\336\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\016\060\014\006\003\125\004\021\023\005\063\070\064\067\067
+\061\020\060\016\006\003\125\004\010\023\007\106\154\157\162\151
+\144\141\061\020\060\016\006\003\125\004\007\023\007\105\156\147
+\154\151\163\150\061\027\060\025\006\003\125\004\011\023\016\123
+\145\141\040\126\151\154\154\141\147\145\040\061\060\061\024\060
+\022\006\003\125\004\012\023\013\107\157\157\147\154\145\040\114
+\164\144\056\061\023\060\021\006\003\125\004\013\023\012\124\145
+\143\150\040\104\145\160\164\056\061\050\060\046\006\003\125\004
+\013\023\037\110\157\163\164\145\144\040\142\171\040\107\124\111
+\040\107\162\157\165\160\040\103\157\162\160\157\162\141\164\151
+\157\156\061\024\060\022\006\003\125\004\013\023\013\120\154\141
+\164\151\156\165\155\123\123\114\061\027\060\025\006\003\125\004
+\003\023\016\154\157\147\151\156\056\154\151\166\145\056\143\157
+\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\260\267\023\076\320\226\371\265\157\256\221\310\164
+\275\072\300
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\354\060\202\004\324\240\003\002\001\002\002\021\000
+\260\267\023\076\320\226\371\265\157\256\221\310\164\275\072\300
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
+\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
+\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125\004
+\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163\164
+\055\110\141\162\144\167\141\162\145\060\036\027\015\061\061\060
+\063\061\065\060\060\060\060\060\060\132\027\015\061\064\060\063
+\061\064\062\063\065\071\065\071\132\060\201\336\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\016\060\014\006\003\125
+\004\021\023\005\063\070\064\067\067\061\020\060\016\006\003\125
+\004\010\023\007\106\154\157\162\151\144\141\061\020\060\016\006
+\003\125\004\007\023\007\105\156\147\154\151\163\150\061\027\060
+\025\006\003\125\004\011\023\016\123\145\141\040\126\151\154\154
+\141\147\145\040\061\060\061\024\060\022\006\003\125\004\012\023
+\013\107\157\157\147\154\145\040\114\164\144\056\061\023\060\021
+\006\003\125\004\013\023\012\124\145\143\150\040\104\145\160\164
+\056\061\050\060\046\006\003\125\004\013\023\037\110\157\163\164
+\145\144\040\142\171\040\107\124\111\040\107\162\157\165\160\040
+\103\157\162\160\157\162\141\164\151\157\156\061\024\060\022\006
+\003\125\004\013\023\013\120\154\141\164\151\156\165\155\123\123
+\114\061\027\060\025\006\003\125\004\003\023\016\154\157\147\151
+\156\056\154\151\166\145\056\143\157\155\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\363\374\053\057\357
+\341\255\131\360\102\074\302\361\202\277\054\101\223\321\366\230
+\063\225\114\274\142\361\225\130\010\266\351\173\167\110\260\323
+\334\027\077\274\156\346\354\036\354\215\027\376\034\044\306\076
+\147\075\222\225\242\060\300\247\127\040\317\160\210\227\112\005
+\223\171\223\102\227\057\076\377\304\024\024\050\242\023\066\264
+\370\356\276\035\274\170\135\141\223\137\353\210\327\321\344\053
+\232\315\130\342\007\105\237\117\270\271\100\152\063\054\133\041
+\003\132\112\224\362\172\227\131\033\250\265\102\330\203\000\252
+\064\314\247\166\320\107\003\137\005\257\073\341\271\241\064\045
+\267\154\137\232\060\204\230\302\302\327\362\270\102\112\020\125
+\275\372\123\201\135\215\150\146\105\054\122\176\345\304\004\303
+\124\347\303\071\332\172\112\305\271\230\202\040\341\054\140\127
+\277\272\362\106\000\274\137\072\334\343\063\227\370\112\230\271
+\354\063\117\055\140\154\025\222\246\201\112\013\351\354\166\160
+\064\061\027\160\346\160\113\216\213\323\165\313\170\111\253\146
+\233\206\237\217\251\304\001\350\312\033\347\002\003\001\000\001
+\243\202\001\350\060\202\001\344\060\037\006\003\125\035\043\004
+\030\060\026\200\024\241\162\137\046\033\050\230\103\225\135\007
+\067\325\205\226\235\113\322\303\105\060\035\006\003\125\035\016
+\004\026\004\024\324\144\366\251\350\245\176\327\277\143\122\003
+\203\123\333\305\101\215\352\200\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\005\240\060\014\006\003\125\035\023\001
+\001\377\004\002\060\000\060\035\006\003\125\035\045\004\026\060
+\024\006\010\053\006\001\005\005\007\003\001\006\010\053\006\001
+\005\005\007\003\002\060\106\006\003\125\035\040\004\077\060\075
+\060\073\006\014\053\006\001\004\001\262\061\001\002\001\003\004
+\060\053\060\051\006\010\053\006\001\005\005\007\002\001\026\035
+\150\164\164\160\163\072\057\057\163\145\143\165\162\145\056\143
+\157\155\157\144\157\056\143\157\155\057\103\120\123\060\173\006
+\003\125\035\037\004\164\060\162\060\070\240\066\240\064\206\062
+\150\164\164\160\072\057\057\143\162\154\056\143\157\155\157\144
+\157\143\141\056\143\157\155\057\125\124\116\055\125\123\105\122
+\106\151\162\163\164\055\110\141\162\144\167\141\162\145\056\143
+\162\154\060\066\240\064\240\062\206\060\150\164\164\160\072\057
+\057\143\162\154\056\143\157\155\157\144\157\056\156\145\164\057
+\125\124\116\055\125\123\105\122\106\151\162\163\164\055\110\141
+\162\144\167\141\162\145\056\143\162\154\060\161\006\010\053\006
+\001\005\005\007\001\001\004\145\060\143\060\073\006\010\053\006
+\001\005\005\007\060\002\206\057\150\164\164\160\072\057\057\143
+\162\164\056\143\157\155\157\144\157\143\141\056\143\157\155\057
+\125\124\116\101\144\144\124\162\165\163\164\123\145\162\166\145
+\162\103\101\056\143\162\164\060\044\006\010\053\006\001\005\005
+\007\060\001\206\030\150\164\164\160\072\057\057\157\143\163\160
+\056\143\157\155\157\144\157\143\141\056\143\157\155\060\055\006
+\003\125\035\021\004\046\060\044\202\016\154\157\147\151\156\056
+\154\151\166\145\056\143\157\155\202\022\167\167\167\056\154\157
+\147\151\156\056\154\151\166\145\056\143\157\155\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000
+\124\343\244\232\044\322\363\035\102\255\033\360\036\253\373\332
+\325\252\351\317\132\263\036\127\173\061\362\156\127\113\061\257
+\063\273\266\015\025\307\136\131\001\316\104\265\267\277\011\311
+\325\334\151\204\351\305\032\267\360\076\324\300\044\275\051\137
+\264\351\326\130\353\105\021\211\064\064\323\021\353\064\316\052
+\117\000\075\366\162\357\151\146\300\237\232\254\176\160\120\254
+\125\107\332\276\103\133\354\213\310\305\043\204\311\237\266\122
+\010\317\221\033\057\200\151\346\064\063\346\263\237\244\345\015
+\232\025\371\127\374\013\251\101\013\365\377\130\101\222\042\047
+\146\022\006\307\052\330\131\247\306\337\104\022\117\300\250\177
+\247\101\310\310\151\377\272\005\056\227\255\073\320\353\363\025
+\155\176\033\345\272\335\064\276\042\021\354\150\230\063\201\002
+\152\013\023\125\171\061\165\116\072\310\266\023\275\227\157\067
+\012\013\055\210\016\336\147\220\302\263\312\040\312\232\121\364
+\144\076\333\364\056\105\362\307\107\027\250\364\372\220\132\177
+\200\246\202\254\344\154\201\106\273\122\205\040\044\370\200\352
+END
+
+# Trust for Certificate "Bogus live.com"
+# Issuer: CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Serial Number:00:b0:b7:13:3e:d0:96:f9:b5:6f:ae:91:c8:74:bd:3a:c0
+# Subject: CN=login.live.com,OU=PlatinumSSL,OU=Hosted by GTI Group Corporation,OU=Tech Dept.,O=Google Ltd.,STREET=Sea Village 10,L=English,ST=Florida,postalCode=38477,C=US
+# Not Valid Before: Tue Mar 15 00:00:00 2011
+# Not Valid After : Fri Mar 14 23:59:59 2014
+# Fingerprint (MD5): D0:D4:39:E3:CC:5C:52:DD:08:CD:E9:AB:E8:11:59:D4
+# Fingerprint (SHA1): CE:A5:86:B2:CE:59:3E:C7:D9:39:89:83:37:C5:78:14:70:8A:B2:BE
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Bogus live.com"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\316\245\206\262\316\131\076\307\331\071\211\203\067\305\170\024
+\160\212\262\276
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\320\324\071\343\314\134\122\335\010\315\351\253\350\021\131\324
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\227\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
+\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
+\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
+\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\061\037\060\035\006\003\125
+\004\003\023\026\125\124\116\055\125\123\105\122\106\151\162\163
+\164\055\110\141\162\144\167\141\162\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\260\267\023\076\320\226\371\265\157\256\221\310\164
+\275\072\300
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Go Daddy Root Certificate Authority - G2"
+#
+# Issuer: CN=Go Daddy Root Certificate Authority - G2,O="GoDaddy.com, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Serial Number: 0 (0x0)
+# Subject: CN=Go Daddy Root Certificate Authority - G2,O="GoDaddy.com, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Not Valid Before: Tue Sep 01 00:00:00 2009
+# Not Valid After : Thu Dec 31 23:59:59 2037
+# Fingerprint (MD5): 80:3A:BC:22:C1:E6:FB:8D:9B:3B:27:4A:32:1B:9A:01
+# Fingerprint (SHA1): 47:BE:AB:C9:22:EA:E8:0E:78:78:34:62:A7:9F:45:C2:54:FD:E6:8B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Go Daddy Root Certificate Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\203\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\032\060\030\006\003\125\004\012
+\023\021\107\157\104\141\144\144\171\056\143\157\155\054\040\111
+\156\143\056\061\061\060\057\006\003\125\004\003\023\050\107\157
+\040\104\141\144\144\171\040\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164
+\171\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\203\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\032\060\030\006\003\125\004\012
+\023\021\107\157\104\141\144\144\171\056\143\157\155\054\040\111
+\156\143\056\061\061\060\057\006\003\125\004\003\023\050\107\157
+\040\104\141\144\144\171\040\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164
+\171\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\305\060\202\002\255\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\201\203\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157\156
+\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157\164
+\164\163\144\141\154\145\061\032\060\030\006\003\125\004\012\023
+\021\107\157\104\141\144\144\171\056\143\157\155\054\040\111\156
+\143\056\061\061\060\057\006\003\125\004\003\023\050\107\157\040
+\104\141\144\144\171\040\122\157\157\164\040\103\145\162\164\151
+\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171
+\040\055\040\107\062\060\036\027\015\060\071\060\071\060\061\060
+\060\060\060\060\060\132\027\015\063\067\061\062\063\061\062\063
+\065\071\065\071\132\060\201\203\061\013\060\011\006\003\125\004
+\006\023\002\125\123\061\020\060\016\006\003\125\004\010\023\007
+\101\162\151\172\157\156\141\061\023\060\021\006\003\125\004\007
+\023\012\123\143\157\164\164\163\144\141\154\145\061\032\060\030
+\006\003\125\004\012\023\021\107\157\104\141\144\144\171\056\143
+\157\155\054\040\111\156\143\056\061\061\060\057\006\003\125\004
+\003\023\050\107\157\040\104\141\144\144\171\040\122\157\157\164
+\040\103\145\162\164\151\146\151\143\141\164\145\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\062\060\202\001\042\060
+\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202
+\001\017\000\060\202\001\012\002\202\001\001\000\277\161\142\010
+\361\372\131\064\367\033\311\030\243\367\200\111\130\351\042\203
+\023\246\305\040\103\001\073\204\361\346\205\111\237\047\352\366
+\204\033\116\240\264\333\160\230\307\062\001\261\005\076\007\116
+\356\364\372\117\057\131\060\042\347\253\031\126\153\342\200\007
+\374\363\026\165\200\071\121\173\345\371\065\266\164\116\251\215
+\202\023\344\266\077\251\003\203\372\242\276\212\025\152\177\336
+\013\303\266\031\024\005\312\352\303\250\004\224\073\106\174\062
+\015\363\000\146\042\310\215\151\155\066\214\021\030\267\323\262
+\034\140\264\070\372\002\214\316\323\335\106\007\336\012\076\353
+\135\174\310\174\373\260\053\123\244\222\142\151\121\045\005\141
+\032\104\201\214\054\251\103\226\043\337\254\072\201\232\016\051
+\305\034\251\351\135\036\266\236\236\060\012\071\316\361\210\200
+\373\113\135\314\062\354\205\142\103\045\064\002\126\047\001\221
+\264\073\160\052\077\156\261\350\234\210\001\175\237\324\371\333
+\123\155\140\235\277\054\347\130\253\270\137\106\374\316\304\033
+\003\074\011\353\111\061\134\151\106\263\340\107\002\003\001\000
+\001\243\102\060\100\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\035\006\003\125\035\016\004\026\004
+\024\072\232\205\007\020\147\050\266\357\366\275\005\101\156\040
+\301\224\332\017\336\060\015\006\011\052\206\110\206\367\015\001
+\001\013\005\000\003\202\001\001\000\231\333\135\171\325\371\227
+\131\147\003\141\361\176\073\006\061\165\055\241\040\216\117\145
+\207\264\367\246\234\274\330\351\057\320\333\132\356\317\164\214
+\163\264\070\102\332\005\173\370\002\165\270\375\245\261\327\256
+\366\327\336\023\313\123\020\176\212\106\321\227\372\267\056\053
+\021\253\220\260\047\200\371\350\237\132\351\067\237\253\344\337
+\154\263\205\027\235\075\331\044\117\171\221\065\326\137\004\353
+\200\203\253\232\002\055\265\020\364\330\220\307\004\163\100\355
+\162\045\240\251\237\354\236\253\150\022\231\127\306\217\022\072
+\011\244\275\104\375\006\025\067\301\233\344\062\243\355\070\350
+\330\144\363\054\176\024\374\002\352\237\315\377\007\150\027\333
+\042\220\070\055\172\215\321\124\361\151\343\137\063\312\172\075
+\173\012\343\312\177\137\071\345\342\165\272\305\166\030\063\316
+\054\360\057\114\255\367\261\347\316\117\250\304\233\112\124\006
+\305\177\175\325\010\017\342\034\376\176\027\270\254\136\366\324
+\026\262\103\011\014\115\366\247\153\264\231\204\145\312\172\210
+\342\342\104\276\134\367\352\034\365
+END
+
+# Trust for Certificate "Go Daddy Root Certificate Authority - G2"
+# Issuer: CN=Go Daddy Root Certificate Authority - G2,O="GoDaddy.com, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Serial Number: 0 (0x0)
+# Subject: CN=Go Daddy Root Certificate Authority - G2,O="GoDaddy.com, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Not Valid Before: Tue Sep 01 00:00:00 2009
+# Not Valid After : Thu Dec 31 23:59:59 2037
+# Fingerprint (MD5): 80:3A:BC:22:C1:E6:FB:8D:9B:3B:27:4A:32:1B:9A:01
+# Fingerprint (SHA1): 47:BE:AB:C9:22:EA:E8:0E:78:78:34:62:A7:9F:45:C2:54:FD:E6:8B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Go Daddy Root Certificate Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\107\276\253\311\042\352\350\016\170\170\064\142\247\237\105\302
+\124\375\346\213
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\200\072\274\042\301\346\373\215\233\073\047\112\062\033\232\001
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\203\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\032\060\030\006\003\125\004\012
+\023\021\107\157\104\141\144\144\171\056\143\157\155\054\040\111
+\156\143\056\061\061\060\057\006\003\125\004\003\023\050\107\157
+\040\104\141\144\144\171\040\122\157\157\164\040\103\145\162\164
+\151\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164
+\171\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Starfield Root Certificate Authority - G2"
+#
+# Issuer: CN=Starfield Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Serial Number: 0 (0x0)
+# Subject: CN=Starfield Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Not Valid Before: Tue Sep 01 00:00:00 2009
+# Not Valid After : Thu Dec 31 23:59:59 2037
+# Fingerprint (MD5): D6:39:81:C6:52:7E:96:69:FC:FC:CA:66:ED:05:F2:96
+# Fingerprint (SHA1): B5:1C:06:7C:EE:2B:0C:3D:F8:55:AB:2D:92:F4:FE:39:D4:E7:0F:0E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Starfield Root Certificate Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\217\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012
+\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150
+\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061\062
+\060\060\006\003\125\004\003\023\051\123\164\141\162\146\151\145
+\154\144\040\122\157\157\164\040\103\145\162\164\151\146\151\143
+\141\164\145\040\101\165\164\150\157\162\151\164\171\040\055\040
+\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\217\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012
+\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150
+\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061\062
+\060\060\006\003\125\004\003\023\051\123\164\141\162\146\151\145
+\154\144\040\122\157\157\164\040\103\145\162\164\151\146\151\143
+\141\164\145\040\101\165\164\150\157\162\151\164\171\040\055\040
+\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\335\060\202\002\305\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\201\217\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157\156
+\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157\164
+\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012\023
+\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150\156
+\157\154\157\147\151\145\163\054\040\111\156\143\056\061\062\060
+\060\006\003\125\004\003\023\051\123\164\141\162\146\151\145\154
+\144\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141
+\164\145\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\062\060\036\027\015\060\071\060\071\060\061\060\060\060\060\060
+\060\132\027\015\063\067\061\062\063\061\062\063\065\071\065\071
+\132\060\201\217\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172
+\157\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143
+\157\164\164\163\144\141\154\145\061\045\060\043\006\003\125\004
+\012\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143
+\150\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061
+\062\060\060\006\003\125\004\003\023\051\123\164\141\162\146\151
+\145\154\144\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\145\040\101\165\164\150\157\162\151\164\171\040\055
+\040\107\062\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\275\355\301\003\374\366\217\374\002\261\157\133
+\237\110\331\235\171\342\242\267\003\141\126\030\303\107\266\327
+\312\075\065\056\211\103\367\241\151\233\336\212\032\375\023\040
+\234\264\111\167\062\051\126\375\271\354\214\335\042\372\162\334
+\047\141\227\356\366\132\204\354\156\031\271\211\054\334\204\133
+\325\164\373\153\137\305\211\245\020\122\211\106\125\364\270\165
+\034\346\177\344\124\256\113\370\125\162\127\002\031\370\027\161
+\131\353\036\050\007\164\305\235\110\276\154\264\364\244\260\363
+\144\067\171\222\300\354\106\136\177\341\155\123\114\142\257\315
+\037\013\143\273\072\235\373\374\171\000\230\141\164\317\046\202
+\100\143\363\262\162\152\031\015\231\312\324\016\165\314\067\373
+\213\211\301\131\361\142\177\137\263\137\145\060\370\247\267\115
+\166\132\036\166\136\064\300\350\226\126\231\212\263\360\177\244
+\315\275\334\062\061\174\221\317\340\137\021\370\153\252\111\134
+\321\231\224\321\242\343\143\133\011\166\265\126\142\341\113\164
+\035\226\324\046\324\010\004\131\320\230\016\016\346\336\374\303
+\354\037\220\361\002\003\001\000\001\243\102\060\100\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\035
+\006\003\125\035\016\004\026\004\024\174\014\062\037\247\331\060
+\177\304\175\150\243\142\250\241\316\253\007\133\047\060\015\006
+\011\052\206\110\206\367\015\001\001\013\005\000\003\202\001\001
+\000\021\131\372\045\117\003\157\224\231\073\232\037\202\205\071
+\324\166\005\224\136\341\050\223\155\142\135\011\302\240\250\324
+\260\165\070\361\064\152\235\344\237\212\206\046\121\346\054\321
+\306\055\156\225\040\112\222\001\354\270\212\147\173\061\342\147
+\056\214\225\003\046\056\103\235\112\061\366\016\265\014\273\267
+\342\067\177\042\272\000\243\016\173\122\373\153\273\073\304\323
+\171\121\116\315\220\364\147\007\031\310\074\106\172\015\001\175
+\305\130\347\155\346\205\060\027\232\044\304\020\340\004\367\340
+\362\177\324\252\012\377\102\035\067\355\224\345\144\131\022\040
+\167\070\323\062\076\070\201\165\226\163\372\150\217\261\313\316
+\037\305\354\372\234\176\317\176\261\361\007\055\266\374\277\312
+\244\277\320\227\005\112\274\352\030\050\002\220\275\124\170\011
+\041\161\323\321\175\035\331\026\260\251\141\075\320\012\000\042
+\374\307\173\313\011\144\105\013\073\100\201\367\175\174\062\365
+\230\312\130\216\175\052\356\220\131\163\144\371\066\164\136\045
+\241\365\146\005\056\177\071\025\251\052\373\120\213\216\205\151
+\364
+END
+
+# Trust for Certificate "Starfield Root Certificate Authority - G2"
+# Issuer: CN=Starfield Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Serial Number: 0 (0x0)
+# Subject: CN=Starfield Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Not Valid Before: Tue Sep 01 00:00:00 2009
+# Not Valid After : Thu Dec 31 23:59:59 2037
+# Fingerprint (MD5): D6:39:81:C6:52:7E:96:69:FC:FC:CA:66:ED:05:F2:96
+# Fingerprint (SHA1): B5:1C:06:7C:EE:2B:0C:3D:F8:55:AB:2D:92:F4:FE:39:D4:E7:0F:0E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Starfield Root Certificate Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\265\034\006\174\356\053\014\075\370\125\253\055\222\364\376\071
+\324\347\017\016
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\326\071\201\306\122\176\226\151\374\374\312\146\355\005\362\226
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\217\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012
+\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150
+\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061\062
+\060\060\006\003\125\004\003\023\051\123\164\141\162\146\151\145
+\154\144\040\122\157\157\164\040\103\145\162\164\151\146\151\143
+\141\164\145\040\101\165\164\150\157\162\151\164\171\040\055\040
+\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Starfield Services Root Certificate Authority - G2"
+#
+# Issuer: CN=Starfield Services Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Serial Number: 0 (0x0)
+# Subject: CN=Starfield Services Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Not Valid Before: Tue Sep 01 00:00:00 2009
+# Not Valid After : Thu Dec 31 23:59:59 2037
+# Fingerprint (MD5): 17:35:74:AF:7B:61:1C:EB:F4:F9:3C:E2:EE:40:F9:A2
+# Fingerprint (SHA1): 92:5A:8F:8D:2C:6D:04:E0:66:5F:59:6A:FF:22:D8:63:E8:25:6F:3F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Starfield Services Root Certificate Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012
+\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150
+\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061\073
+\060\071\006\003\125\004\003\023\062\123\164\141\162\146\151\145
+\154\144\040\123\145\162\166\151\143\145\163\040\122\157\157\164
+\040\103\145\162\164\151\146\151\143\141\164\145\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012
+\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150
+\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061\073
+\060\071\006\003\125\004\003\023\062\123\164\141\162\146\151\145
+\154\144\040\123\145\162\166\151\143\145\163\040\122\157\157\164
+\040\103\145\162\164\151\146\151\143\141\164\145\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\357\060\202\002\327\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157\156
+\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157\164
+\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012\023
+\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150\156
+\157\154\157\147\151\145\163\054\040\111\156\143\056\061\073\060
+\071\006\003\125\004\003\023\062\123\164\141\162\146\151\145\154
+\144\040\123\145\162\166\151\143\145\163\040\122\157\157\164\040
+\103\145\162\164\151\146\151\143\141\164\145\040\101\165\164\150
+\157\162\151\164\171\040\055\040\107\062\060\036\027\015\060\071
+\060\071\060\061\060\060\060\060\060\060\132\027\015\063\067\061
+\062\063\061\062\063\065\071\065\071\132\060\201\230\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\020\060\016\006\003
+\125\004\010\023\007\101\162\151\172\157\156\141\061\023\060\021
+\006\003\125\004\007\023\012\123\143\157\164\164\163\144\141\154
+\145\061\045\060\043\006\003\125\004\012\023\034\123\164\141\162
+\146\151\145\154\144\040\124\145\143\150\156\157\154\157\147\151
+\145\163\054\040\111\156\143\056\061\073\060\071\006\003\125\004
+\003\023\062\123\164\141\162\146\151\145\154\144\040\123\145\162
+\166\151\143\145\163\040\122\157\157\164\040\103\145\162\164\151
+\146\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171
+\040\055\040\107\062\060\202\001\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
+\012\002\202\001\001\000\325\014\072\304\052\371\116\342\365\276
+\031\227\137\216\210\123\261\037\077\313\317\237\040\023\155\051
+\072\310\017\175\074\367\153\166\070\143\331\066\140\250\233\136
+\134\000\200\262\057\131\177\366\207\371\045\103\206\347\151\033
+\122\232\220\341\161\343\330\055\015\116\157\366\310\111\331\266
+\363\032\126\256\053\266\164\024\353\317\373\046\343\032\272\035
+\226\056\152\073\130\224\211\107\126\377\045\240\223\160\123\203
+\332\204\164\024\303\147\236\004\150\072\337\216\100\132\035\112
+\116\317\103\221\073\347\126\326\000\160\313\122\356\173\175\256
+\072\347\274\061\371\105\366\302\140\317\023\131\002\053\200\314
+\064\107\337\271\336\220\145\155\002\317\054\221\246\246\347\336
+\205\030\111\174\146\116\243\072\155\251\265\356\064\056\272\015
+\003\270\063\337\107\353\261\153\215\045\331\233\316\201\321\105
+\106\062\226\160\207\336\002\016\111\103\205\266\154\163\273\144
+\352\141\101\254\311\324\124\337\207\057\307\042\262\046\314\237
+\131\124\150\237\374\276\052\057\304\125\034\165\100\140\027\205
+\002\125\071\213\177\005\002\003\001\000\001\243\102\060\100\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006
+\060\035\006\003\125\035\016\004\026\004\024\234\137\000\337\252
+\001\327\060\053\070\210\242\270\155\112\234\362\021\221\203\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003\202
+\001\001\000\113\066\246\204\167\151\335\073\031\237\147\043\010
+\157\016\141\311\375\204\334\137\330\066\201\315\330\033\101\055
+\237\140\335\307\032\150\331\321\156\206\341\210\043\317\023\336
+\103\317\342\064\263\004\235\037\051\325\277\370\136\310\325\301
+\275\356\222\157\062\164\362\221\202\057\275\202\102\172\255\052
+\267\040\175\115\274\172\125\022\302\025\352\275\367\152\225\056
+\154\164\237\317\034\264\362\305\001\243\205\320\162\076\255\163
+\253\013\233\165\014\155\105\267\216\224\254\226\067\265\240\320
+\217\025\107\016\343\350\203\335\217\375\357\101\001\167\314\047
+\251\142\205\063\362\067\010\357\161\317\167\006\336\310\031\035
+\210\100\317\175\106\035\377\036\307\341\316\377\043\333\306\372
+\215\125\116\251\002\347\107\021\106\076\364\375\275\173\051\046
+\273\251\141\142\067\050\266\055\052\366\020\206\144\311\160\247
+\322\255\267\051\160\171\352\074\332\143\045\237\375\150\267\060
+\354\160\373\165\212\267\155\140\147\262\036\310\271\351\330\250
+\157\002\213\147\015\115\046\127\161\332\040\374\301\112\120\215
+\261\050\272
+END
+
+# Trust for Certificate "Starfield Services Root Certificate Authority - G2"
+# Issuer: CN=Starfield Services Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Serial Number: 0 (0x0)
+# Subject: CN=Starfield Services Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
+# Not Valid Before: Tue Sep 01 00:00:00 2009
+# Not Valid After : Thu Dec 31 23:59:59 2037
+# Fingerprint (MD5): 17:35:74:AF:7B:61:1C:EB:F4:F9:3C:E2:EE:40:F9:A2
+# Fingerprint (SHA1): 92:5A:8F:8D:2C:6D:04:E0:66:5F:59:6A:FF:22:D8:63:E8:25:6F:3F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Starfield Services Root Certificate Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\222\132\217\215\054\155\004\340\146\137\131\152\377\042\330\143
+\350\045\157\077
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\027\065\164\257\173\141\034\353\364\371\074\342\356\100\371\242
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\020\060\016\006\003\125\004\010\023\007\101\162\151\172\157
+\156\141\061\023\060\021\006\003\125\004\007\023\012\123\143\157
+\164\164\163\144\141\154\145\061\045\060\043\006\003\125\004\012
+\023\034\123\164\141\162\146\151\145\154\144\040\124\145\143\150
+\156\157\154\157\147\151\145\163\054\040\111\156\143\056\061\073
+\060\071\006\003\125\004\003\023\062\123\164\141\162\146\151\145
+\154\144\040\123\145\162\166\151\143\145\163\040\122\157\157\164
+\040\103\145\162\164\151\146\151\143\141\164\145\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AffirmTrust Commercial"
+#
+# Issuer: CN=AffirmTrust Commercial,O=AffirmTrust,C=US
+# Serial Number:77:77:06:27:26:a9:b1:7c
+# Subject: CN=AffirmTrust Commercial,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:06:06 2010
+# Not Valid After : Tue Dec 31 14:06:06 2030
+# Fingerprint (MD5): 82:92:BA:5B:EF:CD:8A:6F:A6:3D:55:F9:84:F6:D6:B7
+# Fingerprint (SHA1): F9:B5:B6:32:45:5F:9C:BE:EC:57:5F:80:DC:E9:6E:2C:C7:B2:78:B7
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Commercial"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\037\060\035\006\003\125\004\003\014\026
+\101\146\146\151\162\155\124\162\165\163\164\040\103\157\155\155
+\145\162\143\151\141\154
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\037\060\035\006\003\125\004\003\014\026
+\101\146\146\151\162\155\124\162\165\163\164\040\103\157\155\155
+\145\162\143\151\141\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\167\167\006\047\046\251\261\174
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\114\060\202\002\064\240\003\002\001\002\002\010\167
+\167\006\047\046\251\261\174\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\060\104\061\013\060\011\006\003\125\004
+\006\023\002\125\123\061\024\060\022\006\003\125\004\012\014\013
+\101\146\146\151\162\155\124\162\165\163\164\061\037\060\035\006
+\003\125\004\003\014\026\101\146\146\151\162\155\124\162\165\163
+\164\040\103\157\155\155\145\162\143\151\141\154\060\036\027\015
+\061\060\060\061\062\071\061\064\060\066\060\066\132\027\015\063
+\060\061\062\063\061\061\064\060\066\060\066\132\060\104\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\024\060\022\006
+\003\125\004\012\014\013\101\146\146\151\162\155\124\162\165\163
+\164\061\037\060\035\006\003\125\004\003\014\026\101\146\146\151
+\162\155\124\162\165\163\164\040\103\157\155\155\145\162\143\151
+\141\154\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\366\033\117\147\007\053\241\025\365\006\042\313\037
+\001\262\343\163\105\006\104\111\054\273\111\045\024\326\316\303
+\267\253\054\117\306\101\062\224\127\372\022\247\133\016\342\217
+\037\036\206\031\247\252\265\055\271\137\015\212\302\257\205\065
+\171\062\055\273\034\142\067\362\261\133\112\075\312\315\161\137
+\351\102\276\224\350\310\336\371\042\110\144\306\345\253\306\053
+\155\255\005\360\372\325\013\317\232\345\360\120\244\213\073\107
+\245\043\133\172\172\370\063\077\270\357\231\227\343\040\301\326
+\050\211\317\224\373\271\105\355\343\100\027\021\324\164\360\013
+\061\342\053\046\152\233\114\127\256\254\040\076\272\105\172\005
+\363\275\233\151\025\256\175\116\040\143\304\065\166\072\007\002
+\311\067\375\307\107\356\350\361\166\035\163\025\362\227\244\265
+\310\172\171\331\102\252\053\177\134\376\316\046\117\243\146\201
+\065\257\104\272\124\036\034\060\062\145\235\346\074\223\136\120
+\116\172\343\072\324\156\314\032\373\371\322\067\256\044\052\253
+\127\003\042\050\015\111\165\177\267\050\332\165\277\216\343\334
+\016\171\061\002\003\001\000\001\243\102\060\100\060\035\006\003
+\125\035\016\004\026\004\024\235\223\306\123\213\136\312\257\077
+\237\036\017\345\231\225\274\044\366\224\217\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\015\006\011
+\052\206\110\206\367\015\001\001\013\005\000\003\202\001\001\000
+\130\254\364\004\016\315\300\015\377\012\375\324\272\026\137\051
+\275\173\150\231\130\111\322\264\035\067\115\177\047\175\106\006
+\135\103\306\206\056\076\163\262\046\175\117\223\251\266\304\052
+\232\253\041\227\024\261\336\214\323\253\211\025\330\153\044\324
+\361\026\256\330\244\134\324\177\121\216\355\030\001\261\223\143
+\275\274\370\141\200\232\236\261\316\102\160\342\251\175\006\045
+\175\047\241\376\157\354\263\036\044\332\343\113\125\032\000\073
+\065\264\073\331\327\135\060\375\201\023\211\362\302\006\053\355
+\147\304\216\311\103\262\134\153\025\211\002\274\142\374\116\362
+\265\063\252\262\157\323\012\242\120\343\366\073\350\056\104\302
+\333\146\070\251\063\126\110\361\155\033\063\215\015\214\077\140
+\067\235\323\312\155\176\064\176\015\237\162\166\213\033\237\162
+\375\122\065\101\105\002\226\057\034\262\232\163\111\041\261\111
+\107\105\107\264\357\152\064\021\311\115\232\314\131\267\326\002
+\236\132\116\145\265\224\256\033\337\051\260\026\361\277\000\236
+\007\072\027\144\265\004\265\043\041\231\012\225\073\227\174\357
+END
+
+# Trust for Certificate "AffirmTrust Commercial"
+# Issuer: CN=AffirmTrust Commercial,O=AffirmTrust,C=US
+# Serial Number:77:77:06:27:26:a9:b1:7c
+# Subject: CN=AffirmTrust Commercial,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:06:06 2010
+# Not Valid After : Tue Dec 31 14:06:06 2030
+# Fingerprint (MD5): 82:92:BA:5B:EF:CD:8A:6F:A6:3D:55:F9:84:F6:D6:B7
+# Fingerprint (SHA1): F9:B5:B6:32:45:5F:9C:BE:EC:57:5F:80:DC:E9:6E:2C:C7:B2:78:B7
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Commercial"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\371\265\266\062\105\137\234\276\354\127\137\200\334\351\156\054
+\307\262\170\267
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\202\222\272\133\357\315\212\157\246\075\125\371\204\366\326\267
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\037\060\035\006\003\125\004\003\014\026
+\101\146\146\151\162\155\124\162\165\163\164\040\103\157\155\155
+\145\162\143\151\141\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\167\167\006\047\046\251\261\174
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AffirmTrust Networking"
+#
+# Issuer: CN=AffirmTrust Networking,O=AffirmTrust,C=US
+# Serial Number:7c:4f:04:39:1c:d4:99:2d
+# Subject: CN=AffirmTrust Networking,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:08:24 2010
+# Not Valid After : Tue Dec 31 14:08:24 2030
+# Fingerprint (MD5): 42:65:CA:BE:01:9A:9A:4C:A9:8C:41:49:CD:C0:D5:7F
+# Fingerprint (SHA1): 29:36:21:02:8B:20:ED:02:F5:66:C5:32:D1:D6:ED:90:9F:45:00:2F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Networking"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\037\060\035\006\003\125\004\003\014\026
+\101\146\146\151\162\155\124\162\165\163\164\040\116\145\164\167
+\157\162\153\151\156\147
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\037\060\035\006\003\125\004\003\014\026
+\101\146\146\151\162\155\124\162\165\163\164\040\116\145\164\167
+\157\162\153\151\156\147
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\174\117\004\071\034\324\231\055
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\114\060\202\002\064\240\003\002\001\002\002\010\174
+\117\004\071\034\324\231\055\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\060\104\061\013\060\011\006\003\125\004
+\006\023\002\125\123\061\024\060\022\006\003\125\004\012\014\013
+\101\146\146\151\162\155\124\162\165\163\164\061\037\060\035\006
+\003\125\004\003\014\026\101\146\146\151\162\155\124\162\165\163
+\164\040\116\145\164\167\157\162\153\151\156\147\060\036\027\015
+\061\060\060\061\062\071\061\064\060\070\062\064\132\027\015\063
+\060\061\062\063\061\061\064\060\070\062\064\132\060\104\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\024\060\022\006
+\003\125\004\012\014\013\101\146\146\151\162\155\124\162\165\163
+\164\061\037\060\035\006\003\125\004\003\014\026\101\146\146\151
+\162\155\124\162\165\163\164\040\116\145\164\167\157\162\153\151
+\156\147\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\264\204\314\063\027\056\153\224\154\153\141\122\240
+\353\243\317\171\224\114\345\224\200\231\313\125\144\104\145\217
+\147\144\342\006\343\134\067\111\366\057\233\204\204\036\055\362
+\140\235\060\116\314\204\205\342\054\317\036\236\376\066\253\063
+\167\065\104\330\065\226\032\075\066\350\172\016\330\325\107\241
+\152\151\213\331\374\273\072\256\171\132\325\364\326\161\273\232
+\220\043\153\232\267\210\164\207\014\036\137\271\236\055\372\253
+\123\053\334\273\166\076\223\114\010\010\214\036\242\043\034\324
+\152\255\042\272\231\001\056\155\145\313\276\044\146\125\044\113
+\100\104\261\033\327\341\302\205\300\336\020\077\075\355\270\374
+\361\361\043\123\334\277\145\227\157\331\371\100\161\215\175\275
+\225\324\316\276\240\136\047\043\336\375\246\320\046\016\000\051
+\353\074\106\360\075\140\277\077\120\322\334\046\101\121\236\024
+\067\102\004\243\160\127\250\033\207\355\055\372\173\356\214\012
+\343\251\146\211\031\313\101\371\335\104\066\141\317\342\167\106
+\310\175\366\364\222\201\066\375\333\064\361\162\176\363\014\026
+\275\264\025\002\003\001\000\001\243\102\060\100\060\035\006\003
+\125\035\016\004\026\004\024\007\037\322\347\234\332\302\156\242
+\100\264\260\172\120\020\120\164\304\310\275\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000
+\211\127\262\026\172\250\302\375\326\331\233\233\064\302\234\264
+\062\024\115\247\244\337\354\276\247\276\370\103\333\221\067\316
+\264\062\056\120\125\032\065\116\166\103\161\040\357\223\167\116
+\025\160\056\207\303\301\035\155\334\313\265\047\324\054\126\321
+\122\123\072\104\322\163\310\304\033\005\145\132\142\222\234\356
+\101\215\061\333\347\064\352\131\041\325\001\172\327\144\270\144
+\071\315\311\355\257\355\113\003\110\247\240\231\001\200\334\145
+\243\066\256\145\131\110\117\202\113\310\145\361\127\035\345\131
+\056\012\077\154\330\321\365\345\011\264\154\124\000\012\340\025
+\115\207\165\155\267\130\226\132\335\155\322\000\240\364\233\110
+\276\303\067\244\272\066\340\174\207\205\227\032\025\242\336\056
+\242\133\275\257\030\371\220\120\315\160\131\370\047\147\107\313
+\307\240\007\072\175\321\054\135\154\031\072\146\265\175\375\221
+\157\202\261\276\010\223\333\024\107\361\242\067\307\105\236\074
+\307\167\257\144\250\223\337\366\151\203\202\140\362\111\102\064
+\355\132\000\124\205\034\026\066\222\014\134\372\246\255\277\333
+END
+
+# Trust for Certificate "AffirmTrust Networking"
+# Issuer: CN=AffirmTrust Networking,O=AffirmTrust,C=US
+# Serial Number:7c:4f:04:39:1c:d4:99:2d
+# Subject: CN=AffirmTrust Networking,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:08:24 2010
+# Not Valid After : Tue Dec 31 14:08:24 2030
+# Fingerprint (MD5): 42:65:CA:BE:01:9A:9A:4C:A9:8C:41:49:CD:C0:D5:7F
+# Fingerprint (SHA1): 29:36:21:02:8B:20:ED:02:F5:66:C5:32:D1:D6:ED:90:9F:45:00:2F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Networking"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\051\066\041\002\213\040\355\002\365\146\305\062\321\326\355\220
+\237\105\000\057
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\102\145\312\276\001\232\232\114\251\214\101\111\315\300\325\177
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\104\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\037\060\035\006\003\125\004\003\014\026
+\101\146\146\151\162\155\124\162\165\163\164\040\116\145\164\167
+\157\162\153\151\156\147
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\174\117\004\071\034\324\231\055
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AffirmTrust Premium"
+#
+# Issuer: CN=AffirmTrust Premium,O=AffirmTrust,C=US
+# Serial Number:6d:8c:14:46:b1:a6:0a:ee
+# Subject: CN=AffirmTrust Premium,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:10:36 2010
+# Not Valid After : Mon Dec 31 14:10:36 2040
+# Fingerprint (MD5): C4:5D:0E:48:B6:AC:28:30:4E:0A:BC:F9:38:16:87:57
+# Fingerprint (SHA1): D8:A6:33:2C:E0:03:6F:B1:85:F6:63:4F:7D:6A:06:65:26:32:28:27
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Premium"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\101\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\034\060\032\006\003\125\004\003\014\023
+\101\146\146\151\162\155\124\162\165\163\164\040\120\162\145\155
+\151\165\155
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\101\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\034\060\032\006\003\125\004\003\014\023
+\101\146\146\151\162\155\124\162\165\163\164\040\120\162\145\155
+\151\165\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\155\214\024\106\261\246\012\356
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\106\060\202\003\056\240\003\002\001\002\002\010\155
+\214\024\106\261\246\012\356\060\015\006\011\052\206\110\206\367
+\015\001\001\014\005\000\060\101\061\013\060\011\006\003\125\004
+\006\023\002\125\123\061\024\060\022\006\003\125\004\012\014\013
+\101\146\146\151\162\155\124\162\165\163\164\061\034\060\032\006
+\003\125\004\003\014\023\101\146\146\151\162\155\124\162\165\163
+\164\040\120\162\145\155\151\165\155\060\036\027\015\061\060\060
+\061\062\071\061\064\061\060\063\066\132\027\015\064\060\061\062
+\063\061\061\064\061\060\063\066\132\060\101\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\024\060\022\006\003\125\004
+\012\014\013\101\146\146\151\162\155\124\162\165\163\164\061\034
+\060\032\006\003\125\004\003\014\023\101\146\146\151\162\155\124
+\162\165\163\164\040\120\162\145\155\151\165\155\060\202\002\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\002\017\000\060\202\002\012\002\202\002\001\000\304\022\337
+\251\137\376\101\335\335\365\237\212\343\366\254\341\074\170\232
+\274\330\360\177\172\240\063\052\334\215\040\133\256\055\157\347
+\223\331\066\160\152\150\317\216\121\243\205\133\147\004\240\020
+\044\157\135\050\202\301\227\127\330\110\051\023\266\341\276\221
+\115\337\205\014\123\030\232\036\044\242\117\217\360\242\205\013
+\313\364\051\177\322\244\130\356\046\115\311\252\250\173\232\331
+\372\070\336\104\127\025\345\370\214\310\331\110\342\015\026\047
+\035\036\310\203\205\045\267\272\252\125\101\314\003\042\113\055
+\221\215\213\346\211\257\146\307\351\377\053\351\074\254\332\322
+\263\303\341\150\234\211\370\172\000\126\336\364\125\225\154\373
+\272\144\335\142\213\337\013\167\062\353\142\314\046\232\233\273
+\252\142\203\114\264\006\172\060\310\051\277\355\006\115\227\271
+\034\304\061\053\325\137\274\123\022\027\234\231\127\051\146\167
+\141\041\061\007\056\045\111\235\030\362\356\363\053\161\214\265
+\272\071\007\111\167\374\357\056\222\220\005\215\055\057\167\173
+\357\103\277\065\273\232\330\371\163\247\054\362\320\127\356\050
+\116\046\137\217\220\150\011\057\270\370\334\006\351\056\232\076
+\121\247\321\042\304\012\247\070\110\154\263\371\377\175\253\206
+\127\343\272\326\205\170\167\272\103\352\110\177\366\330\276\043
+\155\036\277\321\066\154\130\134\361\356\244\031\124\032\365\003
+\322\166\346\341\214\275\074\263\323\110\113\342\310\370\177\222
+\250\166\106\234\102\145\076\244\036\301\007\003\132\106\055\270
+\227\363\267\325\262\125\041\357\272\334\114\000\227\373\024\225
+\047\063\277\350\103\107\106\322\010\231\026\140\073\232\176\322
+\346\355\070\352\354\001\036\074\110\126\111\011\307\114\067\000
+\236\210\016\300\163\341\157\146\351\162\107\060\076\020\345\013
+\003\311\232\102\000\154\305\224\176\141\304\212\337\177\202\032
+\013\131\304\131\062\167\263\274\140\151\126\071\375\264\006\173
+\054\326\144\066\331\275\110\355\204\037\176\245\042\217\052\270
+\102\364\202\267\324\123\220\170\116\055\032\375\201\157\104\327
+\073\001\164\226\102\340\000\342\056\153\352\305\356\162\254\273
+\277\376\352\252\250\370\334\366\262\171\212\266\147\002\003\001
+\000\001\243\102\060\100\060\035\006\003\125\035\016\004\026\004
+\024\235\300\147\246\014\042\331\046\365\105\253\246\145\122\021
+\047\330\105\254\143\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\015\006\011\052\206\110\206\367\015
+\001\001\014\005\000\003\202\002\001\000\263\127\115\020\142\116
+\072\344\254\352\270\034\257\062\043\310\263\111\132\121\234\166
+\050\215\171\252\127\106\027\325\365\122\366\267\104\350\010\104
+\277\030\204\322\013\200\315\305\022\375\000\125\005\141\207\101
+\334\265\044\236\074\304\330\310\373\160\236\057\170\226\203\040
+\066\336\174\017\151\023\210\245\165\066\230\010\246\306\337\254
+\316\343\130\326\267\076\336\272\363\353\064\100\330\242\201\365
+\170\077\057\325\245\374\331\242\324\136\004\016\027\255\376\101
+\360\345\262\162\372\104\202\063\102\350\055\130\367\126\214\142
+\077\272\102\260\234\014\134\176\056\145\046\134\123\117\000\262
+\170\176\241\015\231\055\215\270\035\216\242\304\260\375\140\320
+\060\244\216\310\004\142\251\304\355\065\336\172\227\355\016\070
+\136\222\057\223\160\245\251\234\157\247\175\023\035\176\306\010
+\110\261\136\147\353\121\010\045\351\346\045\153\122\051\221\234
+\322\071\163\010\127\336\231\006\264\133\235\020\006\341\302\000
+\250\270\034\112\002\012\024\320\301\101\312\373\214\065\041\175
+\202\070\362\251\124\221\031\065\223\224\155\152\072\305\262\320
+\273\211\206\223\350\233\311\017\072\247\172\270\241\360\170\106
+\372\374\067\057\345\212\204\363\337\376\004\331\241\150\240\057
+\044\342\011\225\006\325\225\312\341\044\226\353\174\366\223\005
+\273\355\163\351\055\321\165\071\327\347\044\333\330\116\137\103
+\217\236\320\024\071\277\125\160\110\231\127\061\264\234\356\112
+\230\003\226\060\037\140\006\356\033\043\376\201\140\043\032\107
+\142\205\245\314\031\064\200\157\263\254\032\343\237\360\173\110
+\255\325\001\331\147\266\251\162\223\352\055\146\265\262\270\344
+\075\074\262\357\114\214\352\353\007\277\253\065\232\125\206\274
+\030\246\265\250\136\264\203\154\153\151\100\323\237\334\361\303
+\151\153\271\341\155\011\364\361\252\120\166\012\172\175\172\027
+\241\125\226\102\231\061\011\335\140\021\215\005\060\176\346\216
+\106\321\235\024\332\307\027\344\005\226\214\304\044\265\033\317
+\024\007\262\100\370\243\236\101\206\274\004\320\153\226\310\052
+\200\064\375\277\357\006\243\335\130\305\205\075\076\217\376\236
+\051\340\266\270\011\150\031\034\030\103
+END
+
+# Trust for Certificate "AffirmTrust Premium"
+# Issuer: CN=AffirmTrust Premium,O=AffirmTrust,C=US
+# Serial Number:6d:8c:14:46:b1:a6:0a:ee
+# Subject: CN=AffirmTrust Premium,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:10:36 2010
+# Not Valid After : Mon Dec 31 14:10:36 2040
+# Fingerprint (MD5): C4:5D:0E:48:B6:AC:28:30:4E:0A:BC:F9:38:16:87:57
+# Fingerprint (SHA1): D8:A6:33:2C:E0:03:6F:B1:85:F6:63:4F:7D:6A:06:65:26:32:28:27
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Premium"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\330\246\063\054\340\003\157\261\205\366\143\117\175\152\006\145
+\046\062\050\047
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\304\135\016\110\266\254\050\060\116\012\274\371\070\026\207\127
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\101\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\034\060\032\006\003\125\004\003\014\023
+\101\146\146\151\162\155\124\162\165\163\164\040\120\162\145\155
+\151\165\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\155\214\024\106\261\246\012\356
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "AffirmTrust Premium ECC"
+#
+# Issuer: CN=AffirmTrust Premium ECC,O=AffirmTrust,C=US
+# Serial Number:74:97:25:8a:c7:3f:7a:54
+# Subject: CN=AffirmTrust Premium ECC,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:20:24 2010
+# Not Valid After : Mon Dec 31 14:20:24 2040
+# Fingerprint (MD5): 64:B0:09:55:CF:B1:D5:99:E2:BE:13:AB:A6:5D:EA:4D
+# Fingerprint (SHA1): B8:23:6B:00:2F:1D:16:86:53:01:55:6C:11:A4:37:CA:EB:FF:C3:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Premium ECC"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\040\060\036\006\003\125\004\003\014\027
+\101\146\146\151\162\155\124\162\165\163\164\040\120\162\145\155
+\151\165\155\040\105\103\103
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\040\060\036\006\003\125\004\003\014\027
+\101\146\146\151\162\155\124\162\165\163\164\040\120\162\145\155
+\151\165\155\040\105\103\103
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\164\227\045\212\307\077\172\124
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\001\376\060\202\001\205\240\003\002\001\002\002\010\164
+\227\045\212\307\077\172\124\060\012\006\010\052\206\110\316\075
+\004\003\003\060\105\061\013\060\011\006\003\125\004\006\023\002
+\125\123\061\024\060\022\006\003\125\004\012\014\013\101\146\146
+\151\162\155\124\162\165\163\164\061\040\060\036\006\003\125\004
+\003\014\027\101\146\146\151\162\155\124\162\165\163\164\040\120
+\162\145\155\151\165\155\040\105\103\103\060\036\027\015\061\060
+\060\061\062\071\061\064\062\060\062\064\132\027\015\064\060\061
+\062\063\061\061\064\062\060\062\064\132\060\105\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\024\060\022\006\003\125
+\004\012\014\013\101\146\146\151\162\155\124\162\165\163\164\061
+\040\060\036\006\003\125\004\003\014\027\101\146\146\151\162\155
+\124\162\165\163\164\040\120\162\145\155\151\165\155\040\105\103
+\103\060\166\060\020\006\007\052\206\110\316\075\002\001\006\005
+\053\201\004\000\042\003\142\000\004\015\060\136\033\025\235\003
+\320\241\171\065\267\072\074\222\172\312\025\034\315\142\363\234
+\046\134\007\075\345\124\372\243\326\314\022\352\364\024\137\350
+\216\031\253\057\056\110\346\254\030\103\170\254\320\067\303\275
+\262\315\054\346\107\342\032\346\143\270\075\056\057\170\304\117
+\333\364\017\244\150\114\125\162\153\225\035\116\030\102\225\170
+\314\067\074\221\342\233\145\053\051\243\102\060\100\060\035\006
+\003\125\035\016\004\026\004\024\232\257\051\172\300\021\065\065
+\046\121\060\000\303\152\376\100\325\256\326\074\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\012\006
+\010\052\206\110\316\075\004\003\003\003\147\000\060\144\002\060
+\027\011\363\207\210\120\132\257\310\300\102\277\107\137\365\154
+\152\206\340\304\047\164\344\070\123\327\005\177\033\064\343\306
+\057\263\312\011\074\067\235\327\347\270\106\361\375\241\342\161
+\002\060\102\131\207\103\324\121\337\272\323\011\062\132\316\210
+\176\127\075\234\137\102\153\365\007\055\265\360\202\223\371\131
+\157\256\144\372\130\345\213\036\343\143\276\265\201\315\157\002
+\214\171
+END
+
+# Trust for Certificate "AffirmTrust Premium ECC"
+# Issuer: CN=AffirmTrust Premium ECC,O=AffirmTrust,C=US
+# Serial Number:74:97:25:8a:c7:3f:7a:54
+# Subject: CN=AffirmTrust Premium ECC,O=AffirmTrust,C=US
+# Not Valid Before: Fri Jan 29 14:20:24 2010
+# Not Valid After : Mon Dec 31 14:20:24 2040
+# Fingerprint (MD5): 64:B0:09:55:CF:B1:D5:99:E2:BE:13:AB:A6:5D:EA:4D
+# Fingerprint (SHA1): B8:23:6B:00:2F:1D:16:86:53:01:55:6C:11:A4:37:CA:EB:FF:C3:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "AffirmTrust Premium ECC"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\270\043\153\000\057\035\026\206\123\001\125\154\021\244\067\312
+\353\377\303\273
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\144\260\011\125\317\261\325\231\342\276\023\253\246\135\352\115
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\024\060\022\006\003\125\004\012\014\013\101\146\146\151\162\155
+\124\162\165\163\164\061\040\060\036\006\003\125\004\003\014\027
+\101\146\146\151\162\155\124\162\165\163\164\040\120\162\145\155
+\151\165\155\040\105\103\103
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\164\227\045\212\307\077\172\124
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Certum Trusted Network CA"
+#
+# Issuer: CN=Certum Trusted Network CA,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL
+# Serial Number: 279744 (0x444c0)
+# Subject: CN=Certum Trusted Network CA,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL
+# Not Valid Before: Wed Oct 22 12:07:37 2008
+# Not Valid After : Mon Dec 31 12:07:37 2029
+# Fingerprint (MD5): D5:E9:81:40:C5:18:69:FC:46:2C:89:75:62:0F:AA:78
+# Fingerprint (SHA1): 07:E0:32:E0:20:B7:2C:3F:19:2F:06:28:A2:59:3A:19:A7:0F:06:9E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certum Trusted Network CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\176\061\013\060\011\006\003\125\004\006\023\002\120\114\061
+\042\060\040\006\003\125\004\012\023\031\125\156\151\172\145\164
+\157\040\124\145\143\150\156\157\154\157\147\151\145\163\040\123
+\056\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145
+\162\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\061\042\060\040
+\006\003\125\004\003\023\031\103\145\162\164\165\155\040\124\162
+\165\163\164\145\144\040\116\145\164\167\157\162\153\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\176\061\013\060\011\006\003\125\004\006\023\002\120\114\061
+\042\060\040\006\003\125\004\012\023\031\125\156\151\172\145\164
+\157\040\124\145\143\150\156\157\154\157\147\151\145\163\040\123
+\056\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145
+\162\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\061\042\060\040
+\006\003\125\004\003\023\031\103\145\162\164\165\155\040\124\162
+\165\163\164\145\144\040\116\145\164\167\157\162\153\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\004\104\300
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\273\060\202\002\243\240\003\002\001\002\002\003\004
+\104\300\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\060\176\061\013\060\011\006\003\125\004\006\023\002\120\114
+\061\042\060\040\006\003\125\004\012\023\031\125\156\151\172\145
+\164\157\040\124\145\143\150\156\157\154\157\147\151\145\163\040
+\123\056\101\056\061\047\060\045\006\003\125\004\013\023\036\103
+\145\162\164\165\155\040\103\145\162\164\151\146\151\143\141\164
+\151\157\156\040\101\165\164\150\157\162\151\164\171\061\042\060
+\040\006\003\125\004\003\023\031\103\145\162\164\165\155\040\124
+\162\165\163\164\145\144\040\116\145\164\167\157\162\153\040\103
+\101\060\036\027\015\060\070\061\060\062\062\061\062\060\067\063
+\067\132\027\015\062\071\061\062\063\061\061\062\060\067\063\067
+\132\060\176\061\013\060\011\006\003\125\004\006\023\002\120\114
+\061\042\060\040\006\003\125\004\012\023\031\125\156\151\172\145
+\164\157\040\124\145\143\150\156\157\154\157\147\151\145\163\040
+\123\056\101\056\061\047\060\045\006\003\125\004\013\023\036\103
+\145\162\164\165\155\040\103\145\162\164\151\146\151\143\141\164
+\151\157\156\040\101\165\164\150\157\162\151\164\171\061\042\060
+\040\006\003\125\004\003\023\031\103\145\162\164\165\155\040\124
+\162\165\163\164\145\144\040\116\145\164\167\157\162\153\040\103
+\101\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\343\373\175\243\162\272\302\360\311\024\207\365\153\001
+\116\341\156\100\007\272\155\047\135\177\367\133\055\263\132\307
+\121\137\253\244\062\246\141\207\266\156\017\206\322\060\002\227
+\370\327\151\127\241\030\071\135\152\144\171\306\001\131\254\074
+\061\112\070\174\322\004\322\113\050\350\040\137\073\007\242\314
+\115\163\333\363\256\117\307\126\325\132\247\226\211\372\363\253
+\150\324\043\206\131\047\317\011\047\274\254\156\162\203\034\060
+\162\337\340\242\351\322\341\164\165\031\275\052\236\173\025\124
+\004\033\327\103\071\255\125\050\305\342\032\273\364\300\344\256
+\070\111\063\314\166\205\237\071\105\322\244\236\362\022\214\121
+\370\174\344\055\177\365\254\137\353\026\237\261\055\321\272\314
+\221\102\167\114\045\311\220\070\157\333\360\314\373\216\036\227
+\131\076\325\140\116\346\005\050\355\111\171\023\113\272\110\333
+\057\371\162\323\071\312\376\037\330\064\162\365\264\100\317\061
+\001\303\354\336\021\055\027\135\037\270\120\321\136\031\247\151
+\336\007\063\050\312\120\225\371\247\124\313\124\206\120\105\251
+\371\111\002\003\001\000\001\243\102\060\100\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\035\006\003
+\125\035\016\004\026\004\024\010\166\315\313\007\377\044\366\305
+\315\355\273\220\274\342\204\067\106\165\367\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000\246
+\250\255\042\316\001\075\246\243\377\142\320\110\235\213\136\162
+\260\170\104\343\334\034\257\011\375\043\110\372\275\052\304\271
+\125\004\265\020\243\215\047\336\013\202\143\320\356\336\014\067
+\171\101\133\042\262\260\232\101\134\246\160\340\324\320\167\313
+\043\323\000\340\154\126\057\341\151\015\015\331\252\277\041\201
+\120\331\006\245\250\377\225\067\320\252\376\342\263\365\231\055
+\105\204\212\345\102\011\327\164\002\057\367\211\330\231\351\274
+\047\324\107\215\272\015\106\034\167\317\024\244\034\271\244\061
+\304\234\050\164\003\064\377\063\031\046\245\351\015\164\267\076
+\227\306\166\350\047\226\243\146\335\341\256\362\101\133\312\230
+\126\203\163\160\344\206\032\322\061\101\272\057\276\055\023\132
+\166\157\116\350\116\201\016\077\133\003\042\240\022\276\146\130
+\021\112\313\003\304\264\052\052\055\226\027\340\071\124\274\110
+\323\166\047\235\232\055\006\246\311\354\071\322\253\333\237\232
+\013\047\002\065\051\261\100\225\347\371\350\234\125\210\031\106
+\326\267\064\365\176\316\071\232\331\070\361\121\367\117\054
+END
+
+# Trust for Certificate "Certum Trusted Network CA"
+# Issuer: CN=Certum Trusted Network CA,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL
+# Serial Number: 279744 (0x444c0)
+# Subject: CN=Certum Trusted Network CA,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL
+# Not Valid Before: Wed Oct 22 12:07:37 2008
+# Not Valid After : Mon Dec 31 12:07:37 2029
+# Fingerprint (MD5): D5:E9:81:40:C5:18:69:FC:46:2C:89:75:62:0F:AA:78
+# Fingerprint (SHA1): 07:E0:32:E0:20:B7:2C:3F:19:2F:06:28:A2:59:3A:19:A7:0F:06:9E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certum Trusted Network CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\007\340\062\340\040\267\054\077\031\057\006\050\242\131\072\031
+\247\017\006\236
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\325\351\201\100\305\030\151\374\106\054\211\165\142\017\252\170
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\176\061\013\060\011\006\003\125\004\006\023\002\120\114\061
+\042\060\040\006\003\125\004\012\023\031\125\156\151\172\145\164
+\157\040\124\145\143\150\156\157\154\157\147\151\145\163\040\123
+\056\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145
+\162\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\061\042\060\040
+\006\003\125\004\003\023\031\103\145\162\164\165\155\040\124\162
+\165\163\164\145\144\040\116\145\164\167\157\162\153\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\004\104\300
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Certinomis - Autorité Racine"
+#
+# Issuer: CN=Certinomis - Autorit.. Racine,OU=0002 433998903,O=Certinomis,C=FR
+# Serial Number: 1 (0x1)
+# Subject: CN=Certinomis - Autorit.. Racine,OU=0002 433998903,O=Certinomis,C=FR
+# Not Valid Before: Wed Sep 17 08:28:59 2008
+# Not Valid After : Sun Sep 17 08:28:59 2028
+# Fingerprint (MD5): 7F:30:78:8C:03:E3:CA:C9:0A:E2:C9:EA:1E:AA:55:1A
+# Fingerprint (SHA1): 2E:14:DA:EC:28:F0:FA:1E:8E:38:9A:4E:AB:EB:26:C0:0A:D3:83:C3
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certinomis - Autorité Racine"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\143\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\023\060\021\006\003\125\004\012\023\012\103\145\162\164\151\156
+\157\155\151\163\061\027\060\025\006\003\125\004\013\023\016\060
+\060\060\062\040\064\063\063\071\071\070\071\060\063\061\046\060
+\044\006\003\125\004\003\014\035\103\145\162\164\151\156\157\155
+\151\163\040\055\040\101\165\164\157\162\151\164\303\251\040\122
+\141\143\151\156\145
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\143\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\023\060\021\006\003\125\004\012\023\012\103\145\162\164\151\156
+\157\155\151\163\061\027\060\025\006\003\125\004\013\023\016\060
+\060\060\062\040\064\063\063\071\071\070\071\060\063\061\046\060
+\044\006\003\125\004\003\014\035\103\145\162\164\151\156\157\155
+\151\163\040\055\040\101\165\164\157\162\151\164\303\251\040\122
+\141\143\151\156\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\234\060\202\003\204\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\143\061\013\060\011\006\003\125\004\006\023\002\106\122\061\023
+\060\021\006\003\125\004\012\023\012\103\145\162\164\151\156\157
+\155\151\163\061\027\060\025\006\003\125\004\013\023\016\060\060
+\060\062\040\064\063\063\071\071\070\071\060\063\061\046\060\044
+\006\003\125\004\003\014\035\103\145\162\164\151\156\157\155\151
+\163\040\055\040\101\165\164\157\162\151\164\303\251\040\122\141
+\143\151\156\145\060\036\027\015\060\070\060\071\061\067\060\070
+\062\070\065\071\132\027\015\062\070\060\071\061\067\060\070\062
+\070\065\071\132\060\143\061\013\060\011\006\003\125\004\006\023
+\002\106\122\061\023\060\021\006\003\125\004\012\023\012\103\145
+\162\164\151\156\157\155\151\163\061\027\060\025\006\003\125\004
+\013\023\016\060\060\060\062\040\064\063\063\071\071\070\071\060
+\063\061\046\060\044\006\003\125\004\003\014\035\103\145\162\164
+\151\156\157\155\151\163\040\055\040\101\165\164\157\162\151\164
+\303\251\040\122\141\143\151\156\145\060\202\002\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002\017
+\000\060\202\002\012\002\202\002\001\000\235\205\237\206\323\343
+\257\307\262\153\156\063\340\236\267\102\064\125\235\371\201\276
+\143\330\043\166\016\227\124\315\231\114\032\361\071\307\210\330
+\027\120\014\236\141\332\300\116\125\336\347\132\270\172\116\167
+\207\015\345\270\353\372\236\136\173\036\304\317\050\164\307\223
+\365\024\306\042\050\004\371\221\303\253\047\163\152\016\056\115
+\363\056\050\037\160\337\125\057\116\355\307\161\157\011\162\056
+\355\325\062\227\320\361\130\167\321\140\274\116\136\333\232\204
+\366\107\141\105\053\366\120\246\177\152\161\047\110\204\065\236
+\254\376\151\251\236\172\136\065\045\372\264\247\111\065\167\226
+\247\066\133\341\315\337\043\160\330\135\114\245\010\203\361\246
+\044\070\023\250\354\057\250\241\147\307\246\055\206\107\356\212
+\374\354\233\016\164\364\053\111\002\173\220\165\214\374\231\071
+\001\071\326\112\211\345\236\166\253\076\226\050\070\046\213\335
+\215\214\300\366\001\036\157\245\061\022\070\175\225\302\161\356
+\355\164\256\344\066\242\103\165\325\361\000\233\342\344\327\314
+\102\003\113\170\172\345\175\273\270\256\056\040\223\323\344\141
+\337\161\341\166\147\227\077\266\337\152\163\132\144\042\345\102
+\333\317\201\003\223\330\364\343\020\340\162\366\000\160\254\360
+\301\172\017\005\177\317\064\151\105\265\223\344\031\333\122\026
+\043\005\211\016\215\110\344\045\157\263\170\277\142\365\007\372
+\225\044\302\226\262\350\243\043\302\135\003\374\303\323\345\174
+\311\165\043\327\364\365\274\336\344\337\315\200\277\221\210\175
+\247\023\264\071\272\054\272\275\321\153\314\363\245\050\355\104
+\236\175\122\243\157\226\056\031\176\034\363\133\307\026\216\273
+\140\175\167\146\107\124\202\000\021\140\154\062\301\250\070\033
+\353\156\230\023\326\356\070\365\360\237\016\357\376\061\201\301
+\322\044\225\057\123\172\151\242\360\017\206\105\216\130\202\053
+\114\042\324\136\240\347\175\046\047\110\337\045\106\215\112\050
+\174\206\236\371\233\032\131\271\145\277\005\335\266\102\135\075
+\346\000\110\202\136\040\367\021\202\336\312\330\237\346\067\107
+\046\036\353\170\367\141\303\101\144\130\002\101\371\332\340\321
+\370\371\350\375\122\070\266\365\211\337\002\003\001\000\001\243
+\133\060\131\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\035\006\003\125\035\016\004\026\004\024\015
+\214\266\141\332\104\270\321\024\175\303\276\175\136\110\360\316
+\312\152\260\060\027\006\003\125\035\040\004\020\060\016\060\014
+\006\012\052\201\172\001\126\002\002\000\001\001\060\015\006\011
+\052\206\110\206\367\015\001\001\005\005\000\003\202\002\001\000
+\044\076\140\006\176\035\357\072\076\333\352\257\034\232\054\001
+\013\364\305\265\331\111\061\364\135\101\215\211\014\116\377\154
+\242\375\377\342\006\310\071\237\361\132\251\335\042\130\025\250
+\212\323\261\346\062\011\202\003\154\327\077\010\307\370\271\272
+\000\155\271\326\374\122\062\135\244\177\244\061\224\273\266\114
+\070\177\050\060\065\377\237\043\123\267\266\356\024\160\000\100
+\053\332\107\253\064\176\136\247\126\060\141\053\213\103\254\375
+\266\210\050\365\153\266\076\140\112\272\102\220\064\147\215\352
+\353\137\105\124\073\027\254\213\344\306\145\017\356\320\214\135
+\146\071\316\062\247\330\020\227\300\176\064\234\237\224\363\366
+\206\037\317\033\163\255\224\171\207\150\160\303\063\245\160\347
+\330\325\070\224\157\143\171\353\277\012\016\010\347\305\057\017
+\102\240\053\024\100\377\041\340\005\305\047\341\204\021\023\272
+\326\206\035\101\013\023\043\211\323\311\013\350\212\272\172\243
+\243\163\067\065\200\175\022\270\063\167\100\070\300\372\136\060
+\322\362\266\243\261\326\242\225\227\201\233\122\355\151\114\377
+\200\344\123\333\124\133\003\155\124\137\261\270\357\044\275\157
+\237\021\303\307\144\302\017\050\142\205\146\136\032\173\262\267
+\357\256\065\311\031\063\250\270\047\333\063\125\277\150\341\165
+\110\104\126\373\315\323\110\273\107\211\072\254\151\365\200\306
+\344\104\120\057\124\304\252\103\305\061\061\130\275\226\305\352
+\165\154\232\165\261\115\370\367\227\377\226\026\362\227\115\350
+\366\363\021\371\072\175\212\070\156\004\313\341\323\105\025\252
+\245\321\035\235\135\143\350\044\346\066\024\342\207\255\033\131
+\365\104\233\373\327\167\174\037\001\160\142\241\040\032\242\305
+\032\050\364\041\003\356\056\331\301\200\352\271\331\202\326\133
+\166\302\313\073\265\322\000\360\243\016\341\255\156\100\367\333
+\240\264\320\106\256\025\327\104\302\115\065\371\322\013\362\027
+\366\254\146\325\044\262\117\321\034\231\300\156\365\175\353\164
+\004\270\371\115\167\011\327\264\317\007\060\011\361\270\000\126
+\331\027\026\026\012\053\206\337\217\001\031\032\345\273\202\143
+\377\276\013\166\026\136\067\067\346\330\164\227\242\231\105\171
+END
+
+# Trust for Certificate "Certinomis - Autorité Racine"
+# Issuer: CN=Certinomis - Autorit.. Racine,OU=0002 433998903,O=Certinomis,C=FR
+# Serial Number: 1 (0x1)
+# Subject: CN=Certinomis - Autorit.. Racine,OU=0002 433998903,O=Certinomis,C=FR
+# Not Valid Before: Wed Sep 17 08:28:59 2008
+# Not Valid After : Sun Sep 17 08:28:59 2028
+# Fingerprint (MD5): 7F:30:78:8C:03:E3:CA:C9:0A:E2:C9:EA:1E:AA:55:1A
+# Fingerprint (SHA1): 2E:14:DA:EC:28:F0:FA:1E:8E:38:9A:4E:AB:EB:26:C0:0A:D3:83:C3
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Certinomis - Autorité Racine"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\056\024\332\354\050\360\372\036\216\070\232\116\253\353\046\300
+\012\323\203\303
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\177\060\170\214\003\343\312\311\012\342\311\352\036\252\125\032
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\143\061\013\060\011\006\003\125\004\006\023\002\106\122\061
+\023\060\021\006\003\125\004\012\023\012\103\145\162\164\151\156
+\157\155\151\163\061\027\060\025\006\003\125\004\013\023\016\060
+\060\060\062\040\064\063\063\071\071\070\071\060\063\061\046\060
+\044\006\003\125\004\003\014\035\103\145\162\164\151\156\157\155
+\151\163\040\055\040\101\165\164\157\162\151\164\303\251\040\122
+\141\143\151\156\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Root CA Generalitat Valenciana"
+#
+# Issuer: CN=Root CA Generalitat Valenciana,OU=PKIGVA,O=Generalitat Valenciana,C=ES
+# Serial Number: 994436456 (0x3b45e568)
+# Subject: CN=Root CA Generalitat Valenciana,OU=PKIGVA,O=Generalitat Valenciana,C=ES
+# Not Valid Before: Fri Jul 06 16:22:47 2001
+# Not Valid After : Thu Jul 01 15:22:47 2021
+# Fingerprint (MD5): 2C:8C:17:5E:B1:54:AB:93:17:B5:36:5A:DB:D1:C6:F2
+# Fingerprint (SHA1): A0:73:E5:C5:BD:43:61:0D:86:4C:21:13:0A:85:58:57:CC:9C:EA:46
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Root CA Generalitat Valenciana"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\037\060\035\006\003\125\004\012\023\026\107\145\156\145\162\141
+\154\151\164\141\164\040\126\141\154\145\156\143\151\141\156\141
+\061\017\060\015\006\003\125\004\013\023\006\120\113\111\107\126
+\101\061\047\060\045\006\003\125\004\003\023\036\122\157\157\164
+\040\103\101\040\107\145\156\145\162\141\154\151\164\141\164\040
+\126\141\154\145\156\143\151\141\156\141
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\037\060\035\006\003\125\004\012\023\026\107\145\156\145\162\141
+\154\151\164\141\164\040\126\141\154\145\156\143\151\141\156\141
+\061\017\060\015\006\003\125\004\013\023\006\120\113\111\107\126
+\101\061\047\060\045\006\003\125\004\003\023\036\122\157\157\164
+\040\103\101\040\107\145\156\145\162\141\154\151\164\141\164\040
+\126\141\154\145\156\143\151\141\156\141
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\073\105\345\150
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\213\060\202\005\163\240\003\002\001\002\002\004\073
+\105\345\150\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\150\061\013\060\011\006\003\125\004\006\023\002\105
+\123\061\037\060\035\006\003\125\004\012\023\026\107\145\156\145
+\162\141\154\151\164\141\164\040\126\141\154\145\156\143\151\141
+\156\141\061\017\060\015\006\003\125\004\013\023\006\120\113\111
+\107\126\101\061\047\060\045\006\003\125\004\003\023\036\122\157
+\157\164\040\103\101\040\107\145\156\145\162\141\154\151\164\141
+\164\040\126\141\154\145\156\143\151\141\156\141\060\036\027\015
+\060\061\060\067\060\066\061\066\062\062\064\067\132\027\015\062
+\061\060\067\060\061\061\065\062\062\064\067\132\060\150\061\013
+\060\011\006\003\125\004\006\023\002\105\123\061\037\060\035\006
+\003\125\004\012\023\026\107\145\156\145\162\141\154\151\164\141
+\164\040\126\141\154\145\156\143\151\141\156\141\061\017\060\015
+\006\003\125\004\013\023\006\120\113\111\107\126\101\061\047\060
+\045\006\003\125\004\003\023\036\122\157\157\164\040\103\101\040
+\107\145\156\145\162\141\154\151\164\141\164\040\126\141\154\145
+\156\143\151\141\156\141\060\202\001\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202
+\001\012\002\202\001\001\000\306\052\253\127\021\067\057\042\212
+\312\003\164\035\312\355\055\242\013\274\063\122\100\046\107\276
+\132\151\246\073\162\066\027\114\350\337\270\273\057\166\341\100
+\106\164\145\002\220\122\010\264\377\250\214\301\340\307\211\126
+\020\071\063\357\150\264\137\137\332\155\043\241\211\136\042\243
+\112\006\360\047\360\127\271\370\351\116\062\167\012\077\101\144
+\363\353\145\356\166\376\124\252\175\035\040\256\363\327\164\302
+\012\137\365\010\050\122\010\314\125\135\322\017\333\232\201\245
+\273\241\263\301\224\315\124\340\062\165\061\221\032\142\262\336
+\165\342\317\117\211\331\221\220\017\101\033\264\132\112\167\275
+\147\203\340\223\347\136\247\014\347\201\323\364\122\254\123\262
+\003\307\104\046\373\171\345\313\064\140\120\020\173\033\333\153
+\327\107\253\137\174\150\312\156\235\101\003\020\356\153\231\173
+\136\045\250\302\253\344\300\363\134\234\343\276\316\061\114\144
+\036\136\200\242\365\203\176\014\326\312\214\125\216\276\340\276
+\111\007\017\243\044\101\172\130\035\204\352\130\022\310\341\267
+\355\357\223\336\224\010\061\002\003\001\000\001\243\202\003\073
+\060\202\003\067\060\062\006\010\053\006\001\005\005\007\001\001
+\004\046\060\044\060\042\006\010\053\006\001\005\005\007\060\001
+\206\026\150\164\164\160\072\057\057\157\143\163\160\056\160\153
+\151\056\147\166\141\056\145\163\060\022\006\003\125\035\023\001
+\001\377\004\010\060\006\001\001\377\002\001\002\060\202\002\064
+\006\003\125\035\040\004\202\002\053\060\202\002\047\060\202\002
+\043\006\012\053\006\001\004\001\277\125\002\001\000\060\202\002
+\023\060\202\001\350\006\010\053\006\001\005\005\007\002\002\060
+\202\001\332\036\202\001\326\000\101\000\165\000\164\000\157\000
+\162\000\151\000\144\000\141\000\144\000\040\000\144\000\145\000
+\040\000\103\000\145\000\162\000\164\000\151\000\146\000\151\000
+\143\000\141\000\143\000\151\000\363\000\156\000\040\000\122\000
+\141\000\355\000\172\000\040\000\144\000\145\000\040\000\154\000
+\141\000\040\000\107\000\145\000\156\000\145\000\162\000\141\000
+\154\000\151\000\164\000\141\000\164\000\040\000\126\000\141\000
+\154\000\145\000\156\000\143\000\151\000\141\000\156\000\141\000
+\056\000\015\000\012\000\114\000\141\000\040\000\104\000\145\000
+\143\000\154\000\141\000\162\000\141\000\143\000\151\000\363\000
+\156\000\040\000\144\000\145\000\040\000\120\000\162\000\341\000
+\143\000\164\000\151\000\143\000\141\000\163\000\040\000\144\000
+\145\000\040\000\103\000\145\000\162\000\164\000\151\000\146\000
+\151\000\143\000\141\000\143\000\151\000\363\000\156\000\040\000
+\161\000\165\000\145\000\040\000\162\000\151\000\147\000\145\000
+\040\000\145\000\154\000\040\000\146\000\165\000\156\000\143\000
+\151\000\157\000\156\000\141\000\155\000\151\000\145\000\156\000
+\164\000\157\000\040\000\144\000\145\000\040\000\154\000\141\000
+\040\000\160\000\162\000\145\000\163\000\145\000\156\000\164\000
+\145\000\040\000\101\000\165\000\164\000\157\000\162\000\151\000
+\144\000\141\000\144\000\040\000\144\000\145\000\040\000\103\000
+\145\000\162\000\164\000\151\000\146\000\151\000\143\000\141\000
+\143\000\151\000\363\000\156\000\040\000\163\000\145\000\040\000
+\145\000\156\000\143\000\165\000\145\000\156\000\164\000\162\000
+\141\000\040\000\145\000\156\000\040\000\154\000\141\000\040\000
+\144\000\151\000\162\000\145\000\143\000\143\000\151\000\363\000
+\156\000\040\000\167\000\145\000\142\000\040\000\150\000\164\000
+\164\000\160\000\072\000\057\000\057\000\167\000\167\000\167\000
+\056\000\160\000\153\000\151\000\056\000\147\000\166\000\141\000
+\056\000\145\000\163\000\057\000\143\000\160\000\163\060\045\006
+\010\053\006\001\005\005\007\002\001\026\031\150\164\164\160\072
+\057\057\167\167\167\056\160\153\151\056\147\166\141\056\145\163
+\057\143\160\163\060\035\006\003\125\035\016\004\026\004\024\173
+\065\323\100\322\034\170\031\146\357\164\020\050\334\076\117\262
+\170\004\374\060\201\225\006\003\125\035\043\004\201\215\060\201
+\212\200\024\173\065\323\100\322\034\170\031\146\357\164\020\050
+\334\076\117\262\170\004\374\241\154\244\152\060\150\061\013\060
+\011\006\003\125\004\006\023\002\105\123\061\037\060\035\006\003
+\125\004\012\023\026\107\145\156\145\162\141\154\151\164\141\164
+\040\126\141\154\145\156\143\151\141\156\141\061\017\060\015\006
+\003\125\004\013\023\006\120\113\111\107\126\101\061\047\060\045
+\006\003\125\004\003\023\036\122\157\157\164\040\103\101\040\107
+\145\156\145\162\141\154\151\164\141\164\040\126\141\154\145\156
+\143\151\141\156\141\202\004\073\105\345\150\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000\044
+\141\116\365\265\310\102\002\052\263\134\165\255\305\155\312\347
+\224\077\245\150\225\210\301\124\300\020\151\242\022\057\030\077
+\045\120\250\174\112\352\306\011\331\364\165\306\100\332\257\120
+\235\075\245\026\273\155\061\306\307\163\012\110\376\040\162\355
+\157\314\350\203\141\026\106\220\001\225\113\175\216\232\122\011
+\057\366\157\034\344\241\161\317\214\052\132\027\163\203\107\115
+\017\066\373\004\115\111\121\342\024\311\144\141\373\324\024\340
+\364\236\267\064\217\012\046\275\227\134\364\171\072\112\060\031
+\314\255\117\240\230\212\264\061\227\052\342\163\155\176\170\270
+\370\210\211\117\261\042\221\144\113\365\120\336\003\333\345\305
+\166\347\023\146\165\176\145\373\001\237\223\207\210\235\371\106
+\127\174\115\140\257\230\163\023\043\244\040\221\201\372\320\141
+\146\270\175\321\257\326\157\036\154\075\351\021\375\251\371\202
+\042\206\231\063\161\132\352\031\127\075\221\315\251\300\243\156
+\007\023\246\311\355\370\150\243\236\303\132\162\011\207\050\321
+\304\163\304\163\030\137\120\165\026\061\237\267\350\174\303
+END
+
+# Trust for Certificate "Root CA Generalitat Valenciana"
+# Issuer: CN=Root CA Generalitat Valenciana,OU=PKIGVA,O=Generalitat Valenciana,C=ES
+# Serial Number: 994436456 (0x3b45e568)
+# Subject: CN=Root CA Generalitat Valenciana,OU=PKIGVA,O=Generalitat Valenciana,C=ES
+# Not Valid Before: Fri Jul 06 16:22:47 2001
+# Not Valid After : Thu Jul 01 15:22:47 2021
+# Fingerprint (MD5): 2C:8C:17:5E:B1:54:AB:93:17:B5:36:5A:DB:D1:C6:F2
+# Fingerprint (SHA1): A0:73:E5:C5:BD:43:61:0D:86:4C:21:13:0A:85:58:57:CC:9C:EA:46
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Root CA Generalitat Valenciana"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\240\163\345\305\275\103\141\015\206\114\041\023\012\205\130\127
+\314\234\352\106
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\054\214\027\136\261\124\253\223\027\265\066\132\333\321\306\362
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\105\123\061
+\037\060\035\006\003\125\004\012\023\026\107\145\156\145\162\141
+\154\151\164\141\164\040\126\141\154\145\156\143\151\141\156\141
+\061\017\060\015\006\003\125\004\013\023\006\120\113\111\107\126
+\101\061\047\060\045\006\003\125\004\003\023\036\122\157\157\164
+\040\103\101\040\107\145\156\145\162\141\154\151\164\141\164\040
+\126\141\154\145\156\143\151\141\156\141
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\073\105\345\150
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "A-Trust-nQual-03"
+#
+# Issuer: CN=A-Trust-nQual-03,OU=A-Trust-nQual-03,O=A-Trust Ges. f. Sicherheitssysteme im elektr. Datenverkehr GmbH,C=AT
+# Serial Number: 93214 (0x16c1e)
+# Subject: CN=A-Trust-nQual-03,OU=A-Trust-nQual-03,O=A-Trust Ges. f. Sicherheitssysteme im elektr. Datenverkehr GmbH,C=AT
+# Not Valid Before: Wed Aug 17 22:00:00 2005
+# Not Valid After : Mon Aug 17 22:00:00 2015
+# Fingerprint (MD5): 49:63:AE:27:F4:D5:95:3D:D8:DB:24:86:B8:9C:07:53
+# Fingerprint (SHA1): D3:C0:63:F2:19:ED:07:3E:34:AD:5D:75:0B:32:76:29:FF:D5:9A:F2
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "A-Trust-nQual-03"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\215\061\013\060\011\006\003\125\004\006\023\002\101\124
+\061\110\060\106\006\003\125\004\012\014\077\101\055\124\162\165
+\163\164\040\107\145\163\056\040\146\056\040\123\151\143\150\145
+\162\150\145\151\164\163\163\171\163\164\145\155\145\040\151\155
+\040\145\154\145\153\164\162\056\040\104\141\164\145\156\166\145
+\162\153\145\150\162\040\107\155\142\110\061\031\060\027\006\003
+\125\004\013\014\020\101\055\124\162\165\163\164\055\156\121\165
+\141\154\055\060\063\061\031\060\027\006\003\125\004\003\014\020
+\101\055\124\162\165\163\164\055\156\121\165\141\154\055\060\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\215\061\013\060\011\006\003\125\004\006\023\002\101\124
+\061\110\060\106\006\003\125\004\012\014\077\101\055\124\162\165
+\163\164\040\107\145\163\056\040\146\056\040\123\151\143\150\145
+\162\150\145\151\164\163\163\171\163\164\145\155\145\040\151\155
+\040\145\154\145\153\164\162\056\040\104\141\164\145\156\166\145
+\162\153\145\150\162\040\107\155\142\110\061\031\060\027\006\003
+\125\004\013\014\020\101\055\124\162\165\163\164\055\156\121\165
+\141\154\055\060\063\061\031\060\027\006\003\125\004\003\014\020
+\101\055\124\162\165\163\164\055\156\121\165\141\154\055\060\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\001\154\036
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\317\060\202\002\267\240\003\002\001\002\002\003\001
+\154\036\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\060\201\215\061\013\060\011\006\003\125\004\006\023\002\101
+\124\061\110\060\106\006\003\125\004\012\014\077\101\055\124\162
+\165\163\164\040\107\145\163\056\040\146\056\040\123\151\143\150
+\145\162\150\145\151\164\163\163\171\163\164\145\155\145\040\151
+\155\040\145\154\145\153\164\162\056\040\104\141\164\145\156\166
+\145\162\153\145\150\162\040\107\155\142\110\061\031\060\027\006
+\003\125\004\013\014\020\101\055\124\162\165\163\164\055\156\121
+\165\141\154\055\060\063\061\031\060\027\006\003\125\004\003\014
+\020\101\055\124\162\165\163\164\055\156\121\165\141\154\055\060
+\063\060\036\027\015\060\065\060\070\061\067\062\062\060\060\060
+\060\132\027\015\061\065\060\070\061\067\062\062\060\060\060\060
+\132\060\201\215\061\013\060\011\006\003\125\004\006\023\002\101
+\124\061\110\060\106\006\003\125\004\012\014\077\101\055\124\162
+\165\163\164\040\107\145\163\056\040\146\056\040\123\151\143\150
+\145\162\150\145\151\164\163\163\171\163\164\145\155\145\040\151
+\155\040\145\154\145\153\164\162\056\040\104\141\164\145\156\166
+\145\162\153\145\150\162\040\107\155\142\110\061\031\060\027\006
+\003\125\004\013\014\020\101\055\124\162\165\163\164\055\156\121
+\165\141\154\055\060\063\061\031\060\027\006\003\125\004\003\014
+\020\101\055\124\162\165\163\164\055\156\121\165\141\154\055\060
+\063\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\255\075\141\156\003\363\220\073\300\101\013\204\200\315
+\354\052\243\235\153\273\156\302\102\204\367\121\024\341\240\250
+\055\121\243\121\362\336\043\360\064\104\377\224\353\314\005\043
+\225\100\271\007\170\245\045\366\012\275\105\206\350\331\275\300
+\004\216\205\104\141\357\177\247\311\372\301\045\314\205\054\143
+\077\005\140\163\111\005\340\140\170\225\020\113\334\371\021\131
+\316\161\177\100\233\212\252\044\337\013\102\342\333\126\274\112
+\322\245\014\233\267\103\076\335\203\323\046\020\002\317\352\043
+\304\111\116\345\323\351\264\210\253\014\256\142\222\324\145\207
+\331\152\327\364\205\237\344\063\042\045\245\345\310\063\272\303
+\307\101\334\137\306\152\314\000\016\155\062\250\266\207\066\000
+\142\167\233\036\037\064\313\220\074\170\210\164\005\353\171\365
+\223\161\145\312\235\307\153\030\055\075\134\116\347\325\370\077
+\061\175\217\207\354\012\042\057\043\351\376\273\175\311\340\364
+\354\353\174\304\260\303\055\142\265\232\161\326\261\152\350\354
+\331\355\325\162\354\276\127\001\316\005\125\237\336\321\140\210
+\020\263\002\003\001\000\001\243\066\060\064\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\021\006\003
+\125\035\016\004\012\004\010\104\152\225\147\125\171\021\117\060
+\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
+\001\001\000\125\324\124\321\131\110\134\263\223\205\252\277\143
+\057\344\200\316\064\243\064\142\076\366\330\356\147\210\061\004
+\003\157\013\324\007\373\116\165\017\323\056\323\300\027\307\306
+\050\354\006\015\021\044\016\016\245\135\277\214\262\023\226\161
+\334\324\316\016\015\012\150\062\154\271\101\061\031\253\261\007
+\173\115\230\323\134\260\321\360\247\102\240\265\304\216\257\376
+\361\077\364\357\117\106\000\166\353\002\373\371\235\322\100\226
+\307\210\072\270\237\021\171\363\200\145\250\275\037\323\170\201
+\240\121\114\067\264\246\135\045\160\321\146\311\150\371\056\021
+\024\150\361\124\230\010\254\046\222\017\336\211\236\324\372\263
+\171\053\322\243\171\324\354\213\254\207\123\150\102\114\121\121
+\164\036\033\047\056\343\365\037\051\164\115\355\257\367\341\222
+\231\201\350\276\072\307\027\120\366\267\306\374\233\260\212\153
+\326\210\003\221\217\006\167\072\205\002\335\230\325\103\170\077
+\306\060\025\254\233\153\313\127\267\211\121\213\072\350\311\204
+\014\333\261\120\040\012\032\112\272\152\032\275\354\033\310\305
+\204\232\315
+END
+
+# Trust for Certificate "A-Trust-nQual-03"
+# Issuer: CN=A-Trust-nQual-03,OU=A-Trust-nQual-03,O=A-Trust Ges. f. Sicherheitssysteme im elektr. Datenverkehr GmbH,C=AT
+# Serial Number: 93214 (0x16c1e)
+# Subject: CN=A-Trust-nQual-03,OU=A-Trust-nQual-03,O=A-Trust Ges. f. Sicherheitssysteme im elektr. Datenverkehr GmbH,C=AT
+# Not Valid Before: Wed Aug 17 22:00:00 2005
+# Not Valid After : Mon Aug 17 22:00:00 2015
+# Fingerprint (MD5): 49:63:AE:27:F4:D5:95:3D:D8:DB:24:86:B8:9C:07:53
+# Fingerprint (SHA1): D3:C0:63:F2:19:ED:07:3E:34:AD:5D:75:0B:32:76:29:FF:D5:9A:F2
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "A-Trust-nQual-03"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\323\300\143\362\031\355\007\076\064\255\135\165\013\062\166\051
+\377\325\232\362
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\111\143\256\047\364\325\225\075\330\333\044\206\270\234\007\123
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\215\061\013\060\011\006\003\125\004\006\023\002\101\124
+\061\110\060\106\006\003\125\004\012\014\077\101\055\124\162\165
+\163\164\040\107\145\163\056\040\146\056\040\123\151\143\150\145
+\162\150\145\151\164\163\163\171\163\164\145\155\145\040\151\155
+\040\145\154\145\153\164\162\056\040\104\141\164\145\156\166\145
+\162\153\145\150\162\040\107\155\142\110\061\031\060\027\006\003
+\125\004\013\014\020\101\055\124\162\165\163\164\055\156\121\165
+\141\154\055\060\063\061\031\060\027\006\003\125\004\003\014\020
+\101\055\124\162\165\163\164\055\156\121\165\141\154\055\060\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\001\154\036
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TWCA Root Certification Authority"
+#
+# Issuer: CN=TWCA Root Certification Authority,OU=Root CA,O=TAIWAN-CA,C=TW
+# Serial Number: 1 (0x1)
+# Subject: CN=TWCA Root Certification Authority,OU=Root CA,O=TAIWAN-CA,C=TW
+# Not Valid Before: Thu Aug 28 07:24:33 2008
+# Not Valid After : Tue Dec 31 15:59:59 2030
+# Fingerprint (MD5): AA:08:8F:F6:F9:7B:B7:F2:B1:A7:1E:9B:EA:EA:BD:79
+# Fingerprint (SHA1): CF:9E:87:6D:D3:EB:FC:42:26:97:A3:B5:A3:7A:A0:76:A9:06:23:48
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TWCA Root Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\014\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\014\007\122\157
+\157\164\040\103\101\061\052\060\050\006\003\125\004\003\014\041
+\124\127\103\101\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\014\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\014\007\122\157
+\157\164\040\103\101\061\052\060\050\006\003\125\004\003\014\041
+\124\127\103\101\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\173\060\202\002\143\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\137\061\013\060\011\006\003\125\004\006\023\002\124\127\061\022
+\060\020\006\003\125\004\012\014\011\124\101\111\127\101\116\055
+\103\101\061\020\060\016\006\003\125\004\013\014\007\122\157\157
+\164\040\103\101\061\052\060\050\006\003\125\004\003\014\041\124
+\127\103\101\040\122\157\157\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\060\036\027\015\060\070\060\070\062\070\060\067\062\064\063\063
+\132\027\015\063\060\061\062\063\061\061\065\065\071\065\071\132
+\060\137\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\014\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\014\007\122\157
+\157\164\040\103\101\061\052\060\050\006\003\125\004\003\014\041
+\124\127\103\101\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001
+\001\000\260\176\162\270\244\003\224\346\247\336\011\070\221\112
+\021\100\207\247\174\131\144\024\173\265\021\020\335\376\277\325
+\300\273\126\342\205\045\364\065\162\017\370\123\320\101\341\104
+\001\302\264\034\303\061\102\026\107\205\063\042\166\262\012\157
+\017\345\045\120\117\205\206\276\277\230\056\020\147\036\276\021
+\005\206\005\220\304\131\320\174\170\020\260\200\134\267\341\307
+\053\165\313\174\237\256\265\321\235\043\067\143\247\334\102\242
+\055\222\004\033\120\301\173\270\076\033\311\126\004\213\057\122
+\233\255\251\126\351\301\377\255\251\130\207\060\266\201\367\227
+\105\374\031\127\073\053\157\344\107\364\231\105\376\035\361\370
+\227\243\210\035\067\034\134\217\340\166\045\232\120\370\240\124
+\377\104\220\166\043\322\062\306\303\253\006\277\374\373\277\363
+\255\175\222\142\002\133\051\323\065\243\223\232\103\144\140\135
+\262\372\062\377\073\004\257\115\100\152\371\307\343\357\043\375
+\153\313\345\017\213\070\015\356\012\374\376\017\230\237\060\061
+\335\154\122\145\371\213\201\276\042\341\034\130\003\272\221\033
+\211\007\002\003\001\000\001\243\102\060\100\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\035\006\003
+\125\035\016\004\026\004\024\152\070\133\046\215\336\213\132\362
+\117\172\124\203\031\030\343\010\065\246\272\060\015\006\011\052
+\206\110\206\367\015\001\001\005\005\000\003\202\001\001\000\074
+\325\167\075\332\337\211\272\207\014\010\124\152\040\120\222\276
+\260\101\075\271\046\144\203\012\057\350\100\300\227\050\047\202
+\060\112\311\223\377\152\347\246\000\177\211\102\232\326\021\345
+\123\316\057\314\362\332\005\304\376\342\120\304\072\206\175\314
+\332\176\020\011\073\222\065\052\123\262\376\353\053\005\331\154
+\135\346\320\357\323\152\146\236\025\050\205\172\350\202\000\254
+\036\247\011\151\126\102\323\150\121\030\276\124\232\277\104\101
+\272\111\276\040\272\151\134\356\270\167\315\316\154\037\255\203
+\226\030\175\016\265\024\071\204\361\050\351\055\243\236\173\036
+\172\162\132\203\263\171\157\357\264\374\320\012\245\130\117\106
+\337\373\155\171\131\362\204\042\122\256\017\314\373\174\073\347
+\152\312\107\141\303\172\370\323\222\004\037\270\040\204\341\066
+\124\026\307\100\336\073\212\163\334\337\306\011\114\337\354\332
+\377\324\123\102\241\311\362\142\035\042\203\074\227\305\371\031
+\142\047\254\145\042\327\323\074\306\345\216\262\123\314\111\316
+\274\060\376\173\016\063\220\373\355\322\024\221\037\007\257
+END
+
+# Trust for Certificate "TWCA Root Certification Authority"
+# Issuer: CN=TWCA Root Certification Authority,OU=Root CA,O=TAIWAN-CA,C=TW
+# Serial Number: 1 (0x1)
+# Subject: CN=TWCA Root Certification Authority,OU=Root CA,O=TAIWAN-CA,C=TW
+# Not Valid Before: Thu Aug 28 07:24:33 2008
+# Not Valid After : Tue Dec 31 15:59:59 2030
+# Fingerprint (MD5): AA:08:8F:F6:F9:7B:B7:F2:B1:A7:1E:9B:EA:EA:BD:79
+# Fingerprint (SHA1): CF:9E:87:6D:D3:EB:FC:42:26:97:A3:B5:A3:7A:A0:76:A9:06:23:48
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TWCA Root Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\317\236\207\155\323\353\374\102\046\227\243\265\243\172\240\166
+\251\006\043\110
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\252\010\217\366\371\173\267\362\261\247\036\233\352\352\275\171
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\014\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\014\007\122\157
+\157\164\040\103\101\061\052\060\050\006\003\125\004\003\014\041
+\124\127\103\101\040\122\157\157\164\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrust DigiNotar Root CA"
+#
+# Issuer: E=info@diginotar.nl,CN=DigiNotar Root CA,O=DigiNotar,C=NL
+# Serial Number:0f:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff
+# Subject: E=info@diginotar.nl,CN=DigiNotar Root CA,O=DigiNotar,C=NL
+# Not Valid Before: Fri Jul 27 17:19:37 2007
+# Not Valid After : Mon Mar 31 18:19:22 2025
+# Fingerprint (MD5): 0A:A4:D5:CC:BA:B4:FB:A3:59:E3:E6:01:DD:53:D9:4E
+# Fingerprint (SHA1): C1:77:CB:4B:E0:B4:26:8E:F5:C7:CF:45:99:22:B9:B0:CE:BA:21:2F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\032\060\030\006\003\125\004\003\023\021\104\151
+\147\151\116\157\164\141\162\040\122\157\157\164\040\103\101\061
+\040\060\036\006\011\052\206\110\206\367\015\001\011\001\026\021
+\151\156\146\157\100\144\151\147\151\156\157\164\141\162\056\156
+\154
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\032\060\030\006\003\125\004\003\023\021\104\151
+\147\151\116\157\164\141\162\040\122\157\157\164\040\103\101\061
+\040\060\036\006\011\052\206\110\206\367\015\001\011\001\026\021
+\151\156\146\157\100\144\151\147\151\156\157\164\141\162\056\156
+\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\017\377\377\377\377\377\377\377\377\377\377\377\377\377
+\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\212\060\202\003\162\240\003\002\001\002\002\020\017
+\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\137
+\061\013\060\011\006\003\125\004\006\023\002\116\114\061\022\060
+\020\006\003\125\004\012\023\011\104\151\147\151\116\157\164\141
+\162\061\032\060\030\006\003\125\004\003\023\021\104\151\147\151
+\116\157\164\141\162\040\122\157\157\164\040\103\101\061\040\060
+\036\006\011\052\206\110\206\367\015\001\011\001\026\021\151\156
+\146\157\100\144\151\147\151\156\157\164\141\162\056\156\154\060
+\036\027\015\060\067\060\067\062\067\061\067\061\071\063\067\132
+\027\015\062\065\060\063\063\061\061\070\061\071\062\062\132\060
+\137\061\013\060\011\006\003\125\004\006\023\002\116\114\061\022
+\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157\164
+\141\162\061\032\060\030\006\003\125\004\003\023\021\104\151\147
+\151\116\157\164\141\162\040\122\157\157\164\040\103\101\061\040
+\060\036\006\011\052\206\110\206\367\015\001\011\001\026\021\151
+\156\146\157\100\144\151\147\151\156\157\164\141\162\056\156\154
+\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001
+\000\254\260\130\301\000\275\330\041\010\013\053\232\376\156\126
+\060\005\237\033\167\220\020\101\134\303\015\207\021\167\216\201
+\361\312\174\351\214\152\355\070\164\065\273\332\337\371\273\300
+\011\067\264\226\163\201\175\063\032\230\071\367\223\157\225\177
+\075\271\261\165\207\272\121\110\350\213\160\076\225\004\305\330
+\266\303\026\331\210\260\261\207\035\160\332\206\264\017\024\213
+\172\317\020\321\164\066\242\022\173\167\206\112\171\346\173\337
+\002\021\150\245\116\206\256\064\130\233\044\023\170\126\042\045
+\036\001\213\113\121\161\373\202\314\131\226\151\210\132\150\123
+\305\271\015\002\067\313\113\274\146\112\220\176\052\013\005\007
+\355\026\137\125\220\165\330\106\311\033\203\342\010\276\361\043
+\314\231\035\326\052\017\203\040\025\130\047\202\056\372\342\042
+\302\111\261\271\001\201\152\235\155\235\100\167\150\166\116\041
+\052\155\204\100\205\116\166\231\174\202\363\363\267\002\131\324
+\046\001\033\216\337\255\123\006\321\256\030\335\342\262\072\313
+\327\210\070\216\254\133\051\271\031\323\230\371\030\003\317\110
+\202\206\146\013\033\151\017\311\353\070\210\172\046\032\005\114
+\222\327\044\324\226\362\254\122\055\243\107\325\122\366\077\376
+\316\204\006\160\246\252\076\242\362\266\126\064\030\127\242\344
+\201\155\347\312\360\152\323\307\221\153\002\203\101\174\025\357
+\153\232\144\136\343\320\074\345\261\353\173\135\206\373\313\346
+\167\111\315\243\145\334\367\271\234\270\344\013\137\223\317\314
+\060\032\062\034\316\034\143\225\245\371\352\341\164\213\236\351
+\053\251\060\173\240\030\037\016\030\013\345\133\251\323\321\154
+\036\007\147\217\221\113\251\212\274\322\146\252\223\001\210\262
+\221\372\061\134\325\246\301\122\010\011\315\012\143\242\323\042
+\246\350\241\331\071\006\227\365\156\215\002\220\214\024\173\077
+\200\315\033\234\272\304\130\162\043\257\266\126\237\306\172\102
+\063\051\007\077\202\311\346\037\005\015\315\114\050\066\213\323
+\310\076\034\306\210\357\136\356\211\144\351\035\353\332\211\176
+\062\246\151\321\335\314\210\237\321\320\311\146\041\334\006\147
+\305\224\172\232\155\142\114\175\314\340\144\200\262\236\107\216
+\243\002\003\001\000\001\243\102\060\100\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125
+\035\016\004\026\004\024\210\150\277\340\216\065\304\073\070\153
+\142\367\050\073\204\201\310\014\327\115\060\015\006\011\052\206
+\110\206\367\015\001\001\005\005\000\003\202\002\001\000\073\002
+\215\313\074\060\350\156\240\255\362\163\263\137\236\045\023\004
+\005\323\366\343\213\273\013\171\316\123\336\344\226\305\321\257
+\163\274\325\303\320\100\125\174\100\177\315\033\137\011\325\362
+\174\237\150\035\273\135\316\172\071\302\214\326\230\173\305\203
+\125\250\325\175\100\312\340\036\367\211\136\143\135\241\023\302
+\135\212\266\212\174\000\363\043\303\355\205\137\161\166\360\150
+\143\252\105\041\071\110\141\170\066\334\361\103\223\324\045\307
+\362\200\145\341\123\002\165\121\374\172\072\357\067\253\204\050
+\127\014\330\324\324\231\126\154\343\242\376\131\204\264\061\350
+\063\370\144\224\224\121\227\253\071\305\113\355\332\335\200\013
+\157\174\051\015\304\216\212\162\015\347\123\024\262\140\101\075
+\204\221\061\150\075\047\104\333\345\336\364\372\143\105\310\114
+\076\230\365\077\101\272\116\313\067\015\272\146\230\361\335\313
+\237\134\367\124\066\202\153\054\274\023\141\227\102\370\170\273
+\314\310\242\237\312\360\150\275\153\035\262\337\215\157\007\235
+\332\216\147\307\107\036\312\271\277\052\102\221\267\143\123\146
+\361\102\243\341\364\132\115\130\153\265\344\244\063\255\134\160
+\035\334\340\362\353\163\024\221\232\003\301\352\000\145\274\007
+\374\317\022\021\042\054\256\240\275\072\340\242\052\330\131\351
+\051\323\030\065\244\254\021\137\031\265\265\033\377\042\112\134
+\306\172\344\027\357\040\251\247\364\077\255\212\247\232\004\045
+\235\016\312\067\346\120\375\214\102\051\004\232\354\271\317\113
+\162\275\342\010\066\257\043\057\142\345\312\001\323\160\333\174
+\202\043\054\026\061\014\306\066\007\220\172\261\037\147\130\304
+\073\130\131\211\260\214\214\120\263\330\206\313\150\243\304\012
+\347\151\113\040\316\301\036\126\113\225\251\043\150\330\060\330
+\303\353\260\125\121\315\345\375\053\270\365\273\021\237\123\124
+\366\064\031\214\171\011\066\312\141\027\045\027\013\202\230\163
+\014\167\164\303\325\015\307\250\022\114\307\247\124\161\107\056
+\054\032\175\311\343\053\073\110\336\047\204\247\143\066\263\175
+\217\240\144\071\044\015\075\173\207\257\146\134\164\033\113\163
+\262\345\214\360\206\231\270\345\305\337\204\301\267\353
+END
+
+# Trust for Certificate "Explicitly Distrust DigiNotar Root CA"
+# Issuer: E=info@diginotar.nl,CN=DigiNotar Root CA,O=DigiNotar,C=NL
+# Serial Number:0f:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff
+# Subject: E=info@diginotar.nl,CN=DigiNotar Root CA,O=DigiNotar,C=NL
+# Not Valid Before: Fri Jul 27 17:19:37 2007
+# Not Valid After : Mon Mar 31 18:19:22 2025
+# Fingerprint (MD5): 0A:A4:D5:CC:BA:B4:FB:A3:59:E3:E6:01:DD:53:D9:4E
+# Fingerprint (SHA1): C1:77:CB:4B:E0:B4:26:8E:F5:C7:CF:45:99:22:B9:B0:CE:BA:21:2F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\301\167\313\113\340\264\046\216\365\307\317\105\231\042\271\260
+\316\272\041\057
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\012\244\325\314\272\264\373\243\131\343\346\001\335\123\331\116
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\032\060\030\006\003\125\004\003\023\021\104\151
+\147\151\116\157\164\141\162\040\122\157\157\164\040\103\101\061
+\040\060\036\006\011\052\206\110\206\367\015\001\011\001\026\021
+\151\156\146\157\100\144\151\147\151\156\157\164\141\162\056\156
+\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\017\377\377\377\377\377\377\377\377\377\377\377\377\377
+\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrust DigiNotar Services 1024 CA"
+#
+# Issuer: E=info@diginotar.nl,CN=DigiNotar Services 1024 CA,O=DigiNotar,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: E=info@diginotar.nl,CN=DigiNotar Services 1024 CA,O=DigiNotar,C=NL
+# Not Valid Before: Thu Jul 26 15:59:01 2007
+# Not Valid After : Mon Aug 26 16:29:01 2013
+# Fingerprint (MD5): 2F:16:68:97:4C:68:4F:CE:52:8A:EC:53:8F:93:49:F8
+# Fingerprint (SHA1): 12:3B:EA:CA:66:67:77:61:E0:EB:68:F2:FE:ED:A2:0F:20:05:55:70
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Services 1024 CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\043\060\041\006\003\125\004\003\023\032\104\151
+\147\151\116\157\164\141\162\040\123\145\162\166\151\143\145\163
+\040\061\060\062\064\040\103\101\061\040\060\036\006\011\052\206
+\110\206\367\015\001\011\001\026\021\151\156\146\157\100\144\151
+\147\151\156\157\164\141\162\056\156\154
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\043\060\041\006\003\125\004\003\023\032\104\151
+\147\151\116\157\164\141\162\040\123\145\162\166\151\143\145\163
+\040\061\060\062\064\040\103\101\061\040\060\036\006\011\052\206
+\110\206\367\015\001\011\001\026\021\151\156\146\157\100\144\151
+\147\151\156\157\164\141\162\056\156\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\161\060\202\002\332\240\003\002\001\002\002\004\017
+\377\377\377\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\150\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\022\060\020\006\003\125\004\012\023\011\104\151\147\151
+\116\157\164\141\162\061\043\060\041\006\003\125\004\003\023\032
+\104\151\147\151\116\157\164\141\162\040\123\145\162\166\151\143
+\145\163\040\061\060\062\064\040\103\101\061\040\060\036\006\011
+\052\206\110\206\367\015\001\011\001\026\021\151\156\146\157\100
+\144\151\147\151\156\157\164\141\162\056\156\154\060\036\027\015
+\060\067\060\067\062\066\061\065\065\071\060\061\132\027\015\061
+\063\060\070\062\066\061\066\062\071\060\061\132\060\150\061\013
+\060\011\006\003\125\004\006\023\002\116\114\061\022\060\020\006
+\003\125\004\012\023\011\104\151\147\151\116\157\164\141\162\061
+\043\060\041\006\003\125\004\003\023\032\104\151\147\151\116\157
+\164\141\162\040\123\145\162\166\151\143\145\163\040\061\060\062
+\064\040\103\101\061\040\060\036\006\011\052\206\110\206\367\015
+\001\011\001\026\021\151\156\146\157\100\144\151\147\151\156\157
+\164\141\162\056\156\154\060\201\237\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\201\215\000\060\201\211\002
+\201\201\000\332\233\115\135\074\371\321\342\213\306\306\010\040
+\305\331\036\110\354\146\130\147\171\142\053\101\143\364\211\215
+\150\332\257\270\224\066\213\031\044\244\240\223\322\231\017\262
+\255\055\065\115\315\057\152\341\371\233\031\053\274\004\032\176
+\055\075\122\144\315\361\076\147\017\211\056\350\362\117\256\246
+\010\241\205\376\241\251\011\346\306\253\076\103\374\257\172\003
+\221\332\246\071\246\141\356\230\117\030\250\323\263\257\146\202
+\351\237\274\335\162\371\006\004\275\022\331\030\044\347\253\223
+\123\213\131\002\003\001\000\001\243\202\001\046\060\202\001\042
+\060\022\006\003\125\035\023\001\001\377\004\010\060\006\001\001
+\377\002\001\000\060\047\006\003\125\035\045\004\040\060\036\006
+\010\053\006\001\005\005\007\003\001\006\010\053\006\001\005\005
+\007\003\002\006\010\053\006\001\005\005\007\003\004\060\021\006
+\003\125\035\040\004\012\060\010\060\006\006\004\125\035\040\000
+\060\063\006\010\053\006\001\005\005\007\001\001\004\047\060\045
+\060\043\006\010\053\006\001\005\005\007\060\001\206\027\150\164
+\164\160\072\057\057\157\143\163\160\056\145\156\164\162\165\163
+\164\056\156\145\164\060\063\006\003\125\035\037\004\054\060\052
+\060\050\240\046\240\044\206\042\150\164\164\160\072\057\057\143
+\162\154\056\145\156\164\162\165\163\164\056\156\145\164\057\163
+\145\162\166\145\162\061\056\143\162\154\060\035\006\003\125\035
+\016\004\026\004\024\376\334\224\111\014\157\357\134\177\306\361
+\022\231\117\026\111\255\373\202\145\060\013\006\003\125\035\017
+\004\004\003\002\001\006\060\037\006\003\125\035\043\004\030\060
+\026\200\024\360\027\142\023\125\075\263\377\012\000\153\373\120
+\204\227\363\355\142\320\032\060\031\006\011\052\206\110\206\366
+\175\007\101\000\004\014\060\012\033\004\126\067\056\061\003\002
+\000\201\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\201\201\000\143\164\152\067\251\077\226\234\146\310\130
+\254\011\311\357\365\145\224\177\243\002\304\070\061\275\135\043
+\207\354\324\126\262\311\262\156\344\005\006\374\354\365\372\210
+\160\131\324\356\346\335\265\172\240\243\140\057\002\014\253\336
+\022\135\257\360\065\113\252\212\107\221\032\365\205\054\102\307
+\035\357\225\103\263\136\270\225\223\245\332\305\050\252\255\162
+\055\061\255\231\153\154\377\214\041\047\257\255\232\221\053\307
+\335\130\303\156\007\305\237\171\322\307\214\125\277\114\307\047
+\136\121\026\053\076
+END
+
+# Trust for Certificate "Explicitly Distrust DigiNotar Services 1024 CA"
+# Issuer: E=info@diginotar.nl,CN=DigiNotar Services 1024 CA,O=DigiNotar,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: E=info@diginotar.nl,CN=DigiNotar Services 1024 CA,O=DigiNotar,C=NL
+# Not Valid Before: Thu Jul 26 15:59:01 2007
+# Not Valid After : Mon Aug 26 16:29:01 2013
+# Fingerprint (MD5): 2F:16:68:97:4C:68:4F:CE:52:8A:EC:53:8F:93:49:F8
+# Fingerprint (SHA1): 12:3B:EA:CA:66:67:77:61:E0:EB:68:F2:FE:ED:A2:0F:20:05:55:70
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Services 1024 CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\022\073\352\312\146\147\167\141\340\353\150\362\376\355\242\017
+\040\005\125\160
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\057\026\150\227\114\150\117\316\122\212\354\123\217\223\111\370
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\150\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\043\060\041\006\003\125\004\003\023\032\104\151
+\147\151\116\157\164\141\162\040\123\145\162\166\151\143\145\163
+\040\061\060\062\064\040\103\101\061\040\060\036\006\011\052\206
+\110\206\367\015\001\011\001\026\021\151\156\146\157\100\144\151
+\147\151\156\157\164\141\162\056\156\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrust DigiNotar Cyber CA"
+#
+# Issuer: E=info@diginotar.nl,CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: E=info@diginotar.nl,CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Not Valid Before: Wed Oct 04 10:54:12 2006
+# Not Valid After : Tue Oct 04 10:53:12 2011
+# Fingerprint (MD5): BC:BD:89:12:B4:FF:E5:F9:26:47:C8:60:36:5B:D9:54
+# Fingerprint (SHA1): A5:8E:A0:EC:F6:44:56:35:19:1D:68:5B:C7:A0:E4:1C:B0:4D:79:2E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Cyber CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\140\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\033\060\031\006\003\125\004\003\023\022\104\151
+\147\151\116\157\164\141\162\040\103\171\142\145\162\040\103\101
+\061\040\060\036\006\011\052\206\110\206\367\015\001\011\001\026
+\021\151\156\146\157\100\144\151\147\151\156\157\164\141\162\056
+\156\154
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\140\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\033\060\031\006\003\125\004\003\023\022\104\151
+\147\151\116\157\164\141\162\040\103\171\142\145\162\040\103\101
+\061\040\060\036\006\011\052\206\110\206\367\015\001\011\001\026
+\021\151\156\146\157\100\144\151\147\151\156\157\164\141\162\056
+\156\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\105\060\202\004\256\240\003\002\001\002\002\004\017
+\377\377\377\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\140\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\022\060\020\006\003\125\004\012\023\011\104\151\147\151
+\116\157\164\141\162\061\033\060\031\006\003\125\004\003\023\022
+\104\151\147\151\116\157\164\141\162\040\103\171\142\145\162\040
+\103\101\061\040\060\036\006\011\052\206\110\206\367\015\001\011
+\001\026\021\151\156\146\157\100\144\151\147\151\156\157\164\141
+\162\056\156\154\060\036\027\015\060\066\061\060\060\064\061\060
+\065\064\061\062\132\027\015\061\061\061\060\060\064\061\060\065
+\063\061\062\132\060\140\061\013\060\011\006\003\125\004\006\023
+\002\116\114\061\022\060\020\006\003\125\004\012\023\011\104\151
+\147\151\116\157\164\141\162\061\033\060\031\006\003\125\004\003
+\023\022\104\151\147\151\116\157\164\141\162\040\103\171\142\145
+\162\040\103\101\061\040\060\036\006\011\052\206\110\206\367\015
+\001\011\001\026\021\151\156\146\157\100\144\151\147\151\156\157
+\164\141\162\056\156\154\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\322\316\025\012\055\250\136\204\147
+\255\375\276\357\106\307\310\271\317\163\374\364\064\271\371\054
+\103\347\140\023\075\172\343\262\317\073\147\154\220\255\300\271
+\077\204\122\360\065\102\334\164\334\050\073\275\122\264\247\254
+\162\105\027\306\360\211\353\264\252\045\362\135\113\136\321\331
+\207\272\326\175\174\365\316\062\237\020\063\305\261\112\273\136
+\221\061\302\320\351\101\302\221\144\176\011\101\073\333\213\010
+\067\152\252\312\122\336\265\071\036\300\210\003\245\077\213\231
+\023\141\103\265\233\202\263\356\040\157\317\241\104\242\352\057
+\153\100\237\217\053\127\255\241\123\302\205\042\151\235\240\077
+\121\337\013\101\221\015\245\341\250\252\134\111\010\135\275\336
+\160\101\261\017\311\143\153\323\177\064\164\002\057\064\132\170
+\165\034\150\172\201\147\212\363\332\100\360\140\143\364\222\040
+\327\003\246\075\243\036\147\304\204\033\101\245\311\214\346\275
+\352\110\266\005\026\010\263\067\022\132\367\141\074\367\070\157
+\056\227\340\157\126\070\124\323\050\265\255\024\156\056\113\144
+\265\047\145\267\165\045\011\266\007\075\225\126\002\012\202\140
+\262\163\105\340\063\046\121\164\232\271\324\120\034\366\115\133
+\133\122\122\023\132\246\177\247\016\341\350\101\124\147\230\214
+\207\325\311\323\154\313\323\124\222\006\011\064\101\367\201\157
+\077\236\311\174\165\125\260\347\301\263\167\350\303\304\000\065
+\225\100\160\020\112\005\336\045\273\237\131\245\144\274\107\140
+\277\140\343\166\213\023\125\335\341\164\172\271\317\044\246\152
+\177\336\144\042\104\130\150\202\152\020\371\075\345\076\033\271
+\275\374\042\364\140\004\211\273\125\155\050\125\372\336\216\215
+\033\041\024\327\067\213\064\173\115\366\262\262\020\317\063\261
+\175\034\142\231\110\313\053\154\166\226\125\277\031\015\035\037
+\273\145\252\033\216\231\265\306\050\220\345\202\055\170\120\040
+\232\375\171\057\044\177\360\211\051\151\364\175\315\163\276\263
+\355\116\301\321\355\122\136\217\367\270\327\215\207\255\262\331
+\033\121\022\377\126\263\341\257\064\175\134\244\170\210\020\236
+\235\003\306\245\252\242\044\121\367\111\024\305\261\356\131\103
+\225\337\253\150\050\060\077\002\003\001\000\001\243\202\001\206
+\060\202\001\202\060\022\006\003\125\035\023\001\001\377\004\010
+\060\006\001\001\377\002\001\001\060\123\006\003\125\035\040\004
+\114\060\112\060\110\006\011\053\006\001\004\001\261\076\001\000
+\060\073\060\071\006\010\053\006\001\005\005\007\002\001\026\055
+\150\164\164\160\072\057\057\167\167\167\056\160\165\142\154\151
+\143\055\164\162\165\163\164\056\143\157\155\057\103\120\123\057
+\117\155\156\151\122\157\157\164\056\150\164\155\154\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\201\240
+\006\003\125\035\043\004\201\230\060\201\225\200\024\246\014\035
+\237\141\377\007\027\265\277\070\106\333\103\060\325\216\260\122
+\006\241\171\244\167\060\165\061\013\060\011\006\003\125\004\006
+\023\002\125\123\061\030\060\026\006\003\125\004\012\023\017\107
+\124\105\040\103\157\162\160\157\162\141\164\151\157\156\061\047
+\060\045\006\003\125\004\013\023\036\107\124\105\040\103\171\142
+\145\162\124\162\165\163\164\040\123\157\154\165\164\151\157\156
+\163\054\040\111\156\143\056\061\043\060\041\006\003\125\004\003
+\023\032\107\124\105\040\103\171\142\145\162\124\162\165\163\164
+\040\107\154\157\142\141\154\040\122\157\157\164\202\002\001\245
+\060\105\006\003\125\035\037\004\076\060\074\060\072\240\070\240
+\066\206\064\150\164\164\160\072\057\057\167\167\167\056\160\165
+\142\154\151\143\055\164\162\165\163\164\056\143\157\155\057\143
+\147\151\055\142\151\156\057\103\122\114\057\062\060\061\070\057
+\143\144\160\056\143\162\154\060\035\006\003\125\035\016\004\026
+\004\024\253\371\150\337\317\112\067\327\173\105\214\137\162\336
+\100\104\303\145\273\302\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\201\201\000\217\150\153\245\133\007\272
+\104\146\016\034\250\134\060\173\063\344\012\046\004\374\357\236
+\032\070\326\056\241\037\320\231\107\302\165\144\044\375\236\073
+\050\166\271\046\050\141\221\014\155\054\370\004\237\174\120\001
+\325\343\151\257\357\025\322\105\233\044\011\052\146\005\117\045
+\201\312\135\276\252\301\131\047\256\063\216\202\367\337\164\260
+\125\263\216\370\347\067\310\156\252\126\104\366\275\123\201\043
+\226\075\264\372\062\212\123\146\104\045\242\045\306\246\074\045
+\214\360\340\050\006\042\267\046\101
+END
+
+# Trust for Certificate "Explicitly Distrust DigiNotar Cyber CA"
+# Issuer: E=info@diginotar.nl,CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: E=info@diginotar.nl,CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Not Valid Before: Wed Oct 04 10:54:12 2006
+# Not Valid After : Tue Oct 04 10:53:12 2011
+# Fingerprint (MD5): BC:BD:89:12:B4:FF:E5:F9:26:47:C8:60:36:5B:D9:54
+# Fingerprint (SHA1): A5:8E:A0:EC:F6:44:56:35:19:1D:68:5B:C7:A0:E4:1C:B0:4D:79:2E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Cyber CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\245\216\240\354\366\104\126\065\031\035\150\133\307\240\344\034
+\260\115\171\056
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\274\275\211\022\264\377\345\371\046\107\310\140\066\133\331\124
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\140\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\033\060\031\006\003\125\004\003\023\022\104\151
+\147\151\116\157\164\141\162\040\103\171\142\145\162\040\103\101
+\061\040\060\036\006\011\052\206\110\206\367\015\001\011\001\026
+\021\151\156\146\157\100\144\151\147\151\156\157\164\141\162\056
+\156\154
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrust DigiNotar Cyber CA 2nd"
+#
+# Issuer: CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Not Valid Before: Wed Sep 27 10:53:53 2006
+# Not Valid After : Fri Sep 20 09:44:07 2013
+# Fingerprint (MD5): F0:AE:A9:3D:F2:2C:88:DC:7C:85:1B:96:7D:5A:1C:11
+# Fingerprint (SHA1): 88:1E:45:05:0F:98:D9:59:FB:0A:35:F9:4C:0E:28:97:55:16:29:B3
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Cyber CA 2nd"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\076\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\033\060\031\006\003\125\004\003\023\022\104\151
+\147\151\116\157\164\141\162\040\103\171\142\145\162\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\076\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\033\060\031\006\003\125\004\003\023\022\104\151
+\147\151\116\157\164\141\162\040\103\171\142\145\162\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\001\060\202\004\152\240\003\002\001\002\002\004\017
+\377\377\377\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\076\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\022\060\020\006\003\125\004\012\023\011\104\151\147\151
+\116\157\164\141\162\061\033\060\031\006\003\125\004\003\023\022
+\104\151\147\151\116\157\164\141\162\040\103\171\142\145\162\040
+\103\101\060\036\027\015\060\066\060\071\062\067\061\060\065\063
+\065\063\132\027\015\061\063\060\071\062\060\060\071\064\064\060
+\067\132\060\076\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\022\060\020\006\003\125\004\012\023\011\104\151\147\151
+\116\157\164\141\162\061\033\060\031\006\003\125\004\003\023\022
+\104\151\147\151\116\157\164\141\162\040\103\171\142\145\162\040
+\103\101\060\202\002\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202
+\002\001\000\322\316\025\012\055\250\136\204\147\255\375\276\357
+\106\307\310\271\317\163\374\364\064\271\371\054\103\347\140\023
+\075\172\343\262\317\073\147\154\220\255\300\271\077\204\122\360
+\065\102\334\164\334\050\073\275\122\264\247\254\162\105\027\306
+\360\211\353\264\252\045\362\135\113\136\321\331\207\272\326\175
+\174\365\316\062\237\020\063\305\261\112\273\136\221\061\302\320
+\351\101\302\221\144\176\011\101\073\333\213\010\067\152\252\312
+\122\336\265\071\036\300\210\003\245\077\213\231\023\141\103\265
+\233\202\263\356\040\157\317\241\104\242\352\057\153\100\237\217
+\053\127\255\241\123\302\205\042\151\235\240\077\121\337\013\101
+\221\015\245\341\250\252\134\111\010\135\275\336\160\101\261\017
+\311\143\153\323\177\064\164\002\057\064\132\170\165\034\150\172
+\201\147\212\363\332\100\360\140\143\364\222\040\327\003\246\075
+\243\036\147\304\204\033\101\245\311\214\346\275\352\110\266\005
+\026\010\263\067\022\132\367\141\074\367\070\157\056\227\340\157
+\126\070\124\323\050\265\255\024\156\056\113\144\265\047\145\267
+\165\045\011\266\007\075\225\126\002\012\202\140\262\163\105\340
+\063\046\121\164\232\271\324\120\034\366\115\133\133\122\122\023
+\132\246\177\247\016\341\350\101\124\147\230\214\207\325\311\323
+\154\313\323\124\222\006\011\064\101\367\201\157\077\236\311\174
+\165\125\260\347\301\263\167\350\303\304\000\065\225\100\160\020
+\112\005\336\045\273\237\131\245\144\274\107\140\277\140\343\166
+\213\023\125\335\341\164\172\271\317\044\246\152\177\336\144\042
+\104\130\150\202\152\020\371\075\345\076\033\271\275\374\042\364
+\140\004\211\273\125\155\050\125\372\336\216\215\033\041\024\327
+\067\213\064\173\115\366\262\262\020\317\063\261\175\034\142\231
+\110\313\053\154\166\226\125\277\031\015\035\037\273\145\252\033
+\216\231\265\306\050\220\345\202\055\170\120\040\232\375\171\057
+\044\177\360\211\051\151\364\175\315\163\276\263\355\116\301\321
+\355\122\136\217\367\270\327\215\207\255\262\331\033\121\022\377
+\126\263\341\257\064\175\134\244\170\210\020\236\235\003\306\245
+\252\242\044\121\367\111\024\305\261\356\131\103\225\337\253\150
+\050\060\077\002\003\001\000\001\243\202\001\206\060\202\001\202
+\060\022\006\003\125\035\023\001\001\377\004\010\060\006\001\001
+\377\002\001\001\060\123\006\003\125\035\040\004\114\060\112\060
+\110\006\011\053\006\001\004\001\261\076\001\000\060\073\060\071
+\006\010\053\006\001\005\005\007\002\001\026\055\150\164\164\160
+\072\057\057\167\167\167\056\160\165\142\154\151\143\055\164\162
+\165\163\164\056\143\157\155\057\103\120\123\057\117\155\156\151
+\122\157\157\164\056\150\164\155\154\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\006\060\201\240\006\003\125\035
+\043\004\201\230\060\201\225\200\024\246\014\035\237\141\377\007
+\027\265\277\070\106\333\103\060\325\216\260\122\006\241\171\244
+\167\060\165\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\030\060\026\006\003\125\004\012\023\017\107\124\105\040\103
+\157\162\160\157\162\141\164\151\157\156\061\047\060\045\006\003
+\125\004\013\023\036\107\124\105\040\103\171\142\145\162\124\162
+\165\163\164\040\123\157\154\165\164\151\157\156\163\054\040\111
+\156\143\056\061\043\060\041\006\003\125\004\003\023\032\107\124
+\105\040\103\171\142\145\162\124\162\165\163\164\040\107\154\157
+\142\141\154\040\122\157\157\164\202\002\001\245\060\105\006\003
+\125\035\037\004\076\060\074\060\072\240\070\240\066\206\064\150
+\164\164\160\072\057\057\167\167\167\056\160\165\142\154\151\143
+\055\164\162\165\163\164\056\143\157\155\057\143\147\151\055\142
+\151\156\057\103\122\114\057\062\060\061\070\057\143\144\160\056
+\143\162\154\060\035\006\003\125\035\016\004\026\004\024\253\371
+\150\337\317\112\067\327\173\105\214\137\162\336\100\104\303\145
+\273\302\060\015\006\011\052\206\110\206\367\015\001\001\005\005
+\000\003\201\201\000\011\312\142\017\215\273\112\340\324\172\065
+\053\006\055\321\050\141\266\254\001\373\203\111\274\256\324\057
+\055\206\256\031\203\245\326\035\023\342\027\276\376\062\164\351
+\172\024\070\312\224\136\367\051\001\151\161\033\221\032\375\243
+\273\252\035\312\173\342\026\375\241\243\016\363\014\137\262\341
+\040\061\224\053\136\222\166\355\372\351\265\043\246\277\012\073
+\003\251\157\122\140\124\315\137\351\267\057\174\242\047\375\101
+\203\165\266\015\373\170\046\363\261\105\351\062\225\052\032\065
+\041\225\305\242\165
+END
+
+# Trust for Certificate "Explicitly Distrust DigiNotar Cyber CA 2nd"
+# Issuer: CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: CN=DigiNotar Cyber CA,O=DigiNotar,C=NL
+# Not Valid Before: Wed Sep 27 10:53:53 2006
+# Not Valid After : Fri Sep 20 09:44:07 2013
+# Fingerprint (MD5): F0:AE:A9:3D:F2:2C:88:DC:7C:85:1B:96:7D:5A:1C:11
+# Fingerprint (SHA1): 88:1E:45:05:0F:98:D9:59:FB:0A:35:F9:4C:0E:28:97:55:16:29:B3
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrust DigiNotar Cyber CA 2nd"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\210\036\105\005\017\230\331\131\373\012\065\371\114\016\050\227
+\125\026\051\263
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\360\256\251\075\362\054\210\334\174\205\033\226\175\132\034\021
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\076\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\022\060\020\006\003\125\004\012\023\011\104\151\147\151\116\157
+\164\141\162\061\033\060\031\006\003\125\004\003\023\022\104\151
+\147\151\116\157\164\141\162\040\103\171\142\145\162\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrusted DigiNotar PKIoverheid"
+#
+# Issuer: CN=DigiNotar PKIoverheid CA Overheid en Bedrijven,O=DigiNotar B.V.,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: CN=DigiNotar PKIoverheid CA Overheid en Bedrijven,O=DigiNotar B.V.,C=NL
+# Not Valid Before: Thu Jul 05 08:42:08 2007
+# Not Valid After : Mon Jul 27 08:39:47 2015
+# Fingerprint (MD5): A3:CF:B3:FF:F9:4F:A7:B1:EB:3A:75:58:4E:2E:9F:EA
+# Fingerprint (SHA1): A7:A8:C9:AC:F4:5F:90:92:76:86:B8:C0:A2:0E:93:58:7D:DE:30:E4
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted DigiNotar PKIoverheid"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\027\060\025\006\003\125\004\012\023\016\104\151\147\151\116\157
+\164\141\162\040\102\056\126\056\061\067\060\065\006\003\125\004
+\003\023\056\104\151\147\151\116\157\164\141\162\040\120\113\111
+\157\166\145\162\150\145\151\144\040\103\101\040\117\166\145\162
+\150\145\151\144\040\145\156\040\102\145\144\162\151\152\166\145
+\156
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\027\060\025\006\003\125\004\012\023\016\104\151\147\151\116\157
+\164\141\162\040\102\056\126\056\061\067\060\065\006\003\125\004
+\003\023\056\104\151\147\151\116\157\164\141\162\040\120\113\111
+\157\166\145\162\150\145\151\144\040\103\101\040\117\166\145\162
+\150\145\151\144\040\145\156\040\102\145\144\162\151\152\166\145
+\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\216\060\202\003\166\240\003\002\001\002\002\004\017
+\377\377\377\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\137\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\027\060\025\006\003\125\004\012\023\016\104\151\147\151
+\116\157\164\141\162\040\102\056\126\056\061\067\060\065\006\003
+\125\004\003\023\056\104\151\147\151\116\157\164\141\162\040\120
+\113\111\157\166\145\162\150\145\151\144\040\103\101\040\117\166
+\145\162\150\145\151\144\040\145\156\040\102\145\144\162\151\152
+\166\145\156\060\036\027\015\060\067\060\067\060\065\060\070\064
+\062\060\070\132\027\015\061\065\060\067\062\067\060\070\063\071
+\064\067\132\060\137\061\013\060\011\006\003\125\004\006\023\002
+\116\114\061\027\060\025\006\003\125\004\012\023\016\104\151\147
+\151\116\157\164\141\162\040\102\056\126\056\061\067\060\065\006
+\003\125\004\003\023\056\104\151\147\151\116\157\164\141\162\040
+\120\113\111\157\166\145\162\150\145\151\144\040\103\101\040\117
+\166\145\162\150\145\151\144\040\145\156\040\102\145\144\162\151
+\152\166\145\156\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\334\275\322\247\116\152\012\273\073\242\205
+\341\177\000\255\276\264\060\150\230\007\315\240\172\304\224\317
+\161\371\212\067\344\123\353\127\166\314\213\346\154\376\356\207
+\125\310\076\273\004\071\000\247\200\170\254\133\117\176\364\275
+\270\124\270\161\073\007\061\111\071\223\124\174\040\073\171\053
+\217\273\141\220\175\261\254\346\037\220\056\235\105\001\251\144
+\055\115\303\057\271\347\120\325\116\052\134\253\166\166\067\106
+\327\171\354\102\231\367\242\354\244\211\160\334\070\053\207\246
+\252\044\346\235\222\044\033\276\366\375\324\057\031\027\172\346
+\062\007\224\124\005\123\103\351\154\274\257\107\313\274\313\375
+\275\073\104\022\201\361\153\113\273\355\264\317\253\045\117\030
+\322\314\002\374\243\117\265\102\063\313\131\315\011\334\323\120
+\375\240\166\214\254\176\146\212\102\366\255\034\222\363\266\373
+\024\106\353\115\327\057\060\340\155\356\133\066\276\104\164\267
+\040\005\127\205\115\350\000\031\242\366\014\346\256\241\300\102
+\337\247\254\202\135\307\150\267\030\346\211\113\232\153\372\316
+\171\371\363\054\247\002\003\001\000\001\243\202\001\120\060\202
+\001\114\060\110\006\003\125\035\040\004\101\060\077\060\075\006
+\004\125\035\040\000\060\065\060\063\006\010\053\006\001\005\005
+\007\002\001\026\047\150\164\164\160\072\057\057\167\167\167\056
+\144\151\147\151\156\157\164\141\162\056\156\154\057\143\160\163
+\057\160\153\151\157\166\145\162\150\145\151\144\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\201\200
+\006\003\125\035\043\004\171\060\167\200\024\013\206\326\017\167
+\243\150\261\373\144\011\303\210\156\134\004\034\127\351\075\241
+\131\244\127\060\125\061\013\060\011\006\003\125\004\006\023\002
+\116\114\061\036\060\034\006\003\125\004\012\023\025\123\164\141
+\141\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144
+\145\156\061\046\060\044\006\003\125\004\003\023\035\123\164\141
+\141\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144
+\145\156\040\122\157\157\164\040\103\101\202\004\000\230\232\171
+\060\075\006\003\125\035\037\004\066\060\064\060\062\240\060\240
+\056\206\054\150\164\164\160\072\057\057\143\162\154\056\160\153
+\151\157\166\145\162\150\145\151\144\056\156\154\057\104\157\155
+\117\166\114\141\164\145\163\164\103\122\114\056\143\162\154\060
+\035\006\003\125\035\016\004\026\004\024\114\010\311\215\166\361
+\230\307\076\337\074\327\057\165\015\261\166\171\227\314\060\015
+\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001
+\001\000\014\224\207\032\277\115\343\205\342\356\327\330\143\171
+\016\120\337\306\204\133\322\273\331\365\061\012\032\065\227\164
+\337\024\372\052\017\076\355\240\343\010\366\325\116\133\257\246
+\256\045\342\105\153\042\017\267\124\050\176\222\336\215\024\154
+\321\034\345\156\164\004\234\267\357\064\104\105\337\311\203\035
+\031\037\300\051\151\337\211\325\077\302\260\123\155\345\116\027
+\344\163\141\043\023\046\161\103\375\114\131\313\303\337\042\252
+\041\053\331\277\225\021\032\212\244\342\253\247\135\113\157\051
+\365\122\321\344\322\025\261\213\376\360\003\317\247\175\351\231
+\207\070\263\015\163\024\344\162\054\341\316\365\255\006\110\144
+\372\323\051\271\242\330\273\364\325\013\245\100\104\103\216\240
+\277\316\132\245\122\114\144\323\027\061\141\314\350\244\212\350
+\344\210\373\351\345\057\006\063\063\233\224\146\146\261\253\120
+\072\241\011\201\164\123\132\047\271\246\322\045\317\323\303\247
+\377\226\320\057\352\340\036\215\122\351\030\034\040\012\107\240
+\226\126\016\100\220\121\104\254\032\375\361\356\205\037\367\102
+\132\145
+END
+
+# Trust for Certificate "Explicitly Distrusted DigiNotar PKIoverheid"
+# Issuer: CN=DigiNotar PKIoverheid CA Overheid en Bedrijven,O=DigiNotar B.V.,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: CN=DigiNotar PKIoverheid CA Overheid en Bedrijven,O=DigiNotar B.V.,C=NL
+# Not Valid Before: Thu Jul 05 08:42:08 2007
+# Not Valid After : Mon Jul 27 08:39:47 2015
+# Fingerprint (MD5): A3:CF:B3:FF:F9:4F:A7:B1:EB:3A:75:58:4E:2E:9F:EA
+# Fingerprint (SHA1): A7:A8:C9:AC:F4:5F:90:92:76:86:B8:C0:A2:0E:93:58:7D:DE:30:E4
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted DigiNotar PKIoverheid"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\247\250\311\254\364\137\220\222\166\206\270\300\242\016\223\130
+\175\336\060\344
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\243\317\263\377\371\117\247\261\353\072\165\130\116\056\237\352
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\137\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\027\060\025\006\003\125\004\012\023\016\104\151\147\151\116\157
+\164\141\162\040\102\056\126\056\061\067\060\065\006\003\125\004
+\003\023\056\104\151\147\151\116\157\164\141\162\040\120\113\111
+\157\166\145\162\150\145\151\144\040\103\101\040\117\166\145\162
+\150\145\151\144\040\145\156\040\102\145\144\162\151\152\166\145
+\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrusted DigiNotar PKIoverheid G2"
+#
+# Issuer: CN=DigiNotar PKIoverheid CA Organisatie - G2,O=DigiNotar B.V.,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: CN=DigiNotar PKIoverheid CA Organisatie - G2,O=DigiNotar B.V.,C=NL
+# Not Valid Before: Wed May 12 08:51:39 2010
+# Not Valid After : Mon Mar 23 09:50:05 2020
+# Fingerprint (MD5): 2E:61:A2:D1:78:CE:EE:BF:59:33:B0:23:14:0F:94:1C
+# Fingerprint (SHA1): D5:F2:57:A9:BF:2D:D0:3F:8B:46:57:F9:2B:C9:A4:C6:92:E1:42:42
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted DigiNotar PKIoverheid G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\027\060\025\006\003\125\004\012\014\016\104\151\147\151\116\157
+\164\141\162\040\102\056\126\056\061\062\060\060\006\003\125\004
+\003\014\051\104\151\147\151\116\157\164\141\162\040\120\113\111
+\157\166\145\162\150\145\151\144\040\103\101\040\117\162\147\141
+\156\151\163\141\164\151\145\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\027\060\025\006\003\125\004\012\014\016\104\151\147\151\116\157
+\164\141\162\040\102\056\126\056\061\062\060\060\006\003\125\004
+\003\014\051\104\151\147\151\116\157\164\141\162\040\120\113\111
+\157\166\145\162\150\145\151\144\040\103\101\040\117\162\147\141
+\156\151\163\141\164\151\145\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\225\060\202\004\175\240\003\002\001\002\002\004\017
+\377\377\377\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\132\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\027\060\025\006\003\125\004\012\014\016\104\151\147\151
+\116\157\164\141\162\040\102\056\126\056\061\062\060\060\006\003
+\125\004\003\014\051\104\151\147\151\116\157\164\141\162\040\120
+\113\111\157\166\145\162\150\145\151\144\040\103\101\040\117\162
+\147\141\156\151\163\141\164\151\145\040\055\040\107\062\060\036
+\027\015\061\060\060\065\061\062\060\070\065\061\063\071\132\027
+\015\062\060\060\063\062\063\060\071\065\060\060\065\132\060\132
+\061\013\060\011\006\003\125\004\006\023\002\116\114\061\027\060
+\025\006\003\125\004\012\014\016\104\151\147\151\116\157\164\141
+\162\040\102\056\126\056\061\062\060\060\006\003\125\004\003\014
+\051\104\151\147\151\116\157\164\141\162\040\120\113\111\157\166
+\145\162\150\145\151\144\040\103\101\040\117\162\147\141\156\151
+\163\141\164\151\145\040\055\040\107\062\060\202\002\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002
+\017\000\060\202\002\012\002\202\002\001\000\261\023\031\017\047
+\346\154\324\125\206\113\320\354\211\212\105\221\170\254\107\275
+\107\053\344\374\105\353\117\264\046\163\133\067\323\303\177\366
+\343\336\327\243\370\055\150\305\010\076\113\224\326\344\207\045
+\066\153\204\265\030\164\363\050\130\163\057\233\152\317\274\004
+\036\366\336\335\257\374\113\252\365\333\146\142\045\001\045\202
+\336\362\227\132\020\156\335\135\251\042\261\004\251\043\163\072
+\370\161\255\035\317\204\104\353\107\321\257\155\310\174\050\253
+\307\362\067\172\164\137\137\305\002\024\212\243\132\343\033\154
+\001\343\135\216\331\150\326\364\011\033\062\334\221\265\054\365
+\040\353\214\003\155\046\111\270\223\304\205\135\330\322\233\257
+\126\152\314\005\063\314\240\102\236\064\125\104\234\153\240\324
+\022\320\053\124\315\267\211\015\345\366\353\350\373\205\001\063
+\117\172\153\361\235\162\063\226\016\367\262\204\245\245\047\304
+\047\361\121\163\051\167\272\147\156\376\114\334\264\342\241\241
+\201\057\071\111\215\103\070\023\316\320\245\134\302\207\072\000
+\147\145\102\043\361\066\131\012\035\243\121\310\274\243\224\052
+\061\337\343\074\362\235\032\074\004\260\357\261\012\060\023\163
+\266\327\363\243\114\001\165\024\205\170\300\327\212\071\130\205
+\120\372\056\346\305\276\317\213\077\257\217\066\324\045\011\055
+\322\017\254\162\223\362\277\213\324\120\263\371\025\120\233\231
+\365\024\331\373\213\221\243\062\046\046\240\370\337\073\140\201
+\206\203\171\133\053\353\023\075\051\072\301\155\335\275\236\216
+\207\326\112\256\064\227\005\356\024\246\366\334\070\176\112\351
+\044\124\007\075\227\150\067\106\153\015\307\250\041\257\023\124
+\344\011\152\361\115\106\012\311\135\373\233\117\275\336\373\267
+\124\313\270\070\234\247\071\373\152\055\300\173\215\253\245\247
+\127\354\112\222\212\063\305\341\040\134\163\330\220\222\053\200
+\325\017\206\030\151\174\071\117\204\206\274\367\114\133\363\325
+\264\312\240\302\360\067\042\312\171\122\037\123\346\252\363\220
+\260\073\335\362\050\375\254\353\305\006\044\240\311\324\057\017
+\130\375\265\236\354\017\317\262\131\320\242\004\172\070\152\256
+\162\373\275\360\045\142\224\011\247\005\013\002\003\001\000\001
+\243\202\001\141\060\202\001\135\060\110\006\003\125\035\040\004
+\101\060\077\060\075\006\004\125\035\040\000\060\065\060\063\006
+\010\053\006\001\005\005\007\002\001\026\047\150\164\164\160\072
+\057\057\167\167\167\056\144\151\147\151\156\157\164\141\162\056
+\156\154\057\143\160\163\057\160\153\151\157\166\145\162\150\145
+\151\144\060\017\006\003\125\035\023\001\001\377\004\005\060\003
+\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\006\060\201\205\006\003\125\035\043\004\176\060\174\200
+\024\071\020\213\111\222\134\333\141\022\040\315\111\235\032\216
+\332\234\147\100\271\241\136\244\134\060\132\061\013\060\011\006
+\003\125\004\006\023\002\116\114\061\036\060\034\006\003\125\004
+\012\014\025\123\164\141\141\164\040\144\145\162\040\116\145\144
+\145\162\154\141\156\144\145\156\061\053\060\051\006\003\125\004
+\003\014\042\123\164\141\141\164\040\144\145\162\040\116\145\144
+\145\162\154\141\156\144\145\156\040\122\157\157\164\040\103\101
+\040\055\040\107\062\202\004\000\230\226\364\060\111\006\003\125
+\035\037\004\102\060\100\060\076\240\074\240\072\206\070\150\164
+\164\160\072\057\057\143\162\154\056\160\153\151\157\166\145\162
+\150\145\151\144\056\156\154\057\104\157\155\117\162\147\141\156
+\151\163\141\164\151\145\114\141\164\145\163\164\103\122\114\055
+\107\062\056\143\162\154\060\035\006\003\125\035\016\004\026\004
+\024\274\135\224\073\331\253\173\003\045\163\141\302\333\055\356
+\374\253\217\145\241\060\015\006\011\052\206\110\206\367\015\001
+\001\013\005\000\003\202\002\001\000\217\374\055\114\267\331\055
+\325\037\275\357\313\364\267\150\027\165\235\116\325\367\335\234
+\361\052\046\355\237\242\266\034\003\325\123\263\354\010\317\064
+\342\343\303\364\265\026\057\310\303\276\327\323\163\253\000\066
+\371\032\112\176\326\143\351\136\106\272\245\266\216\025\267\243
+\052\330\103\035\357\135\310\037\201\205\263\213\367\377\074\364
+\331\364\106\010\077\234\274\035\240\331\250\114\315\045\122\116
+\012\261\040\367\037\351\103\331\124\106\201\023\232\300\136\164
+\154\052\230\062\352\374\167\273\015\245\242\061\230\042\176\174
+\174\347\332\244\255\354\267\056\032\031\161\370\110\120\332\103
+\217\054\204\335\301\100\047\343\265\360\025\116\226\324\370\134
+\343\206\051\106\053\327\073\007\353\070\177\310\206\127\227\323
+\357\052\063\304\027\120\325\144\151\153\053\153\105\136\135\057
+\027\312\132\116\317\303\327\071\074\365\073\237\106\271\233\347
+\016\111\227\235\326\325\343\033\017\352\217\001\116\232\023\224
+\131\012\002\007\110\113\032\140\253\177\117\355\013\330\125\015
+\150\157\125\234\151\145\025\102\354\300\334\335\154\254\303\026
+\316\013\035\126\233\244\304\304\322\056\340\017\342\104\047\053
+\120\151\244\334\142\350\212\041\051\102\154\314\000\072\226\166
+\233\357\100\300\244\136\167\204\062\154\046\052\071\146\256\135
+\343\271\271\262\054\150\037\036\232\220\003\071\360\252\263\244
+\314\111\213\030\064\351\067\311\173\051\307\204\174\157\104\025
+\057\354\141\131\004\311\105\313\242\326\122\242\174\177\051\222
+\326\112\305\213\102\250\324\376\352\330\307\207\043\030\344\235
+\172\175\163\100\122\230\240\256\156\343\005\077\005\017\340\245
+\306\155\115\355\203\067\210\234\307\363\334\102\232\152\266\327
+\041\111\066\167\362\357\030\117\305\160\331\236\351\336\267\053
+\213\364\274\176\050\337\015\100\311\205\134\256\235\305\061\377
+\320\134\016\265\250\176\360\351\057\272\257\210\256\345\265\321
+\130\245\257\234\161\247\051\001\220\203\151\067\202\005\272\374
+\011\301\010\156\214\170\073\303\063\002\200\077\104\205\010\035
+\337\125\126\010\255\054\205\055\135\261\003\341\256\252\164\305
+\244\363\116\272\067\230\173\202\271
+END
+
+# Trust for Certificate "Explicitly Distrusted DigiNotar PKIoverheid G2"
+# Issuer: CN=DigiNotar PKIoverheid CA Organisatie - G2,O=DigiNotar B.V.,C=NL
+# Serial Number: 268435455 (0xfffffff)
+# Subject: CN=DigiNotar PKIoverheid CA Organisatie - G2,O=DigiNotar B.V.,C=NL
+# Not Valid Before: Wed May 12 08:51:39 2010
+# Not Valid After : Mon Mar 23 09:50:05 2020
+# Fingerprint (MD5): 2E:61:A2:D1:78:CE:EE:BF:59:33:B0:23:14:0F:94:1C
+# Fingerprint (SHA1): D5:F2:57:A9:BF:2D:D0:3F:8B:46:57:F9:2B:C9:A4:C6:92:E1:42:42
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted DigiNotar PKIoverheid G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\325\362\127\251\277\055\320\077\213\106\127\371\053\311\244\306
+\222\341\102\102
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\056\141\242\321\170\316\356\277\131\063\260\043\024\017\224\034
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\027\060\025\006\003\125\004\012\014\016\104\151\147\151\116\157
+\164\141\162\040\102\056\126\056\061\062\060\060\006\003\125\004
+\003\014\051\104\151\147\151\116\157\164\141\162\040\120\113\111
+\157\166\145\162\150\145\151\144\040\103\101\040\117\162\147\141
+\156\151\163\141\164\151\145\040\055\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\017\377\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (cyb)"
+#
+# Issuer: CN=GTE CyberTrust Global Root,OU="GTE CyberTrust Solutions, Inc.",O=GTE Corporation,C=US
+# Serial Number:07:ff:ff:ff:ff:ff
+# Subject: CN=Digisign Server ID (Enrich),OU=457608-K,O=Digicert Sdn. Bhd.,C=MY
+# Not Valid Before: Tue Jul 17 15:17:49 2007
+# Not Valid After : Tue Jul 17 15:16:55 2012
+# Fingerprint (MD5): D2:DE:AE:50:A4:98:2D:6F:37:B7:86:52:C8:2D:4B:6A
+# Fingerprint (SHA1): 55:50:AF:EC:BF:E8:C3:AD:C4:0B:E3:AD:0C:A7:E4:15:8C:39:59:4F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (cyb)"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\143\061\013\060\011\006\003\125\004\006\023\002\115\131\061
+\033\060\031\006\003\125\004\012\023\022\104\151\147\151\143\145
+\162\164\040\123\144\156\056\040\102\150\144\056\061\021\060\017
+\006\003\125\004\013\023\010\064\065\067\066\060\070\055\113\061
+\044\060\042\006\003\125\004\003\023\033\104\151\147\151\163\151
+\147\156\040\123\145\162\166\145\162\040\111\104\040\050\105\156
+\162\151\143\150\051
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\030\060\026\006\003\125\004\012\023\017\107\124\105\040\103\157
+\162\160\157\162\141\164\151\157\156\061\047\060\045\006\003\125
+\004\013\023\036\107\124\105\040\103\171\142\145\162\124\162\165
+\163\164\040\123\157\154\165\164\151\157\156\163\054\040\111\156
+\143\056\061\043\060\041\006\003\125\004\003\023\032\107\124\105
+\040\103\171\142\145\162\124\162\165\163\164\040\107\154\157\142
+\141\154\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\007\377\377\377\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\315\060\202\003\066\240\003\002\001\002\002\006\007
+\377\377\377\377\377\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\060\165\061\013\060\011\006\003\125\004\006\023
+\002\125\123\061\030\060\026\006\003\125\004\012\023\017\107\124
+\105\040\103\157\162\160\157\162\141\164\151\157\156\061\047\060
+\045\006\003\125\004\013\023\036\107\124\105\040\103\171\142\145
+\162\124\162\165\163\164\040\123\157\154\165\164\151\157\156\163
+\054\040\111\156\143\056\061\043\060\041\006\003\125\004\003\023
+\032\107\124\105\040\103\171\142\145\162\124\162\165\163\164\040
+\107\154\157\142\141\154\040\122\157\157\164\060\036\027\015\060
+\067\060\067\061\067\061\065\061\067\064\071\132\027\015\061\062
+\060\067\061\067\061\065\061\066\065\065\132\060\143\061\013\060
+\011\006\003\125\004\006\023\002\115\131\061\033\060\031\006\003
+\125\004\012\023\022\104\151\147\151\143\145\162\164\040\123\144
+\156\056\040\102\150\144\056\061\021\060\017\006\003\125\004\013
+\023\010\064\065\067\066\060\070\055\113\061\044\060\042\006\003
+\125\004\003\023\033\104\151\147\151\163\151\147\156\040\123\145
+\162\166\145\162\040\111\104\040\050\105\156\162\151\143\150\051
+\060\201\237\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\201\215\000\060\201\211\002\201\201\000\255\250\144
+\113\115\207\307\204\131\271\373\220\106\240\246\211\300\361\376
+\325\332\124\202\067\015\231\053\105\046\012\350\126\260\177\312
+\250\364\216\107\204\001\202\051\343\263\152\265\221\363\373\225
+\205\274\162\250\144\350\012\100\234\305\364\161\256\173\173\152
+\007\352\220\024\117\215\211\257\224\253\262\006\324\002\152\173
+\230\037\131\271\072\315\124\372\040\337\262\052\012\351\270\335
+\151\220\300\051\323\116\320\227\355\146\314\305\031\111\006\177
+\372\136\054\174\173\205\033\062\102\337\173\225\045\002\003\001
+\000\001\243\202\001\170\060\202\001\164\060\022\006\003\125\035
+\023\001\001\377\004\010\060\006\001\001\377\002\001\000\060\134
+\006\003\125\035\040\004\125\060\123\060\110\006\011\053\006\001
+\004\001\261\076\001\000\060\073\060\071\006\010\053\006\001\005
+\005\007\002\001\026\055\150\164\164\160\072\057\057\143\171\142
+\145\162\164\162\165\163\164\056\157\155\156\151\162\157\157\164
+\056\143\157\155\057\162\145\160\157\163\151\164\157\162\171\056
+\143\146\155\060\007\006\005\140\203\112\001\001\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\346\060\201\211\006
+\003\125\035\043\004\201\201\060\177\241\171\244\167\060\165\061
+\013\060\011\006\003\125\004\006\023\002\125\123\061\030\060\026
+\006\003\125\004\012\023\017\107\124\105\040\103\157\162\160\157
+\162\141\164\151\157\156\061\047\060\045\006\003\125\004\013\023
+\036\107\124\105\040\103\171\142\145\162\124\162\165\163\164\040
+\123\157\154\165\164\151\157\156\163\054\040\111\156\143\056\061
+\043\060\041\006\003\125\004\003\023\032\107\124\105\040\103\171
+\142\145\162\124\162\165\163\164\040\107\154\157\142\141\154\040
+\122\157\157\164\202\002\001\245\060\105\006\003\125\035\037\004
+\076\060\074\060\072\240\070\240\066\206\064\150\164\164\160\072
+\057\057\167\167\167\056\160\165\142\154\151\143\055\164\162\165
+\163\164\056\143\157\155\057\143\147\151\055\142\151\156\057\103
+\122\114\057\062\060\061\070\057\143\144\160\056\143\162\154\060
+\035\006\003\125\035\016\004\026\004\024\306\026\223\116\026\027
+\354\026\256\214\224\166\363\206\155\305\164\156\204\167\060\015
+\006\011\052\206\110\206\367\015\001\001\005\005\000\003\201\201
+\000\166\000\173\246\170\053\146\035\216\136\066\306\244\216\005
+\362\043\222\174\223\147\323\364\300\012\175\213\055\331\352\325
+\157\032\363\341\112\051\132\042\204\115\120\057\113\014\362\377
+\205\302\173\125\324\104\202\276\155\254\147\216\274\264\037\222
+\234\121\200\032\024\366\156\253\141\210\013\255\034\177\367\113
+\120\121\326\145\033\246\107\161\025\136\260\161\363\065\024\362
+\067\275\143\310\325\360\223\132\064\137\330\075\350\135\367\305
+\036\300\345\317\037\206\044\251\074\007\146\315\301\322\066\143
+\131
+END
+
+# Trust for Certificate "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (cyb)"
+# Issuer: CN=GTE CyberTrust Global Root,OU="GTE CyberTrust Solutions, Inc.",O=GTE Corporation,C=US
+# Serial Number:07:ff:ff:ff:ff:ff
+# Subject: CN=Digisign Server ID (Enrich),OU=457608-K,O=Digicert Sdn. Bhd.,C=MY
+# Not Valid Before: Tue Jul 17 15:17:49 2007
+# Not Valid After : Tue Jul 17 15:16:55 2012
+# Fingerprint (MD5): D2:DE:AE:50:A4:98:2D:6F:37:B7:86:52:C8:2D:4B:6A
+# Fingerprint (SHA1): 55:50:AF:EC:BF:E8:C3:AD:C4:0B:E3:AD:0C:A7:E4:15:8C:39:59:4F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (cyb)"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\125\120\257\354\277\350\303\255\304\013\343\255\014\247\344\025
+\214\071\131\117
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\322\336\256\120\244\230\055\157\067\267\206\122\310\055\113\152
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\030\060\026\006\003\125\004\012\023\017\107\124\105\040\103\157
+\162\160\157\162\141\164\151\157\156\061\047\060\045\006\003\125
+\004\013\023\036\107\124\105\040\103\171\142\145\162\124\162\165
+\163\164\040\123\157\154\165\164\151\157\156\163\054\040\111\156
+\143\056\061\043\060\041\006\003\125\004\003\023\032\107\124\105
+\040\103\171\142\145\162\124\162\165\163\164\040\107\154\157\142
+\141\154\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\007\377\377\377\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (en)"
+#
+# Issuer: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
+# Serial Number:07:ff:ff:ff:ff:ff
+# Subject: CN=Digisign Server ID - (Enrich),OU=457608-K,O=Digicert Sdn. Bhd.,C=MY
+# Not Valid Before: Fri Jul 16 17:23:38 2010
+# Not Valid After : Thu Jul 16 17:53:38 2015
+# Fingerprint (MD5): D7:69:61:7F:35:0F:9C:46:A3:AA:EB:F8:55:FC:84:F2
+# Fingerprint (SHA1): 6B:3C:3B:80:AD:CA:A6:BA:8A:9F:54:A6:7A:ED:12:69:05:6D:31:26
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (en)"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\115\131\061
+\033\060\031\006\003\125\004\012\023\022\104\151\147\151\143\145
+\162\164\040\123\144\156\056\040\102\150\144\056\061\021\060\017
+\006\003\125\004\013\023\010\064\065\067\066\060\070\055\113\061
+\046\060\044\006\003\125\004\003\023\035\104\151\147\151\163\151
+\147\156\040\123\145\162\166\145\162\040\111\104\040\055\040\050
+\105\156\162\151\143\150\051
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\264\061\024\060\022\006\003\125\004\012\023\013\105\156
+\164\162\165\163\164\056\156\145\164\061\100\060\076\006\003\125
+\004\013\024\067\167\167\167\056\145\156\164\162\165\163\164\056
+\156\145\164\057\103\120\123\137\062\060\064\070\040\151\156\143
+\157\162\160\056\040\142\171\040\162\145\146\056\040\050\154\151
+\155\151\164\163\040\154\151\141\142\056\051\061\045\060\043\006
+\003\125\004\013\023\034\050\143\051\040\061\071\071\071\040\105
+\156\164\162\165\163\164\056\156\145\164\040\114\151\155\151\164
+\145\144\061\063\060\061\006\003\125\004\003\023\052\105\156\164
+\162\165\163\164\056\156\145\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\040\050\062\060\064\070\051
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\007\377\377\377\377\377
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\320\060\202\003\270\240\003\002\001\002\002\006\007
+\377\377\377\377\377\060\015\006\011\052\206\110\206\367\015\001
+\001\005\005\000\060\201\264\061\024\060\022\006\003\125\004\012
+\023\013\105\156\164\162\165\163\164\056\156\145\164\061\100\060
+\076\006\003\125\004\013\024\067\167\167\167\056\145\156\164\162
+\165\163\164\056\156\145\164\057\103\120\123\137\062\060\064\070
+\040\151\156\143\157\162\160\056\040\142\171\040\162\145\146\056
+\040\050\154\151\155\151\164\163\040\154\151\141\142\056\051\061
+\045\060\043\006\003\125\004\013\023\034\050\143\051\040\061\071
+\071\071\040\105\156\164\162\165\163\164\056\156\145\164\040\114
+\151\155\151\164\145\144\061\063\060\061\006\003\125\004\003\023
+\052\105\156\164\162\165\163\164\056\156\145\164\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\040\050\062\060\064\070\051\060\036\027\015\061
+\060\060\067\061\066\061\067\062\063\063\070\132\027\015\061\065
+\060\067\061\066\061\067\065\063\063\070\132\060\145\061\013\060
+\011\006\003\125\004\006\023\002\115\131\061\033\060\031\006\003
+\125\004\012\023\022\104\151\147\151\143\145\162\164\040\123\144
+\156\056\040\102\150\144\056\061\021\060\017\006\003\125\004\013
+\023\010\064\065\067\066\060\070\055\113\061\046\060\044\006\003
+\125\004\003\023\035\104\151\147\151\163\151\147\156\040\123\145
+\162\166\145\162\040\111\104\040\055\040\050\105\156\162\151\143
+\150\051\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\305\211\344\364\015\006\100\222\131\307\032\263\065
+\321\016\114\052\063\371\370\257\312\236\177\356\271\247\155\140
+\364\124\350\157\325\233\363\033\143\061\004\150\162\321\064\026
+\214\264\027\054\227\336\163\305\330\220\025\240\032\053\365\313
+\263\110\206\104\360\035\210\114\316\101\102\032\357\365\014\336
+\376\100\332\071\040\367\006\125\072\152\235\106\301\322\157\245
+\262\310\127\076\051\243\234\340\351\205\167\146\350\230\247\044
+\176\276\300\131\040\345\104\157\266\127\330\276\316\302\145\167
+\130\306\141\101\321\164\004\310\177\111\102\305\162\251\162\026
+\356\214\335\022\135\264\112\324\321\257\120\267\330\252\165\166
+\150\255\076\135\252\060\155\141\250\253\020\133\076\023\277\063
+\340\257\104\235\070\042\133\357\114\057\246\161\046\025\046\312
+\050\214\331\372\216\216\251\242\024\065\342\233\044\210\264\364
+\177\205\235\203\117\007\241\266\024\220\066\304\064\034\215\046
+\141\155\023\157\170\276\350\217\047\307\113\204\226\243\206\150
+\014\043\276\013\354\214\224\000\251\004\212\023\220\367\337\205
+\154\014\261\002\003\001\000\001\243\202\001\064\060\202\001\060
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006
+\060\022\006\003\125\035\023\001\001\377\004\010\060\006\001\001
+\377\002\001\000\060\047\006\003\125\035\045\004\040\060\036\006
+\010\053\006\001\005\005\007\003\001\006\010\053\006\001\005\005
+\007\003\002\006\010\053\006\001\005\005\007\003\004\060\063\006
+\010\053\006\001\005\005\007\001\001\004\047\060\045\060\043\006
+\010\053\006\001\005\005\007\060\001\206\027\150\164\164\160\072
+\057\057\157\143\163\160\056\145\156\164\162\165\163\164\056\156
+\145\164\060\104\006\003\125\035\040\004\075\060\073\060\071\006
+\005\140\203\112\001\001\060\060\060\056\006\010\053\006\001\005
+\005\007\002\001\026\042\150\164\164\160\072\057\057\167\167\167
+\056\144\151\147\151\143\145\162\164\056\143\157\155\056\155\171
+\057\143\160\163\056\150\164\155\060\062\006\003\125\035\037\004
+\053\060\051\060\047\240\045\240\043\206\041\150\164\164\160\072
+\057\057\143\162\154\056\145\156\164\162\165\163\164\056\156\145
+\164\057\062\060\064\070\143\141\056\143\162\154\060\021\006\003
+\125\035\016\004\012\004\010\114\116\314\045\050\003\051\201\060
+\037\006\003\125\035\043\004\030\060\026\200\024\125\344\201\321
+\021\200\276\330\211\271\010\243\061\371\241\044\011\026\271\160
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003
+\202\001\001\000\227\114\357\112\072\111\254\162\374\060\040\153
+\264\051\133\247\305\225\004\220\371\062\325\302\205\152\336\003
+\241\067\371\211\000\260\132\254\125\176\333\103\065\377\311\001
+\370\121\276\314\046\312\310\152\244\304\124\076\046\036\347\014
+\243\315\227\147\224\335\246\102\353\134\315\217\071\171\153\063
+\171\041\006\171\372\202\104\025\231\314\301\267\071\323\106\142
+\174\262\160\353\157\316\040\252\076\031\267\351\164\202\234\264
+\245\113\115\141\000\067\344\207\322\362\024\072\144\174\270\251
+\173\141\340\223\042\347\325\237\076\107\346\066\166\240\123\330
+\000\003\072\017\265\063\376\226\312\323\322\202\072\056\335\327
+\110\341\344\247\151\314\034\351\231\112\347\312\160\105\327\013
+\007\016\232\165\033\320\057\222\157\366\244\007\303\275\034\113
+\246\204\266\175\250\232\251\322\247\051\361\013\127\151\036\227
+\127\046\354\053\103\254\324\105\203\005\000\351\343\360\106\100
+\007\372\352\261\121\163\223\034\245\335\123\021\067\310\052\247
+\025\047\035\264\252\314\177\252\061\060\374\270\105\237\110\011
+\355\020\342\305
+END
+
+# Trust for Certificate "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (en)"
+# Issuer: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
+# Serial Number:07:ff:ff:ff:ff:ff
+# Subject: CN=Digisign Server ID - (Enrich),OU=457608-K,O=Digicert Sdn. Bhd.,C=MY
+# Not Valid Before: Fri Jul 16 17:23:38 2010
+# Not Valid After : Thu Jul 16 17:53:38 2015
+# Fingerprint (MD5): D7:69:61:7F:35:0F:9C:46:A3:AA:EB:F8:55:FC:84:F2
+# Fingerprint (SHA1): 6B:3C:3B:80:AD:CA:A6:BA:8A:9F:54:A6:7A:ED:12:69:05:6D:31:26
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted Malaysian Digicert Sdn. Bhd. (en)"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\153\074\073\200\255\312\246\272\212\237\124\246\172\355\022\151
+\005\155\061\046
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\327\151\141\177\065\017\234\106\243\252\353\370\125\374\204\362
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\264\061\024\060\022\006\003\125\004\012\023\013\105\156
+\164\162\165\163\164\056\156\145\164\061\100\060\076\006\003\125
+\004\013\024\067\167\167\167\056\145\156\164\162\165\163\164\056
+\156\145\164\057\103\120\123\137\062\060\064\070\040\151\156\143
+\157\162\160\056\040\142\171\040\162\145\146\056\040\050\154\151
+\155\151\164\163\040\154\151\141\142\056\051\061\045\060\043\006
+\003\125\004\013\023\034\050\143\051\040\061\071\071\071\040\105
+\156\164\162\165\163\164\056\156\145\164\040\114\151\155\151\164
+\145\144\061\063\060\061\006\003\125\004\003\023\052\105\156\164
+\162\165\163\164\056\156\145\164\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\040\050\062\060\064\070\051
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\006\007\377\377\377\377\377
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+
+#
+# Certificate "Security Communication RootCA2"
+#
+# Issuer: OU=Security Communication RootCA2,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Serial Number: 0 (0x0)
+# Subject: OU=Security Communication RootCA2,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Not Valid Before: Fri May 29 05:00:39 2009
+# Not Valid After : Tue May 29 05:00:39 2029
+# Fingerprint (MD5): 6C:39:7D:A4:0E:55:59:B2:3F:D6:41:B1:12:50:DE:43
+# Fingerprint (SHA1): 5F:3B:8C:F2:F8:10:B3:7D:78:B4:CE:EC:19:19:C3:73:34:B9:C7:74
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Security Communication RootCA2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\135\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040
+\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117
+\056\054\114\124\104\056\061\047\060\045\006\003\125\004\013\023
+\036\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156
+\151\143\141\164\151\157\156\040\122\157\157\164\103\101\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\135\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040
+\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117
+\056\054\114\124\104\056\061\047\060\045\006\003\125\004\013\023
+\036\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156
+\151\143\141\164\151\157\156\040\122\157\157\164\103\101\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\167\060\202\002\137\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\135\061\013\060\011\006\003\125\004\006\023\002\112\120\061\045
+\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040\124
+\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117\056
+\054\114\124\104\056\061\047\060\045\006\003\125\004\013\023\036
+\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156\151
+\143\141\164\151\157\156\040\122\157\157\164\103\101\062\060\036
+\027\015\060\071\060\065\062\071\060\065\060\060\063\071\132\027
+\015\062\071\060\065\062\071\060\065\060\060\063\071\132\060\135
+\061\013\060\011\006\003\125\004\006\023\002\112\120\061\045\060
+\043\006\003\125\004\012\023\034\123\105\103\117\115\040\124\162
+\165\163\164\040\123\171\163\164\145\155\163\040\103\117\056\054
+\114\124\104\056\061\047\060\045\006\003\125\004\013\023\036\123
+\145\143\165\162\151\164\171\040\103\157\155\155\165\156\151\143
+\141\164\151\157\156\040\122\157\157\164\103\101\062\060\202\001
+\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\001\017\000\060\202\001\012\002\202\001\001\000\320\025
+\071\122\261\122\263\272\305\131\202\304\135\122\256\072\103\145
+\200\113\307\362\226\274\333\066\227\326\246\144\214\250\136\360
+\343\012\034\367\337\227\075\113\256\366\135\354\041\265\101\253
+\315\271\176\166\237\276\371\076\066\064\240\073\301\366\061\021
+\105\164\223\075\127\200\305\371\211\231\312\345\253\152\324\265
+\332\101\220\020\301\326\326\102\211\302\277\364\070\022\225\114
+\124\005\367\066\344\105\203\173\024\145\326\334\014\115\321\336
+\176\014\253\073\304\025\276\072\126\246\132\157\166\151\122\251
+\172\271\310\353\152\232\135\122\320\055\012\153\065\026\011\020
+\204\320\152\312\072\006\000\067\107\344\176\127\117\077\213\353
+\147\270\210\252\305\276\123\125\262\221\304\175\271\260\205\031
+\006\170\056\333\141\032\372\205\365\112\221\241\347\026\325\216
+\242\071\337\224\270\160\037\050\077\213\374\100\136\143\203\074
+\203\052\032\231\153\317\336\131\152\073\374\157\026\327\037\375
+\112\020\353\116\202\026\072\254\047\014\123\361\255\325\044\260
+\153\003\120\301\055\074\026\335\104\064\047\032\165\373\002\003
+\001\000\001\243\102\060\100\060\035\006\003\125\035\016\004\026
+\004\024\012\205\251\167\145\005\230\174\100\201\370\017\227\054
+\070\361\012\354\074\317\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\003\202\001\001\000\114\072\243\104\254
+\271\105\261\307\223\176\310\013\012\102\337\144\352\034\356\131
+\154\010\272\211\137\152\312\112\225\236\172\217\007\305\332\105
+\162\202\161\016\072\322\314\157\247\264\241\043\273\366\044\237
+\313\027\376\214\246\316\302\322\333\314\215\374\161\374\003\051
+\301\154\135\063\137\144\266\145\073\211\157\030\166\170\365\334
+\242\110\037\031\077\216\223\353\361\372\027\356\315\116\343\004
+\022\125\326\345\344\335\373\076\005\174\342\035\136\306\247\274
+\227\117\150\072\365\351\056\012\103\266\257\127\134\142\150\174
+\267\375\243\212\204\240\254\142\276\053\011\207\064\360\152\001
+\273\233\051\126\074\376\000\067\317\043\154\361\116\252\266\164
+\106\022\154\221\356\064\325\354\232\221\347\104\276\220\061\162
+\325\111\002\366\002\345\364\037\353\174\331\226\125\251\377\354
+\212\371\231\107\377\065\132\002\252\004\313\212\133\207\161\051
+\221\275\244\264\172\015\275\232\365\127\043\000\007\041\027\077
+\112\071\321\005\111\013\247\266\067\201\245\135\214\252\063\136
+\201\050\174\247\175\047\353\000\256\215\067
+END
+
+# Trust for Certificate "Security Communication RootCA2"
+# Issuer: OU=Security Communication RootCA2,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Serial Number: 0 (0x0)
+# Subject: OU=Security Communication RootCA2,O="SECOM Trust Systems CO.,LTD.",C=JP
+# Not Valid Before: Fri May 29 05:00:39 2009
+# Not Valid After : Tue May 29 05:00:39 2029
+# Fingerprint (MD5): 6C:39:7D:A4:0E:55:59:B2:3F:D6:41:B1:12:50:DE:43
+# Fingerprint (SHA1): 5F:3B:8C:F2:F8:10:B3:7D:78:B4:CE:EC:19:19:C3:73:34:B9:C7:74
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Security Communication RootCA2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\137\073\214\362\370\020\263\175\170\264\316\354\031\031\303\163
+\064\271\307\164
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\154\071\175\244\016\125\131\262\077\326\101\261\022\120\336\103
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\135\061\013\060\011\006\003\125\004\006\023\002\112\120\061
+\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040
+\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117
+\056\054\114\124\104\056\061\047\060\045\006\003\125\004\013\023
+\036\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156
+\151\143\141\164\151\157\156\040\122\157\157\164\103\101\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "EC-ACC"
+#
+# Issuer: CN=EC-ACC,OU=Jerarquia Entitats de Certificacio Catalanes,OU=Vegeu https://www.catcert.net/verarrel (c)03,OU=Serveis Publics de Certificacio,O=Agencia Catalana de Certificacio (NIF Q-0801176-I),C=ES
+# Serial Number:ee:2b:3d:eb:d4:21:de:14:a8:62:ac:04:f3:dd:c4:01
+# Subject: CN=EC-ACC,OU=Jerarquia Entitats de Certificacio Catalanes,OU=Vegeu https://www.catcert.net/verarrel (c)03,OU=Serveis Publics de Certificacio,O=Agencia Catalana de Certificacio (NIF Q-0801176-I),C=ES
+# Not Valid Before: Tue Jan 07 23:00:00 2003
+# Not Valid After : Tue Jan 07 22:59:59 2031
+# Fingerprint (MD5): EB:F5:9D:29:0D:61:F9:42:1F:7C:C2:BA:6D:E3:15:09
+# Fingerprint (SHA1): 28:90:3A:63:5B:52:80:FA:E6:77:4C:0B:6D:A7:D6:BA:A6:4A:F2:E8
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "EC-ACC"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\363\061\013\060\011\006\003\125\004\006\023\002\105\123
+\061\073\060\071\006\003\125\004\012\023\062\101\147\145\156\143
+\151\141\040\103\141\164\141\154\141\156\141\040\144\145\040\103
+\145\162\164\151\146\151\143\141\143\151\157\040\050\116\111\106
+\040\121\055\060\070\060\061\061\067\066\055\111\051\061\050\060
+\046\006\003\125\004\013\023\037\123\145\162\166\145\151\163\040
+\120\165\142\154\151\143\163\040\144\145\040\103\145\162\164\151
+\146\151\143\141\143\151\157\061\065\060\063\006\003\125\004\013
+\023\054\126\145\147\145\165\040\150\164\164\160\163\072\057\057
+\167\167\167\056\143\141\164\143\145\162\164\056\156\145\164\057
+\166\145\162\141\162\162\145\154\040\050\143\051\060\063\061\065
+\060\063\006\003\125\004\013\023\054\112\145\162\141\162\161\165
+\151\141\040\105\156\164\151\164\141\164\163\040\144\145\040\103
+\145\162\164\151\146\151\143\141\143\151\157\040\103\141\164\141
+\154\141\156\145\163\061\017\060\015\006\003\125\004\003\023\006
+\105\103\055\101\103\103
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\363\061\013\060\011\006\003\125\004\006\023\002\105\123
+\061\073\060\071\006\003\125\004\012\023\062\101\147\145\156\143
+\151\141\040\103\141\164\141\154\141\156\141\040\144\145\040\103
+\145\162\164\151\146\151\143\141\143\151\157\040\050\116\111\106
+\040\121\055\060\070\060\061\061\067\066\055\111\051\061\050\060
+\046\006\003\125\004\013\023\037\123\145\162\166\145\151\163\040
+\120\165\142\154\151\143\163\040\144\145\040\103\145\162\164\151
+\146\151\143\141\143\151\157\061\065\060\063\006\003\125\004\013
+\023\054\126\145\147\145\165\040\150\164\164\160\163\072\057\057
+\167\167\167\056\143\141\164\143\145\162\164\056\156\145\164\057
+\166\145\162\141\162\162\145\154\040\050\143\051\060\063\061\065
+\060\063\006\003\125\004\013\023\054\112\145\162\141\162\161\165
+\151\141\040\105\156\164\151\164\141\164\163\040\144\145\040\103
+\145\162\164\151\146\151\143\141\143\151\157\040\103\141\164\141
+\154\141\156\145\163\061\017\060\015\006\003\125\004\003\023\006
+\105\103\055\101\103\103
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\356\053\075\353\324\041\336\024\250\142\254\004\363\335
+\304\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\126\060\202\004\076\240\003\002\001\002\002\020\356
+\053\075\353\324\041\336\024\250\142\254\004\363\335\304\001\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\363\061\013\060\011\006\003\125\004\006\023\002\105\123\061\073
+\060\071\006\003\125\004\012\023\062\101\147\145\156\143\151\141
+\040\103\141\164\141\154\141\156\141\040\144\145\040\103\145\162
+\164\151\146\151\143\141\143\151\157\040\050\116\111\106\040\121
+\055\060\070\060\061\061\067\066\055\111\051\061\050\060\046\006
+\003\125\004\013\023\037\123\145\162\166\145\151\163\040\120\165
+\142\154\151\143\163\040\144\145\040\103\145\162\164\151\146\151
+\143\141\143\151\157\061\065\060\063\006\003\125\004\013\023\054
+\126\145\147\145\165\040\150\164\164\160\163\072\057\057\167\167
+\167\056\143\141\164\143\145\162\164\056\156\145\164\057\166\145
+\162\141\162\162\145\154\040\050\143\051\060\063\061\065\060\063
+\006\003\125\004\013\023\054\112\145\162\141\162\161\165\151\141
+\040\105\156\164\151\164\141\164\163\040\144\145\040\103\145\162
+\164\151\146\151\143\141\143\151\157\040\103\141\164\141\154\141
+\156\145\163\061\017\060\015\006\003\125\004\003\023\006\105\103
+\055\101\103\103\060\036\027\015\060\063\060\061\060\067\062\063
+\060\060\060\060\132\027\015\063\061\060\061\060\067\062\062\065
+\071\065\071\132\060\201\363\061\013\060\011\006\003\125\004\006
+\023\002\105\123\061\073\060\071\006\003\125\004\012\023\062\101
+\147\145\156\143\151\141\040\103\141\164\141\154\141\156\141\040
+\144\145\040\103\145\162\164\151\146\151\143\141\143\151\157\040
+\050\116\111\106\040\121\055\060\070\060\061\061\067\066\055\111
+\051\061\050\060\046\006\003\125\004\013\023\037\123\145\162\166
+\145\151\163\040\120\165\142\154\151\143\163\040\144\145\040\103
+\145\162\164\151\146\151\143\141\143\151\157\061\065\060\063\006
+\003\125\004\013\023\054\126\145\147\145\165\040\150\164\164\160
+\163\072\057\057\167\167\167\056\143\141\164\143\145\162\164\056
+\156\145\164\057\166\145\162\141\162\162\145\154\040\050\143\051
+\060\063\061\065\060\063\006\003\125\004\013\023\054\112\145\162
+\141\162\161\165\151\141\040\105\156\164\151\164\141\164\163\040
+\144\145\040\103\145\162\164\151\146\151\143\141\143\151\157\040
+\103\141\164\141\154\141\156\145\163\061\017\060\015\006\003\125
+\004\003\023\006\105\103\055\101\103\103\060\202\001\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001
+\017\000\060\202\001\012\002\202\001\001\000\263\042\307\117\342
+\227\102\225\210\107\203\100\366\035\027\363\203\163\044\036\121
+\363\230\212\303\222\270\377\100\220\005\160\207\140\311\000\251
+\265\224\145\031\042\025\027\302\103\154\146\104\232\015\004\076
+\071\157\245\113\172\252\143\267\212\104\235\331\143\221\204\146
+\340\050\017\272\102\343\156\216\367\024\047\223\151\356\221\016
+\243\137\016\261\353\146\242\162\117\022\023\206\145\172\076\333
+\117\007\364\247\011\140\332\072\102\231\307\262\177\263\026\225
+\034\307\371\064\265\224\205\325\231\136\240\110\240\176\347\027
+\145\270\242\165\270\036\363\345\102\175\257\355\363\212\110\144
+\135\202\024\223\330\300\344\377\263\120\162\362\166\366\263\135
+\102\120\171\320\224\076\153\014\000\276\330\153\016\116\052\354
+\076\322\314\202\242\030\145\063\023\167\236\232\135\032\023\330
+\303\333\075\310\227\172\356\160\355\247\346\174\333\161\317\055
+\224\142\337\155\326\365\070\276\077\245\205\012\031\270\250\330
+\011\165\102\160\304\352\357\313\016\310\064\250\022\042\230\014
+\270\023\224\266\113\354\360\320\220\347\047\002\003\001\000\001
+\243\201\343\060\201\340\060\035\006\003\125\035\021\004\026\060
+\024\201\022\145\143\137\141\143\143\100\143\141\164\143\145\162
+\164\056\156\145\164\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\035\006\003\125\035\016\004\026\004
+\024\240\303\213\104\252\067\245\105\277\227\200\132\321\361\170
+\242\233\351\135\215\060\177\006\003\125\035\040\004\170\060\166
+\060\164\006\013\053\006\001\004\001\365\170\001\003\001\012\060
+\145\060\054\006\010\053\006\001\005\005\007\002\001\026\040\150
+\164\164\160\163\072\057\057\167\167\167\056\143\141\164\143\145
+\162\164\056\156\145\164\057\166\145\162\141\162\162\145\154\060
+\065\006\010\053\006\001\005\005\007\002\002\060\051\032\047\126
+\145\147\145\165\040\150\164\164\160\163\072\057\057\167\167\167
+\056\143\141\164\143\145\162\164\056\156\145\164\057\166\145\162
+\141\162\162\145\154\040\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\001\001\000\240\110\133\202\001\366
+\115\110\270\071\125\065\234\200\172\123\231\325\132\377\261\161
+\073\314\071\011\224\136\326\332\357\276\001\133\135\323\036\330
+\375\175\117\315\240\101\340\064\223\277\313\342\206\234\067\222
+\220\126\034\334\353\051\005\345\304\236\307\065\337\212\014\315
+\305\041\103\351\252\210\345\065\300\031\102\143\132\002\136\244
+\110\030\072\205\157\334\235\274\077\235\234\301\207\270\172\141
+\010\351\167\013\177\160\253\172\335\331\227\054\144\036\205\277
+\274\164\226\241\303\172\022\354\014\032\156\203\014\074\350\162
+\106\237\373\110\325\136\227\346\261\241\370\344\357\106\045\224
+\234\211\333\151\070\276\354\134\016\126\307\145\121\345\120\210
+\210\277\102\325\053\075\345\371\272\236\056\263\312\364\163\222
+\002\013\276\114\146\353\040\376\271\313\265\231\177\346\266\023
+\372\312\113\115\331\356\123\106\006\073\306\116\255\223\132\201
+\176\154\052\113\152\005\105\214\362\041\244\061\220\207\154\145
+\234\235\245\140\225\072\122\177\365\321\253\010\156\363\356\133
+\371\210\075\176\270\157\156\003\344\102
+END
+
+# Trust for Certificate "EC-ACC"
+# Issuer: CN=EC-ACC,OU=Jerarquia Entitats de Certificacio Catalanes,OU=Vegeu https://www.catcert.net/verarrel (c)03,OU=Serveis Publics de Certificacio,O=Agencia Catalana de Certificacio (NIF Q-0801176-I),C=ES
+# Serial Number:ee:2b:3d:eb:d4:21:de:14:a8:62:ac:04:f3:dd:c4:01
+# Subject: CN=EC-ACC,OU=Jerarquia Entitats de Certificacio Catalanes,OU=Vegeu https://www.catcert.net/verarrel (c)03,OU=Serveis Publics de Certificacio,O=Agencia Catalana de Certificacio (NIF Q-0801176-I),C=ES
+# Not Valid Before: Tue Jan 07 23:00:00 2003
+# Not Valid After : Tue Jan 07 22:59:59 2031
+# Fingerprint (MD5): EB:F5:9D:29:0D:61:F9:42:1F:7C:C2:BA:6D:E3:15:09
+# Fingerprint (SHA1): 28:90:3A:63:5B:52:80:FA:E6:77:4C:0B:6D:A7:D6:BA:A6:4A:F2:E8
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "EC-ACC"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\050\220\072\143\133\122\200\372\346\167\114\013\155\247\326\272
+\246\112\362\350
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\353\365\235\051\015\141\371\102\037\174\302\272\155\343\025\011
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\363\061\013\060\011\006\003\125\004\006\023\002\105\123
+\061\073\060\071\006\003\125\004\012\023\062\101\147\145\156\143
+\151\141\040\103\141\164\141\154\141\156\141\040\144\145\040\103
+\145\162\164\151\146\151\143\141\143\151\157\040\050\116\111\106
+\040\121\055\060\070\060\061\061\067\066\055\111\051\061\050\060
+\046\006\003\125\004\013\023\037\123\145\162\166\145\151\163\040
+\120\165\142\154\151\143\163\040\144\145\040\103\145\162\164\151
+\146\151\143\141\143\151\157\061\065\060\063\006\003\125\004\013
+\023\054\126\145\147\145\165\040\150\164\164\160\163\072\057\057
+\167\167\167\056\143\141\164\143\145\162\164\056\156\145\164\057
+\166\145\162\141\162\162\145\154\040\050\143\051\060\063\061\065
+\060\063\006\003\125\004\013\023\054\112\145\162\141\162\161\165
+\151\141\040\105\156\164\151\164\141\164\163\040\144\145\040\103
+\145\162\164\151\146\151\143\141\143\151\157\040\103\141\164\141
+\154\141\156\145\163\061\017\060\015\006\003\125\004\003\023\006
+\105\103\055\101\103\103
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\356\053\075\353\324\041\336\024\250\142\254\004\363\335
+\304\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Hellenic Academic and Research Institutions RootCA 2011"
+#
+# Issuer: CN=Hellenic Academic and Research Institutions RootCA 2011,O=Hellenic Academic and Research Institutions Cert. Authority,C=GR
+# Serial Number: 0 (0x0)
+# Subject: CN=Hellenic Academic and Research Institutions RootCA 2011,O=Hellenic Academic and Research Institutions Cert. Authority,C=GR
+# Not Valid Before: Tue Dec 06 13:49:52 2011
+# Not Valid After : Mon Dec 01 13:49:52 2031
+# Fingerprint (MD5): 73:9F:4C:4B:73:5B:79:E9:FA:BA:1C:EF:6E:CB:D5:C9
+# Fingerprint (SHA1): FE:45:65:9B:79:03:5B:98:A1:61:B5:51:2E:AC:DA:58:09:48:22:4D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Hellenic Academic and Research Institutions RootCA 2011"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\225\061\013\060\011\006\003\125\004\006\023\002\107\122
+\061\104\060\102\006\003\125\004\012\023\073\110\145\154\154\145
+\156\151\143\040\101\143\141\144\145\155\151\143\040\141\156\144
+\040\122\145\163\145\141\162\143\150\040\111\156\163\164\151\164
+\165\164\151\157\156\163\040\103\145\162\164\056\040\101\165\164
+\150\157\162\151\164\171\061\100\060\076\006\003\125\004\003\023
+\067\110\145\154\154\145\156\151\143\040\101\143\141\144\145\155
+\151\143\040\141\156\144\040\122\145\163\145\141\162\143\150\040
+\111\156\163\164\151\164\165\164\151\157\156\163\040\122\157\157
+\164\103\101\040\062\060\061\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\225\061\013\060\011\006\003\125\004\006\023\002\107\122
+\061\104\060\102\006\003\125\004\012\023\073\110\145\154\154\145
+\156\151\143\040\101\143\141\144\145\155\151\143\040\141\156\144
+\040\122\145\163\145\141\162\143\150\040\111\156\163\164\151\164
+\165\164\151\157\156\163\040\103\145\162\164\056\040\101\165\164
+\150\157\162\151\164\171\061\100\060\076\006\003\125\004\003\023
+\067\110\145\154\154\145\156\151\143\040\101\143\141\144\145\155
+\151\143\040\141\156\144\040\122\145\163\145\141\162\143\150\040
+\111\156\163\164\151\164\165\164\151\157\156\163\040\122\157\157
+\164\103\101\040\062\060\061\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\061\060\202\003\031\240\003\002\001\002\002\001\000
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\225\061\013\060\011\006\003\125\004\006\023\002\107\122\061
+\104\060\102\006\003\125\004\012\023\073\110\145\154\154\145\156
+\151\143\040\101\143\141\144\145\155\151\143\040\141\156\144\040
+\122\145\163\145\141\162\143\150\040\111\156\163\164\151\164\165
+\164\151\157\156\163\040\103\145\162\164\056\040\101\165\164\150
+\157\162\151\164\171\061\100\060\076\006\003\125\004\003\023\067
+\110\145\154\154\145\156\151\143\040\101\143\141\144\145\155\151
+\143\040\141\156\144\040\122\145\163\145\141\162\143\150\040\111
+\156\163\164\151\164\165\164\151\157\156\163\040\122\157\157\164
+\103\101\040\062\060\061\061\060\036\027\015\061\061\061\062\060
+\066\061\063\064\071\065\062\132\027\015\063\061\061\062\060\061
+\061\063\064\071\065\062\132\060\201\225\061\013\060\011\006\003
+\125\004\006\023\002\107\122\061\104\060\102\006\003\125\004\012
+\023\073\110\145\154\154\145\156\151\143\040\101\143\141\144\145
+\155\151\143\040\141\156\144\040\122\145\163\145\141\162\143\150
+\040\111\156\163\164\151\164\165\164\151\157\156\163\040\103\145
+\162\164\056\040\101\165\164\150\157\162\151\164\171\061\100\060
+\076\006\003\125\004\003\023\067\110\145\154\154\145\156\151\143
+\040\101\143\141\144\145\155\151\143\040\141\156\144\040\122\145
+\163\145\141\162\143\150\040\111\156\163\164\151\164\165\164\151
+\157\156\163\040\122\157\157\164\103\101\040\062\060\061\061\060
+\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000
+\251\123\000\343\056\246\366\216\372\140\330\055\225\076\370\054
+\052\124\116\315\271\204\141\224\130\117\217\075\213\344\103\363
+\165\211\215\121\344\303\067\322\212\210\115\171\036\267\022\335
+\103\170\112\212\222\346\327\110\325\017\244\072\051\104\065\270
+\007\366\150\035\125\315\070\121\360\214\044\061\205\257\203\311
+\175\351\167\257\355\032\173\235\027\371\263\235\070\120\017\246
+\132\171\221\200\257\067\256\246\323\061\373\265\046\011\235\074
+\132\357\121\305\053\337\226\135\353\062\036\002\332\160\111\354
+\156\014\310\232\067\215\367\361\066\140\113\046\054\202\236\320
+\170\363\015\017\143\244\121\060\341\371\053\047\022\007\330\352
+\275\030\142\230\260\131\067\175\276\356\363\040\121\102\132\203
+\357\223\272\151\025\361\142\235\237\231\071\202\241\267\164\056
+\213\324\305\013\173\057\360\310\012\332\075\171\012\232\223\034
+\245\050\162\163\221\103\232\247\321\115\205\204\271\251\164\217
+\024\100\307\334\336\254\101\144\154\264\031\233\002\143\155\044
+\144\217\104\262\045\352\316\135\164\014\143\062\134\215\207\345
+\002\003\001\000\001\243\201\211\060\201\206\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\013\006\003
+\125\035\017\004\004\003\002\001\006\060\035\006\003\125\035\016
+\004\026\004\024\246\221\102\375\023\141\112\043\236\010\244\051
+\345\330\023\004\043\356\101\045\060\107\006\003\125\035\036\004
+\100\060\076\240\074\060\005\202\003\056\147\162\060\005\202\003
+\056\145\165\060\006\202\004\056\145\144\165\060\006\202\004\056
+\157\162\147\060\005\201\003\056\147\162\060\005\201\003\056\145
+\165\060\006\201\004\056\145\144\165\060\006\201\004\056\157\162
+\147\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000
+\003\202\001\001\000\037\357\171\101\341\173\156\077\262\214\206
+\067\102\112\116\034\067\036\215\146\272\044\201\311\117\022\017
+\041\300\003\227\206\045\155\135\323\042\051\250\154\242\015\251
+\353\075\006\133\231\072\307\314\303\232\064\177\253\016\310\116
+\034\341\372\344\334\315\015\276\277\044\376\154\347\153\302\015
+\310\006\236\116\215\141\050\246\152\375\345\366\142\352\030\074
+\116\240\123\235\262\072\234\353\245\234\221\026\266\115\202\340
+\014\005\110\251\154\365\314\370\313\235\111\264\360\002\245\375
+\160\003\355\212\041\245\256\023\206\111\303\063\163\276\207\073
+\164\213\027\105\046\114\026\221\203\376\147\175\315\115\143\147
+\372\363\003\022\226\170\006\215\261\147\355\216\077\276\237\117
+\002\365\263\011\057\363\114\207\337\052\313\225\174\001\314\254
+\066\172\277\242\163\172\367\217\301\265\232\241\024\262\217\063
+\237\015\357\042\334\146\173\204\275\105\027\006\075\074\312\271
+\167\064\217\312\352\317\077\061\076\343\210\343\200\111\045\310
+\227\265\235\232\231\115\260\074\370\112\000\233\144\335\237\071
+\113\321\047\327\270
+END
+
+# Trust for Certificate "Hellenic Academic and Research Institutions RootCA 2011"
+# Issuer: CN=Hellenic Academic and Research Institutions RootCA 2011,O=Hellenic Academic and Research Institutions Cert. Authority,C=GR
+# Serial Number: 0 (0x0)
+# Subject: CN=Hellenic Academic and Research Institutions RootCA 2011,O=Hellenic Academic and Research Institutions Cert. Authority,C=GR
+# Not Valid Before: Tue Dec 06 13:49:52 2011
+# Not Valid After : Mon Dec 01 13:49:52 2031
+# Fingerprint (MD5): 73:9F:4C:4B:73:5B:79:E9:FA:BA:1C:EF:6E:CB:D5:C9
+# Fingerprint (SHA1): FE:45:65:9B:79:03:5B:98:A1:61:B5:51:2E:AC:DA:58:09:48:22:4D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Hellenic Academic and Research Institutions RootCA 2011"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\376\105\145\233\171\003\133\230\241\141\265\121\056\254\332\130
+\011\110\042\115
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\163\237\114\113\163\133\171\351\372\272\034\357\156\313\325\311
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\225\061\013\060\011\006\003\125\004\006\023\002\107\122
+\061\104\060\102\006\003\125\004\012\023\073\110\145\154\154\145
+\156\151\143\040\101\143\141\144\145\155\151\143\040\141\156\144
+\040\122\145\163\145\141\162\143\150\040\111\156\163\164\151\164
+\165\164\151\157\156\163\040\103\145\162\164\056\040\101\165\164
+\150\157\162\151\164\171\061\100\060\076\006\003\125\004\003\023
+\067\110\145\154\154\145\156\151\143\040\101\143\141\144\145\155
+\151\143\040\141\156\144\040\122\145\163\145\141\162\143\150\040
+\111\156\163\164\151\164\165\164\151\157\156\163\040\122\157\157
+\164\103\101\040\062\060\061\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\000
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Explicitly Distrust "MITM subCA 1 issued by Trustwave", Bug 724929
+# Issuer: E=ca@trustwave.com,CN="Trustwave Organization Issuing CA, Level 2",O="Trustwave Holdings, Inc.",L=Chicago,ST=Illinois,C=US
+# Serial Number: 1800000005 (0x6b49d205)
+# Not Before: Apr  7 15:37:15 2011 GMT
+# Not After : Apr  4 15:37:15 2021 GMT
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "MITM subCA 1 issued by Trustwave"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\253\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\021\060\017\006\003\125\004\010\023\010\111\154\154\151\156
+\157\151\163\061\020\060\016\006\003\125\004\007\023\007\103\150
+\151\143\141\147\157\061\041\060\037\006\003\125\004\012\023\030
+\124\162\165\163\164\167\141\166\145\040\110\157\154\144\151\156
+\147\163\054\040\111\156\143\056\061\063\060\061\006\003\125\004
+\003\023\052\124\162\165\163\164\167\141\166\145\040\117\162\147
+\141\156\151\172\141\164\151\157\156\040\111\163\163\165\151\156
+\147\040\103\101\054\040\114\145\166\145\154\040\062\061\037\060
+\035\006\011\052\206\110\206\367\015\001\011\001\026\020\143\141
+\100\164\162\165\163\164\167\141\166\145\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\153\111\322\005
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Explicitly Distrust "MITM subCA 2 issued by Trustwave", Bug 724929
+# Issuer: E=ca@trustwave.com,CN="Trustwave Organization Issuing CA, Level 2",O="Trustwave Holdings, Inc.",L=Chicago,ST=Illinois,C=US
+# Serial Number: 1800000006 (0x6b49d206)
+# Not Before: Apr 18 21:09:30 2011 GMT
+# Not After : Apr 15 21:09:30 2021 GMT
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "MITM subCA 2 issued by Trustwave"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\253\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\021\060\017\006\003\125\004\010\023\010\111\154\154\151\156
+\157\151\163\061\020\060\016\006\003\125\004\007\023\007\103\150
+\151\143\141\147\157\061\041\060\037\006\003\125\004\012\023\030
+\124\162\165\163\164\167\141\166\145\040\110\157\154\144\151\156
+\147\163\054\040\111\156\143\056\061\063\060\061\006\003\125\004
+\003\023\052\124\162\165\163\164\167\141\166\145\040\117\162\147
+\141\156\151\172\141\164\151\157\156\040\111\163\163\165\151\156
+\147\040\103\101\054\040\114\145\166\145\154\040\062\061\037\060
+\035\006\011\052\206\110\206\367\015\001\011\001\026\020\143\141
+\100\164\162\165\163\164\167\141\166\145\056\143\157\155
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\153\111\322\006
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Actalis Authentication Root CA"
+#
+# Issuer: CN=Actalis Authentication Root CA,O=Actalis S.p.A./03358520967,L=Milan,C=IT
+# Serial Number:57:0a:11:97:42:c4:e3:cc
+# Subject: CN=Actalis Authentication Root CA,O=Actalis S.p.A./03358520967,L=Milan,C=IT
+# Not Valid Before: Thu Sep 22 11:22:02 2011
+# Not Valid After : Sun Sep 22 11:22:02 2030
+# Fingerprint (MD5): 69:C1:0D:4F:07:A3:1B:C3:FE:56:3D:04:BC:11:F6:A6
+# Fingerprint (SHA1): F3:73:B3:87:06:5A:28:84:8A:F2:F3:4A:CE:19:2B:DD:C7:8E:9C:AC
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Actalis Authentication Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\153\061\013\060\011\006\003\125\004\006\023\002\111\124\061
+\016\060\014\006\003\125\004\007\014\005\115\151\154\141\156\061
+\043\060\041\006\003\125\004\012\014\032\101\143\164\141\154\151
+\163\040\123\056\160\056\101\056\057\060\063\063\065\070\065\062
+\060\071\066\067\061\047\060\045\006\003\125\004\003\014\036\101
+\143\164\141\154\151\163\040\101\165\164\150\145\156\164\151\143
+\141\164\151\157\156\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\153\061\013\060\011\006\003\125\004\006\023\002\111\124\061
+\016\060\014\006\003\125\004\007\014\005\115\151\154\141\156\061
+\043\060\041\006\003\125\004\012\014\032\101\143\164\141\154\151
+\163\040\123\056\160\056\101\056\057\060\063\063\065\070\065\062
+\060\071\066\067\061\047\060\045\006\003\125\004\003\014\036\101
+\143\164\141\154\151\163\040\101\165\164\150\145\156\164\151\143
+\141\164\151\157\156\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\127\012\021\227\102\304\343\314
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\273\060\202\003\243\240\003\002\001\002\002\010\127
+\012\021\227\102\304\343\314\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\060\153\061\013\060\011\006\003\125\004
+\006\023\002\111\124\061\016\060\014\006\003\125\004\007\014\005
+\115\151\154\141\156\061\043\060\041\006\003\125\004\012\014\032
+\101\143\164\141\154\151\163\040\123\056\160\056\101\056\057\060
+\063\063\065\070\065\062\060\071\066\067\061\047\060\045\006\003
+\125\004\003\014\036\101\143\164\141\154\151\163\040\101\165\164
+\150\145\156\164\151\143\141\164\151\157\156\040\122\157\157\164
+\040\103\101\060\036\027\015\061\061\060\071\062\062\061\061\062
+\062\060\062\132\027\015\063\060\060\071\062\062\061\061\062\062
+\060\062\132\060\153\061\013\060\011\006\003\125\004\006\023\002
+\111\124\061\016\060\014\006\003\125\004\007\014\005\115\151\154
+\141\156\061\043\060\041\006\003\125\004\012\014\032\101\143\164
+\141\154\151\163\040\123\056\160\056\101\056\057\060\063\063\065
+\070\065\062\060\071\066\067\061\047\060\045\006\003\125\004\003
+\014\036\101\143\164\141\154\151\163\040\101\165\164\150\145\156
+\164\151\143\141\164\151\157\156\040\122\157\157\164\040\103\101
+\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001
+\000\247\306\304\245\051\244\054\357\345\030\305\260\120\243\157
+\121\073\237\012\132\311\302\110\070\012\302\034\240\030\177\221
+\265\207\271\100\077\335\035\150\037\010\203\325\055\036\210\240
+\370\217\126\217\155\231\002\222\220\026\325\137\010\154\211\327
+\341\254\274\040\302\261\340\203\121\212\151\115\000\226\132\157
+\057\300\104\176\243\016\344\221\315\130\356\334\373\307\036\105
+\107\335\047\271\010\001\237\246\041\035\365\101\055\057\114\375
+\050\255\340\212\255\042\264\126\145\216\206\124\217\223\103\051
+\336\071\106\170\243\060\043\272\315\360\175\023\127\300\135\322
+\203\153\110\114\304\253\237\200\132\133\072\275\311\247\042\077
+\200\047\063\133\016\267\212\014\135\007\067\010\313\154\322\172
+\107\042\104\065\305\314\314\056\216\335\052\355\267\175\146\015
+\137\141\121\042\125\033\343\106\343\343\075\320\065\142\232\333
+\257\024\310\133\241\314\211\033\341\060\046\374\240\233\037\201
+\247\107\037\004\353\243\071\222\006\237\231\323\277\323\352\117
+\120\234\031\376\226\207\036\074\145\366\243\030\044\203\206\020
+\347\124\076\250\072\166\044\117\201\041\305\343\017\002\370\223
+\224\107\040\273\376\324\016\323\150\271\335\304\172\204\202\343
+\123\124\171\335\333\234\322\362\007\233\056\266\274\076\355\205
+\155\357\045\021\362\227\032\102\141\367\112\227\350\213\261\020
+\007\372\145\201\262\242\071\317\367\074\377\030\373\306\361\132
+\213\131\342\002\254\173\222\320\116\024\117\131\105\366\014\136
+\050\137\260\350\077\105\317\317\257\233\157\373\204\323\167\132
+\225\157\254\224\204\236\356\274\300\112\217\112\223\370\104\041
+\342\061\105\141\120\116\020\330\343\065\174\114\031\264\336\005
+\277\243\006\237\310\265\315\344\037\327\027\006\015\172\225\164
+\125\015\150\032\374\020\033\142\144\235\155\340\225\240\303\224
+\007\127\015\024\346\275\005\373\270\237\346\337\213\342\306\347
+\176\226\366\123\305\200\064\120\050\130\360\022\120\161\027\060
+\272\346\170\143\274\364\262\255\233\053\262\376\341\071\214\136
+\272\013\040\224\336\173\203\270\377\343\126\215\267\021\351\073
+\214\362\261\301\135\235\244\013\114\053\331\262\030\365\265\237
+\113\002\003\001\000\001\243\143\060\141\060\035\006\003\125\035
+\016\004\026\004\024\122\330\210\072\310\237\170\146\355\211\363
+\173\070\160\224\311\002\002\066\320\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\037\006\003\125\035
+\043\004\030\060\026\200\024\122\330\210\072\310\237\170\146\355
+\211\363\173\070\160\224\311\002\002\066\320\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\015\006\011\052
+\206\110\206\367\015\001\001\013\005\000\003\202\002\001\000\013
+\173\162\207\300\140\246\111\114\210\130\346\035\210\367\024\144
+\110\246\330\130\012\016\117\023\065\337\065\035\324\355\006\061
+\310\201\076\152\325\335\073\032\062\356\220\075\021\322\056\364
+\216\303\143\056\043\146\260\147\276\157\266\300\023\071\140\252
+\242\064\045\223\165\122\336\247\235\255\016\207\211\122\161\152
+\026\074\031\035\203\370\232\051\145\276\364\077\232\331\360\363
+\132\207\041\161\200\115\313\340\070\233\077\273\372\340\060\115
+\317\206\323\145\020\031\030\321\227\002\261\053\162\102\150\254
+\240\275\116\132\332\030\277\153\230\201\320\375\232\276\136\025
+\110\315\021\025\271\300\051\134\264\350\210\367\076\066\256\267
+\142\375\036\142\336\160\170\020\034\110\133\332\274\244\070\272
+\147\355\125\076\136\127\337\324\003\100\114\201\244\322\117\143
+\247\011\102\011\024\374\000\251\302\200\163\117\056\300\100\331
+\021\173\110\352\172\002\300\323\353\050\001\046\130\164\301\300
+\163\042\155\223\225\375\071\175\273\052\343\366\202\343\054\227
+\137\116\037\221\224\372\376\054\243\330\166\032\270\115\262\070
+\117\233\372\035\110\140\171\046\342\363\375\251\320\232\350\160
+\217\111\172\326\345\275\012\016\333\055\363\215\277\353\343\244
+\175\313\307\225\161\350\332\243\174\305\302\370\164\222\004\033
+\206\254\244\042\123\100\266\254\376\114\166\317\373\224\062\300
+\065\237\166\077\156\345\220\156\240\246\046\242\270\054\276\321
+\053\205\375\247\150\310\272\001\053\261\154\164\035\270\163\225
+\347\356\267\307\045\360\000\114\000\262\176\266\013\213\034\363
+\300\120\236\045\271\340\010\336\066\146\377\067\245\321\273\124
+\144\054\311\047\265\113\222\176\145\377\323\055\341\271\116\274
+\177\244\101\041\220\101\167\246\071\037\352\236\343\237\320\146
+\157\005\354\252\166\176\277\153\026\240\353\265\307\374\222\124
+\057\053\021\047\045\067\170\114\121\152\260\363\314\130\135\024
+\361\152\110\025\377\302\007\266\261\215\017\216\134\120\106\263
+\075\277\001\230\117\262\131\124\107\076\064\173\170\155\126\223
+\056\163\352\146\050\170\315\035\024\277\240\217\057\056\270\056
+\216\362\024\212\314\351\265\174\373\154\235\014\245\341\226
+END
+
+# Trust for "Actalis Authentication Root CA"
+# Issuer: CN=Actalis Authentication Root CA,O=Actalis S.p.A./03358520967,L=Milan,C=IT
+# Serial Number:57:0a:11:97:42:c4:e3:cc
+# Subject: CN=Actalis Authentication Root CA,O=Actalis S.p.A./03358520967,L=Milan,C=IT
+# Not Valid Before: Thu Sep 22 11:22:02 2011
+# Not Valid After : Sun Sep 22 11:22:02 2030
+# Fingerprint (MD5): 69:C1:0D:4F:07:A3:1B:C3:FE:56:3D:04:BC:11:F6:A6
+# Fingerprint (SHA1): F3:73:B3:87:06:5A:28:84:8A:F2:F3:4A:CE:19:2B:DD:C7:8E:9C:AC
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Actalis Authentication Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\363\163\263\207\006\132\050\204\212\362\363\112\316\031\053\335
+\307\216\234\254
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\151\301\015\117\007\243\033\303\376\126\075\004\274\021\366\246
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\153\061\013\060\011\006\003\125\004\006\023\002\111\124\061
+\016\060\014\006\003\125\004\007\014\005\115\151\154\141\156\061
+\043\060\041\006\003\125\004\012\014\032\101\143\164\141\154\151
+\163\040\123\056\160\056\101\056\057\060\063\063\065\070\065\062
+\060\071\066\067\061\047\060\045\006\003\125\004\003\014\036\101
+\143\164\141\154\151\163\040\101\165\164\150\145\156\164\151\143
+\141\164\151\157\156\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\127\012\021\227\102\304\343\314
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Trustis FPS Root CA"
+#
+# Issuer: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB
+# Serial Number:1b:1f:ad:b6:20:f9:24:d3:36:6b:f7:c7:f1:8c:a0:59
+# Subject: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB
+# Not Valid Before: Tue Dec 23 12:14:06 2003
+# Not Valid After : Sun Jan 21 11:36:54 2024
+# Fingerprint (MD5): 30:C9:E7:1E:6B:E6:14:EB:65:B2:16:69:20:31:67:4D
+# Fingerprint (SHA1): 3B:C0:38:0B:33:C3:F6:A6:0C:86:15:22:93:D9:DF:F5:4B:81:C0:04
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Trustis FPS Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\030\060\026\006\003\125\004\012\023\017\124\162\165\163\164\151
+\163\040\114\151\155\151\164\145\144\061\034\060\032\006\003\125
+\004\013\023\023\124\162\165\163\164\151\163\040\106\120\123\040
+\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\030\060\026\006\003\125\004\012\023\017\124\162\165\163\164\151
+\163\040\114\151\155\151\164\145\144\061\034\060\032\006\003\125
+\004\013\023\023\124\162\165\163\164\151\163\040\106\120\123\040
+\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\033\037\255\266\040\371\044\323\066\153\367\307\361\214
+\240\131
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\147\060\202\002\117\240\003\002\001\002\002\020\033
+\037\255\266\040\371\044\323\066\153\367\307\361\214\240\131\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\105
+\061\013\060\011\006\003\125\004\006\023\002\107\102\061\030\060
+\026\006\003\125\004\012\023\017\124\162\165\163\164\151\163\040
+\114\151\155\151\164\145\144\061\034\060\032\006\003\125\004\013
+\023\023\124\162\165\163\164\151\163\040\106\120\123\040\122\157
+\157\164\040\103\101\060\036\027\015\060\063\061\062\062\063\061
+\062\061\064\060\066\132\027\015\062\064\060\061\062\061\061\061
+\063\066\065\064\132\060\105\061\013\060\011\006\003\125\004\006
+\023\002\107\102\061\030\060\026\006\003\125\004\012\023\017\124
+\162\165\163\164\151\163\040\114\151\155\151\164\145\144\061\034
+\060\032\006\003\125\004\013\023\023\124\162\165\163\164\151\163
+\040\106\120\123\040\122\157\157\164\040\103\101\060\202\001\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\001\017\000\060\202\001\012\002\202\001\001\000\305\120\173
+\236\073\065\320\337\304\214\315\216\233\355\243\300\066\231\364
+\102\352\247\076\200\203\017\246\247\131\207\311\220\105\103\176
+\000\352\206\171\052\003\275\075\067\231\211\146\267\345\212\126
+\206\223\234\150\113\150\004\214\223\223\002\076\060\322\067\072
+\042\141\211\034\205\116\175\217\325\257\173\065\366\176\050\107
+\211\061\334\016\171\144\037\231\322\133\272\376\177\140\277\255
+\353\347\074\070\051\152\057\345\221\013\125\377\354\157\130\325
+\055\311\336\114\146\161\217\014\327\004\332\007\346\036\030\343
+\275\051\002\250\372\034\341\133\271\203\250\101\110\274\032\161
+\215\347\142\345\055\262\353\337\174\317\333\253\132\312\061\361
+\114\042\363\005\023\367\202\371\163\171\014\276\327\113\034\300
+\321\025\074\223\101\144\321\346\276\043\027\042\000\211\136\037
+\153\245\254\156\247\113\214\355\243\162\346\257\143\115\057\205
+\322\024\065\232\056\116\214\352\062\230\050\206\241\221\011\101
+\072\264\341\343\362\372\360\311\012\242\101\335\251\343\003\307
+\210\025\073\034\324\032\224\327\237\144\131\022\155\002\003\001
+\000\001\243\123\060\121\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\037\006\003\125\035\043\004\030
+\060\026\200\024\272\372\161\045\171\213\127\101\045\041\206\013
+\161\353\262\144\016\213\041\147\060\035\006\003\125\035\016\004
+\026\004\024\272\372\161\045\171\213\127\101\045\041\206\013\161
+\353\262\144\016\213\041\147\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\003\202\001\001\000\176\130\377\375\065
+\031\175\234\030\117\236\260\053\274\216\214\024\377\054\240\332
+\107\133\303\357\201\055\257\005\352\164\110\133\363\076\116\007
+\307\155\305\263\223\317\042\065\134\266\077\165\047\137\011\226
+\315\240\376\276\100\014\134\022\125\370\223\202\312\051\351\136
+\077\126\127\213\070\066\367\105\032\114\050\315\236\101\270\355
+\126\114\204\244\100\310\270\260\245\053\151\160\004\152\303\370
+\324\022\062\371\016\303\261\334\062\204\104\054\157\313\106\017
+\352\146\101\017\117\361\130\245\246\015\015\017\141\336\245\236
+\135\175\145\241\074\027\347\250\125\116\357\240\307\355\306\104
+\177\124\365\243\340\217\360\174\125\042\217\051\266\201\243\341
+\155\116\054\033\200\147\354\255\040\237\014\142\141\325\227\377
+\103\355\055\301\332\135\051\052\205\077\254\145\356\206\017\005
+\215\220\137\337\356\237\364\277\356\035\373\230\344\177\220\053
+\204\170\020\016\154\111\123\357\025\133\145\106\112\135\257\272
+\373\072\162\035\315\366\045\210\036\227\314\041\234\051\001\015
+\145\353\127\331\363\127\226\273\110\315\201
+END
+
+# Trust for "Trustis FPS Root CA"
+# Issuer: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB
+# Serial Number:1b:1f:ad:b6:20:f9:24:d3:36:6b:f7:c7:f1:8c:a0:59
+# Subject: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB
+# Not Valid Before: Tue Dec 23 12:14:06 2003
+# Not Valid After : Sun Jan 21 11:36:54 2024
+# Fingerprint (MD5): 30:C9:E7:1E:6B:E6:14:EB:65:B2:16:69:20:31:67:4D
+# Fingerprint (SHA1): 3B:C0:38:0B:33:C3:F6:A6:0C:86:15:22:93:D9:DF:F5:4B:81:C0:04
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Trustis FPS Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\073\300\070\013\063\303\366\246\014\206\025\042\223\331\337\365
+\113\201\300\004
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\060\311\347\036\153\346\024\353\145\262\026\151\040\061\147\115
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\105\061\013\060\011\006\003\125\004\006\023\002\107\102\061
+\030\060\026\006\003\125\004\012\023\017\124\162\165\163\164\151
+\163\040\114\151\155\151\164\145\144\061\034\060\032\006\003\125
+\004\013\023\023\124\162\165\163\164\151\163\040\106\120\123\040
+\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\033\037\255\266\040\371\044\323\066\153\367\307\361\214
+\240\131
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "StartCom Certification Authority"
+#
+# Issuer: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Serial Number: 45 (0x2d)
+# Subject: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Not Valid Before: Sun Sep 17 19:46:37 2006
+# Not Valid After : Wed Sep 17 19:46:36 2036
+# Fingerprint (MD5): C9:3B:0D:84:41:FC:A4:76:79:23:08:57:DE:10:19:16
+# Fingerprint (SHA1): A3:F1:33:3F:E2:42:BF:CF:C5:D1:4E:8F:39:42:98:40:68:10:D1:A0
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "StartCom Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013
+\023\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154
+\040\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147
+\156\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123
+\164\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013
+\023\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154
+\040\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147
+\156\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123
+\164\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\055
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\007\207\060\202\005\157\240\003\002\001\002\002\001\055
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061\026
+\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103\157
+\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013\023
+\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154\040
+\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147\156
+\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123\164
+\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\036
+\027\015\060\066\060\071\061\067\061\071\064\066\063\067\132\027
+\015\063\066\060\071\061\067\061\071\064\066\063\066\132\060\175
+\061\013\060\011\006\003\125\004\006\023\002\111\114\061\026\060
+\024\006\003\125\004\012\023\015\123\164\141\162\164\103\157\155
+\040\114\164\144\056\061\053\060\051\006\003\125\004\013\023\042
+\123\145\143\165\162\145\040\104\151\147\151\164\141\154\040\103
+\145\162\164\151\146\151\143\141\164\145\040\123\151\147\156\151
+\156\147\061\051\060\047\006\003\125\004\003\023\040\123\164\141
+\162\164\103\157\155\040\103\145\162\164\151\146\151\143\141\164
+\151\157\156\040\101\165\164\150\157\162\151\164\171\060\202\002
+\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
+\003\202\002\017\000\060\202\002\012\002\202\002\001\000\301\210
+\333\011\274\154\106\174\170\237\225\173\265\063\220\362\162\142
+\326\301\066\040\042\044\136\316\351\167\362\103\012\242\006\144
+\244\314\216\066\370\070\346\043\360\156\155\261\074\335\162\243
+\205\034\241\323\075\264\063\053\323\057\257\376\352\260\101\131
+\147\266\304\006\175\012\236\164\205\326\171\114\200\067\172\337
+\071\005\122\131\367\364\033\106\103\244\322\205\205\322\303\161
+\363\165\142\064\272\054\212\177\036\217\356\355\064\320\021\307
+\226\315\122\075\272\063\326\335\115\336\013\073\112\113\237\302
+\046\057\372\265\026\034\162\065\167\312\074\135\346\312\341\046
+\213\032\066\166\134\001\333\164\024\045\376\355\265\240\210\017
+\335\170\312\055\037\007\227\060\001\055\162\171\372\106\326\023
+\052\250\271\246\253\203\111\035\345\362\357\335\344\001\216\030
+\012\217\143\123\026\205\142\251\016\031\072\314\265\146\246\302
+\153\164\007\344\053\341\166\076\264\155\330\366\104\341\163\142
+\037\073\304\276\240\123\126\045\154\121\011\367\252\253\312\277
+\166\375\155\233\363\235\333\277\075\146\274\014\126\252\257\230
+\110\225\072\113\337\247\130\120\331\070\165\251\133\352\103\014
+\002\377\231\353\350\154\115\160\133\051\145\234\335\252\135\314
+\257\001\061\354\014\353\322\215\350\352\234\173\346\156\367\047
+\146\014\032\110\327\156\102\343\077\336\041\076\173\341\015\160
+\373\143\252\250\154\032\124\264\134\045\172\311\242\311\213\026
+\246\273\054\176\027\136\005\115\130\156\022\035\001\356\022\020
+\015\306\062\177\030\377\374\364\372\315\156\221\350\066\111\276
+\032\110\151\213\302\226\115\032\022\262\151\027\301\012\220\326
+\372\171\042\110\277\272\173\151\370\160\307\372\172\067\330\330
+\015\322\166\117\127\377\220\267\343\221\322\335\357\302\140\267
+\147\072\335\376\252\234\360\324\213\177\162\042\316\306\237\227
+\266\370\257\212\240\020\250\331\373\030\306\266\265\134\122\074
+\211\266\031\052\163\001\012\017\003\263\022\140\362\172\057\201
+\333\243\156\377\046\060\227\365\213\335\211\127\266\255\075\263
+\257\053\305\267\166\002\360\245\326\053\232\206\024\052\162\366
+\343\063\214\135\011\113\023\337\273\214\164\023\122\113\002\003
+\001\000\001\243\202\002\020\060\202\002\014\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003
+\125\035\016\004\026\004\024\116\013\357\032\244\100\133\245\027
+\151\207\060\312\064\150\103\320\101\256\362\060\037\006\003\125
+\035\043\004\030\060\026\200\024\116\013\357\032\244\100\133\245
+\027\151\207\060\312\064\150\103\320\101\256\362\060\202\001\132
+\006\003\125\035\040\004\202\001\121\060\202\001\115\060\202\001
+\111\006\013\053\006\001\004\001\201\265\067\001\001\001\060\202
+\001\070\060\056\006\010\053\006\001\005\005\007\002\001\026\042
+\150\164\164\160\072\057\057\167\167\167\056\163\164\141\162\164
+\163\163\154\056\143\157\155\057\160\157\154\151\143\171\056\160
+\144\146\060\064\006\010\053\006\001\005\005\007\002\001\026\050
+\150\164\164\160\072\057\057\167\167\167\056\163\164\141\162\164
+\163\163\154\056\143\157\155\057\151\156\164\145\162\155\145\144
+\151\141\164\145\056\160\144\146\060\201\317\006\010\053\006\001
+\005\005\007\002\002\060\201\302\060\047\026\040\123\164\141\162
+\164\040\103\157\155\155\145\162\143\151\141\154\040\050\123\164
+\141\162\164\103\157\155\051\040\114\164\144\056\060\003\002\001
+\001\032\201\226\114\151\155\151\164\145\144\040\114\151\141\142
+\151\154\151\164\171\054\040\162\145\141\144\040\164\150\145\040
+\163\145\143\164\151\157\156\040\052\114\145\147\141\154\040\114
+\151\155\151\164\141\164\151\157\156\163\052\040\157\146\040\164
+\150\145\040\123\164\141\162\164\103\157\155\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\040\120\157\154\151\143\171\040\141\166\141\151\154
+\141\142\154\145\040\141\164\040\150\164\164\160\072\057\057\167
+\167\167\056\163\164\141\162\164\163\163\154\056\143\157\155\057
+\160\157\154\151\143\171\056\160\144\146\060\021\006\011\140\206
+\110\001\206\370\102\001\001\004\004\003\002\000\007\060\070\006
+\011\140\206\110\001\206\370\102\001\015\004\053\026\051\123\164
+\141\162\164\103\157\155\040\106\162\145\145\040\123\123\114\040
+\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165
+\164\150\157\162\151\164\171\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\003\202\002\001\000\216\217\347\334\224
+\171\174\361\205\177\237\111\157\153\312\135\373\214\376\004\305
+\301\142\321\175\102\212\274\123\267\224\003\146\060\077\261\347
+\012\247\120\040\125\045\177\166\172\024\015\353\004\016\100\346
+\076\330\210\253\007\047\203\251\165\246\067\163\307\375\113\322
+\115\255\027\100\310\106\276\073\177\121\374\303\266\005\061\334
+\315\205\042\116\161\267\362\161\136\260\032\306\272\223\213\170
+\222\112\205\370\170\017\203\376\057\255\054\367\344\244\273\055
+\320\347\015\072\270\076\316\366\170\366\256\107\044\312\243\065
+\066\316\307\306\207\230\332\354\373\351\262\316\047\233\210\303
+\004\241\366\013\131\150\257\311\333\020\017\115\366\144\143\134
+\245\022\157\222\262\223\224\307\210\027\016\223\266\176\142\213
+\220\177\253\116\237\374\343\165\024\117\052\062\337\133\015\340
+\365\173\223\015\253\241\317\207\341\245\004\105\350\074\022\245
+\011\305\260\321\267\123\363\140\024\272\205\151\152\041\174\037
+\165\141\027\040\027\173\154\073\101\051\134\341\254\132\321\315
+\214\233\353\140\035\031\354\367\345\260\332\371\171\030\245\105
+\077\111\103\127\322\335\044\325\054\243\375\221\215\047\265\345
+\353\024\006\232\114\173\041\273\072\255\060\006\030\300\330\301
+\153\054\177\131\134\135\221\261\160\042\127\353\212\153\110\112
+\325\017\051\354\306\100\300\057\210\114\150\001\027\167\364\044
+\031\117\275\372\341\262\040\041\113\335\032\330\051\175\252\270
+\336\124\354\041\125\200\154\036\365\060\310\243\020\345\262\346
+\052\024\061\303\205\055\214\230\261\206\132\117\211\131\055\271
+\307\367\034\310\212\177\300\235\005\112\346\102\117\142\243\155
+\051\244\037\205\253\333\345\201\310\255\052\075\114\135\133\204
+\046\161\304\205\136\161\044\312\245\033\154\330\141\323\032\340
+\124\333\316\272\251\062\265\042\366\163\101\011\135\270\027\135
+\016\017\231\220\326\107\332\157\012\072\142\050\024\147\202\331
+\361\320\200\131\233\313\061\330\233\017\214\167\116\265\150\212
+\362\154\366\044\016\055\154\160\305\163\321\336\024\320\161\217
+\266\323\173\002\366\343\270\324\011\156\153\236\165\204\071\346
+\177\045\245\362\110\000\300\244\001\332\077
+END
+
+# Trust for "StartCom Certification Authority"
+# Issuer: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Serial Number: 45 (0x2d)
+# Subject: CN=StartCom Certification Authority,OU=Secure Digital Certificate Signing,O=StartCom Ltd.,C=IL
+# Not Valid Before: Sun Sep 17 19:46:37 2006
+# Not Valid After : Wed Sep 17 19:46:36 2036
+# Fingerprint (MD5): C9:3B:0D:84:41:FC:A4:76:79:23:08:57:DE:10:19:16
+# Fingerprint (SHA1): A3:F1:33:3F:E2:42:BF:CF:C5:D1:4E:8F:39:42:98:40:68:10:D1:A0
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "StartCom Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\243\361\063\077\342\102\277\317\305\321\116\217\071\102\230\100
+\150\020\321\240
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\311\073\015\204\101\374\244\166\171\043\010\127\336\020\031\026
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\175\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\053\060\051\006\003\125\004\013
+\023\042\123\145\143\165\162\145\040\104\151\147\151\164\141\154
+\040\103\145\162\164\151\146\151\143\141\164\145\040\123\151\147
+\156\151\156\147\061\051\060\047\006\003\125\004\003\023\040\123
+\164\141\162\164\103\157\155\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\055
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "StartCom Certification Authority G2"
+#
+# Issuer: CN=StartCom Certification Authority G2,O=StartCom Ltd.,C=IL
+# Serial Number: 59 (0x3b)
+# Subject: CN=StartCom Certification Authority G2,O=StartCom Ltd.,C=IL
+# Not Valid Before: Fri Jan 01 01:00:01 2010
+# Not Valid After : Sat Dec 31 23:59:01 2039
+# Fingerprint (MD5): 78:4B:FB:9E:64:82:0A:D3:B8:4C:62:F3:64:F2:90:64
+# Fingerprint (SHA1): 31:F1:FD:68:22:63:20:EE:C6:3B:3F:9D:EA:4A:3E:53:7C:7C:39:17
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "StartCom Certification Authority G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\123\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\054\060\052\006\003\125\004\003
+\023\043\123\164\141\162\164\103\157\155\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\123\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\054\060\052\006\003\125\004\003
+\023\043\123\164\141\162\164\103\157\155\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\073
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\143\060\202\003\113\240\003\002\001\002\002\001\073
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\123\061\013\060\011\006\003\125\004\006\023\002\111\114\061\026
+\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103\157
+\155\040\114\164\144\056\061\054\060\052\006\003\125\004\003\023
+\043\123\164\141\162\164\103\157\155\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\040\107\062\060\036\027\015\061\060\060\061\060\061\060\061
+\060\060\060\061\132\027\015\063\071\061\062\063\061\062\063\065
+\071\060\061\132\060\123\061\013\060\011\006\003\125\004\006\023
+\002\111\114\061\026\060\024\006\003\125\004\012\023\015\123\164
+\141\162\164\103\157\155\040\114\164\144\056\061\054\060\052\006
+\003\125\004\003\023\043\123\164\141\162\164\103\157\155\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\107\062\060\202\002\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002\017
+\000\060\202\002\012\002\202\002\001\000\266\211\066\133\007\267
+\040\066\275\202\273\341\026\040\003\225\172\257\016\243\125\311
+\045\231\112\305\320\126\101\207\220\115\041\140\244\024\207\073
+\315\375\262\076\264\147\003\152\355\341\017\113\300\221\205\160
+\105\340\102\236\336\051\043\324\001\015\240\020\171\270\333\003
+\275\363\251\057\321\306\340\017\313\236\212\024\012\270\275\366
+\126\142\361\305\162\266\062\045\331\262\363\275\145\305\015\054
+\156\325\222\157\030\213\000\101\024\202\157\100\040\046\172\050
+\017\365\036\177\047\367\224\261\067\075\267\307\221\367\342\001
+\354\375\224\211\341\314\156\323\066\326\012\031\171\256\327\064
+\202\145\377\174\102\273\266\335\013\246\064\257\113\140\376\177
+\103\111\006\213\214\103\270\126\362\331\177\041\103\027\352\247
+\110\225\001\165\165\352\053\245\103\225\352\025\204\235\010\215
+\046\156\125\233\253\334\322\071\322\061\035\140\342\254\314\126
+\105\044\365\034\124\253\356\206\335\226\062\205\370\114\117\350
+\225\166\266\005\335\066\043\147\274\377\025\342\312\073\346\246
+\354\073\354\046\021\064\110\215\366\200\053\032\043\002\353\212
+\034\072\166\052\173\126\026\034\162\052\263\252\343\140\245\000
+\237\004\233\342\157\036\024\130\133\245\154\213\130\074\303\272
+\116\072\134\367\341\226\053\076\357\007\274\244\345\135\314\115
+\237\015\341\334\252\273\341\156\032\354\217\341\266\114\115\171
+\162\135\027\065\013\035\327\301\107\332\226\044\340\320\162\250
+\132\137\146\055\020\334\057\052\023\256\046\376\012\034\031\314
+\320\076\013\234\310\011\056\371\133\226\172\107\234\351\172\363
+\005\120\164\225\163\236\060\011\363\227\202\136\346\217\071\010
+\036\131\345\065\024\102\023\377\000\234\367\276\252\120\317\342
+\121\110\327\270\157\257\370\116\176\063\230\222\024\142\072\165
+\143\317\173\372\336\202\073\251\273\071\342\304\275\054\000\016
+\310\027\254\023\357\115\045\216\330\263\220\057\251\332\051\175
+\035\257\164\072\262\047\300\301\036\076\165\243\026\251\257\172
+\042\135\237\023\032\317\247\240\353\343\206\012\323\375\346\226
+\225\327\043\310\067\335\304\174\252\066\254\230\032\022\261\340
+\116\350\261\073\365\326\157\361\060\327\002\003\001\000\001\243
+\102\060\100\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\035\006\003\125\035\016\004\026\004\024\113
+\305\264\100\153\255\034\263\245\034\145\156\106\066\211\207\005
+\014\016\266\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\003\202\002\001\000\163\127\077\054\325\225\062\176\067
+\333\226\222\353\031\136\176\123\347\101\354\021\266\107\357\265
+\336\355\164\134\305\361\216\111\340\374\156\231\023\315\237\212
+\332\315\072\012\330\072\132\011\077\137\064\320\057\003\322\146
+\035\032\275\234\220\067\310\014\216\007\132\224\105\106\052\346
+\276\172\332\241\251\244\151\022\222\260\175\066\324\104\207\327
+\121\361\051\143\326\165\315\026\344\047\211\035\370\302\062\110
+\375\333\231\320\217\137\124\164\314\254\147\064\021\142\331\014
+\012\067\207\321\243\027\110\216\322\027\035\366\327\375\333\145
+\353\375\250\324\365\326\117\244\133\165\350\305\322\140\262\333
+\011\176\045\213\173\272\122\222\236\076\350\305\167\241\074\340
+\112\163\153\141\317\206\334\103\377\377\041\376\043\135\044\112
+\365\323\155\017\142\004\005\127\202\332\156\244\063\045\171\113
+\056\124\031\213\314\054\075\060\351\321\006\377\350\062\106\276
+\265\063\166\167\250\001\135\226\301\301\325\276\256\045\300\311
+\036\012\011\040\210\241\016\311\363\157\115\202\124\000\040\247
+\322\217\344\071\124\027\056\215\036\270\033\273\033\275\232\116
+\073\020\064\334\234\210\123\357\242\061\133\130\117\221\142\310
+\302\232\232\315\025\135\070\251\326\276\370\023\265\237\022\151
+\362\120\142\254\373\027\067\364\356\270\165\147\140\020\373\203
+\120\371\104\265\165\234\100\027\262\376\375\171\135\156\130\130
+\137\060\374\000\256\257\063\301\016\116\154\272\247\246\241\177
+\062\333\070\340\261\162\027\012\053\221\354\152\143\046\355\211
+\324\170\314\164\036\005\370\153\376\214\152\166\071\051\256\145
+\043\022\225\010\042\034\227\316\133\006\356\014\342\273\274\037
+\104\223\366\330\070\105\005\041\355\344\255\253\022\266\003\244
+\102\056\055\304\011\072\003\147\151\204\232\341\131\220\212\050
+\205\325\135\164\261\321\016\040\130\233\023\245\260\143\246\355
+\173\107\375\105\125\060\244\356\232\324\346\342\207\357\230\311
+\062\202\021\051\042\274\000\012\061\136\055\017\300\216\351\153
+\262\217\056\006\330\321\221\307\306\022\364\114\375\060\027\303
+\301\332\070\133\343\251\352\346\241\272\171\357\163\330\266\123
+\127\055\366\320\341\327\110
+END
+
+# Trust for "StartCom Certification Authority G2"
+# Issuer: CN=StartCom Certification Authority G2,O=StartCom Ltd.,C=IL
+# Serial Number: 59 (0x3b)
+# Subject: CN=StartCom Certification Authority G2,O=StartCom Ltd.,C=IL
+# Not Valid Before: Fri Jan 01 01:00:01 2010
+# Not Valid After : Sat Dec 31 23:59:01 2039
+# Fingerprint (MD5): 78:4B:FB:9E:64:82:0A:D3:B8:4C:62:F3:64:F2:90:64
+# Fingerprint (SHA1): 31:F1:FD:68:22:63:20:EE:C6:3B:3F:9D:EA:4A:3E:53:7C:7C:39:17
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "StartCom Certification Authority G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\061\361\375\150\042\143\040\356\306\073\077\235\352\112\076\123
+\174\174\071\027
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\170\113\373\236\144\202\012\323\270\114\142\363\144\362\220\144
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\123\061\013\060\011\006\003\125\004\006\023\002\111\114\061
+\026\060\024\006\003\125\004\012\023\015\123\164\141\162\164\103
+\157\155\040\114\164\144\056\061\054\060\052\006\003\125\004\003
+\023\043\123\164\141\162\164\103\157\155\040\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\073
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Buypass Class 2 Root CA"
+#
+# Issuer: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO
+# Serial Number: 2 (0x2)
+# Subject: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Tue Oct 26 08:38:03 2010
+# Not Valid After : Fri Oct 26 08:38:03 2040
+# Fingerprint (MD5): 46:A7:D2:FE:45:FB:64:5A:A8:59:90:9B:78:44:9B:29
+# Fingerprint (SHA1): 49:0A:75:74:DE:87:0A:47:FE:58:EE:F6:C7:6B:EB:C6:0B:12:40:99
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 2 Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040
+\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\062\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040
+\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\062\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\131\060\202\003\101\240\003\002\001\002\002\001\002
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061\035
+\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163\163
+\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040\060
+\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163\040
+\103\154\141\163\163\040\062\040\122\157\157\164\040\103\101\060
+\036\027\015\061\060\061\060\062\066\060\070\063\070\060\063\132
+\027\015\064\060\061\060\062\066\060\070\063\070\060\063\132\060
+\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061\035
+\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163\163
+\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040\060
+\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163\040
+\103\154\141\163\163\040\062\040\122\157\157\164\040\103\101\060
+\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000
+\327\307\136\367\301\007\324\167\373\103\041\364\364\365\151\344
+\356\062\001\333\243\206\037\344\131\015\272\347\165\203\122\353
+\352\034\141\025\110\273\035\007\312\214\256\260\334\226\235\352
+\303\140\222\206\202\050\163\234\126\006\377\113\144\360\014\052
+\067\111\265\345\317\014\174\356\361\112\273\163\060\145\363\325
+\057\203\266\176\343\347\365\236\253\140\371\323\361\235\222\164
+\212\344\034\226\254\133\200\351\265\364\061\207\243\121\374\307
+\176\241\157\216\123\167\324\227\301\125\063\222\076\030\057\165
+\324\255\206\111\313\225\257\124\006\154\330\006\023\215\133\377
+\341\046\031\131\300\044\272\201\161\171\220\104\120\150\044\224
+\137\270\263\021\361\051\101\141\243\101\313\043\066\325\301\361
+\062\120\020\116\177\364\206\223\354\204\323\216\274\113\277\134
+\001\116\007\075\334\024\212\224\012\244\352\163\373\013\121\350
+\023\007\030\372\016\361\053\321\124\025\175\074\341\367\264\031
+\102\147\142\136\167\340\242\125\354\266\331\151\027\325\072\257
+\104\355\112\305\236\344\172\047\174\345\165\327\252\313\045\347
+\337\153\012\333\017\115\223\116\250\240\315\173\056\362\131\001
+\152\267\015\270\007\201\176\213\070\033\070\346\012\127\231\075
+\356\041\350\243\365\014\026\335\213\354\064\216\234\052\034\000
+\025\027\215\150\203\322\160\237\030\010\315\021\150\325\311\153
+\122\315\304\106\217\334\265\363\330\127\163\036\351\224\071\004
+\277\323\336\070\336\264\123\354\151\034\242\176\304\217\344\033
+\160\255\362\242\371\373\367\026\144\146\151\237\111\121\242\342
+\025\030\147\006\112\177\325\154\265\115\263\063\340\141\353\135
+\276\351\230\017\062\327\035\113\074\056\132\001\122\221\011\362
+\337\352\215\330\006\100\143\252\021\344\376\303\067\236\024\122
+\077\364\342\314\362\141\223\321\375\147\153\327\122\256\277\150
+\253\100\103\240\127\065\123\170\360\123\370\141\102\007\144\306
+\327\157\233\114\070\015\143\254\142\257\066\213\242\163\012\015
+\365\041\275\164\252\115\352\162\003\111\333\307\137\035\142\143
+\307\375\335\221\354\063\356\365\155\264\156\060\150\336\310\326
+\046\260\165\136\173\264\007\040\230\241\166\062\270\115\154\117
+\002\003\001\000\001\243\102\060\100\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035
+\016\004\026\004\024\311\200\167\340\142\222\202\365\106\234\363
+\272\367\114\303\336\270\243\255\071\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\006\060\015\006\011\052\206\110
+\206\367\015\001\001\013\005\000\003\202\002\001\000\123\137\041
+\365\272\260\072\122\071\054\222\260\154\000\311\357\316\040\357
+\006\362\226\236\351\244\164\177\172\026\374\267\365\266\373\025
+\033\077\253\246\300\162\135\020\261\161\356\274\117\343\255\254
+\003\155\056\161\056\257\304\343\255\243\275\014\021\247\264\377
+\112\262\173\020\020\037\247\127\101\262\300\256\364\054\131\326
+\107\020\210\363\041\121\051\060\312\140\206\257\106\253\035\355
+\072\133\260\224\336\104\343\101\010\242\301\354\035\326\375\117
+\266\326\107\320\024\013\312\346\312\265\173\167\176\101\037\136
+\203\307\266\214\071\226\260\077\226\201\101\157\140\220\342\350
+\371\373\042\161\331\175\263\075\106\277\264\204\257\220\034\017
+\217\022\152\257\357\356\036\172\256\002\112\212\027\053\166\376
+\254\124\211\044\054\117\077\266\262\247\116\214\250\221\227\373
+\051\306\173\134\055\271\313\146\266\267\250\133\022\121\205\265
+\011\176\142\170\160\376\251\152\140\266\035\016\171\014\375\312
+\352\044\200\162\303\227\077\362\167\253\103\042\012\307\353\266
+\014\204\202\054\200\153\101\212\010\300\353\245\153\337\231\022
+\313\212\325\136\200\014\221\340\046\010\066\110\305\372\070\021
+\065\377\045\203\055\362\172\277\332\375\216\376\245\313\105\054
+\037\304\210\123\256\167\016\331\232\166\305\216\054\035\243\272
+\325\354\062\256\300\252\254\367\321\172\115\353\324\007\342\110
+\367\042\216\260\244\237\152\316\216\262\262\140\364\243\042\320
+\043\353\224\132\172\151\335\017\277\100\127\254\153\131\120\331
+\243\231\341\156\376\215\001\171\047\043\025\336\222\235\173\011
+\115\132\347\113\110\060\132\030\346\012\155\346\217\340\322\273
+\346\337\174\156\041\202\301\150\071\115\264\230\130\146\142\314
+\112\220\136\303\372\047\004\261\171\025\164\231\314\276\255\040
+\336\046\140\034\353\126\121\246\243\352\344\243\077\247\377\141
+\334\361\132\115\154\062\043\103\356\254\250\356\356\112\022\011
+\074\135\161\302\276\171\372\302\207\150\035\013\375\134\151\314
+\006\320\232\175\124\231\052\311\071\032\031\257\113\052\103\363
+\143\135\132\130\342\057\343\035\344\251\326\320\012\320\236\277
+\327\201\011\361\311\307\046\015\254\230\026\126\240
+END
+
+# Trust for "Buypass Class 2 Root CA"
+# Issuer: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO
+# Serial Number: 2 (0x2)
+# Subject: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Tue Oct 26 08:38:03 2010
+# Not Valid After : Fri Oct 26 08:38:03 2040
+# Fingerprint (MD5): 46:A7:D2:FE:45:FB:64:5A:A8:59:90:9B:78:44:9B:29
+# Fingerprint (SHA1): 49:0A:75:74:DE:87:0A:47:FE:58:EE:F6:C7:6B:EB:C6:0B:12:40:99
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 2 Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\111\012\165\164\336\207\012\107\376\130\356\366\307\153\353\306
+\013\022\100\231
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\106\247\322\376\105\373\144\132\250\131\220\233\170\104\233\051
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040
+\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\062\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Buypass Class 3 Root CA"
+#
+# Issuer: CN=Buypass Class 3 Root CA,O=Buypass AS-983163327,C=NO
+# Serial Number: 2 (0x2)
+# Subject: CN=Buypass Class 3 Root CA,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Tue Oct 26 08:28:58 2010
+# Not Valid After : Fri Oct 26 08:28:58 2040
+# Fingerprint (MD5): 3D:3B:18:9E:2C:64:5A:E8:D5:88:CE:0E:F9:37:C2:EC
+# Fingerprint (SHA1): DA:FA:F7:FA:66:84:EC:06:8F:14:50:BD:C7:C2:81:A5:BC:A9:64:57
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 3 Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040
+\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\063\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040
+\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\063\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\131\060\202\003\101\240\003\002\001\002\002\001\002
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061\035
+\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163\163
+\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040\060
+\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163\040
+\103\154\141\163\163\040\063\040\122\157\157\164\040\103\101\060
+\036\027\015\061\060\061\060\062\066\060\070\062\070\065\070\132
+\027\015\064\060\061\060\062\066\060\070\062\070\065\070\132\060
+\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061\035
+\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163\163
+\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040\060
+\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163\040
+\103\154\141\163\163\040\063\040\122\157\157\164\040\103\101\060
+\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000
+\245\332\012\225\026\120\343\225\362\136\235\166\061\006\062\172
+\233\361\020\166\270\000\232\265\122\066\315\044\107\260\237\030
+\144\274\232\366\372\325\171\330\220\142\114\042\057\336\070\075
+\326\340\250\351\034\054\333\170\021\351\216\150\121\025\162\307
+\363\063\207\344\240\135\013\134\340\127\007\052\060\365\315\304
+\067\167\050\115\030\221\346\277\325\122\375\161\055\160\076\347
+\306\304\212\343\360\050\013\364\166\230\241\213\207\125\262\072
+\023\374\267\076\047\067\216\042\343\250\117\052\357\140\273\075
+\267\071\303\016\001\107\231\135\022\117\333\103\372\127\241\355
+\371\235\276\021\107\046\133\023\230\253\135\026\212\260\067\034
+\127\235\105\377\210\226\066\277\273\312\007\173\157\207\143\327
+\320\062\152\326\135\154\014\361\263\156\071\342\153\061\056\071
+\000\047\024\336\070\300\354\031\146\206\022\350\235\162\026\023
+\144\122\307\251\067\034\375\202\060\355\204\030\035\364\256\134
+\377\160\023\000\353\261\365\063\172\113\326\125\370\005\215\113
+\151\260\365\263\050\066\134\024\304\121\163\115\153\013\361\064
+\007\333\027\071\327\334\050\173\153\365\237\363\056\301\117\027
+\052\020\363\314\312\350\353\375\153\253\056\232\237\055\202\156
+\004\324\122\001\223\055\075\206\374\176\374\337\357\102\035\246
+\153\357\271\040\306\367\275\240\247\225\375\247\346\211\044\330
+\314\214\064\154\342\043\057\331\022\032\041\271\125\221\157\013
+\221\171\031\014\255\100\210\013\160\342\172\322\016\330\150\110
+\273\202\023\071\020\130\351\330\052\007\306\022\333\130\333\322
+\073\125\020\107\005\025\147\142\176\030\143\246\106\077\011\016
+\124\062\136\277\015\142\172\047\357\200\350\333\331\113\006\132
+\067\132\045\320\010\022\167\324\157\011\120\227\075\310\035\303
+\337\214\105\060\126\306\323\144\253\146\363\300\136\226\234\303
+\304\357\303\174\153\213\072\171\177\263\111\317\075\342\211\237
+\240\060\113\205\271\234\224\044\171\217\175\153\251\105\150\017
+\053\320\361\332\034\313\151\270\312\111\142\155\310\320\143\142
+\335\140\017\130\252\217\241\274\005\245\146\242\317\033\166\262
+\204\144\261\114\071\122\300\060\272\360\214\113\002\260\266\267
+\002\003\001\000\001\243\102\060\100\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035
+\016\004\026\004\024\107\270\315\377\345\157\356\370\262\354\057
+\116\016\371\045\260\216\074\153\303\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\006\060\015\006\011\052\206\110
+\206\367\015\001\001\013\005\000\003\202\002\001\000\000\040\043
+\101\065\004\220\302\100\142\140\357\342\065\114\327\077\254\342
+\064\220\270\241\157\166\372\026\026\244\110\067\054\351\220\302
+\362\074\370\012\237\330\201\345\273\133\332\045\054\244\247\125
+\161\044\062\366\310\013\362\274\152\370\223\254\262\007\302\137
+\237\333\314\310\212\252\276\152\157\341\111\020\314\061\327\200
+\273\273\310\330\242\016\144\127\352\242\365\302\251\061\025\322
+\040\152\354\374\042\001\050\317\206\270\200\036\251\314\021\245
+\074\362\026\263\107\235\374\322\200\041\304\313\320\107\160\101
+\241\312\203\031\010\054\155\362\135\167\234\212\024\023\324\066
+\034\222\360\345\006\067\334\246\346\220\233\070\217\134\153\033
+\106\206\103\102\137\076\001\007\123\124\135\145\175\367\212\163
+\241\232\124\132\037\051\103\024\047\302\205\017\265\210\173\032
+\073\224\267\035\140\247\265\234\347\051\151\127\132\233\223\172
+\103\060\033\003\327\142\310\100\246\252\374\144\344\112\327\221
+\123\001\250\040\210\156\234\137\104\271\313\140\201\064\354\157
+\323\175\332\110\137\353\264\220\274\055\251\034\013\254\034\325
+\242\150\040\200\004\326\374\261\217\057\273\112\061\015\112\206
+\034\353\342\066\051\046\365\332\330\304\362\165\141\317\176\256
+\166\143\112\172\100\145\223\207\370\036\200\214\206\345\206\326
+\217\016\374\123\054\140\350\026\141\032\242\076\103\173\315\071
+\140\124\152\365\362\211\046\001\150\203\110\242\063\350\311\004
+\221\262\021\064\021\076\352\320\103\031\037\003\223\220\014\377
+\121\075\127\364\101\156\341\313\240\276\353\311\143\315\155\314
+\344\370\066\252\150\235\355\275\135\227\160\104\015\266\016\065
+\334\341\014\135\273\240\121\224\313\176\026\353\021\057\243\222
+\105\310\114\161\331\274\311\231\122\127\106\057\120\317\275\065
+\151\364\075\025\316\006\245\054\017\076\366\201\272\224\273\303
+\273\277\145\170\322\206\171\377\111\073\032\203\014\360\336\170
+\354\310\362\115\114\032\336\202\051\370\301\132\332\355\356\346
+\047\136\350\105\320\235\034\121\250\150\253\104\343\320\213\152
+\343\370\073\273\334\115\327\144\362\121\276\346\252\253\132\351
+\061\356\006\274\163\277\023\142\012\237\307\271\227
+END
+
+# Trust for "Buypass Class 3 Root CA"
+# Issuer: CN=Buypass Class 3 Root CA,O=Buypass AS-983163327,C=NO
+# Serial Number: 2 (0x2)
+# Subject: CN=Buypass Class 3 Root CA,O=Buypass AS-983163327,C=NO
+# Not Valid Before: Tue Oct 26 08:28:58 2010
+# Not Valid After : Fri Oct 26 08:28:58 2040
+# Fingerprint (MD5): 3D:3B:18:9E:2C:64:5A:E8:D5:88:CE:0E:F9:37:C2:EC
+# Fingerprint (SHA1): DA:FA:F7:FA:66:84:EC:06:8F:14:50:BD:C7:C2:81:A5:BC:A9:64:57
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Buypass Class 3 Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\332\372\367\372\146\204\354\006\217\024\120\275\307\302\201\245
+\274\251\144\127
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\075\073\030\236\054\144\132\350\325\210\316\016\371\067\302\354
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061
+\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163
+\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040
+\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163
+\040\103\154\141\163\163\040\063\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "T-TeleSec GlobalRoot Class 3"
+#
+# Issuer: CN=T-TeleSec GlobalRoot Class 3,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Serial Number: 1 (0x1)
+# Subject: CN=T-TeleSec GlobalRoot Class 3,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Not Valid Before: Wed Oct 01 10:29:56 2008
+# Not Valid After : Sat Oct 01 23:59:59 2033
+# Fingerprint (MD5): CA:FB:40:A8:4E:39:92:8A:1D:FE:8E:2F:C4:27:EA:EF
+# Fingerprint (SHA1): 55:A6:72:3E:CB:F2:EC:CD:C3:23:74:70:19:9D:2A:BE:11:E3:81:D1
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "T-TeleSec GlobalRoot Class 3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163
+\164\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040
+\123\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060
+\035\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155
+\163\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045
+\060\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123
+\145\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154
+\141\163\163\040\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163
+\164\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040
+\123\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060
+\035\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155
+\163\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045
+\060\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123
+\145\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154
+\141\163\163\040\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\303\060\202\002\253\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163\164
+\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040\123
+\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060\035
+\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155\163
+\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045\060
+\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123\145
+\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154\141
+\163\163\040\063\060\036\027\015\060\070\061\060\060\061\061\060
+\062\071\065\066\132\027\015\063\063\061\060\060\061\062\063\065
+\071\065\071\132\060\201\202\061\013\060\011\006\003\125\004\006
+\023\002\104\105\061\053\060\051\006\003\125\004\012\014\042\124
+\055\123\171\163\164\145\155\163\040\105\156\164\145\162\160\162
+\151\163\145\040\123\145\162\166\151\143\145\163\040\107\155\142
+\110\061\037\060\035\006\003\125\004\013\014\026\124\055\123\171
+\163\164\145\155\163\040\124\162\165\163\164\040\103\145\156\164
+\145\162\061\045\060\043\006\003\125\004\003\014\034\124\055\124
+\145\154\145\123\145\143\040\107\154\157\142\141\154\122\157\157
+\164\040\103\154\141\163\163\040\063\060\202\001\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017
+\000\060\202\001\012\002\202\001\001\000\275\165\223\360\142\042
+\157\044\256\340\172\166\254\175\275\331\044\325\270\267\374\315
+\360\102\340\353\170\210\126\136\233\232\124\035\115\014\212\366
+\323\317\160\364\122\265\330\223\004\343\106\206\161\101\112\053
+\360\052\054\125\003\326\110\303\340\071\070\355\362\134\074\077
+\104\274\223\075\141\253\116\315\015\276\360\040\047\130\016\104
+\177\004\032\207\245\327\226\024\066\220\320\111\173\241\165\373
+\032\153\163\261\370\316\251\011\054\362\123\325\303\024\104\270
+\206\245\366\213\053\071\332\243\063\124\331\372\162\032\367\042
+\025\034\210\221\153\177\146\345\303\152\200\260\044\363\337\206
+\105\210\375\031\177\165\207\037\037\261\033\012\163\044\133\271
+\145\340\054\124\310\140\323\146\027\077\341\314\124\063\163\221
+\002\072\246\177\173\166\071\242\037\226\266\070\256\265\310\223
+\164\035\236\271\264\345\140\235\057\126\321\340\353\136\133\114
+\022\160\014\154\104\040\253\021\330\364\031\366\322\234\122\067
+\347\372\266\302\061\073\112\324\024\231\255\307\032\365\135\137
+\372\007\270\174\015\037\326\203\036\263\002\003\001\000\001\243
+\102\060\100\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\035\006\003\125\035\016\004\026\004\024\265
+\003\367\166\073\141\202\152\022\252\030\123\353\003\041\224\277
+\376\316\312\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\003\202\001\001\000\126\075\357\224\325\275\332\163\262
+\130\276\256\220\255\230\047\227\376\001\261\260\122\000\270\115
+\344\033\041\164\033\176\300\356\136\151\052\045\257\134\326\035
+\332\322\171\311\363\227\051\340\206\207\336\004\131\017\361\131
+\324\144\205\113\231\257\045\004\036\311\106\251\227\336\202\262
+\033\160\237\234\366\257\161\061\335\173\005\245\054\323\271\312
+\107\366\312\362\366\347\255\271\110\077\274\026\267\301\155\364
+\352\011\257\354\363\265\347\005\236\246\036\212\123\121\326\223
+\201\314\164\223\366\271\332\246\045\005\164\171\132\176\100\076
+\202\113\046\021\060\156\341\077\101\307\107\000\065\325\365\323
+\367\124\076\201\075\332\111\152\232\263\357\020\075\346\353\157
+\321\310\042\107\313\314\317\001\061\222\331\030\343\042\276\011
+\036\032\076\132\262\344\153\014\124\172\175\103\116\270\211\245
+\173\327\242\075\226\206\314\362\046\064\055\152\222\235\232\032
+\320\060\342\135\116\004\260\137\213\040\176\167\301\075\225\202
+\321\106\232\073\074\170\270\157\241\320\015\144\242\170\036\051
+\116\223\303\244\124\024\133
+END
+
+# Trust for "T-TeleSec GlobalRoot Class 3"
+# Issuer: CN=T-TeleSec GlobalRoot Class 3,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Serial Number: 1 (0x1)
+# Subject: CN=T-TeleSec GlobalRoot Class 3,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Not Valid Before: Wed Oct 01 10:29:56 2008
+# Not Valid After : Sat Oct 01 23:59:59 2033
+# Fingerprint (MD5): CA:FB:40:A8:4E:39:92:8A:1D:FE:8E:2F:C4:27:EA:EF
+# Fingerprint (SHA1): 55:A6:72:3E:CB:F2:EC:CD:C3:23:74:70:19:9D:2A:BE:11:E3:81:D1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "T-TeleSec GlobalRoot Class 3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\125\246\162\076\313\362\354\315\303\043\164\160\031\235\052\276
+\021\343\201\321
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\312\373\100\250\116\071\222\212\035\376\216\057\304\047\352\357
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163
+\164\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040
+\123\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060
+\035\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155
+\163\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045
+\060\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123
+\145\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154
+\141\163\163\040\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "EE Certification Centre Root CA"
+#
+# Issuer: E=pki@sk.ee,CN=EE Certification Centre Root CA,O=AS Sertifitseerimiskeskus,C=EE
+# Serial Number:54:80:f9:a0:73:ed:3f:00:4c:ca:89:d8:e3:71:e6:4a
+# Subject: E=pki@sk.ee,CN=EE Certification Centre Root CA,O=AS Sertifitseerimiskeskus,C=EE
+# Not Valid Before: Sat Oct 30 10:10:30 2010
+# Not Valid After : Tue Dec 17 23:59:59 2030
+# Fingerprint (MD5): 43:5E:88:D4:7D:1A:4A:7E:FD:84:2E:52:EB:01:D4:6F
+# Fingerprint (SHA1): C9:A8:B9:E7:55:80:5E:58:E3:53:77:A7:25:EB:AF:C3:7B:27:CC:D7
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "EE Certification Centre Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\105\105\061
+\042\060\040\006\003\125\004\012\014\031\101\123\040\123\145\162
+\164\151\146\151\164\163\145\145\162\151\155\151\163\153\145\163
+\153\165\163\061\050\060\046\006\003\125\004\003\014\037\105\105
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\103
+\145\156\164\162\145\040\122\157\157\164\040\103\101\061\030\060
+\026\006\011\052\206\110\206\367\015\001\011\001\026\011\160\153
+\151\100\163\153\056\145\145
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\105\105\061
+\042\060\040\006\003\125\004\012\014\031\101\123\040\123\145\162
+\164\151\146\151\164\163\145\145\162\151\155\151\163\153\145\163
+\153\165\163\061\050\060\046\006\003\125\004\003\014\037\105\105
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\103
+\145\156\164\162\145\040\122\157\157\164\040\103\101\061\030\060
+\026\006\011\052\206\110\206\367\015\001\011\001\026\011\160\153
+\151\100\163\153\056\145\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\124\200\371\240\163\355\077\000\114\312\211\330\343\161
+\346\112
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\003\060\202\002\353\240\003\002\001\002\002\020\124
+\200\371\240\163\355\077\000\114\312\211\330\343\161\346\112\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\165
+\061\013\060\011\006\003\125\004\006\023\002\105\105\061\042\060
+\040\006\003\125\004\012\014\031\101\123\040\123\145\162\164\151
+\146\151\164\163\145\145\162\151\155\151\163\153\145\163\153\165
+\163\061\050\060\046\006\003\125\004\003\014\037\105\105\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\103\145\156
+\164\162\145\040\122\157\157\164\040\103\101\061\030\060\026\006
+\011\052\206\110\206\367\015\001\011\001\026\011\160\153\151\100
+\163\153\056\145\145\060\042\030\017\062\060\061\060\061\060\063
+\060\061\060\061\060\063\060\132\030\017\062\060\063\060\061\062
+\061\067\062\063\065\071\065\071\132\060\165\061\013\060\011\006
+\003\125\004\006\023\002\105\105\061\042\060\040\006\003\125\004
+\012\014\031\101\123\040\123\145\162\164\151\146\151\164\163\145
+\145\162\151\155\151\163\153\145\163\153\165\163\061\050\060\046
+\006\003\125\004\003\014\037\105\105\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\103\145\156\164\162\145\040\122
+\157\157\164\040\103\101\061\030\060\026\006\011\052\206\110\206
+\367\015\001\011\001\026\011\160\153\151\100\163\153\056\145\145
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\310\040\300\354\340\305\113\253\007\170\225\363\104\356\373
+\013\014\377\164\216\141\273\261\142\352\043\330\253\241\145\062
+\172\353\216\027\117\226\330\012\173\221\242\143\154\307\214\114
+\056\171\277\251\005\374\151\134\225\215\142\371\271\160\355\303
+\121\175\320\223\346\154\353\060\113\341\274\175\277\122\233\316
+\156\173\145\362\070\261\300\242\062\357\142\262\150\340\141\123
+\301\066\225\377\354\224\272\066\256\234\034\247\062\017\345\174
+\264\306\157\164\375\173\030\350\254\127\355\006\040\113\062\060
+\130\133\375\315\250\346\241\374\160\274\216\222\163\333\227\247
+\174\041\256\075\301\365\110\207\154\047\275\237\045\164\201\125
+\260\367\165\366\075\244\144\153\326\117\347\316\100\255\017\335
+\062\323\274\212\022\123\230\311\211\373\020\035\115\176\315\176
+\037\126\015\041\160\205\366\040\203\037\366\272\037\004\217\352
+\167\210\065\304\377\352\116\241\213\115\077\143\033\104\303\104
+\324\045\166\312\267\215\327\036\112\146\144\315\134\305\234\203
+\341\302\010\210\232\354\116\243\361\076\034\054\331\154\035\241
+\113\002\003\001\000\001\243\201\212\060\201\207\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\035\006
+\003\125\035\016\004\026\004\024\022\362\132\076\352\126\034\277
+\315\006\254\361\361\045\311\251\113\324\024\231\060\105\006\003
+\125\035\045\004\076\060\074\006\010\053\006\001\005\005\007\003
+\002\006\010\053\006\001\005\005\007\003\001\006\010\053\006\001
+\005\005\007\003\003\006\010\053\006\001\005\005\007\003\004\006
+\010\053\006\001\005\005\007\003\010\006\010\053\006\001\005\005
+\007\003\011\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\202\001\001\000\173\366\344\300\015\252\031\107\267
+\115\127\243\376\255\273\261\152\325\017\236\333\344\143\305\216
+\241\120\126\223\226\270\070\300\044\042\146\274\123\024\141\225
+\277\320\307\052\226\071\077\175\050\263\020\100\041\152\304\257
+\260\122\167\030\341\226\330\126\135\343\335\066\136\035\247\120
+\124\240\305\052\344\252\214\224\212\117\235\065\377\166\244\006
+\023\221\242\242\175\000\104\077\125\323\202\074\032\325\133\274
+\126\114\042\056\106\103\212\044\100\055\363\022\270\073\160\032
+\244\226\271\032\257\207\101\032\152\030\015\006\117\307\076\156
+\271\051\115\015\111\211\021\207\062\133\346\113\004\310\344\134
+\346\164\163\224\135\026\230\023\225\376\373\333\261\104\345\072
+\160\254\067\153\346\263\063\162\050\311\263\127\240\366\002\026
+\210\006\013\266\246\113\040\050\324\336\075\213\255\067\005\123
+\164\376\156\314\274\103\027\161\136\371\305\314\032\251\141\356
+\367\166\014\363\162\364\162\255\317\162\002\066\007\107\317\357
+\031\120\211\140\314\351\044\225\017\302\313\035\362\157\166\220
+\307\314\165\301\226\305\235
+END
+
+# Trust for "EE Certification Centre Root CA"
+# Issuer: E=pki@sk.ee,CN=EE Certification Centre Root CA,O=AS Sertifitseerimiskeskus,C=EE
+# Serial Number:54:80:f9:a0:73:ed:3f:00:4c:ca:89:d8:e3:71:e6:4a
+# Subject: E=pki@sk.ee,CN=EE Certification Centre Root CA,O=AS Sertifitseerimiskeskus,C=EE
+# Not Valid Before: Sat Oct 30 10:10:30 2010
+# Not Valid After : Tue Dec 17 23:59:59 2030
+# Fingerprint (MD5): 43:5E:88:D4:7D:1A:4A:7E:FD:84:2E:52:EB:01:D4:6F
+# Fingerprint (SHA1): C9:A8:B9:E7:55:80:5E:58:E3:53:77:A7:25:EB:AF:C3:7B:27:CC:D7
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "EE Certification Centre Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\311\250\271\347\125\200\136\130\343\123\167\247\045\353\257\303
+\173\047\314\327
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\103\136\210\324\175\032\112\176\375\204\056\122\353\001\324\157
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\165\061\013\060\011\006\003\125\004\006\023\002\105\105\061
+\042\060\040\006\003\125\004\012\014\031\101\123\040\123\145\162
+\164\151\146\151\164\163\145\145\162\151\155\151\163\153\145\163
+\153\165\163\061\050\060\046\006\003\125\004\003\014\037\105\105
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\103
+\145\156\164\162\145\040\122\157\157\164\040\103\101\061\030\060
+\026\006\011\052\206\110\206\367\015\001\011\001\026\011\160\153
+\151\100\163\153\056\145\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\124\200\371\240\163\355\077\000\114\312\211\330\343\161
+\346\112
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Explicitly Distrust "TURKTRUST Mis-issued Intermediate CA 1", Bug 825022
+# Issuer: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,C=TR,CN=T..RKTRUST Elektronik Sunucu Sertifikas.. Hizmetleri
+# Serial Number: 2087 (0x827)
+# Subject: CN=*.EGO.GOV.TR,OU=EGO BILGI ISLEM,O=EGO,L=ANKARA,ST=ANKARA,C=TR
+# Not Valid Before: Mon Aug 08 07:07:51 2011
+# Not Valid After : Tue Jul 06 07:07:51 2021
+# Fingerprint (MD5): F8:F5:25:FF:0C:31:CF:85:E1:0C:86:17:C1:CE:1F:8E
+# Fingerprint (SHA1): C6:9F:28:C8:25:13:9E:65:A6:46:C4:34:AC:A5:A1:D2:00:29:5D:B1
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Mis-issued Intermediate CA 1"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\254\061\075\060\073\006\003\125\004\003\014\064\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\165\156\165\143\165\040\123\145\162\164\151
+\146\151\153\141\163\304\261\040\110\151\172\155\145\164\154\145
+\162\151\061\013\060\011\006\003\125\004\006\023\002\124\122\061
+\136\060\134\006\003\125\004\012\014\125\124\303\234\122\113\124
+\122\125\123\124\040\102\151\154\147\151\040\304\260\154\145\164
+\151\305\237\151\155\040\166\145\040\102\151\154\151\305\237\151
+\155\040\107\303\274\166\145\156\154\151\304\237\151\040\110\151
+\172\155\145\164\154\145\162\151\040\101\056\305\236\056\040\050
+\143\051\040\113\141\163\304\261\155\040\040\062\060\060\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\010\047
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+# Explicitly Distrust "TURKTRUST Mis-issued Intermediate CA 2", Bug 825022
+# Issuer: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,C=TR,CN=T..RKTRUST Elektronik Sunucu Sertifikas.. Hizmetleri
+# Serial Number: 2148 (0x864)
+# Subject: E=ileti@kktcmerkezbankasi.org,CN=e-islem.kktcmerkezbankasi.org,O=KKTC Merkez Bankasi,L=Lefkosa,ST=Lefkosa,C=TR
+# Not Valid Before: Mon Aug 08 07:07:51 2011
+# Not Valid After : Thu Aug 05 07:07:51 2021
+# Fingerprint (MD5): BF:C3:EC:AD:0F:42:4F:B4:B5:38:DB:35:BF:AD:84:A2
+# Fingerprint (SHA1): F9:2B:E5:26:6C:C0:5D:B2:DC:0D:C3:F2:DC:74:E0:2D:EF:D9:49:CB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Mis-issued Intermediate CA 2"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\254\061\075\060\073\006\003\125\004\003\014\064\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\165\156\165\143\165\040\123\145\162\164\151
+\146\151\153\141\163\304\261\040\110\151\172\155\145\164\154\145
+\162\151\061\013\060\011\006\003\125\004\006\023\002\124\122\061
+\136\060\134\006\003\125\004\012\014\125\124\303\234\122\113\124
+\122\125\123\124\040\102\151\154\147\151\040\304\260\154\145\164
+\151\305\237\151\155\040\166\145\040\102\151\154\151\305\237\151
+\155\040\107\303\274\166\145\156\154\151\304\237\151\040\110\151
+\172\155\145\164\154\145\162\151\040\101\056\305\236\056\040\050
+\143\051\040\113\141\163\304\261\155\040\040\062\060\060\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\010\144
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TURKTRUST Certificate Services Provider Root 2007"
+#
+# Issuer: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number: 1 (0x1)
+# Subject: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Tue Dec 25 18:37:19 2007
+# Not Valid After : Fri Dec 22 18:37:19 2017
+# Fingerprint (MD5): 2B:70:20:56:86:82:A0:18:C8:07:53:12:28:70:21:72
+# Fingerprint (SHA1): F1:7F:6F:B6:31:DC:99:E3:A3:C8:7F:FE:1C:F1:81:10:88:D9:60:33
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Certificate Services Provider Root 2007"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\277\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141
+\162\141\061\136\060\134\006\003\125\004\012\014\125\124\303\234
+\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260
+\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151
+\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151
+\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236
+\056\040\050\143\051\040\101\162\141\154\304\261\153\040\062\060
+\060\067
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\277\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141
+\162\141\061\136\060\134\006\003\125\004\012\014\125\124\303\234
+\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260
+\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151
+\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151
+\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236
+\056\040\050\143\051\040\101\162\141\154\304\261\153\040\062\060
+\060\067
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\075\060\202\003\045\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\201\277\061\077\060\075\006\003\125\004\003\014\066\124\303\234
+\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157\156
+\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151\172
+\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304\261
+\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124\122
+\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141\162
+\141\061\136\060\134\006\003\125\004\012\014\125\124\303\234\122
+\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260\154
+\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151\305
+\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151\040
+\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236\056
+\040\050\143\051\040\101\162\141\154\304\261\153\040\062\060\060
+\067\060\036\027\015\060\067\061\062\062\065\061\070\063\067\061
+\071\132\027\015\061\067\061\062\062\062\061\070\063\067\061\071
+\132\060\201\277\061\077\060\075\006\003\125\004\003\014\066\124
+\303\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162
+\157\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110
+\151\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143
+\304\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002
+\124\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153
+\141\162\141\061\136\060\134\006\003\125\004\012\014\125\124\303
+\234\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304
+\260\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154
+\151\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237
+\151\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305
+\236\056\040\050\143\051\040\101\162\141\154\304\261\153\040\062
+\060\060\067\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\253\267\076\012\214\310\245\130\025\346\212\357
+\047\075\112\264\350\045\323\315\063\302\040\334\031\356\210\077
+\115\142\360\335\023\167\217\141\251\052\265\324\362\271\061\130
+\051\073\057\077\152\234\157\163\166\045\356\064\040\200\356\352
+\267\360\304\012\315\053\206\224\311\343\140\261\104\122\262\132
+\051\264\221\227\203\330\267\246\024\057\051\111\242\363\005\006
+\373\264\117\332\241\154\232\146\237\360\103\011\312\352\162\217
+\353\000\327\065\071\327\126\027\107\027\060\364\276\277\077\302
+\150\257\066\100\301\251\364\251\247\350\020\153\010\212\367\206
+\036\334\232\052\025\006\366\243\360\364\340\307\024\324\121\177
+\317\264\333\155\257\107\226\027\233\167\161\330\247\161\235\044
+\014\366\224\077\205\061\022\117\272\356\116\202\270\271\076\217
+\043\067\136\314\242\252\165\367\030\157\011\323\256\247\124\050
+\064\373\341\340\073\140\175\240\276\171\211\206\310\237\055\371
+\012\113\304\120\242\347\375\171\026\307\172\013\030\317\316\114
+\357\175\326\007\157\230\361\257\261\301\172\327\201\065\270\252
+\027\264\340\313\002\003\001\000\001\243\102\060\100\060\035\006
+\003\125\035\016\004\026\004\024\051\305\220\253\045\257\021\344
+\141\277\243\377\210\141\221\346\016\376\234\201\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\015\006
+\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001
+\000\020\015\332\370\072\354\050\321\024\225\202\261\022\054\121
+\172\101\045\066\114\237\354\077\037\204\235\145\124\134\250\026
+\002\100\372\156\032\067\204\357\162\235\206\012\125\235\126\050
+\254\146\054\320\072\126\223\064\007\045\255\010\260\217\310\017
+\011\131\312\235\230\034\345\124\370\271\105\177\152\227\157\210
+\150\115\112\006\046\067\210\002\016\266\306\326\162\231\316\153
+\167\332\142\061\244\126\037\256\137\215\167\332\135\366\210\374
+\032\331\236\265\201\360\062\270\343\210\320\234\363\152\240\271
+\233\024\131\065\066\117\317\363\216\136\135\027\255\025\225\330
+\335\262\325\025\156\000\116\263\113\317\146\224\344\340\315\265
+\005\332\143\127\213\345\263\252\333\300\056\034\220\104\333\032
+\135\030\244\356\276\004\133\231\325\161\137\125\145\144\142\325
+\242\233\004\131\206\310\142\167\347\174\202\105\152\075\027\277
+\354\235\165\014\256\243\157\132\323\057\230\066\364\360\365\031
+\253\021\135\310\246\343\052\130\152\102\011\303\275\222\046\146
+\062\015\135\010\125\164\377\214\230\320\012\246\204\152\321\071
+\175
+END
+
+# Trust for "TURKTRUST Certificate Services Provider Root 2007"
+# Issuer: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Serial Number: 1 (0x1)
+# Subject: O=T..RKTRUST Bilgi ..leti..im ve Bili..im G..venli..i Hizmetleri A...,L=Ankara,C=TR,CN=T..RKTRUST Elektronik Sertifika Hizmet Sa..lay..c..s..
+# Not Valid Before: Tue Dec 25 18:37:19 2007
+# Not Valid After : Fri Dec 22 18:37:19 2017
+# Fingerprint (MD5): 2B:70:20:56:86:82:A0:18:C8:07:53:12:28:70:21:72
+# Fingerprint (SHA1): F1:7F:6F:B6:31:DC:99:E3:A3:C8:7F:FE:1C:F1:81:10:88:D9:60:33
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TURKTRUST Certificate Services Provider Root 2007"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\361\177\157\266\061\334\231\343\243\310\177\376\034\361\201\020
+\210\331\140\063
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\053\160\040\126\206\202\240\030\310\007\123\022\050\160\041\162
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\277\061\077\060\075\006\003\125\004\003\014\066\124\303
+\234\122\113\124\122\125\123\124\040\105\154\145\153\164\162\157
+\156\151\153\040\123\145\162\164\151\146\151\153\141\040\110\151
+\172\155\145\164\040\123\141\304\237\154\141\171\304\261\143\304
+\261\163\304\261\061\013\060\011\006\003\125\004\006\023\002\124
+\122\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141
+\162\141\061\136\060\134\006\003\125\004\012\014\125\124\303\234
+\122\113\124\122\125\123\124\040\102\151\154\147\151\040\304\260
+\154\145\164\151\305\237\151\155\040\166\145\040\102\151\154\151
+\305\237\151\155\040\107\303\274\166\145\156\154\151\304\237\151
+\040\110\151\172\155\145\164\154\145\162\151\040\101\056\305\236
+\056\040\050\143\051\040\101\162\141\154\304\261\153\040\062\060
+\060\067
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "D-TRUST Root Class 3 CA 2 2009"
+#
+# Issuer: CN=D-TRUST Root Class 3 CA 2 2009,O=D-Trust GmbH,C=DE
+# Serial Number: 623603 (0x983f3)
+# Subject: CN=D-TRUST Root Class 3 CA 2 2009,O=D-Trust GmbH,C=DE
+# Not Valid Before: Thu Nov 05 08:35:58 2009
+# Not Valid After : Mon Nov 05 08:35:58 2029
+# Fingerprint (MD5): CD:E0:25:69:8D:47:AC:9C:89:35:90:F7:FD:51:3D:2F
+# Fingerprint (SHA1): 58:E8:AB:B0:36:15:33:FB:80:F7:9B:1B:6D:29:D3:FF:8D:5F:00:F0
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "D-TRUST Root Class 3 CA 2 2009"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\115\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165\163
+\164\040\107\155\142\110\061\047\060\045\006\003\125\004\003\014
+\036\104\055\124\122\125\123\124\040\122\157\157\164\040\103\154
+\141\163\163\040\063\040\103\101\040\062\040\062\060\060\071
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\115\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165\163
+\164\040\107\155\142\110\061\047\060\045\006\003\125\004\003\014
+\036\104\055\124\122\125\123\124\040\122\157\157\164\040\103\154
+\141\163\163\040\063\040\103\101\040\062\040\062\060\060\071
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\011\203\363
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\063\060\202\003\033\240\003\002\001\002\002\003\011
+\203\363\060\015\006\011\052\206\110\206\367\015\001\001\013\005
+\000\060\115\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165
+\163\164\040\107\155\142\110\061\047\060\045\006\003\125\004\003
+\014\036\104\055\124\122\125\123\124\040\122\157\157\164\040\103
+\154\141\163\163\040\063\040\103\101\040\062\040\062\060\060\071
+\060\036\027\015\060\071\061\061\060\065\060\070\063\065\065\070
+\132\027\015\062\071\061\061\060\065\060\070\063\065\065\070\132
+\060\115\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165\163
+\164\040\107\155\142\110\061\047\060\045\006\003\125\004\003\014
+\036\104\055\124\122\125\123\124\040\122\157\157\164\040\103\154
+\141\163\163\040\063\040\103\101\040\062\040\062\060\060\071\060
+\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000
+\323\262\112\317\172\107\357\165\233\043\372\072\057\326\120\105
+\211\065\072\306\153\333\376\333\000\150\250\340\003\021\035\067
+\120\010\237\115\112\150\224\065\263\123\321\224\143\247\040\126
+\257\336\121\170\354\052\075\363\110\110\120\076\012\337\106\125
+\213\047\155\303\020\115\015\221\122\103\330\207\340\135\116\066
+\265\041\312\137\071\100\004\137\133\176\314\243\306\053\251\100
+\036\331\066\204\326\110\363\222\036\064\106\040\044\301\244\121
+\216\112\032\357\120\077\151\135\031\177\105\303\307\001\217\121
+\311\043\350\162\256\264\274\126\011\177\022\313\034\261\257\051
+\220\012\311\125\314\017\323\264\032\355\107\065\132\112\355\234
+\163\004\041\320\252\275\014\023\265\000\312\046\154\304\153\014
+\224\132\225\224\332\120\232\361\377\245\053\146\061\244\311\070
+\240\337\035\037\270\011\056\363\247\350\147\122\253\225\037\340
+\106\076\330\244\303\312\132\305\061\200\350\110\232\237\224\151
+\376\031\335\330\163\174\201\312\226\336\216\355\263\062\005\145
+\204\064\346\346\375\127\020\265\137\166\277\057\260\020\015\305
+\002\003\001\000\001\243\202\001\032\060\202\001\026\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\035
+\006\003\125\035\016\004\026\004\024\375\332\024\304\237\060\336
+\041\275\036\102\071\374\253\143\043\111\340\361\204\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\201\323
+\006\003\125\035\037\004\201\313\060\201\310\060\201\200\240\176
+\240\174\206\172\154\144\141\160\072\057\057\144\151\162\145\143
+\164\157\162\171\056\144\055\164\162\165\163\164\056\156\145\164
+\057\103\116\075\104\055\124\122\125\123\124\045\062\060\122\157
+\157\164\045\062\060\103\154\141\163\163\045\062\060\063\045\062
+\060\103\101\045\062\060\062\045\062\060\062\060\060\071\054\117
+\075\104\055\124\162\165\163\164\045\062\060\107\155\142\110\054
+\103\075\104\105\077\143\145\162\164\151\146\151\143\141\164\145
+\162\145\166\157\143\141\164\151\157\156\154\151\163\164\060\103
+\240\101\240\077\206\075\150\164\164\160\072\057\057\167\167\167
+\056\144\055\164\162\165\163\164\056\156\145\164\057\143\162\154
+\057\144\055\164\162\165\163\164\137\162\157\157\164\137\143\154
+\141\163\163\137\063\137\143\141\137\062\137\062\060\060\071\056
+\143\162\154\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\003\202\001\001\000\177\227\333\060\310\337\244\234\175
+\041\172\200\160\316\024\022\151\210\024\225\140\104\001\254\262
+\351\060\117\233\120\302\146\330\176\215\060\265\160\061\351\342
+\151\307\363\160\333\040\025\206\320\015\360\276\254\001\165\204
+\316\176\237\115\277\267\140\073\234\363\312\035\342\136\150\330
+\243\235\227\345\100\140\322\066\041\376\320\264\270\027\332\164
+\243\177\324\337\260\230\002\254\157\153\153\054\045\044\162\241
+\145\356\045\132\345\346\062\347\362\337\253\111\372\363\220\151
+\043\333\004\331\347\134\130\374\145\324\227\276\314\374\056\012
+\314\045\052\065\004\370\140\221\025\165\075\101\377\043\037\031
+\310\154\353\202\123\004\246\344\114\042\115\215\214\272\316\133
+\163\354\144\124\120\155\321\234\125\373\151\303\066\303\214\274
+\074\205\246\153\012\046\015\340\223\230\140\256\176\306\044\227
+\212\141\137\221\216\146\222\011\207\066\315\213\233\055\076\366
+\121\324\120\324\131\050\275\203\362\314\050\173\123\206\155\330
+\046\210\160\327\352\221\315\076\271\312\300\220\156\132\306\136
+\164\145\327\134\376\243\342
+END
+
+# Trust for "D-TRUST Root Class 3 CA 2 2009"
+# Issuer: CN=D-TRUST Root Class 3 CA 2 2009,O=D-Trust GmbH,C=DE
+# Serial Number: 623603 (0x983f3)
+# Subject: CN=D-TRUST Root Class 3 CA 2 2009,O=D-Trust GmbH,C=DE
+# Not Valid Before: Thu Nov 05 08:35:58 2009
+# Not Valid After : Mon Nov 05 08:35:58 2029
+# Fingerprint (MD5): CD:E0:25:69:8D:47:AC:9C:89:35:90:F7:FD:51:3D:2F
+# Fingerprint (SHA1): 58:E8:AB:B0:36:15:33:FB:80:F7:9B:1B:6D:29:D3:FF:8D:5F:00:F0
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "D-TRUST Root Class 3 CA 2 2009"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\130\350\253\260\066\025\063\373\200\367\233\033\155\051\323\377
+\215\137\000\360
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\315\340\045\151\215\107\254\234\211\065\220\367\375\121\075\057
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\115\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165\163
+\164\040\107\155\142\110\061\047\060\045\006\003\125\004\003\014
+\036\104\055\124\122\125\123\124\040\122\157\157\164\040\103\154
+\141\163\163\040\063\040\103\101\040\062\040\062\060\060\071
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\011\203\363
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "D-TRUST Root Class 3 CA 2 EV 2009"
+#
+# Issuer: CN=D-TRUST Root Class 3 CA 2 EV 2009,O=D-Trust GmbH,C=DE
+# Serial Number: 623604 (0x983f4)
+# Subject: CN=D-TRUST Root Class 3 CA 2 EV 2009,O=D-Trust GmbH,C=DE
+# Not Valid Before: Thu Nov 05 08:50:46 2009
+# Not Valid After : Mon Nov 05 08:50:46 2029
+# Fingerprint (MD5): AA:C6:43:2C:5E:2D:CD:C4:34:C0:50:4F:11:02:4F:B6
+# Fingerprint (SHA1): 96:C9:1B:0B:95:B4:10:98:42:FA:D0:D8:22:79:FE:60:FA:B9:16:83
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "D-TRUST Root Class 3 CA 2 EV 2009"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\120\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165\163
+\164\040\107\155\142\110\061\052\060\050\006\003\125\004\003\014
+\041\104\055\124\122\125\123\124\040\122\157\157\164\040\103\154
+\141\163\163\040\063\040\103\101\040\062\040\105\126\040\062\060
+\060\071
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165\163
+\164\040\107\155\142\110\061\052\060\050\006\003\125\004\003\014
+\041\104\055\124\122\125\123\124\040\122\157\157\164\040\103\154
+\141\163\163\040\063\040\103\101\040\062\040\105\126\040\062\060
+\060\071
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\011\203\364
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\103\060\202\003\053\240\003\002\001\002\002\003\011
+\203\364\060\015\006\011\052\206\110\206\367\015\001\001\013\005
+\000\060\120\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165
+\163\164\040\107\155\142\110\061\052\060\050\006\003\125\004\003
+\014\041\104\055\124\122\125\123\124\040\122\157\157\164\040\103
+\154\141\163\163\040\063\040\103\101\040\062\040\105\126\040\062
+\060\060\071\060\036\027\015\060\071\061\061\060\065\060\070\065
+\060\064\066\132\027\015\062\071\061\061\060\065\060\070\065\060
+\064\066\132\060\120\061\013\060\011\006\003\125\004\006\023\002
+\104\105\061\025\060\023\006\003\125\004\012\014\014\104\055\124
+\162\165\163\164\040\107\155\142\110\061\052\060\050\006\003\125
+\004\003\014\041\104\055\124\122\125\123\124\040\122\157\157\164
+\040\103\154\141\163\163\040\063\040\103\101\040\062\040\105\126
+\040\062\060\060\071\060\202\001\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
+\012\002\202\001\001\000\231\361\204\064\160\272\057\267\060\240
+\216\275\174\004\317\276\142\274\231\375\202\227\322\172\012\147
+\226\070\011\366\020\116\225\042\163\231\215\332\025\055\347\005
+\374\031\163\042\267\216\230\000\274\074\075\254\241\154\373\326
+\171\045\113\255\360\314\144\332\210\076\051\270\017\011\323\064
+\335\063\365\142\321\341\315\031\351\356\030\117\114\130\256\342
+\036\326\014\133\025\132\330\072\270\304\030\144\036\343\063\262
+\265\211\167\116\014\277\331\224\153\023\227\157\022\243\376\231
+\251\004\314\025\354\140\150\066\355\010\173\267\365\277\223\355
+\146\061\203\214\306\161\064\207\116\027\352\257\213\221\215\034
+\126\101\256\042\067\136\067\362\035\331\321\055\015\057\151\121
+\247\276\146\246\212\072\052\275\307\032\261\341\024\360\276\072
+\035\271\317\133\261\152\376\264\261\106\040\242\373\036\073\160
+\357\223\230\175\214\163\226\362\305\357\205\160\255\051\046\374
+\036\004\076\034\240\330\017\313\122\203\142\174\356\213\123\225
+\220\251\127\242\352\141\005\330\371\115\304\047\372\156\255\355
+\371\327\121\367\153\245\002\003\001\000\001\243\202\001\044\060
+\202\001\040\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\323
+\224\212\114\142\023\052\031\056\314\257\162\212\175\066\327\232
+\034\334\147\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\006\060\201\335\006\003\125\035\037\004\201\325\060\201
+\322\060\201\207\240\201\204\240\201\201\206\177\154\144\141\160
+\072\057\057\144\151\162\145\143\164\157\162\171\056\144\055\164
+\162\165\163\164\056\156\145\164\057\103\116\075\104\055\124\122
+\125\123\124\045\062\060\122\157\157\164\045\062\060\103\154\141
+\163\163\045\062\060\063\045\062\060\103\101\045\062\060\062\045
+\062\060\105\126\045\062\060\062\060\060\071\054\117\075\104\055
+\124\162\165\163\164\045\062\060\107\155\142\110\054\103\075\104
+\105\077\143\145\162\164\151\146\151\143\141\164\145\162\145\166
+\157\143\141\164\151\157\156\154\151\163\164\060\106\240\104\240
+\102\206\100\150\164\164\160\072\057\057\167\167\167\056\144\055
+\164\162\165\163\164\056\156\145\164\057\143\162\154\057\144\055
+\164\162\165\163\164\137\162\157\157\164\137\143\154\141\163\163
+\137\063\137\143\141\137\062\137\145\166\137\062\060\060\071\056
+\143\162\154\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\003\202\001\001\000\064\355\173\132\074\244\224\210\357
+\032\021\165\007\057\263\376\074\372\036\121\046\353\207\366\051
+\336\340\361\324\306\044\011\351\301\317\125\033\264\060\331\316
+\032\376\006\121\246\025\244\055\357\262\113\277\040\050\045\111
+\321\246\066\167\064\350\144\337\122\261\021\307\163\172\315\071
+\236\302\255\214\161\041\362\132\153\257\337\074\116\125\257\262
+\204\145\024\211\271\167\313\052\061\276\317\243\155\317\157\110
+\224\062\106\157\347\161\214\240\246\204\031\067\007\362\003\105
+\011\053\206\165\174\337\137\151\127\000\333\156\330\246\162\042
+\113\120\324\165\230\126\337\267\030\377\103\103\120\256\172\104
+\173\360\171\121\327\103\075\247\323\201\323\360\311\117\271\332
+\306\227\206\320\202\303\344\102\155\376\260\342\144\116\016\046
+\347\100\064\046\265\010\211\327\010\143\143\070\047\165\036\063
+\352\156\250\335\237\231\117\164\115\201\211\200\113\335\232\227
+\051\134\057\276\201\101\271\214\377\352\175\140\006\236\315\327
+\075\323\056\243\025\274\250\346\046\345\157\303\334\270\003\041
+\352\237\026\361\054\124\265
+END
+
+# Trust for "D-TRUST Root Class 3 CA 2 EV 2009"
+# Issuer: CN=D-TRUST Root Class 3 CA 2 EV 2009,O=D-Trust GmbH,C=DE
+# Serial Number: 623604 (0x983f4)
+# Subject: CN=D-TRUST Root Class 3 CA 2 EV 2009,O=D-Trust GmbH,C=DE
+# Not Valid Before: Thu Nov 05 08:50:46 2009
+# Not Valid After : Mon Nov 05 08:50:46 2029
+# Fingerprint (MD5): AA:C6:43:2C:5E:2D:CD:C4:34:C0:50:4F:11:02:4F:B6
+# Fingerprint (SHA1): 96:C9:1B:0B:95:B4:10:98:42:FA:D0:D8:22:79:FE:60:FA:B9:16:83
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "D-TRUST Root Class 3 CA 2 EV 2009"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\226\311\033\013\225\264\020\230\102\372\320\330\042\171\376\140
+\372\271\026\203
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\252\306\103\054\136\055\315\304\064\300\120\117\021\002\117\266
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\025\060\023\006\003\125\004\012\014\014\104\055\124\162\165\163
+\164\040\107\155\142\110\061\052\060\050\006\003\125\004\003\014
+\041\104\055\124\122\125\123\124\040\122\157\157\164\040\103\154
+\141\163\163\040\063\040\103\101\040\062\040\105\126\040\062\060
+\060\071
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\003\011\203\364
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "PSCProcert"
+#
+# Issuer: E=acraiz@suscerte.gob.ve,OU=Superintendencia de Servicios de Certificacion Electronica,O=Sistema Nacional de Certificacion Electronica,ST=Distrito Capital,L=Caracas,C=VE,CN=Autoridad de Certificacion Raiz del Estado Venezolano
+# Serial Number: 11 (0xb)
+# Subject: CN=PSCProcert,C=VE,O=Sistema Nacional de Certificacion Electronica,OU=Proveedor de Certificados PROCERT,ST=Miranda,L=Chacao,E=contacto@procert.net.ve
+# Not Valid Before: Tue Dec 28 16:51:00 2010
+# Not Valid After : Fri Dec 25 23:59:59 2020
+# Fingerprint (MD5): E6:24:E9:12:01:AE:0C:DE:8E:85:C4:CE:A3:12:DD:EC
+# Fingerprint (SHA1): 70:C1:8D:74:B4:28:81:0A:E4:FD:A5:75:D7:01:9F:99:B0:3D:50:74
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "PSCProcert"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\321\061\046\060\044\006\011\052\206\110\206\367\015\001
+\011\001\026\027\143\157\156\164\141\143\164\157\100\160\162\157
+\143\145\162\164\056\156\145\164\056\166\145\061\017\060\015\006
+\003\125\004\007\023\006\103\150\141\143\141\157\061\020\060\016
+\006\003\125\004\010\023\007\115\151\162\141\156\144\141\061\052
+\060\050\006\003\125\004\013\023\041\120\162\157\166\145\145\144
+\157\162\040\144\145\040\103\145\162\164\151\146\151\143\141\144
+\157\163\040\120\122\117\103\105\122\124\061\066\060\064\006\003
+\125\004\012\023\055\123\151\163\164\145\155\141\040\116\141\143
+\151\157\156\141\154\040\144\145\040\103\145\162\164\151\146\151
+\143\141\143\151\157\156\040\105\154\145\143\164\162\157\156\151
+\143\141\061\013\060\011\006\003\125\004\006\023\002\126\105\061
+\023\060\021\006\003\125\004\003\023\012\120\123\103\120\162\157
+\143\145\162\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\202\001\036\061\076\060\074\006\003\125\004\003\023\065\101
+\165\164\157\162\151\144\141\144\040\144\145\040\103\145\162\164
+\151\146\151\143\141\143\151\157\156\040\122\141\151\172\040\144
+\145\154\040\105\163\164\141\144\157\040\126\145\156\145\172\157
+\154\141\156\157\061\013\060\011\006\003\125\004\006\023\002\126
+\105\061\020\060\016\006\003\125\004\007\023\007\103\141\162\141
+\143\141\163\061\031\060\027\006\003\125\004\010\023\020\104\151
+\163\164\162\151\164\157\040\103\141\160\151\164\141\154\061\066
+\060\064\006\003\125\004\012\023\055\123\151\163\164\145\155\141
+\040\116\141\143\151\157\156\141\154\040\144\145\040\103\145\162
+\164\151\146\151\143\141\143\151\157\156\040\105\154\145\143\164
+\162\157\156\151\143\141\061\103\060\101\006\003\125\004\013\023
+\072\123\165\160\145\162\151\156\164\145\156\144\145\156\143\151
+\141\040\144\145\040\123\145\162\166\151\143\151\157\163\040\144
+\145\040\103\145\162\164\151\146\151\143\141\143\151\157\156\040
+\105\154\145\143\164\162\157\156\151\143\141\061\045\060\043\006
+\011\052\206\110\206\367\015\001\011\001\026\026\141\143\162\141
+\151\172\100\163\165\163\143\145\162\164\145\056\147\157\142\056
+\166\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\013
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\011\206\060\202\007\156\240\003\002\001\002\002\001\013
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\202\001\036\061\076\060\074\006\003\125\004\003\023\065\101\165
+\164\157\162\151\144\141\144\040\144\145\040\103\145\162\164\151
+\146\151\143\141\143\151\157\156\040\122\141\151\172\040\144\145
+\154\040\105\163\164\141\144\157\040\126\145\156\145\172\157\154
+\141\156\157\061\013\060\011\006\003\125\004\006\023\002\126\105
+\061\020\060\016\006\003\125\004\007\023\007\103\141\162\141\143
+\141\163\061\031\060\027\006\003\125\004\010\023\020\104\151\163
+\164\162\151\164\157\040\103\141\160\151\164\141\154\061\066\060
+\064\006\003\125\004\012\023\055\123\151\163\164\145\155\141\040
+\116\141\143\151\157\156\141\154\040\144\145\040\103\145\162\164
+\151\146\151\143\141\143\151\157\156\040\105\154\145\143\164\162
+\157\156\151\143\141\061\103\060\101\006\003\125\004\013\023\072
+\123\165\160\145\162\151\156\164\145\156\144\145\156\143\151\141
+\040\144\145\040\123\145\162\166\151\143\151\157\163\040\144\145
+\040\103\145\162\164\151\146\151\143\141\143\151\157\156\040\105
+\154\145\143\164\162\157\156\151\143\141\061\045\060\043\006\011
+\052\206\110\206\367\015\001\011\001\026\026\141\143\162\141\151
+\172\100\163\165\163\143\145\162\164\145\056\147\157\142\056\166
+\145\060\036\027\015\061\060\061\062\062\070\061\066\065\061\060
+\060\132\027\015\062\060\061\062\062\065\062\063\065\071\065\071
+\132\060\201\321\061\046\060\044\006\011\052\206\110\206\367\015
+\001\011\001\026\027\143\157\156\164\141\143\164\157\100\160\162
+\157\143\145\162\164\056\156\145\164\056\166\145\061\017\060\015
+\006\003\125\004\007\023\006\103\150\141\143\141\157\061\020\060
+\016\006\003\125\004\010\023\007\115\151\162\141\156\144\141\061
+\052\060\050\006\003\125\004\013\023\041\120\162\157\166\145\145
+\144\157\162\040\144\145\040\103\145\162\164\151\146\151\143\141
+\144\157\163\040\120\122\117\103\105\122\124\061\066\060\064\006
+\003\125\004\012\023\055\123\151\163\164\145\155\141\040\116\141
+\143\151\157\156\141\154\040\144\145\040\103\145\162\164\151\146
+\151\143\141\143\151\157\156\040\105\154\145\143\164\162\157\156
+\151\143\141\061\013\060\011\006\003\125\004\006\023\002\126\105
+\061\023\060\021\006\003\125\004\003\023\012\120\123\103\120\162
+\157\143\145\162\164\060\202\002\042\060\015\006\011\052\206\110
+\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002
+\012\002\202\002\001\000\325\267\364\243\224\063\241\106\251\125
+\141\111\015\250\207\163\136\221\055\160\301\006\032\224\332\075
+\354\025\102\301\365\214\256\152\027\361\212\255\374\200\225\352
+\203\104\242\133\172\125\316\117\247\245\325\272\270\037\240\047
+\300\120\123\076\215\271\300\016\270\025\334\326\154\370\236\370
+\004\045\337\200\217\020\205\335\175\057\173\200\335\127\000\144
+\043\370\156\311\276\225\117\341\165\354\340\176\136\225\315\261
+\357\276\172\102\330\311\054\323\353\032\032\042\213\267\177\006
+\211\345\074\365\022\300\273\323\013\231\137\220\174\216\055\057
+\167\063\222\112\041\106\250\251\010\254\361\366\021\002\331\225
+\026\236\215\057\226\346\002\335\165\302\024\052\132\326\311\175
+\045\302\301\374\252\147\205\342\354\276\321\174\074\372\257\325
+\156\377\123\101\324\365\062\070\261\342\137\304\371\216\020\357
+\006\251\002\211\377\343\014\156\227\340\337\235\333\041\320\364
+\076\010\151\154\330\324\344\066\370\203\266\262\066\217\234\357
+\072\067\026\175\277\242\151\327\073\133\162\320\257\252\077\134
+\146\223\254\012\042\141\266\322\240\231\310\124\223\135\250\266
+\321\275\135\012\136\167\224\242\055\300\202\216\274\312\003\052
+\064\256\163\361\324\265\014\275\276\147\233\124\353\341\372\240
+\132\354\070\176\076\301\314\242\307\104\061\165\352\077\345\007
+\322\253\241\045\226\366\346\344\240\135\067\030\071\141\000\063
+\135\106\324\000\304\264\312\074\361\242\243\076\363\072\377\151
+\060\056\100\335\366\237\234\046\311\226\067\255\347\071\242\277
+\352\151\333\125\042\225\123\052\224\265\337\255\026\070\201\165
+\146\343\307\054\033\223\234\252\214\243\312\331\154\074\027\155
+\234\334\174\123\340\040\047\103\066\371\022\341\074\134\275\146
+\277\242\151\043\070\270\231\140\231\016\126\123\072\234\176\024
+\214\260\006\157\361\206\166\220\257\375\257\376\220\306\217\237
+\177\213\222\043\234\347\025\166\217\325\213\224\023\162\151\373
+\053\141\143\210\357\346\244\136\346\243\027\152\130\107\313\161
+\117\024\013\136\310\002\010\046\242\313\351\257\153\212\031\307
+\313\024\126\365\341\332\265\331\374\277\163\070\332\371\347\257
+\156\244\067\342\007\047\002\003\001\000\001\243\202\003\027\060
+\202\003\023\060\022\006\003\125\035\023\001\001\377\004\010\060
+\006\001\001\377\002\001\001\060\067\006\003\125\035\022\004\060
+\060\056\202\017\163\165\163\143\145\162\164\145\056\147\157\142
+\056\166\145\240\033\006\005\140\206\136\002\002\240\022\014\020
+\122\111\106\055\107\055\062\060\060\060\064\060\063\066\055\060
+\060\035\006\003\125\035\016\004\026\004\024\101\017\031\070\252
+\231\177\102\013\244\327\047\230\124\242\027\114\055\121\124\060
+\202\001\120\006\003\125\035\043\004\202\001\107\060\202\001\103
+\200\024\255\273\042\035\306\340\322\001\250\375\166\120\122\223
+\355\230\301\115\256\323\241\202\001\046\244\202\001\042\060\202
+\001\036\061\076\060\074\006\003\125\004\003\023\065\101\165\164
+\157\162\151\144\141\144\040\144\145\040\103\145\162\164\151\146
+\151\143\141\143\151\157\156\040\122\141\151\172\040\144\145\154
+\040\105\163\164\141\144\157\040\126\145\156\145\172\157\154\141
+\156\157\061\013\060\011\006\003\125\004\006\023\002\126\105\061
+\020\060\016\006\003\125\004\007\023\007\103\141\162\141\143\141
+\163\061\031\060\027\006\003\125\004\010\023\020\104\151\163\164
+\162\151\164\157\040\103\141\160\151\164\141\154\061\066\060\064
+\006\003\125\004\012\023\055\123\151\163\164\145\155\141\040\116
+\141\143\151\157\156\141\154\040\144\145\040\103\145\162\164\151
+\146\151\143\141\143\151\157\156\040\105\154\145\143\164\162\157
+\156\151\143\141\061\103\060\101\006\003\125\004\013\023\072\123
+\165\160\145\162\151\156\164\145\156\144\145\156\143\151\141\040
+\144\145\040\123\145\162\166\151\143\151\157\163\040\144\145\040
+\103\145\162\164\151\146\151\143\141\143\151\157\156\040\105\154
+\145\143\164\162\157\156\151\143\141\061\045\060\043\006\011\052
+\206\110\206\367\015\001\011\001\026\026\141\143\162\141\151\172
+\100\163\165\163\143\145\162\164\145\056\147\157\142\056\166\145
+\202\001\012\060\016\006\003\125\035\017\001\001\377\004\004\003
+\002\001\006\060\115\006\003\125\035\021\004\106\060\104\202\016
+\160\162\157\143\145\162\164\056\156\145\164\056\166\145\240\025
+\006\005\140\206\136\002\001\240\014\014\012\120\123\103\055\060
+\060\060\060\060\062\240\033\006\005\140\206\136\002\002\240\022
+\014\020\122\111\106\055\112\055\063\061\066\063\065\063\067\063
+\055\067\060\166\006\003\125\035\037\004\157\060\155\060\106\240
+\104\240\102\206\100\150\164\164\160\072\057\057\167\167\167\056
+\163\165\163\143\145\162\164\145\056\147\157\142\056\166\145\057
+\154\143\162\057\103\105\122\124\111\106\111\103\101\104\117\055
+\122\101\111\132\055\123\110\101\063\070\064\103\122\114\104\105
+\122\056\143\162\154\060\043\240\041\240\037\206\035\154\144\141
+\160\072\057\057\141\143\162\141\151\172\056\163\165\163\143\145
+\162\164\145\056\147\157\142\056\166\145\060\067\006\010\053\006
+\001\005\005\007\001\001\004\053\060\051\060\047\006\010\053\006
+\001\005\005\007\060\001\206\033\150\164\164\160\072\057\057\157
+\143\163\160\056\163\165\163\143\145\162\164\145\056\147\157\142
+\056\166\145\060\101\006\003\125\035\040\004\072\060\070\060\066
+\006\006\140\206\136\003\001\002\060\054\060\052\006\010\053\006
+\001\005\005\007\002\001\026\036\150\164\164\160\072\057\057\167
+\167\167\056\163\165\163\143\145\162\164\145\056\147\157\142\056
+\166\145\057\144\160\143\060\015\006\011\052\206\110\206\367\015
+\001\001\013\005\000\003\202\002\001\000\053\131\353\042\231\273
+\204\252\117\336\220\306\321\206\161\043\236\113\003\221\107\160
+\273\300\222\140\354\340\324\347\155\306\323\355\147\203\167\122
+\325\362\345\167\247\066\262\343\124\276\331\273\012\233\021\357
+\141\364\306\231\063\231\365\257\000\071\215\203\277\246\275\065
+\176\054\134\061\064\157\154\333\363\144\001\230\252\224\054\101
+\335\025\206\312\153\051\116\026\300\111\374\327\203\110\023\007
+\121\204\061\122\210\273\206\027\307\153\057\212\040\255\305\013
+\217\160\076\052\273\033\161\217\271\244\240\375\330\225\331\257
+\131\277\045\053\230\351\143\223\057\140\036\304\252\370\167\365
+\213\154\057\355\176\056\265\117\100\015\356\274\127\167\347\331
+\266\324\077\225\047\072\040\325\345\256\253\154\065\237\301\241
+\035\131\334\204\201\356\115\007\342\110\266\236\113\225\055\101
+\261\341\350\336\176\057\005\036\150\356\277\273\220\145\072\310
+\356\352\261\030\067\034\142\223\244\240\061\354\161\154\221\346
+\244\171\211\132\024\247\024\120\005\114\244\000\127\060\054\301
+\265\141\226\334\076\036\204\257\071\102\317\345\320\054\261\044
+\274\337\100\303\355\177\143\112\275\341\117\022\144\206\225\363
+\260\347\310\267\341\123\275\222\346\363\014\226\271\353\350\346
+\222\355\247\201\011\024\013\374\225\172\317\217\326\064\117\066
+\022\334\136\321\064\165\306\106\200\057\225\004\214\307\206\304
+\250\046\211\250\077\031\233\201\273\121\244\112\206\253\013\021
+\017\261\256\143\123\155\050\352\335\063\126\070\034\262\255\200
+\323\327\162\275\232\154\231\143\350\000\273\101\166\005\267\133
+\231\030\212\303\270\022\134\126\317\126\014\175\350\342\317\355
+\274\164\107\373\356\323\027\116\042\117\126\377\120\363\056\346
+\071\246\202\326\161\312\336\267\325\272\150\010\355\231\314\375
+\242\222\313\151\270\235\371\012\244\246\076\117\223\050\052\141
+\154\007\046\000\377\226\137\150\206\270\270\316\312\125\340\253
+\261\075\177\230\327\063\016\132\075\330\170\302\304\140\057\307
+\142\360\141\221\322\070\260\366\236\125\333\100\200\005\022\063
+\316\035\222\233\321\151\263\377\277\361\222\012\141\065\077\335
+\376\206\364\274\340\032\161\263\142\246
+END
+
+# Trust for "PSCProcert"
+# Issuer: E=acraiz@suscerte.gob.ve,OU=Superintendencia de Servicios de Certificacion Electronica,O=Sistema Nacional de Certificacion Electronica,ST=Distrito Capital,L=Caracas,C=VE,CN=Autoridad de Certificacion Raiz del Estado Venezolano
+# Serial Number: 11 (0xb)
+# Subject: CN=PSCProcert,C=VE,O=Sistema Nacional de Certificacion Electronica,OU=Proveedor de Certificados PROCERT,ST=Miranda,L=Chacao,E=contacto@procert.net.ve
+# Not Valid Before: Tue Dec 28 16:51:00 2010
+# Not Valid After : Fri Dec 25 23:59:59 2020
+# Fingerprint (MD5): E6:24:E9:12:01:AE:0C:DE:8E:85:C4:CE:A3:12:DD:EC
+# Fingerprint (SHA1): 70:C1:8D:74:B4:28:81:0A:E4:FD:A5:75:D7:01:9F:99:B0:3D:50:74
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "PSCProcert"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\160\301\215\164\264\050\201\012\344\375\245\165\327\001\237\231
+\260\075\120\164
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\346\044\351\022\001\256\014\336\216\205\304\316\243\022\335\354
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\202\001\036\061\076\060\074\006\003\125\004\003\023\065\101
+\165\164\157\162\151\144\141\144\040\144\145\040\103\145\162\164
+\151\146\151\143\141\143\151\157\156\040\122\141\151\172\040\144
+\145\154\040\105\163\164\141\144\157\040\126\145\156\145\172\157
+\154\141\156\157\061\013\060\011\006\003\125\004\006\023\002\126
+\105\061\020\060\016\006\003\125\004\007\023\007\103\141\162\141
+\143\141\163\061\031\060\027\006\003\125\004\010\023\020\104\151
+\163\164\162\151\164\157\040\103\141\160\151\164\141\154\061\066
+\060\064\006\003\125\004\012\023\055\123\151\163\164\145\155\141
+\040\116\141\143\151\157\156\141\154\040\144\145\040\103\145\162
+\164\151\146\151\143\141\143\151\157\156\040\105\154\145\143\164
+\162\157\156\151\143\141\061\103\060\101\006\003\125\004\013\023
+\072\123\165\160\145\162\151\156\164\145\156\144\145\156\143\151
+\141\040\144\145\040\123\145\162\166\151\143\151\157\163\040\144
+\145\040\103\145\162\164\151\146\151\143\141\143\151\157\156\040
+\105\154\145\143\164\162\157\156\151\143\141\061\045\060\043\006
+\011\052\206\110\206\367\015\001\011\001\026\026\141\143\162\141
+\151\172\100\163\165\163\143\145\162\164\145\056\147\157\142\056
+\166\145
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\013
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "China Internet Network Information Center EV Certificates Root"
+#
+# Issuer: CN=China Internet Network Information Center EV Certificates Root,O=China Internet Network Information Center,C=CN
+# Serial Number: 1218379777 (0x489f0001)
+# Subject: CN=China Internet Network Information Center EV Certificates Root,O=China Internet Network Information Center,C=CN
+# Not Valid Before: Tue Aug 31 07:11:25 2010
+# Not Valid After : Sat Aug 31 07:11:25 2030
+# Fingerprint (MD5): 55:5D:63:00:97:BD:6A:97:F5:67:AB:4B:FB:6E:63:15
+# Fingerprint (SHA1): 4F:99:AA:93:FB:2B:D1:37:26:A1:99:4A:CE:7F:F0:05:F2:93:5D:1E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "China Internet Network Information Center EV Certificates Root"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\212\061\013\060\011\006\003\125\004\006\023\002\103\116
+\061\062\060\060\006\003\125\004\012\014\051\103\150\151\156\141
+\040\111\156\164\145\162\156\145\164\040\116\145\164\167\157\162
+\153\040\111\156\146\157\162\155\141\164\151\157\156\040\103\145
+\156\164\145\162\061\107\060\105\006\003\125\004\003\014\076\103
+\150\151\156\141\040\111\156\164\145\162\156\145\164\040\116\145
+\164\167\157\162\153\040\111\156\146\157\162\155\141\164\151\157
+\156\040\103\145\156\164\145\162\040\105\126\040\103\145\162\164
+\151\146\151\143\141\164\145\163\040\122\157\157\164
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\212\061\013\060\011\006\003\125\004\006\023\002\103\116
+\061\062\060\060\006\003\125\004\012\014\051\103\150\151\156\141
+\040\111\156\164\145\162\156\145\164\040\116\145\164\167\157\162
+\153\040\111\156\146\157\162\155\141\164\151\157\156\040\103\145
+\156\164\145\162\061\107\060\105\006\003\125\004\003\014\076\103
+\150\151\156\141\040\111\156\164\145\162\156\145\164\040\116\145
+\164\167\157\162\153\040\111\156\146\157\162\155\141\164\151\157
+\156\040\103\145\156\164\145\162\040\105\126\040\103\145\162\164
+\151\146\151\143\141\164\145\163\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\110\237\000\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\367\060\202\002\337\240\003\002\001\002\002\004\110
+\237\000\001\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\060\201\212\061\013\060\011\006\003\125\004\006\023\002
+\103\116\061\062\060\060\006\003\125\004\012\014\051\103\150\151
+\156\141\040\111\156\164\145\162\156\145\164\040\116\145\164\167
+\157\162\153\040\111\156\146\157\162\155\141\164\151\157\156\040
+\103\145\156\164\145\162\061\107\060\105\006\003\125\004\003\014
+\076\103\150\151\156\141\040\111\156\164\145\162\156\145\164\040
+\116\145\164\167\157\162\153\040\111\156\146\157\162\155\141\164
+\151\157\156\040\103\145\156\164\145\162\040\105\126\040\103\145
+\162\164\151\146\151\143\141\164\145\163\040\122\157\157\164\060
+\036\027\015\061\060\060\070\063\061\060\067\061\061\062\065\132
+\027\015\063\060\060\070\063\061\060\067\061\061\062\065\132\060
+\201\212\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\062\060\060\006\003\125\004\012\014\051\103\150\151\156\141\040
+\111\156\164\145\162\156\145\164\040\116\145\164\167\157\162\153
+\040\111\156\146\157\162\155\141\164\151\157\156\040\103\145\156
+\164\145\162\061\107\060\105\006\003\125\004\003\014\076\103\150
+\151\156\141\040\111\156\164\145\162\156\145\164\040\116\145\164
+\167\157\162\153\040\111\156\146\157\162\155\141\164\151\157\156
+\040\103\145\156\164\145\162\040\105\126\040\103\145\162\164\151
+\146\151\143\141\164\145\163\040\122\157\157\164\060\202\001\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\001\017\000\060\202\001\012\002\202\001\001\000\233\176\163
+\356\275\073\170\252\144\103\101\365\120\337\224\362\056\262\215
+\112\216\106\124\322\041\022\310\071\062\102\006\351\203\325\237
+\122\355\345\147\003\073\124\301\214\231\231\314\351\300\017\377
+\015\331\204\021\262\270\321\313\133\334\036\371\150\061\144\341
+\233\372\164\353\150\271\040\225\367\306\017\215\107\254\132\006
+\335\141\253\342\354\330\237\027\055\234\312\074\065\227\125\161
+\315\103\205\261\107\026\365\054\123\200\166\317\323\000\144\275
+\100\231\335\314\330\333\304\237\326\023\137\101\203\213\371\015
+\207\222\126\064\154\032\020\013\027\325\132\034\227\130\204\074
+\204\032\056\134\221\064\156\031\137\177\027\151\305\145\357\153
+\041\306\325\120\072\277\141\271\005\215\357\157\064\072\262\157
+\024\143\277\026\073\233\251\052\375\267\053\070\146\006\305\054
+\342\252\147\036\105\247\215\004\146\102\366\217\053\357\210\040
+\151\217\062\214\024\163\332\053\206\221\143\042\232\362\247\333
+\316\211\213\253\135\307\024\301\133\060\152\037\261\267\236\056
+\201\001\002\355\317\226\136\143\333\250\346\070\267\002\003\001
+\000\001\243\143\060\141\060\037\006\003\125\035\043\004\030\060
+\026\200\024\174\162\113\071\307\300\333\142\245\117\233\252\030
+\064\222\242\312\203\202\131\060\017\006\003\125\035\023\001\001
+\377\004\005\060\003\001\001\377\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\001\006\060\035\006\003\125\035\016\004
+\026\004\024\174\162\113\071\307\300\333\142\245\117\233\252\030
+\064\222\242\312\203\202\131\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\003\202\001\001\000\052\303\307\103\067
+\217\335\255\244\262\014\356\334\024\155\217\050\244\230\111\313
+\014\200\352\363\355\043\146\165\175\305\323\041\147\171\321\163
+\305\265\003\267\130\254\014\124\057\306\126\023\017\061\332\006
+\347\145\073\035\157\066\333\310\035\371\375\200\006\312\243\075
+\146\026\250\235\114\026\175\300\225\106\265\121\344\342\037\327
+\352\006\115\143\215\226\214\357\347\063\127\102\072\353\214\301
+\171\310\115\166\175\336\366\261\267\201\340\240\371\241\170\106
+\027\032\126\230\360\116\075\253\034\355\354\071\334\007\110\367
+\143\376\006\256\302\244\134\152\133\062\210\305\307\063\205\254
+\146\102\107\302\130\044\231\341\345\076\345\165\054\216\103\326
+\135\074\170\036\250\225\202\051\120\321\321\026\272\357\301\276
+\172\331\264\330\314\036\114\106\341\167\261\061\253\275\052\310
+\316\217\156\241\135\177\003\165\064\344\255\211\105\124\136\276
+\256\050\245\273\077\170\171\353\163\263\012\015\375\276\311\367
+\126\254\366\267\355\057\233\041\051\307\070\266\225\304\004\362
+\303\055\375\024\052\220\231\271\007\314\237
+END
+
+# Trust for "China Internet Network Information Center EV Certificates Root"
+# Issuer: CN=China Internet Network Information Center EV Certificates Root,O=China Internet Network Information Center,C=CN
+# Serial Number: 1218379777 (0x489f0001)
+# Subject: CN=China Internet Network Information Center EV Certificates Root,O=China Internet Network Information Center,C=CN
+# Not Valid Before: Tue Aug 31 07:11:25 2010
+# Not Valid After : Sat Aug 31 07:11:25 2030
+# Fingerprint (MD5): 55:5D:63:00:97:BD:6A:97:F5:67:AB:4B:FB:6E:63:15
+# Fingerprint (SHA1): 4F:99:AA:93:FB:2B:D1:37:26:A1:99:4A:CE:7F:F0:05:F2:93:5D:1E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "China Internet Network Information Center EV Certificates Root"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\117\231\252\223\373\053\321\067\046\241\231\112\316\177\360\005
+\362\223\135\036
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\125\135\143\000\227\275\152\227\365\147\253\113\373\156\143\025
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\212\061\013\060\011\006\003\125\004\006\023\002\103\116
+\061\062\060\060\006\003\125\004\012\014\051\103\150\151\156\141
+\040\111\156\164\145\162\156\145\164\040\116\145\164\167\157\162
+\153\040\111\156\146\157\162\155\141\164\151\157\156\040\103\145
+\156\164\145\162\061\107\060\105\006\003\125\004\003\014\076\103
+\150\151\156\141\040\111\156\164\145\162\156\145\164\040\116\145
+\164\167\157\162\153\040\111\156\146\157\162\155\141\164\151\157
+\156\040\103\145\156\164\145\162\040\105\126\040\103\145\162\164
+\151\146\151\143\141\164\145\163\040\122\157\157\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\110\237\000\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Swisscom Root CA 2"
+#
+# Issuer: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Serial Number:1e:9e:28:e8:48:f2:e5:ef:c3:7c:4a:1e:5a:18:67:b6
+# Subject: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Not Valid Before: Fri Jun 24 08:38:14 2011
+# Not Valid After : Wed Jun 25 07:38:14 2031
+# Fingerprint (MD5): 5B:04:69:EC:A5:83:94:63:18:A7:86:D0:E4:F2:6E:19
+# Fingerprint (SHA1): 77:47:4F:C6:30:E4:0F:4C:47:64:3F:84:BA:B8:C6:95:4A:8A:41:EC
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Swisscom Root CA 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
+\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\103\101\040\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
+\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\036\236\050\350\110\362\345\357\303\174\112\036\132\030
+\147\266
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\331\060\202\003\301\240\003\002\001\002\002\020\036
+\236\050\350\110\362\345\357\303\174\112\036\132\030\147\266\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\144
+\061\013\060\011\006\003\125\004\006\023\002\143\150\061\021\060
+\017\006\003\125\004\012\023\010\123\167\151\163\163\143\157\155
+\061\045\060\043\006\003\125\004\013\023\034\104\151\147\151\164
+\141\154\040\103\145\162\164\151\146\151\143\141\164\145\040\123
+\145\162\166\151\143\145\163\061\033\060\031\006\003\125\004\003
+\023\022\123\167\151\163\163\143\157\155\040\122\157\157\164\040
+\103\101\040\062\060\036\027\015\061\061\060\066\062\064\060\070
+\063\070\061\064\132\027\015\063\061\060\066\062\065\060\067\063
+\070\061\064\132\060\144\061\013\060\011\006\003\125\004\006\023
+\002\143\150\061\021\060\017\006\003\125\004\012\023\010\123\167
+\151\163\163\143\157\155\061\045\060\043\006\003\125\004\013\023
+\034\104\151\147\151\164\141\154\040\103\145\162\164\151\146\151
+\143\141\164\145\040\123\145\162\166\151\143\145\163\061\033\060
+\031\006\003\125\004\003\023\022\123\167\151\163\163\143\157\155
+\040\122\157\157\164\040\103\101\040\062\060\202\002\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002
+\017\000\060\202\002\012\002\202\002\001\000\225\102\116\204\235
+\121\346\323\011\350\162\132\043\151\333\170\160\216\026\361\053
+\217\015\003\316\223\314\056\000\010\173\253\063\214\364\351\100
+\346\027\114\253\236\270\107\024\062\167\062\335\050\014\336\030
+\113\137\166\237\370\071\073\374\116\211\330\174\305\147\357\253
+\322\271\064\137\153\072\363\144\066\316\302\260\317\023\150\312
+\310\313\353\265\342\075\056\041\337\352\054\324\340\371\160\226
+\114\377\152\130\230\267\027\344\033\122\345\176\007\000\035\137
+\332\346\076\225\004\267\151\210\071\241\101\140\045\141\113\225
+\071\150\142\034\261\013\005\211\300\066\202\024\041\077\256\333
+\241\375\274\157\034\140\206\266\123\224\111\271\053\106\305\117
+\000\053\277\241\273\313\077\340\307\127\034\127\350\326\151\370
+\301\044\122\235\210\125\335\302\207\056\164\043\320\024\375\052
+\107\132\273\246\235\375\224\344\321\212\245\137\206\143\166\205
+\313\257\377\111\050\374\200\355\114\171\322\273\344\300\357\001
+\356\120\101\010\065\043\160\053\251\026\264\214\156\205\351\266
+\021\317\061\335\123\046\033\337\055\132\112\002\100\374\304\300
+\266\351\061\032\010\050\345\140\303\037\304\220\216\020\142\140
+\104\015\354\012\276\125\030\161\054\245\364\262\274\025\142\377
+\034\343\276\035\332\036\127\263\074\176\315\202\035\221\343\113
+\353\054\122\064\260\212\375\022\116\226\260\353\160\177\236\071
+\367\146\102\261\253\254\122\332\166\100\127\173\052\275\350\156
+\003\262\013\200\205\210\235\014\307\302\167\260\232\232\127\364
+\270\372\023\134\150\223\072\147\244\227\320\033\231\267\206\062
+\113\140\330\316\357\320\014\177\225\237\157\207\117\207\212\216
+\137\010\174\252\133\374\132\276\241\221\237\125\175\116\260\013
+\151\314\260\224\250\247\207\362\323\112\120\334\137\162\260\026
+\165\036\313\264\030\142\232\260\247\071\252\233\237\146\330\215
+\246\154\226\025\343\346\362\370\361\203\142\154\273\125\351\141
+\223\243\075\365\261\127\213\117\043\260\233\345\224\152\057\337
+\214\337\225\121\051\140\241\013\051\344\134\125\130\267\250\374
+\231\356\045\115\114\016\263\323\114\217\204\350\051\017\375\020
+\124\002\205\310\371\345\303\213\317\347\017\002\003\001\000\001
+\243\201\206\060\201\203\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\206\060\035\006\003\125\035\041\004\026\060
+\024\060\022\006\007\140\205\164\001\123\002\001\006\007\140\205
+\164\001\123\002\001\060\022\006\003\125\035\023\001\001\377\004
+\010\060\006\001\001\377\002\001\007\060\035\006\003\125\035\016
+\004\026\004\024\115\046\040\042\211\113\323\325\244\012\241\157
+\336\342\022\201\305\361\074\056\060\037\006\003\125\035\043\004
+\030\060\026\200\024\115\046\040\042\211\113\323\325\244\012\241
+\157\336\342\022\201\305\361\074\056\060\015\006\011\052\206\110
+\206\367\015\001\001\013\005\000\003\202\002\001\000\062\012\262
+\244\033\313\175\276\202\127\211\271\152\177\363\364\301\056\021
+\175\270\031\076\171\267\250\250\162\067\146\233\032\355\254\023
+\073\016\277\142\360\234\337\236\173\241\123\110\016\101\172\312
+\040\247\027\033\266\170\354\100\221\363\102\255\020\303\134\357
+\377\140\131\177\315\205\243\213\075\110\034\045\002\074\147\175
+\365\062\351\057\060\345\175\245\172\070\320\363\146\052\146\036
+\215\063\203\212\157\174\156\250\132\165\232\270\327\332\130\110
+\104\107\250\114\372\114\111\012\112\302\022\067\250\100\014\303
+\310\341\320\127\015\227\062\225\307\072\237\227\323\127\370\013
+\336\345\162\363\243\333\377\265\330\131\262\163\335\115\052\161
+\262\272\111\365\313\034\325\365\171\310\231\263\374\301\114\164
+\343\264\275\051\067\025\004\050\036\336\105\106\160\354\257\272
+\170\016\212\052\316\000\171\334\300\137\031\147\054\153\113\357
+\150\150\013\103\343\254\301\142\011\357\246\335\145\141\240\257
+\204\125\110\221\122\034\306\045\221\052\320\301\042\043\141\131
+\257\105\021\205\035\001\044\064\217\317\263\377\027\162\040\023
+\302\200\252\041\054\161\071\016\320\217\134\301\323\321\216\042
+\162\106\114\035\226\256\117\161\261\341\005\051\226\131\364\273
+\236\165\075\317\015\067\015\142\333\046\214\143\251\043\337\147
+\006\074\174\072\332\064\102\341\146\264\106\004\336\306\226\230
+\017\113\110\172\044\062\165\221\237\254\367\150\351\052\271\125
+\145\316\135\141\323\047\160\330\067\376\237\271\257\240\056\126
+\267\243\145\121\355\073\253\024\277\114\121\003\350\137\212\005
+\233\356\212\156\234\357\277\150\372\310\332\013\343\102\311\320
+\027\024\234\267\112\340\257\223\047\041\125\046\265\144\057\215
+\361\377\246\100\005\205\005\134\312\007\031\134\013\023\050\114
+\130\177\302\245\357\105\332\140\323\256\145\141\235\123\203\164
+\302\256\362\134\302\026\355\222\076\204\076\163\140\210\274\166
+\364\054\317\320\175\175\323\270\136\321\221\022\020\351\315\335
+\312\045\343\325\355\231\057\276\165\201\113\044\371\105\106\224
+\311\051\041\123\234\046\105\252\023\027\344\347\315\170\342\071
+\301\053\022\236\246\236\033\305\346\016\331\061\331
+END
+
+# Trust for "Swisscom Root CA 2"
+# Issuer: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Serial Number:1e:9e:28:e8:48:f2:e5:ef:c3:7c:4a:1e:5a:18:67:b6
+# Subject: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Not Valid Before: Fri Jun 24 08:38:14 2011
+# Not Valid After : Wed Jun 25 07:38:14 2031
+# Fingerprint (MD5): 5B:04:69:EC:A5:83:94:63:18:A7:86:D0:E4:F2:6E:19
+# Fingerprint (SHA1): 77:47:4F:C6:30:E4:0F:4C:47:64:3F:84:BA:B8:C6:95:4A:8A:41:EC
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Swisscom Root CA 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\167\107\117\306\060\344\017\114\107\144\077\204\272\270\306\225
+\112\212\101\354
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\133\004\151\354\245\203\224\143\030\247\206\320\344\362\156\031
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
+\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\036\236\050\350\110\362\345\357\303\174\112\036\132\030
+\147\266
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Swisscom Root EV CA 2"
+#
+# Issuer: CN=Swisscom Root EV CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Serial Number:00:f2:fa:64:e2:74:63:d3:8d:fd:10:1d:04:1f:76:ca:58
+# Subject: CN=Swisscom Root EV CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Not Valid Before: Fri Jun 24 09:45:08 2011
+# Not Valid After : Wed Jun 25 08:45:08 2031
+# Fingerprint (MD5): 7B:30:34:9F:DD:0A:4B:6B:35:CA:31:51:28:5D:AE:EC
+# Fingerprint (SHA1): E7:A1:90:29:D3:D5:52:DC:0D:0F:C6:92:D3:EA:88:0D:15:2E:1A:6B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Swisscom Root EV CA 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\147\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\036\060\034\006\003\125
+\004\003\023\025\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\105\126\040\103\101\040\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\147\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\036\060\034\006\003\125
+\004\003\023\025\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\105\126\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\362\372\144\342\164\143\323\215\375\020\035\004\037
+\166\312\130
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\340\060\202\003\310\240\003\002\001\002\002\021\000
+\362\372\144\342\164\143\323\215\375\020\035\004\037\166\312\130
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\147\061\013\060\011\006\003\125\004\006\023\002\143\150\061\021
+\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143\157
+\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147\151
+\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145\040
+\123\145\162\166\151\143\145\163\061\036\060\034\006\003\125\004
+\003\023\025\123\167\151\163\163\143\157\155\040\122\157\157\164
+\040\105\126\040\103\101\040\062\060\036\027\015\061\061\060\066
+\062\064\060\071\064\065\060\070\132\027\015\063\061\060\066\062
+\065\060\070\064\065\060\070\132\060\147\061\013\060\011\006\003
+\125\004\006\023\002\143\150\061\021\060\017\006\003\125\004\012
+\023\010\123\167\151\163\163\143\157\155\061\045\060\043\006\003
+\125\004\013\023\034\104\151\147\151\164\141\154\040\103\145\162
+\164\151\146\151\143\141\164\145\040\123\145\162\166\151\143\145
+\163\061\036\060\034\006\003\125\004\003\023\025\123\167\151\163
+\163\143\157\155\040\122\157\157\164\040\105\126\040\103\101\040
+\062\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002
+\001\000\304\367\035\057\127\352\127\154\367\160\135\143\260\161
+\122\011\140\104\050\063\243\172\116\012\372\330\352\154\213\121
+\026\032\125\256\124\046\304\314\105\007\101\117\020\171\177\161
+\322\172\116\077\070\116\263\000\306\225\312\133\315\301\052\203
+\327\047\037\061\016\043\026\267\045\313\034\264\271\200\062\136
+\032\235\223\361\350\074\140\054\247\136\127\031\130\121\136\274
+\054\126\013\270\330\357\213\202\264\074\270\302\044\250\023\307
+\240\041\066\033\172\127\051\050\247\056\277\161\045\220\363\104
+\203\151\120\244\344\341\033\142\031\224\011\243\363\303\274\357
+\364\275\354\333\023\235\317\235\110\011\122\147\300\067\051\021
+\036\373\322\021\247\205\030\164\171\344\117\205\024\353\122\067
+\342\261\105\330\314\015\103\177\256\023\322\153\053\077\247\302
+\342\250\155\166\133\103\237\276\264\235\263\046\206\073\037\177
+\345\362\350\146\050\026\045\320\113\227\070\247\344\317\011\321
+\066\303\013\276\332\073\104\130\215\276\361\236\011\153\076\363
+\062\307\053\207\306\354\136\234\366\207\145\255\063\051\304\057
+\211\331\271\313\311\003\235\373\154\224\121\227\020\033\206\013
+\032\033\077\366\002\176\173\324\305\121\144\050\235\365\323\254
+\203\201\210\323\164\264\131\235\301\353\141\063\132\105\321\313
+\071\320\006\152\123\140\035\257\366\373\151\274\152\334\001\317
+\275\371\217\331\275\133\301\072\137\216\332\017\113\251\233\235
+\052\050\153\032\012\174\074\253\042\013\345\167\055\161\366\202
+\065\201\256\370\173\201\346\352\376\254\364\032\233\164\134\350
+\217\044\366\135\235\106\304\054\322\036\053\041\152\203\047\147
+\125\112\244\343\310\062\227\146\220\162\332\343\324\144\056\137
+\343\241\152\366\140\324\347\065\315\312\304\150\215\327\161\310
+\323\044\063\163\261\154\371\152\341\050\333\137\306\075\350\276
+\125\346\067\033\355\044\331\017\031\217\137\143\030\130\120\201
+\121\145\157\362\237\176\152\004\347\064\044\161\272\166\113\130
+\036\031\275\025\140\105\252\014\022\100\001\235\020\342\307\070
+\007\162\012\145\300\266\273\045\051\332\026\236\213\065\213\141
+\355\345\161\127\203\265\074\161\237\343\117\277\176\036\201\237
+\101\227\002\003\001\000\001\243\201\206\060\201\203\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\206\060\035\006
+\003\125\035\041\004\026\060\024\060\022\006\007\140\205\164\001
+\123\002\002\006\007\140\205\164\001\123\002\002\060\022\006\003
+\125\035\023\001\001\377\004\010\060\006\001\001\377\002\001\003
+\060\035\006\003\125\035\016\004\026\004\024\105\331\245\201\156
+\075\210\115\215\161\322\106\301\156\105\036\363\304\200\235\060
+\037\006\003\125\035\043\004\030\060\026\200\024\105\331\245\201
+\156\075\210\115\215\161\322\106\301\156\105\036\363\304\200\235
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003
+\202\002\001\000\224\072\163\006\237\122\113\060\134\324\376\261
+\134\045\371\327\216\157\365\207\144\237\355\024\216\270\004\216
+\050\113\217\252\173\216\071\264\331\130\366\173\241\065\012\241
+\235\212\367\143\345\353\275\071\202\324\343\172\055\157\337\023
+\074\272\376\176\126\230\013\363\124\237\315\104\116\156\074\341
+\076\025\277\006\046\235\344\360\220\266\324\302\236\060\056\037
+\357\307\172\304\120\307\352\173\332\120\313\172\046\313\000\264
+\132\253\265\223\037\200\211\204\004\225\215\215\177\011\223\277
+\324\250\250\344\143\155\331\144\344\270\051\132\010\277\120\341
+\204\017\125\173\137\010\042\033\365\275\231\036\024\366\316\364
+\130\020\202\263\012\075\031\301\277\133\253\252\231\330\362\061
+\275\345\070\146\334\130\005\307\355\143\032\056\012\227\174\207
+\223\053\262\212\343\361\354\030\345\165\266\051\207\347\334\213
+\032\176\264\330\311\323\212\027\154\175\051\104\276\212\252\365
+\176\072\056\150\061\223\271\152\332\232\340\333\351\056\245\204
+\315\034\012\270\112\010\371\234\361\141\046\230\223\267\173\146
+\354\221\136\335\121\077\333\163\017\255\004\130\011\335\004\002
+\225\012\076\323\166\337\246\020\036\200\075\350\315\244\144\321
+\063\307\222\307\342\116\104\343\011\311\116\302\135\207\016\022
+\236\277\017\311\005\020\336\172\243\261\074\362\077\245\252\047
+\171\255\061\175\037\375\374\031\151\305\335\271\077\174\315\306
+\264\302\060\036\176\156\222\327\177\141\166\132\217\353\225\115
+\274\021\156\041\174\131\067\231\320\006\274\371\006\155\062\026
+\245\331\151\250\341\334\074\200\036\140\121\334\327\124\041\036
+\312\142\167\117\372\330\217\263\053\072\015\170\162\311\150\101
+\132\107\112\302\243\353\032\327\012\253\074\062\125\310\012\021
+\234\337\164\326\360\100\025\035\310\271\217\265\066\305\257\370
+\042\270\312\035\363\326\266\031\017\237\141\145\152\352\164\310
+\174\217\303\117\135\145\202\037\331\015\211\332\165\162\373\357
+\361\107\147\023\263\310\321\031\210\047\046\232\231\171\177\036
+\344\054\077\173\356\361\336\115\213\226\227\303\325\077\174\033
+\043\355\244\263\035\026\162\103\113\040\341\131\176\302\350\255
+\046\277\242\367
+END
+
+# Trust for "Swisscom Root EV CA 2"
+# Issuer: CN=Swisscom Root EV CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Serial Number:00:f2:fa:64:e2:74:63:d3:8d:fd:10:1d:04:1f:76:ca:58
+# Subject: CN=Swisscom Root EV CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
+# Not Valid Before: Fri Jun 24 09:45:08 2011
+# Not Valid After : Wed Jun 25 08:45:08 2031
+# Fingerprint (MD5): 7B:30:34:9F:DD:0A:4B:6B:35:CA:31:51:28:5D:AE:EC
+# Fingerprint (SHA1): E7:A1:90:29:D3:D5:52:DC:0D:0F:C6:92:D3:EA:88:0D:15:2E:1A:6B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Swisscom Root EV CA 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\347\241\220\051\323\325\122\334\015\017\306\222\323\352\210\015
+\025\056\032\153
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\173\060\064\237\335\012\113\153\065\312\061\121\050\135\256\354
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\147\061\013\060\011\006\003\125\004\006\023\002\143\150\061
+\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
+\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
+\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
+\040\123\145\162\166\151\143\145\163\061\036\060\034\006\003\125
+\004\003\023\025\123\167\151\163\163\143\157\155\040\122\157\157
+\164\040\105\126\040\103\101\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\362\372\144\342\164\143\323\215\375\020\035\004\037
+\166\312\130
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "CA Disig Root R1"
+#
+# Issuer: CN=CA Disig Root R1,O=Disig a.s.,L=Bratislava,C=SK
+# Serial Number:00:c3:03:9a:ee:50:90:6e:28
+# Subject: CN=CA Disig Root R1,O=Disig a.s.,L=Bratislava,C=SK
+# Not Valid Before: Thu Jul 19 09:06:56 2012
+# Not Valid After : Sat Jul 19 09:06:56 2042
+# Fingerprint (MD5): BE:EC:11:93:9A:F5:69:21:BC:D7:C1:C0:67:89:CC:2A
+# Fingerprint (SHA1): 8E:1C:74:F8:A6:20:B9:E5:8A:F4:61:FA:EC:2B:47:56:51:1A:52:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CA Disig Root R1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\122\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\031\060\027\006\003\125
+\004\003\023\020\103\101\040\104\151\163\151\147\040\122\157\157
+\164\040\122\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\122\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\031\060\027\006\003\125
+\004\003\023\020\103\101\040\104\151\163\151\147\040\122\157\157
+\164\040\122\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\303\003\232\356\120\220\156\050
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\151\060\202\003\121\240\003\002\001\002\002\011\000
+\303\003\232\356\120\220\156\050\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\060\122\061\013\060\011\006\003\125
+\004\006\023\002\123\113\061\023\060\021\006\003\125\004\007\023
+\012\102\162\141\164\151\163\154\141\166\141\061\023\060\021\006
+\003\125\004\012\023\012\104\151\163\151\147\040\141\056\163\056
+\061\031\060\027\006\003\125\004\003\023\020\103\101\040\104\151
+\163\151\147\040\122\157\157\164\040\122\061\060\036\027\015\061
+\062\060\067\061\071\060\071\060\066\065\066\132\027\015\064\062
+\060\067\061\071\060\071\060\066\065\066\132\060\122\061\013\060
+\011\006\003\125\004\006\023\002\123\113\061\023\060\021\006\003
+\125\004\007\023\012\102\162\141\164\151\163\154\141\166\141\061
+\023\060\021\006\003\125\004\012\023\012\104\151\163\151\147\040
+\141\056\163\056\061\031\060\027\006\003\125\004\003\023\020\103
+\101\040\104\151\163\151\147\040\122\157\157\164\040\122\061\060
+\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000
+\252\303\170\367\334\230\243\247\132\136\167\030\262\335\004\144
+\017\143\375\233\226\011\200\325\350\252\245\342\234\046\224\072
+\350\231\163\214\235\337\327\337\203\363\170\117\100\341\177\322
+\247\322\345\312\023\223\347\355\306\167\137\066\265\224\257\350
+\070\216\333\233\345\174\273\314\215\353\165\163\341\044\315\346
+\247\055\031\056\330\326\212\153\024\353\010\142\012\330\334\263
+\000\115\303\043\174\137\103\010\043\062\022\334\355\014\255\300
+\175\017\245\172\102\331\132\160\331\277\247\327\001\034\366\233
+\253\216\267\112\206\170\240\036\126\061\256\357\202\012\200\101
+\367\033\311\256\253\062\046\324\054\153\355\175\153\344\342\136
+\042\012\105\313\204\061\115\254\376\333\321\107\272\371\140\227
+\071\261\145\307\336\373\231\344\012\042\261\055\115\345\110\046
+\151\253\342\252\363\373\374\222\051\062\351\263\076\115\037\047
+\241\315\216\271\027\373\045\076\311\156\363\167\332\015\022\366
+\135\307\273\066\020\325\124\326\363\340\342\107\110\346\336\024
+\332\141\122\257\046\264\365\161\117\311\327\322\006\337\143\312
+\377\041\350\131\006\340\010\325\204\025\123\367\103\345\174\305
+\240\211\230\153\163\306\150\316\145\336\275\177\005\367\261\356
+\366\127\241\140\225\305\314\352\223\072\276\231\256\233\002\243
+\255\311\026\265\316\335\136\231\170\176\032\071\176\262\300\005
+\244\300\202\245\243\107\236\214\352\134\266\274\147\333\346\052
+\115\322\004\334\243\256\105\367\274\213\234\034\247\326\325\003
+\334\010\313\056\026\312\134\100\063\350\147\303\056\347\246\104
+\352\021\105\034\065\145\055\036\105\141\044\033\202\056\245\235
+\063\135\145\370\101\371\056\313\224\077\037\243\014\061\044\104
+\355\307\136\255\120\272\306\101\233\254\360\027\145\300\370\135
+\157\133\240\012\064\074\356\327\352\210\237\230\371\257\116\044
+\372\227\262\144\166\332\253\364\355\343\303\140\357\325\371\002
+\310\055\237\203\257\147\151\006\247\061\125\325\317\113\157\377
+\004\005\307\130\254\137\026\033\345\322\243\353\061\333\037\063
+\025\115\320\362\245\123\365\313\341\075\116\150\055\330\022\335
+\252\362\346\115\233\111\345\305\050\241\272\260\132\306\240\265
+\002\003\001\000\001\243\102\060\100\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125\035
+\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125\035
+\016\004\026\004\024\211\012\264\070\223\032\346\253\356\233\221
+\030\371\365\074\076\065\320\323\202\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\002\001\000\062\213\366
+\235\112\311\276\024\345\214\254\070\312\072\011\324\033\316\206
+\263\335\353\324\272\050\276\022\256\105\054\004\164\254\023\121
+\305\130\030\146\115\202\332\325\334\223\300\047\341\276\174\237
+\122\236\022\126\366\325\234\251\364\165\234\372\067\022\217\034
+\223\354\127\376\007\017\253\325\022\367\017\256\141\136\126\200
+\111\365\374\060\365\233\117\037\101\057\034\204\323\211\307\342
+\332\002\166\355\011\317\154\301\270\034\203\034\026\372\224\315
+\175\240\310\030\322\310\235\156\365\275\151\324\155\075\065\350
+\036\242\117\140\327\007\051\374\262\243\244\235\156\025\222\126
+\031\114\012\260\351\174\322\031\115\102\106\354\275\375\366\127
+\133\335\230\176\244\115\314\162\003\203\130\135\357\223\072\101
+\172\143\252\174\072\250\365\254\244\321\335\242\055\266\052\374
+\237\001\216\342\020\261\304\312\344\147\333\125\045\031\077\375
+\350\066\176\263\341\341\201\257\021\026\213\120\227\140\031\202
+\000\300\153\115\163\270\321\023\007\076\352\266\061\117\360\102
+\232\155\342\021\164\345\224\254\215\204\225\074\041\257\305\332
+\107\310\337\071\142\142\313\133\120\013\327\201\100\005\234\233
+\355\272\266\213\036\004\157\226\040\071\355\244\175\051\333\110
+\316\202\334\324\002\215\035\004\061\132\307\113\360\154\141\122
+\327\264\121\302\201\154\315\341\373\247\241\322\222\166\317\261
+\017\067\130\244\362\122\161\147\077\014\210\170\200\211\301\310
+\265\037\222\143\276\247\172\212\126\054\032\250\246\234\265\135
+\263\143\320\023\040\241\353\221\154\320\215\175\257\337\013\344
+\027\271\206\236\070\261\224\014\130\214\340\125\252\073\143\155
+\232\211\140\270\144\052\222\306\067\364\176\103\103\267\163\350
+\001\347\177\227\017\327\362\173\031\375\032\327\217\311\372\205
+\153\172\235\236\211\266\246\050\231\223\210\100\367\076\315\121
+\243\312\352\357\171\107\041\265\376\062\342\307\303\121\157\276
+\200\164\360\244\303\072\362\117\351\137\337\031\012\362\073\023
+\103\254\061\244\263\347\353\374\030\326\001\251\363\052\217\066
+\016\353\264\261\274\267\114\311\153\277\241\363\331\364\355\342
+\360\343\355\144\236\075\057\226\122\117\200\123\213
+END
+
+# Trust for "CA Disig Root R1"
+# Issuer: CN=CA Disig Root R1,O=Disig a.s.,L=Bratislava,C=SK
+# Serial Number:00:c3:03:9a:ee:50:90:6e:28
+# Subject: CN=CA Disig Root R1,O=Disig a.s.,L=Bratislava,C=SK
+# Not Valid Before: Thu Jul 19 09:06:56 2012
+# Not Valid After : Sat Jul 19 09:06:56 2042
+# Fingerprint (MD5): BE:EC:11:93:9A:F5:69:21:BC:D7:C1:C0:67:89:CC:2A
+# Fingerprint (SHA1): 8E:1C:74:F8:A6:20:B9:E5:8A:F4:61:FA:EC:2B:47:56:51:1A:52:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CA Disig Root R1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\216\034\164\370\246\040\271\345\212\364\141\372\354\053\107\126
+\121\032\122\306
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\276\354\021\223\232\365\151\041\274\327\301\300\147\211\314\052
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\122\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\031\060\027\006\003\125
+\004\003\023\020\103\101\040\104\151\163\151\147\040\122\157\157
+\164\040\122\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\303\003\232\356\120\220\156\050
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "CA Disig Root R2"
+#
+# Issuer: CN=CA Disig Root R2,O=Disig a.s.,L=Bratislava,C=SK
+# Serial Number:00:92:b8:88:db:b0:8a:c1:63
+# Subject: CN=CA Disig Root R2,O=Disig a.s.,L=Bratislava,C=SK
+# Not Valid Before: Thu Jul 19 09:15:30 2012
+# Not Valid After : Sat Jul 19 09:15:30 2042
+# Fingerprint (MD5): 26:01:FB:D8:27:A7:17:9A:45:54:38:1A:43:01:3B:03
+# Fingerprint (SHA1): B5:61:EB:EA:A4:DE:E4:25:4B:69:1A:98:A5:57:47:C2:34:C7:D9:71
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CA Disig Root R2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\122\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\031\060\027\006\003\125
+\004\003\023\020\103\101\040\104\151\163\151\147\040\122\157\157
+\164\040\122\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\122\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\031\060\027\006\003\125
+\004\003\023\020\103\101\040\104\151\163\151\147\040\122\157\157
+\164\040\122\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\222\270\210\333\260\212\301\143
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\151\060\202\003\121\240\003\002\001\002\002\011\000
+\222\270\210\333\260\212\301\143\060\015\006\011\052\206\110\206
+\367\015\001\001\013\005\000\060\122\061\013\060\011\006\003\125
+\004\006\023\002\123\113\061\023\060\021\006\003\125\004\007\023
+\012\102\162\141\164\151\163\154\141\166\141\061\023\060\021\006
+\003\125\004\012\023\012\104\151\163\151\147\040\141\056\163\056
+\061\031\060\027\006\003\125\004\003\023\020\103\101\040\104\151
+\163\151\147\040\122\157\157\164\040\122\062\060\036\027\015\061
+\062\060\067\061\071\060\071\061\065\063\060\132\027\015\064\062
+\060\067\061\071\060\071\061\065\063\060\132\060\122\061\013\060
+\011\006\003\125\004\006\023\002\123\113\061\023\060\021\006\003
+\125\004\007\023\012\102\162\141\164\151\163\154\141\166\141\061
+\023\060\021\006\003\125\004\012\023\012\104\151\163\151\147\040
+\141\056\163\056\061\031\060\027\006\003\125\004\003\023\020\103
+\101\040\104\151\163\151\147\040\122\157\157\164\040\122\062\060
+\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001
+\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000
+\242\243\304\000\011\326\205\135\055\155\024\366\302\303\163\236
+\065\302\161\125\176\201\373\253\106\120\340\301\174\111\170\346
+\253\171\130\074\332\377\174\034\237\330\227\002\170\076\153\101
+\004\351\101\275\276\003\054\105\366\057\144\324\253\135\243\107
+\075\144\233\351\150\232\306\314\033\077\272\276\262\213\064\002
+\056\230\125\031\374\214\157\252\137\332\114\316\115\003\041\243
+\330\322\064\223\126\226\313\114\014\000\026\074\137\032\315\310
+\307\154\246\255\323\061\247\274\350\345\341\146\326\322\373\003
+\264\101\145\311\020\256\016\005\143\306\200\152\151\060\375\322
+\356\220\357\015\047\337\237\225\163\364\341\045\332\154\026\336
+\101\070\064\352\213\374\321\350\004\024\141\055\101\176\254\307
+\167\116\313\121\124\373\136\222\030\033\004\132\150\306\311\304
+\372\267\023\240\230\267\021\053\267\326\127\314\174\236\027\321
+\313\045\376\206\116\044\056\126\014\170\115\236\001\022\246\053
+\247\001\145\156\174\142\035\204\204\337\352\300\153\265\245\052
+\225\203\303\123\021\014\163\035\013\262\106\220\321\102\072\316
+\100\156\225\255\377\306\224\255\156\227\204\216\175\157\236\212
+\200\015\111\155\163\342\173\222\036\303\363\301\363\353\056\005
+\157\331\033\317\067\166\004\310\264\132\344\027\247\313\335\166
+\037\320\031\166\350\054\005\263\326\234\064\330\226\334\141\207
+\221\005\344\104\010\063\301\332\271\010\145\324\256\262\066\015
+\353\272\070\272\014\345\233\236\353\215\146\335\231\317\326\211
+\101\366\004\222\212\051\051\155\153\072\034\347\165\175\002\161
+\016\363\300\347\275\313\031\335\235\140\262\302\146\140\266\261
+\004\356\311\346\206\271\232\146\100\250\347\021\355\201\105\003
+\213\366\147\131\350\301\006\021\275\335\317\200\002\117\145\100
+\170\134\107\120\310\233\346\037\201\173\344\104\250\133\205\232
+\342\336\132\325\307\371\072\104\146\113\344\062\124\174\344\154
+\234\263\016\075\027\242\262\064\022\326\176\262\250\111\273\321
+\172\050\100\276\242\026\037\337\344\067\037\021\163\373\220\012
+\145\103\242\015\174\370\006\001\125\063\175\260\015\270\364\365
+\256\245\102\127\174\066\021\214\173\136\304\003\235\214\171\235
+\002\003\001\000\001\243\102\060\100\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125\035
+\017\001\001\377\004\004\003\002\001\006\060\035\006\003\125\035
+\016\004\026\004\024\265\231\370\257\260\224\365\343\040\326\012
+\255\316\116\126\244\056\156\102\355\060\015\006\011\052\206\110
+\206\367\015\001\001\013\005\000\003\202\002\001\000\046\006\136
+\160\347\145\063\310\202\156\331\234\027\072\033\172\146\262\001
+\366\170\073\151\136\057\352\377\116\371\050\303\230\052\141\114
+\264\044\022\212\175\155\021\024\367\234\265\312\346\274\236\047
+\216\114\031\310\251\275\172\300\327\066\016\155\205\162\156\250
+\306\242\155\366\372\163\143\177\274\156\171\010\034\235\212\237
+\032\212\123\246\330\273\331\065\125\261\021\305\251\003\263\126
+\073\271\204\223\042\136\176\301\366\022\122\213\352\054\147\274
+\376\066\114\365\270\317\321\263\111\222\073\323\051\016\231\033
+\226\367\141\270\073\304\053\266\170\154\264\043\157\360\375\323
+\262\136\165\037\231\225\250\254\366\332\341\305\061\173\373\321
+\106\263\322\274\147\264\142\124\272\011\367\143\260\223\242\232
+\371\351\122\056\213\140\022\253\374\365\140\126\357\020\134\213
+\304\032\102\334\203\133\144\016\313\265\274\326\117\301\174\074
+\156\215\023\155\373\173\353\060\320\334\115\257\305\325\266\245
+\114\133\161\311\350\061\276\350\070\006\110\241\032\342\352\322
+\336\022\071\130\032\377\200\016\202\165\346\267\311\007\154\016
+\357\377\070\361\230\161\304\267\177\016\025\320\045\151\275\042
+\235\053\355\005\366\106\107\254\355\300\360\324\073\342\354\356
+\226\133\220\023\116\036\126\072\353\260\357\226\273\226\043\021
+\272\362\103\206\164\144\225\310\050\165\337\035\065\272\322\067
+\203\070\123\070\066\073\317\154\351\371\153\016\320\373\004\350
+\117\167\327\145\001\170\206\014\172\076\041\142\361\177\143\161
+\014\311\237\104\333\250\047\242\165\276\156\201\076\327\300\353
+\033\230\017\160\134\064\262\212\314\300\205\030\353\156\172\263
+\367\132\241\007\277\251\102\222\363\140\042\227\344\024\241\007
+\233\116\166\300\216\175\375\244\045\307\107\355\377\037\163\254
+\314\303\245\351\157\012\216\233\145\302\120\205\265\243\240\123
+\022\314\125\207\141\363\201\256\020\106\141\275\104\041\270\302
+\075\164\317\176\044\065\372\034\007\016\233\075\042\312\357\061
+\057\214\254\022\275\357\100\050\374\051\147\237\262\023\117\146
+\044\304\123\031\351\036\051\025\357\346\155\260\177\055\147\375
+\363\154\033\165\106\243\345\112\027\351\244\327\013
+END
+
+# Trust for "CA Disig Root R2"
+# Issuer: CN=CA Disig Root R2,O=Disig a.s.,L=Bratislava,C=SK
+# Serial Number:00:92:b8:88:db:b0:8a:c1:63
+# Subject: CN=CA Disig Root R2,O=Disig a.s.,L=Bratislava,C=SK
+# Not Valid Before: Thu Jul 19 09:15:30 2012
+# Not Valid After : Sat Jul 19 09:15:30 2042
+# Fingerprint (MD5): 26:01:FB:D8:27:A7:17:9A:45:54:38:1A:43:01:3B:03
+# Fingerprint (SHA1): B5:61:EB:EA:A4:DE:E4:25:4B:69:1A:98:A5:57:47:C2:34:C7:D9:71
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CA Disig Root R2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\265\141\353\352\244\336\344\045\113\151\032\230\245\127\107\302
+\064\307\331\161
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\046\001\373\330\047\247\027\232\105\124\070\032\103\001\073\003
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\122\061\013\060\011\006\003\125\004\006\023\002\123\113\061
+\023\060\021\006\003\125\004\007\023\012\102\162\141\164\151\163
+\154\141\166\141\061\023\060\021\006\003\125\004\012\023\012\104
+\151\163\151\147\040\141\056\163\056\061\031\060\027\006\003\125
+\004\003\023\020\103\101\040\104\151\163\151\147\040\122\157\157
+\164\040\122\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\011\000\222\270\210\333\260\212\301\143
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "SG TRUST SERVICES RACINE"
+#
+# Issuer: C=FR,O=SG TRUST SERVICES,OU=0002 43525289500022,CN=SG TRUST SERVICES RACINE
+# Serial Number:3e:d5:51:19:e6:4d:ce:7e
+# Subject: C=FR,O=SG TRUST SERVICES,OU=0002 43525289500022,CN=SG TRUST SERVICES RACINE
+# Not Valid Before: Mon Sep 06 12:53:42 2010
+# Not Valid After : Thu Sep 05 12:53:42 2030
+# Fingerprint (MD5): 25:EF:CF:48:4A:84:B7:30:9F:60:D3:1D:56:91:2F:E1
+# Fingerprint (SHA1): 0C:62:8F:5C:55:70:B1:C9:57:FA:FD:38:3F:B0:3D:7B:7D:D7:B9:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SG TRUST SERVICES RACINE"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\152\061\041\060\037\006\003\125\004\003\023\030\123\107\040
+\124\122\125\123\124\040\123\105\122\126\111\103\105\123\040\122
+\101\103\111\116\105\061\034\060\032\006\003\125\004\013\023\023
+\060\060\060\062\040\064\063\065\062\065\062\070\071\065\060\060
+\060\062\062\061\032\060\030\006\003\125\004\012\023\021\123\107
+\040\124\122\125\123\124\040\123\105\122\126\111\103\105\123\061
+\013\060\011\006\003\125\004\006\023\002\106\122
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\152\061\041\060\037\006\003\125\004\003\023\030\123\107\040
+\124\122\125\123\124\040\123\105\122\126\111\103\105\123\040\122
+\101\103\111\116\105\061\034\060\032\006\003\125\004\013\023\023
+\060\060\060\062\040\064\063\065\062\065\062\070\071\065\060\060
+\060\062\062\061\032\060\030\006\003\125\004\012\023\021\123\107
+\040\124\122\125\123\124\040\123\105\122\126\111\103\105\123\061
+\013\060\011\006\003\125\004\006\023\002\106\122
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\076\325\121\031\346\115\316\176
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\031\060\202\004\001\240\003\002\001\002\002\010\076
+\325\121\031\346\115\316\176\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\060\152\061\041\060\037\006\003\125\004
+\003\023\030\123\107\040\124\122\125\123\124\040\123\105\122\126
+\111\103\105\123\040\122\101\103\111\116\105\061\034\060\032\006
+\003\125\004\013\023\023\060\060\060\062\040\064\063\065\062\065
+\062\070\071\065\060\060\060\062\062\061\032\060\030\006\003\125
+\004\012\023\021\123\107\040\124\122\125\123\124\040\123\105\122
+\126\111\103\105\123\061\013\060\011\006\003\125\004\006\023\002
+\106\122\060\036\027\015\061\060\060\071\060\066\061\062\065\063
+\064\062\132\027\015\063\060\060\071\060\065\061\062\065\063\064
+\062\132\060\152\061\041\060\037\006\003\125\004\003\023\030\123
+\107\040\124\122\125\123\124\040\123\105\122\126\111\103\105\123
+\040\122\101\103\111\116\105\061\034\060\032\006\003\125\004\013
+\023\023\060\060\060\062\040\064\063\065\062\065\062\070\071\065
+\060\060\060\062\062\061\032\060\030\006\003\125\004\012\023\021
+\123\107\040\124\122\125\123\124\040\123\105\122\126\111\103\105
+\123\061\013\060\011\006\003\125\004\006\023\002\106\122\060\202
+\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000\332
+\250\126\002\354\174\225\360\116\351\012\322\267\007\243\042\213
+\120\263\271\056\031\075\127\333\031\252\322\053\344\316\102\342
+\154\241\344\135\045\036\063\035\266\105\321\264\372\131\212\126
+\160\311\155\010\166\151\160\232\346\307\234\010\060\023\376\346
+\321\222\150\141\076\114\021\362\156\362\261\173\127\126\113\011
+\275\334\017\331\161\014\350\232\067\336\042\020\034\231\136\326
+\261\027\007\323\244\071\055\302\032\163\375\312\113\051\007\302
+\171\051\310\310\046\256\054\304\374\043\310\113\342\206\126\017
+\050\375\266\207\033\150\137\071\144\105\375\150\203\154\165\044
+\036\074\165\231\141\372\322\024\370\251\113\261\330\175\247\170
+\322\023\142\145\265\326\276\176\152\003\274\265\262\374\144\060
+\303\320\302\231\075\231\244\323\315\321\261\304\123\207\173\114
+\023\023\146\177\277\325\145\123\150\371\134\036\345\264\377\066
+\231\105\243\237\142\300\177\021\202\001\124\336\017\145\245\071
+\256\235\110\114\211\243\020\073\340\346\203\365\260\332\054\036
+\172\034\134\037\000\254\314\253\247\140\144\263\306\305\173\307
+\125\106\164\074\220\201\016\112\216\131\235\124\260\110\261\122
+\114\073\230\356\253\332\064\267\123\315\111\332\057\353\225\276
+\014\127\021\366\226\114\004\171\134\231\325\345\344\276\157\352
+\107\356\121\113\357\042\046\256\265\330\021\252\103\273\170\277
+\013\176\264\335\317\164\035\045\251\211\143\261\342\064\201\304
+\210\065\070\342\002\015\017\023\311\325\052\202\025\360\212\304
+\103\062\126\344\123\035\035\254\266\317\175\233\226\135\036\144
+\351\164\163\304\126\344\026\112\122\155\222\071\323\341\115\016
+\077\142\271\336\255\265\035\145\271\135\122\376\135\011\251\234
+\264\244\014\331\057\105\166\245\317\216\152\232\236\252\260\021
+\241\353\141\306\353\077\036\374\146\264\022\235\106\177\062\026
+\211\276\161\105\257\221\041\331\375\223\277\264\002\221\102\377
+\111\037\355\213\025\150\335\037\216\254\233\335\202\005\234\104
+\151\026\144\027\126\137\101\017\112\117\004\017\145\120\206\223
+\227\354\105\277\135\302\034\334\317\304\330\072\346\170\005\320
+\305\125\125\251\136\376\253\072\041\273\345\162\024\367\013\002
+\003\001\000\001\243\201\302\060\201\277\060\035\006\003\125\035
+\016\004\026\004\024\051\040\313\361\303\017\332\006\216\023\223
+\207\376\137\140\032\051\273\363\266\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\037\006\003\125\035
+\043\004\030\060\026\200\024\051\040\313\361\303\017\332\006\216
+\023\223\207\376\137\140\032\051\273\363\266\060\021\006\003\125
+\035\040\004\012\060\010\060\006\006\004\125\035\040\000\060\111
+\006\003\125\035\037\004\102\060\100\060\076\240\074\240\072\206
+\070\150\164\164\160\072\057\057\143\162\154\056\163\147\164\162
+\165\163\164\163\145\162\166\151\143\145\163\056\143\157\155\057
+\162\141\143\151\156\145\055\107\162\157\165\160\145\123\107\057
+\114\141\164\145\163\164\103\122\114\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\006\060\015\006\011\052\206\110
+\206\367\015\001\001\013\005\000\003\202\002\001\000\114\106\147
+\340\104\120\365\305\266\272\262\121\012\045\023\035\267\307\210
+\056\037\271\053\144\240\313\223\210\122\131\252\140\365\314\051
+\122\027\377\004\347\067\264\061\021\106\176\053\036\154\247\213
+\074\107\232\136\364\252\135\220\073\105\075\237\112\311\212\173
+\216\300\356\076\171\213\222\243\310\224\112\270\050\021\153\246
+\045\137\135\275\307\310\373\203\117\125\061\346\134\360\023\174
+\343\275\177\052\054\067\067\224\111\257\204\037\024\047\242\130
+\020\217\012\071\067\032\022\040\101\217\031\366\251\037\031\355
+\262\064\262\255\175\063\104\213\137\012\007\103\362\166\105\105
+\055\255\344\215\016\000\375\004\010\252\347\153\373\027\275\260
+\010\126\016\065\052\162\360\263\347\115\072\117\015\334\363\140
+\022\263\070\144\214\333\371\341\046\215\057\357\116\350\044\107
+\076\066\064\212\151\017\050\153\213\207\306\275\205\046\371\323
+\353\151\041\126\140\221\326\367\340\142\302\250\161\256\056\336
+\146\043\265\122\106\246\244\110\067\054\177\001\026\127\021\367
+\047\015\016\345\017\326\220\105\341\036\077\041\334\322\374\026
+\030\023\076\115\152\262\046\152\100\136\045\170\375\070\364\254
+\130\172\067\033\230\100\004\307\216\311\324\304\147\141\261\230
+\256\360\315\016\334\271\257\145\203\173\012\004\212\077\141\252
+\367\135\101\206\346\306\114\302\117\072\134\126\352\050\073\247
+\104\317\310\112\144\365\162\140\055\343\103\270\112\340\165\074
+\062\344\252\026\327\021\271\301\105\331\233\146\143\146\345\042
+\267\064\356\272\325\164\057\045\144\363\201\124\313\167\336\127
+\324\223\343\254\007\061\072\076\134\003\203\127\123\307\360\376
+\150\330\045\120\115\022\310\346\341\225\215\147\253\074\223\077
+\027\002\272\070\327\236\367\060\245\075\075\104\001\063\032\232
+\237\216\320\237\361\356\060\210\163\357\256\044\031\272\227\163
+\025\301\354\161\014\204\144\265\173\354\274\151\076\244\155\011
+\026\066\312\112\071\212\313\247\173\306\035\176\347\063\210\311
+\276\060\155\234\205\225\041\351\107\073\006\176\201\342\352\106
+\346\160\130\200\346\250\362\235\013\151\321\063\211\131\060\363
+\144\323\013\366\316\053\011\373\175\020\166\056\020
+END
+
+# Trust for "SG TRUST SERVICES RACINE"
+# Issuer: C=FR,O=SG TRUST SERVICES,OU=0002 43525289500022,CN=SG TRUST SERVICES RACINE
+# Serial Number:3e:d5:51:19:e6:4d:ce:7e
+# Subject: C=FR,O=SG TRUST SERVICES,OU=0002 43525289500022,CN=SG TRUST SERVICES RACINE
+# Not Valid Before: Mon Sep 06 12:53:42 2010
+# Not Valid After : Thu Sep 05 12:53:42 2030
+# Fingerprint (MD5): 25:EF:CF:48:4A:84:B7:30:9F:60:D3:1D:56:91:2F:E1
+# Fingerprint (SHA1): 0C:62:8F:5C:55:70:B1:C9:57:FA:FD:38:3F:B0:3D:7B:7D:D7:B9:C6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "SG TRUST SERVICES RACINE"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\014\142\217\134\125\160\261\311\127\372\375\070\077\260\075\173
+\175\327\271\306
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\045\357\317\110\112\204\267\060\237\140\323\035\126\221\057\341
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\152\061\041\060\037\006\003\125\004\003\023\030\123\107\040
+\124\122\125\123\124\040\123\105\122\126\111\103\105\123\040\122
+\101\103\111\116\105\061\034\060\032\006\003\125\004\013\023\023
+\060\060\060\062\040\064\063\065\062\065\062\070\071\065\060\060
+\060\062\062\061\032\060\030\006\003\125\004\012\023\021\123\107
+\040\124\122\125\123\124\040\123\105\122\126\111\103\105\123\061
+\013\060\011\006\003\125\004\006\023\002\106\122
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\076\325\121\031\346\115\316\176
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "ACCVRAIZ1"
+#
+# Issuer: C=ES,O=ACCV,OU=PKIACCV,CN=ACCVRAIZ1
+# Serial Number:5e:c3:b7:a6:43:7f:a4:e0
+# Subject: C=ES,O=ACCV,OU=PKIACCV,CN=ACCVRAIZ1
+# Not Valid Before: Thu May 05 09:37:37 2011
+# Not Valid After : Tue Dec 31 09:37:37 2030
+# Fingerprint (MD5): D0:A0:5A:EE:05:B6:09:94:21:A1:7D:F1:B2:29:82:02
+# Fingerprint (SHA1): 93:05:7A:88:15:C6:4F:CE:88:2F:FA:91:16:52:28:78:BC:53:64:17
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ACCVRAIZ1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\102\061\022\060\020\006\003\125\004\003\014\011\101\103\103
+\126\122\101\111\132\061\061\020\060\016\006\003\125\004\013\014
+\007\120\113\111\101\103\103\126\061\015\060\013\006\003\125\004
+\012\014\004\101\103\103\126\061\013\060\011\006\003\125\004\006
+\023\002\105\123
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\102\061\022\060\020\006\003\125\004\003\014\011\101\103\103
+\126\122\101\111\132\061\061\020\060\016\006\003\125\004\013\014
+\007\120\113\111\101\103\103\126\061\015\060\013\006\003\125\004
+\012\014\004\101\103\103\126\061\013\060\011\006\003\125\004\006
+\023\002\105\123
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\136\303\267\246\103\177\244\340
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\007\323\060\202\005\273\240\003\002\001\002\002\010\136
+\303\267\246\103\177\244\340\060\015\006\011\052\206\110\206\367
+\015\001\001\005\005\000\060\102\061\022\060\020\006\003\125\004
+\003\014\011\101\103\103\126\122\101\111\132\061\061\020\060\016
+\006\003\125\004\013\014\007\120\113\111\101\103\103\126\061\015
+\060\013\006\003\125\004\012\014\004\101\103\103\126\061\013\060
+\011\006\003\125\004\006\023\002\105\123\060\036\027\015\061\061
+\060\065\060\065\060\071\063\067\063\067\132\027\015\063\060\061
+\062\063\061\060\071\063\067\063\067\132\060\102\061\022\060\020
+\006\003\125\004\003\014\011\101\103\103\126\122\101\111\132\061
+\061\020\060\016\006\003\125\004\013\014\007\120\113\111\101\103
+\103\126\061\015\060\013\006\003\125\004\012\014\004\101\103\103
+\126\061\013\060\011\006\003\125\004\006\023\002\105\123\060\202
+\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000\233
+\251\253\277\141\112\227\257\057\227\146\232\164\137\320\331\226
+\375\317\342\344\146\357\037\037\107\063\302\104\243\337\232\336
+\037\265\124\335\025\174\151\065\021\157\273\310\014\216\152\030
+\036\330\217\331\026\274\020\110\066\134\360\143\263\220\132\134
+\044\067\327\243\326\313\011\161\271\361\001\162\204\260\175\333
+\115\200\315\374\323\157\311\370\332\266\016\202\322\105\205\250
+\033\150\250\075\350\364\104\154\275\241\302\313\003\276\214\076
+\023\000\204\337\112\110\300\343\042\012\350\351\067\247\030\114
+\261\011\015\043\126\177\004\115\331\027\204\030\245\310\332\100
+\224\163\353\316\016\127\074\003\201\072\235\012\241\127\103\151
+\254\127\155\171\220\170\345\265\264\073\330\274\114\215\050\241
+\247\243\247\272\002\116\045\321\052\256\355\256\003\042\270\153
+\040\017\060\050\124\225\177\340\356\316\012\146\235\321\100\055
+\156\042\257\235\032\301\005\031\322\157\300\362\237\370\173\263
+\002\102\373\120\251\035\055\223\017\043\253\306\301\017\222\377
+\320\242\025\365\123\011\161\034\377\105\023\204\346\046\136\370
+\340\210\034\012\374\026\266\250\163\006\270\360\143\204\002\240
+\306\132\354\347\164\337\160\256\243\203\045\352\326\307\227\207
+\223\247\306\212\212\063\227\140\067\020\076\227\076\156\051\025
+\326\241\017\321\210\054\022\237\157\252\244\306\102\353\101\242
+\343\225\103\323\001\205\155\216\273\073\363\043\066\307\376\073
+\340\241\045\007\110\253\311\211\164\377\010\217\200\277\300\226
+\145\363\356\354\113\150\275\235\210\303\061\263\100\361\350\317
+\366\070\273\234\344\321\177\324\345\130\233\174\372\324\363\016
+\233\165\221\344\272\122\056\031\176\321\365\315\132\031\374\272
+\006\366\373\122\250\113\231\004\335\370\371\264\213\120\243\116
+\142\211\360\207\044\372\203\102\301\207\372\325\055\051\052\132
+\161\172\144\152\327\047\140\143\015\333\316\111\365\215\037\220
+\211\062\027\370\163\103\270\322\132\223\206\141\326\341\165\012
+\352\171\146\166\210\117\161\353\004\045\326\012\132\172\223\345
+\271\113\027\100\017\261\266\271\365\336\117\334\340\263\254\073
+\021\160\140\204\112\103\156\231\040\300\051\161\012\300\145\002
+\003\001\000\001\243\202\002\313\060\202\002\307\060\175\006\010
+\053\006\001\005\005\007\001\001\004\161\060\157\060\114\006\010
+\053\006\001\005\005\007\060\002\206\100\150\164\164\160\072\057
+\057\167\167\167\056\141\143\143\166\056\145\163\057\146\151\154
+\145\141\144\155\151\156\057\101\162\143\150\151\166\157\163\057
+\143\145\162\164\151\146\151\143\141\144\157\163\057\162\141\151
+\172\141\143\143\166\061\056\143\162\164\060\037\006\010\053\006
+\001\005\005\007\060\001\206\023\150\164\164\160\072\057\057\157
+\143\163\160\056\141\143\143\166\056\145\163\060\035\006\003\125
+\035\016\004\026\004\024\322\207\264\343\337\067\047\223\125\366
+\126\352\201\345\066\314\214\036\077\275\060\017\006\003\125\035
+\023\001\001\377\004\005\060\003\001\001\377\060\037\006\003\125
+\035\043\004\030\060\026\200\024\322\207\264\343\337\067\047\223
+\125\366\126\352\201\345\066\314\214\036\077\275\060\202\001\163
+\006\003\125\035\040\004\202\001\152\060\202\001\146\060\202\001
+\142\006\004\125\035\040\000\060\202\001\130\060\202\001\042\006
+\010\053\006\001\005\005\007\002\002\060\202\001\024\036\202\001
+\020\000\101\000\165\000\164\000\157\000\162\000\151\000\144\000
+\141\000\144\000\040\000\144\000\145\000\040\000\103\000\145\000
+\162\000\164\000\151\000\146\000\151\000\143\000\141\000\143\000
+\151\000\363\000\156\000\040\000\122\000\141\000\355\000\172\000
+\040\000\144\000\145\000\040\000\154\000\141\000\040\000\101\000
+\103\000\103\000\126\000\040\000\050\000\101\000\147\000\145\000
+\156\000\143\000\151\000\141\000\040\000\144\000\145\000\040\000
+\124\000\145\000\143\000\156\000\157\000\154\000\157\000\147\000
+\355\000\141\000\040\000\171\000\040\000\103\000\145\000\162\000
+\164\000\151\000\146\000\151\000\143\000\141\000\143\000\151\000
+\363\000\156\000\040\000\105\000\154\000\145\000\143\000\164\000
+\162\000\363\000\156\000\151\000\143\000\141\000\054\000\040\000
+\103\000\111\000\106\000\040\000\121\000\064\000\066\000\060\000
+\061\000\061\000\065\000\066\000\105\000\051\000\056\000\040\000
+\103\000\120\000\123\000\040\000\145\000\156\000\040\000\150\000
+\164\000\164\000\160\000\072\000\057\000\057\000\167\000\167\000
+\167\000\056\000\141\000\143\000\143\000\166\000\056\000\145\000
+\163\060\060\006\010\053\006\001\005\005\007\002\001\026\044\150
+\164\164\160\072\057\057\167\167\167\056\141\143\143\166\056\145
+\163\057\154\145\147\151\163\154\141\143\151\157\156\137\143\056
+\150\164\155\060\125\006\003\125\035\037\004\116\060\114\060\112
+\240\110\240\106\206\104\150\164\164\160\072\057\057\167\167\167
+\056\141\143\143\166\056\145\163\057\146\151\154\145\141\144\155
+\151\156\057\101\162\143\150\151\166\157\163\057\143\145\162\164
+\151\146\151\143\141\144\157\163\057\162\141\151\172\141\143\143
+\166\061\137\144\145\162\056\143\162\154\060\016\006\003\125\035
+\017\001\001\377\004\004\003\002\001\006\060\027\006\003\125\035
+\021\004\020\060\016\201\014\141\143\143\166\100\141\143\143\166
+\056\145\163\060\015\006\011\052\206\110\206\367\015\001\001\005
+\005\000\003\202\002\001\000\227\061\002\237\347\375\103\147\110
+\104\024\344\051\207\355\114\050\146\320\217\065\332\115\141\267
+\112\227\115\265\333\220\340\005\056\016\306\171\320\362\227\151
+\017\275\004\107\331\276\333\265\051\332\233\331\256\251\231\325
+\323\074\060\223\365\215\241\250\374\006\215\104\364\312\026\225
+\174\063\334\142\213\250\067\370\047\330\011\055\033\357\310\024
+\047\040\251\144\104\377\056\326\165\252\154\115\140\100\031\111
+\103\124\143\332\342\314\272\146\345\117\104\172\133\331\152\201
+\053\100\325\177\371\001\047\130\054\310\355\110\221\174\077\246
+\000\317\304\051\163\021\066\336\206\031\076\235\356\031\212\033
+\325\260\355\216\075\234\052\300\015\330\075\146\343\074\015\275
+\325\224\134\342\342\247\065\033\004\000\366\077\132\215\352\103
+\275\137\211\035\251\301\260\314\231\342\115\000\012\332\311\047
+\133\347\023\220\134\344\365\063\242\125\155\334\340\011\115\057
+\261\046\133\047\165\000\011\304\142\167\051\010\137\236\131\254
+\266\176\255\237\124\060\042\003\301\036\161\144\376\371\070\012
+\226\030\335\002\024\254\043\313\006\034\036\244\175\215\015\336
+\047\101\350\255\332\025\267\260\043\335\053\250\323\332\045\207
+\355\350\125\104\115\210\364\066\176\204\232\170\254\367\016\126
+\111\016\326\063\045\326\204\120\102\154\040\022\035\052\325\276
+\274\362\160\201\244\160\140\276\005\265\233\236\004\104\276\141
+\043\254\351\245\044\214\021\200\224\132\242\242\271\111\322\301
+\334\321\247\355\061\021\054\236\031\246\356\341\125\341\300\352
+\317\015\204\344\027\267\242\174\245\336\125\045\006\356\314\300
+\207\134\100\332\314\225\077\125\340\065\307\270\204\276\264\135
+\315\172\203\001\162\356\207\346\137\035\256\265\205\306\046\337
+\346\301\232\351\036\002\107\237\052\250\155\251\133\317\354\105
+\167\177\230\047\232\062\135\052\343\204\356\305\230\146\057\226
+\040\035\335\330\303\047\327\260\371\376\331\175\315\320\237\217
+\013\024\130\121\237\057\213\303\070\055\336\350\217\326\215\207
+\244\365\126\103\026\231\054\364\244\126\264\064\270\141\067\311
+\302\130\200\033\240\227\241\374\131\215\351\021\366\321\017\113
+\125\064\106\052\213\206\073
+END
+
+# Trust for "ACCVRAIZ1"
+# Issuer: C=ES,O=ACCV,OU=PKIACCV,CN=ACCVRAIZ1
+# Serial Number:5e:c3:b7:a6:43:7f:a4:e0
+# Subject: C=ES,O=ACCV,OU=PKIACCV,CN=ACCVRAIZ1
+# Not Valid Before: Thu May 05 09:37:37 2011
+# Not Valid After : Tue Dec 31 09:37:37 2030
+# Fingerprint (MD5): D0:A0:5A:EE:05:B6:09:94:21:A1:7D:F1:B2:29:82:02
+# Fingerprint (SHA1): 93:05:7A:88:15:C6:4F:CE:88:2F:FA:91:16:52:28:78:BC:53:64:17
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "ACCVRAIZ1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\223\005\172\210\025\306\117\316\210\057\372\221\026\122\050\170
+\274\123\144\027
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\320\240\132\356\005\266\011\224\041\241\175\361\262\051\202\002
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\102\061\022\060\020\006\003\125\004\003\014\011\101\103\103
+\126\122\101\111\132\061\061\020\060\016\006\003\125\004\013\014
+\007\120\113\111\101\103\103\126\061\015\060\013\006\003\125\004
+\012\014\004\101\103\103\126\061\013\060\011\006\003\125\004\006
+\023\002\105\123
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\136\303\267\246\103\177\244\340
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TWCA Global Root CA"
+#
+# Issuer: CN=TWCA Global Root CA,OU=Root CA,O=TAIWAN-CA,C=TW
+# Serial Number: 3262 (0xcbe)
+# Subject: CN=TWCA Global Root CA,OU=Root CA,O=TAIWAN-CA,C=TW
+# Not Valid Before: Wed Jun 27 06:28:33 2012
+# Not Valid After : Tue Dec 31 15:59:59 2030
+# Fingerprint (MD5): F9:03:7E:CF:E6:9E:3C:73:7A:2A:90:07:69:FF:2B:96
+# Fingerprint (SHA1): 9C:BB:48:53:F6:A4:F6:D3:52:A4:E8:32:52:55:60:13:F5:AD:AF:65
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TWCA Global Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\121\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\023\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\023\007\122\157
+\157\164\040\103\101\061\034\060\032\006\003\125\004\003\023\023
+\124\127\103\101\040\107\154\157\142\141\154\040\122\157\157\164
+\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\121\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\023\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\023\007\122\157
+\157\164\040\103\101\061\034\060\032\006\003\125\004\003\023\023
+\124\127\103\101\040\107\154\157\142\141\154\040\122\157\157\164
+\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\014\276
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\101\060\202\003\051\240\003\002\001\002\002\002\014
+\276\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000
+\060\121\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\023\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\023\007\122\157
+\157\164\040\103\101\061\034\060\032\006\003\125\004\003\023\023
+\124\127\103\101\040\107\154\157\142\141\154\040\122\157\157\164
+\040\103\101\060\036\027\015\061\062\060\066\062\067\060\066\062
+\070\063\063\132\027\015\063\060\061\062\063\061\061\065\065\071
+\065\071\132\060\121\061\013\060\011\006\003\125\004\006\023\002
+\124\127\061\022\060\020\006\003\125\004\012\023\011\124\101\111
+\127\101\116\055\103\101\061\020\060\016\006\003\125\004\013\023
+\007\122\157\157\164\040\103\101\061\034\060\032\006\003\125\004
+\003\023\023\124\127\103\101\040\107\154\157\142\141\154\040\122
+\157\157\164\040\103\101\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\260\005\333\310\353\214\304\156\212
+\041\357\216\115\234\161\012\037\122\160\355\155\202\234\227\305
+\327\114\116\105\111\313\100\102\265\022\064\154\031\302\164\244
+\061\137\205\002\227\354\103\063\012\123\322\234\214\216\267\270
+\171\333\053\325\152\362\216\146\304\356\053\001\007\222\324\263
+\320\002\337\120\366\125\257\146\016\313\340\107\140\057\053\062
+\071\065\122\072\050\203\370\173\026\306\030\270\142\326\107\045
+\221\316\360\031\022\115\255\143\365\323\077\165\137\051\360\241
+\060\034\052\240\230\246\025\275\356\375\031\066\360\342\221\103
+\217\372\312\326\020\047\111\114\357\335\301\361\205\160\233\312
+\352\250\132\103\374\155\206\157\163\351\067\105\251\360\066\307
+\314\210\165\036\273\154\006\377\233\153\076\027\354\141\252\161
+\174\306\035\242\367\111\351\025\265\074\326\241\141\365\021\367
+\005\157\035\375\021\276\320\060\007\302\051\260\011\116\046\334
+\343\242\250\221\152\037\302\221\105\210\134\345\230\270\161\245
+\025\031\311\174\165\021\314\160\164\117\055\233\035\221\104\375
+\126\050\240\376\273\206\152\310\372\134\013\130\334\306\113\166
+\310\253\042\331\163\017\245\364\132\002\211\077\117\236\042\202
+\356\242\164\123\052\075\123\047\151\035\154\216\062\054\144\000
+\046\143\141\066\116\243\106\267\077\175\263\055\254\155\220\242
+\225\242\316\317\332\202\347\007\064\031\226\351\270\041\252\051
+\176\246\070\276\216\051\112\041\146\171\037\263\303\265\011\147
+\336\326\324\007\106\363\052\332\346\042\067\140\313\201\266\017
+\240\017\351\310\225\177\277\125\221\005\172\317\075\025\300\157
+\336\011\224\001\203\327\064\033\314\100\245\360\270\233\147\325
+\230\221\073\247\204\170\225\046\244\132\010\370\053\164\264\000
+\004\074\337\270\024\216\350\337\251\215\154\147\222\063\035\300
+\267\322\354\222\310\276\011\277\054\051\005\157\002\153\236\357
+\274\277\052\274\133\300\120\217\101\160\161\207\262\115\267\004
+\251\204\243\062\257\256\356\153\027\213\262\261\376\154\341\220
+\214\210\250\227\110\316\310\115\313\363\006\317\137\152\012\102
+\261\036\036\167\057\216\240\346\222\016\006\374\005\042\322\046
+\341\061\121\175\062\334\017\002\003\001\000\001\243\043\060\041
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000
+\003\202\002\001\000\137\064\201\166\357\226\035\325\345\265\331
+\002\143\204\026\301\256\240\160\121\247\367\114\107\065\310\013
+\327\050\075\211\161\331\252\063\101\352\024\033\154\041\000\300
+\154\102\031\176\237\151\133\040\102\337\242\322\332\304\174\227
+\113\215\260\350\254\310\356\245\151\004\231\012\222\246\253\047
+\056\032\115\201\277\204\324\160\036\255\107\376\375\112\235\063
+\340\362\271\304\105\010\041\012\332\151\151\163\162\015\276\064
+\376\224\213\255\303\036\065\327\242\203\357\345\070\307\245\205
+\037\253\317\064\354\077\050\376\014\361\127\206\116\311\125\367
+\034\324\330\245\175\006\172\157\325\337\020\337\201\116\041\145
+\261\266\341\027\171\225\105\006\316\137\314\334\106\211\143\150
+\104\215\223\364\144\160\240\075\235\050\005\303\071\160\270\142
+\173\040\375\344\333\351\010\241\270\236\075\011\307\117\373\054
+\370\223\166\101\336\122\340\341\127\322\235\003\274\167\236\376
+\236\051\136\367\301\121\140\037\336\332\013\262\055\165\267\103
+\110\223\347\366\171\306\204\135\200\131\140\224\374\170\230\217
+\074\223\121\355\100\220\007\337\144\143\044\313\116\161\005\241
+\327\224\032\210\062\361\042\164\042\256\245\246\330\022\151\114
+\140\243\002\356\053\354\324\143\222\013\136\276\057\166\153\243
+\266\046\274\217\003\330\012\362\114\144\106\275\071\142\345\226
+\353\064\143\021\050\314\225\361\255\357\357\334\200\130\110\351
+\113\270\352\145\254\351\374\200\265\265\310\105\371\254\301\237
+\331\271\352\142\210\216\304\361\113\203\022\255\346\213\204\326
+\236\302\353\203\030\237\152\273\033\044\140\063\160\314\354\367
+\062\363\134\331\171\175\357\236\244\376\311\043\303\044\356\025
+\222\261\075\221\117\046\206\275\146\163\044\023\352\244\256\143
+\301\255\175\204\003\074\020\170\206\033\171\343\304\363\362\004
+\225\040\256\043\202\304\263\072\000\142\277\346\066\044\341\127
+\272\307\036\220\165\325\137\077\225\141\053\301\073\315\345\263
+\150\141\320\106\046\251\041\122\151\055\353\056\307\353\167\316
+\246\072\265\003\063\117\166\321\347\134\124\001\135\313\170\364
+\311\014\277\317\022\216\027\055\043\150\224\347\253\376\251\262
+\053\006\320\004\315
+END
+
+# Trust for "TWCA Global Root CA"
+# Issuer: CN=TWCA Global Root CA,OU=Root CA,O=TAIWAN-CA,C=TW
+# Serial Number: 3262 (0xcbe)
+# Subject: CN=TWCA Global Root CA,OU=Root CA,O=TAIWAN-CA,C=TW
+# Not Valid Before: Wed Jun 27 06:28:33 2012
+# Not Valid After : Tue Dec 31 15:59:59 2030
+# Fingerprint (MD5): F9:03:7E:CF:E6:9E:3C:73:7A:2A:90:07:69:FF:2B:96
+# Fingerprint (SHA1): 9C:BB:48:53:F6:A4:F6:D3:52:A4:E8:32:52:55:60:13:F5:AD:AF:65
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TWCA Global Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\234\273\110\123\366\244\366\323\122\244\350\062\122\125\140\023
+\365\255\257\145
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\371\003\176\317\346\236\074\163\172\052\220\007\151\377\053\226
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\121\061\013\060\011\006\003\125\004\006\023\002\124\127\061
+\022\060\020\006\003\125\004\012\023\011\124\101\111\127\101\116
+\055\103\101\061\020\060\016\006\003\125\004\013\023\007\122\157
+\157\164\040\103\101\061\034\060\032\006\003\125\004\003\023\023
+\124\127\103\101\040\107\154\157\142\141\154\040\122\157\157\164
+\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\002\014\276
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "TeliaSonera Root CA v1"
+#
+# Issuer: CN=TeliaSonera Root CA v1,O=TeliaSonera
+# Serial Number:00:95:be:16:a0:f7:2e:46:f1:7b:39:82:72:fa:8b:cd:96
+# Subject: CN=TeliaSonera Root CA v1,O=TeliaSonera
+# Not Valid Before: Thu Oct 18 12:00:50 2007
+# Not Valid After : Mon Oct 18 12:00:50 2032
+# Fingerprint (MD5): 37:41:49:1B:18:56:9A:26:F5:AD:C2:66:FB:40:A5:4C
+# Fingerprint (SHA1): 43:13:BB:96:F1:D5:86:9B:C1:4E:6A:92:F6:CF:F6:34:69:87:82:37
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TeliaSonera Root CA v1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\067\061\024\060\022\006\003\125\004\012\014\013\124\145\154
+\151\141\123\157\156\145\162\141\061\037\060\035\006\003\125\004
+\003\014\026\124\145\154\151\141\123\157\156\145\162\141\040\122
+\157\157\164\040\103\101\040\166\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\067\061\024\060\022\006\003\125\004\012\014\013\124\145\154
+\151\141\123\157\156\145\162\141\061\037\060\035\006\003\125\004
+\003\014\026\124\145\154\151\141\123\157\156\145\162\141\040\122
+\157\157\164\040\103\101\040\166\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\225\276\026\240\367\056\106\361\173\071\202\162\372
+\213\315\226
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\070\060\202\003\040\240\003\002\001\002\002\021\000
+\225\276\026\240\367\056\106\361\173\071\202\162\372\213\315\226
+\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
+\067\061\024\060\022\006\003\125\004\012\014\013\124\145\154\151
+\141\123\157\156\145\162\141\061\037\060\035\006\003\125\004\003
+\014\026\124\145\154\151\141\123\157\156\145\162\141\040\122\157
+\157\164\040\103\101\040\166\061\060\036\027\015\060\067\061\060
+\061\070\061\062\060\060\065\060\132\027\015\063\062\061\060\061
+\070\061\062\060\060\065\060\132\060\067\061\024\060\022\006\003
+\125\004\012\014\013\124\145\154\151\141\123\157\156\145\162\141
+\061\037\060\035\006\003\125\004\003\014\026\124\145\154\151\141
+\123\157\156\145\162\141\040\122\157\157\164\040\103\101\040\166
+\061\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002
+\001\000\302\276\353\047\360\041\243\363\151\046\125\176\235\305
+\125\026\221\134\375\357\041\277\123\200\172\055\322\221\214\143
+\061\360\354\044\360\303\245\322\162\174\020\155\364\067\267\345
+\346\174\171\352\214\265\202\213\256\110\266\254\000\334\145\165
+\354\052\115\137\301\207\365\040\145\053\201\250\107\076\211\043
+\225\060\026\220\177\350\127\007\110\347\031\256\277\105\147\261
+\067\033\006\052\376\336\371\254\175\203\373\136\272\344\217\227
+\147\276\113\216\215\144\007\127\070\125\151\064\066\075\023\110
+\357\117\342\323\146\036\244\317\032\267\136\066\063\324\264\006
+\275\030\001\375\167\204\120\000\105\365\214\135\350\043\274\176
+\376\065\341\355\120\173\251\060\215\031\323\011\216\150\147\135
+\277\074\227\030\123\273\051\142\305\312\136\162\301\307\226\324
+\333\055\240\264\037\151\003\354\352\342\120\361\014\074\360\254
+\363\123\055\360\034\365\355\154\071\071\163\200\026\310\122\260
+\043\315\340\076\334\335\074\107\240\273\065\212\342\230\150\213
+\276\345\277\162\356\322\372\245\355\022\355\374\230\030\251\046
+\166\334\050\113\020\040\034\323\177\026\167\055\355\157\200\367
+\111\273\123\005\273\135\150\307\324\310\165\026\077\211\132\213
+\367\027\107\324\114\361\322\211\171\076\115\075\230\250\141\336
+\072\036\322\370\136\003\340\301\311\034\214\323\215\115\323\225
+\066\263\067\137\143\143\233\063\024\360\055\046\153\123\174\211
+\214\062\302\156\354\075\041\000\071\311\241\150\342\120\203\056
+\260\072\053\363\066\240\254\057\344\157\141\302\121\011\071\076
+\213\123\271\273\147\332\334\123\271\166\131\066\235\103\345\040
+\340\075\062\140\205\042\121\267\307\063\273\335\025\057\244\170
+\246\007\173\201\106\066\004\206\335\171\065\307\225\054\073\260
+\243\027\065\345\163\037\264\134\131\357\332\352\020\145\173\172
+\320\177\237\263\264\052\067\073\160\213\233\133\271\053\267\354
+\262\121\022\227\123\051\132\324\360\022\020\334\117\002\273\022
+\222\057\142\324\077\151\103\174\015\326\374\130\165\001\210\235
+\130\026\113\336\272\220\377\107\001\211\006\152\366\137\262\220
+\152\263\002\246\002\210\277\263\107\176\052\331\325\372\150\170
+\065\115\002\003\001\000\001\243\077\060\075\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\013\006\003
+\125\035\017\004\004\003\002\001\006\060\035\006\003\125\035\016
+\004\026\004\024\360\217\131\070\000\263\365\217\232\226\014\325
+\353\372\173\252\027\350\023\022\060\015\006\011\052\206\110\206
+\367\015\001\001\005\005\000\003\202\002\001\000\276\344\134\142
+\116\044\364\014\010\377\360\323\014\150\344\223\111\042\077\104
+\047\157\273\155\336\203\146\316\250\314\015\374\365\232\006\345
+\167\024\221\353\235\101\173\231\052\204\345\377\374\041\301\135
+\360\344\037\127\267\165\251\241\137\002\046\377\327\307\367\116
+\336\117\370\367\034\106\300\172\117\100\054\042\065\360\031\261
+\320\153\147\054\260\250\340\300\100\067\065\366\204\134\134\343
+\257\102\170\376\247\311\015\120\352\015\204\166\366\121\357\203
+\123\306\172\377\016\126\111\056\217\172\326\014\346\047\124\343
+\115\012\140\162\142\315\221\007\326\245\277\310\231\153\355\304
+\031\346\253\114\021\070\305\157\061\342\156\111\310\077\166\200
+\046\003\046\051\340\066\366\366\040\123\343\027\160\064\027\235
+\143\150\036\153\354\303\115\206\270\023\060\057\135\106\015\107
+\103\325\033\252\131\016\271\134\215\006\110\255\164\207\137\307
+\374\061\124\101\023\342\307\041\016\236\340\036\015\341\300\173
+\103\205\220\305\212\130\306\145\012\170\127\362\306\043\017\001
+\331\040\113\336\017\373\222\205\165\052\134\163\215\155\173\045
+\221\312\356\105\256\006\113\000\314\323\261\131\120\332\072\210
+\073\051\103\106\136\227\053\124\316\123\157\215\112\347\226\372
+\277\161\016\102\213\174\375\050\240\320\110\312\332\304\201\114
+\273\242\163\223\046\310\353\014\326\046\210\266\300\044\317\273
+\275\133\353\165\175\351\010\216\206\063\054\171\167\011\151\245
+\211\374\263\160\220\207\166\217\323\042\273\102\316\275\163\013
+\040\046\052\320\233\075\160\036\044\154\315\207\166\251\027\226
+\267\317\015\222\373\216\030\251\230\111\321\236\376\140\104\162
+\041\271\031\355\302\365\061\361\071\110\210\220\044\165\124\026
+\255\316\364\370\151\024\144\071\373\243\270\272\160\100\307\047
+\034\277\304\126\123\372\143\145\320\363\034\016\026\365\153\206
+\130\115\030\324\344\015\216\245\235\133\221\334\166\044\120\077
+\306\052\373\331\267\234\265\326\346\320\331\350\031\213\025\161
+\110\255\267\352\330\131\210\324\220\277\026\263\331\351\254\131
+\141\124\310\034\272\312\301\312\341\271\040\114\217\072\223\211
+\245\240\314\277\323\366\165\244\165\226\155\126
+END
+
+# Trust for "TeliaSonera Root CA v1"
+# Issuer: CN=TeliaSonera Root CA v1,O=TeliaSonera
+# Serial Number:00:95:be:16:a0:f7:2e:46:f1:7b:39:82:72:fa:8b:cd:96
+# Subject: CN=TeliaSonera Root CA v1,O=TeliaSonera
+# Not Valid Before: Thu Oct 18 12:00:50 2007
+# Not Valid After : Mon Oct 18 12:00:50 2032
+# Fingerprint (MD5): 37:41:49:1B:18:56:9A:26:F5:AD:C2:66:FB:40:A5:4C
+# Fingerprint (SHA1): 43:13:BB:96:F1:D5:86:9B:C1:4E:6A:92:F6:CF:F6:34:69:87:82:37
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "TeliaSonera Root CA v1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\103\023\273\226\361\325\206\233\301\116\152\222\366\317\366\064
+\151\207\202\067
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\067\101\111\033\030\126\232\046\365\255\302\146\373\100\245\114
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\067\061\024\060\022\006\003\125\004\012\014\013\124\145\154
+\151\141\123\157\156\145\162\141\061\037\060\035\006\003\125\004
+\003\014\026\124\145\154\151\141\123\157\156\145\162\141\040\122
+\157\157\164\040\103\101\040\166\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\225\276\026\240\367\056\106\361\173\071\202\162\372
+\213\315\226
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "E-Tugra Certification Authority"
+#
+# Issuer: CN=E-Tugra Certification Authority,OU=E-Tugra Sertifikasyon Merkezi,O=E-Tu..ra EBG Bili..im Teknolojileri ve Hizmetleri A....,L=Ankara,C=TR
+# Serial Number:6a:68:3e:9c:51:9b:cb:53
+# Subject: CN=E-Tugra Certification Authority,OU=E-Tugra Sertifikasyon Merkezi,O=E-Tu..ra EBG Bili..im Teknolojileri ve Hizmetleri A....,L=Ankara,C=TR
+# Not Valid Before: Tue Mar 05 12:09:48 2013
+# Not Valid After : Fri Mar 03 12:09:48 2023
+# Fingerprint (MD5): B8:A1:03:63:B0:BD:21:71:70:8A:6F:13:3A:BB:79:49
+# Fingerprint (SHA1): 51:C6:E7:08:49:06:6E:F3:92:D4:5C:A0:0D:6D:A3:62:8F:C3:52:39
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "E-Tugra Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\262\061\013\060\011\006\003\125\004\006\023\002\124\122
+\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141\162
+\141\061\100\060\076\006\003\125\004\012\014\067\105\055\124\165
+\304\237\162\141\040\105\102\107\040\102\151\154\151\305\237\151
+\155\040\124\145\153\156\157\154\157\152\151\154\145\162\151\040
+\166\145\040\110\151\172\155\145\164\154\145\162\151\040\101\056
+\305\236\056\061\046\060\044\006\003\125\004\013\014\035\105\055
+\124\165\147\162\141\040\123\145\162\164\151\146\151\153\141\163
+\171\157\156\040\115\145\162\153\145\172\151\061\050\060\046\006
+\003\125\004\003\014\037\105\055\124\165\147\162\141\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\262\061\013\060\011\006\003\125\004\006\023\002\124\122
+\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141\162
+\141\061\100\060\076\006\003\125\004\012\014\067\105\055\124\165
+\304\237\162\141\040\105\102\107\040\102\151\154\151\305\237\151
+\155\040\124\145\153\156\157\154\157\152\151\154\145\162\151\040
+\166\145\040\110\151\172\155\145\164\154\145\162\151\040\101\056
+\305\236\056\061\046\060\044\006\003\125\004\013\014\035\105\055
+\124\165\147\162\141\040\123\145\162\164\151\146\151\153\141\163
+\171\157\156\040\115\145\162\153\145\172\151\061\050\060\046\006
+\003\125\004\003\014\037\105\055\124\165\147\162\141\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\152\150\076\234\121\233\313\123
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\113\060\202\004\063\240\003\002\001\002\002\010\152
+\150\076\234\121\233\313\123\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\060\201\262\061\013\060\011\006\003\125
+\004\006\023\002\124\122\061\017\060\015\006\003\125\004\007\014
+\006\101\156\153\141\162\141\061\100\060\076\006\003\125\004\012
+\014\067\105\055\124\165\304\237\162\141\040\105\102\107\040\102
+\151\154\151\305\237\151\155\040\124\145\153\156\157\154\157\152
+\151\154\145\162\151\040\166\145\040\110\151\172\155\145\164\154
+\145\162\151\040\101\056\305\236\056\061\046\060\044\006\003\125
+\004\013\014\035\105\055\124\165\147\162\141\040\123\145\162\164
+\151\146\151\153\141\163\171\157\156\040\115\145\162\153\145\172
+\151\061\050\060\046\006\003\125\004\003\014\037\105\055\124\165
+\147\162\141\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\060\036\027\015\061
+\063\060\063\060\065\061\062\060\071\064\070\132\027\015\062\063
+\060\063\060\063\061\062\060\071\064\070\132\060\201\262\061\013
+\060\011\006\003\125\004\006\023\002\124\122\061\017\060\015\006
+\003\125\004\007\014\006\101\156\153\141\162\141\061\100\060\076
+\006\003\125\004\012\014\067\105\055\124\165\304\237\162\141\040
+\105\102\107\040\102\151\154\151\305\237\151\155\040\124\145\153
+\156\157\154\157\152\151\154\145\162\151\040\166\145\040\110\151
+\172\155\145\164\154\145\162\151\040\101\056\305\236\056\061\046
+\060\044\006\003\125\004\013\014\035\105\055\124\165\147\162\141
+\040\123\145\162\164\151\146\151\153\141\163\171\157\156\040\115
+\145\162\153\145\172\151\061\050\060\046\006\003\125\004\003\014
+\037\105\055\124\165\147\162\141\040\103\145\162\164\151\146\151
+\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171
+\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001
+\000\342\365\077\223\005\121\036\205\142\124\136\172\013\365\030
+\007\203\256\176\257\174\367\324\212\153\245\143\103\071\271\113
+\367\303\306\144\211\075\224\056\124\200\122\071\071\007\113\113
+\335\205\007\166\207\314\277\057\225\114\314\175\247\075\274\107
+\017\230\160\370\214\205\036\164\216\222\155\033\100\321\231\015
+\273\165\156\310\251\153\232\300\204\061\257\312\103\313\353\053
+\064\350\217\227\153\001\233\325\016\112\010\252\133\222\164\205
+\103\323\200\256\241\210\133\256\263\352\136\313\026\232\167\104
+\310\241\366\124\150\316\336\217\227\053\272\133\100\002\014\144
+\027\300\265\223\315\341\361\023\146\316\014\171\357\321\221\050
+\253\137\240\022\122\060\163\031\216\217\341\214\007\242\303\273
+\112\360\352\037\025\250\356\045\314\244\106\370\033\042\357\263
+\016\103\272\054\044\270\305\054\134\324\034\370\135\144\275\303
+\223\136\050\247\077\047\361\216\036\323\052\120\005\243\125\331
+\313\347\071\123\300\230\236\214\124\142\213\046\260\367\175\215
+\174\344\306\236\146\102\125\202\107\347\262\130\215\146\367\007
+\174\056\066\346\120\034\077\333\103\044\305\277\206\107\171\263
+\171\034\367\132\364\023\354\154\370\077\342\131\037\225\356\102
+\076\271\255\250\062\205\111\227\106\376\113\061\217\132\313\255
+\164\107\037\351\221\267\337\050\004\042\240\324\017\135\342\171
+\117\352\154\205\206\275\250\246\316\344\372\303\341\263\256\336
+\074\121\356\313\023\174\001\177\204\016\135\121\224\236\023\014
+\266\056\245\114\371\071\160\066\157\226\312\056\014\104\125\305
+\312\372\135\002\243\337\326\144\214\132\263\001\012\251\265\012
+\107\027\377\357\221\100\052\216\241\106\072\061\230\345\021\374
+\314\273\111\126\212\374\271\320\141\232\157\145\154\346\303\313
+\076\165\111\376\217\247\342\211\305\147\327\235\106\023\116\061
+\166\073\044\263\236\021\145\206\253\177\357\035\324\370\274\347
+\254\132\134\267\132\107\134\125\316\125\264\042\161\133\133\013
+\360\317\334\240\141\144\352\251\327\150\012\143\247\340\015\077
+\240\257\323\252\322\176\357\121\240\346\121\053\125\222\025\027
+\123\313\267\146\016\146\114\370\371\165\114\220\347\022\160\307
+\105\002\003\001\000\001\243\143\060\141\060\035\006\003\125\035
+\016\004\026\004\024\056\343\333\262\111\320\234\124\171\134\372
+\047\052\376\314\116\322\350\116\124\060\017\006\003\125\035\023
+\001\001\377\004\005\060\003\001\001\377\060\037\006\003\125\035
+\043\004\030\060\026\200\024\056\343\333\262\111\320\234\124\171
+\134\372\047\052\376\314\116\322\350\116\124\060\016\006\003\125
+\035\017\001\001\377\004\004\003\002\001\006\060\015\006\011\052
+\206\110\206\367\015\001\001\013\005\000\003\202\002\001\000\005
+\067\072\364\115\267\105\342\105\165\044\217\266\167\122\350\034
+\330\020\223\145\363\362\131\006\244\076\036\051\354\135\321\320
+\253\174\340\012\220\110\170\355\116\230\003\231\376\050\140\221
+\035\060\035\270\143\174\250\346\065\265\372\323\141\166\346\326
+\007\113\312\151\232\262\204\172\167\223\105\027\025\237\044\320
+\230\023\022\377\273\240\056\375\116\114\207\370\316\134\252\230
+\033\005\340\000\106\112\202\200\245\063\213\050\334\355\070\323
+\337\345\076\351\376\373\131\335\141\204\117\322\124\226\023\141
+\023\076\217\200\151\276\223\107\265\065\103\322\132\273\075\134
+\357\263\102\107\315\073\125\023\006\260\011\333\375\143\366\072
+\210\012\231\157\176\341\316\033\123\152\104\146\043\121\010\173
+\274\133\122\242\375\006\067\070\100\141\217\112\226\270\220\067
+\370\146\307\170\220\000\025\056\213\255\121\065\123\007\250\153
+\150\256\371\116\074\007\046\315\010\005\160\314\071\077\166\275
+\245\323\147\046\001\206\246\123\322\140\073\174\103\177\125\212
+\274\225\032\301\050\071\114\037\103\322\221\364\162\131\212\271
+\126\374\077\264\235\332\160\234\166\132\214\103\120\356\216\060
+\162\115\337\377\111\367\306\251\147\331\155\254\002\021\342\072
+\026\045\247\130\010\313\157\123\101\234\110\070\107\150\063\321
+\327\307\217\324\164\041\324\303\005\220\172\377\316\226\210\261
+\025\051\135\043\253\320\140\241\022\117\336\364\027\315\062\345
+\311\277\310\103\255\375\056\216\361\257\342\364\230\372\022\037
+\040\330\300\247\014\205\305\220\364\073\055\226\046\261\054\276
+\114\253\353\261\322\212\311\333\170\023\017\036\011\235\155\217
+\000\237\002\332\301\372\037\172\172\011\304\112\346\210\052\227
+\237\211\213\375\067\137\137\072\316\070\131\206\113\257\161\013
+\264\330\362\160\117\237\062\023\343\260\247\127\345\332\332\103
+\313\204\064\362\050\304\352\155\364\052\357\301\153\166\332\373
+\176\273\205\074\322\123\302\115\276\161\341\105\321\375\043\147
+\015\023\165\373\317\145\147\042\235\256\260\011\321\011\377\035
+\064\277\376\043\227\067\322\071\372\075\015\006\013\264\333\073
+\243\253\157\134\035\266\176\350\263\202\064\355\006\134\044
+END
+
+# Trust for "E-Tugra Certification Authority"
+# Issuer: CN=E-Tugra Certification Authority,OU=E-Tugra Sertifikasyon Merkezi,O=E-Tu..ra EBG Bili..im Teknolojileri ve Hizmetleri A....,L=Ankara,C=TR
+# Serial Number:6a:68:3e:9c:51:9b:cb:53
+# Subject: CN=E-Tugra Certification Authority,OU=E-Tugra Sertifikasyon Merkezi,O=E-Tu..ra EBG Bili..im Teknolojileri ve Hizmetleri A....,L=Ankara,C=TR
+# Not Valid Before: Tue Mar 05 12:09:48 2013
+# Not Valid After : Fri Mar 03 12:09:48 2023
+# Fingerprint (MD5): B8:A1:03:63:B0:BD:21:71:70:8A:6F:13:3A:BB:79:49
+# Fingerprint (SHA1): 51:C6:E7:08:49:06:6E:F3:92:D4:5C:A0:0D:6D:A3:62:8F:C3:52:39
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "E-Tugra Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\121\306\347\010\111\006\156\363\222\324\134\240\015\155\243\142
+\217\303\122\071
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\270\241\003\143\260\275\041\161\160\212\157\023\072\273\171\111
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\262\061\013\060\011\006\003\125\004\006\023\002\124\122
+\061\017\060\015\006\003\125\004\007\014\006\101\156\153\141\162
+\141\061\100\060\076\006\003\125\004\012\014\067\105\055\124\165
+\304\237\162\141\040\105\102\107\040\102\151\154\151\305\237\151
+\155\040\124\145\153\156\157\154\157\152\151\154\145\162\151\040
+\166\145\040\110\151\172\155\145\164\154\145\162\151\040\101\056
+\305\236\056\061\046\060\044\006\003\125\004\013\014\035\105\055
+\124\165\147\162\141\040\123\145\162\164\151\146\151\153\141\163
+\171\157\156\040\115\145\162\153\145\172\151\061\050\060\046\006
+\003\125\004\003\014\037\105\055\124\165\147\162\141\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150
+\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\152\150\076\234\121\233\313\123
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "T-TeleSec GlobalRoot Class 2"
+#
+# Issuer: CN=T-TeleSec GlobalRoot Class 2,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Serial Number: 1 (0x1)
+# Subject: CN=T-TeleSec GlobalRoot Class 2,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Not Valid Before: Wed Oct 01 10:40:14 2008
+# Not Valid After : Sat Oct 01 23:59:59 2033
+# Fingerprint (MD5): 2B:9B:9E:E4:7B:6C:1F:00:72:1A:CC:C1:77:79:DF:6A
+# Fingerprint (SHA1): 59:0D:2D:7D:88:4F:40:2E:61:7E:A5:62:32:17:65:CF:17:D8:94:E9
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "T-TeleSec GlobalRoot Class 2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163
+\164\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040
+\123\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060
+\035\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155
+\163\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045
+\060\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123
+\145\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154
+\141\163\163\040\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163
+\164\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040
+\123\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060
+\035\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155
+\163\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045
+\060\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123
+\145\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154
+\141\163\163\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\303\060\202\002\253\240\003\002\001\002\002\001\001
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105\061
+\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163\164
+\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040\123
+\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060\035
+\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155\163
+\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045\060
+\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123\145
+\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154\141
+\163\163\040\062\060\036\027\015\060\070\061\060\060\061\061\060
+\064\060\061\064\132\027\015\063\063\061\060\060\061\062\063\065
+\071\065\071\132\060\201\202\061\013\060\011\006\003\125\004\006
+\023\002\104\105\061\053\060\051\006\003\125\004\012\014\042\124
+\055\123\171\163\164\145\155\163\040\105\156\164\145\162\160\162
+\151\163\145\040\123\145\162\166\151\143\145\163\040\107\155\142
+\110\061\037\060\035\006\003\125\004\013\014\026\124\055\123\171
+\163\164\145\155\163\040\124\162\165\163\164\040\103\145\156\164
+\145\162\061\045\060\043\006\003\125\004\003\014\034\124\055\124
+\145\154\145\123\145\143\040\107\154\157\142\141\154\122\157\157
+\164\040\103\154\141\163\163\040\062\060\202\001\042\060\015\006
+\011\052\206\110\206\367\015\001\001\001\005\000\003\202\001\017
+\000\060\202\001\012\002\202\001\001\000\252\137\332\033\137\350
+\163\221\345\332\134\364\242\346\107\345\363\150\125\140\005\035
+\002\244\263\233\131\363\036\212\257\064\255\374\015\302\331\110
+\031\356\151\217\311\040\374\041\252\007\031\355\260\134\254\145
+\307\137\355\002\174\173\174\055\033\326\272\271\200\302\030\202
+\026\204\372\146\260\010\306\124\043\201\344\315\271\111\077\366
+\117\156\067\110\050\070\017\305\276\347\150\160\375\071\227\115
+\322\307\230\221\120\252\304\104\263\043\175\071\107\351\122\142
+\326\022\223\136\267\061\226\102\005\373\166\247\036\243\365\302
+\374\351\172\305\154\251\161\117\352\313\170\274\140\257\307\336
+\364\331\313\276\176\063\245\156\224\203\360\064\372\041\253\352
+\216\162\240\077\244\336\060\133\357\206\115\152\225\133\103\104
+\250\020\025\034\345\001\127\305\230\361\346\006\050\221\252\040
+\305\267\123\046\121\103\262\013\021\225\130\341\300\017\166\331
+\300\215\174\201\363\162\160\236\157\376\032\216\331\137\065\306
+\262\157\064\174\276\110\117\342\132\071\327\330\235\170\236\237
+\206\076\003\136\031\213\104\242\325\307\002\003\001\000\001\243
+\102\060\100\060\017\006\003\125\035\023\001\001\377\004\005\060
+\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004\004
+\003\002\001\006\060\035\006\003\125\035\016\004\026\004\024\277
+\131\040\066\000\171\240\240\042\153\214\325\362\141\322\270\054
+\313\202\112\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\003\202\001\001\000\061\003\242\141\013\037\164\350\162
+\066\306\155\371\115\236\372\042\250\341\201\126\317\315\273\237
+\352\253\221\031\070\257\252\174\025\115\363\266\243\215\245\364
+\216\366\104\251\247\350\041\225\255\076\000\142\026\210\360\002
+\272\374\141\043\346\063\233\060\172\153\066\142\173\255\004\043
+\204\130\145\342\333\053\212\347\045\123\067\142\123\137\274\332
+\001\142\051\242\246\047\161\346\072\042\176\301\157\035\225\160
+\040\112\007\064\337\352\377\025\200\345\272\327\172\330\133\165
+\174\005\172\051\107\176\100\250\061\023\167\315\100\073\264\121
+\107\172\056\021\343\107\021\336\235\146\320\213\325\124\146\372
+\203\125\352\174\302\051\211\033\351\157\263\316\342\005\204\311
+\057\076\170\205\142\156\311\137\301\170\143\164\130\300\110\030
+\014\231\071\353\244\314\032\265\171\132\215\025\234\330\024\015
+\366\172\007\127\307\042\203\005\055\074\233\045\046\075\030\263
+\251\103\174\310\310\253\144\217\016\243\277\234\033\235\060\333
+\332\320\031\056\252\074\361\373\063\200\166\344\315\255\031\117
+\005\047\216\023\241\156\302
+END
+
+# Trust for "T-TeleSec GlobalRoot Class 2"
+# Issuer: CN=T-TeleSec GlobalRoot Class 2,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Serial Number: 1 (0x1)
+# Subject: CN=T-TeleSec GlobalRoot Class 2,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
+# Not Valid Before: Wed Oct 01 10:40:14 2008
+# Not Valid After : Sat Oct 01 23:59:59 2033
+# Fingerprint (MD5): 2B:9B:9E:E4:7B:6C:1F:00:72:1A:CC:C1:77:79:DF:6A
+# Fingerprint (SHA1): 59:0D:2D:7D:88:4F:40:2E:61:7E:A5:62:32:17:65:CF:17:D8:94:E9
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "T-TeleSec GlobalRoot Class 2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\131\015\055\175\210\117\100\056\141\176\245\142\062\027\145\317
+\027\330\224\351
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\053\233\236\344\173\154\037\000\162\032\314\301\167\171\337\152
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\202\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\053\060\051\006\003\125\004\012\014\042\124\055\123\171\163
+\164\145\155\163\040\105\156\164\145\162\160\162\151\163\145\040
+\123\145\162\166\151\143\145\163\040\107\155\142\110\061\037\060
+\035\006\003\125\004\013\014\026\124\055\123\171\163\164\145\155
+\163\040\124\162\165\163\164\040\103\145\156\164\145\162\061\045
+\060\043\006\003\125\004\003\014\034\124\055\124\145\154\145\123
+\145\143\040\107\154\157\142\141\154\122\157\157\164\040\103\154
+\141\163\163\040\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\001\001
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Atos TrustedRoot 2011"
+#
+# Issuer: C=DE,O=Atos,CN=Atos TrustedRoot 2011
+# Serial Number:5c:33:cb:62:2c:5f:b3:32
+# Subject: C=DE,O=Atos,CN=Atos TrustedRoot 2011
+# Not Valid Before: Thu Jul 07 14:58:30 2011
+# Not Valid After : Tue Dec 31 23:59:59 2030
+# Fingerprint (MD5): AE:B9:C4:32:4B:AC:7F:5D:66:CC:77:94:BB:2A:77:56
+# Fingerprint (SHA1): 2B:B1:F5:3E:55:0C:1D:C5:F1:D4:E6:B7:6A:46:4B:55:06:02:AC:21
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Atos TrustedRoot 2011"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\074\061\036\060\034\006\003\125\004\003\014\025\101\164\157
+\163\040\124\162\165\163\164\145\144\122\157\157\164\040\062\060
+\061\061\061\015\060\013\006\003\125\004\012\014\004\101\164\157
+\163\061\013\060\011\006\003\125\004\006\023\002\104\105
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\074\061\036\060\034\006\003\125\004\003\014\025\101\164\157
+\163\040\124\162\165\163\164\145\144\122\157\157\164\040\062\060
+\061\061\061\015\060\013\006\003\125\004\012\014\004\101\164\157
+\163\061\013\060\011\006\003\125\004\006\023\002\104\105
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\134\063\313\142\054\137\263\062
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\167\060\202\002\137\240\003\002\001\002\002\010\134
+\063\313\142\054\137\263\062\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\060\074\061\036\060\034\006\003\125\004
+\003\014\025\101\164\157\163\040\124\162\165\163\164\145\144\122
+\157\157\164\040\062\060\061\061\061\015\060\013\006\003\125\004
+\012\014\004\101\164\157\163\061\013\060\011\006\003\125\004\006
+\023\002\104\105\060\036\027\015\061\061\060\067\060\067\061\064
+\065\070\063\060\132\027\015\063\060\061\062\063\061\062\063\065
+\071\065\071\132\060\074\061\036\060\034\006\003\125\004\003\014
+\025\101\164\157\163\040\124\162\165\163\164\145\144\122\157\157
+\164\040\062\060\061\061\061\015\060\013\006\003\125\004\012\014
+\004\101\164\157\163\061\013\060\011\006\003\125\004\006\023\002
+\104\105\060\202\001\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002\202
+\001\001\000\225\205\073\227\157\052\073\056\073\317\246\363\051
+\065\276\317\030\254\076\252\331\370\115\240\076\032\107\271\274
+\232\337\362\376\314\076\107\350\172\226\302\044\216\065\364\251
+\014\374\202\375\155\301\162\142\047\275\352\153\353\347\212\314
+\124\076\220\120\317\200\324\225\373\350\265\202\324\024\305\266
+\251\125\045\127\333\261\120\366\260\140\144\131\172\151\317\003
+\267\157\015\276\312\076\157\164\162\352\252\060\052\163\142\276
+\111\221\141\310\021\376\016\003\052\367\152\040\334\002\025\015
+\136\025\152\374\343\202\301\265\305\235\144\011\154\243\131\230
+\007\047\307\033\226\053\141\164\161\154\103\361\367\065\211\020
+\340\236\354\125\241\067\042\242\207\004\005\054\107\175\264\034
+\271\142\051\146\050\312\267\341\223\365\244\224\003\231\271\160
+\205\265\346\110\352\215\120\374\331\336\314\157\007\016\335\013
+\162\235\200\060\026\007\225\077\050\016\375\305\165\117\123\326
+\164\232\264\044\056\216\002\221\317\166\305\233\036\125\164\234
+\170\041\261\360\055\361\013\237\302\325\226\030\037\360\124\042
+\172\214\007\002\003\001\000\001\243\175\060\173\060\035\006\003
+\125\035\016\004\026\004\024\247\245\006\261\054\246\011\140\356
+\321\227\351\160\256\274\073\031\154\333\041\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\037\006\003
+\125\035\043\004\030\060\026\200\024\247\245\006\261\054\246\011
+\140\356\321\227\351\160\256\274\073\031\154\333\041\060\030\006
+\003\125\035\040\004\021\060\017\060\015\006\013\053\006\001\004
+\001\260\055\003\004\001\001\060\016\006\003\125\035\017\001\001
+\377\004\004\003\002\001\206\060\015\006\011\052\206\110\206\367
+\015\001\001\013\005\000\003\202\001\001\000\046\167\064\333\224
+\110\206\052\101\235\054\076\006\220\140\304\214\254\013\124\270
+\037\271\173\323\007\071\344\372\076\173\262\075\116\355\237\043
+\275\227\363\153\134\357\356\375\100\246\337\241\223\241\012\206
+\254\357\040\320\171\001\275\170\367\031\330\044\061\064\004\001
+\246\272\025\232\303\047\334\330\117\017\314\030\143\377\231\017
+\016\221\153\165\026\341\041\374\330\046\307\107\267\246\317\130
+\162\161\176\272\341\115\225\107\073\311\257\155\241\264\301\354
+\211\366\264\017\070\265\342\144\334\045\317\246\333\353\232\134
+\231\241\305\010\336\375\346\332\325\326\132\105\014\304\267\302
+\265\024\357\264\021\377\016\025\265\365\365\333\306\275\353\132
+\247\360\126\042\251\074\145\124\306\025\250\275\206\236\315\203
+\226\150\172\161\201\211\341\013\341\352\021\033\150\010\314\151
+\236\354\236\101\236\104\062\046\172\342\207\012\161\075\353\344
+\132\244\322\333\305\315\306\336\140\177\271\363\117\104\222\357
+\052\267\030\076\247\031\331\013\175\261\067\101\102\260\272\140
+\035\362\376\011\021\260\360\207\173\247\235
+END
+
+# Trust for "Atos TrustedRoot 2011"
+# Issuer: C=DE,O=Atos,CN=Atos TrustedRoot 2011
+# Serial Number:5c:33:cb:62:2c:5f:b3:32
+# Subject: C=DE,O=Atos,CN=Atos TrustedRoot 2011
+# Not Valid Before: Thu Jul 07 14:58:30 2011
+# Not Valid After : Tue Dec 31 23:59:59 2030
+# Fingerprint (MD5): AE:B9:C4:32:4B:AC:7F:5D:66:CC:77:94:BB:2A:77:56
+# Fingerprint (SHA1): 2B:B1:F5:3E:55:0C:1D:C5:F1:D4:E6:B7:6A:46:4B:55:06:02:AC:21
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Atos TrustedRoot 2011"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\053\261\365\076\125\014\035\305\361\324\346\267\152\106\113\125
+\006\002\254\041
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\256\271\304\062\113\254\177\135\146\314\167\224\273\052\167\126
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\074\061\036\060\034\006\003\125\004\003\014\025\101\164\157
+\163\040\124\162\165\163\164\145\144\122\157\157\164\040\062\060
+\061\061\061\015\060\013\006\003\125\004\012\014\004\101\164\157
+\163\061\013\060\011\006\003\125\004\006\023\002\104\105
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\010\134\063\313\142\054\137\263\062
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "QuoVadis Root CA 1 G3"
+#
+# Issuer: CN=QuoVadis Root CA 1 G3,O=QuoVadis Limited,C=BM
+# Serial Number:78:58:5f:2e:ad:2c:19:4b:e3:37:07:35:34:13:28:b5:96:d4:65:93
+# Subject: CN=QuoVadis Root CA 1 G3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Thu Jan 12 17:27:44 2012
+# Not Valid After : Sun Jan 12 17:27:44 2042
+# Fingerprint (SHA-256): 8A:86:6F:D1:B2:76:B5:7E:57:8E:92:1C:65:82:8A:2B:ED:58:E9:F2:F2:88:05:41:34:B7:F1:F4:BF:C9:CC:74
+# Fingerprint (SHA1): 1B:8E:EA:57:96:29:1A:C9:39:EA:B8:0A:81:1A:73:73:C0:93:79:67
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 1 G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\061\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\061\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\024\170\130\137\056\255\054\031\113\343\067\007\065\064\023
+\050\265\226\324\145\223
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\140\060\202\003\110\240\003\002\001\002\002\024\170
+\130\137\056\255\054\031\113\343\067\007\065\064\023\050\265\226
+\324\145\223\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\110\061\013\060\011\006\003\125\004\006\023\002\102
+\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157\126
+\141\144\151\163\040\114\151\155\151\164\145\144\061\036\060\034
+\006\003\125\004\003\023\025\121\165\157\126\141\144\151\163\040
+\122\157\157\164\040\103\101\040\061\040\107\063\060\036\027\015
+\061\062\060\061\061\062\061\067\062\067\064\064\132\027\015\064
+\062\060\061\061\062\061\067\062\067\064\064\132\060\110\061\013
+\060\011\006\003\125\004\006\023\002\102\115\061\031\060\027\006
+\003\125\004\012\023\020\121\165\157\126\141\144\151\163\040\114
+\151\155\151\164\145\144\061\036\060\034\006\003\125\004\003\023
+\025\121\165\157\126\141\144\151\163\040\122\157\157\164\040\103
+\101\040\061\040\107\063\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\240\276\120\020\216\351\362\154\100
+\264\004\234\205\271\061\312\334\055\344\021\251\004\074\033\125
+\301\347\130\060\035\044\264\303\357\205\336\214\054\341\301\075
+\337\202\346\117\255\107\207\154\354\133\111\301\112\325\273\217
+\354\207\254\177\202\232\206\354\075\003\231\122\001\322\065\236
+\254\332\360\123\311\146\074\324\254\002\001\332\044\323\073\250
+\002\106\257\244\034\343\370\163\130\166\267\366\016\220\015\265
+\360\317\314\372\371\306\114\345\303\206\060\012\215\027\176\065
+\353\305\337\273\016\234\300\215\207\343\210\070\205\147\372\076
+\307\253\340\023\234\005\030\230\317\223\365\261\222\264\374\043
+\323\317\325\304\047\111\340\236\074\233\010\243\213\135\052\041
+\340\374\071\252\123\332\175\176\317\032\011\123\274\135\005\004
+\317\241\112\217\213\166\202\015\241\370\322\307\024\167\133\220
+\066\007\201\233\076\006\372\122\136\143\305\246\000\376\245\351
+\122\033\122\265\222\071\162\003\011\142\275\260\140\026\156\246
+\335\045\302\003\146\335\363\004\321\100\342\116\213\206\364\157
+\345\203\240\047\204\136\004\301\365\220\275\060\075\304\357\250
+\151\274\070\233\244\244\226\321\142\332\151\300\001\226\256\313
+\304\121\064\352\014\252\377\041\216\131\217\112\134\344\141\232
+\247\322\351\052\170\215\121\075\072\025\356\242\131\216\251\134
+\336\305\371\220\042\345\210\105\161\335\221\231\154\172\237\075
+\075\230\174\136\366\276\026\150\240\136\256\013\043\374\132\017
+\252\042\166\055\311\241\020\035\344\323\104\043\220\210\237\306
+\052\346\327\365\232\263\130\036\057\060\211\010\033\124\242\265
+\230\043\354\010\167\034\225\135\141\321\313\211\234\137\242\112
+\221\232\357\041\252\111\026\010\250\275\141\050\061\311\164\255
+\205\366\331\305\261\213\321\345\020\062\115\137\213\040\072\074
+\111\037\063\205\131\015\333\313\011\165\103\151\163\373\153\161
+\175\360\337\304\114\175\306\243\056\310\225\171\313\163\242\216
+\116\115\044\373\136\344\004\276\162\033\246\047\055\111\132\231
+\172\327\134\011\040\267\177\224\271\117\361\015\034\136\210\102
+\033\021\267\347\221\333\236\154\364\152\337\214\006\230\003\255
+\314\050\357\245\107\363\123\002\003\001\000\001\243\102\060\100
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\035\006\003\125\035\016\004\026\004\024\243\227\326\363
+\136\242\020\341\253\105\237\074\027\144\074\356\001\160\234\314
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003
+\202\002\001\000\030\372\133\165\374\076\172\307\137\167\307\312
+\337\317\137\303\022\304\100\135\324\062\252\270\152\327\325\025
+\025\106\230\043\245\346\220\133\030\231\114\343\255\102\243\202
+\061\066\210\315\351\373\304\004\226\110\213\001\307\215\001\317
+\133\063\006\226\106\146\164\035\117\355\301\266\271\264\015\141
+\314\143\176\327\056\167\214\226\034\052\043\150\153\205\127\166
+\160\063\023\376\341\117\246\043\167\030\372\032\214\350\275\145
+\311\317\077\364\311\027\334\353\307\274\300\004\056\055\106\057
+\151\146\303\033\217\376\354\076\323\312\224\277\166\012\045\015
+\251\173\002\034\251\320\073\137\013\300\201\072\075\144\341\277
+\247\055\116\275\115\304\330\051\306\042\030\320\305\254\162\002
+\202\077\252\072\242\072\042\227\061\335\010\143\303\165\024\271
+\140\050\055\133\150\340\026\251\146\202\043\121\365\353\123\330
+\061\233\173\351\267\235\113\353\210\026\317\371\135\070\212\111
+\060\217\355\361\353\031\364\167\032\061\030\115\147\124\154\057
+\157\145\371\333\075\354\041\354\136\364\364\213\312\140\145\124
+\321\161\144\364\371\246\243\201\063\066\063\161\360\244\170\137
+\116\255\203\041\336\064\111\215\350\131\254\235\362\166\132\066
+\362\023\364\257\340\011\307\141\052\154\367\340\235\256\273\206
+\112\050\157\056\356\264\171\315\220\063\303\263\166\372\365\360
+\154\235\001\220\372\236\220\366\234\162\317\107\332\303\037\344
+\065\040\123\362\124\321\337\141\203\246\002\342\045\070\336\205
+\062\055\136\163\220\122\135\102\304\316\075\113\341\371\031\204
+\035\325\242\120\314\101\373\101\024\303\275\326\311\132\243\143
+\146\002\200\275\005\072\073\107\234\354\000\046\114\365\210\121
+\277\250\043\177\030\007\260\013\355\213\046\241\144\323\141\112
+\353\134\237\336\263\257\147\003\263\037\335\155\135\151\150\151
+\253\136\072\354\174\151\274\307\073\205\116\236\025\271\264\025
+\117\303\225\172\130\327\311\154\351\154\271\363\051\143\136\264
+\054\360\055\075\355\132\145\340\251\133\100\302\110\231\201\155
+\236\037\006\052\074\022\264\213\017\233\242\044\360\246\215\326
+\172\340\113\266\144\226\143\225\204\302\112\315\034\056\044\207
+\063\140\345\303
+END
+
+# Trust for "QuoVadis Root CA 1 G3"
+# Issuer: CN=QuoVadis Root CA 1 G3,O=QuoVadis Limited,C=BM
+# Serial Number:78:58:5f:2e:ad:2c:19:4b:e3:37:07:35:34:13:28:b5:96:d4:65:93
+# Subject: CN=QuoVadis Root CA 1 G3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Thu Jan 12 17:27:44 2012
+# Not Valid After : Sun Jan 12 17:27:44 2042
+# Fingerprint (SHA-256): 8A:86:6F:D1:B2:76:B5:7E:57:8E:92:1C:65:82:8A:2B:ED:58:E9:F2:F2:88:05:41:34:B7:F1:F4:BF:C9:CC:74
+# Fingerprint (SHA1): 1B:8E:EA:57:96:29:1A:C9:39:EA:B8:0A:81:1A:73:73:C0:93:79:67
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 1 G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\033\216\352\127\226\051\032\311\071\352\270\012\201\032\163\163
+\300\223\171\147
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\244\274\133\077\376\067\232\372\144\360\342\372\005\075\013\253
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\061\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\024\170\130\137\056\255\054\031\113\343\067\007\065\064\023
+\050\265\226\324\145\223
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "QuoVadis Root CA 2 G3"
+#
+# Issuer: CN=QuoVadis Root CA 2 G3,O=QuoVadis Limited,C=BM
+# Serial Number:44:57:34:24:5b:81:89:9b:35:f2:ce:b8:2b:3b:5b:a7:26:f0:75:28
+# Subject: CN=QuoVadis Root CA 2 G3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Thu Jan 12 18:59:32 2012
+# Not Valid After : Sun Jan 12 18:59:32 2042
+# Fingerprint (SHA-256): 8F:E4:FB:0A:F9:3A:4D:0D:67:DB:0B:EB:B2:3E:37:C7:1B:F3:25:DC:BC:DD:24:0E:A0:4D:AF:58:B4:7E:18:40
+# Fingerprint (SHA1): 09:3C:61:F3:8B:8B:DC:7D:55:DF:75:38:02:05:00:E1:25:F5:C8:36
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 2 G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\062\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\062\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\024\104\127\064\044\133\201\211\233\065\362\316\270\053\073
+\133\247\046\360\165\050
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\140\060\202\003\110\240\003\002\001\002\002\024\104
+\127\064\044\133\201\211\233\065\362\316\270\053\073\133\247\046
+\360\165\050\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\110\061\013\060\011\006\003\125\004\006\023\002\102
+\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157\126
+\141\144\151\163\040\114\151\155\151\164\145\144\061\036\060\034
+\006\003\125\004\003\023\025\121\165\157\126\141\144\151\163\040
+\122\157\157\164\040\103\101\040\062\040\107\063\060\036\027\015
+\061\062\060\061\061\062\061\070\065\071\063\062\132\027\015\064
+\062\060\061\061\062\061\070\065\071\063\062\132\060\110\061\013
+\060\011\006\003\125\004\006\023\002\102\115\061\031\060\027\006
+\003\125\004\012\023\020\121\165\157\126\141\144\151\163\040\114
+\151\155\151\164\145\144\061\036\060\034\006\003\125\004\003\023
+\025\121\165\157\126\141\144\151\163\040\122\157\157\164\040\103
+\101\040\062\040\107\063\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\241\256\045\262\001\030\334\127\210
+\077\106\353\371\257\342\353\043\161\342\232\321\141\146\041\137
+\252\257\047\121\345\156\033\026\324\055\175\120\260\123\167\275
+\170\072\140\342\144\002\233\174\206\233\326\032\216\255\377\037
+\025\177\325\225\036\022\313\346\024\204\004\301\337\066\263\026
+\237\212\343\311\333\230\064\316\330\063\027\050\106\374\247\311
+\360\322\264\325\115\011\162\111\371\362\207\343\251\332\175\241
+\175\153\262\072\045\251\155\122\104\254\370\276\156\373\334\246
+\163\221\220\141\246\003\024\040\362\347\207\243\210\255\255\240
+\214\377\246\013\045\122\045\347\026\001\325\313\270\065\201\014
+\243\073\360\341\341\374\132\135\316\200\161\155\370\111\253\076
+\073\272\270\327\200\001\373\245\353\133\263\305\136\140\052\061
+\240\257\067\350\040\072\237\250\062\054\014\314\011\035\323\236
+\216\135\274\114\230\356\305\032\150\173\354\123\246\351\024\065
+\243\337\315\200\237\014\110\373\034\364\361\277\112\270\372\325
+\214\161\112\307\037\255\376\101\232\263\203\135\362\204\126\357
+\245\127\103\316\051\255\214\253\125\277\304\373\133\001\335\043
+\041\241\130\000\216\303\320\152\023\355\023\343\022\053\200\334
+\147\346\225\262\315\036\042\156\052\370\101\324\362\312\024\007
+\215\212\125\022\306\151\365\270\206\150\057\123\136\260\322\252
+\041\301\230\346\060\343\147\125\307\233\156\254\031\250\125\246
+\105\006\320\043\072\333\353\145\135\052\021\021\360\073\117\312
+\155\364\064\304\161\344\377\000\132\366\134\256\043\140\205\163
+\361\344\020\261\045\256\325\222\273\023\301\014\340\071\332\264
+\071\127\265\253\065\252\162\041\073\203\065\347\061\337\172\041
+\156\270\062\010\175\035\062\221\025\112\142\162\317\343\167\241
+\274\325\021\033\166\001\147\010\340\101\013\303\353\025\156\370
+\244\031\331\242\253\257\342\047\122\126\053\002\212\054\024\044
+\371\277\102\002\277\046\310\306\217\340\156\070\175\123\055\345
+\355\230\263\225\143\150\177\371\065\364\337\210\305\140\065\222
+\300\174\151\034\141\225\026\320\353\336\013\257\076\004\020\105
+\145\130\120\070\257\110\362\131\266\026\362\074\015\220\002\306
+\160\056\001\255\074\025\327\002\003\001\000\001\243\102\060\100
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\035\006\003\125\035\016\004\026\004\024\355\347\157\166
+\132\277\140\354\111\133\306\245\167\273\162\026\161\233\304\075
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003
+\202\002\001\000\221\337\200\077\103\011\176\161\302\367\353\263
+\210\217\341\121\262\274\075\165\371\050\135\310\274\231\233\173
+\135\252\345\312\341\012\367\350\262\323\237\335\147\061\176\272
+\001\252\307\152\101\073\220\324\010\134\262\140\152\220\360\310
+\316\003\142\371\213\355\373\156\052\334\006\115\074\051\017\211
+\026\212\130\114\110\017\350\204\141\352\074\162\246\167\344\102
+\256\210\243\103\130\171\176\256\312\245\123\015\251\075\160\275
+\040\031\141\244\154\070\374\103\062\341\301\107\377\370\354\361
+\021\042\062\226\234\302\366\133\151\226\173\040\014\103\101\232
+\133\366\131\031\210\336\125\210\067\121\013\170\134\012\036\243
+\102\375\307\235\210\017\300\362\170\002\044\124\223\257\211\207
+\210\311\112\200\035\352\320\156\076\141\056\066\273\065\016\047
+\226\375\146\064\073\141\162\163\361\026\134\107\006\124\111\000
+\172\130\022\260\012\357\205\375\261\270\063\165\152\223\034\022
+\346\140\136\157\035\177\311\037\043\313\204\141\237\036\202\104
+\371\137\255\142\125\044\232\122\230\355\121\347\241\176\227\072
+\346\057\037\021\332\123\200\054\205\236\253\065\020\333\042\137
+\152\305\136\227\123\362\062\002\011\060\243\130\360\015\001\325
+\162\306\261\174\151\173\303\365\066\105\314\141\156\136\114\224
+\305\136\256\350\016\136\213\277\367\315\340\355\241\016\033\063
+\356\124\030\376\017\276\357\176\204\153\103\343\160\230\333\135
+\165\262\015\131\007\205\025\043\071\326\361\337\251\046\017\326
+\110\307\263\246\042\365\063\067\132\225\107\237\173\272\030\025
+\157\377\326\024\144\203\111\322\012\147\041\333\017\065\143\140
+\050\042\343\261\225\203\315\205\246\335\057\017\347\147\122\156
+\273\057\205\174\365\112\163\347\305\076\300\275\041\022\005\077
+\374\267\003\111\002\133\310\045\346\342\124\070\365\171\207\214
+\035\123\262\116\205\173\006\070\307\054\370\370\260\162\215\045
+\345\167\122\364\003\034\110\246\120\137\210\040\060\156\362\202
+\103\253\075\227\204\347\123\373\041\301\117\017\042\232\206\270
+\131\052\366\107\075\031\210\055\350\205\341\236\354\205\010\152
+\261\154\064\311\035\354\110\053\073\170\355\146\304\216\171\151
+\203\336\177\214
+END
+
+# Trust for "QuoVadis Root CA 2 G3"
+# Issuer: CN=QuoVadis Root CA 2 G3,O=QuoVadis Limited,C=BM
+# Serial Number:44:57:34:24:5b:81:89:9b:35:f2:ce:b8:2b:3b:5b:a7:26:f0:75:28
+# Subject: CN=QuoVadis Root CA 2 G3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Thu Jan 12 18:59:32 2012
+# Not Valid After : Sun Jan 12 18:59:32 2042
+# Fingerprint (SHA-256): 8F:E4:FB:0A:F9:3A:4D:0D:67:DB:0B:EB:B2:3E:37:C7:1B:F3:25:DC:BC:DD:24:0E:A0:4D:AF:58:B4:7E:18:40
+# Fingerprint (SHA1): 09:3C:61:F3:8B:8B:DC:7D:55:DF:75:38:02:05:00:E1:25:F5:C8:36
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 2 G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\011\074\141\363\213\213\334\175\125\337\165\070\002\005\000\341
+\045\365\310\066
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\257\014\206\156\277\100\055\177\013\076\022\120\272\022\075\006
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\062\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\024\104\127\064\044\133\201\211\233\065\362\316\270\053\073
+\133\247\046\360\165\050
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "QuoVadis Root CA 3 G3"
+#
+# Issuer: CN=QuoVadis Root CA 3 G3,O=QuoVadis Limited,C=BM
+# Serial Number:2e:f5:9b:02:28:a7:db:7a:ff:d5:a3:a9:ee:bd:03:a0:cf:12:6a:1d
+# Subject: CN=QuoVadis Root CA 3 G3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Thu Jan 12 20:26:32 2012
+# Not Valid After : Sun Jan 12 20:26:32 2042
+# Fingerprint (SHA-256): 88:EF:81:DE:20:2E:B0:18:45:2E:43:F8:64:72:5C:EA:5F:BD:1F:C2:D9:D2:05:73:07:09:C5:D8:B8:69:0F:46
+# Fingerprint (SHA1): 48:12:BD:92:3C:A8:C4:39:06:E7:30:6D:27:96:E6:A4:CF:22:2E:7D
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 3 G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\063\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\063\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\024\056\365\233\002\050\247\333\172\377\325\243\251\356\275
+\003\240\317\022\152\035
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\140\060\202\003\110\240\003\002\001\002\002\024\056
+\365\233\002\050\247\333\172\377\325\243\251\356\275\003\240\317
+\022\152\035\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\110\061\013\060\011\006\003\125\004\006\023\002\102
+\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157\126
+\141\144\151\163\040\114\151\155\151\164\145\144\061\036\060\034
+\006\003\125\004\003\023\025\121\165\157\126\141\144\151\163\040
+\122\157\157\164\040\103\101\040\063\040\107\063\060\036\027\015
+\061\062\060\061\061\062\062\060\062\066\063\062\132\027\015\064
+\062\060\061\061\062\062\060\062\066\063\062\132\060\110\061\013
+\060\011\006\003\125\004\006\023\002\102\115\061\031\060\027\006
+\003\125\004\012\023\020\121\165\157\126\141\144\151\163\040\114
+\151\155\151\164\145\144\061\036\060\034\006\003\125\004\003\023
+\025\121\165\157\126\141\144\151\163\040\122\157\157\164\040\103
+\101\040\063\040\107\063\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\263\313\016\020\147\216\352\024\227
+\247\062\052\012\126\066\177\150\114\307\263\157\072\043\024\221
+\377\031\177\245\312\254\356\263\166\235\172\351\213\033\253\153
+\061\333\372\013\123\114\257\305\245\032\171\074\212\114\377\254
+\337\045\336\116\331\202\062\013\104\336\312\333\214\254\243\156
+\026\203\073\246\144\113\062\211\373\026\026\070\176\353\103\342
+\323\164\112\302\142\012\163\012\335\111\263\127\322\260\012\205
+\235\161\074\336\243\313\300\062\363\001\071\040\103\033\065\321
+\123\263\261\356\305\223\151\202\076\026\265\050\106\241\336\352
+\211\011\355\103\270\005\106\212\206\365\131\107\276\033\157\001
+\041\020\271\375\251\322\050\312\020\071\011\312\023\066\317\234
+\255\255\100\164\171\053\002\077\064\377\372\040\151\175\323\356
+\141\365\272\263\347\060\320\067\043\206\162\141\105\051\110\131
+\150\157\167\246\056\201\276\007\115\157\257\316\304\105\023\221
+\024\160\006\217\037\237\370\207\151\261\016\357\303\211\031\353
+\352\034\141\374\172\154\212\334\326\003\013\236\046\272\022\335
+\324\124\071\253\046\243\063\352\165\201\332\055\315\017\117\344
+\003\321\357\025\227\033\153\220\305\002\220\223\146\002\041\261
+\107\336\213\232\112\200\271\125\217\265\242\057\300\326\063\147
+\332\176\304\247\264\004\104\353\107\373\346\130\271\367\014\360
+\173\053\261\300\160\051\303\100\142\055\073\110\151\334\043\074
+\110\353\173\011\171\251\155\332\250\060\230\317\200\162\003\210
+\246\133\106\256\162\171\174\010\003\041\145\256\267\341\034\245
+\261\052\242\061\336\146\004\367\300\164\350\161\336\377\075\131
+\314\226\046\022\213\205\225\127\032\253\153\165\013\104\075\021
+\050\074\173\141\267\342\217\147\117\345\354\074\114\140\200\151
+\127\070\036\001\133\215\125\350\307\337\300\314\167\043\064\111
+\165\174\366\230\021\353\055\336\355\101\056\024\005\002\177\340
+\376\040\353\065\347\021\254\042\316\127\075\336\311\060\155\020
+\003\205\315\361\377\214\026\265\301\262\076\210\154\140\177\220
+\117\225\367\366\055\255\001\071\007\004\372\165\200\175\277\111
+\120\355\357\311\304\174\034\353\200\176\333\266\320\335\023\376
+\311\323\234\327\262\227\251\002\003\001\000\001\243\102\060\100
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\035\006\003\125\035\016\004\026\004\024\306\027\320\274
+\250\352\002\103\362\033\006\231\135\053\220\040\271\327\234\344
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003
+\202\002\001\000\064\141\331\126\265\022\207\125\115\335\243\065
+\061\106\273\244\007\162\274\137\141\142\350\245\373\013\067\261
+\074\266\263\372\051\235\177\002\365\244\311\250\223\267\172\161
+\050\151\217\163\341\122\220\332\325\276\072\345\267\166\152\126
+\200\041\337\135\346\351\072\236\345\076\366\242\151\307\052\012
+\260\030\107\334\040\160\175\122\243\076\131\174\301\272\311\310
+\025\100\141\312\162\326\160\254\322\267\360\034\344\206\051\360
+\316\357\150\143\320\265\040\212\025\141\232\176\206\230\264\311
+\302\166\373\314\272\060\026\314\243\141\306\164\023\345\153\357
+\243\025\352\003\376\023\213\144\344\323\301\322\350\204\373\111
+\321\020\115\171\146\353\252\375\364\215\061\036\160\024\255\334
+\336\147\023\114\201\025\141\274\267\331\221\167\161\031\201\140
+\273\360\130\245\265\234\013\367\217\042\125\047\300\113\001\155
+\073\231\015\324\035\233\143\147\057\320\356\015\312\146\274\224
+\117\246\255\355\374\356\143\254\127\077\145\045\317\262\206\217
+\320\010\377\270\166\024\156\336\345\047\354\253\170\265\123\271
+\266\077\350\040\371\322\250\276\141\106\312\207\214\204\363\371
+\361\240\150\233\042\036\201\046\233\020\004\221\161\300\006\037
+\334\240\323\271\126\247\343\230\055\177\203\235\337\214\053\234
+\062\216\062\224\360\001\074\042\052\237\103\302\056\303\230\071
+\007\070\173\374\136\000\102\037\363\062\046\171\203\204\366\345
+\360\301\121\022\300\013\036\004\043\014\124\245\114\057\111\305
+\112\321\266\156\140\015\153\374\153\213\205\044\144\267\211\016
+\253\045\107\133\074\317\176\111\275\307\351\012\306\332\367\176
+\016\027\010\323\110\227\320\161\222\360\017\071\076\064\152\034
+\175\330\362\042\256\273\151\364\063\264\246\110\125\321\017\016
+\046\350\354\266\013\055\247\205\065\315\375\131\310\237\321\315
+\076\132\051\064\271\075\204\316\261\145\324\131\221\221\126\165
+\041\301\167\236\371\172\341\140\235\323\255\004\030\364\174\353
+\136\223\217\123\112\042\051\370\110\053\076\115\206\254\133\177
+\313\006\231\131\140\330\130\145\225\215\104\321\367\177\176\047
+\177\175\256\200\365\007\114\266\076\234\161\124\231\004\113\375
+\130\371\230\364
+END
+
+# Trust for "QuoVadis Root CA 3 G3"
+# Issuer: CN=QuoVadis Root CA 3 G3,O=QuoVadis Limited,C=BM
+# Serial Number:2e:f5:9b:02:28:a7:db:7a:ff:d5:a3:a9:ee:bd:03:a0:cf:12:6a:1d
+# Subject: CN=QuoVadis Root CA 3 G3,O=QuoVadis Limited,C=BM
+# Not Valid Before: Thu Jan 12 20:26:32 2012
+# Not Valid After : Sun Jan 12 20:26:32 2042
+# Fingerprint (SHA-256): 88:EF:81:DE:20:2E:B0:18:45:2E:43:F8:64:72:5C:EA:5F:BD:1F:C2:D9:D2:05:73:07:09:C5:D8:B8:69:0F:46
+# Fingerprint (SHA1): 48:12:BD:92:3C:A8:C4:39:06:E7:30:6D:27:96:E6:A4:CF:22:2E:7D
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "QuoVadis Root CA 3 G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\110\022\275\222\074\250\304\071\006\347\060\155\047\226\346\244
+\317\042\056\175
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\337\175\271\255\124\157\150\241\337\211\127\003\227\103\260\327
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\110\061\013\060\011\006\003\125\004\006\023\002\102\115\061
+\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144
+\151\163\040\114\151\155\151\164\145\144\061\036\060\034\006\003
+\125\004\003\023\025\121\165\157\126\141\144\151\163\040\122\157
+\157\164\040\103\101\040\063\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\024\056\365\233\002\050\247\333\172\377\325\243\251\356\275
+\003\240\317\022\152\035
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert Assured ID Root G2"
+#
+# Issuer: CN=DigiCert Assured ID Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:0b:93:1c:3a:d6:39:67:ea:67:23:bf:c3:af:9a:f4:4b
+# Subject: CN=DigiCert Assured ID Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 7D:05:EB:B6:82:33:9F:8C:94:51:EE:09:4E:EB:FE:FA:79:53:A1:14:ED:B2:F4:49:49:45:2F:AB:7D:2F:C1:85
+# Fingerprint (SHA1): A1:4B:48:D9:43:EE:0A:0E:40:90:4F:3C:E0:A4:C0:91:93:51:5D:3F
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Assured ID Root G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\013\223\034\072\326\071\147\352\147\043\277\303\257\232
+\364\113
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\226\060\202\002\176\240\003\002\001\002\002\020\013
+\223\034\072\326\071\147\352\147\043\277\303\257\232\364\113\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\145
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025\060
+\023\006\003\125\004\012\023\014\104\151\147\151\103\145\162\164
+\040\111\156\143\061\031\060\027\006\003\125\004\013\023\020\167
+\167\167\056\144\151\147\151\143\145\162\164\056\143\157\155\061
+\044\060\042\006\003\125\004\003\023\033\104\151\147\151\103\145
+\162\164\040\101\163\163\165\162\145\144\040\111\104\040\122\157
+\157\164\040\107\062\060\036\027\015\061\063\060\070\060\061\061
+\062\060\060\060\060\132\027\015\063\070\060\061\061\065\061\062
+\060\060\060\060\132\060\145\061\013\060\011\006\003\125\004\006
+\023\002\125\123\061\025\060\023\006\003\125\004\012\023\014\104
+\151\147\151\103\145\162\164\040\111\156\143\061\031\060\027\006
+\003\125\004\013\023\020\167\167\167\056\144\151\147\151\143\145
+\162\164\056\143\157\155\061\044\060\042\006\003\125\004\003\023
+\033\104\151\147\151\103\145\162\164\040\101\163\163\165\162\145
+\144\040\111\104\040\122\157\157\164\040\107\062\060\202\001\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\001\017\000\060\202\001\012\002\202\001\001\000\331\347\050
+\057\122\077\066\162\111\210\223\064\363\370\152\036\061\124\200
+\237\255\124\101\265\107\337\226\250\324\257\200\055\271\012\317
+\165\375\211\245\175\044\372\343\042\014\053\274\225\027\013\063
+\277\031\115\101\006\220\000\275\014\115\020\376\007\265\347\034
+\156\042\125\061\145\227\275\323\027\322\036\142\363\333\352\154
+\120\214\077\204\014\226\317\267\313\003\340\312\155\241\024\114
+\033\211\335\355\000\260\122\174\257\221\154\261\070\023\321\351
+\022\010\300\000\260\034\053\021\332\167\160\066\233\256\316\171
+\207\334\202\160\346\011\164\160\125\151\257\243\150\237\277\335
+\266\171\263\362\235\160\051\125\364\253\377\225\141\363\311\100
+\157\035\321\276\223\273\323\210\052\273\235\277\162\132\126\161
+\073\077\324\363\321\012\376\050\357\243\356\331\231\257\003\323
+\217\140\267\362\222\241\261\275\211\211\037\060\315\303\246\056
+\142\063\256\026\002\167\104\132\347\201\012\074\247\104\056\171
+\270\077\004\274\134\240\207\341\033\257\121\216\315\354\054\372
+\370\376\155\360\072\174\252\213\344\147\225\061\215\002\003\001
+\000\001\243\102\060\100\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\016\006\003\125\035\017\001\001
+\377\004\004\003\002\001\206\060\035\006\003\125\035\016\004\026
+\004\024\316\303\112\271\231\125\362\270\333\140\277\251\176\275
+\126\265\227\066\247\326\060\015\006\011\052\206\110\206\367\015
+\001\001\013\005\000\003\202\001\001\000\312\245\125\214\343\310
+\101\156\151\047\247\165\021\357\074\206\066\157\322\235\306\170
+\070\035\151\226\242\222\151\056\070\154\233\175\004\324\211\245
+\261\061\067\212\311\041\314\253\154\315\213\034\232\326\277\110
+\322\062\146\301\212\300\363\057\072\357\300\343\324\221\206\321
+\120\343\003\333\163\167\157\112\071\123\355\336\046\307\265\175
+\257\053\102\321\165\142\343\112\053\002\307\120\113\340\151\342
+\226\154\016\104\146\020\104\217\255\005\353\370\171\254\246\033
+\350\067\064\235\123\311\141\252\242\122\257\112\160\026\206\302
+\072\310\261\023\160\066\330\317\356\364\012\064\325\133\114\375
+\007\234\242\272\331\001\162\134\363\115\301\335\016\261\034\015
+\304\143\276\255\364\024\373\211\354\242\101\016\114\314\310\127
+\100\320\156\003\252\315\014\216\211\231\231\154\360\074\060\257
+\070\337\157\274\243\276\051\040\047\253\164\377\023\042\170\336
+\227\122\125\036\203\265\124\040\003\356\256\300\117\126\336\067
+\314\303\177\252\004\047\273\323\167\270\142\333\027\174\234\050
+\042\023\163\154\317\046\365\212\051\347
+END
+
+# Trust for "DigiCert Assured ID Root G2"
+# Issuer: CN=DigiCert Assured ID Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:0b:93:1c:3a:d6:39:67:ea:67:23:bf:c3:af:9a:f4:4b
+# Subject: CN=DigiCert Assured ID Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 7D:05:EB:B6:82:33:9F:8C:94:51:EE:09:4E:EB:FE:FA:79:53:A1:14:ED:B2:F4:49:49:45:2F:AB:7D:2F:C1:85
+# Fingerprint (SHA1): A1:4B:48:D9:43:EE:0A:0E:40:90:4F:3C:E0:A4:C0:91:93:51:5D:3F
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Assured ID Root G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\241\113\110\331\103\356\012\016\100\220\117\074\340\244\300\221
+\223\121\135\077
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\222\070\271\370\143\044\202\145\054\127\063\346\376\201\217\235
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\013\223\034\072\326\071\147\352\147\043\277\303\257\232
+\364\113
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert Assured ID Root G3"
+#
+# Issuer: CN=DigiCert Assured ID Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:0b:a1:5a:fa:1d:df:a0:b5:49:44:af:cd:24:a0:6c:ec
+# Subject: CN=DigiCert Assured ID Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 7E:37:CB:8B:4C:47:09:0C:AB:36:55:1B:A6:F4:5D:B8:40:68:0F:BA:16:6A:95:2D:B1:00:71:7F:43:05:3F:C2
+# Fingerprint (SHA1): F5:17:A2:4F:9A:48:C6:C9:F8:A2:00:26:9F:DC:0F:48:2C:AB:30:89
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Assured ID Root G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\013\241\132\372\035\337\240\265\111\104\257\315\044\240
+\154\354
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\106\060\202\001\315\240\003\002\001\002\002\020\013
+\241\132\372\035\337\240\265\111\104\257\315\044\240\154\354\060
+\012\006\010\052\206\110\316\075\004\003\003\060\145\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\025\060\023\006\003
+\125\004\012\023\014\104\151\147\151\103\145\162\164\040\111\156
+\143\061\031\060\027\006\003\125\004\013\023\020\167\167\167\056
+\144\151\147\151\143\145\162\164\056\143\157\155\061\044\060\042
+\006\003\125\004\003\023\033\104\151\147\151\103\145\162\164\040
+\101\163\163\165\162\145\144\040\111\104\040\122\157\157\164\040
+\107\063\060\036\027\015\061\063\060\070\060\061\061\062\060\060
+\060\060\132\027\015\063\070\060\061\061\065\061\062\060\060\060
+\060\132\060\145\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\025\060\023\006\003\125\004\012\023\014\104\151\147\151
+\103\145\162\164\040\111\156\143\061\031\060\027\006\003\125\004
+\013\023\020\167\167\167\056\144\151\147\151\143\145\162\164\056
+\143\157\155\061\044\060\042\006\003\125\004\003\023\033\104\151
+\147\151\103\145\162\164\040\101\163\163\165\162\145\144\040\111
+\104\040\122\157\157\164\040\107\063\060\166\060\020\006\007\052
+\206\110\316\075\002\001\006\005\053\201\004\000\042\003\142\000
+\004\031\347\274\254\104\145\355\315\270\077\130\373\215\261\127
+\251\104\055\005\025\362\357\013\377\020\164\237\265\142\122\137
+\146\176\037\345\334\033\105\171\013\314\306\123\012\235\215\135
+\002\331\251\131\336\002\132\366\225\052\016\215\070\112\212\111
+\306\274\306\003\070\007\137\125\332\176\011\156\342\177\136\320
+\105\040\017\131\166\020\326\240\044\360\055\336\066\362\154\051
+\071\243\102\060\100\060\017\006\003\125\035\023\001\001\377\004
+\005\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\206\060\035\006\003\125\035\016\004\026\004
+\024\313\320\275\251\341\230\005\121\241\115\067\242\203\171\316
+\215\035\052\344\204\060\012\006\010\052\206\110\316\075\004\003
+\003\003\147\000\060\144\002\060\045\244\201\105\002\153\022\113
+\165\164\117\310\043\343\160\362\165\162\336\174\211\360\317\221
+\162\141\236\136\020\222\131\126\271\203\307\020\347\070\351\130
+\046\066\175\325\344\064\206\071\002\060\174\066\123\360\060\345
+\142\143\072\231\342\266\243\073\233\064\372\036\332\020\222\161
+\136\221\023\247\335\244\156\222\314\062\326\365\041\146\307\057
+\352\226\143\152\145\105\222\225\001\264
+END
+
+# Trust for "DigiCert Assured ID Root G3"
+# Issuer: CN=DigiCert Assured ID Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:0b:a1:5a:fa:1d:df:a0:b5:49:44:af:cd:24:a0:6c:ec
+# Subject: CN=DigiCert Assured ID Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 7E:37:CB:8B:4C:47:09:0C:AB:36:55:1B:A6:F4:5D:B8:40:68:0F:BA:16:6A:95:2D:B1:00:71:7F:43:05:3F:C2
+# Fingerprint (SHA1): F5:17:A2:4F:9A:48:C6:C9:F8:A2:00:26:9F:DC:0F:48:2C:AB:30:89
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Assured ID Root G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\365\027\242\117\232\110\306\311\370\242\000\046\237\334\017\110
+\054\253\060\211
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\174\177\145\061\014\201\337\215\272\076\231\342\134\255\156\373
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\145\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\044\060\042\006\003\125\004\003\023\033\104\151\147\151
+\103\145\162\164\040\101\163\163\165\162\145\144\040\111\104\040
+\122\157\157\164\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\013\241\132\372\035\337\240\265\111\104\257\315\044\240
+\154\354
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert Global Root G2"
+#
+# Issuer: CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:03:3a:f1:e6:a7:11:a9:a0:bb:28:64:b1:1d:09:fa:e5
+# Subject: CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F
+# Fingerprint (SHA1): DF:3C:24:F9:BF:D6:66:76:1B:26:80:73:FE:06:D1:CC:8D:4F:82:A4
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Global Root G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\003\072\361\346\247\021\251\240\273\050\144\261\035\011
+\372\345
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\216\060\202\002\166\240\003\002\001\002\002\020\003
+\072\361\346\247\021\251\240\273\050\144\261\035\011\372\345\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\141
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025\060
+\023\006\003\125\004\012\023\014\104\151\147\151\103\145\162\164
+\040\111\156\143\061\031\060\027\006\003\125\004\013\023\020\167
+\167\167\056\144\151\147\151\143\145\162\164\056\143\157\155\061
+\040\060\036\006\003\125\004\003\023\027\104\151\147\151\103\145
+\162\164\040\107\154\157\142\141\154\040\122\157\157\164\040\107
+\062\060\036\027\015\061\063\060\070\060\061\061\062\060\060\060
+\060\132\027\015\063\070\060\061\061\065\061\062\060\060\060\060
+\132\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103
+\145\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013
+\023\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143
+\157\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147
+\151\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157
+\164\040\107\062\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\273\067\315\064\334\173\153\311\262\150\220
+\255\112\165\377\106\272\041\012\010\215\365\031\124\311\373\210
+\333\363\256\362\072\211\221\074\172\346\253\006\032\153\317\254
+\055\350\136\011\044\104\272\142\232\176\326\243\250\176\340\124
+\165\040\005\254\120\267\234\143\032\154\060\334\332\037\031\261
+\327\036\336\375\327\340\313\224\203\067\256\354\037\103\116\335
+\173\054\322\275\056\245\057\344\251\270\255\072\324\231\244\266
+\045\351\233\153\000\140\222\140\377\117\041\111\030\367\147\220
+\253\141\006\234\217\362\272\351\264\351\222\062\153\265\363\127
+\350\135\033\315\214\035\253\225\004\225\111\363\065\055\226\343
+\111\155\335\167\343\373\111\113\264\254\125\007\251\217\225\263
+\264\043\273\114\155\105\360\366\251\262\225\060\264\375\114\125
+\214\047\112\127\024\174\202\235\315\163\222\323\026\112\006\014
+\214\120\321\217\036\011\276\027\241\346\041\312\375\203\345\020
+\274\203\245\012\304\147\050\366\163\024\024\075\106\166\303\207
+\024\211\041\064\115\257\017\105\014\246\111\241\272\273\234\305
+\261\063\203\051\205\002\003\001\000\001\243\102\060\100\060\017
+\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060
+\016\006\003\125\035\017\001\001\377\004\004\003\002\001\206\060
+\035\006\003\125\035\016\004\026\004\024\116\042\124\040\030\225
+\346\343\156\346\017\372\372\271\022\355\006\027\217\071\060\015
+\006\011\052\206\110\206\367\015\001\001\013\005\000\003\202\001
+\001\000\140\147\050\224\157\016\110\143\353\061\335\352\147\030
+\325\211\175\074\305\213\112\177\351\276\333\053\027\337\260\137
+\163\167\052\062\023\071\201\147\102\204\043\362\105\147\065\354
+\210\277\370\217\260\141\014\064\244\256\040\114\204\306\333\370
+\065\341\166\331\337\246\102\273\307\104\010\206\177\066\164\044
+\132\332\154\015\024\131\065\275\362\111\335\266\037\311\263\015
+\107\052\075\231\057\273\134\273\265\324\040\341\231\137\123\106
+\025\333\150\233\360\363\060\325\076\061\342\215\204\236\343\212
+\332\332\226\076\065\023\245\137\360\371\160\120\160\107\101\021
+\127\031\116\300\217\256\006\304\225\023\027\057\033\045\237\165
+\362\261\216\231\241\157\023\261\101\161\376\210\052\310\117\020
+\040\125\327\363\024\105\345\340\104\364\352\207\225\062\223\016
+\376\123\106\372\054\235\377\213\042\271\113\331\011\105\244\336
+\244\270\232\130\335\033\175\122\237\216\131\103\210\201\244\236
+\046\325\157\255\335\015\306\067\175\355\003\222\033\345\167\137
+\166\356\074\215\304\135\126\133\242\331\146\156\263\065\067\345
+\062\266
+END
+
+# Trust for "DigiCert Global Root G2"
+# Issuer: CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:03:3a:f1:e6:a7:11:a9:a0:bb:28:64:b1:1d:09:fa:e5
+# Subject: CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F
+# Fingerprint (SHA1): DF:3C:24:F9:BF:D6:66:76:1B:26:80:73:FE:06:D1:CC:8D:4F:82:A4
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Global Root G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\337\074\044\371\277\326\146\166\033\046\200\163\376\006\321\314
+\215\117\202\244
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\344\246\212\310\124\254\122\102\106\012\375\162\110\033\052\104
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\107\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\003\072\361\346\247\021\251\240\273\050\144\261\035\011
+\372\345
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert Global Root G3"
+#
+# Issuer: CN=DigiCert Global Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:05:55:56:bc:f2:5e:a4:35:35:c3:a4:0f:d5:ab:45:72
+# Subject: CN=DigiCert Global Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 31:AD:66:48:F8:10:41:38:C7:38:F3:9E:A4:32:01:33:39:3E:3A:18:CC:02:29:6E:F9:7C:2A:C9:EF:67:31:D0
+# Fingerprint (SHA1): 7E:04:DE:89:6A:3E:66:6D:00:E6:87:D3:3F:FA:D9:3B:E8:3D:34:9E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Global Root G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\005\125\126\274\362\136\244\065\065\303\244\017\325\253
+\105\162
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\077\060\202\001\305\240\003\002\001\002\002\020\005
+\125\126\274\362\136\244\065\065\303\244\017\325\253\105\162\060
+\012\006\010\052\206\110\316\075\004\003\003\060\141\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\025\060\023\006\003
+\125\004\012\023\014\104\151\147\151\103\145\162\164\040\111\156
+\143\061\031\060\027\006\003\125\004\013\023\020\167\167\167\056
+\144\151\147\151\143\145\162\164\056\143\157\155\061\040\060\036
+\006\003\125\004\003\023\027\104\151\147\151\103\145\162\164\040
+\107\154\157\142\141\154\040\122\157\157\164\040\107\063\060\036
+\027\015\061\063\060\070\060\061\061\062\060\060\060\060\132\027
+\015\063\070\060\061\061\065\061\062\060\060\060\060\132\060\141
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025\060
+\023\006\003\125\004\012\023\014\104\151\147\151\103\145\162\164
+\040\111\156\143\061\031\060\027\006\003\125\004\013\023\020\167
+\167\167\056\144\151\147\151\143\145\162\164\056\143\157\155\061
+\040\060\036\006\003\125\004\003\023\027\104\151\147\151\103\145
+\162\164\040\107\154\157\142\141\154\040\122\157\157\164\040\107
+\063\060\166\060\020\006\007\052\206\110\316\075\002\001\006\005
+\053\201\004\000\042\003\142\000\004\335\247\331\273\212\270\013
+\373\013\177\041\322\360\276\276\163\363\063\135\032\274\064\352
+\336\306\233\274\320\225\366\360\314\320\013\272\141\133\121\106
+\176\236\055\237\356\216\143\014\027\354\007\160\365\317\204\056
+\100\203\234\350\077\101\155\073\255\323\244\024\131\066\170\235
+\003\103\356\020\023\154\162\336\256\210\247\241\153\265\103\316
+\147\334\043\377\003\034\243\342\076\243\102\060\100\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\206\060\035
+\006\003\125\035\016\004\026\004\024\263\333\110\244\371\241\305
+\330\256\066\101\314\021\143\151\142\051\274\113\306\060\012\006
+\010\052\206\110\316\075\004\003\003\003\150\000\060\145\002\061
+\000\255\274\362\154\077\022\112\321\055\071\303\012\011\227\163
+\364\210\066\214\210\047\273\346\210\215\120\205\247\143\371\236
+\062\336\146\223\017\361\314\261\011\217\335\154\253\372\153\177
+\240\002\060\071\146\133\302\144\215\270\236\120\334\250\325\111
+\242\355\307\334\321\111\177\027\001\270\310\206\217\116\214\210
+\053\250\232\251\212\305\321\000\275\370\124\342\232\345\133\174
+\263\047\027
+END
+
+# Trust for "DigiCert Global Root G3"
+# Issuer: CN=DigiCert Global Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:05:55:56:bc:f2:5e:a4:35:35:c3:a4:0f:d5:ab:45:72
+# Subject: CN=DigiCert Global Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 31:AD:66:48:F8:10:41:38:C7:38:F3:9E:A4:32:01:33:39:3E:3A:18:CC:02:29:6E:F9:7C:2A:C9:EF:67:31:D0
+# Fingerprint (SHA1): 7E:04:DE:89:6A:3E:66:6D:00:E6:87:D3:3F:FA:D9:3B:E8:3D:34:9E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Global Root G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\176\004\336\211\152\076\146\155\000\346\207\323\077\372\331\073
+\350\075\064\236
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\365\135\244\120\245\373\050\176\036\017\015\314\226\127\126\312
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\141\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\040\060\036\006\003\125\004\003\023\027\104\151\147\151
+\103\145\162\164\040\107\154\157\142\141\154\040\122\157\157\164
+\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\005\125\126\274\362\136\244\065\065\303\244\017\325\253
+\105\162
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "DigiCert Trusted Root G4"
+#
+# Issuer: CN=DigiCert Trusted Root G4,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:05:9b:1b:57:9e:8e:21:32:e2:39:07:bd:a7:77:75:5c
+# Subject: CN=DigiCert Trusted Root G4,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 55:2F:7B:DC:F1:A7:AF:9E:6C:E6:72:01:7F:4F:12:AB:F7:72:40:C7:8E:76:1A:C2:03:D1:D9:D2:0A:C8:99:88
+# Fingerprint (SHA1): DD:FB:16:CD:49:31:C9:73:A2:03:7D:3F:C8:3A:4D:7D:77:5D:05:E4
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Trusted Root G4"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\142\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\041\060\037\006\003\125\004\003\023\030\104\151\147\151
+\103\145\162\164\040\124\162\165\163\164\145\144\040\122\157\157
+\164\040\107\064
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\142\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\041\060\037\006\003\125\004\003\023\030\104\151\147\151
+\103\145\162\164\040\124\162\165\163\164\145\144\040\122\157\157
+\164\040\107\064
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\005\233\033\127\236\216\041\062\342\071\007\275\247\167
+\165\134
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\220\060\202\003\170\240\003\002\001\002\002\020\005
+\233\033\127\236\216\041\062\342\071\007\275\247\167\165\134\060
+\015\006\011\052\206\110\206\367\015\001\001\014\005\000\060\142
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\025\060
+\023\006\003\125\004\012\023\014\104\151\147\151\103\145\162\164
+\040\111\156\143\061\031\060\027\006\003\125\004\013\023\020\167
+\167\167\056\144\151\147\151\143\145\162\164\056\143\157\155\061
+\041\060\037\006\003\125\004\003\023\030\104\151\147\151\103\145
+\162\164\040\124\162\165\163\164\145\144\040\122\157\157\164\040
+\107\064\060\036\027\015\061\063\060\070\060\061\061\062\060\060
+\060\060\132\027\015\063\070\060\061\061\065\061\062\060\060\060
+\060\132\060\142\061\013\060\011\006\003\125\004\006\023\002\125
+\123\061\025\060\023\006\003\125\004\012\023\014\104\151\147\151
+\103\145\162\164\040\111\156\143\061\031\060\027\006\003\125\004
+\013\023\020\167\167\167\056\144\151\147\151\143\145\162\164\056
+\143\157\155\061\041\060\037\006\003\125\004\003\023\030\104\151
+\147\151\103\145\162\164\040\124\162\165\163\164\145\144\040\122
+\157\157\164\040\107\064\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\277\346\220\163\150\336\273\344\135
+\112\074\060\042\060\151\063\354\302\247\045\056\311\041\075\362
+\212\330\131\302\341\051\247\075\130\253\166\232\315\256\173\033
+\204\015\304\060\037\363\033\244\070\026\353\126\306\227\155\035
+\253\262\171\362\312\021\322\344\137\326\005\074\122\017\122\037
+\306\236\025\245\176\276\237\251\127\026\131\125\162\257\150\223
+\160\302\262\272\165\231\152\163\062\224\321\020\104\020\056\337
+\202\363\007\204\346\164\073\155\161\342\055\014\033\356\040\325
+\311\040\035\143\051\055\316\354\136\116\310\223\370\041\141\233
+\064\353\005\306\136\354\133\032\274\353\311\317\315\254\064\100
+\137\261\172\146\356\167\310\110\250\146\127\127\237\124\130\216
+\014\053\267\117\247\060\331\126\356\312\173\135\343\255\311\117
+\136\345\065\347\061\313\332\223\136\334\216\217\200\332\266\221
+\230\100\220\171\303\170\307\266\261\304\265\152\030\070\003\020
+\215\330\324\067\244\056\005\175\210\365\202\076\020\221\160\253
+\125\202\101\062\327\333\004\163\052\156\221\001\174\041\114\324
+\274\256\033\003\165\135\170\146\331\072\061\104\232\063\100\277
+\010\327\132\111\244\302\346\251\240\147\335\244\047\274\241\117
+\071\265\021\130\027\367\044\134\106\217\144\367\301\151\210\166
+\230\166\075\131\135\102\166\207\211\227\151\172\110\360\340\242
+\022\033\146\232\164\312\336\113\036\347\016\143\256\346\324\357
+\222\222\072\236\075\334\000\344\105\045\211\266\232\104\031\053
+\176\300\224\264\322\141\155\353\063\331\305\337\113\004\000\314
+\175\034\225\303\217\367\041\262\262\021\267\273\177\362\325\214
+\160\054\101\140\252\261\143\030\104\225\032\166\142\176\366\200
+\260\373\350\144\246\063\321\211\007\341\275\267\346\103\244\030
+\270\246\167\001\341\017\224\014\041\035\262\124\051\045\211\154
+\345\016\122\121\107\164\276\046\254\266\101\165\336\172\254\137
+\215\077\311\274\323\101\021\022\133\345\020\120\353\061\305\312
+\162\026\042\011\337\174\114\165\077\143\354\041\137\304\040\121
+\153\157\261\253\206\213\117\302\326\105\137\235\040\374\241\036
+\305\300\217\242\261\176\012\046\231\365\344\151\057\230\035\055
+\365\331\251\262\035\345\033\002\003\001\000\001\243\102\060\100
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\206\060\035\006\003\125\035\016\004\026\004\024\354\327\343\202
+\322\161\135\144\114\337\056\147\077\347\272\230\256\034\017\117
+\060\015\006\011\052\206\110\206\367\015\001\001\014\005\000\003
+\202\002\001\000\273\141\331\175\251\154\276\027\304\221\033\303
+\241\242\000\215\343\144\150\017\126\317\167\256\160\371\375\232
+\112\231\271\311\170\134\014\014\137\344\346\024\051\126\013\066
+\111\135\104\143\340\255\234\226\030\146\033\043\015\075\171\351
+\155\153\326\124\370\322\074\301\103\100\256\035\120\365\122\374
+\220\073\273\230\231\151\153\307\301\247\250\150\244\047\334\235
+\371\047\256\060\205\271\366\147\115\072\076\217\131\071\042\123
+\104\353\310\135\003\312\355\120\172\175\142\041\012\200\310\163
+\146\321\240\005\140\137\350\245\264\247\257\250\367\155\065\234
+\174\132\212\326\242\070\231\363\170\213\364\115\322\040\013\336
+\004\356\214\233\107\201\162\015\300\024\062\357\060\131\056\256
+\340\161\362\126\344\152\227\157\222\120\155\226\215\150\172\232
+\262\066\024\172\006\362\044\271\011\021\120\327\010\261\270\211
+\172\204\043\141\102\051\345\243\315\242\040\101\327\321\234\144
+\331\352\046\241\213\024\327\114\031\262\120\101\161\075\077\115
+\160\043\206\014\112\334\201\322\314\062\224\204\015\010\011\227
+\034\117\300\356\153\040\164\060\322\340\071\064\020\205\041\025
+\001\010\350\125\062\336\161\111\331\050\027\120\115\346\276\115
+\321\165\254\320\312\373\101\270\103\245\252\323\303\005\104\117
+\054\066\233\342\372\342\105\270\043\123\154\006\157\147\125\177
+\106\265\114\077\156\050\132\171\046\322\244\250\142\227\322\036
+\342\355\112\213\274\033\375\107\112\015\337\147\146\176\262\133
+\101\320\073\344\364\073\364\004\143\351\357\302\124\000\121\240
+\212\052\311\316\170\314\325\352\207\004\030\263\316\257\111\210
+\257\363\222\231\266\263\346\141\017\322\205\000\347\120\032\344
+\033\225\235\031\241\271\234\261\233\261\000\036\357\320\017\117
+\102\154\311\012\274\356\103\372\072\161\245\310\115\046\245\065
+\375\211\135\274\205\142\035\062\322\240\053\124\355\232\127\301
+\333\372\020\317\031\267\213\112\033\217\001\266\047\225\123\350
+\266\211\155\133\274\150\324\043\350\213\121\242\126\371\360\246
+\200\240\326\036\263\274\017\017\123\165\051\252\352\023\167\344
+\336\214\201\041\255\007\020\107\021\255\207\075\007\321\165\274
+\317\363\146\176
+END
+
+# Trust for "DigiCert Trusted Root G4"
+# Issuer: CN=DigiCert Trusted Root G4,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Serial Number:05:9b:1b:57:9e:8e:21:32:e2:39:07:bd:a7:77:75:5c
+# Subject: CN=DigiCert Trusted Root G4,OU=www.digicert.com,O=DigiCert Inc,C=US
+# Not Valid Before: Thu Aug 01 12:00:00 2013
+# Not Valid After : Fri Jan 15 12:00:00 2038
+# Fingerprint (SHA-256): 55:2F:7B:DC:F1:A7:AF:9E:6C:E6:72:01:7F:4F:12:AB:F7:72:40:C7:8E:76:1A:C2:03:D1:D9:D2:0A:C8:99:88
+# Fingerprint (SHA1): DD:FB:16:CD:49:31:C9:73:A2:03:7D:3F:C8:3A:4D:7D:77:5D:05:E4
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "DigiCert Trusted Root G4"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\335\373\026\315\111\061\311\163\242\003\175\077\310\072\115\175
+\167\135\005\344
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\170\362\374\252\140\037\057\264\353\311\067\272\123\056\165\111
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\142\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\025\060\023\006\003\125\004\012\023\014\104\151\147\151\103\145
+\162\164\040\111\156\143\061\031\060\027\006\003\125\004\013\023
+\020\167\167\167\056\144\151\147\151\143\145\162\164\056\143\157
+\155\061\041\060\037\006\003\125\004\003\023\030\104\151\147\151
+\103\145\162\164\040\124\162\165\163\164\145\144\040\122\157\157
+\164\040\107\064
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\005\233\033\127\236\216\041\062\342\071\007\275\247\167
+\165\134
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "WoSign"
+#
+# Issuer: CN=Certification Authority of WoSign,O=WoSign CA Limited,C=CN
+# Serial Number:5e:68:d6:11:71:94:63:50:56:00:68:f3:3e:c9:c5:91
+# Subject: CN=Certification Authority of WoSign,O=WoSign CA Limited,C=CN
+# Not Valid Before: Sat Aug 08 01:00:01 2009
+# Not Valid After : Mon Aug 08 01:00:01 2039
+# Fingerprint (SHA-256): 4B:22:D5:A6:AE:C9:9F:3C:DB:79:AA:5E:C0:68:38:47:9C:D5:EC:BA:71:64:F7:F2:2D:C1:D6:5F:63:D8:57:08
+# Fingerprint (SHA1): B9:42:94:BF:91:EA:8F:B6:4B:E6:10:97:C7:FB:00:13:59:B6:76:CB
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "WoSign"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\125\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\032\060\030\006\003\125\004\012\023\021\127\157\123\151\147\156
+\040\103\101\040\114\151\155\151\164\145\144\061\052\060\050\006
+\003\125\004\003\023\041\103\145\162\164\151\146\151\143\141\164
+\151\157\156\040\101\165\164\150\157\162\151\164\171\040\157\146
+\040\127\157\123\151\147\156
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\125\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\032\060\030\006\003\125\004\012\023\021\127\157\123\151\147\156
+\040\103\101\040\114\151\155\151\164\145\144\061\052\060\050\006
+\003\125\004\003\023\041\103\145\162\164\151\146\151\143\141\164
+\151\157\156\040\101\165\164\150\157\162\151\164\171\040\157\146
+\040\127\157\123\151\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\136\150\326\021\161\224\143\120\126\000\150\363\076\311
+\305\221
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\166\060\202\003\136\240\003\002\001\002\002\020\136
+\150\326\021\161\224\143\120\126\000\150\363\076\311\305\221\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\125
+\061\013\060\011\006\003\125\004\006\023\002\103\116\061\032\060
+\030\006\003\125\004\012\023\021\127\157\123\151\147\156\040\103
+\101\040\114\151\155\151\164\145\144\061\052\060\050\006\003\125
+\004\003\023\041\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\040\157\146\040\127
+\157\123\151\147\156\060\036\027\015\060\071\060\070\060\070\060
+\061\060\060\060\061\132\027\015\063\071\060\070\060\070\060\061
+\060\060\060\061\132\060\125\061\013\060\011\006\003\125\004\006
+\023\002\103\116\061\032\060\030\006\003\125\004\012\023\021\127
+\157\123\151\147\156\040\103\101\040\114\151\155\151\164\145\144
+\061\052\060\050\006\003\125\004\003\023\041\103\145\162\164\151
+\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151
+\164\171\040\157\146\040\127\157\123\151\147\156\060\202\002\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\002\017\000\060\202\002\012\002\202\002\001\000\275\312\215
+\254\270\221\025\126\227\173\153\134\172\302\336\153\331\241\260
+\303\020\043\372\247\241\262\314\061\372\076\331\246\051\157\026
+\075\340\153\370\270\100\137\333\071\250\000\172\213\240\115\124
+\175\302\042\170\374\216\011\270\250\205\327\314\225\227\113\164
+\330\236\176\360\000\344\016\211\256\111\050\104\032\020\231\062
+\017\045\210\123\244\015\263\017\022\010\026\013\003\161\047\034
+\177\341\333\322\375\147\150\304\005\135\012\016\135\160\327\330
+\227\240\274\123\101\232\221\215\364\236\066\146\172\176\126\301
+\220\137\346\261\150\040\066\244\214\044\054\054\107\013\131\166
+\146\060\265\276\336\355\217\370\235\323\273\001\060\346\362\363
+\016\340\054\222\200\363\205\371\050\212\264\124\056\232\355\367
+\166\374\025\150\026\353\112\154\353\056\022\217\324\317\376\014
+\307\134\035\013\176\005\062\276\136\260\011\052\102\325\311\116
+\220\263\131\015\273\172\176\315\325\010\132\264\177\330\034\151
+\021\371\047\017\173\006\257\124\203\030\173\341\335\124\172\121
+\150\156\167\374\306\277\122\112\146\106\241\262\147\032\273\243
+\117\167\240\276\135\377\374\126\013\103\162\167\220\312\236\371
+\362\071\365\015\251\364\352\327\347\263\020\057\060\102\067\041
+\314\060\160\311\206\230\017\314\130\115\203\273\175\345\032\245
+\067\215\266\254\062\227\000\072\143\161\044\036\236\067\304\377
+\164\324\067\300\342\376\210\106\140\021\335\010\077\120\066\253
+\270\172\244\225\142\152\156\260\312\152\041\132\151\363\363\373
+\035\160\071\225\363\247\156\246\201\211\241\210\305\073\161\312
+\243\122\356\203\273\375\240\167\364\344\157\347\102\333\155\112
+\231\212\064\110\274\027\334\344\200\010\042\266\362\061\300\077
+\004\076\353\237\040\171\326\270\006\144\144\002\061\327\251\315
+\122\373\204\105\151\011\000\052\334\125\213\304\006\106\113\300
+\112\035\011\133\071\050\375\251\253\316\000\371\056\110\113\046
+\346\060\114\245\130\312\264\104\202\117\347\221\036\063\303\260
+\223\377\021\374\201\322\312\037\161\051\335\166\117\222\045\257
+\035\201\267\017\057\214\303\006\314\057\047\243\112\344\016\231
+\272\174\036\105\037\177\252\031\105\226\375\374\075\002\003\001
+\000\001\243\102\060\100\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\035\006\003\125\035\016\004\026
+\004\024\341\146\317\016\321\361\263\113\267\006\040\024\376\207
+\022\325\366\376\373\076\060\015\006\011\052\206\110\206\367\015
+\001\001\005\005\000\003\202\002\001\000\250\313\162\100\262\166
+\301\176\173\374\255\144\343\062\173\314\074\266\135\106\323\365
+\054\342\160\135\310\056\330\006\175\230\321\013\041\240\211\131
+\044\001\235\371\257\011\175\012\043\202\064\325\374\174\162\231
+\271\243\327\124\364\352\122\160\016\305\365\326\073\341\072\011
+\062\346\041\071\223\275\263\025\352\117\152\364\365\213\077\057
+\174\215\130\056\305\341\071\240\076\307\075\112\163\236\100\172
+\300\053\141\251\147\311\363\044\271\263\155\125\054\132\035\236
+\045\162\316\013\255\252\307\125\142\013\276\373\143\263\141\104
+\043\243\313\341\032\016\367\232\006\115\336\324\043\116\041\226
+\133\071\133\127\035\057\135\010\136\011\171\377\174\227\265\115
+\203\256\015\326\346\243\171\340\063\320\231\226\002\060\247\076
+\377\322\243\103\077\005\132\006\352\104\002\332\174\370\110\320
+\063\251\371\007\307\225\341\365\076\365\135\161\272\362\225\251
+\164\210\141\131\343\277\312\132\023\272\162\264\214\135\066\207
+\351\246\305\074\023\277\336\320\104\046\356\267\354\056\160\372
+\327\235\267\254\345\305\100\132\346\327\154\173\054\303\126\233
+\107\315\013\316\372\033\264\041\327\267\146\270\364\045\060\213
+\134\015\271\352\147\262\364\155\256\325\241\236\117\330\237\351
+\047\002\260\035\006\326\217\343\373\110\022\237\177\021\241\020
+\076\114\121\072\226\260\321\023\361\307\330\046\256\072\312\221
+\304\151\235\337\001\051\144\121\157\150\332\024\354\010\101\227
+\220\215\320\262\200\362\317\302\075\277\221\150\305\200\147\036
+\304\140\023\125\325\141\231\127\174\272\225\017\141\111\072\312
+\165\274\311\012\223\077\147\016\022\362\050\342\061\033\300\127
+\026\337\010\174\031\301\176\017\037\205\036\012\066\174\133\176
+\047\274\172\277\340\333\364\332\122\275\336\014\124\160\061\221
+\103\225\310\274\360\076\335\011\176\060\144\120\355\177\001\244
+\063\147\115\150\117\276\025\357\260\366\002\021\242\033\023\045
+\072\334\302\131\361\343\134\106\273\147\054\002\106\352\036\110
+\246\346\133\331\265\274\121\242\222\226\333\252\306\067\042\246
+\376\314\040\164\243\055\251\056\153\313\300\202\021\041\265\223
+\171\356\104\206\276\327\036\344\036\373
+END
+
+# Trust for "WoSign"
+# Issuer: CN=Certification Authority of WoSign,O=WoSign CA Limited,C=CN
+# Serial Number:5e:68:d6:11:71:94:63:50:56:00:68:f3:3e:c9:c5:91
+# Subject: CN=Certification Authority of WoSign,O=WoSign CA Limited,C=CN
+# Not Valid Before: Sat Aug 08 01:00:01 2009
+# Not Valid After : Mon Aug 08 01:00:01 2039
+# Fingerprint (SHA-256): 4B:22:D5:A6:AE:C9:9F:3C:DB:79:AA:5E:C0:68:38:47:9C:D5:EC:BA:71:64:F7:F2:2D:C1:D6:5F:63:D8:57:08
+# Fingerprint (SHA1): B9:42:94:BF:91:EA:8F:B6:4B:E6:10:97:C7:FB:00:13:59:B6:76:CB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "WoSign"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\271\102\224\277\221\352\217\266\113\346\020\227\307\373\000\023
+\131\266\166\313
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\241\362\371\265\322\310\172\164\270\363\005\361\327\341\204\215
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\125\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\032\060\030\006\003\125\004\012\023\021\127\157\123\151\147\156
+\040\103\101\040\114\151\155\151\164\145\144\061\052\060\050\006
+\003\125\004\003\023\041\103\145\162\164\151\146\151\143\141\164
+\151\157\156\040\101\165\164\150\157\162\151\164\171\040\157\146
+\040\127\157\123\151\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\136\150\326\021\161\224\143\120\126\000\150\363\076\311
+\305\221
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "WoSign China"
+#
+# Issuer: CN=CA ...............,O=WoSign CA Limited,C=CN
+# Serial Number:50:70:6b:cd:d8:13:fc:1b:4e:3b:33:72:d2:11:48:8d
+# Subject: CN=CA ...............,O=WoSign CA Limited,C=CN
+# Not Valid Before: Sat Aug 08 01:00:01 2009
+# Not Valid After : Mon Aug 08 01:00:01 2039
+# Fingerprint (SHA-256): D6:F0:34:BD:94:AA:23:3F:02:97:EC:A4:24:5B:28:39:73:E4:47:AA:59:0F:31:0C:77:F4:8F:DF:83:11:22:54
+# Fingerprint (SHA1): 16:32:47:8D:89:F9:21:3A:92:00:85:63:F5:A4:A7:D3:12:40:8A:D6
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "WoSign China"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\032\060\030\006\003\125\004\012\023\021\127\157\123\151\147\156
+\040\103\101\040\114\151\155\151\164\145\144\061\033\060\031\006
+\003\125\004\003\014\022\103\101\040\346\262\203\351\200\232\346
+\240\271\350\257\201\344\271\246
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\032\060\030\006\003\125\004\012\023\021\127\157\123\151\147\156
+\040\103\101\040\114\151\155\151\164\145\144\061\033\060\031\006
+\003\125\004\003\014\022\103\101\040\346\262\203\351\200\232\346
+\240\271\350\257\201\344\271\246
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\120\160\153\315\330\023\374\033\116\073\063\162\322\021
+\110\215
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\130\060\202\003\100\240\003\002\001\002\002\020\120
+\160\153\315\330\023\374\033\116\073\063\162\322\021\110\215\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\106
+\061\013\060\011\006\003\125\004\006\023\002\103\116\061\032\060
+\030\006\003\125\004\012\023\021\127\157\123\151\147\156\040\103
+\101\040\114\151\155\151\164\145\144\061\033\060\031\006\003\125
+\004\003\014\022\103\101\040\346\262\203\351\200\232\346\240\271
+\350\257\201\344\271\246\060\036\027\015\060\071\060\070\060\070
+\060\061\060\060\060\061\132\027\015\063\071\060\070\060\070\060
+\061\060\060\060\061\132\060\106\061\013\060\011\006\003\125\004
+\006\023\002\103\116\061\032\060\030\006\003\125\004\012\023\021
+\127\157\123\151\147\156\040\103\101\040\114\151\155\151\164\145
+\144\061\033\060\031\006\003\125\004\003\014\022\103\101\040\346
+\262\203\351\200\232\346\240\271\350\257\201\344\271\246\060\202
+\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000\320
+\111\041\036\045\374\207\301\052\302\254\333\166\206\006\116\347
+\320\164\064\334\355\145\065\374\120\326\210\077\244\360\177\353
+\017\137\171\057\211\261\375\274\143\130\067\223\233\070\370\267
+\133\251\372\330\161\307\264\274\200\227\215\154\113\361\120\325
+\052\051\252\250\031\172\226\346\225\216\164\355\227\012\127\165
+\364\005\333\155\013\071\271\001\177\252\366\326\332\154\346\005
+\340\244\115\122\374\333\320\164\267\021\214\173\215\117\377\207
+\203\256\377\005\003\023\127\120\067\376\214\226\122\020\114\137
+\277\224\161\151\331\226\076\014\103\117\276\060\300\237\071\164
+\117\006\105\135\243\326\126\071\150\007\314\207\117\120\167\223
+\161\331\104\010\261\212\064\351\211\254\333\233\116\341\331\344
+\122\105\214\056\024\037\221\153\031\035\150\051\054\126\304\342
+\036\023\127\144\360\141\343\271\021\337\260\341\127\240\033\255
+\327\137\321\257\333\053\055\077\320\150\216\017\352\237\017\213
+\065\130\033\023\034\364\336\065\241\012\135\326\352\337\022\157
+\300\373\151\007\106\162\334\201\366\004\043\027\340\115\165\341
+\162\157\260\050\353\233\341\341\203\241\237\112\135\257\314\233
+\372\002\040\266\030\142\167\221\073\243\325\145\255\334\174\220
+\167\034\104\101\244\112\213\353\225\162\351\366\011\144\334\250
+\055\237\164\170\350\301\242\011\143\234\357\240\333\117\235\225
+\253\040\117\267\260\367\207\134\246\240\344\067\070\307\134\343
+\065\017\054\255\243\200\242\354\056\135\300\317\355\213\005\302
+\346\163\156\366\211\325\365\322\106\216\352\155\143\033\036\212
+\311\175\246\370\234\353\345\325\143\205\115\163\146\151\021\376
+\310\016\364\301\307\146\111\123\176\344\031\153\361\351\172\131
+\243\155\176\305\027\346\047\306\357\033\333\157\374\015\115\006
+\001\264\016\134\060\106\125\140\257\070\145\072\312\107\272\254
+\054\314\106\037\262\106\226\077\363\355\046\005\356\167\241\152
+\153\176\055\155\130\134\112\324\216\147\270\361\332\325\106\212
+\047\371\021\362\311\102\376\116\336\337\037\134\304\244\206\207
+\026\063\241\247\027\030\245\015\344\005\345\053\302\053\013\242
+\225\220\271\375\140\074\116\211\076\347\234\356\037\273\001\002
+\003\001\000\001\243\102\060\100\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\001\006\060\017\006\003\125\035\023\001
+\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035\016
+\004\026\004\024\340\115\277\334\233\101\135\023\350\144\360\247
+\351\025\244\341\201\301\272\061\060\015\006\011\052\206\110\206
+\367\015\001\001\013\005\000\003\202\002\001\000\152\212\160\070
+\131\266\332\213\030\310\276\052\323\266\031\325\146\051\172\135
+\315\133\057\163\034\046\116\243\175\157\253\267\051\115\246\351
+\245\021\203\247\071\163\257\020\104\222\346\045\135\117\141\372
+\310\006\276\116\113\357\376\363\061\376\306\174\160\012\101\130
+\332\350\231\113\226\311\170\274\230\174\002\051\355\011\200\346
+\012\072\202\002\052\342\311\057\310\126\031\046\356\170\034\043
+\375\367\223\145\116\347\363\230\230\257\315\335\331\236\100\210
+\061\050\072\253\056\013\260\254\014\044\372\172\046\230\363\022
+\141\020\364\135\027\367\176\342\170\227\124\342\214\350\051\272
+\214\020\062\275\335\063\153\070\206\176\071\075\016\003\162\247
+\135\171\217\105\212\131\256\133\041\156\061\106\325\131\215\317
+\025\137\335\061\045\317\333\140\326\201\104\162\051\002\127\366
+\226\324\326\377\352\051\333\071\305\270\054\212\032\215\316\313
+\347\102\061\206\005\150\016\236\024\335\000\220\272\151\105\010
+\333\156\220\201\206\247\052\005\077\346\204\071\370\267\371\127
+\137\114\244\171\132\020\014\136\325\153\377\065\137\005\121\036
+\154\243\165\251\317\120\203\323\174\364\146\367\202\215\075\014
+\175\350\337\173\250\016\033\054\234\256\100\160\207\332\355\247
+\026\202\132\276\065\154\040\116\042\141\331\274\121\172\315\172
+\141\334\113\021\371\376\147\064\317\056\004\146\141\134\127\227
+\043\214\363\206\033\110\337\052\257\247\301\377\330\216\076\003
+\273\330\052\260\372\024\045\262\121\153\206\103\205\056\007\043
+\026\200\215\114\373\264\143\073\314\303\164\355\033\243\036\376
+\065\017\137\174\035\026\206\365\016\303\225\361\057\257\135\045
+\073\121\346\327\166\101\070\321\113\003\071\050\245\036\221\162
+\324\175\253\227\063\304\323\076\340\151\266\050\171\240\011\215
+\034\321\377\101\162\110\006\374\232\056\347\040\371\233\242\336
+\211\355\256\074\011\257\312\127\263\222\211\160\100\344\057\117
+\302\160\203\100\327\044\054\153\347\011\037\323\325\307\301\010
+\364\333\016\073\034\007\013\103\021\204\041\206\351\200\324\165
+\330\253\361\002\142\301\261\176\125\141\317\023\327\046\260\327
+\234\313\051\213\070\112\013\016\220\215\272\241
+END
+
+# Trust for "WoSign China"
+# Issuer: CN=CA ...............,O=WoSign CA Limited,C=CN
+# Serial Number:50:70:6b:cd:d8:13:fc:1b:4e:3b:33:72:d2:11:48:8d
+# Subject: CN=CA ...............,O=WoSign CA Limited,C=CN
+# Not Valid Before: Sat Aug 08 01:00:01 2009
+# Not Valid After : Mon Aug 08 01:00:01 2039
+# Fingerprint (SHA-256): D6:F0:34:BD:94:AA:23:3F:02:97:EC:A4:24:5B:28:39:73:E4:47:AA:59:0F:31:0C:77:F4:8F:DF:83:11:22:54
+# Fingerprint (SHA1): 16:32:47:8D:89:F9:21:3A:92:00:85:63:F5:A4:A7:D3:12:40:8A:D6
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "WoSign China"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\026\062\107\215\211\371\041\072\222\000\205\143\365\244\247\323
+\022\100\212\326
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\170\203\133\122\026\166\304\044\073\203\170\350\254\332\232\223
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\106\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\032\060\030\006\003\125\004\012\023\021\127\157\123\151\147\156
+\040\103\101\040\114\151\155\151\164\145\144\061\033\060\031\006
+\003\125\004\003\014\022\103\101\040\346\262\203\351\200\232\346
+\240\271\350\257\201\344\271\246
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\120\160\153\315\330\023\374\033\116\073\063\162\322\021
+\110\215
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "COMODO RSA Certification Authority"
+#
+# Issuer: CN=COMODO RSA Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number:4c:aa:f9:ca:db:63:6f:e0:1f:f7:4e:d8:5b:03:86:9d
+# Subject: CN=COMODO RSA Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Tue Jan 19 00:00:00 2010
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (SHA-256): 52:F0:E1:C4:E5:8E:C6:29:29:1B:60:31:7F:07:46:71:B8:5D:7E:A8:0D:5B:07:27:34:63:53:4B:32:B4:02:34
+# Fingerprint (SHA1): AF:E5:D2:44:A8:D1:19:42:30:FF:47:9F:E2:F8:97:BB:CD:7A:8C:B4
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "COMODO RSA Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\053\060\051\006
+\003\125\004\003\023\042\103\117\115\117\104\117\040\122\123\101
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\053\060\051\006
+\003\125\004\003\023\042\103\117\115\117\104\117\040\122\123\101
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\114\252\371\312\333\143\157\340\037\367\116\330\133\003
+\206\235
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\330\060\202\003\300\240\003\002\001\002\002\020\114
+\252\371\312\333\143\157\340\037\367\116\330\133\003\206\235\060
+\015\006\011\052\206\110\206\367\015\001\001\014\005\000\060\201
+\205\061\013\060\011\006\003\125\004\006\023\002\107\102\061\033
+\060\031\006\003\125\004\010\023\022\107\162\145\141\164\145\162
+\040\115\141\156\143\150\145\163\164\145\162\061\020\060\016\006
+\003\125\004\007\023\007\123\141\154\146\157\162\144\061\032\060
+\030\006\003\125\004\012\023\021\103\117\115\117\104\117\040\103
+\101\040\114\151\155\151\164\145\144\061\053\060\051\006\003\125
+\004\003\023\042\103\117\115\117\104\117\040\122\123\101\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\060\036\027\015\061\060\060\061\061\071
+\060\060\060\060\060\060\132\027\015\063\070\060\061\061\070\062
+\063\065\071\065\071\132\060\201\205\061\013\060\011\006\003\125
+\004\006\023\002\107\102\061\033\060\031\006\003\125\004\010\023
+\022\107\162\145\141\164\145\162\040\115\141\156\143\150\145\163
+\164\145\162\061\020\060\016\006\003\125\004\007\023\007\123\141
+\154\146\157\162\144\061\032\060\030\006\003\125\004\012\023\021
+\103\117\115\117\104\117\040\103\101\040\114\151\155\151\164\145
+\144\061\053\060\051\006\003\125\004\003\023\042\103\117\115\117
+\104\117\040\122\123\101\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\202
+\002\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\002\017\000\060\202\002\012\002\202\002\001\000\221
+\350\124\222\322\012\126\261\254\015\044\335\305\317\104\147\164
+\231\053\067\243\175\043\160\000\161\274\123\337\304\372\052\022
+\217\113\177\020\126\275\237\160\162\267\141\177\311\113\017\027
+\247\075\343\260\004\141\356\377\021\227\307\364\206\076\012\372
+\076\134\371\223\346\064\172\331\024\153\347\234\263\205\240\202
+\172\166\257\161\220\327\354\375\015\372\234\154\372\337\260\202
+\364\024\176\371\276\304\246\057\117\177\231\177\265\374\147\103
+\162\275\014\000\326\211\353\153\054\323\355\217\230\034\024\253
+\176\345\343\156\374\330\250\344\222\044\332\103\153\142\270\125
+\375\352\301\274\154\266\213\363\016\215\232\344\233\154\151\231
+\370\170\110\060\105\325\255\341\015\074\105\140\374\062\226\121
+\047\274\147\303\312\056\266\153\352\106\307\307\040\240\261\037
+\145\336\110\010\272\244\116\251\362\203\106\067\204\353\350\314
+\201\110\103\147\116\162\052\233\134\275\114\033\050\212\134\042
+\173\264\253\230\331\356\340\121\203\303\011\106\116\155\076\231
+\372\225\027\332\174\063\127\101\074\215\121\355\013\266\134\257
+\054\143\032\337\127\310\077\274\351\135\304\233\257\105\231\342
+\243\132\044\264\272\251\126\075\317\157\252\377\111\130\276\360
+\250\377\364\270\255\351\067\373\272\270\364\013\072\371\350\103
+\102\036\211\330\204\313\023\361\331\273\341\211\140\270\214\050
+\126\254\024\035\234\012\347\161\353\317\016\335\075\251\226\241
+\110\275\074\367\257\265\015\042\114\300\021\201\354\126\073\366
+\323\242\342\133\267\262\004\042\122\225\200\223\151\350\216\114
+\145\361\221\003\055\160\164\002\352\213\147\025\051\151\122\002
+\273\327\337\120\152\125\106\277\240\243\050\141\177\160\320\303
+\242\252\054\041\252\107\316\050\234\006\105\166\277\202\030\047
+\264\325\256\264\313\120\346\153\364\114\206\161\060\351\246\337
+\026\206\340\330\377\100\335\373\320\102\210\177\243\063\072\056
+\134\036\101\021\201\143\316\030\161\153\053\354\246\212\267\061
+\134\072\152\107\340\303\171\131\326\040\032\257\362\152\230\252
+\162\274\127\112\322\113\235\273\020\374\260\114\101\345\355\035
+\075\136\050\235\234\314\277\263\121\332\247\107\345\204\123\002
+\003\001\000\001\243\102\060\100\060\035\006\003\125\035\016\004
+\026\004\024\273\257\176\002\075\372\246\361\074\204\216\255\356
+\070\230\354\331\062\062\324\060\016\006\003\125\035\017\001\001
+\377\004\004\003\002\001\006\060\017\006\003\125\035\023\001\001
+\377\004\005\060\003\001\001\377\060\015\006\011\052\206\110\206
+\367\015\001\001\014\005\000\003\202\002\001\000\012\361\325\106
+\204\267\256\121\273\154\262\115\101\024\000\223\114\234\313\345
+\300\124\317\240\045\216\002\371\375\260\242\015\365\040\230\074
+\023\055\254\126\242\260\326\176\021\222\351\056\272\236\056\232
+\162\261\275\031\104\154\141\065\242\232\264\026\022\151\132\214
+\341\327\076\244\032\350\057\003\364\256\141\035\020\033\052\244
+\213\172\305\376\005\246\341\300\326\310\376\236\256\217\053\272
+\075\231\370\330\163\011\130\106\156\246\234\364\327\047\323\225
+\332\067\203\162\034\323\163\340\242\107\231\003\070\135\325\111
+\171\000\051\034\307\354\233\040\034\007\044\151\127\170\262\071
+\374\072\204\240\265\234\174\215\277\056\223\142\047\267\071\332
+\027\030\256\275\074\011\150\377\204\233\074\325\326\013\003\343
+\127\236\024\367\321\353\117\310\275\207\043\267\266\111\103\171
+\205\134\272\353\222\013\241\306\350\150\250\114\026\261\032\231
+\012\350\123\054\222\273\241\011\030\165\014\145\250\173\313\043
+\267\032\302\050\205\303\033\377\320\053\142\357\244\173\011\221
+\230\147\214\024\001\315\150\006\152\143\041\165\003\200\210\212
+\156\201\306\205\362\251\244\055\347\364\245\044\020\107\203\312
+\315\364\215\171\130\261\006\233\347\032\052\331\235\001\327\224
+\175\355\003\112\312\360\333\350\251\001\076\365\126\231\311\036
+\216\111\075\273\345\011\271\340\117\111\222\075\026\202\100\314
+\314\131\306\346\072\355\022\056\151\074\154\225\261\375\252\035
+\173\177\206\276\036\016\062\106\373\373\023\217\165\177\114\213
+\113\106\143\376\000\064\100\160\301\303\271\241\335\246\160\342
+\004\263\101\274\351\200\221\352\144\234\172\341\042\003\251\234
+\156\157\016\145\117\154\207\207\136\363\156\240\371\165\245\233
+\100\350\123\262\047\235\112\271\300\167\041\215\377\207\362\336
+\274\214\357\027\337\267\111\013\321\362\156\060\013\032\016\116
+\166\355\021\374\365\351\126\262\175\277\307\155\012\223\214\245
+\320\300\266\035\276\072\116\224\242\327\156\154\013\302\212\174
+\372\040\363\304\344\345\315\015\250\313\221\222\261\174\205\354
+\265\024\151\146\016\202\347\315\316\310\055\246\121\177\041\301
+\065\123\205\006\112\135\237\255\273\033\137\164
+END
+
+# Trust for "COMODO RSA Certification Authority"
+# Issuer: CN=COMODO RSA Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Serial Number:4c:aa:f9:ca:db:63:6f:e0:1f:f7:4e:d8:5b:03:86:9d
+# Subject: CN=COMODO RSA Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
+# Not Valid Before: Tue Jan 19 00:00:00 2010
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (SHA-256): 52:F0:E1:C4:E5:8E:C6:29:29:1B:60:31:7F:07:46:71:B8:5D:7E:A8:0D:5B:07:27:34:63:53:4B:32:B4:02:34
+# Fingerprint (SHA1): AF:E5:D2:44:A8:D1:19:42:30:FF:47:9F:E2:F8:97:BB:CD:7A:8C:B4
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "COMODO RSA Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\257\345\322\104\250\321\031\102\060\377\107\237\342\370\227\273
+\315\172\214\264
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\033\061\260\161\100\066\314\024\066\221\255\304\076\375\354\030
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\107\102
+\061\033\060\031\006\003\125\004\010\023\022\107\162\145\141\164
+\145\162\040\115\141\156\143\150\145\163\164\145\162\061\020\060
+\016\006\003\125\004\007\023\007\123\141\154\146\157\162\144\061
+\032\060\030\006\003\125\004\012\023\021\103\117\115\117\104\117
+\040\103\101\040\114\151\155\151\164\145\144\061\053\060\051\006
+\003\125\004\003\023\042\103\117\115\117\104\117\040\122\123\101
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\114\252\371\312\333\143\157\340\037\367\116\330\133\003
+\206\235
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "USERTrust RSA Certification Authority"
+#
+# Issuer: CN=USERTrust RSA Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Serial Number:01:fd:6d:30:fc:a3:ca:51:a8:1b:bc:64:0e:35:03:2d
+# Subject: CN=USERTrust RSA Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Not Valid Before: Mon Feb 01 00:00:00 2010
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (SHA-256): E7:93:C9:B0:2F:D8:AA:13:E2:1C:31:22:8A:CC:B0:81:19:64:3B:74:9C:89:89:64:B1:74:6D:46:C3:D4:CB:D2
+# Fingerprint (SHA1): 2B:8F:1B:57:33:0D:BB:A2:D0:7A:6C:51:F7:0E:E9:0D:DA:B9:AD:8E
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "USERTrust RSA Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\210\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\023\060\021\006\003\125\004\010\023\012\116\145\167\040\112
+\145\162\163\145\171\061\024\060\022\006\003\125\004\007\023\013
+\112\145\162\163\145\171\040\103\151\164\171\061\036\060\034\006
+\003\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122
+\125\123\124\040\116\145\164\167\157\162\153\061\056\060\054\006
+\003\125\004\003\023\045\125\123\105\122\124\162\165\163\164\040
+\122\123\101\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\210\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\023\060\021\006\003\125\004\010\023\012\116\145\167\040\112
+\145\162\163\145\171\061\024\060\022\006\003\125\004\007\023\013
+\112\145\162\163\145\171\040\103\151\164\171\061\036\060\034\006
+\003\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122
+\125\123\124\040\116\145\164\167\157\162\153\061\056\060\054\006
+\003\125\004\003\023\045\125\123\105\122\124\162\165\163\164\040
+\122\123\101\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\001\375\155\060\374\243\312\121\250\033\274\144\016\065
+\003\055
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\336\060\202\003\306\240\003\002\001\002\002\020\001
+\375\155\060\374\243\312\121\250\033\274\144\016\065\003\055\060
+\015\006\011\052\206\110\206\367\015\001\001\014\005\000\060\201
+\210\061\013\060\011\006\003\125\004\006\023\002\125\123\061\023
+\060\021\006\003\125\004\010\023\012\116\145\167\040\112\145\162
+\163\145\171\061\024\060\022\006\003\125\004\007\023\013\112\145
+\162\163\145\171\040\103\151\164\171\061\036\060\034\006\003\125
+\004\012\023\025\124\150\145\040\125\123\105\122\124\122\125\123
+\124\040\116\145\164\167\157\162\153\061\056\060\054\006\003\125
+\004\003\023\045\125\123\105\122\124\162\165\163\164\040\122\123
+\101\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040
+\101\165\164\150\157\162\151\164\171\060\036\027\015\061\060\060
+\062\060\061\060\060\060\060\060\060\132\027\015\063\070\060\061
+\061\070\062\063\065\071\065\071\132\060\201\210\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\023\060\021\006\003\125
+\004\010\023\012\116\145\167\040\112\145\162\163\145\171\061\024
+\060\022\006\003\125\004\007\023\013\112\145\162\163\145\171\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\056\060\054\006\003\125\004\003\023\045\125
+\123\105\122\124\162\165\163\164\040\122\123\101\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\060\202\002\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002\012
+\002\202\002\001\000\200\022\145\027\066\016\303\333\010\263\320
+\254\127\015\166\355\315\047\323\114\255\120\203\141\342\252\040
+\115\011\055\144\011\334\316\211\237\314\075\251\354\366\317\301
+\334\361\323\261\326\173\067\050\021\053\107\332\071\306\274\072
+\031\264\137\246\275\175\235\243\143\102\266\166\362\251\073\053
+\221\370\342\157\320\354\026\040\220\011\076\342\350\164\311\030
+\264\221\324\142\144\333\177\243\006\361\210\030\152\220\042\074
+\274\376\023\360\207\024\173\366\344\037\216\324\344\121\306\021
+\147\106\010\121\313\206\024\124\077\274\063\376\176\154\234\377
+\026\235\030\275\121\216\065\246\247\146\310\162\147\333\041\146
+\261\324\233\170\003\300\120\072\350\314\360\334\274\236\114\376
+\257\005\226\065\037\127\132\267\377\316\371\075\267\054\266\366
+\124\335\310\347\022\072\115\256\114\212\267\134\232\264\267\040
+\075\312\177\042\064\256\176\073\150\146\001\104\347\001\116\106
+\123\233\063\140\367\224\276\123\067\220\163\103\363\062\303\123
+\357\333\252\376\164\116\151\307\153\214\140\223\336\304\307\014
+\337\341\062\256\314\223\073\121\170\225\147\213\356\075\126\376
+\014\320\151\017\033\017\363\045\046\153\063\155\367\156\107\372
+\163\103\345\176\016\245\146\261\051\174\062\204\143\125\211\304
+\015\301\223\124\060\031\023\254\323\175\067\247\353\135\072\154
+\065\134\333\101\327\022\332\251\111\013\337\330\200\212\011\223
+\142\216\265\146\317\045\210\315\204\270\261\077\244\071\017\331
+\002\236\353\022\114\225\174\363\153\005\251\136\026\203\314\270
+\147\342\350\023\235\314\133\202\323\114\263\355\133\377\336\345
+\163\254\043\073\055\000\277\065\125\164\011\111\330\111\130\032
+\177\222\066\346\121\222\016\363\046\175\034\115\027\274\311\354
+\103\046\320\277\101\137\100\251\104\104\364\231\347\127\207\236
+\120\037\127\124\250\076\375\164\143\057\261\120\145\011\346\130
+\102\056\103\032\114\264\360\045\107\131\372\004\036\223\324\046
+\106\112\120\201\262\336\276\170\267\374\147\025\341\311\127\204
+\036\017\143\326\351\142\272\326\137\125\056\352\134\306\050\010
+\004\045\071\270\016\053\251\362\114\227\034\007\077\015\122\365
+\355\357\057\202\017\002\003\001\000\001\243\102\060\100\060\035
+\006\003\125\035\016\004\026\004\024\123\171\277\132\252\053\112
+\317\124\200\341\330\233\300\235\362\262\003\146\313\060\016\006
+\003\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\015
+\006\011\052\206\110\206\367\015\001\001\014\005\000\003\202\002
+\001\000\134\324\174\015\317\367\001\175\101\231\145\014\163\305
+\122\237\313\370\317\231\006\177\033\332\103\025\237\236\002\125
+\127\226\024\361\122\074\047\207\224\050\355\037\072\001\067\242
+\166\374\123\120\300\204\233\306\153\116\272\214\041\117\242\216
+\125\142\221\363\151\025\330\274\210\343\304\252\013\375\357\250
+\351\113\125\052\006\040\155\125\170\051\031\356\137\060\134\113
+\044\021\125\377\044\232\156\136\052\053\356\013\115\237\177\367
+\001\070\224\024\225\103\007\011\373\140\251\356\034\253\022\214
+\240\232\136\247\230\152\131\155\213\077\010\373\310\321\105\257
+\030\025\144\220\022\017\163\050\056\305\342\044\116\374\130\354
+\360\364\105\376\042\263\353\057\216\322\331\105\141\005\301\227
+\157\250\166\162\217\213\214\066\257\277\015\005\316\161\215\346
+\246\157\037\154\246\161\142\305\330\320\203\162\014\361\147\021
+\211\014\234\023\114\162\064\337\274\325\161\337\252\161\335\341
+\271\154\214\074\022\135\145\332\275\127\022\266\103\153\377\345
+\336\115\146\021\121\317\231\256\354\027\266\350\161\221\214\336
+\111\376\335\065\161\242\025\047\224\034\317\141\343\046\273\157
+\243\147\045\041\135\346\335\035\013\056\150\033\073\202\257\354
+\203\147\205\324\230\121\164\261\271\231\200\211\377\177\170\031
+\134\171\112\140\056\222\100\256\114\067\052\054\311\307\142\310
+\016\135\367\066\133\312\340\045\045\001\264\335\032\007\234\167
+\000\077\320\334\325\354\075\324\372\273\077\314\205\326\157\177
+\251\055\337\271\002\367\365\227\232\265\065\332\303\147\260\207
+\112\251\050\236\043\216\377\134\047\153\341\260\117\363\007\356
+\000\056\324\131\207\313\122\101\225\352\364\107\327\356\144\101
+\125\174\215\131\002\225\335\142\235\302\271\356\132\050\164\204
+\245\233\267\220\307\014\007\337\365\211\066\164\062\326\050\301
+\260\260\013\340\234\114\303\034\326\374\343\151\265\107\106\201
+\057\242\202\253\323\143\104\160\304\215\377\055\063\272\255\217
+\173\265\160\210\256\076\031\317\100\050\330\374\310\220\273\135
+\231\042\365\122\346\130\305\037\210\061\103\356\210\035\327\306
+\216\074\103\152\035\247\030\336\175\075\026\361\142\371\312\220
+\250\375
+END
+
+# Trust for "USERTrust RSA Certification Authority"
+# Issuer: CN=USERTrust RSA Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Serial Number:01:fd:6d:30:fc:a3:ca:51:a8:1b:bc:64:0e:35:03:2d
+# Subject: CN=USERTrust RSA Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Not Valid Before: Mon Feb 01 00:00:00 2010
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (SHA-256): E7:93:C9:B0:2F:D8:AA:13:E2:1C:31:22:8A:CC:B0:81:19:64:3B:74:9C:89:89:64:B1:74:6D:46:C3:D4:CB:D2
+# Fingerprint (SHA1): 2B:8F:1B:57:33:0D:BB:A2:D0:7A:6C:51:F7:0E:E9:0D:DA:B9:AD:8E
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "USERTrust RSA Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\053\217\033\127\063\015\273\242\320\172\154\121\367\016\351\015
+\332\271\255\216
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\033\376\151\321\221\267\031\063\243\162\250\017\341\125\345\265
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\210\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\023\060\021\006\003\125\004\010\023\012\116\145\167\040\112
+\145\162\163\145\171\061\024\060\022\006\003\125\004\007\023\013
+\112\145\162\163\145\171\040\103\151\164\171\061\036\060\034\006
+\003\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122
+\125\123\124\040\116\145\164\167\157\162\153\061\056\060\054\006
+\003\125\004\003\023\045\125\123\105\122\124\162\165\163\164\040
+\122\123\101\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\001\375\155\060\374\243\312\121\250\033\274\144\016\065
+\003\055
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "USERTrust ECC Certification Authority"
+#
+# Issuer: CN=USERTrust ECC Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Serial Number:5c:8b:99:c5:5a:94:c5:d2:71:56:de:cd:89:80:cc:26
+# Subject: CN=USERTrust ECC Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Not Valid Before: Mon Feb 01 00:00:00 2010
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (SHA-256): 4F:F4:60:D5:4B:9C:86:DA:BF:BC:FC:57:12:E0:40:0D:2B:ED:3F:BC:4D:4F:BD:AA:86:E0:6A:DC:D2:A9:AD:7A
+# Fingerprint (SHA1): D1:CB:CA:5D:B2:D5:2A:7F:69:3B:67:4D:E5:F0:5A:1D:0C:95:7D:F0
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "USERTrust ECC Certification Authority"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\210\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\023\060\021\006\003\125\004\010\023\012\116\145\167\040\112
+\145\162\163\145\171\061\024\060\022\006\003\125\004\007\023\013
+\112\145\162\163\145\171\040\103\151\164\171\061\036\060\034\006
+\003\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122
+\125\123\124\040\116\145\164\167\157\162\153\061\056\060\054\006
+\003\125\004\003\023\045\125\123\105\122\124\162\165\163\164\040
+\105\103\103\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\210\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\023\060\021\006\003\125\004\010\023\012\116\145\167\040\112
+\145\162\163\145\171\061\024\060\022\006\003\125\004\007\023\013
+\112\145\162\163\145\171\040\103\151\164\171\061\036\060\034\006
+\003\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122
+\125\123\124\040\116\145\164\167\157\162\153\061\056\060\054\006
+\003\125\004\003\023\045\125\123\105\122\124\162\165\163\164\040
+\105\103\103\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\134\213\231\305\132\224\305\322\161\126\336\315\211\200
+\314\046
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\217\060\202\002\025\240\003\002\001\002\002\020\134
+\213\231\305\132\224\305\322\161\126\336\315\211\200\314\046\060
+\012\006\010\052\206\110\316\075\004\003\003\060\201\210\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\023\060\021\006
+\003\125\004\010\023\012\116\145\167\040\112\145\162\163\145\171
+\061\024\060\022\006\003\125\004\007\023\013\112\145\162\163\145
+\171\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
+\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
+\145\164\167\157\162\153\061\056\060\054\006\003\125\004\003\023
+\045\125\123\105\122\124\162\165\163\164\040\105\103\103\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\060\036\027\015\061\060\060\062\060\061
+\060\060\060\060\060\060\132\027\015\063\070\060\061\061\070\062
+\063\065\071\065\071\132\060\201\210\061\013\060\011\006\003\125
+\004\006\023\002\125\123\061\023\060\021\006\003\125\004\010\023
+\012\116\145\167\040\112\145\162\163\145\171\061\024\060\022\006
+\003\125\004\007\023\013\112\145\162\163\145\171\040\103\151\164
+\171\061\036\060\034\006\003\125\004\012\023\025\124\150\145\040
+\125\123\105\122\124\122\125\123\124\040\116\145\164\167\157\162
+\153\061\056\060\054\006\003\125\004\003\023\045\125\123\105\122
+\124\162\165\163\164\040\105\103\103\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\060\166\060\020\006\007\052\206\110\316\075\002\001\006\005
+\053\201\004\000\042\003\142\000\004\032\254\124\132\251\371\150
+\043\347\172\325\044\157\123\306\132\330\113\253\306\325\266\321
+\346\163\161\256\335\234\326\014\141\375\333\240\211\003\270\005
+\024\354\127\316\356\135\077\342\041\263\316\367\324\212\171\340
+\243\203\176\055\227\320\141\304\361\231\334\045\221\143\253\177
+\060\243\264\160\342\307\241\063\234\363\277\056\134\123\261\137
+\263\175\062\177\212\064\343\171\171\243\102\060\100\060\035\006
+\003\125\035\016\004\026\004\024\072\341\011\206\324\317\031\302
+\226\166\164\111\166\334\340\065\306\143\143\232\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\012\006
+\010\052\206\110\316\075\004\003\003\003\150\000\060\145\002\060
+\066\147\241\026\010\334\344\227\000\101\035\116\276\341\143\001
+\317\073\252\102\021\144\240\235\224\071\002\021\171\134\173\035
+\372\144\271\356\026\102\263\277\212\302\011\304\354\344\261\115
+\002\061\000\351\052\141\107\214\122\112\113\116\030\160\366\326
+\104\326\156\365\203\272\155\130\275\044\331\126\110\352\357\304
+\242\106\201\210\152\072\106\321\251\233\115\311\141\332\321\135
+\127\152\030
+END
+
+# Trust for "USERTrust ECC Certification Authority"
+# Issuer: CN=USERTrust ECC Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Serial Number:5c:8b:99:c5:5a:94:c5:d2:71:56:de:cd:89:80:cc:26
+# Subject: CN=USERTrust ECC Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
+# Not Valid Before: Mon Feb 01 00:00:00 2010
+# Not Valid After : Mon Jan 18 23:59:59 2038
+# Fingerprint (SHA-256): 4F:F4:60:D5:4B:9C:86:DA:BF:BC:FC:57:12:E0:40:0D:2B:ED:3F:BC:4D:4F:BD:AA:86:E0:6A:DC:D2:A9:AD:7A
+# Fingerprint (SHA1): D1:CB:CA:5D:B2:D5:2A:7F:69:3B:67:4D:E5:F0:5A:1D:0C:95:7D:F0
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "USERTrust ECC Certification Authority"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\321\313\312\135\262\325\052\177\151\073\147\115\345\360\132\035
+\014\225\175\360
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\372\150\274\331\265\177\255\375\311\035\006\203\050\314\044\301
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\210\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\023\060\021\006\003\125\004\010\023\012\116\145\167\040\112
+\145\162\163\145\171\061\024\060\022\006\003\125\004\007\023\013
+\112\145\162\163\145\171\040\103\151\164\171\061\036\060\034\006
+\003\125\004\012\023\025\124\150\145\040\125\123\105\122\124\122
+\125\123\124\040\116\145\164\167\157\162\153\061\056\060\054\006
+\003\125\004\003\023\045\125\123\105\122\124\162\165\163\164\040
+\105\103\103\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\134\213\231\305\132\224\305\322\161\126\336\315\211\200
+\314\046
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GlobalSign ECC Root CA - R4"
+#
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R4
+# Serial Number:2a:38:a4:1c:96:0a:04:de:42:b2:28:a5:0b:e8:34:98:02
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R4
+# Not Valid Before: Tue Nov 13 00:00:00 2012
+# Not Valid After : Tue Jan 19 03:14:07 2038
+# Fingerprint (SHA-256): BE:C9:49:11:C2:95:56:76:DB:6C:0A:55:09:86:D7:6E:3B:A0:05:66:7C:44:2C:97:62:B4:FB:B7:73:DE:22:8C
+# Fingerprint (SHA1): 69:69:56:2E:40:80:F4:24:A1:E7:19:9F:14:BA:F3:EE:58:AB:6A:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign ECC Root CA - R4"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\120\061\044\060\042\006\003\125\004\013\023\033\107\154\157
+\142\141\154\123\151\147\156\040\105\103\103\040\122\157\157\164
+\040\103\101\040\055\040\122\064\061\023\060\021\006\003\125\004
+\012\023\012\107\154\157\142\141\154\123\151\147\156\061\023\060
+\021\006\003\125\004\003\023\012\107\154\157\142\141\154\123\151
+\147\156
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\044\060\042\006\003\125\004\013\023\033\107\154\157
+\142\141\154\123\151\147\156\040\105\103\103\040\122\157\157\164
+\040\103\101\040\055\040\122\064\061\023\060\021\006\003\125\004
+\012\023\012\107\154\157\142\141\154\123\151\147\156\061\023\060
+\021\006\003\125\004\003\023\012\107\154\157\142\141\154\123\151
+\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\052\070\244\034\226\012\004\336\102\262\050\245\013\350
+\064\230\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\001\341\060\202\001\207\240\003\002\001\002\002\021\052
+\070\244\034\226\012\004\336\102\262\050\245\013\350\064\230\002
+\060\012\006\010\052\206\110\316\075\004\003\002\060\120\061\044
+\060\042\006\003\125\004\013\023\033\107\154\157\142\141\154\123
+\151\147\156\040\105\103\103\040\122\157\157\164\040\103\101\040
+\055\040\122\064\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156\060\036
+\027\015\061\062\061\061\061\063\060\060\060\060\060\060\132\027
+\015\063\070\060\061\061\071\060\063\061\064\060\067\132\060\120
+\061\044\060\042\006\003\125\004\013\023\033\107\154\157\142\141
+\154\123\151\147\156\040\105\103\103\040\122\157\157\164\040\103
+\101\040\055\040\122\064\061\023\060\021\006\003\125\004\012\023
+\012\107\154\157\142\141\154\123\151\147\156\061\023\060\021\006
+\003\125\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+\060\131\060\023\006\007\052\206\110\316\075\002\001\006\010\052
+\206\110\316\075\003\001\007\003\102\000\004\270\306\171\323\217
+\154\045\016\237\056\071\031\034\003\244\256\232\345\071\007\011
+\026\312\143\261\271\206\370\212\127\301\127\316\102\372\163\241
+\367\145\102\377\036\301\000\262\156\163\016\377\307\041\345\030
+\244\252\331\161\077\250\324\271\316\214\035\243\102\060\100\060
+\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060
+\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377
+\060\035\006\003\125\035\016\004\026\004\024\124\260\173\255\105
+\270\342\100\177\373\012\156\373\276\063\311\074\243\204\325\060
+\012\006\010\052\206\110\316\075\004\003\002\003\110\000\060\105
+\002\041\000\334\222\241\240\023\246\317\003\260\346\304\041\227
+\220\372\024\127\055\003\354\356\074\323\156\312\250\154\166\274
+\242\336\273\002\040\047\250\205\047\065\233\126\306\243\362\107
+\322\267\156\033\002\000\027\252\147\246\025\221\336\372\224\354
+\173\013\370\237\204
+END
+
+# Trust for "GlobalSign ECC Root CA - R4"
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R4
+# Serial Number:2a:38:a4:1c:96:0a:04:de:42:b2:28:a5:0b:e8:34:98:02
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R4
+# Not Valid Before: Tue Nov 13 00:00:00 2012
+# Not Valid After : Tue Jan 19 03:14:07 2038
+# Fingerprint (SHA-256): BE:C9:49:11:C2:95:56:76:DB:6C:0A:55:09:86:D7:6E:3B:A0:05:66:7C:44:2C:97:62:B4:FB:B7:73:DE:22:8C
+# Fingerprint (SHA1): 69:69:56:2E:40:80:F4:24:A1:E7:19:9F:14:BA:F3:EE:58:AB:6A:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign ECC Root CA - R4"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\151\151\126\056\100\200\364\044\241\347\031\237\024\272\363\356
+\130\253\152\273
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\040\360\047\150\321\176\240\235\016\346\052\312\337\134\211\216
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\044\060\042\006\003\125\004\013\023\033\107\154\157
+\142\141\154\123\151\147\156\040\105\103\103\040\122\157\157\164
+\040\103\101\040\055\040\122\064\061\023\060\021\006\003\125\004
+\012\023\012\107\154\157\142\141\154\123\151\147\156\061\023\060
+\021\006\003\125\004\003\023\012\107\154\157\142\141\154\123\151
+\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\052\070\244\034\226\012\004\336\102\262\050\245\013\350
+\064\230\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "GlobalSign ECC Root CA - R5"
+#
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R5
+# Serial Number:60:59:49:e0:26:2e:bb:55:f9:0a:77:8a:71:f9:4a:d8:6c
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R5
+# Not Valid Before: Tue Nov 13 00:00:00 2012
+# Not Valid After : Tue Jan 19 03:14:07 2038
+# Fingerprint (SHA-256): 17:9F:BC:14:8A:3D:D0:0F:D2:4E:A1:34:58:CC:43:BF:A7:F5:9C:81:82:D7:83:A5:13:F6:EB:EC:10:0C:89:24
+# Fingerprint (SHA1): 1F:24:C6:30:CD:A4:18:EF:20:69:FF:AD:4F:DD:5F:46:3A:1B:69:AA
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign ECC Root CA - R5"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\120\061\044\060\042\006\003\125\004\013\023\033\107\154\157
+\142\141\154\123\151\147\156\040\105\103\103\040\122\157\157\164
+\040\103\101\040\055\040\122\065\061\023\060\021\006\003\125\004
+\012\023\012\107\154\157\142\141\154\123\151\147\156\061\023\060
+\021\006\003\125\004\003\023\012\107\154\157\142\141\154\123\151
+\147\156
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\044\060\042\006\003\125\004\013\023\033\107\154\157
+\142\141\154\123\151\147\156\040\105\103\103\040\122\157\157\164
+\040\103\101\040\055\040\122\065\061\023\060\021\006\003\125\004
+\012\023\012\107\154\157\142\141\154\123\151\147\156\061\023\060
+\021\006\003\125\004\003\023\012\107\154\157\142\141\154\123\151
+\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\140\131\111\340\046\056\273\125\371\012\167\212\161\371
+\112\330\154
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\036\060\202\001\244\240\003\002\001\002\002\021\140
+\131\111\340\046\056\273\125\371\012\167\212\161\371\112\330\154
+\060\012\006\010\052\206\110\316\075\004\003\003\060\120\061\044
+\060\042\006\003\125\004\013\023\033\107\154\157\142\141\154\123
+\151\147\156\040\105\103\103\040\122\157\157\164\040\103\101\040
+\055\040\122\065\061\023\060\021\006\003\125\004\012\023\012\107
+\154\157\142\141\154\123\151\147\156\061\023\060\021\006\003\125
+\004\003\023\012\107\154\157\142\141\154\123\151\147\156\060\036
+\027\015\061\062\061\061\061\063\060\060\060\060\060\060\132\027
+\015\063\070\060\061\061\071\060\063\061\064\060\067\132\060\120
+\061\044\060\042\006\003\125\004\013\023\033\107\154\157\142\141
+\154\123\151\147\156\040\105\103\103\040\122\157\157\164\040\103
+\101\040\055\040\122\065\061\023\060\021\006\003\125\004\012\023
+\012\107\154\157\142\141\154\123\151\147\156\061\023\060\021\006
+\003\125\004\003\023\012\107\154\157\142\141\154\123\151\147\156
+\060\166\060\020\006\007\052\206\110\316\075\002\001\006\005\053
+\201\004\000\042\003\142\000\004\107\105\016\226\373\175\135\277
+\351\071\321\041\370\237\013\266\325\173\036\222\072\110\131\034
+\360\142\061\055\300\172\050\376\032\247\134\263\266\314\227\347
+\105\324\130\372\321\167\155\103\242\300\207\145\064\012\037\172
+\335\353\074\063\241\305\235\115\244\157\101\225\070\177\311\036
+\204\353\321\236\111\222\207\224\207\014\072\205\112\146\237\235
+\131\223\115\227\141\006\206\112\243\102\060\100\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003
+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\035\006
+\003\125\035\016\004\026\004\024\075\346\051\110\233\352\007\312
+\041\104\112\046\336\156\336\322\203\320\237\131\060\012\006\010
+\052\206\110\316\075\004\003\003\003\150\000\060\145\002\061\000
+\345\151\022\311\156\333\306\061\272\011\101\341\227\370\373\375
+\232\342\175\022\311\355\174\144\323\313\005\045\213\126\331\240
+\347\136\135\116\013\203\234\133\166\051\240\011\046\041\152\142
+\002\060\161\322\265\217\134\352\073\341\170\011\205\250\165\222
+\073\310\134\375\110\357\015\164\042\250\010\342\156\305\111\316
+\307\014\274\247\141\151\361\367\073\341\052\313\371\053\363\146
+\220\067
+END
+
+# Trust for "GlobalSign ECC Root CA - R5"
+# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R5
+# Serial Number:60:59:49:e0:26:2e:bb:55:f9:0a:77:8a:71:f9:4a:d8:6c
+# Subject: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R5
+# Not Valid Before: Tue Nov 13 00:00:00 2012
+# Not Valid After : Tue Jan 19 03:14:07 2038
+# Fingerprint (SHA-256): 17:9F:BC:14:8A:3D:D0:0F:D2:4E:A1:34:58:CC:43:BF:A7:F5:9C:81:82:D7:83:A5:13:F6:EB:EC:10:0C:89:24
+# Fingerprint (SHA1): 1F:24:C6:30:CD:A4:18:EF:20:69:FF:AD:4F:DD:5F:46:3A:1B:69:AA
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "GlobalSign ECC Root CA - R5"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\037\044\306\060\315\244\030\357\040\151\377\255\117\335\137\106
+\072\033\151\252
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\237\255\073\034\002\036\212\272\027\164\070\201\014\242\274\010
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\120\061\044\060\042\006\003\125\004\013\023\033\107\154\157
+\142\141\154\123\151\147\156\040\105\103\103\040\122\157\157\164
+\040\103\101\040\055\040\122\065\061\023\060\021\006\003\125\004
+\012\023\012\107\154\157\142\141\154\123\151\147\156\061\023\060
+\021\006\003\125\004\003\023\012\107\154\157\142\141\154\123\151
+\147\156
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\140\131\111\340\046\056\273\125\371\012\167\212\161\371
+\112\330\154
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "USERTrust-temporary-intermediate-after-1024bit-removal"
+#
+# Issuer: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
+# Serial Number:5d:20:61:8e:8c:0e:b9:34:40:93:b9:b1:d8:63:95:b6
+# Subject: CN=USERTrust Legacy Secure Server CA,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Tue Aug 05 00:00:00 2014
+# Not Valid After : Sun Nov 01 23:59:59 2015
+# Fingerprint (SHA-256): 92:96:6E:83:44:D2:FB:3A:28:0E:B8:60:4D:81:40:77:4C:E1:A0:57:C5:82:BE:BC:83:4D:03:02:E8:59:BC:43
+# Fingerprint (SHA1): 7C:2F:91:E2:BB:96:68:A9:C6:F6:BD:10:19:2C:6B:52:5A:1B:BA:48
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "USERTrust-temporary-intermediate-after-1024bit-removal"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\177\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
+\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
+\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
+\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
+\164\167\157\162\153\061\052\060\050\006\003\125\004\003\023\041
+\125\123\105\122\124\162\165\163\164\040\114\145\147\141\143\171
+\040\123\145\143\165\162\145\040\123\145\162\166\145\162\040\103
+\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\157\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\046\060\044\006\003\125\004\013\023\035
+\101\144\144\124\162\165\163\164\040\105\170\164\145\162\156\141
+\154\040\124\124\120\040\116\145\164\167\157\162\153\061\042\060
+\040\006\003\125\004\003\023\031\101\144\144\124\162\165\163\164
+\040\105\170\164\145\162\156\141\154\040\103\101\040\122\157\157
+\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\135\040\141\216\214\016\271\064\100\223\271\261\330\143
+\225\266
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\231\060\202\003\201\240\003\002\001\002\002\020\135
+\040\141\216\214\016\271\064\100\223\271\261\330\143\225\266\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\157
+\061\013\060\011\006\003\125\004\006\023\002\123\105\061\024\060
+\022\006\003\125\004\012\023\013\101\144\144\124\162\165\163\164
+\040\101\102\061\046\060\044\006\003\125\004\013\023\035\101\144
+\144\124\162\165\163\164\040\105\170\164\145\162\156\141\154\040
+\124\124\120\040\116\145\164\167\157\162\153\061\042\060\040\006
+\003\125\004\003\023\031\101\144\144\124\162\165\163\164\040\105
+\170\164\145\162\156\141\154\040\103\101\040\122\157\157\164\060
+\036\027\015\061\064\060\070\060\065\060\060\060\060\060\060\132
+\027\015\061\065\061\061\060\061\062\063\065\071\065\071\132\060
+\177\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
+\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
+\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
+\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
+\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
+\167\157\162\153\061\052\060\050\006\003\125\004\003\023\041\125
+\123\105\122\124\162\165\163\164\040\114\145\147\141\143\171\040
+\123\145\143\165\162\145\040\123\145\162\166\145\162\040\103\101
+\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
+\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
+\000\331\115\040\072\346\051\060\206\362\351\206\211\166\064\116
+\150\037\226\104\367\321\371\326\202\116\246\070\236\356\313\133
+\341\216\056\275\362\127\200\375\311\077\374\220\163\104\274\217
+\273\127\133\345\055\037\024\060\165\066\365\177\274\317\126\364
+\177\201\377\256\221\315\330\322\152\313\227\371\367\315\220\152
+\105\055\304\273\244\205\023\150\127\137\357\051\272\052\312\352
+\365\314\244\004\233\143\315\000\353\375\355\215\335\043\306\173
+\036\127\035\066\177\037\010\232\015\141\333\132\154\161\002\123
+\050\302\372\215\375\253\273\263\361\215\164\113\337\275\275\314
+\006\223\143\011\225\302\020\172\235\045\220\062\235\001\302\071
+\123\260\340\025\153\307\327\164\345\244\042\233\344\224\377\204
+\221\373\055\263\031\103\055\223\017\234\022\011\344\147\271\047
+\172\062\255\172\052\314\101\130\300\156\131\137\356\070\053\027
+\042\234\211\372\156\347\345\127\065\364\132\355\222\225\223\055
+\371\314\044\077\245\034\075\047\275\042\003\163\314\365\312\363
+\251\364\334\376\317\351\320\134\320\017\253\207\374\203\375\310
+\251\002\003\001\000\001\243\202\001\037\060\202\001\033\060\037
+\006\003\125\035\043\004\030\060\026\200\024\255\275\230\172\064
+\264\046\367\372\304\046\124\357\003\275\340\044\313\124\032\060
+\035\006\003\125\035\016\004\026\004\024\257\244\100\257\237\026
+\376\253\061\375\373\325\227\213\365\221\243\044\206\026\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\206\060\022
+\006\003\125\035\023\001\001\377\004\010\060\006\001\001\377\002
+\001\000\060\035\006\003\125\035\045\004\026\060\024\006\010\053
+\006\001\005\005\007\003\001\006\010\053\006\001\005\005\007\003
+\002\060\031\006\003\125\035\040\004\022\060\020\060\016\006\014
+\053\006\001\004\001\262\061\001\002\001\003\004\060\104\006\003
+\125\035\037\004\075\060\073\060\071\240\067\240\065\206\063\150
+\164\164\160\072\057\057\143\162\154\056\165\163\145\162\164\162
+\165\163\164\056\143\157\155\057\101\144\144\124\162\165\163\164
+\105\170\164\145\162\156\141\154\103\101\122\157\157\164\056\143
+\162\154\060\065\006\010\053\006\001\005\005\007\001\001\004\051
+\060\047\060\045\006\010\053\006\001\005\005\007\060\001\206\031
+\150\164\164\160\072\057\057\157\143\163\160\056\165\163\145\162
+\164\162\165\163\164\056\143\157\155\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\001\001\000\204\256\055
+\150\070\021\154\203\121\142\300\221\302\230\274\306\073\372\245
+\305\275\073\011\346\156\140\157\060\003\206\042\032\262\213\363
+\306\316\036\273\033\171\340\026\024\115\322\232\005\113\377\217
+\354\360\050\051\352\052\004\035\075\257\021\022\325\111\230\120
+\102\237\141\146\072\266\100\231\004\014\153\020\062\351\367\317
+\206\130\117\055\315\323\254\176\350\133\152\203\174\015\240\234
+\134\120\066\165\015\155\176\102\267\337\246\334\220\134\157\043
+\116\227\035\363\042\165\277\003\065\346\135\177\307\371\233\054
+\207\366\216\326\045\226\131\235\317\352\020\036\357\156\352\132
+\233\167\030\064\314\201\167\257\232\207\302\012\345\345\236\023
+\225\123\275\275\111\032\245\166\022\366\334\362\221\267\351\032
+\341\274\115\075\225\161\175\370\215\174\076\003\117\123\355\376
+\122\375\312\137\223\341\032\001\033\002\267\163\116\272\146\351
+\170\213\120\376\021\313\321\147\320\042\117\167\352\315\024\025
+\100\256\146\135\350\056\177\036\210\157\125\171\326\271\176\343
+\265\375\221\240\300\362\046\207\113\057\235\365\240
+END
+
+# Trust for "USERTrust-temporary-intermediate-after-1024bit-removal"
+# Issuer: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
+# Serial Number:5d:20:61:8e:8c:0e:b9:34:40:93:b9:b1:d8:63:95:b6
+# Subject: CN=USERTrust Legacy Secure Server CA,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
+# Not Valid Before: Tue Aug 05 00:00:00 2014
+# Not Valid After : Sun Nov 01 23:59:59 2015
+# Fingerprint (SHA-256): 92:96:6E:83:44:D2:FB:3A:28:0E:B8:60:4D:81:40:77:4C:E1:A0:57:C5:82:BE:BC:83:4D:03:02:E8:59:BC:43
+# Fingerprint (SHA1): 7C:2F:91:E2:BB:96:68:A9:C6:F6:BD:10:19:2C:6B:52:5A:1B:BA:48
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "USERTrust-temporary-intermediate-after-1024bit-removal"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\174\057\221\342\273\226\150\251\306\366\275\020\031\054\153\122
+\132\033\272\110
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\131\153\146\214\004\251\341\013\017\356\105\245\220\044\037\016
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\157\061\013\060\011\006\003\125\004\006\023\002\123\105\061
+\024\060\022\006\003\125\004\012\023\013\101\144\144\124\162\165
+\163\164\040\101\102\061\046\060\044\006\003\125\004\013\023\035
+\101\144\144\124\162\165\163\164\040\105\170\164\145\162\156\141
+\154\040\124\124\120\040\116\145\164\167\157\162\153\061\042\060
+\040\006\003\125\004\003\023\031\101\144\144\124\162\165\163\164
+\040\105\170\164\145\162\156\141\154\040\103\101\040\122\157\157
+\164
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\135\040\141\216\214\016\271\064\100\223\271\261\330\143
+\225\266
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "VeriSign-C3SSA-G2-temporary-intermediate-after-1024bit-removal"
+#
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:2f:00:6e:cd:17:70:66:e7:5f:a3:82:0a:79:1f:05:ae
+# Subject: CN=VeriSign Class 3 Secure Server CA - G2,OU=Terms of use at https://www.verisign.com/rpa (c)09,OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Thu Mar 26 00:00:00 2009
+# Not Valid After : Sun Mar 24 23:59:59 2019
+# Fingerprint (SHA-256): 0A:41:51:D5:E5:8B:84:B8:AC:E5:3A:5C:12:12:2A:C9:59:CD:69:91:FB:B3:8E:99:B5:76:C0:AB:DA:C3:58:14
+# Fingerprint (SHA1): 76:44:59:78:1B:AC:B0:47:63:A5:D0:A1:58:91:65:26:1F:29:8E:3B
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign-C3SSA-G2-temporary-intermediate-after-1024bit-removal"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\265\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\073\060\071\006\003
+\125\004\013\023\062\124\145\162\155\163\040\157\146\040\165\163
+\145\040\141\164\040\150\164\164\160\163\072\057\057\167\167\167
+\056\166\145\162\151\163\151\147\156\056\143\157\155\057\162\160
+\141\040\050\143\051\060\071\061\057\060\055\006\003\125\004\003
+\023\046\126\145\162\151\123\151\147\156\040\103\154\141\163\163
+\040\063\040\123\145\143\165\162\145\040\123\145\162\166\145\162
+\040\103\101\040\055\040\107\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\066\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\057\000\156\315\027\160\146\347\137\243\202\012\171\037
+\005\256
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\071\060\202\004\041\240\003\002\001\002\002\020\057
+\000\156\315\027\160\146\347\137\243\202\012\171\037\005\256\060
+\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
+\312\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027
+\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147
+\156\054\040\111\156\143\056\061\037\060\035\006\003\125\004\013
+\023\026\126\145\162\151\123\151\147\156\040\124\162\165\163\164
+\040\116\145\164\167\157\162\153\061\072\060\070\006\003\125\004
+\013\023\061\050\143\051\040\062\060\060\066\040\126\145\162\151
+\123\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162
+\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040
+\157\156\154\171\061\105\060\103\006\003\125\004\003\023\074\126
+\145\162\151\123\151\147\156\040\103\154\141\163\163\040\063\040
+\120\165\142\154\151\143\040\120\162\151\155\141\162\171\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\107\065\060\036\027\015\060
+\071\060\063\062\066\060\060\060\060\060\060\132\027\015\061\071
+\060\063\062\064\062\063\065\071\065\071\132\060\201\265\061\013
+\060\011\006\003\125\004\006\023\002\125\123\061\027\060\025\006
+\003\125\004\012\023\016\126\145\162\151\123\151\147\156\054\040
+\111\156\143\056\061\037\060\035\006\003\125\004\013\023\026\126
+\145\162\151\123\151\147\156\040\124\162\165\163\164\040\116\145
+\164\167\157\162\153\061\073\060\071\006\003\125\004\013\023\062
+\124\145\162\155\163\040\157\146\040\165\163\145\040\141\164\040
+\150\164\164\160\163\072\057\057\167\167\167\056\166\145\162\151
+\163\151\147\156\056\143\157\155\057\162\160\141\040\050\143\051
+\060\071\061\057\060\055\006\003\125\004\003\023\046\126\145\162
+\151\123\151\147\156\040\103\154\141\163\163\040\063\040\123\145
+\143\165\162\145\040\123\145\162\166\145\162\040\103\101\040\055
+\040\107\062\060\202\001\042\060\015\006\011\052\206\110\206\367
+\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002
+\202\001\001\000\324\126\217\127\073\067\050\246\100\143\322\225
+\325\005\164\332\265\031\152\226\326\161\127\057\342\300\064\214
+\240\225\263\214\341\067\044\363\056\355\103\105\005\216\211\327
+\372\332\112\265\370\076\215\116\307\371\111\120\105\067\100\237
+\164\252\240\121\125\141\361\140\204\211\245\236\200\215\057\260
+\041\252\105\202\304\317\264\024\177\107\025\040\050\202\260\150
+\022\300\256\134\007\327\366\131\314\313\142\126\134\115\111\377
+\046\210\253\124\121\072\057\112\332\016\230\342\211\162\271\374
+\367\150\074\304\037\071\172\313\027\201\363\014\255\017\334\141
+\142\033\020\013\004\036\051\030\161\136\142\313\103\336\276\061
+\272\161\002\031\116\046\251\121\332\214\144\151\003\336\234\375
+\175\375\173\141\274\374\204\174\210\134\264\303\173\355\137\053
+\106\022\361\375\000\001\232\213\133\351\243\005\056\217\056\133
+\336\363\033\170\370\146\221\010\300\136\316\325\260\066\312\324
+\250\173\240\175\371\060\172\277\370\335\031\121\053\040\272\376
+\247\317\241\116\260\147\365\200\252\053\203\056\322\216\124\211
+\216\036\051\013\002\003\001\000\001\243\202\001\054\060\202\001
+\050\060\022\006\003\125\035\023\001\001\377\004\010\060\006\001
+\001\377\002\001\000\060\016\006\003\125\035\017\001\001\377\004
+\004\003\002\001\006\060\051\006\003\125\035\021\004\042\060\040
+\244\036\060\034\061\032\060\030\006\003\125\004\003\023\021\103
+\154\141\163\163\063\103\101\062\060\064\070\055\061\055\065\062
+\060\035\006\003\125\035\016\004\026\004\024\245\357\013\021\316
+\300\101\003\243\112\145\220\110\262\034\340\127\055\175\107\060
+\146\006\003\125\035\040\004\137\060\135\060\133\006\013\140\206
+\110\001\206\370\105\001\007\027\003\060\114\060\043\006\010\053
+\006\001\005\005\007\002\001\026\027\150\164\164\160\163\072\057
+\057\144\056\163\171\155\143\142\056\143\157\155\057\143\160\163
+\060\045\006\010\053\006\001\005\005\007\002\002\060\031\032\027
+\150\164\164\160\163\072\057\057\144\056\163\171\155\143\142\056
+\143\157\155\057\162\160\141\060\057\006\003\125\035\037\004\050
+\060\046\060\044\240\042\240\040\206\036\150\164\164\160\072\057
+\057\163\056\163\171\155\143\142\056\143\157\155\057\160\143\141
+\063\055\147\065\056\143\162\154\060\037\006\003\125\035\043\004
+\030\060\026\200\024\177\323\145\247\302\335\354\273\360\060\011
+\363\103\071\372\002\257\063\061\063\060\015\006\011\052\206\110
+\206\367\015\001\001\005\005\000\003\202\001\001\000\053\216\024
+\314\354\206\010\140\067\213\154\145\211\045\041\336\057\122\242
+\007\236\130\323\263\026\170\001\231\121\225\264\023\167\314\167
+\335\013\134\201\067\326\276\366\142\326\004\067\013\030\163\232
+\323\366\301\242\036\155\234\273\214\021\346\076\022\136\007\137
+\013\203\134\164\002\340\120\364\261\046\033\155\306\350\351\277
+\115\271\001\025\031\354\120\232\371\021\360\201\130\103\054\115
+\021\100\263\132\106\010\246\136\163\241\210\022\065\214\377\003
+\072\275\326\235\372\347\334\226\271\032\144\076\304\375\331\012
+\266\145\236\272\245\250\130\374\073\042\360\242\127\356\212\127
+\107\234\167\307\045\341\254\064\005\115\363\202\176\101\043\272
+\264\127\363\347\306\001\145\327\115\211\231\034\151\115\136\170
+\366\353\162\161\075\262\304\225\001\237\135\014\267\057\045\246
+\134\171\101\357\236\304\147\074\241\235\177\161\072\320\225\227
+\354\170\102\164\230\156\276\076\150\114\127\074\250\223\101\207
+\013\344\271\257\221\373\120\114\014\272\300\044\047\321\025\333
+\145\110\041\012\057\327\334\176\240\314\145\176\171
+END
+
+# Trust for "VeriSign-C3SSA-G2-temporary-intermediate-after-1024bit-removal"
+# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Serial Number:2f:00:6e:cd:17:70:66:e7:5f:a3:82:0a:79:1f:05:ae
+# Subject: CN=VeriSign Class 3 Secure Server CA - G2,OU=Terms of use at https://www.verisign.com/rpa (c)09,OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
+# Not Valid Before: Thu Mar 26 00:00:00 2009
+# Not Valid After : Sun Mar 24 23:59:59 2019
+# Fingerprint (SHA-256): 0A:41:51:D5:E5:8B:84:B8:AC:E5:3A:5C:12:12:2A:C9:59:CD:69:91:FB:B3:8E:99:B5:76:C0:AB:DA:C3:58:14
+# Fingerprint (SHA1): 76:44:59:78:1B:AC:B0:47:63:A5:D0:A1:58:91:65:26:1F:29:8E:3B
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "VeriSign-C3SSA-G2-temporary-intermediate-after-1024bit-removal"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\166\104\131\170\033\254\260\107\143\245\320\241\130\221\145\046
+\037\051\216\073
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\277\022\155\372\174\325\133\046\171\072\215\252\021\357\057\134
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\312\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123
+\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125
+\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165
+\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003
+\125\004\013\023\061\050\143\051\040\062\060\060\066\040\126\145
+\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106
+\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163
+\145\040\157\156\154\171\061\105\060\103\006\003\125\004\003\023
+\074\126\145\162\151\123\151\147\156\040\103\154\141\163\163\040
+\063\040\120\165\142\154\151\143\040\120\162\151\155\141\162\171
+\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040\101
+\165\164\150\157\162\151\164\171\040\055\040\107\065
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\057\000\156\315\027\160\146\347\137\243\202\012\171\037
+\005\256
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Staat der Nederlanden Root CA - G3"
+#
+# Issuer: CN=Staat der Nederlanden Root CA - G3,O=Staat der Nederlanden,C=NL
+# Serial Number: 10003001 (0x98a239)
+# Subject: CN=Staat der Nederlanden Root CA - G3,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Thu Nov 14 11:28:42 2013
+# Not Valid After : Mon Nov 13 23:00:00 2028
+# Fingerprint (SHA-256): 3C:4F:B0:B9:5A:B8:B3:00:32:F4:32:B8:6F:53:5F:E1:72:C1:85:D0:FD:39:86:58:37:CF:36:18:7F:A6:F4:28
+# Fingerprint (SHA1): D8:EB:6B:41:51:92:59:E0:F3:E7:85:00:C0:3D:B6:88:97:C9:EE:FC
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden Root CA - G3"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\053\060\051\006\003\125\004\003\014\042\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101\040\055\040\107\063
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\053\060\051\006\003\125\004\003\014\042\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\242\071
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\164\060\202\003\134\240\003\002\001\002\002\004\000
+\230\242\071\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\132\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\036\060\034\006\003\125\004\012\014\025\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\061\053\060\051\006\003\125\004\003\014\042\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\040\122\157\157\164\040\103\101\040\055\040\107\063\060\036
+\027\015\061\063\061\061\061\064\061\061\062\070\064\062\132\027
+\015\062\070\061\061\061\063\062\063\060\060\060\060\132\060\132
+\061\013\060\011\006\003\125\004\006\023\002\116\114\061\036\060
+\034\006\003\125\004\012\014\025\123\164\141\141\164\040\144\145
+\162\040\116\145\144\145\162\154\141\156\144\145\156\061\053\060
+\051\006\003\125\004\003\014\042\123\164\141\141\164\040\144\145
+\162\040\116\145\144\145\162\154\141\156\144\145\156\040\122\157
+\157\164\040\103\101\040\055\040\107\063\060\202\002\042\060\015
+\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002
+\017\000\060\202\002\012\002\202\002\001\000\276\062\242\124\017
+\160\373\054\134\131\353\154\304\244\121\350\205\052\263\314\112
+\064\362\260\137\363\016\307\034\075\123\036\210\010\150\330\157
+\075\255\302\236\314\202\147\007\047\207\150\161\072\237\165\226
+\042\106\005\260\355\255\307\133\236\052\336\234\374\072\306\225
+\247\365\027\147\030\347\057\111\010\014\134\317\346\314\064\355
+\170\373\120\261\334\153\062\360\242\376\266\074\344\354\132\227
+\307\077\036\160\010\060\240\334\305\263\155\157\320\202\162\021
+\253\322\201\150\131\202\027\267\170\222\140\372\314\336\077\204
+\353\215\070\063\220\012\162\043\372\065\314\046\161\061\321\162
+\050\222\331\133\043\155\146\265\155\007\102\353\246\063\316\222
+\333\300\366\154\143\170\315\312\116\075\265\345\122\233\361\276
+\073\346\124\140\260\146\036\011\253\007\376\124\211\021\102\321
+\367\044\272\140\170\032\230\367\311\021\375\026\301\065\032\124
+\165\357\103\323\345\256\116\316\347\173\303\306\116\141\121\113
+\253\232\105\113\241\037\101\275\110\123\025\161\144\013\206\263
+\345\056\276\316\244\033\301\051\204\242\265\313\010\043\166\103
+\042\044\037\027\004\324\156\234\306\374\177\053\146\032\354\212
+\345\326\317\115\365\143\011\267\025\071\326\173\254\353\343\174
+\351\116\374\165\102\310\355\130\225\014\006\102\242\234\367\344
+\160\263\337\162\157\132\067\100\211\330\205\244\327\361\013\336
+\103\031\324\112\130\054\214\212\071\236\277\204\207\361\026\073
+\066\014\351\323\264\312\154\031\101\122\011\241\035\260\152\277
+\202\357\160\121\041\062\334\005\166\214\313\367\144\344\003\120
+\257\214\221\147\253\305\362\356\130\330\336\276\367\347\061\317
+\154\311\073\161\301\325\210\265\145\274\300\350\027\027\007\022
+\265\134\322\253\040\223\264\346\202\203\160\066\305\315\243\215
+\255\213\354\243\301\103\207\346\103\342\064\276\225\213\065\355
+\007\071\332\250\035\172\237\066\236\022\260\014\145\022\220\025
+\140\331\046\100\104\343\126\140\245\020\324\152\074\375\101\334
+\016\132\107\266\357\227\141\165\117\331\376\307\262\035\324\355
+\135\111\263\251\152\313\146\204\023\325\134\240\334\337\156\167
+\006\321\161\165\310\127\157\257\017\167\133\002\003\001\000\001
+\243\102\060\100\060\017\006\003\125\035\023\001\001\377\004\005
+\060\003\001\001\377\060\016\006\003\125\035\017\001\001\377\004
+\004\003\002\001\006\060\035\006\003\125\035\016\004\026\004\024
+\124\255\372\307\222\127\256\312\065\234\056\022\373\344\272\135
+\040\334\224\127\060\015\006\011\052\206\110\206\367\015\001\001
+\013\005\000\003\202\002\001\000\060\231\235\005\062\310\136\016
+\073\230\001\072\212\244\347\007\367\172\370\347\232\337\120\103
+\123\227\052\075\312\074\107\230\056\341\025\173\361\222\363\141
+\332\220\045\026\145\300\237\124\135\016\003\073\133\167\002\234
+\204\266\015\230\137\064\335\073\143\302\303\050\201\302\234\051
+\056\051\342\310\303\001\362\063\352\052\252\314\011\010\367\145
+\147\306\315\337\323\266\053\247\275\314\321\016\160\137\270\043
+\321\313\221\116\012\364\310\172\345\331\143\066\301\324\337\374
+\042\227\367\140\135\352\051\057\130\262\275\130\275\215\226\117
+\020\165\277\110\173\075\121\207\241\074\164\042\302\374\007\177
+\200\334\304\254\376\152\301\160\060\260\351\216\151\342\054\151
+\201\224\011\272\335\376\115\300\203\214\224\130\300\106\040\257
+\234\037\002\370\065\125\111\057\106\324\300\360\240\226\002\017
+\063\305\161\363\236\043\175\224\267\375\072\323\011\203\006\041
+\375\140\075\256\062\300\322\356\215\246\360\347\264\202\174\012
+\314\160\311\171\200\370\376\114\367\065\204\031\212\061\373\012
+\331\327\177\233\360\242\232\153\303\005\112\355\101\140\024\060
+\321\252\021\102\156\323\043\002\004\013\306\145\335\335\122\167
+\332\201\153\262\250\372\001\070\271\226\352\052\154\147\227\211
+\224\236\274\341\124\325\344\152\170\357\112\275\053\232\075\100
+\176\306\300\165\322\156\373\150\060\354\354\213\235\371\111\065
+\232\032\054\331\263\225\071\325\036\222\367\246\271\145\057\345
+\075\155\072\110\114\010\334\344\050\022\050\276\175\065\134\352
+\340\026\176\023\033\152\327\076\327\236\374\055\165\262\301\024
+\325\043\003\333\133\157\013\076\170\057\015\336\063\215\026\267
+\110\347\203\232\201\017\173\301\103\115\125\004\027\070\112\121
+\325\131\242\211\164\323\237\276\036\113\327\306\155\267\210\044
+\157\140\221\244\202\205\133\126\101\274\320\104\253\152\023\276
+\321\054\130\267\022\063\130\262\067\143\334\023\365\224\035\077
+\100\121\365\117\365\072\355\310\305\353\302\036\035\026\225\172
+\307\176\102\161\223\156\113\025\267\060\337\252\355\127\205\110
+\254\035\152\335\071\151\344\341\171\170\276\316\005\277\241\014
+\367\200\173\041\147\047\060\131
+END
+
+# Trust for "Staat der Nederlanden Root CA - G3"
+# Issuer: CN=Staat der Nederlanden Root CA - G3,O=Staat der Nederlanden,C=NL
+# Serial Number: 10003001 (0x98a239)
+# Subject: CN=Staat der Nederlanden Root CA - G3,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Thu Nov 14 11:28:42 2013
+# Not Valid After : Mon Nov 13 23:00:00 2028
+# Fingerprint (SHA-256): 3C:4F:B0:B9:5A:B8:B3:00:32:F4:32:B8:6F:53:5F:E1:72:C1:85:D0:FD:39:86:58:37:CF:36:18:7F:A6:F4:28
+# Fingerprint (SHA1): D8:EB:6B:41:51:92:59:E0:F3:E7:85:00:C0:3D:B6:88:97:C9:EE:FC
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden Root CA - G3"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\330\353\153\101\121\222\131\340\363\347\205\000\300\075\266\210
+\227\311\356\374
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\013\106\147\007\333\020\057\031\214\065\120\140\321\013\364\067
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\132\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\053\060\051\006\003\125\004\003\014\042\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\122\157\157\164\040\103\101\040\055\040\107\063
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\242\071
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Staat der Nederlanden EV Root CA"
+#
+# Issuer: CN=Staat der Nederlanden EV Root CA,O=Staat der Nederlanden,C=NL
+# Serial Number: 10000013 (0x98968d)
+# Subject: CN=Staat der Nederlanden EV Root CA,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Wed Dec 08 11:19:29 2010
+# Not Valid After : Thu Dec 08 11:10:28 2022
+# Fingerprint (SHA-256): 4D:24:91:41:4C:FE:95:67:46:EC:4C:EF:A6:CF:6F:72:E2:8A:13:29:43:2F:9D:8A:90:7A:C4:CB:5D:AD:C1:5A
+# Fingerprint (SHA1): 76:E2:7E:C1:4F:DB:82:C1:C0:A6:75:B5:05:BE:3D:29:B4:ED:DB:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden EV Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\051\060\047\006\003\125\004\003\014\040\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\105\126\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\051\060\047\006\003\125\004\003\014\040\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\105\126\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\226\215
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\160\060\202\003\130\240\003\002\001\002\002\004\000
+\230\226\215\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\130\061\013\060\011\006\003\125\004\006\023\002\116
+\114\061\036\060\034\006\003\125\004\012\014\025\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\061\051\060\047\006\003\125\004\003\014\040\123\164\141\141
+\164\040\144\145\162\040\116\145\144\145\162\154\141\156\144\145
+\156\040\105\126\040\122\157\157\164\040\103\101\060\036\027\015
+\061\060\061\062\060\070\061\061\061\071\062\071\132\027\015\062
+\062\061\062\060\070\061\061\061\060\062\070\132\060\130\061\013
+\060\011\006\003\125\004\006\023\002\116\114\061\036\060\034\006
+\003\125\004\012\014\025\123\164\141\141\164\040\144\145\162\040
+\116\145\144\145\162\154\141\156\144\145\156\061\051\060\047\006
+\003\125\004\003\014\040\123\164\141\141\164\040\144\145\162\040
+\116\145\144\145\162\154\141\156\144\145\156\040\105\126\040\122
+\157\157\164\040\103\101\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\343\307\176\211\371\044\113\072\322
+\063\203\065\054\151\354\334\011\244\343\121\250\045\053\171\270
+\010\075\340\221\272\204\205\306\205\244\312\346\311\056\123\244
+\311\044\036\375\125\146\161\135\054\305\140\150\004\267\331\302
+\122\046\070\210\244\326\073\100\246\302\315\077\315\230\223\263
+\124\024\130\226\125\325\120\376\206\255\244\143\177\134\207\366
+\216\346\047\222\147\027\222\002\003\054\334\326\146\164\355\335
+\147\377\301\141\215\143\117\017\233\155\027\060\046\357\253\322
+\037\020\240\371\305\177\026\151\201\003\107\355\036\150\215\162
+\241\115\262\046\306\272\154\137\155\326\257\321\261\023\216\251
+\255\363\136\151\165\046\030\076\101\053\041\177\356\213\135\007
+\006\235\103\304\051\012\053\374\052\076\206\313\074\203\072\371
+\311\015\332\305\231\342\274\170\101\063\166\341\277\057\135\345
+\244\230\120\014\025\335\340\372\234\177\070\150\320\262\246\172
+\247\321\061\275\176\212\130\047\103\263\272\063\221\323\247\230
+\025\134\232\346\323\017\165\331\374\101\230\227\076\252\045\333
+\217\222\056\260\173\014\137\361\143\251\067\371\233\165\151\114
+\050\046\045\332\325\362\022\160\105\125\343\337\163\136\067\365
+\041\154\220\216\065\132\311\323\043\353\323\300\276\170\254\102
+\050\130\146\245\106\155\160\002\327\020\371\113\124\374\135\206
+\112\207\317\177\312\105\254\021\132\265\040\121\215\057\210\107
+\227\071\300\317\272\300\102\001\100\231\110\041\013\153\247\322
+\375\226\325\321\276\106\235\111\340\013\246\240\042\116\070\320
+\301\074\060\274\160\217\054\165\314\320\305\214\121\073\075\224
+\010\144\046\141\175\271\303\145\217\024\234\041\320\252\375\027
+\162\003\217\275\233\214\346\136\123\236\271\235\357\202\273\341
+\274\342\162\101\133\041\224\323\105\067\224\321\337\011\071\135
+\347\043\252\232\035\312\155\250\012\206\205\212\202\276\102\007
+\326\362\070\202\163\332\207\133\345\074\323\236\076\247\073\236
+\364\003\263\371\361\175\023\164\002\377\273\241\345\372\000\171
+\034\246\146\101\210\134\140\127\246\056\011\304\272\375\232\317
+\247\037\100\303\273\314\132\012\125\113\073\070\166\121\270\143
+\213\204\224\026\346\126\363\002\003\001\000\001\243\102\060\100
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001
+\006\060\035\006\003\125\035\016\004\026\004\024\376\253\000\220
+\230\236\044\374\251\314\032\212\373\047\270\277\060\156\250\073
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003
+\202\002\001\000\317\167\054\156\126\276\116\263\266\204\000\224
+\253\107\311\015\322\166\307\206\237\035\007\323\266\264\273\010
+\170\257\151\322\013\111\336\063\305\254\255\302\210\002\175\006
+\267\065\002\301\140\311\277\304\350\224\336\324\323\251\023\045
+\132\376\156\242\256\175\005\334\175\363\154\360\176\246\215\356
+\331\327\316\130\027\350\251\051\256\163\110\207\347\233\312\156
+\051\241\144\137\031\023\367\256\006\020\377\121\306\233\115\125
+\045\117\223\231\020\001\123\165\361\023\316\307\246\101\101\322
+\277\210\245\177\105\374\254\270\245\265\063\014\202\304\373\007
+\366\152\345\045\204\137\006\312\301\206\071\021\333\130\315\167
+\073\054\302\114\017\136\232\343\360\253\076\141\033\120\044\302
+\300\364\361\031\360\021\051\266\245\030\002\233\327\143\114\160
+\214\107\243\003\103\134\271\135\106\240\015\157\377\131\216\276
+\335\237\162\303\133\053\337\214\133\316\345\014\106\154\222\262
+\012\243\114\124\102\030\025\022\030\275\332\374\272\164\156\377
+\301\266\240\144\330\251\137\125\256\237\134\152\166\226\330\163
+\147\207\373\115\177\134\356\151\312\163\020\373\212\251\375\236
+\275\066\070\111\111\207\364\016\024\360\351\207\270\077\247\117
+\172\132\216\171\324\223\344\273\150\122\204\254\154\351\363\230
+\160\125\162\062\371\064\253\053\111\265\315\040\142\344\072\172
+\147\143\253\226\334\155\256\227\354\374\237\166\126\210\056\146
+\317\133\266\311\244\260\327\005\272\341\047\057\223\273\046\052
+\242\223\260\033\363\216\276\035\100\243\271\066\217\076\202\032
+\032\136\210\352\120\370\131\342\203\106\051\013\343\104\134\341
+\225\266\151\220\232\024\157\227\256\201\317\150\357\231\232\276
+\265\347\341\177\370\372\023\107\026\114\314\155\010\100\347\213
+\170\157\120\202\104\120\077\146\006\212\253\103\204\126\112\017
+\040\055\206\016\365\322\333\322\172\212\113\315\245\350\116\361
+\136\046\045\001\131\043\240\176\322\366\176\041\127\327\047\274
+\025\127\114\244\106\301\340\203\036\014\114\115\037\117\006\031
+\342\371\250\364\072\202\241\262\171\103\171\326\255\157\172\047
+\220\003\244\352\044\207\077\331\275\331\351\362\137\120\111\034
+\356\354\327\056
+END
+
+# Trust for "Staat der Nederlanden EV Root CA"
+# Issuer: CN=Staat der Nederlanden EV Root CA,O=Staat der Nederlanden,C=NL
+# Serial Number: 10000013 (0x98968d)
+# Subject: CN=Staat der Nederlanden EV Root CA,O=Staat der Nederlanden,C=NL
+# Not Valid Before: Wed Dec 08 11:19:29 2010
+# Not Valid After : Thu Dec 08 11:10:28 2022
+# Fingerprint (SHA-256): 4D:24:91:41:4C:FE:95:67:46:EC:4C:EF:A6:CF:6F:72:E2:8A:13:29:43:2F:9D:8A:90:7A:C4:CB:5D:AD:C1:5A
+# Fingerprint (SHA1): 76:E2:7E:C1:4F:DB:82:C1:C0:A6:75:B5:05:BE:3D:29:B4:ED:DB:BB
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Staat der Nederlanden EV Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\166\342\176\301\117\333\202\301\300\246\165\265\005\276\075\051
+\264\355\333\273
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\374\006\257\173\350\032\361\232\264\350\322\160\037\300\365\272
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\130\061\013\060\011\006\003\125\004\006\023\002\116\114\061
+\036\060\034\006\003\125\004\012\014\025\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\061
+\051\060\047\006\003\125\004\003\014\040\123\164\141\141\164\040
+\144\145\162\040\116\145\144\145\162\154\141\156\144\145\156\040
+\105\126\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\000\230\226\215
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "IdenTrust Commercial Root CA 1"
+#
+# Issuer: CN=IdenTrust Commercial Root CA 1,O=IdenTrust,C=US
+# Serial Number:0a:01:42:80:00:00:01:45:23:c8:44:b5:00:00:00:02
+# Subject: CN=IdenTrust Commercial Root CA 1,O=IdenTrust,C=US
+# Not Valid Before: Thu Jan 16 18:12:23 2014
+# Not Valid After : Mon Jan 16 18:12:23 2034
+# Fingerprint (SHA-256): 5D:56:49:9B:E4:D2:E0:8B:CF:CA:D0:8A:3E:38:72:3D:50:50:3B:DE:70:69:48:E4:2F:55:60:30:19:E5:28:AE
+# Fingerprint (SHA1): DF:71:7E:AA:4A:D9:4E:C9:55:84:99:60:2D:48:DE:5F:BC:F0:3A:25
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "IdenTrust Commercial Root CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\022\060\020\006\003\125\004\012\023\011\111\144\145\156\124\162
+\165\163\164\061\047\060\045\006\003\125\004\003\023\036\111\144
+\145\156\124\162\165\163\164\040\103\157\155\155\145\162\143\151
+\141\154\040\122\157\157\164\040\103\101\040\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\022\060\020\006\003\125\004\012\023\011\111\144\145\156\124\162
+\165\163\164\061\047\060\045\006\003\125\004\003\023\036\111\144
+\145\156\124\162\165\163\164\040\103\157\155\155\145\162\143\151
+\141\154\040\122\157\157\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\012\001\102\200\000\000\001\105\043\310\104\265\000\000
+\000\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\140\060\202\003\110\240\003\002\001\002\002\020\012
+\001\102\200\000\000\001\105\043\310\104\265\000\000\000\002\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\112
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\022\060
+\020\006\003\125\004\012\023\011\111\144\145\156\124\162\165\163
+\164\061\047\060\045\006\003\125\004\003\023\036\111\144\145\156
+\124\162\165\163\164\040\103\157\155\155\145\162\143\151\141\154
+\040\122\157\157\164\040\103\101\040\061\060\036\027\015\061\064
+\060\061\061\066\061\070\061\062\062\063\132\027\015\063\064\060
+\061\061\066\061\070\061\062\062\063\132\060\112\061\013\060\011
+\006\003\125\004\006\023\002\125\123\061\022\060\020\006\003\125
+\004\012\023\011\111\144\145\156\124\162\165\163\164\061\047\060
+\045\006\003\125\004\003\023\036\111\144\145\156\124\162\165\163
+\164\040\103\157\155\155\145\162\143\151\141\154\040\122\157\157
+\164\040\103\101\040\061\060\202\002\042\060\015\006\011\052\206
+\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202
+\002\012\002\202\002\001\000\247\120\031\336\077\231\075\324\063
+\106\361\157\121\141\202\262\251\117\217\147\211\135\204\331\123
+\335\014\050\331\327\360\377\256\225\103\162\231\371\265\135\174
+\212\301\102\341\061\120\164\321\201\015\174\315\233\041\253\103
+\342\254\255\136\206\156\363\011\212\037\132\062\275\242\353\224
+\371\350\134\012\354\377\230\322\257\161\263\264\123\237\116\207
+\357\222\274\275\354\117\062\060\210\113\027\136\127\304\123\302
+\366\002\227\215\331\142\053\277\044\037\142\215\337\303\270\051
+\113\111\170\074\223\140\210\042\374\231\332\066\310\302\242\324
+\054\124\000\147\065\156\163\277\002\130\360\244\335\345\260\242
+\046\172\312\340\066\245\031\026\365\375\267\357\256\077\100\365
+\155\132\004\375\316\064\312\044\334\164\043\033\135\063\023\022
+\135\304\001\045\366\060\335\002\135\237\340\325\107\275\264\353
+\033\241\273\111\111\330\237\133\002\363\212\344\044\220\344\142
+\117\117\301\257\213\016\164\027\250\321\162\210\152\172\001\111
+\314\264\106\171\306\027\261\332\230\036\007\131\372\165\041\205
+\145\335\220\126\316\373\253\245\140\235\304\235\371\122\260\213
+\275\207\371\217\053\043\012\043\166\073\367\063\341\311\000\363
+\151\371\113\242\340\116\274\176\223\071\204\007\367\104\160\176
+\376\007\132\345\261\254\321\030\314\362\065\345\111\111\010\312
+\126\311\075\373\017\030\175\213\073\301\023\302\115\217\311\117
+\016\067\351\037\241\016\152\337\142\056\313\065\006\121\171\054
+\310\045\070\364\372\113\247\211\134\234\322\343\015\071\206\112
+\164\174\325\131\207\302\077\116\014\134\122\364\075\367\122\202
+\361\352\243\254\375\111\064\032\050\363\101\210\072\023\356\350
+\336\377\231\035\137\272\313\350\036\362\271\120\140\300\061\323
+\163\345\357\276\240\355\063\013\164\276\040\040\304\147\154\360
+\010\003\172\125\200\177\106\116\226\247\364\036\076\341\366\330
+\011\341\063\144\053\143\327\062\136\237\371\300\173\017\170\157
+\227\274\223\232\371\234\022\220\170\172\200\207\025\327\162\164
+\234\125\164\170\261\272\341\156\160\004\272\117\240\272\150\303
+\173\377\061\360\163\075\075\224\052\261\013\101\016\240\376\115
+\210\145\153\171\063\264\327\002\003\001\000\001\243\102\060\100
+\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006
+\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001
+\377\060\035\006\003\125\035\016\004\026\004\024\355\104\031\300
+\323\360\006\213\356\244\173\276\102\347\046\124\310\216\066\166
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003
+\202\002\001\000\015\256\220\062\366\246\113\174\104\166\031\141
+\036\047\050\315\136\124\357\045\274\343\010\220\371\051\327\256
+\150\010\341\224\000\130\357\056\056\176\123\122\214\266\134\007
+\352\210\272\231\213\120\224\327\202\200\337\141\011\000\223\255
+\015\024\346\316\301\362\067\224\170\260\137\234\263\242\163\270
+\217\005\223\070\315\215\076\260\270\373\300\317\261\362\354\055
+\055\033\314\354\252\232\263\252\140\202\033\055\073\303\204\075
+\127\212\226\036\234\165\270\323\060\315\140\010\203\220\323\216
+\124\361\115\146\300\135\164\003\100\243\356\205\176\302\037\167
+\234\006\350\301\247\030\135\122\225\355\311\335\045\236\155\372
+\251\355\243\072\064\320\131\173\332\355\120\363\065\277\355\353
+\024\115\061\307\140\364\332\361\207\234\342\110\342\306\305\067
+\373\006\020\372\165\131\146\061\107\051\332\166\232\034\351\202
+\256\357\232\271\121\367\210\043\232\151\225\142\074\345\125\200
+\066\327\124\002\377\361\271\135\316\324\043\157\330\105\204\112
+\133\145\357\211\014\335\024\247\040\313\030\245\045\264\015\371
+\001\360\242\322\364\000\310\164\216\241\052\110\216\145\333\023
+\304\342\045\027\175\353\276\207\133\027\040\124\121\223\112\123
+\003\013\354\135\312\063\355\142\375\105\307\057\133\334\130\240
+\200\071\346\372\327\376\023\024\246\355\075\224\112\102\164\324
+\303\167\131\163\315\217\106\276\125\070\357\372\350\221\062\352
+\227\130\004\042\336\070\303\314\274\155\311\063\072\152\012\151
+\077\240\310\352\162\217\214\143\206\043\275\155\074\226\236\225
+\340\111\114\252\242\271\052\033\234\066\201\170\355\303\350\106
+\342\046\131\104\165\036\331\165\211\121\315\020\204\235\141\140
+\313\135\371\227\042\115\216\230\346\343\177\366\133\273\256\315
+\312\112\201\153\136\013\363\121\341\164\053\351\176\047\247\331
+\231\111\116\370\245\200\333\045\017\034\143\142\212\311\063\147
+\153\074\020\203\306\255\336\250\315\026\216\215\360\007\067\161
+\237\362\253\374\101\365\301\213\354\000\067\135\011\345\116\200
+\357\372\261\134\070\006\245\033\112\341\334\070\055\074\334\253
+\037\220\032\325\112\234\356\321\160\154\314\356\364\127\370\030
+\272\204\156\207
+END
+
+# Trust for "IdenTrust Commercial Root CA 1"
+# Issuer: CN=IdenTrust Commercial Root CA 1,O=IdenTrust,C=US
+# Serial Number:0a:01:42:80:00:00:01:45:23:c8:44:b5:00:00:00:02
+# Subject: CN=IdenTrust Commercial Root CA 1,O=IdenTrust,C=US
+# Not Valid Before: Thu Jan 16 18:12:23 2014
+# Not Valid After : Mon Jan 16 18:12:23 2034
+# Fingerprint (SHA-256): 5D:56:49:9B:E4:D2:E0:8B:CF:CA:D0:8A:3E:38:72:3D:50:50:3B:DE:70:69:48:E4:2F:55:60:30:19:E5:28:AE
+# Fingerprint (SHA1): DF:71:7E:AA:4A:D9:4E:C9:55:84:99:60:2D:48:DE:5F:BC:F0:3A:25
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "IdenTrust Commercial Root CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\337\161\176\252\112\331\116\311\125\204\231\140\055\110\336\137
+\274\360\072\045
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\263\076\167\163\165\356\240\323\343\176\111\143\111\131\273\307
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\112\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\022\060\020\006\003\125\004\012\023\011\111\144\145\156\124\162
+\165\163\164\061\047\060\045\006\003\125\004\003\023\036\111\144
+\145\156\124\162\165\163\164\040\103\157\155\155\145\162\143\151
+\141\154\040\122\157\157\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\012\001\102\200\000\000\001\105\043\310\104\265\000\000
+\000\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "IdenTrust Public Sector Root CA 1"
+#
+# Issuer: CN=IdenTrust Public Sector Root CA 1,O=IdenTrust,C=US
+# Serial Number:0a:01:42:80:00:00:01:45:23:cf:46:7c:00:00:00:02
+# Subject: CN=IdenTrust Public Sector Root CA 1,O=IdenTrust,C=US
+# Not Valid Before: Thu Jan 16 17:53:32 2014
+# Not Valid After : Mon Jan 16 17:53:32 2034
+# Fingerprint (SHA-256): 30:D0:89:5A:9A:44:8A:26:20:91:63:55:22:D1:F5:20:10:B5:86:7A:CA:E1:2C:78:EF:95:8F:D4:F4:38:9F:2F
+# Fingerprint (SHA1): BA:29:41:60:77:98:3F:F4:F3:EF:F2:31:05:3B:2E:EA:6D:4D:45:FD
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "IdenTrust Public Sector Root CA 1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\115\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\022\060\020\006\003\125\004\012\023\011\111\144\145\156\124\162
+\165\163\164\061\052\060\050\006\003\125\004\003\023\041\111\144
+\145\156\124\162\165\163\164\040\120\165\142\154\151\143\040\123
+\145\143\164\157\162\040\122\157\157\164\040\103\101\040\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\115\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\022\060\020\006\003\125\004\012\023\011\111\144\145\156\124\162
+\165\163\164\061\052\060\050\006\003\125\004\003\023\041\111\144
+\145\156\124\162\165\163\164\040\120\165\142\154\151\143\040\123
+\145\143\164\157\162\040\122\157\157\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\012\001\102\200\000\000\001\105\043\317\106\174\000\000
+\000\002
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\146\060\202\003\116\240\003\002\001\002\002\020\012
+\001\102\200\000\000\001\105\043\317\106\174\000\000\000\002\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\115
+\061\013\060\011\006\003\125\004\006\023\002\125\123\061\022\060
+\020\006\003\125\004\012\023\011\111\144\145\156\124\162\165\163
+\164\061\052\060\050\006\003\125\004\003\023\041\111\144\145\156
+\124\162\165\163\164\040\120\165\142\154\151\143\040\123\145\143
+\164\157\162\040\122\157\157\164\040\103\101\040\061\060\036\027
+\015\061\064\060\061\061\066\061\067\065\063\063\062\132\027\015
+\063\064\060\061\061\066\061\067\065\063\063\062\132\060\115\061
+\013\060\011\006\003\125\004\006\023\002\125\123\061\022\060\020
+\006\003\125\004\012\023\011\111\144\145\156\124\162\165\163\164
+\061\052\060\050\006\003\125\004\003\023\041\111\144\145\156\124
+\162\165\163\164\040\120\165\142\154\151\143\040\123\145\143\164
+\157\162\040\122\157\157\164\040\103\101\040\061\060\202\002\042
+\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003
+\202\002\017\000\060\202\002\012\002\202\002\001\000\266\042\224
+\374\244\110\257\350\107\153\012\373\047\166\344\362\077\212\073
+\172\112\054\061\052\214\215\260\251\303\061\153\250\167\166\204
+\046\266\254\201\102\015\010\353\125\130\273\172\370\274\145\175
+\362\240\155\213\250\107\351\142\166\036\021\356\010\024\321\262
+\104\026\364\352\320\372\036\057\136\333\313\163\101\256\274\000
+\260\112\053\100\262\254\341\073\113\302\055\235\344\241\233\354
+\032\072\036\360\010\263\320\344\044\065\007\237\234\264\311\122
+\155\333\007\312\217\265\133\360\203\363\117\307\055\245\310\255
+\313\225\040\244\061\050\127\130\132\344\215\033\232\253\236\015
+\014\362\012\063\071\042\071\012\227\056\363\123\167\271\104\105
+\375\204\313\066\040\201\131\055\232\157\155\110\110\141\312\114
+\337\123\321\257\122\274\104\237\253\057\153\203\162\357\165\200
+\332\006\063\033\135\310\332\143\306\115\315\254\146\061\315\321
+\336\076\207\020\066\341\271\244\172\357\140\120\262\313\312\246
+\126\340\067\257\253\064\023\071\045\350\071\146\344\230\172\252
+\022\230\234\131\146\206\076\255\361\260\312\076\006\017\173\360
+\021\113\067\240\104\155\173\313\250\214\161\364\325\265\221\066
+\314\360\025\306\053\336\121\027\261\227\114\120\075\261\225\131
+\174\005\175\055\041\325\000\277\001\147\242\136\173\246\134\362
+\367\042\361\220\015\223\333\252\104\121\146\314\175\166\003\353
+\152\250\052\070\031\227\166\015\153\212\141\371\274\366\356\166
+\375\160\053\335\051\074\370\012\036\133\102\034\213\126\057\125
+\033\034\241\056\265\307\026\346\370\252\074\222\216\151\266\001
+\301\265\206\235\211\017\013\070\224\124\350\352\334\236\075\045
+\274\123\046\355\325\253\071\252\305\100\114\124\253\262\264\331
+\331\370\327\162\333\034\274\155\275\145\137\357\210\065\052\146
+\057\356\366\263\145\360\063\215\174\230\101\151\106\017\103\034
+\151\372\233\265\320\141\152\315\312\113\331\114\220\106\253\025
+\131\241\107\124\051\056\203\050\137\034\302\242\253\162\027\000
+\006\216\105\354\213\342\063\075\177\332\031\104\344\142\162\303
+\337\042\306\362\126\324\335\137\225\162\355\155\137\367\110\003
+\133\375\305\052\240\366\163\043\204\020\033\001\347\002\003\001
+\000\001\243\102\060\100\060\016\006\003\125\035\017\001\001\377
+\004\004\003\002\001\006\060\017\006\003\125\035\023\001\001\377
+\004\005\060\003\001\001\377\060\035\006\003\125\035\016\004\026
+\004\024\343\161\340\236\330\247\102\331\333\161\221\153\224\223
+\353\303\243\321\024\243\060\015\006\011\052\206\110\206\367\015
+\001\001\013\005\000\003\202\002\001\000\107\372\335\012\260\021
+\221\070\255\115\135\367\345\016\227\124\031\202\110\207\124\214
+\252\144\231\330\132\376\210\001\305\130\245\231\261\043\124\043
+\267\152\035\040\127\345\001\142\101\027\323\011\333\165\313\156
+\124\220\165\376\032\237\201\012\302\335\327\367\011\320\133\162
+\025\344\036\011\152\075\063\363\041\232\346\025\176\255\121\325
+\015\020\355\175\102\300\217\356\300\232\010\325\101\326\134\016
+\041\151\156\200\141\016\025\300\270\317\305\111\022\122\314\276
+\072\314\324\056\070\005\336\065\375\037\157\270\200\150\230\075
+\115\240\312\100\145\322\163\174\365\213\331\012\225\077\330\077
+\043\155\032\321\052\044\031\331\205\263\027\357\170\156\251\130
+\321\043\323\307\023\355\162\045\177\135\261\163\160\320\177\006
+\227\011\204\051\200\141\035\372\136\377\163\254\240\343\211\270
+\034\161\025\306\336\061\177\022\334\341\155\233\257\347\350\237
+\165\170\114\253\106\073\232\316\277\005\030\135\115\025\074\026
+\232\031\120\004\232\262\232\157\145\213\122\137\074\130\004\050
+\045\300\146\141\061\176\271\340\165\271\032\250\201\326\162\027
+\263\305\003\061\065\021\170\170\242\340\351\060\214\177\200\337
+\130\337\074\272\047\226\342\200\064\155\343\230\323\144\047\254
+\110\176\050\167\134\306\045\141\045\370\205\014\145\372\304\062
+\057\245\230\005\344\370\013\147\026\026\306\202\270\062\031\371
+\371\271\171\334\037\315\353\257\253\016\335\033\333\105\344\172
+\347\002\342\225\135\374\151\360\123\151\141\225\165\171\013\136
+\125\346\070\034\224\251\131\063\236\310\161\164\171\177\121\211
+\266\310\152\270\060\310\152\070\303\156\236\341\067\026\352\005
+\142\114\133\022\107\355\247\264\263\130\126\307\111\363\177\022
+\150\011\061\161\360\155\370\116\107\373\326\205\356\305\130\100
+\031\244\035\247\371\113\103\067\334\150\132\117\317\353\302\144
+\164\336\264\025\331\364\124\124\032\057\034\327\227\161\124\220
+\216\331\040\235\123\053\177\253\217\342\352\060\274\120\067\357
+\361\107\265\175\174\054\004\354\150\235\264\111\104\020\364\162
+\113\034\144\347\374\346\153\220\335\151\175\151\375\000\126\245
+\267\254\266\255\267\312\076\001\357\234
+END
+
+# Trust for "IdenTrust Public Sector Root CA 1"
+# Issuer: CN=IdenTrust Public Sector Root CA 1,O=IdenTrust,C=US
+# Serial Number:0a:01:42:80:00:00:01:45:23:cf:46:7c:00:00:00:02
+# Subject: CN=IdenTrust Public Sector Root CA 1,O=IdenTrust,C=US
+# Not Valid Before: Thu Jan 16 17:53:32 2014
+# Not Valid After : Mon Jan 16 17:53:32 2034
+# Fingerprint (SHA-256): 30:D0:89:5A:9A:44:8A:26:20:91:63:55:22:D1:F5:20:10:B5:86:7A:CA:E1:2C:78:EF:95:8F:D4:F4:38:9F:2F
+# Fingerprint (SHA1): BA:29:41:60:77:98:3F:F4:F3:EF:F2:31:05:3B:2E:EA:6D:4D:45:FD
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "IdenTrust Public Sector Root CA 1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\272\051\101\140\167\230\077\364\363\357\362\061\005\073\056\352
+\155\115\105\375
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\067\006\245\260\374\211\235\272\364\153\214\032\144\315\325\272
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\115\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\022\060\020\006\003\125\004\012\023\011\111\144\145\156\124\162
+\165\163\164\061\052\060\050\006\003\125\004\003\023\041\111\144
+\145\156\124\162\165\163\164\040\120\165\142\154\151\143\040\123
+\145\143\164\157\162\040\122\157\157\164\040\103\101\040\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\012\001\102\200\000\000\001\105\043\317\106\174\000\000
+\000\002
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "S-TRUST Universal Root CA"
+#
+# Issuer: CN=S-TRUST Universal Root CA,OU=S-TRUST Certification Services,O=Deutscher Sparkassen Verlag GmbH,C=DE
+# Serial Number:60:56:c5:4b:23:40:5b:64:d4:ed:25:da:d9:d6:1e:1e
+# Subject: CN=S-TRUST Universal Root CA,OU=S-TRUST Certification Services,O=Deutscher Sparkassen Verlag GmbH,C=DE
+# Not Valid Before: Tue Oct 22 00:00:00 2013
+# Not Valid After : Thu Oct 21 23:59:59 2038
+# Fingerprint (SHA-256): D8:0F:EF:91:0A:E3:F1:04:72:3B:04:5C:EC:2D:01:9F:44:1C:E6:21:3A:DF:15:67:91:E7:0C:17:90:11:0A:31
+# Fingerprint (SHA1): 1B:3D:11:14:EA:7A:0F:95:58:54:41:95:BF:6B:25:82:AB:40:CE:9A
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "S-TRUST Universal Root CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\051\060\047\006\003\125\004\012\023\040\104\145\165\164\163
+\143\150\145\162\040\123\160\141\162\153\141\163\163\145\156\040
+\126\145\162\154\141\147\040\107\155\142\110\061\047\060\045\006
+\003\125\004\013\023\036\123\055\124\122\125\123\124\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\123\145\162\166
+\151\143\145\163\061\042\060\040\006\003\125\004\003\023\031\123
+\055\124\122\125\123\124\040\125\156\151\166\145\162\163\141\154
+\040\122\157\157\164\040\103\101
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\051\060\047\006\003\125\004\012\023\040\104\145\165\164\163
+\143\150\145\162\040\123\160\141\162\153\141\163\163\145\156\040
+\126\145\162\154\141\147\040\107\155\142\110\061\047\060\045\006
+\003\125\004\013\023\036\123\055\124\122\125\123\124\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\123\145\162\166
+\151\143\145\163\061\042\060\040\006\003\125\004\003\023\031\123
+\055\124\122\125\123\124\040\125\156\151\166\145\162\163\141\154
+\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\140\126\305\113\043\100\133\144\324\355\045\332\331\326
+\036\036
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\003\330\060\202\002\300\240\003\002\001\002\002\020\140
+\126\305\113\043\100\133\144\324\355\045\332\331\326\036\036\060
+\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\201
+\205\061\013\060\011\006\003\125\004\006\023\002\104\105\061\051
+\060\047\006\003\125\004\012\023\040\104\145\165\164\163\143\150
+\145\162\040\123\160\141\162\153\141\163\163\145\156\040\126\145
+\162\154\141\147\040\107\155\142\110\061\047\060\045\006\003\125
+\004\013\023\036\123\055\124\122\125\123\124\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\123\145\162\166\151\143
+\145\163\061\042\060\040\006\003\125\004\003\023\031\123\055\124
+\122\125\123\124\040\125\156\151\166\145\162\163\141\154\040\122
+\157\157\164\040\103\101\060\036\027\015\061\063\061\060\062\062
+\060\060\060\060\060\060\132\027\015\063\070\061\060\062\061\062
+\063\065\071\065\071\132\060\201\205\061\013\060\011\006\003\125
+\004\006\023\002\104\105\061\051\060\047\006\003\125\004\012\023
+\040\104\145\165\164\163\143\150\145\162\040\123\160\141\162\153
+\141\163\163\145\156\040\126\145\162\154\141\147\040\107\155\142
+\110\061\047\060\045\006\003\125\004\013\023\036\123\055\124\122
+\125\123\124\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\123\145\162\166\151\143\145\163\061\042\060\040\006\003
+\125\004\003\023\031\123\055\124\122\125\123\124\040\125\156\151
+\166\145\162\163\141\154\040\122\157\157\164\040\103\101\060\202
+\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005
+\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000\250
+\343\013\337\021\067\205\202\232\265\154\146\174\141\077\300\107
+\032\035\106\343\260\125\144\345\270\202\071\050\007\176\027\377
+\364\233\212\360\221\201\352\070\077\041\170\154\110\354\153\057
+\242\323\212\162\262\247\327\331\352\177\264\300\111\153\060\045
+\211\214\353\267\325\100\141\230\342\334\074\040\222\315\145\112
+\162\237\032\216\214\372\045\025\277\363\041\203\050\015\213\257
+\131\021\202\103\134\233\115\045\121\177\130\030\143\140\073\263
+\265\212\213\130\143\067\110\110\220\104\302\100\335\135\367\103
+\151\051\230\134\022\145\136\253\220\222\113\146\337\325\165\022
+\123\124\030\246\336\212\326\273\127\003\071\131\231\030\005\014
+\371\375\025\306\220\144\106\027\202\327\302\112\101\075\375\000
+\276\127\162\030\224\167\033\123\132\211\001\366\063\162\016\223
+\072\334\350\036\375\005\005\326\274\163\340\210\334\253\117\354
+\265\030\206\117\171\204\016\110\052\146\052\335\062\310\170\145
+\310\013\235\130\001\005\161\355\201\365\150\027\156\313\015\264
+\113\330\241\354\256\070\353\034\130\057\241\145\003\064\057\002
+\003\001\000\001\243\102\060\100\060\017\006\003\125\035\023\001
+\001\377\004\005\060\003\001\001\377\060\016\006\003\125\035\017
+\001\001\377\004\004\003\002\001\006\060\035\006\003\125\035\016
+\004\026\004\024\232\175\327\353\353\177\124\230\105\051\264\040
+\253\155\013\226\043\031\244\302\060\015\006\011\052\206\110\206
+\367\015\001\001\013\005\000\003\202\001\001\000\116\226\022\333
+\176\167\136\222\047\236\041\027\030\202\166\330\077\274\245\011
+\004\146\210\211\255\333\125\263\063\152\306\145\304\217\115\363
+\062\066\334\171\004\226\251\167\062\321\227\365\030\153\214\272
+\355\316\021\320\104\307\222\361\264\104\216\355\210\122\110\236
+\325\375\131\370\243\036\121\373\001\122\345\137\345\172\335\252
+\044\117\042\213\335\166\106\366\245\240\017\065\330\312\017\230
+\271\060\135\040\157\302\201\036\275\275\300\376\025\323\070\052
+\011\223\230\047\033\223\173\320\053\064\136\150\245\025\117\321
+\122\303\240\312\240\203\105\035\365\365\267\131\163\135\131\001
+\217\252\302\107\057\024\161\325\051\343\020\265\107\223\045\314
+\043\051\332\267\162\330\221\324\354\033\110\212\042\344\301\052
+\367\072\150\223\237\105\031\156\103\267\314\376\270\221\232\141
+\032\066\151\143\144\222\050\363\157\141\222\205\023\237\311\007
+\054\213\127\334\353\236\171\325\302\336\010\325\124\262\127\116
+\052\062\215\241\342\072\321\020\040\042\071\175\064\105\157\161
+\073\303\035\374\377\262\117\250\342\366\060\036
+END
+
+# Trust for "S-TRUST Universal Root CA"
+# Issuer: CN=S-TRUST Universal Root CA,OU=S-TRUST Certification Services,O=Deutscher Sparkassen Verlag GmbH,C=DE
+# Serial Number:60:56:c5:4b:23:40:5b:64:d4:ed:25:da:d9:d6:1e:1e
+# Subject: CN=S-TRUST Universal Root CA,OU=S-TRUST Certification Services,O=Deutscher Sparkassen Verlag GmbH,C=DE
+# Not Valid Before: Tue Oct 22 00:00:00 2013
+# Not Valid After : Thu Oct 21 23:59:59 2038
+# Fingerprint (SHA-256): D8:0F:EF:91:0A:E3:F1:04:72:3B:04:5C:EC:2D:01:9F:44:1C:E6:21:3A:DF:15:67:91:E7:0C:17:90:11:0A:31
+# Fingerprint (SHA1): 1B:3D:11:14:EA:7A:0F:95:58:54:41:95:BF:6B:25:82:AB:40:CE:9A
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "S-TRUST Universal Root CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\033\075\021\024\352\172\017\225\130\124\101\225\277\153\045\202
+\253\100\316\232
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\130\366\101\001\256\365\133\121\231\116\134\041\350\117\324\146
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\205\061\013\060\011\006\003\125\004\006\023\002\104\105
+\061\051\060\047\006\003\125\004\012\023\040\104\145\165\164\163
+\143\150\145\162\040\123\160\141\162\153\141\163\163\145\156\040
+\126\145\162\154\141\147\040\107\155\142\110\061\047\060\045\006
+\003\125\004\013\023\036\123\055\124\122\125\123\124\040\103\145
+\162\164\151\146\151\143\141\164\151\157\156\040\123\145\162\166
+\151\143\145\163\061\042\060\040\006\003\125\004\003\023\031\123
+\055\124\122\125\123\124\040\125\156\151\166\145\162\163\141\154
+\040\122\157\157\164\040\103\101
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\020\140\126\305\113\043\100\133\144\324\355\045\332\331\326
+\036\036
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Entrust Root Certification Authority - G2"
+#
+# Issuer: CN=Entrust Root Certification Authority - G2,OU="(c) 2009 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Serial Number: 1246989352 (0x4a538c28)
+# Subject: CN=Entrust Root Certification Authority - G2,OU="(c) 2009 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Not Valid Before: Tue Jul 07 17:25:54 2009
+# Not Valid After : Sat Dec 07 17:55:54 2030
+# Fingerprint (SHA-256): 43:DF:57:74:B0:3E:7F:EF:5F:E4:0D:93:1A:7B:ED:F1:BB:2E:6B:42:73:8C:4E:6D:38:41:10:3D:3A:A7:F3:39
+# Fingerprint (SHA1): 8C:F4:27:FD:79:0C:3A:D1:66:06:8D:E8:1E:57:EF:BB:93:22:72:D4
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority - G2"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\060\071\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060
+\060\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\062
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\060\071\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060
+\060\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\112\123\214\050
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\076\060\202\003\046\240\003\002\001\002\002\004\112
+\123\214\050\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\201\276\061\013\060\011\006\003\125\004\006\023\002
+\125\123\061\026\060\024\006\003\125\004\012\023\015\105\156\164
+\162\165\163\164\054\040\111\156\143\056\061\050\060\046\006\003
+\125\004\013\023\037\123\145\145\040\167\167\167\056\145\156\164
+\162\165\163\164\056\156\145\164\057\154\145\147\141\154\055\164
+\145\162\155\163\061\071\060\067\006\003\125\004\013\023\060\050
+\143\051\040\062\060\060\071\040\105\156\164\162\165\163\164\054
+\040\111\156\143\056\040\055\040\146\157\162\040\141\165\164\150
+\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171\061
+\062\060\060\006\003\125\004\003\023\051\105\156\164\162\165\163
+\164\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141
+\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040\055
+\040\107\062\060\036\027\015\060\071\060\067\060\067\061\067\062
+\065\065\064\132\027\015\063\060\061\062\060\067\061\067\065\065
+\065\064\132\060\201\276\061\013\060\011\006\003\125\004\006\023
+\002\125\123\061\026\060\024\006\003\125\004\012\023\015\105\156
+\164\162\165\163\164\054\040\111\156\143\056\061\050\060\046\006
+\003\125\004\013\023\037\123\145\145\040\167\167\167\056\145\156
+\164\162\165\163\164\056\156\145\164\057\154\145\147\141\154\055
+\164\145\162\155\163\061\071\060\067\006\003\125\004\013\023\060
+\050\143\051\040\062\060\060\071\040\105\156\164\162\165\163\164
+\054\040\111\156\143\056\040\055\040\146\157\162\040\141\165\164
+\150\157\162\151\172\145\144\040\165\163\145\040\157\156\154\171
+\061\062\060\060\006\003\125\004\003\023\051\105\156\164\162\165
+\163\164\040\122\157\157\164\040\103\145\162\164\151\146\151\143
+\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171\040
+\055\040\107\062\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\272\204\266\162\333\236\014\153\342\231\351
+\060\001\247\166\352\062\270\225\101\032\311\332\141\116\130\162
+\317\376\366\202\171\277\163\141\006\012\245\047\330\263\137\323
+\105\116\034\162\326\116\062\362\162\212\017\367\203\031\320\152
+\200\200\000\105\036\260\307\347\232\277\022\127\047\034\243\150
+\057\012\207\275\152\153\016\136\145\363\034\167\325\324\205\215
+\160\041\264\263\062\347\213\242\325\206\071\002\261\270\322\107
+\316\344\311\111\304\073\247\336\373\124\175\127\276\360\350\156
+\302\171\262\072\013\125\342\120\230\026\062\023\134\057\170\126
+\301\302\224\263\362\132\344\047\232\237\044\327\306\354\320\233
+\045\202\343\314\302\304\105\305\214\227\172\006\153\052\021\237
+\251\012\156\110\073\157\333\324\021\031\102\367\217\007\277\365
+\123\137\234\076\364\027\054\346\151\254\116\062\114\142\167\352
+\267\350\345\273\064\274\031\213\256\234\121\347\267\176\265\123
+\261\063\042\345\155\317\160\074\032\372\342\233\147\266\203\364
+\215\245\257\142\114\115\340\130\254\144\064\022\003\370\266\215
+\224\143\044\244\161\002\003\001\000\001\243\102\060\100\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\017
+\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060
+\035\006\003\125\035\016\004\026\004\024\152\162\046\172\320\036
+\357\175\347\073\151\121\324\154\215\237\220\022\146\253\060\015
+\006\011\052\206\110\206\367\015\001\001\013\005\000\003\202\001
+\001\000\171\237\035\226\306\266\171\077\042\215\207\323\207\003
+\004\140\152\153\232\056\131\211\163\021\254\103\321\365\023\377
+\215\071\053\300\362\275\117\160\214\251\057\352\027\304\013\124
+\236\324\033\226\230\063\074\250\255\142\242\000\166\253\131\151
+\156\006\035\176\304\271\104\215\230\257\022\324\141\333\012\031
+\106\107\363\353\367\143\301\100\005\100\245\322\267\364\265\232
+\066\277\251\210\166\210\004\125\004\053\234\207\177\032\067\074
+\176\055\245\032\330\324\211\136\312\275\254\075\154\330\155\257
+\325\363\166\017\315\073\210\070\042\235\154\223\232\304\075\277
+\202\033\145\077\246\017\135\252\374\345\262\025\312\265\255\306
+\274\075\320\204\350\352\006\162\260\115\071\062\170\277\076\021
+\234\013\244\235\232\041\363\360\233\013\060\170\333\301\334\207
+\103\376\274\143\232\312\305\302\034\311\307\215\377\073\022\130
+\010\346\266\075\354\172\054\116\373\203\226\316\014\074\151\207
+\124\163\244\163\302\223\377\121\020\254\025\124\001\330\374\005
+\261\211\241\177\164\203\232\111\327\334\116\173\212\110\157\213
+\105\366
+END
+
+# Trust for "Entrust Root Certification Authority - G2"
+# Issuer: CN=Entrust Root Certification Authority - G2,OU="(c) 2009 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Serial Number: 1246989352 (0x4a538c28)
+# Subject: CN=Entrust Root Certification Authority - G2,OU="(c) 2009 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Not Valid Before: Tue Jul 07 17:25:54 2009
+# Not Valid After : Sat Dec 07 17:55:54 2030
+# Fingerprint (SHA-256): 43:DF:57:74:B0:3E:7F:EF:5F:E4:0D:93:1A:7B:ED:F1:BB:2E:6B:42:73:8C:4E:6D:38:41:10:3D:3A:A7:F3:39
+# Fingerprint (SHA1): 8C:F4:27:FD:79:0C:3A:D1:66:06:8D:E8:1E:57:EF:BB:93:22:72:D4
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority - G2"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\214\364\047\375\171\014\072\321\146\006\215\350\036\127\357\273
+\223\042\162\324
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\113\342\311\221\226\145\014\364\016\132\223\222\240\012\376\262
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\060\071\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060
+\060\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\062
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\112\123\214\050
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Entrust Root Certification Authority - EC1"
+#
+# Issuer: CN=Entrust Root Certification Authority - EC1,OU="(c) 2012 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Serial Number:00:a6:8b:79:29:00:00:00:00:50:d0:91:f9
+# Subject: CN=Entrust Root Certification Authority - EC1,OU="(c) 2012 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Not Valid Before: Tue Dec 18 15:25:36 2012
+# Not Valid After : Fri Dec 18 15:55:36 2037
+# Fingerprint (SHA-256): 02:ED:0E:B2:8C:14:DA:45:16:5C:56:67:91:70:0D:64:51:D7:FB:56:F0:B2:AB:1D:3B:8E:B0:70:E5:6E:DF:F5
+# Fingerprint (SHA1): 20:D8:06:40:DF:9B:25:F5:12:25:3A:11:EA:F7:59:8A:EB:14:B5:47
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority - EC1"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\277\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\061\062\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\063\060
+\061\006\003\125\004\003\023\052\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\105
+\103\061
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\277\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\061\062\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\063\060
+\061\006\003\125\004\003\023\052\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\105
+\103\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\015\000\246\213\171\051\000\000\000\000\120\320\221\371
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\002\371\060\202\002\200\240\003\002\001\002\002\015\000
+\246\213\171\051\000\000\000\000\120\320\221\371\060\012\006\010
+\052\206\110\316\075\004\003\003\060\201\277\061\013\060\011\006
+\003\125\004\006\023\002\125\123\061\026\060\024\006\003\125\004
+\012\023\015\105\156\164\162\165\163\164\054\040\111\156\143\056
+\061\050\060\046\006\003\125\004\013\023\037\123\145\145\040\167
+\167\167\056\145\156\164\162\165\163\164\056\156\145\164\057\154
+\145\147\141\154\055\164\145\162\155\163\061\071\060\067\006\003
+\125\004\013\023\060\050\143\051\040\062\060\061\062\040\105\156
+\164\162\165\163\164\054\040\111\156\143\056\040\055\040\146\157
+\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145
+\040\157\156\154\171\061\063\060\061\006\003\125\004\003\023\052
+\105\156\164\162\165\163\164\040\122\157\157\164\040\103\145\162
+\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157
+\162\151\164\171\040\055\040\105\103\061\060\036\027\015\061\062
+\061\062\061\070\061\065\062\065\063\066\132\027\015\063\067\061
+\062\061\070\061\065\065\065\063\066\132\060\201\277\061\013\060
+\011\006\003\125\004\006\023\002\125\123\061\026\060\024\006\003
+\125\004\012\023\015\105\156\164\162\165\163\164\054\040\111\156
+\143\056\061\050\060\046\006\003\125\004\013\023\037\123\145\145
+\040\167\167\167\056\145\156\164\162\165\163\164\056\156\145\164
+\057\154\145\147\141\154\055\164\145\162\155\163\061\071\060\067
+\006\003\125\004\013\023\060\050\143\051\040\062\060\061\062\040
+\105\156\164\162\165\163\164\054\040\111\156\143\056\040\055\040
+\146\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165
+\163\145\040\157\156\154\171\061\063\060\061\006\003\125\004\003
+\023\052\105\156\164\162\165\163\164\040\122\157\157\164\040\103
+\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164
+\150\157\162\151\164\171\040\055\040\105\103\061\060\166\060\020
+\006\007\052\206\110\316\075\002\001\006\005\053\201\004\000\042
+\003\142\000\004\204\023\311\320\272\155\101\173\342\154\320\353
+\125\137\146\002\032\044\364\133\211\151\107\343\270\302\175\361
+\362\002\305\237\240\366\133\325\213\006\031\206\117\123\020\155
+\007\044\047\241\240\370\325\107\031\141\114\175\312\223\047\352
+\164\014\357\157\226\011\376\143\354\160\135\066\255\147\167\256
+\311\235\174\125\104\072\242\143\121\037\365\343\142\324\251\107
+\007\076\314\040\243\102\060\100\060\016\006\003\125\035\017\001
+\001\377\004\004\003\002\001\006\060\017\006\003\125\035\023\001
+\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035\016
+\004\026\004\024\267\143\347\032\335\215\351\010\246\125\203\244
+\340\152\120\101\145\021\102\111\060\012\006\010\052\206\110\316
+\075\004\003\003\003\147\000\060\144\002\060\141\171\330\345\102
+\107\337\034\256\123\231\027\266\157\034\175\341\277\021\224\321
+\003\210\165\344\215\211\244\212\167\106\336\155\141\357\002\365
+\373\265\337\314\376\116\377\376\251\346\247\002\060\133\231\327
+\205\067\006\265\173\010\375\353\047\213\112\224\371\341\372\247
+\216\046\010\350\174\222\150\155\163\330\157\046\254\041\002\270
+\231\267\046\101\133\045\140\256\320\110\032\356\006
+END
+
+# Trust for "Entrust Root Certification Authority - EC1"
+# Issuer: CN=Entrust Root Certification Authority - EC1,OU="(c) 2012 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Serial Number:00:a6:8b:79:29:00:00:00:00:50:d0:91:f9
+# Subject: CN=Entrust Root Certification Authority - EC1,OU="(c) 2012 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Not Valid Before: Tue Dec 18 15:25:36 2012
+# Not Valid After : Fri Dec 18 15:55:36 2037
+# Fingerprint (SHA-256): 02:ED:0E:B2:8C:14:DA:45:16:5C:56:67:91:70:0D:64:51:D7:FB:56:F0:B2:AB:1D:3B:8E:B0:70:E5:6E:DF:F5
+# Fingerprint (SHA1): 20:D8:06:40:DF:9B:25:F5:12:25:3A:11:EA:F7:59:8A:EB:14:B5:47
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority - EC1"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\040\330\006\100\337\233\045\365\022\045\072\021\352\367\131\212
+\353\024\265\107
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\266\176\035\360\130\305\111\154\044\073\075\355\230\030\355\274
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\277\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\061\062\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\063\060
+\061\006\003\125\004\003\023\052\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\105
+\103\061
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\015\000\246\213\171\051\000\000\000\000\120\320\221\371
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "CFCA EV ROOT"
+#
+# Issuer: CN=CFCA EV ROOT,O=China Financial Certification Authority,C=CN
+# Serial Number: 407555286 (0x184accd6)
+# Subject: CN=CFCA EV ROOT,O=China Financial Certification Authority,C=CN
+# Not Valid Before: Wed Aug 08 03:07:01 2012
+# Not Valid After : Mon Dec 31 03:07:01 2029
+# Fingerprint (SHA-256): 5C:C3:D7:8E:4E:1D:5E:45:54:7A:04:E6:87:3E:64:F9:0C:F9:53:6D:1C:CC:2E:F8:00:F3:55:C4:C5:FD:70:FD
+# Fingerprint (SHA1): E2:B8:29:4B:55:84:AB:6B:58:C2:90:46:6C:AC:3F:B8:39:8F:84:83
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CFCA EV ROOT"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\126\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\060\060\056\006\003\125\004\012\014\047\103\150\151\156\141\040
+\106\151\156\141\156\143\151\141\154\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\025\060\023\006\003\125\004\003\014\014\103\106\103\101
+\040\105\126\040\122\117\117\124
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\126\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\060\060\056\006\003\125\004\012\014\047\103\150\151\156\141\040
+\106\151\156\141\156\143\151\141\154\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\025\060\023\006\003\125\004\003\014\014\103\106\103\101
+\040\105\126\040\122\117\117\124
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\030\112\314\326
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\005\215\060\202\003\165\240\003\002\001\002\002\004\030
+\112\314\326\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\126\061\013\060\011\006\003\125\004\006\023\002\103
+\116\061\060\060\056\006\003\125\004\012\014\047\103\150\151\156
+\141\040\106\151\156\141\156\143\151\141\154\040\103\145\162\164
+\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162
+\151\164\171\061\025\060\023\006\003\125\004\003\014\014\103\106
+\103\101\040\105\126\040\122\117\117\124\060\036\027\015\061\062
+\060\070\060\070\060\063\060\067\060\061\132\027\015\062\071\061
+\062\063\061\060\063\060\067\060\061\132\060\126\061\013\060\011
+\006\003\125\004\006\023\002\103\116\061\060\060\056\006\003\125
+\004\012\014\047\103\150\151\156\141\040\106\151\156\141\156\143
+\151\141\154\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\061\025\060\023\006
+\003\125\004\003\014\014\103\106\103\101\040\105\126\040\122\117
+\117\124\060\202\002\042\060\015\006\011\052\206\110\206\367\015
+\001\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202
+\002\001\000\327\135\153\315\020\077\037\005\131\325\005\115\067
+\261\016\354\230\053\216\025\035\372\223\113\027\202\041\161\020
+\122\327\121\144\160\026\302\125\151\115\216\025\155\237\277\014
+\033\302\340\243\147\326\014\254\317\042\256\257\167\124\052\113
+\114\212\123\122\172\303\356\056\336\263\161\045\301\351\135\075
+\356\241\057\243\367\052\074\311\043\035\152\253\035\241\247\361
+\363\354\240\325\104\317\025\317\162\057\035\143\227\350\231\371
+\375\223\244\124\200\114\122\324\122\253\056\111\337\220\315\270
+\137\276\077\336\241\312\115\040\324\045\350\204\051\123\267\261
+\210\037\377\372\332\220\237\012\251\055\101\077\261\361\030\051
+\356\026\131\054\064\111\032\250\006\327\250\210\322\003\162\172
+\062\342\352\150\115\156\054\226\145\173\312\131\372\362\342\335
+\356\060\054\373\314\106\254\304\143\353\157\177\066\053\064\163
+\022\224\177\337\314\046\236\361\162\135\120\145\131\217\151\263
+\207\136\062\157\303\030\212\265\225\217\260\172\067\336\132\105
+\073\307\066\341\357\147\321\071\323\227\133\163\142\031\110\055
+\207\034\006\373\164\230\040\111\163\360\005\322\033\261\240\243
+\267\033\160\323\210\151\271\132\326\070\364\142\334\045\213\170
+\277\370\350\176\270\134\311\225\117\137\247\055\271\040\153\317
+\153\335\365\015\364\202\267\364\262\146\056\020\050\366\227\132
+\173\226\026\217\001\031\055\154\156\177\071\130\006\144\203\001
+\203\203\303\115\222\335\062\306\207\244\067\351\026\316\252\055
+\150\257\012\201\145\072\160\301\233\255\115\155\124\312\052\055
+\113\205\033\263\200\346\160\105\015\153\136\065\360\177\073\270
+\234\344\004\160\211\022\045\223\332\012\231\042\140\152\143\140
+\116\166\006\230\116\275\203\255\035\130\212\045\205\322\307\145
+\036\055\216\306\337\266\306\341\177\212\004\041\025\051\164\360
+\076\234\220\235\014\056\361\212\076\132\252\014\011\036\307\325
+\074\243\355\227\303\036\064\372\070\371\010\016\343\300\135\053
+\203\321\126\152\311\266\250\124\123\056\170\062\147\075\202\177
+\164\320\373\341\266\005\140\271\160\333\216\013\371\023\130\157
+\161\140\020\122\020\271\301\101\011\357\162\037\147\061\170\377
+\226\005\215\002\003\001\000\001\243\143\060\141\060\037\006\003
+\125\035\043\004\030\060\026\200\024\343\376\055\375\050\320\013
+\265\272\266\242\304\277\006\252\005\214\223\373\057\060\017\006
+\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016
+\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\035
+\006\003\125\035\016\004\026\004\024\343\376\055\375\050\320\013
+\265\272\266\242\304\277\006\252\005\214\223\373\057\060\015\006
+\011\052\206\110\206\367\015\001\001\013\005\000\003\202\002\001
+\000\045\306\272\153\353\207\313\336\202\071\226\075\360\104\247
+\153\204\163\003\336\235\053\117\272\040\177\274\170\262\317\227
+\260\033\234\363\327\171\056\365\110\266\322\373\027\210\346\323
+\172\077\355\123\023\320\342\057\152\171\313\000\043\050\346\036
+\067\127\065\211\204\302\166\117\064\066\255\147\303\316\101\006
+\210\305\367\356\330\032\270\326\013\177\120\377\223\252\027\113
+\214\354\355\122\140\262\244\006\352\116\353\364\153\031\375\353
+\365\032\340\045\052\232\334\307\101\066\367\310\164\005\204\071
+\225\071\326\013\073\244\047\372\010\330\134\036\370\004\140\122
+\021\050\050\003\377\357\123\146\000\245\112\064\026\146\174\375
+\011\244\256\236\147\032\157\101\013\153\006\023\233\217\206\161
+\005\264\057\215\211\146\063\051\166\124\232\021\370\047\372\262
+\077\221\340\316\015\033\363\060\032\255\277\042\135\033\323\277
+\045\005\115\341\222\032\177\231\237\074\104\223\312\324\100\111
+\154\200\207\327\004\072\303\062\122\065\016\126\370\245\335\175
+\304\213\015\021\037\123\313\036\262\027\266\150\167\132\340\324
+\313\310\007\256\365\072\056\216\067\267\320\001\113\103\051\167
+\214\071\227\217\202\132\370\121\345\211\240\030\347\150\177\135
+\012\056\373\243\107\016\075\246\043\172\306\001\307\217\310\136
+\277\155\200\126\276\212\044\272\063\352\237\341\062\021\236\361
+\322\117\200\366\033\100\257\070\236\021\120\171\163\022\022\315
+\346\154\235\054\210\162\074\060\201\006\221\042\352\131\255\332
+\031\056\042\302\215\271\214\207\340\146\274\163\043\137\041\144
+\143\200\110\365\240\074\030\075\224\310\110\101\035\100\272\136
+\376\376\126\071\241\310\317\136\236\031\144\106\020\332\027\221
+\267\005\200\254\213\231\222\175\347\242\330\007\013\066\047\347
+\110\171\140\212\303\327\023\134\370\162\100\337\112\313\317\231
+\000\012\000\013\021\225\332\126\105\003\210\012\237\147\320\325
+\171\261\250\215\100\155\015\302\172\100\372\363\137\144\107\222
+\313\123\271\273\131\316\117\375\320\025\123\001\330\337\353\331
+\346\166\357\320\043\273\073\251\171\263\325\002\051\315\211\243
+\226\017\112\065\347\116\102\300\165\315\007\317\346\054\353\173
+\056
+END
+
+# Trust for "CFCA EV ROOT"
+# Issuer: CN=CFCA EV ROOT,O=China Financial Certification Authority,C=CN
+# Serial Number: 407555286 (0x184accd6)
+# Subject: CN=CFCA EV ROOT,O=China Financial Certification Authority,C=CN
+# Not Valid Before: Wed Aug 08 03:07:01 2012
+# Not Valid After : Mon Dec 31 03:07:01 2029
+# Fingerprint (SHA-256): 5C:C3:D7:8E:4E:1D:5E:45:54:7A:04:E6:87:3E:64:F9:0C:F9:53:6D:1C:CC:2E:F8:00:F3:55:C4:C5:FD:70:FD
+# Fingerprint (SHA1): E2:B8:29:4B:55:84:AB:6B:58:C2:90:46:6C:AC:3F:B8:39:8F:84:83
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "CFCA EV ROOT"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\342\270\051\113\125\204\253\153\130\302\220\106\154\254\077\270
+\071\217\204\203
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\164\341\266\355\046\172\172\104\060\063\224\253\173\047\201\060
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\126\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\060\060\056\006\003\125\004\012\014\047\103\150\151\156\141\040
+\106\151\156\141\156\143\151\141\154\040\103\145\162\164\151\146
+\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164
+\171\061\025\060\023\006\003\125\004\003\014\014\103\106\103\101
+\040\105\126\040\122\117\117\124
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\030\112\314\326
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Explicitly Distrusted MCSHOLDING CA"
+#
+# Issuer: CN=CNNIC ROOT,O=CNNIC,C=CN
+# Serial Number: 1228079246 (0x4933008e)
+# Subject: CN=MCSHOLDING TEST,O=MCSHOLDING,C=EG
+# Not Valid Before: Thu Mar 19 06:20:09 2015
+# Not Valid After : Fri Apr 03 06:20:09 2015
+# Fingerprint (SHA-256): 27:40:D9:56:B1:12:7B:79:1A:A1:B3:CC:64:4A:4D:BE:DB:A7:61:86:A2:36:38:B9:51:02:35:1A:83:4E:A8:61
+# Fingerprint (SHA1): E1:F3:59:1E:76:98:65:C4:E4:47:AC:C3:7E:AF:C9:E2:BF:E4:C5:76
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted MCSHOLDING CA"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\074\061\013\060\011\006\003\125\004\006\023\002\105\107\061
+\023\060\021\006\003\125\004\012\014\012\115\103\123\110\117\114
+\104\111\116\107\061\030\060\026\006\003\125\004\003\014\017\115
+\103\123\110\117\114\104\111\116\107\040\124\105\123\124
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\062\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\016\060\014\006\003\125\004\012\023\005\103\116\116\111\103\061
+\023\060\021\006\003\125\004\003\023\012\103\116\116\111\103\040
+\122\117\117\124
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\111\063\000\216
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\004\222\060\202\003\172\240\003\002\001\002\002\004\111
+\063\000\216\060\015\006\011\052\206\110\206\367\015\001\001\013
+\005\000\060\062\061\013\060\011\006\003\125\004\006\023\002\103
+\116\061\016\060\014\006\003\125\004\012\023\005\103\116\116\111
+\103\061\023\060\021\006\003\125\004\003\023\012\103\116\116\111
+\103\040\122\117\117\124\060\036\027\015\061\065\060\063\061\071
+\060\066\062\060\060\071\132\027\015\061\065\060\064\060\063\060
+\066\062\060\060\071\132\060\074\061\013\060\011\006\003\125\004
+\006\023\002\105\107\061\023\060\021\006\003\125\004\012\014\012
+\115\103\123\110\117\114\104\111\116\107\061\030\060\026\006\003
+\125\004\003\014\017\115\103\123\110\117\114\104\111\116\107\040
+\124\105\123\124\060\202\001\042\060\015\006\011\052\206\110\206
+\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012
+\002\202\001\001\000\245\371\165\014\006\256\356\014\021\315\226
+\063\115\153\316\300\112\014\075\135\353\322\113\011\177\347\107
+\054\254\161\000\371\010\257\064\361\243\152\307\374\346\253\316
+\320\276\312\315\052\230\230\271\320\216\063\111\007\141\040\321
+\132\064\316\203\024\006\171\216\032\277\333\344\240\070\072\356
+\224\271\243\240\130\072\211\024\254\140\076\003\324\307\315\073
+\034\260\232\210\032\111\020\251\260\262\375\345\350\341\004\342
+\352\202\155\376\014\121\105\221\255\165\042\256\377\117\220\013
+\300\123\145\167\076\036\302\126\265\066\306\326\205\314\016\203
+\032\063\037\166\231\133\053\227\053\213\327\321\024\025\114\235
+\131\327\200\057\244\242\205\325\210\066\002\140\125\312\130\337
+\223\374\112\142\007\226\323\304\372\277\215\001\047\227\057\246
+\134\164\361\072\102\156\135\171\024\060\061\032\074\331\262\127
+\115\340\270\077\017\151\061\242\235\145\231\331\326\061\207\265
+\230\046\337\360\313\273\025\300\044\023\142\122\032\153\313\105
+\007\227\343\304\224\136\311\015\107\054\351\317\351\364\217\376
+\065\341\062\347\061\002\003\001\000\001\243\202\001\244\060\202
+\001\240\060\166\006\010\053\006\001\005\005\007\001\001\004\152
+\060\150\060\051\006\010\053\006\001\005\005\007\060\001\206\035
+\150\164\164\160\072\057\057\157\143\163\160\143\156\156\151\143
+\162\157\157\164\056\143\156\156\151\143\056\143\156\060\073\006
+\010\053\006\001\005\005\007\060\002\206\057\150\164\164\160\072
+\057\057\167\167\167\056\143\156\156\151\143\056\143\156\057\144
+\157\167\156\154\157\141\144\057\143\145\162\164\057\103\116\116
+\111\103\122\117\117\124\056\143\145\162\060\037\006\003\125\035
+\043\004\030\060\026\200\024\145\362\061\255\052\367\367\335\122
+\226\012\307\002\301\016\357\246\325\073\021\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\077\006\003
+\125\035\040\004\070\060\066\060\064\006\012\053\006\001\004\001
+\201\351\014\001\006\060\046\060\044\006\010\053\006\001\005\005
+\007\002\001\026\030\150\164\164\160\072\057\057\167\167\167\056
+\143\156\156\151\143\056\143\156\057\143\160\163\057\060\201\206
+\006\003\125\035\037\004\177\060\175\060\102\240\100\240\076\244
+\074\060\072\061\013\060\011\006\003\125\004\006\023\002\103\116
+\061\016\060\014\006\003\125\004\012\014\005\103\116\116\111\103
+\061\014\060\012\006\003\125\004\013\014\003\143\162\154\061\015
+\060\013\006\003\125\004\003\014\004\143\162\154\061\060\067\240
+\065\240\063\206\061\150\164\164\160\072\057\057\143\162\154\056
+\143\156\156\151\143\056\143\156\057\144\157\167\156\154\157\141
+\144\057\162\157\157\164\163\150\141\062\143\162\154\057\103\122
+\114\061\056\143\162\154\060\013\006\003\125\035\017\004\004\003
+\002\001\006\060\035\006\003\125\035\016\004\026\004\024\104\244
+\211\253\024\137\075\157\040\074\252\174\372\031\256\364\110\140
+\005\265\060\015\006\011\052\206\110\206\367\015\001\001\013\005
+\000\003\202\001\001\000\134\264\365\123\233\117\271\340\204\211
+\061\276\236\056\352\236\041\113\245\217\155\241\246\363\057\110
+\353\351\333\255\036\061\200\320\171\073\020\357\232\044\367\223
+\033\065\363\032\302\307\302\054\012\177\157\133\361\137\163\221
+\004\373\015\171\015\351\032\006\326\203\375\116\140\235\154\222
+\103\114\352\144\230\104\253\327\373\107\320\257\037\144\114\342
+\335\167\150\026\302\054\241\240\201\227\000\102\037\176\040\170
+\350\306\120\035\013\177\025\223\131\130\100\024\204\360\247\220
+\153\066\005\147\352\177\042\155\273\321\245\046\115\263\060\244
+\130\324\133\265\032\214\120\214\270\015\341\240\007\263\017\130
+\316\327\005\265\175\065\171\157\242\333\014\000\052\150\044\214
+\176\234\301\166\111\272\174\146\021\336\362\107\316\376\320\316
+\125\276\010\332\362\171\046\052\025\071\316\153\030\246\337\330
+\207\050\231\224\016\055\150\241\232\316\122\066\234\053\354\264
+\150\263\154\025\254\313\160\102\362\304\101\245\310\374\041\170
+\123\167\062\040\251\041\114\162\342\323\262\311\166\033\030\130
+\102\013\102\222\263\344
+END
+
+# Distrust "Explicitly Distrusted MCSHOLDING CA"
+# Issuer: CN=CNNIC ROOT,O=CNNIC,C=CN
+# Serial Number: 1228079246 (0x4933008e)
+# Subject: CN=MCSHOLDING TEST,O=MCSHOLDING,C=EG
+# Not Valid Before: Thu Mar 19 06:20:09 2015
+# Not Valid After : Fri Apr 03 06:20:09 2015
+# Fingerprint (SHA-256): 27:40:D9:56:B1:12:7B:79:1A:A1:B3:CC:64:4A:4D:BE:DB:A7:61:86:A2:36:38:B9:51:02:35:1A:83:4E:A8:61
+# Fingerprint (SHA1): E1:F3:59:1E:76:98:65:C4:E4:47:AC:C3:7E:AF:C9:E2:BF:E4:C5:76
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Explicitly Distrusted MCSHOLDING CA"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\341\363\131\036\166\230\145\304\344\107\254\303\176\257\311\342
+\277\344\305\166
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\366\212\253\024\076\326\060\045\267\111\015\167\205\160\231\313
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\062\061\013\060\011\006\003\125\004\006\023\002\103\116\061
+\016\060\014\006\003\125\004\012\023\005\103\116\116\111\103\061
+\023\060\021\006\003\125\004\003\023\012\103\116\116\111\103\040
+\122\117\117\124
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\004\111\063\000\216
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
diff --git a/config/ca-certificates/certdata2pem.py b/config/ca-certificates/certdata2pem.py
new file mode 100644 (file)
index 0000000..44cc9e0
--- /dev/null
@@ -0,0 +1,243 @@
+#!/usr/bin/python
+# vim:set et sw=4:
+#
+# certdata2pem.py - splits certdata.txt into multiple files
+#
+# Copyright (C) 2009 Philipp Kern <pkern@debian.org>
+# Copyright (C) 2013 Kai Engert <kaie@redhat.com>
+#
+# 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, 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, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+# USA.
+
+import base64
+import os.path
+import re
+import sys
+import textwrap
+import urllib
+
+objects = []
+
+def printable_serial(obj):
+  return ".".join(map(lambda x:str(ord(x)), obj['CKA_SERIAL_NUMBER']))
+
+# Dirty file parser.
+in_data, in_multiline, in_obj = False, False, False
+field, type, value, obj = None, None, None, dict()
+for line in open('certdata.txt', 'r'):
+    # Ignore the file header.
+    if not in_data:
+        if line.startswith('BEGINDATA'):
+            in_data = True
+        continue
+    # Ignore comment lines.
+    if line.startswith('#'):
+        continue
+    # Empty lines are significant if we are inside an object.
+    if in_obj and len(line.strip()) == 0:
+        objects.append(obj)
+        obj = dict()
+        in_obj = False
+        continue
+    if len(line.strip()) == 0:
+        continue
+    if in_multiline:
+        if not line.startswith('END'):
+            if type == 'MULTILINE_OCTAL':
+                line = line.strip()
+                for i in re.finditer(r'\\([0-3][0-7][0-7])', line):
+                    value += chr(int(i.group(1), 8))
+            else:
+                value += line
+            continue
+        obj[field] = value
+        in_multiline = False
+        continue
+    if line.startswith('CKA_CLASS'):
+        in_obj = True
+    line_parts = line.strip().split(' ', 2)
+    if len(line_parts) > 2:
+        field, type = line_parts[0:2]
+        value = ' '.join(line_parts[2:])
+    elif len(line_parts) == 2:
+        field, type = line_parts
+        value = None
+    else:
+        raise NotImplementedError, 'line_parts < 2 not supported.\n' + line
+    if type == 'MULTILINE_OCTAL':
+        in_multiline = True
+        value = ""
+        continue
+    obj[field] = value
+if len(obj.items()) > 0:
+    objects.append(obj)
+
+# Build up trust database.
+trustmap = dict()
+for obj in objects:
+    if obj['CKA_CLASS'] != 'CKO_NSS_TRUST':
+        continue
+    key = obj['CKA_LABEL'] + printable_serial(obj)
+    trustmap[key] = obj
+    print " added trust", key
+
+# Build up cert database.
+certmap = dict()
+for obj in objects:
+    if obj['CKA_CLASS'] != 'CKO_CERTIFICATE':
+        continue
+    key = obj['CKA_LABEL'] + printable_serial(obj)
+    certmap[key] = obj
+    print " added cert", key
+
+def obj_to_filename(obj):
+    label = obj['CKA_LABEL'][1:-1]
+    label = label.replace('/', '_')\
+        .replace(' ', '_')\
+        .replace('(', '=')\
+        .replace(')', '=')\
+        .replace(',', '_')
+    label = re.sub(r'\\x[0-9a-fA-F]{2}', lambda m:chr(int(m.group(0)[2:], 16)), label)
+    serial = printable_serial(obj)
+    return label + ":" + serial
+
+trust_types = {
+  "CKA_TRUST_DIGITAL_SIGNATURE": "digital-signature",
+  "CKA_TRUST_NON_REPUDIATION": "non-repudiation",
+  "CKA_TRUST_KEY_ENCIPHERMENT": "key-encipherment",
+  "CKA_TRUST_DATA_ENCIPHERMENT": "data-encipherment",
+  "CKA_TRUST_KEY_AGREEMENT": "key-agreement",
+  "CKA_TRUST_KEY_CERT_SIGN": "cert-sign",
+  "CKA_TRUST_CRL_SIGN": "crl-sign",
+  "CKA_TRUST_SERVER_AUTH": "server-auth",
+  "CKA_TRUST_CLIENT_AUTH": "client-auth",
+  "CKA_TRUST_CODE_SIGNING": "code-signing",
+  "CKA_TRUST_EMAIL_PROTECTION": "email-protection",
+  "CKA_TRUST_IPSEC_END_SYSTEM": "ipsec-end-system",
+  "CKA_TRUST_IPSEC_TUNNEL": "ipsec-tunnel",
+  "CKA_TRUST_IPSEC_USER": "ipsec-user",
+  "CKA_TRUST_TIME_STAMPING": "time-stamping",
+  "CKA_TRUST_STEP_UP_APPROVED": "step-up-approved",
+}
+
+legacy_trust_types = {
+  "LEGACY_CKA_TRUST_SERVER_AUTH": "server-auth",
+  "LEGACY_CKA_TRUST_CODE_SIGNING": "code-signing",
+  "LEGACY_CKA_TRUST_EMAIL_PROTECTION": "email-protection",
+}
+
+legacy_to_real_trust_types = {
+  "LEGACY_CKA_TRUST_SERVER_AUTH": "CKA_TRUST_SERVER_AUTH",
+  "LEGACY_CKA_TRUST_CODE_SIGNING": "CKA_TRUST_CODE_SIGNING",
+  "LEGACY_CKA_TRUST_EMAIL_PROTECTION": "CKA_TRUST_EMAIL_PROTECTION",
+}
+
+openssl_trust = {
+  "CKA_TRUST_SERVER_AUTH": "serverAuth",
+  "CKA_TRUST_CLIENT_AUTH": "clientAuth",
+  "CKA_TRUST_CODE_SIGNING": "codeSigning",
+  "CKA_TRUST_EMAIL_PROTECTION": "emailProtection",
+}
+
+for tobj in objects:
+    if tobj['CKA_CLASS'] == 'CKO_NSS_TRUST':
+        key = tobj['CKA_LABEL'] + printable_serial(tobj)
+        print "producing trust for " + key
+        trustbits = []
+        distrustbits = []
+        openssl_trustflags = []
+        openssl_distrustflags = []
+        legacy_trustbits = []
+        legacy_openssl_trustflags = []
+        for t in trust_types.keys():
+            if tobj.has_key(t) and tobj[t] == 'CKT_NSS_TRUSTED_DELEGATOR':
+                trustbits.append(t)
+                if t in openssl_trust:
+                    openssl_trustflags.append(openssl_trust[t])
+            if tobj.has_key(t) and tobj[t] == 'CKT_NSS_NOT_TRUSTED':
+                distrustbits.append(t)
+                if t in openssl_trust:
+                    openssl_distrustflags.append(openssl_trust[t])
+
+        for t in legacy_trust_types.keys():
+            if tobj.has_key(t) and tobj[t] == 'CKT_NSS_TRUSTED_DELEGATOR':
+                real_t = legacy_to_real_trust_types[t]
+                legacy_trustbits.append(real_t)
+                if real_t in openssl_trust:
+                    legacy_openssl_trustflags.append(openssl_trust[real_t])
+            if tobj.has_key(t) and tobj[t] == 'CKT_NSS_NOT_TRUSTED':
+                raise NotImplementedError, 'legacy distrust not supported.\n' + line
+
+        fname = obj_to_filename(tobj)
+        try:
+            obj = certmap[key]
+        except:
+            obj = None
+
+        if obj != None:
+            fname += ".crt"
+        else:
+            fname += ".p11-kit"
+
+        is_legacy = 0
+        if tobj.has_key('LEGACY_CKA_TRUST_SERVER_AUTH') or tobj.has_key('LEGACY_CKA_TRUST_EMAIL_PROTECTION') or tobj.has_key('LEGACY_CKA_TRUST_CODE_SIGNING'):
+            is_legacy = 1
+            if obj == None:
+                raise NotImplementedError, 'found legacy trust without certificate.\n' + line
+            legacy_fname = "legacy-default/" + fname
+            f = open(legacy_fname, 'w')
+            f.write("# alias=%s\n"%tobj['CKA_LABEL'])
+            f.write("# trust=" + " ".join(legacy_trustbits) + "\n")
+            if legacy_openssl_trustflags:
+                f.write("# openssl-trust=" + " ".join(legacy_openssl_trustflags) + "\n")
+            f.write("-----BEGIN CERTIFICATE-----\n")
+            f.write("\n".join(textwrap.wrap(base64.b64encode(obj['CKA_VALUE']), 64)))
+            f.write("\n-----END CERTIFICATE-----\n")
+            f.close()
+            if tobj.has_key('CKA_TRUST_SERVER_AUTH') or tobj.has_key('CKA_TRUST_EMAIL_PROTECTION') or tobj.has_key('CKA_TRUST_CODE_SIGNING'):
+                fname = "legacy-disable/" + fname
+            else:
+                continue
+
+        f = open(fname, 'w')
+        if obj != None:
+            f.write("# alias=%s\n"%tobj['CKA_LABEL'])
+            f.write("# trust=" + " ".join(trustbits) + "\n")
+            f.write("# distrust=" + " ".join(distrustbits) + "\n")
+            if openssl_trustflags:
+                f.write("# openssl-trust=" + " ".join(openssl_trustflags) + "\n")
+            if openssl_distrustflags:
+                f.write("# openssl-distrust=" + " ".join(openssl_distrustflags) + "\n")
+            f.write("-----BEGIN CERTIFICATE-----\n")
+            f.write("\n".join(textwrap.wrap(base64.b64encode(obj['CKA_VALUE']), 64)))
+            f.write("\n-----END CERTIFICATE-----\n")
+        else:
+            f.write("[p11-kit-object-v1]\n")
+            f.write("label: ");
+            f.write(tobj['CKA_LABEL']);
+            f.write("\n")
+            f.write("class: certificate\n")
+            f.write("certificate-type: x-509\n")
+            f.write("issuer: \"");
+            f.write(urllib.quote(tobj['CKA_ISSUER']));
+            f.write("\"\n")
+            f.write("serial-number: \"");
+            f.write(urllib.quote(tobj['CKA_SERIAL_NUMBER']));
+            f.write("\"\n")
+            if (tobj['CKA_TRUST_SERVER_AUTH'] == 'CKT_NSS_NOT_TRUSTED') or (tobj['CKA_TRUST_EMAIL_PROTECTION'] == 'CKT_NSS_NOT_TRUSTED') or (tobj['CKA_TRUST_CODE_SIGNING'] == 'CKT_NSS_NOT_TRUSTED'):
+              f.write("x-distrusted: true\n")
+            f.write("\n\n")
+        f.close()
+        print " -> written as '%s', trust = %s, openssl-trust = %s, distrust = %s, openssl-distrust = %s" % (fname, trustbits, openssl_trustflags, distrustbits, openssl_distrustflags)
diff --git a/config/ca-certificates/ipfire-ca.crt b/config/ca-certificates/ipfire-ca.crt
new file mode 100644 (file)
index 0000000..b83a40f
--- /dev/null
@@ -0,0 +1,42 @@
+# alias="IPFire CA"
+# trust=CKA_TRUST_SERVER_AUTH
+# distrust=
+# openssl-trust=serverAuth
+-----BEGIN CERTIFICATE-----
+MIIGrDCCBJSgAwIBAgIJAJIvs+XE5h41MA0GCSqGSIb3DQEBDQUAMGgxCzAJBgNV
+BAYTAkRFMRcwFQYDVQQKDA5JUEZpcmUgUHJvamVjdDEaMBgGA1UEAwwRSVBGaXJl
+IFByb2plY3QgQ0ExJDAiBgkqhkiG9w0BCQEWFWNlcnRtYXN0ZXJAaXBmaXJlLm9y
+ZzAeFw0xNTAxMzExNzMyNDFaFw0yNTAxMjgxNzMyNDFaMGgxCzAJBgNVBAYTAkRF
+MRcwFQYDVQQKDA5JUEZpcmUgUHJvamVjdDEaMBgGA1UEAwwRSVBGaXJlIFByb2pl
+Y3QgQ0ExJDAiBgkqhkiG9w0BCQEWFWNlcnRtYXN0ZXJAaXBmaXJlLm9yZzCCAiIw
+DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANjqPsfhHX2Zg5nat3ZT0XdbWqVu
+z0G2Supepa8eWzPtxIC6NDt8gAPGQcbgqL2gIYrUISaNQ3R99/XCWdu398cliw+6
+z9W1dh/YHzjyHDqpV+C6ufNuw2n4D4E9TfgZzlMnk3iluYOXJXZUN8T0PQbP3oHV
+KfH0fIlrj7LVT9cewLjpe2XzuevyBxqK42ioR0ax+yaZPxS3eHWdPpqRitfGFIx9
+O9jgj465z6Y0S7n6Z3cV49IN5ZvSBTAZYuBNlW5bEgOpqC13CJZMbOLS8wUbh4Ql
+Mklpo0dF3yYZne4Za0pcRqQB4AfvZnrggLF/AyHQab9Kia5PBAkVNXW2ApCH14v7
+h9bQ7KMoxaZ9WFBKchFVu36CmJLPI1HsSqV/+6HnMOd5Rd8GAN2/2uLiUSFIrpAD
+3eXenr+CFEeq4P3UKSzMG3wTd3y1JWSCnvKaK0GTEOdvk4C7L8V4KO29w3NRI2a8
+NEUQ3xa15gT3dRtqBvq151Vzd+PmptyI5uzbTVqfbkiMRbeq4CvJ5HkI+l0kuest
+37CLNeqldHnsAe2ziTFE1UbnYk3r6r6KLn4xAraVntFCYpQavzwtE7UdHFeCMAlu
+zVrc3GyEigG+NqY2lp18JtUw1S1XAQGO7XGQTPfSDx2eRxrqQx/Voc4hxKsifSvQ
+kTVrQkP173khAfTtAgMBAAGjggFXMIIBUzAdBgNVHQ4EFgQUxl27sebgR5PcYCcA
+SrdiG1QiKogwgZoGA1UdIwSBkjCBj4AUxl27sebgR5PcYCcASrdiG1QiKoihbKRq
+MGgxCzAJBgNVBAYTAkRFMRcwFQYDVQQKDA5JUEZpcmUgUHJvamVjdDEaMBgGA1UE
+AwwRSVBGaXJlIFByb2plY3QgQ0ExJDAiBgkqhkiG9w0BCQEWFWNlcnRtYXN0ZXJA
+aXBmaXJlLm9yZ4IJAJIvs+XE5h41MBIGA1UdEwEB/wQIMAYBAf8CAQAwCwYDVR0P
+BAQDAgEGMCAGA1UdEQQZMBeBFWNlcnRtYXN0ZXJAaXBmaXJlLm9yZzAgBgNVHRIE
+GTAXgRVjZXJ0bWFzdGVyQGlwZmlyZS5vcmcwMAYDVR0fBCkwJzAloCOgIYYfaHR0
+cDovL2NlcnRzLmlwZmlyZS5vcmcvY3JsLnBlbTANBgkqhkiG9w0BAQ0FAAOCAgEA
+HUXBFAC0AM/AhAp0mykBTY0QChI6YaXX1ki8Nb1sschcC53rnykHELPLMLKbSCLG
+cM7lJc1GJeDvQ9O46/Z7EWpFDACCstVn/hXUmj4ZxCSZ4B+L6Xt+GMdTksY434nS
+voM4fgc9a/OG6Tr2+YN9/rhnU3WdyMjpdApVFLs0qfzDHKmCTzC0h7itRSvitHOa
+p7yRQnErKy6GFSjSgSG1mhZbghJhGzrYRjCuAa59+R74IE+3ZWtpPUHro+S4kMcQ
+5NZLEwf0w5KzZcRF50UTSBxIUcBrtWRJElxRc9MncTaAS/uP6GBTkOM+f1WZ+zH0
+iRU5Sy4k/YfIxAU89QwMVW4GXktjIIXXbzbofaezKge3qc2v8dpI/V/U6I9mARja
+ltosmfE4lVBEJtQe6rNVUO55AiMnYpuC5hWjxhKjgeYQug+/nW9IIzCc5Ny7w8fb
+5NR0UqI/0TeS4Z1mNM8d6I5q41NuVSDU+6izUxDGgDL3ZWRkG6VWG1sRGxWMJb2L
+n3E6Zp51AY/l9e2gFqGFearanLw1w3lk2rEyYVHpZIKSjHEfUusOzuLFRaW95pgj
+HSJ0+XVE3cH/ppDBlxM0psrpOylXm3EaRnIPl2cGWjZwTIqga8PRJA9FefzMDGIX
+bQMywe8LR6okWvXhTV0wl0F6ynOiKE8LmbDf5si0EBU=
+-----END CERTIFICATE-----
index 29f7e8c6b8c80e6d1fdf0fb39d4a8d02fad3ca7b..f3a2e4723b26eef838a60102dcb11519ade4b396 100644 (file)
@@ -17,7 +17,7 @@ package General;
 use strict;
 use Socket;
 use IO::Socket;
-use Locale::Country;
+use Locale::Codes::Country;
 use Net::SSLeay;
 use Net::IPv4Addr qw(:all);
 $|=1; # line buffering
@@ -655,7 +655,7 @@ sub validfqdn
        my @parts = split (/\./, $fqdn);        # Split hostname at the '.'
        if (scalar(@parts) < 2) {               # At least two parts should
                return 0;}                      # exist in a FQDN
-                                               # (i.e. hostname.domain)
+                                               # (i.e.hostname.domain)
        foreach $part (@parts) {
                # Each part should be at least one character in length
                # but no more than 63 characters
@@ -747,14 +747,25 @@ sub ipcidr2msk {
 }
 
 sub validemail {
-    my $mail = shift;
-    return 0 if ( $mail !~ /^[0-9a-zA-Z\.\-\_]+\@[0-9a-zA-Z\.\-]+$/ );
-    return 0 if ( $mail =~ /^[^0-9a-zA-Z]|[^0-9a-zA-Z]$/);
-    return 0 if ( $mail !~ /([0-9a-zA-Z]{1})\@./ );
-    return 0 if ( $mail !~ /.\@([0-9a-zA-Z]{1})/ );
-    return 0 if ( $mail =~ /.\.\-.|.\-\..|.\.\..|.\-\-./g );
-    return 0 if ( $mail =~ /.\.\_.|.\-\_.|.\_\..|.\_\-.|.\_\_./g );
-    return 0 if ( $mail !~ /\.([a-zA-Z]{2,4})$/ );
+    my $address = shift;
+    my @parts = split( /\@/, $address );
+    my $count=@parts;
+
+    #check if we have one part before and after '@'
+    return 0 if ( $count != 2 );
+
+    #check if one of the parts starts or ends with a dot
+    return 0 if ( substr($parts[0],0,1) eq '.' );
+    return 0 if ( substr($parts[0],-1,1) eq '.' );
+    return 0 if ( substr($parts[1],0,1) eq '.' );
+    return 0 if ( substr($parts[1],-1,1) eq '.' );
+
+    #check first addresspart (before '@' sign)
+    return 0 if  ( $parts[0] !~ m/^[a-zA-Z0-9\.!\-\+#]+$/ );
+
+    #check second addresspart (after '@' sign)
+    return 0 if  ( $parts[1] !~ m/^[a-zA-Z0-9\.\-]+$/ );
+
     return 1;
 }
 
index 68b6f503d78019d8afc7d9f08277744d70b8b96e..fc2dfdd3424b4f63a814ed0323899a6c67b2e06e 100644 (file)
@@ -23,7 +23,7 @@
 
 package GeoIP;
 
-use Locale::Country;
+use Locale::Codes::Country;
 
 # Function to get the flag icon for a specified country code.
 sub get_flag_icon($) {
@@ -41,8 +41,8 @@ sub get_flag_icon($) {
        # Remove whitespaces.
        chomp($input);
 
-       # Convert given country code to lower case.
-       my $ccode = lc($input);
+       # Convert given country code to upper case.
+       my $ccode = uc($input);
 
        # Generate filename, based on the contry code in lower case
        # and the defined file extension.
@@ -58,6 +58,21 @@ sub get_flag_icon($) {
        if (-e "$absolute_path") {
                # Return content of flag_icon.
                return $flag_icon;
+       } else {
+               # If no icon for the specified country exists, try to use
+               # the icon for "unknown".
+               my $ccode = "unknown";
+
+               # Redoing all the stuff from abouve for the "unknown" icon.
+               my $file = join('.', $ccode,$ext);
+               my $flag_icon = join('/', $flagdir,$file);
+               my $absolute_path = join('', $webroot,$flag_icon);
+
+               # Check if the icon is present.
+               if (-e "$absolute_path") {
+                       # Return "unknown" icon.
+                       return $flag_icon;
+               }
        }
 }
 
@@ -81,7 +96,7 @@ sub get_full_country_name($) {
        elsif ($code eq "yu") { $name = "Yugoslavia" }
        else {
                # Use perl built-in module to get the country code.
-               $name = &Locale::Country::code2country($code);
+               $name = &Locale::Codes::Country::code2country($code);
        }
 
        return $name;
index 40c1bc87eba1c852b23dbc9230b996d04b2ac576..c3fb43eeb83246e3a31efffb5ecf5503d85210ce 100644 (file)
@@ -257,11 +257,11 @@ sub updateloadgraph {
                "DEF:load1=".$mainsettings{'RRDLOG'}."/collectd/localhost/load/load.rrd:shortterm:AVERAGE",
                "DEF:load5=".$mainsettings{'RRDLOG'}."/collectd/localhost/load/load.rrd:midterm:AVERAGE",
                "DEF:load15=".$mainsettings{'RRDLOG'}."/collectd/localhost/load/load.rrd:longterm:AVERAGE",
-               "AREA:load1".$color{"color13"}."A0:1 ".$Lang::tr{'minute'}.":",
+               "AREA:load1".$color{"color13"}."A0:1 ".$Lang::tr{'minute'},
                "GPRINT:load1:LAST:%5.2lf",
-               "AREA:load5".$color{"color18"}."A0:5 ".$Lang::tr{'minutes'}.":",
+               "AREA:load5".$color{"color18"}."A0:5 ".$Lang::tr{'minutes'},
                "GPRINT:load5:LAST:%5.2lf",
-               "AREA:load15".$color{"color14"}."A0:15 ".$Lang::tr{'minutes'}.":",
+               "AREA:load15".$color{"color14"}."A0:15 ".$Lang::tr{'minutes'},
                "GPRINT:load15:LAST:%5.2lf\\j",
                "LINE1:load5".$color{"color13"},
                "LINE1:load1".$color{"color18"},
@@ -519,7 +519,7 @@ sub updatediskgraph {
                "CDEF:writen=write,-1,*",
                "DEF:standby=".$mainsettings{'RRDLOG'}."/hddshutdown-".$disk.".rrd:standby:AVERAGE",
                "CDEF:st=standby,INF,*",
-               "CDEF:st1=standby,-INF,*",
+               "CDEF:st1=standby,NEGINF,*",
                "COMMENT:".sprintf("%-25s",$Lang::tr{'caption'}),
                "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
                "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
index 029ffc09eee5308dddc5d777e7eb11417e347e3b..70fa5ed356c9024573ab3005f7d8a9fb2efe5ac0 100644 (file)
@@ -23,6 +23,8 @@
 
 package Network;
 
+require "/var/ipfire/general-functions.pl";
+
 use Socket;
 
 my %PREFIX2NETMASK = (
@@ -120,6 +122,19 @@ sub network2bin($) {
        return ($network_start, $netmask_bin);
 }
 
+# Deletes leading zeros in ip address
+sub ip_remove_zero{
+       my $address = shift;
+       my @ip = split (/\./, $address);
+
+       foreach my $octet (@ip) {
+               $octet = int($octet);
+       }
+
+       $address = join (".", @ip);
+
+       return $address;
+}
 # Returns True for all valid IP addresses
 sub check_ip_address($) {
        my $address = shift;
@@ -161,6 +176,21 @@ sub check_ip_address_and_netmask($$) {
        return &check_netmask($netmask);
 }
 
+# Returns True for all valid subnets like a.b.c.d/e or a.b.c.d/a.b.c.d
+sub check_subnet($) {
+       my $subnet = shift;
+
+       my ($address, $network) = split(/\//, $subnet, 2);
+
+       # Check if the IP address is fine.
+       my $result = &check_ip_address($address);
+       unless ($result) {
+               return $result;
+       }
+
+       return &check_prefix($network) || &check_netmask($network);
+}
+
 # For internal use only. Will take an IP address and
 # return it in a normalised style. Like 8.8.8.010 -> 8.8.8.8.
 sub _normalise_ip_address($) {
@@ -239,11 +269,36 @@ sub ip_address_in_network($$) {
        my ($network_bin, $netmask_bin) = &network2bin($network);
 
        # Find end address
-       my $broadcast_bin = $network_bin ^ ~$netmask_bin;
+       my $broadcast_bin = $network_bin ^ (~$netmask_bin % 2 ** 32);
 
        return (($address_bin ge $network_bin) && ($address_bin le $broadcast_bin));
 }
 
+sub setup_upstream_proxy() {
+       my %proxysettings = ();
+       &General::readhash("${General::swroot}/proxy/settings", \%proxysettings);
+
+       if ($proxysettings{'UPSTREAM_PROXY'}) {
+               my $credentials = "";
+
+               if ($proxysettings{'UPSTREAM_USER'}) {
+                       $credentials = $proxysettings{'UPSTREAM_USER'};
+
+                       if ($proxysettings{'UPSTREAM_PASSWORD'}) {
+                               $credentials .= ":" . $proxysettings{'UPSTREAM_PASSWORD'};
+                       }
+
+                       $credentials .= "@";
+               }
+
+               my $proxy = "http://" . $credentials . $proxysettings{'UPSTREAM_PROXY'};
+
+               $ENV{'http_proxy'} = $proxy;
+               $ENV{'https_proxy'} = $proxy;
+               $ENV{'ftp_proxy'} = $proxy;
+       }
+}
+
 1;
 
 # Remove the next line to enable the testsuite
@@ -300,6 +355,9 @@ sub testsuite() {
        $result = &ip_address_in_network("10.0.1.4", "10.0.0.0/8");
        assert($result);
 
+       $result = &ip_address_in_network("192.168.30.11", "192.168.30.0/255.255.255.0");
+       assert($result);
+
        return 0;
 }
 
index d5e5d7e9f040fcf409b8cd49e8630b6c298c4c7e..c42c65080899216bc4c90f86bbd10200879faf4f 100644 (file)
@@ -22,12 +22,13 @@ HOME=/
 
 # Make some nice graphs
 */5 * * * *    /usr/local/bin/makegraphs >/dev/null
-17 5 * * *     /etc/init.d/tmpfs backup >/dev/null
+
+# Backup ramdisks if necessary
+%nightly,random * 23-4 /etc/init.d/collectd backup &>/dev/null
+%nightly,random * 23-4 /etc/init.d/vnstat backup &>/dev/null
 
 # Update dynamic DNS records every five minutes.
-# Force an update once a month
 */5 * * * *    [ -f "/var/ipfire/red/active" ] && /usr/bin/ddns update-all
-3 2 1 * *      [ -f "/var/ipfire/red/active" ] && /usr/bin/ddns update-all --force
 
 # Logwatch
 01 0 * * *     /usr/local/bin/logwatch > /var/log/logwatch/`date -I -d yesterday`; \
@@ -60,3 +61,9 @@ HOME=/
 
 # Update GeoIP database once a month.
 %monthly,random * * * [ -f "/var/ipfire/red/active" ] && /usr/local/bin/xt_geoip_update >/dev/null 2>&1
+
+# Retry sending spooled mails regularly
+%hourly * /usr/sbin/dma -q
+
+# Cleanup the mail spool directory
+%weekly * * /usr/sbin/dma-cleanup-spool
diff --git a/config/dhcpc/dhcpcd.conf b/config/dhcpc/dhcpcd.conf
new file mode 100644 (file)
index 0000000..eb625a7
--- /dev/null
@@ -0,0 +1,23 @@
+# A sample configuration for dhcpcd.
+# See dhcpcd.conf(5) for details.
+
+# Inform the DHCP server of our hostname for DDNS.
+hostname
+# To share the DHCP lease across OSX and Windows a ClientID is needed.
+# Enabling this may get a different lease than the kernel DHCP client.
+# Some upstream DHCP servers may also require a ClientID, such as FRITZ!Box.
+#clientid
+
+# A list of options to request from the DHCP server.
+option domain_name_servers, domain_name, domain_search, host_name
+option classless_static_routes
+# Most distributions have NTP support.
+option ntp_servers
+# Respect the network MTU.
+option interface_mtu
+# A ServerID is required by RFC2131.
+require dhcp_server_identifier
+
+# A hook script is provided to lookup the hostname if not set by the DHCP
+# server, but it should not be run by default.
+nohook lookup-hostname
diff --git a/config/dma/dma-cleanup-spool b/config/dma/dma-cleanup-spool
new file mode 100644 (file)
index 0000000..92af30c
--- /dev/null
@@ -0,0 +1,48 @@
+#!/bin/bash
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015 Michael Tremer <michael.tremer@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/>.       #
+#                                                                             #
+###############################################################################
+
+SPOOL_DIR="/var/spool/dma"
+
+find_messages() {
+       find "${SPOOL_DIR}" -type f -name "M*" -mtime +30
+}
+
+remove_message() {
+       local f_message="${1}"
+       local f_queue="${f_message/${SPOOL_DIR}\/M/${SPOOL_DIR}\/Q}"
+
+       # If a message file and a queue file exist, delete both
+       [ -f "${f_message}" ] || return 1
+       [ -f "${f_queue}" ] || return 1
+
+       rm -f "${f_message}" "${f_queue}"
+       return 0
+}
+
+main() {
+       for message in $(find_messages); do
+               remove_message "${message}"
+       done
+
+       return 0
+}
+
+main || exit $?
index 0e0858aa8a792bd16037673086c0f312e525081e..7bc066fb340edde842fa40223ebe1beb086b8220 100644 (file)
@@ -1,2 +1,2 @@
-# user secrets that should not overwritten by the webif
+# user secrets that should not be overwritten by the webif
 #
index 8660e7cfde6384b8d48ea1f76476780023316d3e..8383b5a61b8d0b49c9cdf700b762f5f3569c7346 100755 (executable)
@@ -60,24 +60,24 @@ close(ALIAS);
 &write_rules;
 sub get_config
 {
+       my $baseipfireport;
+       my $basesource;
        print LOG "STEP 1:   Get config from old portforward\n#########################################\n";
        foreach my $line (@current){
-               if($jump eq '1'){
-                       $jump='';
-                       $count++;
-                       next;
-               }
                my $u=$count+1;
                ($key,$flag,$prot,$ipfireport,$target,$targetport,$active,$alias,$source,$remark) = split(",",$line);
                ($key1,$flag1,$prot1,$ipfireport1,$target1,$targetport1,$active1,$alias1,$source1,$remark1) = split(",",$current[$u]);
-               if ($flag1 eq '1'){
-                       $source=$source1;
-                       $jump='1';
+               if ($key == $key1 && $flag == '0'){
+                       $baseipfireport = $ipfireport;
+               }
+               if ($key == $key1 && $flag1 == '1'){
+                       $count++;
+                       next;
                }
                my $now=localtime;
                chomp($remark);
-               print LOG "$now   processing-> KEY: $key FLAG: $flag PROT: $prot FIREPORT: $ipfireport TARGET: $target TGTPORT: $targetport ACTIVE: $active ALIAS: $alias SOURCE: $source REM: $remark Doublerule: $jump\n";
-               push (@values,$prot.",".$ipfireport.",".$target.",".$targetport.",".$active.",".$alias.",".$source.",".$remark);
+               print LOG "$now   processing-> KEY: $key FLAG: $flag PROT: $prot FIREPORT: $baseipfireport TARGET: $target TGTPORT: $targetport ACTIVE: $active ALIAS: $alias SOURCE: $source REM: $remark Doublerule: $jump\n";
+               push (@values,$prot.",".$baseipfireport.",".$target.",".$targetport.",".$active.",".$alias.",".$source.",".$remark);
                $count++;
        }
 }
@@ -101,10 +101,15 @@ sub build_rules
                }else{
                        $src  = 'src_addr';
                        my ($a,$b) = split("/",$source);
-                       $src1 = $a."/32";
+                       if ($b != ''){
+                               $b = &General::iporsubtocidr($b);
+                       }else{
+                               $b = "32";
+                       }
+                       $src1 = $a."/".$b;
                }
                #get ipfire ip
-               if($alias eq '0.0.0.0'){
+               if($alias eq '0.0.0.0' || $alias eq '0'){
                        $alias='Default IP';
                }else{
                        foreach my $ali (@alias){
index b389fac3c351230ec354d27579c692b387249b01..eabd9a42f22d7bab5fd93cf17855120fa6ce1f46 100644 (file)
@@ -391,8 +391,9 @@ sub get_address
        # IPsec networks.
        } elsif ($key ~~ ["ipsec_net_src", "ipsec_net_tgt", "IpSec Network"]) {
                my $network_address = &get_ipsec_net_ip($value, 11);
-               if ($network_address) {
-                       push(@ret, [$network_address, ""]);
+               my @nets = split(/\|/, $network_address);
+               foreach my $net (@nets) {
+                       push(@ret, [$net, ""]);
                }
 
        # The firewall's own IP addresses.
diff --git a/config/firewall/ipsec-block b/config/firewall/ipsec-block
new file mode 100644 (file)
index 0000000..9fa8e1a
--- /dev/null
@@ -0,0 +1,59 @@
+#!/bin/bash
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015 IPFire Team                                              #
+#                                                                             #
+# 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/>.       #
+#                                                                             #
+###############################################################################
+
+VPN_CONFIG="/var/ipfire/vpn/config"
+
+block_subnet() {
+       local subnet="${1}"
+
+       # Don't block a wildcard subnet
+       if [ "${subnet}" = "0.0.0.0/0" ] || [ "${subnet}" = "0.0.0.0/0.0.0.0" ]; then
+               return 0
+       fi
+
+       iptables -A IPSECBLOCK -d "${subnet}" -j REJECT --reject-with icmp-net-unreachable
+}
+
+block_ipsec() {
+       # Flush all exists rules
+       iptables -F IPSECBLOCK
+
+       local id status name lefthost type ctype unknown1 unknown2 unknown3
+       local leftsubnets unknown4 righthost rightsubnets rest
+       while IFS="," read -r id status name lefthost type ctype unkown1 unknown2 unknown3 \
+                       leftsubnets unknown4 righthost rightsubnets rest; do
+               # Check if the connection is enabled
+               [ "${status}" = "on" ] || continue
+
+               # Check if this a net-to-net connection
+               [ "${type}" = "net" ] || continue
+
+               # Split multiple subnets
+               rightsubnets="${rightsubnets//\|/ }"
+
+               local rightsubnet
+               for rightsubnet in ${rightsubnets}; do
+                       block_subnet "${rightsubnet}"
+               done
+       done < "${VPN_CONFIG}"
+}
+
+block_ipsec || exit $?
index 70005812684e5b4a3e9795107c7e4d89dcc0f3a0..d8998095c1177c376c358171b2fadf269e0cde61 100644 (file)
@@ -1,9 +1,9 @@
-Applejuice;apple;off;
-Ares;ares;off;
-Bittorrent;bit;off;
-DirectConnect;dc;off;
-Edonkey;edk;off;
-Gnutella;gnu;off;
-KaZaA;kazaa;off;
-SoulSeek;soul;off;
-WinMX;winmx;off;
+Applejuice;apple;on;
+Ares;ares;on;
+Bittorrent;bit;on;
+DirectConnect;dc;on;
+Edonkey;edk;on;
+Gnutella;gnu;on;
+KaZaA;kazaa;on;
+SoulSeek;soul;on;
+WinMX;winmx;on;
index daa95651bbecaf02d70bf143856dd6546f082c29..8b0c6ddc8e69ac06339c39e3a1aec11ca47f445f 100644 (file)
@@ -467,6 +467,10 @@ sub buildrules {
                                                } elsif ($NAT_MODE eq "SNAT") {
                                                        my @nat_options = @options;
 
+                                                       if ($destination_intf) {
+                                                               push(@nat_options, ("-o", $destination_intf));
+                                                       }
+
                                                        push(@nat_options, @source_options);
                                                        push(@nat_options, @destination_options);
 
index 7e00b88268105ebb93fa14f707143825a7b78cc7..9c1fb2b1001bf6e53ee5f79f112786b40e46fe27 100644 (file)
@@ -117,4 +117,5 @@ Include /etc/httpd/conf/default-server.conf
 #
 Include /etc/httpd/conf/vhosts.d/*.conf
 
-
+# Dummy LoadModule directive to aid module installations
+#LoadModule dummy_module /usr/lib/apache2/modules/mod_dummy.so
index cf44486e5ae6c717e55aa5d99d40ef56d111eeea..a35ec0bec0d0e4287b6dfd13162fd0a8bcc57582 100644 (file)
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.14.37 Kernel Configuration
+# Linux/arm 3.14.53 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -194,10 +194,10 @@ CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
 CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
 CONFIG_SECCOMP_FILTER=y
 CONFIG_HAVE_CC_STACKPROTECTOR=y
-CONFIG_CC_STACKPROTECTOR=y
+# CONFIG_CC_STACKPROTECTOR is not set
 # CONFIG_CC_STACKPROTECTOR_NONE is not set
 CONFIG_CC_STACKPROTECTOR_REGULAR=y
-# CONFIG_CC_STACKPROTECTOR_STRONG is not set
+CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_HAVE_CONTEXT_TRACKING=y
 CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
@@ -924,7 +924,6 @@ CONFIG_IP_NF_SECURITY=m
 CONFIG_IP_NF_ARPTABLES=m
 CONFIG_IP_NF_ARPFILTER=m
 CONFIG_IP_NF_ARP_MANGLE=m
-CONFIG_IP_NF_MATCH_IPP2P=m
 
 #
 # IPv6: Netfilter Configuration
@@ -5239,8 +5238,7 @@ CONFIG_GRKERNSEC_PROC_MEMMAP=y
 CONFIG_GRKERNSEC_BRUTE=y
 CONFIG_GRKERNSEC_MODHARDEN=y
 CONFIG_GRKERNSEC_HIDESYM=y
-CONFIG_GRKERNSEC_RANDSTRUCT=y
-CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE=y
+# CONFIG_GRKERNSEC_RANDSTRUCT is not set
 CONFIG_GRKERNSEC_KERN_LOCKOUT=y
 
 #
index 25de266d515acaa483bfd87a8043e4e66013e03c..50106bc001b6223cd224b83bfca702c1c977fe9f 100644 (file)
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.14.37 Kernel Configuration
+# Linux/arm 3.14.53 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_MIGHT_HAVE_PCI=y
@@ -217,10 +217,10 @@ CONFIG_HAVE_ARCH_JUMP_LABEL=y
 CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
 CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
 CONFIG_HAVE_CC_STACKPROTECTOR=y
-CONFIG_CC_STACKPROTECTOR=y
+# CONFIG_CC_STACKPROTECTOR is not set
 # CONFIG_CC_STACKPROTECTOR_NONE is not set
 CONFIG_CC_STACKPROTECTOR_REGULAR=y
-# CONFIG_CC_STACKPROTECTOR_STRONG is not set
+CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_HAVE_CONTEXT_TRACKING=y
 CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
@@ -1098,7 +1098,6 @@ CONFIG_IP_NF_SECURITY=m
 CONFIG_IP_NF_ARPTABLES=m
 CONFIG_IP_NF_ARPFILTER=m
 CONFIG_IP_NF_ARP_MANGLE=m
-CONFIG_IP_NF_MATCH_IPP2P=m
 
 #
 # IPv6: Netfilter Configuration
@@ -5727,8 +5726,7 @@ CONFIG_GRKERNSEC_PROC_MEMMAP=y
 CONFIG_GRKERNSEC_BRUTE=y
 CONFIG_GRKERNSEC_MODHARDEN=y
 CONFIG_GRKERNSEC_HIDESYM=y
-CONFIG_GRKERNSEC_RANDSTRUCT=y
-CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE=y
+# CONFIG_GRKERNSEC_RANDSTRUCT is not set
 CONFIG_GRKERNSEC_KERN_LOCKOUT=y
 CONFIG_GRKERNSEC_OLD_ARM_USERLAND=y
 
index b25210a17cbf91e2dfccdbda822de42f7d6e03d8..5bde32234e4346350a2fc96e30ef85a07bb18a44 100644 (file)
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.14.37 Kernel Configuration
+# Linux/arm 3.14.53 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -194,10 +194,10 @@ CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
 CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
 CONFIG_SECCOMP_FILTER=y
 CONFIG_HAVE_CC_STACKPROTECTOR=y
-CONFIG_CC_STACKPROTECTOR=y
+# CONFIG_CC_STACKPROTECTOR is not set
 # CONFIG_CC_STACKPROTECTOR_NONE is not set
 CONFIG_CC_STACKPROTECTOR_REGULAR=y
-# CONFIG_CC_STACKPROTECTOR_STRONG is not set
+CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_HAVE_CONTEXT_TRACKING=y
 CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
@@ -863,7 +863,6 @@ CONFIG_IP_NF_SECURITY=m
 CONFIG_IP_NF_ARPTABLES=m
 CONFIG_IP_NF_ARPFILTER=m
 CONFIG_IP_NF_ARP_MANGLE=m
-CONFIG_IP_NF_MATCH_IPP2P=m
 
 #
 # IPv6: Netfilter Configuration
@@ -3821,8 +3820,7 @@ CONFIG_GRKERNSEC_PROC_MEMMAP=y
 CONFIG_GRKERNSEC_BRUTE=y
 CONFIG_GRKERNSEC_MODHARDEN=y
 CONFIG_GRKERNSEC_HIDESYM=y
-CONFIG_GRKERNSEC_RANDSTRUCT=y
-CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE=y
+# CONFIG_GRKERNSEC_RANDSTRUCT is not set
 CONFIG_GRKERNSEC_KERN_LOCKOUT=y
 CONFIG_GRKERNSEC_OLD_ARM_USERLAND=y
 
index f5ff73efb8759c9911e74f8266b16afcceadcc45..6a7309ab06a5173c720415feb9f004f2070392f2 100644 (file)
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/x86 3.14.37 Kernel Configuration
+# Linux/x86 3.14.57 Kernel Configuration
 #
 # CONFIG_64BIT is not set
 CONFIG_X86_32=y
@@ -245,10 +245,10 @@ CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
 CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
 CONFIG_SECCOMP_FILTER=y
 CONFIG_HAVE_CC_STACKPROTECTOR=y
-CONFIG_CC_STACKPROTECTOR=y
+# CONFIG_CC_STACKPROTECTOR is not set
 # CONFIG_CC_STACKPROTECTOR_NONE is not set
 CONFIG_CC_STACKPROTECTOR_REGULAR=y
-# CONFIG_CC_STACKPROTECTOR_STRONG is not set
+CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
 CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
 CONFIG_HAVE_ARCH_SOFT_DIRTY=y
@@ -514,6 +514,7 @@ CONFIG_HOTPLUG_CPU=y
 # CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
 # CONFIG_DEBUG_HOTPLUG_CPU0 is not set
 # CONFIG_CMDLINE_BOOL is not set
+# CONFIG_DEFAULT_MODIFY_LDT_SYSCALL is not set
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 
 #
@@ -585,7 +586,7 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
 # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
 # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
 CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
 CONFIG_CPU_FREQ_GOV_USERSPACE=y
 CONFIG_CPU_FREQ_GOV_ONDEMAND=m
 CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
@@ -593,7 +594,7 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
 #
 # x86 CPU frequency scaling drivers
 #
-# CONFIG_X86_INTEL_PSTATE is not set
+CONFIG_X86_INTEL_PSTATE=y
 CONFIG_X86_PCC_CPUFREQ=m
 CONFIG_X86_ACPI_CPUFREQ=m
 # CONFIG_X86_ACPI_CPUFREQ_CPB is not set
@@ -677,10 +678,10 @@ CONFIG_EISA_NAMES=y
 CONFIG_SCx200=m
 CONFIG_SCx200HR_TIMER=m
 # CONFIG_OLPC is not set
-CONFIG_APULED=y
 CONFIG_ALIX=y
 CONFIG_NET5501=y
 CONFIG_GEOS=y
+CONFIG_APULED=y
 CONFIG_AMD_NB=y
 CONFIG_PCCARD=m
 CONFIG_PCMCIA=m
@@ -1068,7 +1069,6 @@ CONFIG_IP_NF_SECURITY=m
 CONFIG_IP_NF_ARPTABLES=m
 CONFIG_IP_NF_ARPFILTER=m
 CONFIG_IP_NF_ARP_MANGLE=m
-CONFIG_IP_NF_MATCH_IPP2P=m
 
 #
 # IPv6: Netfilter Configuration
@@ -5731,8 +5731,7 @@ CONFIG_GRKERNSEC_PROC_MEMMAP=y
 CONFIG_GRKERNSEC_BRUTE=y
 CONFIG_GRKERNSEC_MODHARDEN=y
 CONFIG_GRKERNSEC_HIDESYM=y
-CONFIG_GRKERNSEC_RANDSTRUCT=y
-CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE=y
+# CONFIG_GRKERNSEC_RANDSTRUCT is not set
 CONFIG_GRKERNSEC_KERN_LOCKOUT=y
 
 #
index 8e7220184af6ba4b55095d7d47acebc96f1141b3..d45c303e57c3da66463daf949e17266324adc04e 100644 (file)
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/x86 3.14.37 Kernel Configuration
+# Linux/x86 3.14.57 Kernel Configuration
 #
 # CONFIG_64BIT is not set
 CONFIG_X86_32=y
@@ -244,10 +244,10 @@ CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
 CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
 CONFIG_SECCOMP_FILTER=y
 CONFIG_HAVE_CC_STACKPROTECTOR=y
-CONFIG_CC_STACKPROTECTOR=y
+# CONFIG_CC_STACKPROTECTOR is not set
 # CONFIG_CC_STACKPROTECTOR_NONE is not set
 CONFIG_CC_STACKPROTECTOR_REGULAR=y
-# CONFIG_CC_STACKPROTECTOR_STRONG is not set
+CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
 CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
 CONFIG_HAVE_ARCH_SOFT_DIRTY=y
@@ -527,6 +527,7 @@ CONFIG_HOTPLUG_CPU=y
 # CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
 # CONFIG_DEBUG_HOTPLUG_CPU0 is not set
 # CONFIG_CMDLINE_BOOL is not set
+# CONFIG_DEFAULT_MODIFY_LDT_SYSCALL is not set
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 
 #
@@ -599,7 +600,7 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
 # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
 # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
 CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
 CONFIG_CPU_FREQ_GOV_USERSPACE=y
 CONFIG_CPU_FREQ_GOV_ONDEMAND=m
 CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
@@ -607,7 +608,7 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
 #
 # x86 CPU frequency scaling drivers
 #
-# CONFIG_X86_INTEL_PSTATE is not set
+CONFIG_X86_INTEL_PSTATE=y
 CONFIG_X86_PCC_CPUFREQ=m
 CONFIG_X86_ACPI_CPUFREQ=m
 # CONFIG_X86_ACPI_CPUFREQ_CPB is not set
@@ -691,10 +692,10 @@ CONFIG_EISA_PCI_EISA=y
 CONFIG_EISA_VIRTUAL_ROOT=y
 CONFIG_EISA_NAMES=y
 # CONFIG_SCx200 is not set
-CONFIG_APULED=y
 # CONFIG_ALIX is not set
 # CONFIG_NET5501 is not set
 # CONFIG_GEOS is not set
+CONFIG_APULED=y
 CONFIG_AMD_NB=y
 CONFIG_PCCARD=m
 CONFIG_PCMCIA=m
@@ -1082,7 +1083,6 @@ CONFIG_IP_NF_SECURITY=m
 CONFIG_IP_NF_ARPTABLES=m
 CONFIG_IP_NF_ARPFILTER=m
 CONFIG_IP_NF_ARP_MANGLE=m
-CONFIG_IP_NF_MATCH_IPP2P=m
 
 #
 # IPv6: Netfilter Configuration
@@ -5772,8 +5772,7 @@ CONFIG_GRKERNSEC_PROC_MEMMAP=y
 CONFIG_GRKERNSEC_BRUTE=y
 CONFIG_GRKERNSEC_MODHARDEN=y
 CONFIG_GRKERNSEC_HIDESYM=y
-CONFIG_GRKERNSEC_RANDSTRUCT=y
-CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE=y
+# CONFIG_GRKERNSEC_RANDSTRUCT is not set
 CONFIG_GRKERNSEC_KERN_LOCKOUT=y
 
 #
diff --git a/config/kernel/kernel.config.x86_64-ipfire b/config/kernel/kernel.config.x86_64-ipfire
new file mode 100644 (file)
index 0000000..4dd6ba6
--- /dev/null
@@ -0,0 +1,5947 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/x86 3.14.57 Kernel Configuration
+#
+CONFIG_64BIT=y
+CONFIG_X86_64=y
+CONFIG_X86=y
+CONFIG_INSTRUCTION_DECODER=y
+CONFIG_OUTPUT_FORMAT="elf64-x86-64"
+CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_MMU=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEED_SG_DMA_LENGTH=y
+CONFIG_GENERIC_ISA_DMA=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_ARCH_MAY_HAVE_PC_FDC=y
+CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_ARCH_HAS_CPU_RELAX=y
+CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
+CONFIG_ARCH_HAS_CPU_AUTOPROBE=y
+CONFIG_HAVE_SETUP_PER_CPU_AREA=y
+CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
+CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
+CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
+CONFIG_ZONE_DMA32=y
+CONFIG_AUDIT_ARCH=y
+CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_HAVE_INTEL_TXT=y
+CONFIG_X86_64_SMP=y
+CONFIG_X86_HT=y
+CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11"
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_EXTABLE_SORT=y
+
+#
+# General setup
+#
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_CROSS_COMPILE=""
+# CONFIG_COMPILE_TEST is not set
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_HAVE_KERNEL_GZIP=y
+CONFIG_HAVE_KERNEL_BZIP2=y
+CONFIG_HAVE_KERNEL_LZMA=y
+CONFIG_HAVE_KERNEL_XZ=y
+CONFIG_HAVE_KERNEL_LZO=y
+CONFIG_HAVE_KERNEL_LZ4=y
+# CONFIG_KERNEL_GZIP is not set
+# CONFIG_KERNEL_BZIP2 is not set
+# CONFIG_KERNEL_LZMA is not set
+CONFIG_KERNEL_XZ=y
+# CONFIG_KERNEL_LZO is not set
+# CONFIG_KERNEL_LZ4 is not set
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+CONFIG_FHANDLE=y
+CONFIG_AUDIT=y
+CONFIG_AUDITSYSCALL=y
+CONFIG_AUDIT_WATCH=y
+CONFIG_AUDIT_TREE=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_PENDING_IRQ=y
+CONFIG_IRQ_DOMAIN=y
+# CONFIG_IRQ_DOMAIN_DEBUG is not set
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+CONFIG_CLOCKSOURCE_WATCHDOG=y
+CONFIG_ARCH_CLOCKSOURCE_DATA=y
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
+CONFIG_GENERIC_CMOS_UPDATE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_HZ_FULL is not set
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
+
+#
+# CPU/Task time and stats accounting
+#
+# CONFIG_TICK_CPU_ACCOUNTING is not set
+# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
+CONFIG_IRQ_TIME_ACCOUNTING=y
+CONFIG_BSD_PROCESS_ACCT=y
+# CONFIG_BSD_PROCESS_ACCT_V3 is not set
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+# CONFIG_PREEMPT_RCU is not set
+CONFIG_RCU_STALL_COMMON=y
+# CONFIG_RCU_USER_QS is not set
+CONFIG_RCU_FANOUT=32
+CONFIG_RCU_FANOUT_LEAF=16
+# CONFIG_RCU_FANOUT_EXACT is not set
+CONFIG_RCU_FAST_NO_HZ=y
+# CONFIG_TREE_RCU_TRACE is not set
+CONFIG_RCU_NOCB_CPU=y
+# CONFIG_RCU_NOCB_CPU_NONE is not set
+# CONFIG_RCU_NOCB_CPU_ZERO is not set
+CONFIG_RCU_NOCB_CPU_ALL=y
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=18
+CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
+CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
+CONFIG_ARCH_SUPPORTS_INT128=y
+CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y
+CONFIG_CGROUPS=y
+# CONFIG_CGROUP_DEBUG is not set
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_RESOURCE_COUNTERS=y
+# CONFIG_MEMCG is not set
+CONFIG_CGROUP_PERF=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+# CONFIG_CFS_BANDWIDTH is not set
+CONFIG_RT_GROUP_SCHED=y
+CONFIG_BLK_CGROUP=y
+# CONFIG_DEBUG_BLK_CGROUP is not set
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_SYSFS_DEPRECATED is not set
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_RD_XZ=y
+CONFIG_RD_LZO=y
+CONFIG_RD_LZ4=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+CONFIG_HAVE_UID16=y
+CONFIG_SYSCTL_EXCEPTION_TRACE=y
+CONFIG_HAVE_PCSPKR_PLATFORM=y
+CONFIG_EXPERT=y
+CONFIG_UID16=y
+# CONFIG_SYSCTL_SYSCALL is not set
+CONFIG_KALLSYMS=y
+CONFIG_KALLSYMS_ALL=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_PCSPKR_PLATFORM=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_PCI_QUIRKS=y
+CONFIG_EMBEDDED=y
+CONFIG_HAVE_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_SLUB_DEBUG=y
+# CONFIG_COMPAT_BRK is not set
+# CONFIG_SLAB is not set
+CONFIG_SLUB=y
+# CONFIG_SLOB is not set
+CONFIG_SLUB_CPU_PARTIAL=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
+# CONFIG_PROFILING is not set
+CONFIG_TRACEPOINTS=y
+CONFIG_HAVE_OPROFILE=y
+CONFIG_OPROFILE_NMI_TIMER=y
+# CONFIG_KPROBES is not set
+CONFIG_JUMP_LABEL=y
+# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
+CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_ARCH_USE_BUILTIN_BSWAP=y
+CONFIG_USER_RETURN_NOTIFIER=y
+CONFIG_HAVE_IOREMAP_PROT=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_OPTPROBES=y
+CONFIG_HAVE_KPROBES_ON_FTRACE=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_DMA_API_DEBUG=y
+CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
+CONFIG_HAVE_USER_RETURN_NOTIFIER=y
+CONFIG_HAVE_PERF_EVENTS_NMI=y
+CONFIG_HAVE_PERF_REGS=y
+CONFIG_HAVE_PERF_USER_STACK_DUMP=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
+CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
+CONFIG_HAVE_CMPXCHG_LOCAL=y
+CONFIG_HAVE_CMPXCHG_DOUBLE=y
+CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
+CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP_FILTER=y
+CONFIG_HAVE_CC_STACKPROTECTOR=y
+# CONFIG_CC_STACKPROTECTOR is not set
+# CONFIG_CC_STACKPROTECTOR_NONE is not set
+CONFIG_CC_STACKPROTECTOR_REGULAR=y
+CONFIG_CC_STACKPROTECTOR_STRONG=y
+CONFIG_HAVE_CONTEXT_TRACKING=y
+CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
+CONFIG_HAVE_ARCH_SOFT_DIRTY=y
+CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
+CONFIG_OLD_SIGSUSPEND3=y
+CONFIG_COMPAT_OLD_SIGACTION=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_GCOV_KERNEL is not set
+# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+CONFIG_MODVERSIONS=y
+CONFIG_MODULE_SRCVERSION_ALL=y
+# CONFIG_MODULE_SIG is not set
+CONFIG_STOP_MACHINE=y
+CONFIG_BLOCK=y
+CONFIG_BLK_DEV_BSG=y
+CONFIG_BLK_DEV_BSGLIB=y
+CONFIG_BLK_DEV_INTEGRITY=y
+CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_CMDLINE_PARSER is not set
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_AIX_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+# CONFIG_MAC_PARTITION is not set
+CONFIG_MSDOS_PARTITION=y
+# CONFIG_BSD_DISKLABEL is not set
+# CONFIG_MINIX_SUBPARTITION is not set
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+# CONFIG_SGI_PARTITION is not set
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+# CONFIG_KARMA_PARTITION is not set
+CONFIG_EFI_PARTITION=y
+# CONFIG_SYSV68_PARTITION is not set
+# CONFIG_CMDLINE_PARTITION is not set
+CONFIG_BLOCK_COMPAT=y
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+CONFIG_CFQ_GROUP_IOSCHED=y
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED="cfq"
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_PADATA=y
+CONFIG_ASN1=m
+CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
+CONFIG_INLINE_READ_UNLOCK=y
+CONFIG_INLINE_READ_UNLOCK_IRQ=y
+CONFIG_INLINE_WRITE_UNLOCK=y
+CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
+CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_FREEZER=y
+
+#
+# Processor type and features
+#
+CONFIG_ZONE_DMA=y
+CONFIG_SMP=y
+# CONFIG_X86_X2APIC is not set
+CONFIG_X86_MPPARSE=y
+CONFIG_X86_EXTENDED_PLATFORM=y
+# CONFIG_X86_VSMP is not set
+CONFIG_X86_INTEL_LPSS=y
+CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_SCHED_OMIT_FRAME_POINTER=y
+CONFIG_HYPERVISOR_GUEST=y
+CONFIG_PARAVIRT=y
+# CONFIG_PARAVIRT_DEBUG is not set
+# CONFIG_PARAVIRT_SPINLOCKS is not set
+CONFIG_XEN=y
+CONFIG_XEN_DOM0=y
+CONFIG_XEN_PRIVILEGED_GUEST=y
+CONFIG_XEN_PVHVM=y
+CONFIG_XEN_MAX_DOMAIN_MEMORY=500
+CONFIG_XEN_SAVE_RESTORE=y
+CONFIG_XEN_DEBUG_FS=y
+CONFIG_XEN_PVH=y
+CONFIG_KVM_GUEST=y
+# CONFIG_KVM_DEBUG_FS is not set
+CONFIG_PARAVIRT_TIME_ACCOUNTING=y
+CONFIG_PARAVIRT_CLOCK=y
+CONFIG_NO_BOOTMEM=y
+# CONFIG_MEMTEST is not set
+# CONFIG_MK8 is not set
+# CONFIG_MPSC is not set
+# CONFIG_MCORE2 is not set
+# CONFIG_MATOM is not set
+CONFIG_GENERIC_CPU=y
+CONFIG_X86_INTERNODE_CACHE_SHIFT=6
+CONFIG_X86_L1_CACHE_SHIFT=6
+CONFIG_X86_TSC=y
+CONFIG_X86_CMPXCHG64=y
+CONFIG_X86_CMOV=y
+CONFIG_X86_MINIMUM_CPU_FAMILY=64
+CONFIG_X86_DEBUGCTLMSR=y
+# CONFIG_PROCESSOR_SELECT is not set
+CONFIG_CPU_SUP_INTEL=y
+CONFIG_CPU_SUP_AMD=y
+CONFIG_CPU_SUP_CENTAUR=y
+CONFIG_HPET_TIMER=y
+CONFIG_HPET_EMULATE_RTC=y
+CONFIG_DMI=y
+# CONFIG_GART_IOMMU is not set
+# CONFIG_CALGARY_IOMMU is not set
+CONFIG_SWIOTLB=y
+CONFIG_IOMMU_HELPER=y
+# CONFIG_MAXSMP is not set
+CONFIG_NR_CPUS=32
+CONFIG_SCHED_SMT=y
+CONFIG_SCHED_MC=y
+CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_VOLUNTARY is not set
+# CONFIG_PREEMPT is not set
+CONFIG_X86_UP_APIC_MSI=y
+CONFIG_X86_LOCAL_APIC=y
+CONFIG_X86_IO_APIC=y
+CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
+CONFIG_X86_MCE=y
+CONFIG_X86_MCE_INTEL=y
+CONFIG_X86_MCE_AMD=y
+CONFIG_X86_MCE_THRESHOLD=y
+# CONFIG_X86_MCE_INJECT is not set
+CONFIG_X86_THERMAL_VECTOR=y
+CONFIG_I8K=m
+CONFIG_MICROCODE=m
+CONFIG_MICROCODE_INTEL=y
+CONFIG_MICROCODE_AMD=y
+CONFIG_MICROCODE_OLD_INTERFACE=y
+# CONFIG_MICROCODE_INTEL_EARLY is not set
+# CONFIG_MICROCODE_AMD_EARLY is not set
+# CONFIG_X86_MSR is not set
+CONFIG_X86_CPUID=y
+CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_DIRECT_GBPAGES=y
+# CONFIG_NUMA is not set
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_ARCH_SPARSEMEM_DEFAULT=y
+CONFIG_ARCH_SELECT_MEMORY_MODEL=y
+CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
+CONFIG_SELECT_MEMORY_MODEL=y
+CONFIG_SPARSEMEM_MANUAL=y
+CONFIG_SPARSEMEM=y
+CONFIG_HAVE_MEMORY_PRESENT=y
+CONFIG_SPARSEMEM_EXTREME=y
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
+CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y
+CONFIG_SPARSEMEM_VMEMMAP=y
+CONFIG_HAVE_MEMBLOCK=y
+CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
+CONFIG_ARCH_DISCARD_MEMBLOCK=y
+CONFIG_MEMORY_ISOLATION=y
+# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
+# CONFIG_MEMORY_HOTPLUG is not set
+CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_BALLOON_COMPACTION=y
+CONFIG_COMPACTION=y
+CONFIG_MIGRATION=y
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_ZONE_DMA_FLAG=1
+CONFIG_BOUNCE=y
+CONFIG_VIRT_TO_BUS=y
+CONFIG_MMU_NOTIFIER=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_MEMORY_FAILURE=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
+# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+CONFIG_CLEANCACHE=y
+# CONFIG_FRONTSWAP is not set
+# CONFIG_CMA is not set
+# CONFIG_ZBUD is not set
+# CONFIG_ZSMALLOC is not set
+CONFIG_X86_CHECK_BIOS_CORRUPTION=y
+CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
+CONFIG_X86_RESERVE_LOW=64
+CONFIG_MTRR=y
+CONFIG_MTRR_SANITIZER=y
+CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1
+CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
+CONFIG_X86_PAT=y
+CONFIG_ARCH_USES_PG_UNCACHED=y
+CONFIG_ARCH_RANDOM=y
+CONFIG_X86_SMAP=y
+CONFIG_EFI=y
+CONFIG_EFI_STUB=y
+CONFIG_SECCOMP=y
+# CONFIG_HZ_100 is not set
+# CONFIG_HZ_250 is not set
+CONFIG_HZ_300=y
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=300
+CONFIG_SCHED_HRTICK=y
+# CONFIG_KEXEC is not set
+CONFIG_CRASH_DUMP=y
+CONFIG_PHYSICAL_START=0x400000
+CONFIG_RELOCATABLE=y
+# CONFIG_RANDOMIZE_BASE is not set
+CONFIG_PHYSICAL_ALIGN=0x400000
+CONFIG_HOTPLUG_CPU=y
+# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
+# CONFIG_DEBUG_HOTPLUG_CPU0 is not set
+# CONFIG_CMDLINE_BOOL is not set
+# CONFIG_DEFAULT_MODIFY_LDT_SYSCALL is not set
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+
+#
+# Power management and ACPI options
+#
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+CONFIG_HIBERNATE_CALLBACKS=y
+CONFIG_PM_SLEEP=y
+CONFIG_PM_SLEEP_SMP=y
+# CONFIG_PM_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM_RUNTIME=y
+CONFIG_PM=y
+# CONFIG_PM_DEBUG is not set
+CONFIG_PM_CLK=y
+# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
+CONFIG_ACPI=y
+CONFIG_ACPI_SLEEP=y
+CONFIG_ACPI_PROCFS=y
+# CONFIG_ACPI_PROCFS_POWER is not set
+CONFIG_ACPI_EC_DEBUGFS=m
+CONFIG_ACPI_AC=y
+CONFIG_ACPI_BATTERY=y
+CONFIG_ACPI_BUTTON=y
+CONFIG_ACPI_VIDEO=m
+CONFIG_ACPI_FAN=y
+CONFIG_ACPI_DOCK=y
+CONFIG_ACPI_PROCESSOR=y
+CONFIG_ACPI_IPMI=m
+CONFIG_ACPI_HOTPLUG_CPU=y
+CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
+CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_CUSTOM_DSDT is not set
+CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y
+# CONFIG_ACPI_DEBUG is not set
+CONFIG_ACPI_PCI_SLOT=y
+CONFIG_X86_PM_TIMER=y
+CONFIG_ACPI_CONTAINER=y
+CONFIG_ACPI_SBS=m
+CONFIG_ACPI_HED=y
+CONFIG_ACPI_CUSTOM_METHOD=m
+# CONFIG_ACPI_BGRT is not set
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_PCIEAER=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+# CONFIG_ACPI_APEI_EINJ is not set
+# CONFIG_ACPI_APEI_ERST_DEBUG is not set
+CONFIG_ACPI_EXTLOG=m
+CONFIG_SFI=y
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_GOV_COMMON=y
+CONFIG_CPU_FREQ_STAT=m
+CONFIG_CPU_FREQ_STAT_DETAILS=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
+CONFIG_CPU_FREQ_GOV_USERSPACE=y
+CONFIG_CPU_FREQ_GOV_ONDEMAND=m
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+
+#
+# x86 CPU frequency scaling drivers
+#
+CONFIG_X86_INTEL_PSTATE=y
+CONFIG_X86_PCC_CPUFREQ=m
+CONFIG_X86_ACPI_CPUFREQ=m
+# CONFIG_X86_ACPI_CPUFREQ_CPB is not set
+CONFIG_X86_POWERNOW_K8=m
+CONFIG_X86_AMD_FREQ_SENSITIVITY=m
+# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
+CONFIG_X86_P4_CLOCKMOD=m
+
+#
+# shared options
+#
+CONFIG_X86_SPEEDSTEP_LIB=m
+
+#
+# CPU Idle
+#
+CONFIG_CPU_IDLE=y
+# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
+CONFIG_CPU_IDLE_GOV_LADDER=y
+CONFIG_CPU_IDLE_GOV_MENU=y
+# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
+CONFIG_INTEL_IDLE=y
+
+#
+# Memory power savings
+#
+# CONFIG_I7300_IDLE is not set
+
+#
+# Bus options (PCI etc.)
+#
+CONFIG_PCI=y
+CONFIG_PCI_DIRECT=y
+CONFIG_PCI_MMCONFIG=y
+CONFIG_PCI_XEN=y
+CONFIG_PCI_DOMAINS=y
+# CONFIG_PCI_CNB20LE_QUIRK is not set
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=y
+CONFIG_PCIEAER=y
+CONFIG_PCIE_ECRC=y
+CONFIG_PCIEAER_INJECT=m
+CONFIG_PCIEASPM=y
+# CONFIG_PCIEASPM_DEBUG is not set
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+CONFIG_PCI_MSI=y
+# CONFIG_PCI_DEBUG is not set
+# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
+CONFIG_PCI_STUB=y
+CONFIG_XEN_PCIDEV_FRONTEND=m
+CONFIG_HT_IRQ=y
+CONFIG_PCI_ATS=y
+CONFIG_PCI_IOV=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+CONFIG_PCI_IOAPIC=y
+CONFIG_PCI_LABEL=y
+
+#
+# PCI host controller drivers
+#
+CONFIG_ISA_DMA_API=y
+CONFIG_APULED=y
+CONFIG_AMD_NB=y
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_PCMCIA_LOAD_CIS=y
+CONFIG_CARDBUS=y
+
+#
+# PC-card bridges
+#
+CONFIG_YENTA=m
+CONFIG_YENTA_O2=y
+CONFIG_YENTA_RICOH=y
+CONFIG_YENTA_TI=y
+CONFIG_YENTA_ENE_TUNE=y
+CONFIG_YENTA_TOSHIBA=y
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_PCCARD_NONSTATIC=y
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_ACPI=y
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+# CONFIG_HOTPLUG_PCI_CPCI is not set
+# CONFIG_HOTPLUG_PCI_SHPC is not set
+# CONFIG_RAPIDIO is not set
+CONFIG_X86_SYSFB=y
+
+#
+# Executable file formats / Emulations
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
+CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
+CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
+CONFIG_BINFMT_SCRIPT=y
+# CONFIG_HAVE_AOUT is not set
+CONFIG_BINFMT_MISC=y
+CONFIG_COREDUMP=y
+CONFIG_IA32_EMULATION=y
+CONFIG_IA32_AOUT=m
+# CONFIG_X86_X32 is not set
+CONFIG_COMPAT=y
+CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
+CONFIG_SYSVIPC_COMPAT=y
+CONFIG_KEYS_COMPAT=y
+CONFIG_X86_DEV_DMA_OPS=y
+CONFIG_IOSF_MBI=m
+CONFIG_NET=y
+CONFIG_COMPAT_NETLINK_MESSAGES=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+CONFIG_PACKET_DIAG=y
+CONFIG_UNIX=y
+CONFIG_UNIX_DIAG=m
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=y
+CONFIG_XFRM_USER=y
+CONFIG_XFRM_SUB_POLICY=y
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_FIB_TRIE_STATS=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+CONFIG_IP_ROUTE_CLASSID=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IP_TUNNEL=m
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_XFRM_MODE_TRANSPORT=m
+CONFIG_INET_XFRM_MODE_TUNNEL=m
+CONFIG_INET_XFRM_MODE_BEET=m
+CONFIG_INET_LRO=y
+CONFIG_INET_DIAG=m
+CONFIG_INET_TCP_DIAG=m
+CONFIG_INET_UDP_DIAG=m
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+CONFIG_TCP_MD5SIG=y
+CONFIG_IPV6=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_TRANSPORT=m
+CONFIG_INET6_XFRM_MODE_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_BEET=m
+CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
+CONFIG_IPV6_VTI=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+# CONFIG_NETLABEL is not set
+CONFIG_NETWORK_SECMARK=y
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
+CONFIG_NETFILTER=y
+# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=y
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_NETLINK=y
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NF_CONNTRACK=y
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_SECMARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CONNTRACK_LABELS=y
+CONFIG_NF_CT_PROTO_DCCP=m
+CONFIG_NF_CT_PROTO_GRE=m
+CONFIG_NF_CT_PROTO_SCTP=m
+CONFIG_NF_CT_PROTO_UDPLITE=m
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_QUEUE_CT=y
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_NEEDED=y
+CONFIG_NF_NAT_PROTO_DCCP=m
+CONFIG_NF_NAT_PROTO_UDPLITE=m
+CONFIG_NF_NAT_PROTO_SCTP=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NETFILTER_SYNPROXY=m
+CONFIG_NF_TABLES=y
+CONFIG_NF_TABLES_INET=m
+CONFIG_NFT_EXTHDR=m
+CONFIG_NFT_META=m
+CONFIG_NFT_CT=m
+CONFIG_NFT_RBTREE=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_COUNTER=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+CONFIG_NFT_COMPAT=m
+CONFIG_NETFILTER_XTABLES=y
+
+#
+# Xtables combined modules
+#
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_CONNMARK=m
+CONFIG_NETFILTER_XT_SET=m
+
+#
+# Xtables targets
+#
+CONFIG_NETFILTER_XT_TARGET_AUDIT=m
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_IMQ=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_TARGET_NETMAP=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_SECMARK=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+
+#
+# Xtables matches
+#
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_BPF=m
+CONFIG_NETFILTER_XT_MATCH_CGROUP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_NETFILTER_XT_MATCH_L2TP=m
+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
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_NETPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETNET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+CONFIG_IP_VS=m
+CONFIG_IP_VS_IPV6=y
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+CONFIG_IP_VS_PROTO_AH_ESP=y
+CONFIG_IP_VS_PROTO_ESP=y
+CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
+
+#
+# IPVS scheduler
+#
+CONFIG_IP_VS_RR=m
+CONFIG_IP_VS_WRR=m
+CONFIG_IP_VS_LC=m
+CONFIG_IP_VS_WLC=m
+CONFIG_IP_VS_LBLC=m
+CONFIG_IP_VS_LBLCR=m
+CONFIG_IP_VS_DH=m
+CONFIG_IP_VS_SH=m
+CONFIG_IP_VS_SED=m
+CONFIG_IP_VS_NQ=m
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS application helper
+#
+CONFIG_IP_VS_FTP=m
+CONFIG_IP_VS_NFCT=y
+CONFIG_IP_VS_PE_SIP=m
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=y
+CONFIG_NF_CONNTRACK_IPV4=y
+# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set
+CONFIG_NF_TABLES_IPV4=m
+CONFIG_NFT_CHAIN_ROUTE_IPV4=m
+CONFIG_NFT_CHAIN_NAT_IPV4=m
+CONFIG_NFT_REJECT_IPV4=m
+CONFIG_NF_TABLES_ARP=m
+CONFIG_IP_NF_IPTABLES=y
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_SYNPROXY=m
+# CONFIG_IP_NF_TARGET_ULOG is not set
+CONFIG_NF_NAT_IPV4=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PROTO_GRE=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+CONFIG_IP_NF_SECURITY=m
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV6=y
+CONFIG_NF_CONNTRACK_IPV6=y
+CONFIG_NF_TABLES_IPV6=m
+CONFIG_NFT_CHAIN_ROUTE_IPV6=m
+CONFIG_NFT_CHAIN_NAT_IPV6=m
+CONFIG_NFT_REJECT_IPV6=m
+CONFIG_IP6_NF_IPTABLES=y
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_TARGET_SYNPROXY=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+CONFIG_IP6_NF_SECURITY=m
+CONFIG_NF_NAT_IPV6=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+CONFIG_IP6_NF_TARGET_NPT=m
+CONFIG_NF_TABLES_BRIDGE=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_IP6=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+# CONFIG_BRIDGE_EBT_ULOG is not set
+CONFIG_BRIDGE_EBT_NFLOG=m
+# CONFIG_IP_DCCP is not set
+CONFIG_IP_SCTP=m
+# CONFIG_SCTP_DBG_OBJCNT is not set
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
+CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
+CONFIG_SCTP_COOKIE_HMAC_MD5=y
+CONFIG_SCTP_COOKIE_HMAC_SHA1=y
+# CONFIG_RDS is not set
+# CONFIG_TIPC is not set
+CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+# CONFIG_ATM_LANE is not set
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_L2TP=m
+# CONFIG_L2TP_DEBUGFS is not set
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+CONFIG_STP=y
+CONFIG_GARP=m
+CONFIG_BRIDGE=y
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+CONFIG_HAVE_NET_DSA=y
+CONFIG_NET_DSA=y
+CONFIG_NET_DSA_TAG_DSA=y
+CONFIG_NET_DSA_TAG_EDSA=y
+CONFIG_NET_DSA_TAG_TRAILER=y
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+# CONFIG_VLAN_8021Q_MVRP is not set
+# CONFIG_DECNET is not set
+CONFIG_LLC=y
+# CONFIG_LLC2 is not set
+# CONFIG_IPX is not set
+# CONFIG_ATALK is not set
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_PHONET is not set
+# CONFIG_IEEE802154 is not set
+CONFIG_6LOWPAN_IPHC=m
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_RED=m
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_GRED=m
+CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+CONFIG_NET_SCH_FQ=m
+CONFIG_NET_SCH_HHF=m
+CONFIG_NET_SCH_PIE=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_TCINDEX=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+CONFIG_CLS_U32_PERF=y
+CONFIG_CLS_U32_MARK=y
+CONFIG_NET_CLS_RSVP=m
+CONFIG_NET_CLS_RSVP6=m
+CONFIG_NET_CLS_FLOW=m
+CONFIG_NET_CLS_CGROUP=m
+CONFIG_NET_CLS_BPF=m
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
+CONFIG_NET_EMATCH_IPSET=m
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_SIMP=m
+CONFIG_NET_ACT_SKBEDIT=m
+CONFIG_NET_ACT_CSUM=m
+CONFIG_NET_CLS_IND=y
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=y
+CONFIG_BATMAN_ADV=m
+CONFIG_BATMAN_ADV_BLA=y
+CONFIG_BATMAN_ADV_DAT=y
+CONFIG_BATMAN_ADV_NC=y
+# CONFIG_BATMAN_ADV_DEBUG is not set
+CONFIG_OPENVSWITCH=m
+CONFIG_OPENVSWITCH_GRE=y
+CONFIG_OPENVSWITCH_VXLAN=y
+CONFIG_VSOCKETS=m
+CONFIG_VMWARE_VMCI_VSOCKETS=m
+CONFIG_NETLINK_MMAP=y
+CONFIG_NETLINK_DIAG=m
+CONFIG_NET_MPLS_GSO=m
+CONFIG_HSR=m
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_XPS=y
+CONFIG_CGROUP_NET_PRIO=m
+CONFIG_CGROUP_NET_CLASSID=y
+CONFIG_NET_RX_BUSY_POLL=y
+CONFIG_BQL=y
+CONFIG_BPF_JIT=y
+CONFIG_NET_FLOW_LIMIT=y
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+# CONFIG_NET_DROP_MONITOR is not set
+# CONFIG_HAMRADIO is not set
+# CONFIG_CAN is not set
+# CONFIG_IRDA is not set
+CONFIG_BT=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_CMTP=m
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIBTSDIO=m
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+# CONFIG_BT_HCIDTL1 is not set
+# CONFIG_BT_HCIBT3C is not set
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIVHCI=m
+CONFIG_BT_MRVL=m
+CONFIG_BT_MRVL_SDIO=m
+CONFIG_BT_ATH3K=m
+CONFIG_BT_WILINK=m
+# CONFIG_AF_RXRPC is not set
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WIRELESS_EXT=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_WEXT_SPY=y
+CONFIG_WEXT_PRIV=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_REG_DEBUG is not set
+# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
+CONFIG_CFG80211_DEFAULT_PS=y
+# CONFIG_CFG80211_DEBUGFS is not set
+# CONFIG_CFG80211_INTERNAL_REGDB is not set
+CONFIG_CFG80211_WEXT=y
+CONFIG_LIB80211=m
+CONFIG_LIB80211_CRYPT_WEP=m
+CONFIG_LIB80211_CRYPT_CCMP=m
+CONFIG_LIB80211_CRYPT_TKIP=m
+# CONFIG_LIB80211_DEBUG is not set
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+# CONFIG_MAC80211_RC_PID is not set
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_MINSTREL_HT=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+CONFIG_MAC80211_MESH=y
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_DEBUGFS is not set
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+# CONFIG_WIMAX is not set
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_RFKILL_GPIO=m
+# CONFIG_NET_9P is not set
+# CONFIG_CAIF is not set
+# CONFIG_CEPH_LIB is not set
+# CONFIG_NFC is not set
+CONFIG_HAVE_BPF_JIT=y
+
+#
+# Device Drivers
+#
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+CONFIG_FW_LOADER=y
+# CONFIG_FIRMWARE_IN_KERNEL is not set
+CONFIG_EXTRA_FIRMWARE=""
+CONFIG_FW_LOADER_USER_HELPER=y
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
+CONFIG_SYS_HYPERVISOR=y
+# CONFIG_GENERIC_CPU_DEVICES is not set
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=m
+CONFIG_REGMAP_IRQ=y
+CONFIG_DMA_SHARED_BUFFER=y
+
+#
+# Bus devices
+#
+CONFIG_CONNECTOR=y
+CONFIG_PROC_EVENTS=y
+# CONFIG_MTD is not set
+CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
+CONFIG_PARPORT=m
+CONFIG_PARPORT_PC=m
+CONFIG_PARPORT_SERIAL=m
+CONFIG_PARPORT_PC_FIFO=y
+CONFIG_PARPORT_PC_SUPERIO=y
+CONFIG_PARPORT_PC_PCMCIA=m
+# CONFIG_PARPORT_GSC is not set
+CONFIG_PARPORT_AX88796=m
+CONFIG_PARPORT_1284=y
+CONFIG_PARPORT_NOT_PC=y
+CONFIG_PNP=y
+# CONFIG_PNP_DEBUG_MESSAGES is not set
+
+#
+# Protocols
+#
+CONFIG_PNPACPI=y
+CONFIG_BLK_DEV=y
+# CONFIG_BLK_DEV_NULL_BLK is not set
+CONFIG_BLK_DEV_FD=m
+# CONFIG_PARIDE is not set
+CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
+CONFIG_BLK_CPQ_CISS_DA=m
+# CONFIG_CISS_SCSI_TAPE is not set
+CONFIG_BLK_DEV_DAC960=m
+CONFIG_BLK_DEV_UMEM=m
+# CONFIG_BLK_DEV_COW_COMMON is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
+CONFIG_BLK_DEV_CRYPTOLOOP=m
+# CONFIG_BLK_DEV_DRBD is not set
+# CONFIG_BLK_DEV_NBD is not set
+CONFIG_BLK_DEV_NVME=m
+CONFIG_BLK_DEV_SKD=m
+# CONFIG_BLK_DEV_OSD is not set
+CONFIG_BLK_DEV_SX8=m
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=16384
+# CONFIG_BLK_DEV_XIP is not set
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+CONFIG_XEN_BLKDEV_FRONTEND=m
+CONFIG_XEN_BLKDEV_BACKEND=m
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_HD is not set
+# CONFIG_BLK_DEV_RBD is not set
+CONFIG_BLK_DEV_RSXX=m
+
+#
+# Misc devices
+#
+CONFIG_SENSORS_LIS3LV02D=m
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_ATMEL_PWM is not set
+CONFIG_DUMMY_IRQ=m
+CONFIG_IBM_ASM=m
+# CONFIG_PHANTOM is not set
+# CONFIG_SGI_IOC4 is not set
+CONFIG_TIFM_CORE=m
+CONFIG_TIFM_7XX1=m
+CONFIG_ICS932S401=m
+# CONFIG_ATMEL_SSC is not set
+CONFIG_ENCLOSURE_SERVICES=m
+CONFIG_CS5535_MFGPT=m
+CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7
+CONFIG_CS5535_CLOCK_EVENT_SRC=m
+CONFIG_HP_ILO=m
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1780 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+CONFIG_DS1682=m
+CONFIG_VMWARE_BALLOON=m
+CONFIG_BMP085=y
+CONFIG_BMP085_I2C=m
+CONFIG_PCH_PHUB=m
+CONFIG_USB_SWITCH_FSA9480=m
+# CONFIG_SRAM is not set
+# CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_LEGACY=m
+CONFIG_EEPROM_MAX6875=m
+CONFIG_EEPROM_93CX6=m
+CONFIG_CB710_CORE=m
+# CONFIG_CB710_DEBUG is not set
+CONFIG_CB710_DEBUG_ASSUMPTIONS=y
+
+#
+# Texas Instruments shared transport line discipline
+#
+CONFIG_TI_ST=m
+# CONFIG_SENSORS_LIS3_I2C is not set
+
+#
+# Altera FPGA firmware download module
+#
+CONFIG_ALTERA_STAPL=m
+# CONFIG_INTEL_MEI is not set
+# CONFIG_INTEL_MEI_ME is not set
+CONFIG_VMWARE_VMCI=m
+
+#
+# Intel MIC Host Driver
+#
+CONFIG_INTEL_MIC_HOST=m
+
+#
+# Intel MIC Card Driver
+#
+CONFIG_INTEL_MIC_CARD=m
+CONFIG_GENWQE=m
+CONFIG_HAVE_IDE=y
+# CONFIG_IDE is not set
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=y
+CONFIG_RAID_ATTRS=m
+CONFIG_SCSI=y
+CONFIG_SCSI_DMA=y
+CONFIG_SCSI_TGT=m
+CONFIG_SCSI_NETLINK=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=y
+CONFIG_CHR_DEV_ST=m
+CONFIG_CHR_DEV_OSST=m
+CONFIG_BLK_DEV_SR=y
+CONFIG_BLK_DEV_SR_VENDOR=y
+CONFIG_CHR_DEV_SG=y
+CONFIG_CHR_DEV_SCH=m
+CONFIG_SCSI_ENCLOSURE=m
+CONFIG_SCSI_MULTI_LUN=y
+CONFIG_SCSI_CONSTANTS=y
+CONFIG_SCSI_LOGGING=y
+CONFIG_SCSI_SCAN_ASYNC=y
+
+#
+# SCSI Transports
+#
+CONFIG_SCSI_SPI_ATTRS=m
+CONFIG_SCSI_FC_ATTRS=m
+CONFIG_SCSI_FC_TGT_ATTRS=y
+CONFIG_SCSI_ISCSI_ATTRS=m
+CONFIG_SCSI_SAS_ATTRS=m
+CONFIG_SCSI_SAS_LIBSAS=m
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_HOST_SMP=y
+CONFIG_SCSI_SRP_ATTRS=m
+CONFIG_SCSI_SRP_TGT_ATTRS=y
+CONFIG_SCSI_LOWLEVEL=y
+CONFIG_ISCSI_TCP=m
+CONFIG_ISCSI_BOOT_SYSFS=m
+CONFIG_SCSI_CXGB3_ISCSI=m
+CONFIG_SCSI_CXGB4_ISCSI=m
+CONFIG_SCSI_BNX2_ISCSI=m
+CONFIG_SCSI_BNX2X_FCOE=m
+CONFIG_BE2ISCSI=m
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_HPSA=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_3W_SAS=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AACRAID=m
+CONFIG_SCSI_AIC7XXX=m
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
+CONFIG_AIC7XXX_RESET_DELAY_MS=5000
+CONFIG_AIC7XXX_DEBUG_ENABLE=y
+CONFIG_AIC7XXX_DEBUG_MASK=0
+CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
+CONFIG_SCSI_AIC79XX=m
+CONFIG_AIC79XX_CMDS_PER_DEVICE=32
+CONFIG_AIC79XX_RESET_DELAY_MS=4000
+# CONFIG_AIC79XX_DEBUG_ENABLE is not set
+CONFIG_AIC79XX_DEBUG_MASK=0
+# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
+CONFIG_SCSI_AIC94XX=m
+# CONFIG_AIC94XX_DEBUG is not set
+CONFIG_SCSI_MVSAS=m
+# CONFIG_SCSI_MVSAS_DEBUG is not set
+CONFIG_SCSI_MVSAS_TASKLET=y
+CONFIG_SCSI_MVUMI=m
+CONFIG_SCSI_DPT_I2O=m
+CONFIG_SCSI_ADVANSYS=m
+CONFIG_SCSI_ARCMSR=m
+CONFIG_SCSI_ESAS2R=m
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+CONFIG_MEGARAID_SAS=m
+CONFIG_SCSI_MPT2SAS=m
+CONFIG_SCSI_MPT2SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT2SAS_LOGGING is not set
+CONFIG_SCSI_MPT3SAS=m
+CONFIG_SCSI_MPT3SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT3SAS_LOGGING is not set
+CONFIG_SCSI_UFSHCD=m
+CONFIG_SCSI_UFSHCD_PCI=m
+CONFIG_SCSI_UFSHCD_PLATFORM=m
+CONFIG_SCSI_HPTIOP=m
+CONFIG_SCSI_BUSLOGIC=m
+# CONFIG_SCSI_FLASHPOINT is not set
+CONFIG_VMWARE_PVSCSI=m
+CONFIG_HYPERV_STORAGE=m
+CONFIG_LIBFC=m
+CONFIG_LIBFCOE=m
+CONFIG_FCOE=m
+CONFIG_FCOE_FNIC=m
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_EATA=m
+CONFIG_SCSI_EATA_TAGGED_QUEUE=y
+# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set
+CONFIG_SCSI_EATA_MAX_TAGS=16
+CONFIG_SCSI_FUTURE_DOMAIN=m
+CONFIG_SCSI_GDTH=m
+CONFIG_SCSI_ISCI=m
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_PPA=m
+CONFIG_SCSI_IMM=m
+# CONFIG_SCSI_IZIP_EPP16 is not set
+# CONFIG_SCSI_IZIP_SLOW_CTR is not set
+CONFIG_SCSI_STEX=m
+CONFIG_SCSI_SYM53C8XX_2=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_SYM53C8XX_MMIO=y
+CONFIG_SCSI_IPR=m
+CONFIG_SCSI_IPR_TRACE=y
+CONFIG_SCSI_IPR_DUMP=y
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLA_FC=m
+CONFIG_SCSI_QLA_ISCSI=m
+CONFIG_SCSI_LPFC=m
+# CONFIG_SCSI_LPFC_DEBUG_FS is not set
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_DC390T=m
+# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_PMCRAID=m
+CONFIG_SCSI_PM8001=m
+# CONFIG_SCSI_SRP is not set
+CONFIG_SCSI_BFA_FC=m
+CONFIG_SCSI_VIRTIO=m
+CONFIG_SCSI_CHELSIO_FCOE=m
+CONFIG_SCSI_LOWLEVEL_PCMCIA=y
+CONFIG_PCMCIA_AHA152X=m
+CONFIG_PCMCIA_FDOMAIN=m
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+CONFIG_SCSI_DH=y
+CONFIG_SCSI_DH_RDAC=m
+CONFIG_SCSI_DH_HP_SW=m
+CONFIG_SCSI_DH_EMC=m
+CONFIG_SCSI_DH_ALUA=m
+CONFIG_SCSI_OSD_INITIATOR=m
+CONFIG_SCSI_OSD_ULD=m
+CONFIG_SCSI_OSD_DPRINT_SENSE=1
+# CONFIG_SCSI_OSD_DEBUG is not set
+CONFIG_ATA=y
+# CONFIG_ATA_NONSTANDARD is not set
+CONFIG_ATA_VERBOSE_ERROR=y
+CONFIG_ATA_ACPI=y
+CONFIG_SATA_ZPODD=y
+CONFIG_SATA_PMP=y
+
+#
+# Controllers with non-SFF native interface
+#
+CONFIG_SATA_AHCI=y
+CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_SATA_INIC162X=m
+CONFIG_SATA_ACARD_AHCI=m
+CONFIG_SATA_SIL24=m
+CONFIG_ATA_SFF=y
+
+#
+# SFF controllers with custom DMA interface
+#
+CONFIG_PDC_ADMA=m
+CONFIG_SATA_QSTOR=m
+CONFIG_SATA_SX4=m
+CONFIG_ATA_BMDMA=y
+
+#
+# SATA SFF controllers with BMDMA
+#
+CONFIG_ATA_PIIX=y
+CONFIG_SATA_HIGHBANK=m
+CONFIG_SATA_MV=m
+CONFIG_SATA_NV=m
+CONFIG_SATA_PROMISE=m
+CONFIG_SATA_RCAR=m
+CONFIG_SATA_SIL=m
+CONFIG_SATA_SIS=m
+CONFIG_SATA_SVW=m
+CONFIG_SATA_ULI=m
+CONFIG_SATA_VIA=m
+CONFIG_SATA_VITESSE=m
+
+#
+# PATA SFF controllers with BMDMA
+#
+CONFIG_PATA_ALI=m
+CONFIG_PATA_AMD=m
+CONFIG_PATA_ARASAN_CF=m
+CONFIG_PATA_ARTOP=m
+CONFIG_PATA_ATIIXP=m
+CONFIG_PATA_ATP867X=m
+CONFIG_PATA_CMD64X=m
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_CS5530=m
+CONFIG_PATA_CS5536=m
+CONFIG_PATA_CYPRESS=m
+CONFIG_PATA_EFAR=m
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_HPT3X2N=m
+CONFIG_PATA_HPT3X3=m
+# CONFIG_PATA_HPT3X3_DMA is not set
+CONFIG_PATA_IT8213=m
+CONFIG_PATA_IT821X=m
+CONFIG_PATA_JMICRON=m
+CONFIG_PATA_MARVELL=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NINJA32=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_OPTIDMA=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_RADISYS=m
+CONFIG_PATA_RDC=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_SCH=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_SIS=m
+CONFIG_PATA_TOSHIBA=m
+CONFIG_PATA_TRIFLEX=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_WINBOND=m
+
+#
+# PIO-only SFF controllers
+#
+CONFIG_PATA_CMD640_PCI=m
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_OPTI=m
+CONFIG_PATA_PCMCIA=m
+CONFIG_PATA_PLATFORM=m
+CONFIG_PATA_RZ1000=m
+
+#
+# Generic fallback / legacy drivers
+#
+CONFIG_PATA_ACPI=m
+CONFIG_ATA_GENERIC=m
+CONFIG_PATA_LEGACY=m
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=y
+CONFIG_MD_AUTODETECT=y
+CONFIG_MD_LINEAR=m
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+CONFIG_MD_MULTIPATH=m
+CONFIG_MD_FAULTY=m
+CONFIG_BCACHE=m
+# CONFIG_BCACHE_DEBUG is not set
+# CONFIG_BCACHE_CLOSURES_DEBUG is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=y
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=y
+CONFIG_DM_BIO_PRISON=m
+CONFIG_DM_PERSISTENT_DATA=m
+# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set
+CONFIG_DM_CRYPT=m
+CONFIG_DM_SNAPSHOT=y
+# CONFIG_DM_THIN_PROVISIONING is not set
+CONFIG_DM_CACHE=m
+CONFIG_DM_CACHE_MQ=m
+CONFIG_DM_CACHE_CLEANER=m
+CONFIG_DM_MIRROR=y
+CONFIG_DM_LOG_USERSPACE=m
+CONFIG_DM_RAID=m
+CONFIG_DM_ZERO=y
+CONFIG_DM_MULTIPATH=m
+CONFIG_DM_MULTIPATH_QL=m
+CONFIG_DM_MULTIPATH_ST=m
+# CONFIG_DM_DELAY is not set
+CONFIG_DM_UEVENT=y
+# CONFIG_DM_FLAKEY is not set
+CONFIG_DM_VERITY=m
+CONFIG_DM_SWITCH=m
+# CONFIG_TARGET_CORE is not set
+CONFIG_FUSION=y
+CONFIG_FUSION_SPI=m
+CONFIG_FUSION_FC=m
+CONFIG_FUSION_SAS=m
+CONFIG_FUSION_MAX_SGE=40
+CONFIG_FUSION_CTL=m
+CONFIG_FUSION_LOGGING=y
+
+#
+# IEEE 1394 (FireWire) support
+#
+CONFIG_FIREWIRE=m
+CONFIG_FIREWIRE_OHCI=m
+CONFIG_FIREWIRE_SBP2=m
+# CONFIG_FIREWIRE_NET is not set
+# CONFIG_FIREWIRE_NOSY is not set
+CONFIG_I2O=m
+# CONFIG_I2O_LCT_NOTIFY_ON_CHANGES is not set
+CONFIG_I2O_EXT_ADAPTEC=y
+CONFIG_I2O_EXT_ADAPTEC_DMA64=y
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_CONFIG_OLD_IOCTL=y
+CONFIG_I2O_BUS=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
+CONFIG_MACINTOSH_DRIVERS=y
+# CONFIG_MAC_EMUMOUSEBTN is not set
+CONFIG_NETDEVICES=y
+CONFIG_MII=m
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+# CONFIG_EQUALIZER is not set
+# CONFIG_NET_FC is not set
+CONFIG_IFB=m
+# CONFIG_NET_TEAM is not set
+CONFIG_MACVLAN=m
+CONFIG_MACVTAP=m
+CONFIG_VXLAN=m
+CONFIG_NETCONSOLE=m
+CONFIG_NETCONSOLE_DYNAMIC=y
+CONFIG_NETPOLL=y
+CONFIG_NETPOLL_TRAP=y
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_IMQ=m
+# CONFIG_IMQ_BEHAVIOR_AA is not set
+CONFIG_IMQ_BEHAVIOR_AB=y
+# CONFIG_IMQ_BEHAVIOR_BA is not set
+# CONFIG_IMQ_BEHAVIOR_BB is not set
+CONFIG_IMQ_NUM_DEVS=2
+CONFIG_TUN=m
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_NLMON=m
+CONFIG_SUNGEM_PHY=m
+# CONFIG_ARCNET is not set
+CONFIG_ATM_DRIVERS=y
+# CONFIG_ATM_DUMMY is not set
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_NICSTAR=m
+# CONFIG_ATM_NICSTAR_USE_SUNI is not set
+# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_IDT77252_USE_SUNI=y
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+CONFIG_ATM_IA=m
+# CONFIG_ATM_IA_DEBUG is not set
+CONFIG_ATM_FORE200E=m
+# CONFIG_ATM_FORE200E_USE_TASKLET is not set
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_HE=m
+# CONFIG_ATM_HE_USE_SUNI is not set
+CONFIG_ATM_SOLOS=m
+
+#
+# CAIF transport drivers
+#
+CONFIG_VHOST_NET=m
+CONFIG_VHOST_RING=m
+CONFIG_VHOST=m
+
+#
+# Distributed Switch Architecture drivers
+#
+CONFIG_NET_DSA_MV88E6XXX=y
+CONFIG_NET_DSA_MV88E6060=y
+CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
+CONFIG_NET_DSA_MV88E6131=y
+CONFIG_NET_DSA_MV88E6123_61_65=y
+CONFIG_ETHERNET=y
+CONFIG_MDIO=m
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+CONFIG_NET_VENDOR_ADAPTEC=y
+CONFIG_ADAPTEC_STARFIRE=m
+CONFIG_NET_VENDOR_ALTEON=y
+CONFIG_ACENIC=m
+# CONFIG_ACENIC_OMIT_TIGON_I is not set
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_AMD8111_ETH=m
+CONFIG_PCNET32=m
+CONFIG_PCMCIA_NMCLAN=m
+CONFIG_NET_VENDOR_ARC=y
+CONFIG_NET_VENDOR_ATHEROS=y
+CONFIG_ATL2=m
+CONFIG_ATL1=m
+CONFIG_ATL1E=m
+CONFIG_ATL1C=m
+CONFIG_ALX=m
+CONFIG_NET_CADENCE=y
+CONFIG_ARM_AT91_ETHER=m
+CONFIG_MACB=m
+CONFIG_NET_VENDOR_BROADCOM=y
+CONFIG_B44=m
+CONFIG_B44_PCI_AUTOSELECT=y
+CONFIG_B44_PCICORE_AUTOSELECT=y
+CONFIG_B44_PCI=y
+CONFIG_BNX2=m
+CONFIG_CNIC=m
+CONFIG_TIGON3=m
+CONFIG_BNX2X=m
+CONFIG_BNX2X_SRIOV=y
+CONFIG_NET_VENDOR_BROCADE=y
+CONFIG_BNA=m
+CONFIG_NET_CALXEDA_XGMAC=m
+CONFIG_NET_VENDOR_CHELSIO=y
+CONFIG_CHELSIO_T1=m
+CONFIG_CHELSIO_T1_1G=y
+CONFIG_CHELSIO_T3=m
+CONFIG_CHELSIO_T4=m
+CONFIG_CHELSIO_T4VF=m
+CONFIG_NET_VENDOR_CISCO=y
+CONFIG_ENIC=m
+CONFIG_DNET=m
+CONFIG_NET_VENDOR_DEC=y
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_DE2104X_DSL=0
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+CONFIG_TULIP_MMIO=y
+CONFIG_TULIP_NAPI=y
+CONFIG_TULIP_NAPI_HW_MITIGATION=y
+CONFIG_DE4X5=m
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_ULI526X=m
+CONFIG_PCMCIA_XIRCOM=m
+CONFIG_NET_VENDOR_DLINK=y
+CONFIG_DL2K=m
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+CONFIG_NET_VENDOR_EMULEX=y
+CONFIG_BE2NET=m
+CONFIG_NET_VENDOR_EXAR=y
+CONFIG_S2IO=m
+CONFIG_VXGE=m
+# CONFIG_VXGE_DEBUG_TRACE_ALL is not set
+CONFIG_NET_VENDOR_FUJITSU=y
+CONFIG_PCMCIA_FMVJ18X=m
+CONFIG_NET_VENDOR_HP=y
+CONFIG_HP100=m
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E100=m
+CONFIG_E1000=m
+CONFIG_E1000E=m
+CONFIG_IGB=m
+CONFIG_IGB_HWMON=y
+CONFIG_IGB_DCA=y
+CONFIG_IGBVF=m
+CONFIG_IXGB=m
+CONFIG_IXGBE=m
+CONFIG_IXGBE_HWMON=y
+CONFIG_IXGBE_DCA=y
+CONFIG_IXGBEVF=m
+CONFIG_I40E=m
+CONFIG_I40E_VXLAN=y
+CONFIG_I40EVF=m
+CONFIG_NET_VENDOR_I825XX=y
+CONFIG_IP1000=m
+CONFIG_JME=m
+CONFIG_NET_VENDOR_MARVELL=y
+CONFIG_MVMDIO=m
+CONFIG_SKGE=m
+# CONFIG_SKGE_DEBUG is not set
+CONFIG_SKGE_GENESIS=y
+CONFIG_SKY2=m
+# CONFIG_SKY2_DEBUG is not set
+CONFIG_NET_VENDOR_MELLANOX=y
+CONFIG_MLX4_EN=m
+CONFIG_MLX4_CORE=m
+CONFIG_MLX4_DEBUG=y
+# CONFIG_MLX5_CORE is not set
+CONFIG_NET_VENDOR_MICREL=y
+CONFIG_KS8842=m
+CONFIG_KS8851_MLL=m
+CONFIG_KSZ884X_PCI=m
+CONFIG_NET_VENDOR_MYRI=y
+CONFIG_MYRI10GE=m
+CONFIG_MYRI10GE_DCA=y
+CONFIG_FEALNX=m
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NATSEMI=m
+CONFIG_NS83820=m
+CONFIG_NET_VENDOR_8390=y
+CONFIG_PCMCIA_AXNET=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+CONFIG_NET_VENDOR_NVIDIA=y
+CONFIG_FORCEDETH=m
+CONFIG_NET_VENDOR_OKI=y
+CONFIG_PCH_GBE=m
+CONFIG_ETHOC=m
+# CONFIG_NET_PACKET_ENGINE is not set
+CONFIG_NET_VENDOR_QLOGIC=y
+CONFIG_QLA3XXX=m
+CONFIG_QLCNIC=m
+CONFIG_QLCNIC_SRIOV=y
+CONFIG_QLGE=m
+CONFIG_NETXEN_NIC=m
+CONFIG_NET_VENDOR_REALTEK=y
+CONFIG_ATP=m
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+# CONFIG_8139TOO_PIO is not set
+# CONFIG_8139TOO_TUNE_TWISTER is not set
+CONFIG_8139TOO_8129=y
+# CONFIG_8139_OLD_RX_RESET is not set
+CONFIG_R8169=m
+CONFIG_SH_ETH=m
+CONFIG_NET_VENDOR_RDC=y
+CONFIG_R6040=m
+CONFIG_NET_VENDOR_SEEQ=y
+CONFIG_NET_VENDOR_SILAN=y
+CONFIG_SC92031=m
+CONFIG_NET_VENDOR_SIS=y
+CONFIG_SIS900=m
+CONFIG_SIS190=m
+CONFIG_SFC=m
+CONFIG_SFC_MCDI_MON=y
+CONFIG_SFC_SRIOV=y
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+CONFIG_SMSC911X=m
+# CONFIG_SMSC911X_ARCH_HOOKS is not set
+CONFIG_SMSC9420=m
+CONFIG_NET_VENDOR_STMICRO=y
+CONFIG_STMMAC_ETH=m
+CONFIG_STMMAC_PLATFORM=y
+CONFIG_STMMAC_PCI=y
+# CONFIG_STMMAC_DEBUG_FS is not set
+# CONFIG_STMMAC_DA is not set
+CONFIG_NET_VENDOR_SUN=y
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+CONFIG_CASSINI=m
+CONFIG_NIU=m
+CONFIG_NET_VENDOR_TEHUTI=y
+CONFIG_TEHUTI=m
+CONFIG_NET_VENDOR_TI=y
+CONFIG_TLAN=m
+CONFIG_NET_VENDOR_VIA=y
+CONFIG_VIA_RHINE=m
+CONFIG_VIA_RHINE_MMIO=y
+CONFIG_VIA_VELOCITY=m
+CONFIG_NET_VENDOR_WIZNET=y
+CONFIG_WIZNET_W5100=m
+CONFIG_WIZNET_W5300=m
+# CONFIG_WIZNET_BUS_DIRECT is not set
+# CONFIG_WIZNET_BUS_INDIRECT is not set
+CONFIG_WIZNET_BUS_ANY=y
+CONFIG_NET_VENDOR_XIRCOM=y
+CONFIG_PCMCIA_XIRC2PS=m
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+# CONFIG_NET_SB1000 is not set
+CONFIG_PHYLIB=y
+
+#
+# MII PHY device drivers
+#
+CONFIG_AT803X_PHY=m
+CONFIG_AMD_PHY=m
+CONFIG_MARVELL_PHY=m
+CONFIG_DAVICOM_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_LXT_PHY=m
+CONFIG_CICADA_PHY=m
+CONFIG_VITESSE_PHY=m
+CONFIG_SMSC_PHY=m
+CONFIG_BROADCOM_PHY=m
+CONFIG_BCM87XX_PHY=m
+CONFIG_ICPLUS_PHY=m
+CONFIG_REALTEK_PHY=m
+CONFIG_NATIONAL_PHY=m
+CONFIG_STE10XP=m
+CONFIG_LSI_ET1011C_PHY=m
+CONFIG_MICREL_PHY=m
+CONFIG_FIXED_PHY=y
+CONFIG_MDIO_BITBANG=m
+# CONFIG_MDIO_GPIO is not set
+# CONFIG_PLIP is not set
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOATM=m
+CONFIG_PPPOE=m
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+# CONFIG_SLIP is not set
+CONFIG_SLHC=m
+
+#
+# USB Network Adapters
+#
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_RTL8152=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_HUAWEI_CDC_NCM=m
+CONFIG_USB_NET_CDC_MBIM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SR9700=m
+CONFIG_USB_NET_SR9800=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_GL620A=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_USB_NET_CX82310_ETH=m
+CONFIG_USB_NET_KALMIA=m
+CONFIG_USB_NET_QMI_WWAN=m
+CONFIG_USB_HSO=m
+CONFIG_USB_NET_INT51X1=m
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
+CONFIG_USB_VL600=m
+CONFIG_WLAN=y
+# CONFIG_PCMCIA_RAYCS is not set
+CONFIG_LIBERTAS_THINFIRM=m
+# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set
+CONFIG_LIBERTAS_THINFIRM_USB=m
+# CONFIG_LIBERTAS_UAP is not set
+CONFIG_AIRO=m
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+CONFIG_PCMCIA_ATMEL=m
+CONFIG_AT76C50X_USB=m
+CONFIG_AIRO_CS=m
+CONFIG_PCMCIA_WL3501=m
+# CONFIG_PRISM54 is not set
+CONFIG_USB_ZD1201=m
+CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_RTL8180=m
+CONFIG_RTL8187=m
+CONFIG_RTL8187_LEDS=y
+CONFIG_ADM8211=m
+CONFIG_MAC80211_HWSIM=m
+CONFIG_MWL8K=m
+CONFIG_ATH_COMMON=m
+CONFIG_ATH_CARDS=m
+# CONFIG_ATH_DEBUG is not set
+CONFIG_ATH5K=m
+CONFIG_ATH5K_DEBUG=y
+# CONFIG_ATH5K_TRACER is not set
+CONFIG_ATH5K_PCI=y
+CONFIG_ATH9K_HW=m
+CONFIG_ATH9K_COMMON=m
+CONFIG_ATH9K_BTCOEX_SUPPORT=y
+CONFIG_ATH9K=m
+CONFIG_ATH9K_PCI=y
+CONFIG_ATH9K_AHB=y
+# CONFIG_ATH9K_DEBUGFS is not set
+# CONFIG_ATH9K_WOW is not set
+# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set
+CONFIG_ATH9K_RFKILL=y
+CONFIG_ATH9K_HTC=m
+# CONFIG_ATH9K_HTC_DEBUGFS is not set
+CONFIG_CARL9170=m
+CONFIG_CARL9170_LEDS=y
+CONFIG_CARL9170_WPC=y
+CONFIG_CARL9170_HWRNG=y
+# CONFIG_ATH6KL is not set
+CONFIG_AR5523=m
+CONFIG_WIL6210=m
+CONFIG_WIL6210_ISR_COR=y
+CONFIG_WIL6210_TRACING=y
+CONFIG_ATH10K=m
+CONFIG_ATH10K_PCI=m
+# CONFIG_ATH10K_DEBUG is not set
+# CONFIG_ATH10K_DEBUGFS is not set
+# CONFIG_ATH10K_TRACING is not set
+CONFIG_WCN36XX=m
+# CONFIG_WCN36XX_DEBUGFS is not set
+CONFIG_B43=m
+CONFIG_B43_BCMA=y
+CONFIG_B43_SSB=y
+CONFIG_B43_PCI_AUTOSELECT=y
+CONFIG_B43_PCICORE_AUTOSELECT=y
+# CONFIG_B43_PCMCIA is not set
+CONFIG_B43_SDIO=y
+CONFIG_B43_BCMA_PIO=y
+CONFIG_B43_PIO=y
+CONFIG_B43_PHY_N=y
+CONFIG_B43_PHY_LP=y
+CONFIG_B43_PHY_HT=y
+CONFIG_B43_LEDS=y
+CONFIG_B43_HWRNG=y
+# CONFIG_B43_DEBUG is not set
+CONFIG_B43LEGACY=m
+CONFIG_B43LEGACY_PCI_AUTOSELECT=y
+CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
+CONFIG_B43LEGACY_LEDS=y
+CONFIG_B43LEGACY_HWRNG=y
+# CONFIG_B43LEGACY_DEBUG is not set
+CONFIG_B43LEGACY_DMA=y
+CONFIG_B43LEGACY_PIO=y
+CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
+# CONFIG_B43LEGACY_DMA_MODE is not set
+# CONFIG_B43LEGACY_PIO_MODE is not set
+CONFIG_BRCMUTIL=m
+CONFIG_BRCMSMAC=m
+CONFIG_BRCMFMAC=m
+CONFIG_BRCMFMAC_SDIO=y
+# CONFIG_BRCMFMAC_USB is not set
+# CONFIG_BRCM_TRACING is not set
+# CONFIG_BRCMDBG is not set
+CONFIG_HOSTAP=m
+CONFIG_HOSTAP_FIRMWARE=y
+CONFIG_HOSTAP_FIRMWARE_NVRAM=y
+CONFIG_HOSTAP_PLX=m
+CONFIG_HOSTAP_PCI=m
+CONFIG_HOSTAP_CS=m
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+# CONFIG_IPW2100_DEBUG is not set
+CONFIG_IPW2200=m
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
+# CONFIG_IPW2200_DEBUG is not set
+CONFIG_LIBIPW=m
+# CONFIG_LIBIPW_DEBUG is not set
+CONFIG_IWLWIFI=m
+CONFIG_IWLDVM=m
+CONFIG_IWLMVM=m
+CONFIG_IWLWIFI_OPMODE_MODULAR=y
+
+#
+# Debugging Options
+#
+# CONFIG_IWLWIFI_DEBUG is not set
+# CONFIG_IWLWIFI_DEVICE_TRACING is not set
+CONFIG_IWLEGACY=m
+CONFIG_IWL4965=m
+CONFIG_IWL3945=m
+
+#
+# iwl3945 / iwl4965 Debugging Options
+#
+# CONFIG_IWLEGACY_DEBUG is not set
+CONFIG_LIBERTAS=m
+CONFIG_LIBERTAS_USB=m
+CONFIG_LIBERTAS_CS=m
+CONFIG_LIBERTAS_SDIO=m
+# CONFIG_LIBERTAS_DEBUG is not set
+CONFIG_LIBERTAS_MESH=y
+CONFIG_HERMES=m
+# CONFIG_HERMES_PRISM is not set
+CONFIG_HERMES_CACHE_FW_ON_INIT=y
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_NORTEL_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+CONFIG_PCMCIA_SPECTRUM=m
+CONFIG_ORINOCO_USB=m
+CONFIG_P54_COMMON=m
+CONFIG_P54_USB=m
+CONFIG_P54_PCI=m
+CONFIG_P54_LEDS=y
+CONFIG_RT2X00=m
+CONFIG_RT2400PCI=m
+CONFIG_RT2500PCI=m
+CONFIG_RT61PCI=m
+CONFIG_RT2800PCI=m
+CONFIG_RT2800PCI_RT33XX=y
+CONFIG_RT2800PCI_RT35XX=y
+CONFIG_RT2800PCI_RT53XX=y
+CONFIG_RT2800PCI_RT3290=y
+CONFIG_RT2500USB=m
+CONFIG_RT73USB=m
+CONFIG_RT2800USB=m
+CONFIG_RT2800USB_RT33XX=y
+CONFIG_RT2800USB_RT35XX=y
+CONFIG_RT2800USB_RT3573=y
+CONFIG_RT2800USB_RT53XX=y
+CONFIG_RT2800USB_RT55XX=y
+CONFIG_RT2800USB_UNKNOWN=y
+CONFIG_RT2800_LIB=m
+CONFIG_RT2800_LIB_MMIO=m
+CONFIG_RT2X00_LIB_MMIO=m
+CONFIG_RT2X00_LIB_PCI=m
+CONFIG_RT2X00_LIB_USB=m
+CONFIG_RT2X00_LIB=m
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_CRYPTO=y
+CONFIG_RT2X00_LIB_LEDS=y
+# CONFIG_RT2X00_DEBUG is not set
+CONFIG_RTL_CARDS=m
+CONFIG_RTL8192CE=m
+CONFIG_RTL8192SE=m
+CONFIG_RTL8192DE=m
+CONFIG_RTL8723AE=m
+CONFIG_RTL8188EE=m
+CONFIG_RTL8192CU=m
+CONFIG_RTLWIFI=m
+CONFIG_RTLWIFI_PCI=m
+CONFIG_RTLWIFI_USB=m
+# CONFIG_RTLWIFI_DEBUG is not set
+CONFIG_RTL8192C_COMMON=m
+CONFIG_WL_TI=y
+CONFIG_WL1251=m
+CONFIG_WL1251_SDIO=m
+CONFIG_WL12XX=m
+CONFIG_WL18XX=m
+CONFIG_WLCORE=m
+CONFIG_WLCORE_SDIO=m
+CONFIG_WILINK_PLATFORM_DATA=y
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+CONFIG_MWIFIEX_USB=m
+CONFIG_CW1200=m
+CONFIG_CW1200_WLAN_SDIO=m
+
+#
+# Enable WiMAX (Networking options) to see the WiMAX drivers
+#
+# CONFIG_WAN is not set
+CONFIG_XEN_NETDEV_FRONTEND=m
+CONFIG_XEN_NETDEV_BACKEND=m
+CONFIG_VMXNET3=m
+CONFIG_HYPERV_NET=m
+CONFIG_ISDN=y
+CONFIG_ISDN_I4L=m
+CONFIG_ISDN_PPP=y
+CONFIG_ISDN_PPP_VJ=y
+CONFIG_ISDN_MPP=y
+CONFIG_IPPP_FILTER=y
+CONFIG_ISDN_PPP_BSDCOMP=m
+CONFIG_ISDN_AUDIO=y
+CONFIG_ISDN_TTY_FAX=y
+
+#
+# ISDN feature submodules
+#
+CONFIG_ISDN_DIVERSION=m
+
+#
+# ISDN4Linux hardware drivers
+#
+
+#
+# Passive cards
+#
+CONFIG_ISDN_DRV_HISAX=m
+
+#
+# D-channel protocol features
+#
+CONFIG_HISAX_EURO=y
+CONFIG_DE_AOC=y
+CONFIG_HISAX_NO_SENDCOMPLETE=y
+CONFIG_HISAX_NO_LLC=y
+CONFIG_HISAX_NO_KEYPAD=y
+CONFIG_HISAX_1TR6=y
+CONFIG_HISAX_NI1=y
+CONFIG_HISAX_MAX_CARDS=8
+
+#
+# HiSax supported cards
+#
+CONFIG_HISAX_16_3=y
+CONFIG_HISAX_TELESPCI=y
+CONFIG_HISAX_S0BOX=y
+CONFIG_HISAX_FRITZPCI=y
+CONFIG_HISAX_AVM_A1_PCMCIA=y
+CONFIG_HISAX_ELSA=y
+CONFIG_HISAX_DIEHLDIVA=y
+CONFIG_HISAX_SEDLBAUER=y
+CONFIG_HISAX_NETJET=y
+CONFIG_HISAX_NETJET_U=y
+CONFIG_HISAX_NICCY=y
+CONFIG_HISAX_BKM_A4T=y
+CONFIG_HISAX_SCT_QUADRO=y
+CONFIG_HISAX_GAZEL=y
+CONFIG_HISAX_HFC_PCI=y
+CONFIG_HISAX_W6692=y
+CONFIG_HISAX_HFC_SX=y
+CONFIG_HISAX_ENTERNOW_PCI=y
+# CONFIG_HISAX_DEBUG is not set
+
+#
+# HiSax PCMCIA card service modules
+#
+# CONFIG_HISAX_SEDLBAUER_CS is not set
+# CONFIG_HISAX_ELSA_CS is not set
+# CONFIG_HISAX_AVM_A1_CS is not set
+# CONFIG_HISAX_TELES_CS is not set
+
+#
+# HiSax sub driver modules
+#
+CONFIG_HISAX_ST5481=m
+CONFIG_HISAX_HFCUSB=m
+CONFIG_HISAX_HFC4S8S=m
+CONFIG_HISAX_FRITZ_PCIPNP=m
+
+#
+# Active cards
+#
+CONFIG_ISDN_CAPI=m
+CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
+CONFIG_CAPI_TRACE=y
+CONFIG_ISDN_CAPI_CAPI20=m
+CONFIG_ISDN_CAPI_MIDDLEWARE=y
+CONFIG_ISDN_CAPI_CAPIDRV=m
+
+#
+# CAPI hardware drivers
+#
+CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
+# CONFIG_ISDN_DRV_AVMB1_B1PCMCIA is not set
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
+CONFIG_CAPI_EICON=y
+CONFIG_ISDN_DIVAS=m
+CONFIG_ISDN_DIVAS_BRIPCI=y
+CONFIG_ISDN_DIVAS_PRIPCI=y
+CONFIG_ISDN_DIVAS_DIVACAPI=m
+CONFIG_ISDN_DIVAS_USERIDI=m
+CONFIG_ISDN_DIVAS_MAINT=m
+CONFIG_ISDN_DRV_GIGASET=m
+CONFIG_GIGASET_CAPI=y
+# CONFIG_GIGASET_I4L is not set
+# CONFIG_GIGASET_DUMMYLL is not set
+CONFIG_GIGASET_BASE=m
+CONFIG_GIGASET_M105=m
+CONFIG_GIGASET_M101=m
+# CONFIG_GIGASET_DEBUG is not set
+CONFIG_HYSDN=m
+CONFIG_HYSDN_CAPI=y
+CONFIG_MISDN=m
+CONFIG_MISDN_DSP=m
+CONFIG_MISDN_L1OIP=m
+
+#
+# mISDN hardware drivers
+#
+CONFIG_MISDN_HFCPCI=m
+CONFIG_MISDN_HFCMULTI=m
+CONFIG_MISDN_HFCUSB=m
+CONFIG_MISDN_AVMFRITZ=m
+CONFIG_MISDN_SPEEDFAX=m
+CONFIG_MISDN_INFINEON=m
+CONFIG_MISDN_W6692=m
+CONFIG_MISDN_NETJET=m
+CONFIG_MISDN_IPAC=m
+CONFIG_MISDN_ISAR=m
+CONFIG_ISDN_HDLC=m
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+# CONFIG_INPUT_FF_MEMLESS is not set
+CONFIG_INPUT_POLLDEV=m
+CONFIG_INPUT_SPARSEKMAP=m
+CONFIG_INPUT_MATRIXKMAP=m
+
+#
+# Userland interfaces
+#
+CONFIG_INPUT_MOUSEDEV=y
+# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+# CONFIG_INPUT_JOYDEV is not set
+CONFIG_INPUT_EVDEV=y
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADP5588 is not set
+# CONFIG_KEYBOARD_ADP5589 is not set
+CONFIG_KEYBOARD_ATKBD=y
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+CONFIG_KEYBOARD_GPIO=m
+CONFIG_KEYBOARD_GPIO_POLLED=m
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+CONFIG_KEYBOARD_LM8333=m
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_CYPRESS=y
+CONFIG_MOUSE_PS2_LIFEBOOK=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+CONFIG_MOUSE_PS2_ELANTECH=y
+CONFIG_MOUSE_PS2_SENTELIC=y
+CONFIG_MOUSE_PS2_TOUCHKIT=y
+CONFIG_MOUSE_SERIAL=m
+CONFIG_MOUSE_APPLETOUCH=m
+CONFIG_MOUSE_BCM5974=m
+CONFIG_MOUSE_CYAPA=m
+CONFIG_MOUSE_VSXXXAA=m
+# CONFIG_MOUSE_GPIO is not set
+CONFIG_MOUSE_SYNAPTICS_I2C=m
+CONFIG_MOUSE_SYNAPTICS_USB=m
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+# CONFIG_INPUT_TOUCHSCREEN is not set
+CONFIG_INPUT_MISC=y
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_BMA150 is not set
+CONFIG_INPUT_PCSPKR=m
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_MPU3050 is not set
+CONFIG_INPUT_APANEL=m
+# CONFIG_INPUT_GP2A is not set
+# CONFIG_INPUT_GPIO_TILT_POLLED is not set
+CONFIG_INPUT_ATLAS_BTNS=m
+CONFIG_INPUT_ATI_REMOTE2=m
+CONFIG_INPUT_KEYSPAN_REMOTE=m
+# CONFIG_INPUT_KXTJ9 is not set
+CONFIG_INPUT_POWERMATE=m
+CONFIG_INPUT_YEALINK=m
+CONFIG_INPUT_CM109=m
+CONFIG_INPUT_RETU_PWRBUTTON=m
+CONFIG_INPUT_UINPUT=m
+# CONFIG_INPUT_PCF8574 is not set
+CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_CMA3000 is not set
+CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
+CONFIG_INPUT_IDEAPAD_SLIDEBAR=m
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=y
+# CONFIG_SERIO_CT82C710 is not set
+# CONFIG_SERIO_PARKBD is not set
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+CONFIG_SERIO_ALTERA_PS2=m
+# CONFIG_SERIO_PS2MULT is not set
+CONFIG_SERIO_ARC_PS2=m
+CONFIG_HYPERV_KEYBOARD=m
+# CONFIG_GAMEPORT is not set
+
+#
+# Character devices
+#
+CONFIG_TTY=y
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_CONSOLE_SLEEP=y
+CONFIG_HW_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
+# CONFIG_LEGACY_PTYS is not set
+CONFIG_SERIAL_NONSTANDARD=y
+CONFIG_ROCKETPORT=m
+CONFIG_CYCLADES=m
+# CONFIG_CYZ_INTR is not set
+# CONFIG_MOXA_INTELLIO is not set
+# CONFIG_MOXA_SMARTIO is not set
+CONFIG_SYNCLINK=m
+CONFIG_SYNCLINKMP=m
+CONFIG_SYNCLINK_GT=m
+CONFIG_NOZOMI=m
+# CONFIG_ISI is not set
+CONFIG_N_HDLC=m
+CONFIG_N_GSM=m
+# CONFIG_TRACE_SINK is not set
+# CONFIG_DEVKMEM is not set
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
+CONFIG_SERIAL_8250_PNP=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_PCI=y
+# CONFIG_SERIAL_8250_CS is not set
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_MANY_PORTS=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+# CONFIG_SERIAL_8250_DETECT_IRQ is not set
+CONFIG_SERIAL_8250_RSA=y
+CONFIG_SERIAL_8250_DW=m
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_MFD_HSU is not set
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+CONFIG_SERIAL_JSM=m
+CONFIG_SERIAL_SCCNXP=m
+# CONFIG_SERIAL_TIMBERDALE is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_PCH_UART is not set
+CONFIG_SERIAL_ARC=m
+CONFIG_SERIAL_ARC_NR_PORTS=1
+CONFIG_SERIAL_RP2=m
+CONFIG_SERIAL_RP2_NR_UARTS=32
+CONFIG_SERIAL_FSL_LPUART=m
+# CONFIG_TTY_PRINTK is not set
+CONFIG_PRINTER=m
+CONFIG_LP_CONSOLE=y
+CONFIG_PPDEV=m
+CONFIG_HVC_DRIVER=y
+CONFIG_HVC_IRQ=y
+CONFIG_HVC_XEN=y
+CONFIG_HVC_XEN_FRONTEND=y
+CONFIG_VIRTIO_CONSOLE=y
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+CONFIG_HW_RANDOM=y
+CONFIG_HW_RANDOM_TIMERIOMEM=m
+CONFIG_HW_RANDOM_INTEL=m
+CONFIG_HW_RANDOM_AMD=m
+CONFIG_HW_RANDOM_ATMEL=m
+CONFIG_HW_RANDOM_VIA=m
+CONFIG_HW_RANDOM_VIRTIO=m
+CONFIG_HW_RANDOM_EXYNOS=m
+CONFIG_NVRAM=y
+CONFIG_R3964=m
+# CONFIG_APPLICOM is not set
+
+#
+# PCMCIA character devices
+#
+# CONFIG_SYNCLINK_CS is not set
+# CONFIG_CARDMAN_4000 is not set
+# CONFIG_CARDMAN_4040 is not set
+# CONFIG_IPWIRELESS is not set
+CONFIG_MWAVE=m
+CONFIG_RAW_DRIVER=y
+CONFIG_MAX_RAW_DEVS=8192
+CONFIG_HPET=y
+# CONFIG_HPET_MMAP is not set
+CONFIG_HANGCHECK_TIMER=m
+# CONFIG_TCG_TPM is not set
+# CONFIG_TELCLOCK is not set
+CONFIG_DEVPORT=y
+CONFIG_I2C=m
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=m
+CONFIG_I2C_MUX=m
+
+#
+# Multiplexer I2C Chip support
+#
+CONFIG_I2C_MUX_GPIO=m
+CONFIG_I2C_MUX_PCA9541=m
+CONFIG_I2C_MUX_PCA954x=m
+CONFIG_I2C_MUX_PINCTRL=m
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_SMBUS=m
+CONFIG_I2C_ALGOBIT=m
+CONFIG_I2C_ALGOPCA=m
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# PC SMBus host controller drivers
+#
+CONFIG_I2C_ALI1535=m
+CONFIG_I2C_ALI1563=m
+CONFIG_I2C_ALI15X3=m
+CONFIG_I2C_AMD756=m
+CONFIG_I2C_AMD756_S4882=m
+CONFIG_I2C_AMD8111=m
+CONFIG_I2C_I801=m
+CONFIG_I2C_ISCH=m
+CONFIG_I2C_ISMT=m
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_NFORCE2=m
+CONFIG_I2C_NFORCE2_S4985=m
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+
+#
+# ACPI drivers
+#
+CONFIG_I2C_SCMI=m
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+CONFIG_I2C_CBUS_GPIO=m
+CONFIG_I2C_DESIGNWARE_CORE=m
+CONFIG_I2C_DESIGNWARE_PLATFORM=m
+# CONFIG_I2C_DESIGNWARE_PCI is not set
+# CONFIG_I2C_EG20T is not set
+# CONFIG_I2C_GPIO is not set
+# CONFIG_I2C_OCORES is not set
+CONFIG_I2C_PCA_PLATFORM=m
+# CONFIG_I2C_PXA_PCI is not set
+CONFIG_I2C_SIMTEC=m
+# CONFIG_I2C_XILINX is not set
+
+#
+# External I2C/SMBus adapter drivers
+#
+CONFIG_I2C_DIOLAN_U2C=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_PARPORT_LIGHT=m
+CONFIG_I2C_ROBOTFUZZ_OSIF=m
+# CONFIG_I2C_TAOS_EVM is not set
+CONFIG_I2C_TINY_USB=m
+CONFIG_I2C_VIPERBOARD=m
+
+#
+# Other I2C/SMBus bus drivers
+#
+# CONFIG_I2C_STUB is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# CONFIG_SPI is not set
+CONFIG_HSI=m
+CONFIG_HSI_BOARDINFO=y
+
+#
+# HSI clients
+#
+CONFIG_HSI_CHAR=m
+
+#
+# PPS support
+#
+CONFIG_PPS=m
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+# CONFIG_PPS_CLIENT_KTIMER is not set
+# CONFIG_PPS_CLIENT_LDISC is not set
+# CONFIG_PPS_CLIENT_PARPORT is not set
+# CONFIG_PPS_CLIENT_GPIO is not set
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+CONFIG_PTP_1588_CLOCK=m
+
+#
+# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
+#
+CONFIG_PTP_1588_CLOCK_PCH=m
+CONFIG_PINCTRL=y
+
+#
+# Pin controllers
+#
+# CONFIG_PINMUX is not set
+# CONFIG_PINCONF is not set
+# CONFIG_DEBUG_PINCTRL is not set
+CONFIG_PINCTRL_BAYTRAIL=y
+CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_DEVRES=y
+CONFIG_GPIO_ACPI=y
+# CONFIG_DEBUG_GPIO is not set
+CONFIG_GPIO_SYSFS=y
+
+#
+# Memory mapped GPIO drivers:
+#
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_IT8761E is not set
+CONFIG_GPIO_F7188X=m
+CONFIG_GPIO_SCH311X=m
+CONFIG_GPIO_TS5500=m
+CONFIG_GPIO_SCH=m
+CONFIG_GPIO_ICH=m
+# CONFIG_GPIO_VX855 is not set
+# CONFIG_GPIO_LYNXPOINT is not set
+
+#
+# I2C GPIO expanders:
+#
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_ADP5588 is not set
+
+#
+# PCI GPIO expanders:
+#
+# CONFIG_GPIO_CS5535 is not set
+# CONFIG_GPIO_AMD8111 is not set
+# CONFIG_GPIO_INTEL_MID is not set
+# CONFIG_GPIO_PCH is not set
+# CONFIG_GPIO_ML_IOH is not set
+# CONFIG_GPIO_RDC321X is not set
+
+#
+# SPI GPIO expanders:
+#
+
+#
+# AC97 GPIO expanders:
+#
+
+#
+# LPC GPIO expanders:
+#
+
+#
+# MODULbus GPIO expanders:
+#
+
+#
+# USB GPIO expanders:
+#
+CONFIG_GPIO_VIPERBOARD=m
+CONFIG_W1=m
+CONFIG_W1_CON=y
+
+#
+# 1-wire Bus Masters
+#
+# CONFIG_W1_MASTER_MATROX is not set
+CONFIG_W1_MASTER_DS2490=m
+CONFIG_W1_MASTER_DS2482=m
+CONFIG_W1_MASTER_DS1WM=m
+# CONFIG_W1_MASTER_GPIO is not set
+
+#
+# 1-wire Slaves
+#
+CONFIG_W1_SLAVE_THERM=m
+CONFIG_W1_SLAVE_SMEM=m
+CONFIG_W1_SLAVE_DS2408=m
+CONFIG_W1_SLAVE_DS2408_READBACK=y
+CONFIG_W1_SLAVE_DS2413=m
+CONFIG_W1_SLAVE_DS2423=m
+CONFIG_W1_SLAVE_DS2431=m
+CONFIG_W1_SLAVE_DS2433=m
+CONFIG_W1_SLAVE_DS2433_CRC=y
+CONFIG_W1_SLAVE_DS2760=m
+CONFIG_W1_SLAVE_DS2780=m
+CONFIG_W1_SLAVE_DS2781=m
+CONFIG_W1_SLAVE_DS28E04=m
+CONFIG_W1_SLAVE_BQ27000=m
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+# CONFIG_PDA_POWER is not set
+CONFIG_GENERIC_ADC_BATTERY=m
+# CONFIG_TEST_POWER is not set
+# CONFIG_BATTERY_DS2760 is not set
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SBS is not set
+# CONFIG_BATTERY_BQ27x00 is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24190 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_SMB347 is not set
+CONFIG_POWER_RESET=y
+CONFIG_POWER_AVS=y
+CONFIG_HWMON=y
+CONFIG_HWMON_VID=m
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+CONFIG_SENSORS_ABITUGURU=m
+CONFIG_SENSORS_ABITUGURU3=m
+CONFIG_SENSORS_AD7414=m
+CONFIG_SENSORS_AD7418=m
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1029=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_ADM9240=m
+CONFIG_SENSORS_ADT7X10=m
+CONFIG_SENSORS_ADT7410=m
+CONFIG_SENSORS_ADT7411=m
+CONFIG_SENSORS_ADT7462=m
+CONFIG_SENSORS_ADT7470=m
+CONFIG_SENSORS_ADT7475=m
+CONFIG_SENSORS_ASC7621=m
+CONFIG_SENSORS_K8TEMP=m
+CONFIG_SENSORS_K10TEMP=m
+CONFIG_SENSORS_FAM15H_POWER=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_ATXP1=m
+CONFIG_SENSORS_DS620=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_I5K_AMB=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_F71882FG=m
+CONFIG_SENSORS_F75375S=m
+CONFIG_SENSORS_FSCHMD=m
+CONFIG_SENSORS_G760A=m
+CONFIG_SENSORS_G762=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+# CONFIG_SENSORS_GPIO_FAN is not set
+CONFIG_SENSORS_HIH6130=m
+CONFIG_SENSORS_HTU21=m
+CONFIG_SENSORS_CORETEMP=m
+CONFIG_SENSORS_IBMAEM=m
+CONFIG_SENSORS_IBMPEX=m
+# CONFIG_SENSORS_IIO_HWMON is not set
+CONFIG_SENSORS_IT87=m
+# CONFIG_SENSORS_JC42 is not set
+CONFIG_SENSORS_LINEAGE=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM73=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_LM93=m
+CONFIG_SENSORS_LTC4151=m
+CONFIG_SENSORS_LTC4215=m
+CONFIG_SENSORS_LTC4245=m
+CONFIG_SENSORS_LTC4261=m
+CONFIG_SENSORS_LM95234=m
+CONFIG_SENSORS_LM95241=m
+CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_MAX16065=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_MAX1668=m
+CONFIG_SENSORS_MAX197=m
+CONFIG_SENSORS_MAX6639=m
+CONFIG_SENSORS_MAX6642=m
+CONFIG_SENSORS_MAX6650=m
+CONFIG_SENSORS_MAX6697=m
+CONFIG_SENSORS_MCP3021=m
+CONFIG_SENSORS_NCT6775=m
+CONFIG_SENSORS_NTC_THERMISTOR=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_PMBUS=m
+CONFIG_SENSORS_PMBUS=m
+CONFIG_SENSORS_ADM1275=m
+CONFIG_SENSORS_LM25066=m
+# CONFIG_SENSORS_LTC2978 is not set
+CONFIG_SENSORS_MAX16064=m
+CONFIG_SENSORS_MAX34440=m
+CONFIG_SENSORS_MAX8688=m
+CONFIG_SENSORS_UCD9000=m
+CONFIG_SENSORS_UCD9200=m
+# CONFIG_SENSORS_ZL6100 is not set
+CONFIG_SENSORS_SHT15=m
+CONFIG_SENSORS_SHT21=m
+CONFIG_SENSORS_SIS5595=m
+# CONFIG_SENSORS_SMM665 is not set
+CONFIG_SENSORS_DME1737=m
+CONFIG_SENSORS_EMC1403=m
+# CONFIG_SENSORS_EMC2103 is not set
+CONFIG_SENSORS_EMC6W201=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47M192=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_SCH56XX_COMMON=m
+CONFIG_SENSORS_SCH5627=m
+CONFIG_SENSORS_SCH5636=m
+CONFIG_SENSORS_ADS1015=m
+CONFIG_SENSORS_ADS7828=m
+CONFIG_SENSORS_AMC6821=m
+CONFIG_SENSORS_INA209=m
+CONFIG_SENSORS_INA2XX=m
+CONFIG_SENSORS_THMC50=m
+CONFIG_SENSORS_TMP102=m
+CONFIG_SENSORS_TMP401=m
+CONFIG_SENSORS_TMP421=m
+CONFIG_SENSORS_VIA_CPUTEMP=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_VT1211=m
+CONFIG_SENSORS_VT8231=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83791D=m
+CONFIG_SENSORS_W83792D=m
+CONFIG_SENSORS_W83793=m
+CONFIG_SENSORS_W83795=m
+# CONFIG_SENSORS_W83795_FANCTRL is not set
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83L786NG=m
+CONFIG_SENSORS_W83627HF=m
+CONFIG_SENSORS_W83627EHF=m
+CONFIG_SENSORS_APPLESMC=m
+
+#
+# ACPI drivers
+#
+CONFIG_SENSORS_ACPI_POWER=m
+CONFIG_SENSORS_ATK0110=m
+CONFIG_THERMAL=y
+CONFIG_THERMAL_HWMON=y
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+CONFIG_THERMAL_GOV_FAIR_SHARE=y
+CONFIG_THERMAL_GOV_STEP_WISE=y
+CONFIG_THERMAL_GOV_USER_SPACE=y
+CONFIG_THERMAL_EMULATION=y
+CONFIG_INTEL_POWERCLAMP=m
+CONFIG_X86_PKG_TEMP_THERMAL=m
+CONFIG_ACPI_INT3403_THERMAL=m
+
+#
+# Texas Instruments thermal drivers
+#
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=y
+CONFIG_WATCHDOG_NOWAYOUT=y
+
+#
+# Watchdog Device Drivers
+#
+CONFIG_SOFT_WATCHDOG=m
+CONFIG_DW_WATCHDOG=m
+CONFIG_RETU_WATCHDOG=m
+CONFIG_ACQUIRE_WDT=m
+CONFIG_ADVANTECH_WDT=m
+CONFIG_ALIM1535_WDT=m
+CONFIG_ALIM7101_WDT=m
+CONFIG_F71808E_WDT=m
+CONFIG_SP5100_TCO=m
+CONFIG_GEODE_WDT=m
+CONFIG_SC520_WDT=m
+CONFIG_SBC_FITPC2_WATCHDOG=m
+CONFIG_EUROTECH_WDT=m
+CONFIG_IB700_WDT=m
+CONFIG_IBMASR=m
+CONFIG_WAFER_WDT=m
+CONFIG_I6300ESB_WDT=m
+CONFIG_IE6XX_WDT=m
+CONFIG_ITCO_WDT=m
+CONFIG_ITCO_VENDOR_SUPPORT=y
+CONFIG_IT8712F_WDT=m
+CONFIG_IT87_WDT=m
+CONFIG_HP_WATCHDOG=m
+CONFIG_HPWDT_NMI_DECODING=y
+CONFIG_SC1200_WDT=m
+CONFIG_PC87413_WDT=m
+CONFIG_NV_TCO=m
+CONFIG_60XX_WDT=m
+CONFIG_SBC8360_WDT=m
+CONFIG_CPU5_WDT=m
+CONFIG_SMSC_SCH311X_WDT=m
+CONFIG_SMSC37B787_WDT=m
+CONFIG_VIA_WDT=m
+CONFIG_W83627HF_WDT=m
+CONFIG_W83697HF_WDT=m
+CONFIG_W83697UG_WDT=m
+CONFIG_W83877F_WDT=m
+CONFIG_W83977F_WDT=m
+CONFIG_MACHZ_WDT=m
+CONFIG_SBC_EPX_C3_WATCHDOG=m
+CONFIG_MEN_A21_WDT=m
+CONFIG_XEN_WDT=m
+
+#
+# PCI-based Watchdog Cards
+#
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+
+#
+# USB-based Watchdog Cards
+#
+CONFIG_USBPCWATCHDOG=m
+CONFIG_SSB_POSSIBLE=y
+
+#
+# Sonics Silicon Backplane
+#
+CONFIG_SSB=m
+CONFIG_SSB_SPROM=y
+CONFIG_SSB_BLOCKIO=y
+CONFIG_SSB_PCIHOST_POSSIBLE=y
+CONFIG_SSB_PCIHOST=y
+CONFIG_SSB_B43_PCI_BRIDGE=y
+CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
+CONFIG_SSB_PCMCIAHOST=y
+CONFIG_SSB_SDIOHOST_POSSIBLE=y
+CONFIG_SSB_SDIOHOST=y
+CONFIG_SSB_SILENT=y
+CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
+CONFIG_SSB_DRIVER_PCICORE=y
+CONFIG_SSB_DRIVER_GPIO=y
+CONFIG_BCMA_POSSIBLE=y
+
+#
+# Broadcom specific AMBA
+#
+CONFIG_BCMA=m
+CONFIG_BCMA_BLOCKIO=y
+CONFIG_BCMA_HOST_PCI_POSSIBLE=y
+CONFIG_BCMA_HOST_PCI=y
+CONFIG_BCMA_HOST_SOC=y
+CONFIG_BCMA_DRIVER_GMAC_CMN=y
+CONFIG_BCMA_DRIVER_GPIO=y
+# CONFIG_BCMA_DEBUG is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=m
+CONFIG_MFD_CS5535=m
+# CONFIG_MFD_CROS_EC is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_HTC_PASIC3 is not set
+CONFIG_LPC_ICH=m
+CONFIG_LPC_SCH=m
+# CONFIG_MFD_JANZ_CMODIO is not set
+# CONFIG_MFD_KEMPLD is not set
+CONFIG_MFD_VIPERBOARD=m
+CONFIG_MFD_RETU=m
+# CONFIG_MFD_PCF50633 is not set
+# CONFIG_UCB1400_CORE is not set
+# CONFIG_MFD_RDC321X is not set
+CONFIG_MFD_RTSX_PCI=m
+# CONFIG_MFD_SI476X_CORE is not set
+CONFIG_MFD_SM501=m
+CONFIG_MFD_SM501_GPIO=y
+# CONFIG_ABX500_CORE is not set
+# CONFIG_MFD_SYSCON is not set
+# CONFIG_MFD_TI_AM335X_TSCADC is not set
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TPS65912 is not set
+CONFIG_MFD_WL1273_CORE=m
+CONFIG_MFD_LM3533=m
+# CONFIG_MFD_TIMBERDALE is not set
+# CONFIG_MFD_TMIO is not set
+CONFIG_MFD_VX855=m
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_REGULATOR is not set
+CONFIG_MEDIA_SUPPORT=m
+
+#
+# Multimedia core support
+#
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
+# CONFIG_MEDIA_RADIO_SUPPORT is not set
+CONFIG_MEDIA_RC_SUPPORT=y
+CONFIG_MEDIA_CONTROLLER=y
+CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
+CONFIG_VIDEO_V4L2=m
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+CONFIG_VIDEO_TUNER=m
+CONFIG_V4L2_MEM2MEM_DEV=m
+CONFIG_VIDEOBUF_GEN=m
+CONFIG_VIDEOBUF_DMA_SG=m
+CONFIG_VIDEOBUF_VMALLOC=m
+CONFIG_VIDEOBUF_DMA_CONTIG=m
+CONFIG_VIDEOBUF_DVB=m
+CONFIG_VIDEOBUF2_CORE=m
+CONFIG_VIDEOBUF2_MEMOPS=m
+CONFIG_VIDEOBUF2_DMA_CONTIG=m
+CONFIG_VIDEOBUF2_VMALLOC=m
+CONFIG_DVB_CORE=m
+CONFIG_DVB_NET=y
+CONFIG_TTPCI_EEPROM=m
+CONFIG_DVB_MAX_ADAPTERS=8
+CONFIG_DVB_DYNAMIC_MINORS=y
+
+#
+# Media drivers
+#
+CONFIG_RC_CORE=m
+CONFIG_RC_MAP=m
+CONFIG_RC_DECODERS=y
+CONFIG_LIRC=m
+CONFIG_IR_LIRC_CODEC=m
+CONFIG_IR_NEC_DECODER=m
+CONFIG_IR_RC5_DECODER=m
+CONFIG_IR_RC6_DECODER=m
+CONFIG_IR_JVC_DECODER=m
+CONFIG_IR_SONY_DECODER=m
+CONFIG_IR_RC5_SZ_DECODER=m
+CONFIG_IR_SANYO_DECODER=m
+CONFIG_IR_MCE_KBD_DECODER=m
+CONFIG_RC_DEVICES=y
+CONFIG_RC_ATI_REMOTE=m
+CONFIG_IR_ENE=m
+CONFIG_IR_IMON=m
+CONFIG_IR_MCEUSB=m
+CONFIG_IR_ITE_CIR=m
+CONFIG_IR_FINTEK=m
+CONFIG_IR_NUVOTON=m
+CONFIG_IR_REDRAT3=m
+CONFIG_IR_STREAMZAP=m
+CONFIG_IR_WINBOND_CIR=m
+CONFIG_IR_IGUANA=m
+CONFIG_IR_TTUSBIR=m
+CONFIG_RC_LOOPBACK=m
+CONFIG_IR_GPIO_CIR=m
+CONFIG_MEDIA_USB_SUPPORT=y
+
+#
+# Webcam devices
+#
+CONFIG_USB_VIDEO_CLASS=m
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
+CONFIG_USB_GSPCA=m
+CONFIG_USB_M5602=m
+CONFIG_USB_STV06XX=m
+CONFIG_USB_GL860=m
+CONFIG_USB_GSPCA_BENQ=m
+CONFIG_USB_GSPCA_CONEX=m
+CONFIG_USB_GSPCA_CPIA1=m
+CONFIG_USB_GSPCA_ETOMS=m
+CONFIG_USB_GSPCA_FINEPIX=m
+CONFIG_USB_GSPCA_JEILINJ=m
+CONFIG_USB_GSPCA_JL2005BCD=m
+CONFIG_USB_GSPCA_KINECT=m
+CONFIG_USB_GSPCA_KONICA=m
+CONFIG_USB_GSPCA_MARS=m
+CONFIG_USB_GSPCA_MR97310A=m
+CONFIG_USB_GSPCA_NW80X=m
+CONFIG_USB_GSPCA_OV519=m
+CONFIG_USB_GSPCA_OV534=m
+CONFIG_USB_GSPCA_OV534_9=m
+CONFIG_USB_GSPCA_PAC207=m
+CONFIG_USB_GSPCA_PAC7302=m
+CONFIG_USB_GSPCA_PAC7311=m
+CONFIG_USB_GSPCA_SE401=m
+CONFIG_USB_GSPCA_SN9C2028=m
+CONFIG_USB_GSPCA_SN9C20X=m
+CONFIG_USB_GSPCA_SONIXB=m
+CONFIG_USB_GSPCA_SONIXJ=m
+CONFIG_USB_GSPCA_SPCA500=m
+CONFIG_USB_GSPCA_SPCA501=m
+CONFIG_USB_GSPCA_SPCA505=m
+CONFIG_USB_GSPCA_SPCA506=m
+CONFIG_USB_GSPCA_SPCA508=m
+CONFIG_USB_GSPCA_SPCA561=m
+CONFIG_USB_GSPCA_SPCA1528=m
+CONFIG_USB_GSPCA_SQ905=m
+CONFIG_USB_GSPCA_SQ905C=m
+CONFIG_USB_GSPCA_SQ930X=m
+CONFIG_USB_GSPCA_STK014=m
+CONFIG_USB_GSPCA_STK1135=m
+CONFIG_USB_GSPCA_STV0680=m
+CONFIG_USB_GSPCA_SUNPLUS=m
+CONFIG_USB_GSPCA_T613=m
+CONFIG_USB_GSPCA_TOPRO=m
+CONFIG_USB_GSPCA_TV8532=m
+CONFIG_USB_GSPCA_VC032X=m
+CONFIG_USB_GSPCA_VICAM=m
+CONFIG_USB_GSPCA_XIRLINK_CIT=m
+CONFIG_USB_GSPCA_ZC3XX=m
+CONFIG_USB_PWC=m
+# CONFIG_USB_PWC_DEBUG is not set
+CONFIG_USB_PWC_INPUT_EVDEV=y
+CONFIG_VIDEO_CPIA2=m
+CONFIG_USB_ZR364XX=m
+CONFIG_USB_STKWEBCAM=m
+CONFIG_USB_S2255=m
+CONFIG_VIDEO_USBTV=m
+
+#
+# Analog TV USB devices
+#
+CONFIG_VIDEO_PVRUSB2=m
+CONFIG_VIDEO_PVRUSB2_SYSFS=y
+CONFIG_VIDEO_PVRUSB2_DVB=y
+# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+CONFIG_VIDEO_HDPVR=m
+CONFIG_VIDEO_TLG2300=m
+CONFIG_VIDEO_USBVISION=m
+CONFIG_VIDEO_STK1160_COMMON=m
+CONFIG_VIDEO_STK1160_AC97=y
+CONFIG_VIDEO_STK1160=m
+
+#
+# Analog/digital TV USB devices
+#
+CONFIG_VIDEO_AU0828=m
+CONFIG_VIDEO_AU0828_V4L2=y
+CONFIG_VIDEO_CX231XX=m
+CONFIG_VIDEO_CX231XX_RC=y
+CONFIG_VIDEO_CX231XX_ALSA=m
+CONFIG_VIDEO_CX231XX_DVB=m
+CONFIG_VIDEO_TM6000=m
+CONFIG_VIDEO_TM6000_ALSA=m
+CONFIG_VIDEO_TM6000_DVB=m
+
+#
+# Digital TV USB devices
+#
+CONFIG_DVB_USB=m
+# CONFIG_DVB_USB_DEBUG is not set
+CONFIG_DVB_USB_A800=m
+CONFIG_DVB_USB_DIBUSB_MB=m
+CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
+CONFIG_DVB_USB_DIBUSB_MC=m
+CONFIG_DVB_USB_DIB0700=m
+CONFIG_DVB_USB_UMT_010=m
+CONFIG_DVB_USB_CXUSB=m
+CONFIG_DVB_USB_M920X=m
+CONFIG_DVB_USB_DIGITV=m
+CONFIG_DVB_USB_VP7045=m
+CONFIG_DVB_USB_VP702X=m
+CONFIG_DVB_USB_GP8PSK=m
+CONFIG_DVB_USB_NOVA_T_USB2=m
+CONFIG_DVB_USB_TTUSB2=m
+CONFIG_DVB_USB_DTT200U=m
+CONFIG_DVB_USB_OPERA1=m
+CONFIG_DVB_USB_AF9005=m
+CONFIG_DVB_USB_AF9005_REMOTE=m
+CONFIG_DVB_USB_PCTV452E=m
+CONFIG_DVB_USB_DW2102=m
+CONFIG_DVB_USB_CINERGY_T2=m
+CONFIG_DVB_USB_DTV5100=m
+CONFIG_DVB_USB_FRIIO=m
+CONFIG_DVB_USB_AZ6027=m
+CONFIG_DVB_USB_TECHNISAT_USB2=m
+CONFIG_DVB_USB_V2=m
+CONFIG_DVB_USB_AF9015=m
+CONFIG_DVB_USB_AF9035=m
+CONFIG_DVB_USB_ANYSEE=m
+CONFIG_DVB_USB_AU6610=m
+CONFIG_DVB_USB_AZ6007=m
+CONFIG_DVB_USB_CE6230=m
+CONFIG_DVB_USB_EC168=m
+CONFIG_DVB_USB_GL861=m
+CONFIG_DVB_USB_IT913X=m
+CONFIG_DVB_USB_LME2510=m
+CONFIG_DVB_USB_MXL111SF=m
+CONFIG_DVB_USB_RTL28XXU=m
+CONFIG_DVB_USB_DVBSKY=m
+CONFIG_DVB_TTUSB_BUDGET=m
+CONFIG_DVB_TTUSB_DEC=m
+CONFIG_SMS_USB_DRV=m
+CONFIG_DVB_B2C2_FLEXCOP_USB=m
+# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set
+
+#
+# Webcam, TV (analog/digital) USB devices
+#
+CONFIG_VIDEO_EM28XX=m
+CONFIG_VIDEO_EM28XX_V4L2=m
+CONFIG_VIDEO_EM28XX_ALSA=m
+CONFIG_VIDEO_EM28XX_DVB=m
+CONFIG_VIDEO_EM28XX_RC=m
+CONFIG_MEDIA_PCI_SUPPORT=y
+
+#
+# Media capture support
+#
+CONFIG_VIDEO_MEYE=m
+
+#
+# Media capture/analog TV support
+#
+CONFIG_VIDEO_IVTV=m
+CONFIG_VIDEO_IVTV_ALSA=m
+CONFIG_VIDEO_FB_IVTV=m
+CONFIG_VIDEO_ZORAN=m
+CONFIG_VIDEO_ZORAN_DC30=m
+CONFIG_VIDEO_ZORAN_ZR36060=m
+CONFIG_VIDEO_ZORAN_BUZ=m
+CONFIG_VIDEO_ZORAN_DC10=m
+CONFIG_VIDEO_ZORAN_LML33=m
+CONFIG_VIDEO_ZORAN_LML33R10=m
+CONFIG_VIDEO_ZORAN_AVS6EYES=m
+CONFIG_VIDEO_HEXIUM_GEMINI=m
+CONFIG_VIDEO_HEXIUM_ORION=m
+CONFIG_VIDEO_MXB=m
+
+#
+# Media capture/analog/hybrid TV support
+#
+CONFIG_VIDEO_CX18=m
+CONFIG_VIDEO_CX18_ALSA=m
+CONFIG_VIDEO_CX23885=m
+CONFIG_MEDIA_ALTERA_CI=m
+CONFIG_VIDEO_CX25821=m
+CONFIG_VIDEO_CX25821_ALSA=m
+CONFIG_VIDEO_CX88=m
+CONFIG_VIDEO_CX88_ALSA=m
+CONFIG_VIDEO_CX88_BLACKBIRD=m
+CONFIG_VIDEO_CX88_DVB=m
+CONFIG_VIDEO_CX88_ENABLE_VP3054=y
+CONFIG_VIDEO_CX88_VP3054=m
+CONFIG_VIDEO_CX88_MPEG=m
+CONFIG_VIDEO_BT848=m
+CONFIG_DVB_BT8XX=m
+CONFIG_VIDEO_SAA7134=m
+CONFIG_VIDEO_SAA7134_ALSA=m
+CONFIG_VIDEO_SAA7134_RC=y
+CONFIG_VIDEO_SAA7134_DVB=m
+CONFIG_VIDEO_SAA7164=m
+
+#
+# Media digital TV PCI Adapters
+#
+CONFIG_DVB_AV7110=m
+CONFIG_DVB_AV7110_OSD=y
+CONFIG_DVB_BUDGET_CORE=m
+CONFIG_DVB_BUDGET=m
+CONFIG_DVB_BUDGET_CI=m
+CONFIG_DVB_BUDGET_AV=m
+CONFIG_DVB_BUDGET_PATCH=m
+CONFIG_DVB_B2C2_FLEXCOP_PCI=m
+# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set
+CONFIG_DVB_PLUTO2=m
+CONFIG_DVB_DM1105=m
+CONFIG_DVB_PT1=m
+CONFIG_MANTIS_CORE=m
+CONFIG_DVB_MANTIS=m
+CONFIG_DVB_HOPPER=m
+CONFIG_DVB_NGENE=m
+CONFIG_DVB_DDBRIDGE=m
+CONFIG_V4L_PLATFORM_DRIVERS=y
+CONFIG_VIDEO_CAFE_CCIC=m
+# CONFIG_VIDEO_VIA_CAMERA is not set
+CONFIG_VIDEO_TIMBERDALE=m
+CONFIG_SOC_CAMERA=m
+CONFIG_SOC_CAMERA_SCALE_CROP=m
+CONFIG_SOC_CAMERA_PLATFORM=m
+CONFIG_VIDEO_RCAR_VIN=m
+CONFIG_VIDEO_SH_MOBILE_CSI2=m
+CONFIG_VIDEO_SH_MOBILE_CEU=m
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m
+CONFIG_VIDEO_SH_VEU=m
+CONFIG_VIDEO_RENESAS_VSP1=m
+# CONFIG_V4L_TEST_DRIVERS is not set
+
+#
+# Supported MMC/SDIO adapters
+#
+# CONFIG_SMS_SDIO_DRV is not set
+# CONFIG_MEDIA_PARPORT_SUPPORT is not set
+
+#
+# Supported FireWire (IEEE 1394) Adapters
+#
+CONFIG_DVB_FIREDTV=m
+CONFIG_DVB_FIREDTV_INPUT=y
+CONFIG_MEDIA_COMMON_OPTIONS=y
+
+#
+# common driver options
+#
+CONFIG_VIDEO_CX2341X=m
+CONFIG_VIDEO_BTCX=m
+CONFIG_VIDEO_TVEEPROM=m
+CONFIG_CYPRESS_FIRMWARE=m
+CONFIG_DVB_B2C2_FLEXCOP=m
+CONFIG_VIDEO_SAA7146=m
+CONFIG_VIDEO_SAA7146_VV=m
+CONFIG_SMS_SIANO_MDTV=m
+CONFIG_SMS_SIANO_RC=y
+
+#
+# Media ancillary drivers (tuners, sensors, i2c, frontends)
+#
+CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
+CONFIG_MEDIA_ATTACH=y
+CONFIG_VIDEO_IR_I2C=m
+
+#
+# Audio decoders, processors and mixers
+#
+CONFIG_VIDEO_TVAUDIO=m
+CONFIG_VIDEO_TDA7432=m
+CONFIG_VIDEO_TDA9840=m
+CONFIG_VIDEO_TEA6415C=m
+CONFIG_VIDEO_TEA6420=m
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_CS5345=m
+CONFIG_VIDEO_CS53L32A=m
+CONFIG_VIDEO_WM8775=m
+CONFIG_VIDEO_WM8739=m
+CONFIG_VIDEO_VP27SMPX=m
+
+#
+# RDS decoders
+#
+CONFIG_VIDEO_SAA6588=m
+
+#
+# Video decoders
+#
+CONFIG_VIDEO_ADV7180=m
+CONFIG_VIDEO_BT819=m
+CONFIG_VIDEO_BT856=m
+CONFIG_VIDEO_BT866=m
+CONFIG_VIDEO_KS0127=m
+CONFIG_VIDEO_SAA7110=m
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_TVP5150=m
+CONFIG_VIDEO_VPX3220=m
+
+#
+# Video and audio decoders
+#
+CONFIG_VIDEO_SAA717X=m
+CONFIG_VIDEO_CX25840=m
+
+#
+# Video encoders
+#
+CONFIG_VIDEO_SAA7127=m
+CONFIG_VIDEO_SAA7185=m
+CONFIG_VIDEO_ADV7170=m
+CONFIG_VIDEO_ADV7175=m
+
+#
+# Camera sensor devices
+#
+CONFIG_VIDEO_OV7670=m
+CONFIG_VIDEO_MT9V011=m
+
+#
+# Flash devices
+#
+
+#
+# Video improvement chips
+#
+CONFIG_VIDEO_UPD64031A=m
+CONFIG_VIDEO_UPD64083=m
+
+#
+# Audio/Video compression chips
+#
+CONFIG_VIDEO_SAA6752HS=m
+
+#
+# Miscellaneous helper chips
+#
+CONFIG_VIDEO_M52790=m
+
+#
+# Sensors used on soc_camera driver
+#
+
+#
+# soc_camera sensor drivers
+#
+CONFIG_SOC_CAMERA_IMX074=m
+CONFIG_SOC_CAMERA_MT9M001=m
+CONFIG_SOC_CAMERA_MT9M111=m
+CONFIG_SOC_CAMERA_MT9T031=m
+CONFIG_SOC_CAMERA_MT9T112=m
+CONFIG_SOC_CAMERA_MT9V022=m
+CONFIG_SOC_CAMERA_OV2640=m
+CONFIG_SOC_CAMERA_OV5642=m
+CONFIG_SOC_CAMERA_OV6650=m
+CONFIG_SOC_CAMERA_OV772X=m
+CONFIG_SOC_CAMERA_OV9640=m
+CONFIG_SOC_CAMERA_OV9740=m
+CONFIG_SOC_CAMERA_RJ54N1=m
+CONFIG_SOC_CAMERA_TW9910=m
+CONFIG_MEDIA_TUNER=m
+CONFIG_MEDIA_TUNER_SIMPLE=m
+CONFIG_MEDIA_TUNER_TDA8290=m
+CONFIG_MEDIA_TUNER_TDA827X=m
+CONFIG_MEDIA_TUNER_TDA18271=m
+CONFIG_MEDIA_TUNER_TDA9887=m
+CONFIG_MEDIA_TUNER_MT20XX=m
+CONFIG_MEDIA_TUNER_MT2060=m
+CONFIG_MEDIA_TUNER_MT2063=m
+CONFIG_MEDIA_TUNER_MT2266=m
+CONFIG_MEDIA_TUNER_MT2131=m
+CONFIG_MEDIA_TUNER_QT1010=m
+CONFIG_MEDIA_TUNER_XC2028=m
+CONFIG_MEDIA_TUNER_XC5000=m
+CONFIG_MEDIA_TUNER_XC4000=m
+CONFIG_MEDIA_TUNER_MXL5005S=m
+CONFIG_MEDIA_TUNER_MXL5007T=m
+CONFIG_MEDIA_TUNER_MC44S803=m
+CONFIG_MEDIA_TUNER_MAX2165=m
+CONFIG_MEDIA_TUNER_TDA18218=m
+CONFIG_MEDIA_TUNER_FC0011=m
+CONFIG_MEDIA_TUNER_FC0012=m
+CONFIG_MEDIA_TUNER_FC0013=m
+CONFIG_MEDIA_TUNER_TDA18212=m
+CONFIG_MEDIA_TUNER_E4000=m
+CONFIG_MEDIA_TUNER_FC2580=m
+CONFIG_MEDIA_TUNER_M88TS2022=m
+CONFIG_MEDIA_TUNER_TUA9001=m
+CONFIG_MEDIA_TUNER_IT913X=m
+CONFIG_MEDIA_TUNER_R820T=m
+
+#
+# Multistandard (satellite) frontends
+#
+CONFIG_DVB_STB0899=m
+CONFIG_DVB_STB6100=m
+CONFIG_DVB_STV090x=m
+CONFIG_DVB_STV6110x=m
+CONFIG_DVB_M88DS3103=m
+
+#
+# Multistandard (cable + terrestrial) frontends
+#
+CONFIG_DVB_DRXK=m
+CONFIG_DVB_TDA18271C2DD=m
+
+#
+# DVB-S (satellite) frontends
+#
+CONFIG_DVB_CX24110=m
+CONFIG_DVB_CX24123=m
+CONFIG_DVB_MT312=m
+CONFIG_DVB_ZL10036=m
+CONFIG_DVB_ZL10039=m
+CONFIG_DVB_S5H1420=m
+CONFIG_DVB_STV0288=m
+CONFIG_DVB_STB6000=m
+CONFIG_DVB_STV0299=m
+CONFIG_DVB_STV6110=m
+CONFIG_DVB_STV0900=m
+CONFIG_DVB_TDA8083=m
+CONFIG_DVB_TDA10086=m
+CONFIG_DVB_TDA8261=m
+CONFIG_DVB_VES1X93=m
+CONFIG_DVB_TUNER_ITD1000=m
+CONFIG_DVB_TUNER_CX24113=m
+CONFIG_DVB_TDA826X=m
+CONFIG_DVB_TUA6100=m
+CONFIG_DVB_CX24116=m
+CONFIG_DVB_CX24117=m
+CONFIG_DVB_SI21XX=m
+CONFIG_DVB_TS2020=m
+CONFIG_DVB_DS3000=m
+CONFIG_DVB_MB86A16=m
+CONFIG_DVB_TDA10071=m
+
+#
+# DVB-T (terrestrial) frontends
+#
+CONFIG_DVB_SP8870=m
+CONFIG_DVB_SP887X=m
+CONFIG_DVB_CX22700=m
+CONFIG_DVB_CX22702=m
+CONFIG_DVB_DRXD=m
+CONFIG_DVB_L64781=m
+CONFIG_DVB_TDA1004X=m
+CONFIG_DVB_NXT6000=m
+CONFIG_DVB_MT352=m
+CONFIG_DVB_ZL10353=m
+CONFIG_DVB_DIB3000MB=m
+CONFIG_DVB_DIB3000MC=m
+CONFIG_DVB_DIB7000M=m
+CONFIG_DVB_DIB7000P=m
+CONFIG_DVB_TDA10048=m
+CONFIG_DVB_AF9013=m
+CONFIG_DVB_EC100=m
+CONFIG_DVB_STV0367=m
+CONFIG_DVB_CXD2820R=m
+CONFIG_DVB_RTL2830=m
+CONFIG_DVB_RTL2832=m
+
+#
+# DVB-C (cable) frontends
+#
+CONFIG_DVB_VES1820=m
+CONFIG_DVB_TDA10021=m
+CONFIG_DVB_TDA10023=m
+CONFIG_DVB_STV0297=m
+
+#
+# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
+#
+CONFIG_DVB_NXT200X=m
+CONFIG_DVB_OR51211=m
+CONFIG_DVB_OR51132=m
+CONFIG_DVB_BCM3510=m
+CONFIG_DVB_LGDT330X=m
+CONFIG_DVB_LGDT3305=m
+CONFIG_DVB_LG2160=m
+CONFIG_DVB_S5H1409=m
+CONFIG_DVB_AU8522=m
+CONFIG_DVB_AU8522_DTV=m
+CONFIG_DVB_AU8522_V4L=m
+CONFIG_DVB_S5H1411=m
+
+#
+# ISDB-T (terrestrial) frontends
+#
+CONFIG_DVB_S921=m
+CONFIG_DVB_DIB8000=m
+CONFIG_DVB_MB86A20S=m
+
+#
+# Digital terrestrial only tuners/PLL
+#
+CONFIG_DVB_PLL=m
+CONFIG_DVB_TUNER_DIB0070=m
+CONFIG_DVB_TUNER_DIB0090=m
+
+#
+# SEC control devices for DVB-S
+#
+CONFIG_DVB_LNBP21=m
+CONFIG_DVB_LNBP22=m
+CONFIG_DVB_ISL6405=m
+CONFIG_DVB_ISL6421=m
+CONFIG_DVB_ISL6423=m
+CONFIG_DVB_A8293=m
+CONFIG_DVB_LGS8GXX=m
+CONFIG_DVB_ATBM8830=m
+CONFIG_DVB_TDA665x=m
+CONFIG_DVB_DVBSKY_M88DS3103=m
+CONFIG_DVB_M88DC2800=m
+CONFIG_DVB_IX2505V=m
+CONFIG_DVB_IT913X_FE=m
+CONFIG_DVB_M88RS2000=m
+CONFIG_DVB_AF9033=m
+
+#
+# Tools to develop new frontends
+#
+# CONFIG_DVB_DUMMY_FE is not set
+
+#
+# Graphics support
+#
+CONFIG_AGP=y
+CONFIG_AGP_AMD64=y
+CONFIG_AGP_INTEL=y
+CONFIG_AGP_SIS=y
+CONFIG_AGP_VIA=y
+CONFIG_INTEL_GTT=y
+CONFIG_VGA_ARB=y
+CONFIG_VGA_ARB_MAX_GPUS=16
+CONFIG_VGA_SWITCHEROO=y
+CONFIG_DRM=m
+CONFIG_DRM_USB=m
+CONFIG_DRM_KMS_HELPER=m
+CONFIG_DRM_KMS_FB_HELPER=y
+# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+CONFIG_DRM_TTM=m
+
+#
+# I2C encoder or helper chips
+#
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_I2C_NXP_TDA998X=m
+CONFIG_DRM_TDFX=m
+CONFIG_DRM_R128=m
+CONFIG_DRM_RADEON=m
+# CONFIG_DRM_RADEON_UMS is not set
+CONFIG_DRM_NOUVEAU=m
+CONFIG_NOUVEAU_DEBUG=5
+CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+CONFIG_DRM_I810=m
+CONFIG_DRM_I915=m
+CONFIG_DRM_I915_KMS=y
+CONFIG_DRM_I915_FBDEV=y
+CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT=y
+# CONFIG_DRM_I915_UMS is not set
+CONFIG_DRM_MGA=m
+CONFIG_DRM_SIS=m
+CONFIG_DRM_VIA=m
+CONFIG_DRM_SAVAGE=m
+CONFIG_DRM_VMWGFX=m
+# CONFIG_DRM_VMWGFX_FBCON is not set
+CONFIG_DRM_GMA500=m
+CONFIG_DRM_GMA600=y
+CONFIG_DRM_GMA3600=y
+CONFIG_DRM_UDL=m
+CONFIG_DRM_AST=m
+CONFIG_DRM_MGAG200=m
+CONFIG_DRM_CIRRUS_QEMU=m
+CONFIG_DRM_QXL=m
+CONFIG_DRM_BOCHS=m
+CONFIG_VGASTATE=m
+CONFIG_VIDEO_OUTPUT_CONTROL=m
+CONFIG_HDMI=y
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+CONFIG_FB_DDC=m
+CONFIG_FB_BOOT_VESA_SUPPORT=y
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
+# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
+CONFIG_FB_SYS_FILLRECT=m
+CONFIG_FB_SYS_COPYAREA=m
+CONFIG_FB_SYS_IMAGEBLIT=m
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYS_FOPS=m
+CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_SVGALIB=m
+# CONFIG_FB_MACMODES is not set
+CONFIG_FB_BACKLIGHT=y
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+
+#
+# Frame buffer hardware drivers
+#
+# CONFIG_FB_CIRRUS is not set
+CONFIG_FB_PM2=m
+# CONFIG_FB_PM2_FIFO_DISCONNECT is not set
+CONFIG_FB_CYBER2000=m
+CONFIG_FB_CYBER2000_DDC=y
+CONFIG_FB_ARC=m
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_VGA16=m
+# CONFIG_FB_UVESA is not set
+CONFIG_FB_VESA=y
+CONFIG_FB_EFI=y
+# CONFIG_FB_N411 is not set
+CONFIG_FB_HGA=m
+CONFIG_FB_OPENCORES=m
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+CONFIG_FB_RIVA=m
+CONFIG_FB_RIVA_I2C=y
+# CONFIG_FB_RIVA_DEBUG is not set
+CONFIG_FB_RIVA_BACKLIGHT=y
+CONFIG_FB_I740=m
+CONFIG_FB_LE80578=m
+CONFIG_FB_CARILLO_RANCH=m
+# CONFIG_FB_INTEL is not set
+CONFIG_FB_MATROX=m
+CONFIG_FB_MATROX_MILLENIUM=y
+CONFIG_FB_MATROX_MYSTIQUE=y
+# CONFIG_FB_MATROX_G is not set
+# CONFIG_FB_MATROX_I2C is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+CONFIG_FB_ATY=m
+CONFIG_FB_ATY_CT=y
+# CONFIG_FB_ATY_GENERIC_LCD is not set
+CONFIG_FB_ATY_GX=y
+CONFIG_FB_ATY_BACKLIGHT=y
+CONFIG_FB_S3=m
+CONFIG_FB_S3_DDC=y
+CONFIG_FB_SAVAGE=m
+CONFIG_FB_SAVAGE_I2C=y
+CONFIG_FB_SAVAGE_ACCEL=y
+# CONFIG_FB_SIS is not set
+CONFIG_FB_VIA=m
+# CONFIG_FB_VIA_DIRECT_PROCFS is not set
+# CONFIG_FB_VIA_X_COMPATIBILITY is not set
+CONFIG_FB_NEOMAGIC=m
+CONFIG_FB_KYRO=m
+# CONFIG_FB_3DFX is not set
+CONFIG_FB_VOODOO1=m
+CONFIG_FB_VT8623=m
+CONFIG_FB_TRIDENT=m
+CONFIG_FB_ARK=m
+CONFIG_FB_PM3=m
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_TMIO is not set
+# CONFIG_FB_SM501 is not set
+CONFIG_FB_SMSCUFX=m
+CONFIG_FB_UDL=m
+# CONFIG_FB_GOLDFISH is not set
+# CONFIG_FB_VIRTUAL is not set
+CONFIG_XEN_FBDEV_FRONTEND=m
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_BROADSHEET is not set
+# CONFIG_FB_AUO_K190X is not set
+CONFIG_FB_HYPERV=m
+CONFIG_FB_SIMPLE=y
+# CONFIG_EXYNOS_VIDEO is not set
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_LCD_PLATFORM=m
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+# CONFIG_BACKLIGHT_GENERIC is not set
+# CONFIG_BACKLIGHT_LM3533 is not set
+# CONFIG_BACKLIGHT_CARILLO_RANCH is not set
+CONFIG_BACKLIGHT_APPLE=m
+# CONFIG_BACKLIGHT_SAHARA is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+# CONFIG_BACKLIGHT_LM3630A is not set
+# CONFIG_BACKLIGHT_LM3639 is not set
+# CONFIG_BACKLIGHT_LP855X is not set
+# CONFIG_BACKLIGHT_GPIO is not set
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+
+#
+# Console display driver support
+#
+CONFIG_VGA_CONSOLE=y
+# CONFIG_VGACON_SOFT_SCROLLBACK is not set
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+CONFIG_LOGO=y
+# CONFIG_LOGO_LINUX_MONO is not set
+# CONFIG_LOGO_LINUX_VGA16 is not set
+CONFIG_LOGO_LINUX_CLUT224=y
+CONFIG_SOUND=m
+CONFIG_SOUND_OSS_CORE=y
+CONFIG_SOUND_OSS_CORE_PRECLAIM=y
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_HWDEP=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_JACK=y
+CONFIG_SND_SEQUENCER=m
+CONFIG_SND_SEQ_DUMMY=m
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
+CONFIG_SND_PCM_OSS_PLUGINS=y
+CONFIG_SND_SEQUENCER_OSS=y
+CONFIG_SND_HRTIMER=m
+CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_MAX_CARDS=32
+# CONFIG_SND_SUPPORT_OLD_API is not set
+CONFIG_SND_VERBOSE_PROCFS=y
+CONFIG_SND_VERBOSE_PRINTK=y
+CONFIG_SND_DEBUG=y
+# CONFIG_SND_DEBUG_VERBOSE is not set
+CONFIG_SND_PCM_XRUN_DEBUG=y
+CONFIG_SND_VMASTER=y
+CONFIG_SND_KCTL_JACK=y
+CONFIG_SND_DMA_SGBUF=y
+CONFIG_SND_RAWMIDI_SEQ=m
+CONFIG_SND_OPL3_LIB_SEQ=m
+# CONFIG_SND_OPL4_LIB_SEQ is not set
+# CONFIG_SND_SBAWE_SEQ is not set
+CONFIG_SND_EMU10K1_SEQ=m
+CONFIG_SND_MPU401_UART=m
+CONFIG_SND_OPL3_LIB=m
+CONFIG_SND_VX_LIB=m
+CONFIG_SND_AC97_CODEC=m
+CONFIG_SND_DRIVERS=y
+CONFIG_SND_PCSP=m
+CONFIG_SND_DUMMY=m
+CONFIG_SND_ALOOP=m
+CONFIG_SND_VIRMIDI=m
+CONFIG_SND_MTPAV=m
+CONFIG_SND_MTS64=m
+CONFIG_SND_SERIAL_U16550=m
+CONFIG_SND_MPU401=m
+CONFIG_SND_PORTMAN2X4=m
+CONFIG_SND_AC97_POWER_SAVE=y
+CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
+CONFIG_SND_SB_COMMON=m
+CONFIG_SND_SB16_DSP=m
+CONFIG_SND_PCI=y
+CONFIG_SND_AD1889=m
+CONFIG_SND_ALS300=m
+CONFIG_SND_ALS4000=m
+CONFIG_SND_ALI5451=m
+CONFIG_SND_ASIHPI=m
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+# CONFIG_SND_AW2 is not set
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+# CONFIG_SND_BT87X_OVERCLOCK is not set
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_CS5530=m
+CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTXFI=m
+CONFIG_SND_DARLA20=m
+CONFIG_SND_GINA20=m
+CONFIG_SND_LAYLA20=m
+CONFIG_SND_DARLA24=m
+CONFIG_SND_GINA24=m
+CONFIG_SND_LAYLA24=m
+CONFIG_SND_MONA=m
+CONFIG_SND_MIA=m
+CONFIG_SND_ECHO3G=m
+CONFIG_SND_INDIGO=m
+CONFIG_SND_INDIGOIO=m
+CONFIG_SND_INDIGODJ=m
+CONFIG_SND_INDIGOIOX=m
+CONFIG_SND_INDIGODJX=m
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_ES1968_INPUT=y
+CONFIG_SND_FM801=m
+CONFIG_SND_HDA_INTEL=m
+CONFIG_SND_HDA_PREALLOC_SIZE=64
+CONFIG_SND_HDA_HWDEP=y
+CONFIG_SND_HDA_RECONFIG=y
+CONFIG_SND_HDA_INPUT_BEEP=y
+CONFIG_SND_HDA_INPUT_BEEP_MODE=1
+CONFIG_SND_HDA_INPUT_JACK=y
+# CONFIG_SND_HDA_PATCH_LOADER is not set
+CONFIG_SND_HDA_CODEC_REALTEK=m
+CONFIG_SND_HDA_CODEC_ANALOG=m
+CONFIG_SND_HDA_CODEC_SIGMATEL=m
+CONFIG_SND_HDA_CODEC_VIA=m
+CONFIG_SND_HDA_CODEC_HDMI=m
+CONFIG_SND_HDA_I915=y
+CONFIG_SND_HDA_CODEC_CIRRUS=m
+CONFIG_SND_HDA_CODEC_CONEXANT=m
+CONFIG_SND_HDA_CODEC_CA0110=m
+CONFIG_SND_HDA_CODEC_CA0132=m
+# CONFIG_SND_HDA_CODEC_CA0132_DSP is not set
+CONFIG_SND_HDA_CODEC_CMEDIA=m
+CONFIG_SND_HDA_CODEC_SI3054=m
+CONFIG_SND_HDA_GENERIC=m
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
+CONFIG_SND_HDSP=m
+CONFIG_SND_HDSPM=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+CONFIG_SND_INTEL8X0=m
+CONFIG_SND_INTEL8X0M=m
+CONFIG_SND_KORG1212=m
+CONFIG_SND_LOLA=m
+CONFIG_SND_LX6464ES=m
+CONFIG_SND_MAESTRO3=m
+CONFIG_SND_MAESTRO3_INPUT=y
+CONFIG_SND_MIXART=m
+CONFIG_SND_NM256=m
+CONFIG_SND_PCXHR=m
+CONFIG_SND_RIPTIDE=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VIRTUOSO=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_USX2Y=m
+CONFIG_SND_USB_CAIAQ=m
+CONFIG_SND_USB_CAIAQ_INPUT=y
+CONFIG_SND_USB_US122L=m
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_FIREWIRE=y
+CONFIG_SND_FIREWIRE_LIB=m
+# CONFIG_SND_DICE is not set
+CONFIG_SND_FIREWIRE_SPEAKERS=m
+# CONFIG_SND_ISIGHT is not set
+# CONFIG_SND_SCS1X is not set
+CONFIG_SND_PCMCIA=y
+# CONFIG_SND_VXPOCKET is not set
+# CONFIG_SND_PDAUDIOCF is not set
+# CONFIG_SND_SOC is not set
+# CONFIG_SOUND_PRIME is not set
+CONFIG_AC97_BUS=m
+
+#
+# HID support
+#
+CONFIG_HID=y
+# CONFIG_HID_BATTERY_STRENGTH is not set
+CONFIG_HIDRAW=y
+# CONFIG_UHID is not set
+CONFIG_HID_GENERIC=y
+
+#
+# Special HID drivers
+#
+CONFIG_HID_A4TECH=y
+# CONFIG_HID_ACRUX is not set
+CONFIG_HID_APPLE=y
+# CONFIG_HID_APPLEIR is not set
+CONFIG_HID_AUREAL=m
+CONFIG_HID_BELKIN=y
+CONFIG_HID_CHERRY=y
+CONFIG_HID_CHICONY=y
+# CONFIG_HID_PRODIKEYS is not set
+CONFIG_HID_CYPRESS=y
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+CONFIG_HID_EZKEY=y
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_HUION is not set
+CONFIG_HID_KEYTOUCH=m
+CONFIG_HID_KYE=y
+# CONFIG_HID_UCLOGIC is not set
+# CONFIG_HID_WALTOP is not set
+CONFIG_HID_GYRATION=m
+# CONFIG_HID_ICADE is not set
+CONFIG_HID_TWINHAN=m
+CONFIG_HID_KENSINGTON=y
+CONFIG_HID_LCPOWER=m
+CONFIG_HID_LENOVO_TPKBD=m
+CONFIG_HID_LOGITECH=y
+CONFIG_HID_LOGITECH_DJ=m
+# CONFIG_LOGITECH_FF is not set
+# CONFIG_LOGIRUMBLEPAD2_FF is not set
+# CONFIG_LOGIG940_FF is not set
+# CONFIG_LOGIWHEELS_FF is not set
+# CONFIG_HID_MAGICMOUSE is not set
+CONFIG_HID_MICROSOFT=y
+CONFIG_HID_MONTEREY=y
+# CONFIG_HID_MULTITOUCH is not set
+# CONFIG_HID_NTRIG is not set
+CONFIG_HID_ORTEK=m
+# CONFIG_HID_PANTHERLORD is not set
+CONFIG_HID_PETALYNX=m
+CONFIG_HID_PICOLCD=m
+CONFIG_HID_PICOLCD_FB=y
+CONFIG_HID_PICOLCD_BACKLIGHT=y
+CONFIG_HID_PICOLCD_LCD=y
+CONFIG_HID_PICOLCD_LEDS=y
+CONFIG_HID_PICOLCD_CIR=y
+# CONFIG_HID_PRIMAX is not set
+CONFIG_HID_ROCCAT=m
+CONFIG_HID_SAITEK=m
+CONFIG_HID_SAMSUNG=m
+# CONFIG_HID_SONY is not set
+CONFIG_HID_SPEEDLINK=m
+# CONFIG_HID_STEELSERIES is not set
+CONFIG_HID_SUNPLUS=m
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_HYPERV_MOUSE is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+CONFIG_HID_TIVO=m
+CONFIG_HID_TOPSEED=m
+CONFIG_HID_THINGM=m
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_WACOM is not set
+# CONFIG_HID_WIIMOTE is not set
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+CONFIG_HID_ZYDACRON=m
+CONFIG_HID_SENSOR_HUB=m
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=y
+CONFIG_HID_PID=y
+CONFIG_USB_HIDDEV=y
+
+#
+# I2C HID support
+#
+CONFIG_I2C_HID=m
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=y
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=y
+# CONFIG_USB_DEBUG is not set
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEFAULT_PERSIST=y
+# CONFIG_USB_DYNAMIC_MINORS is not set
+CONFIG_USB_OTG=y
+# CONFIG_USB_OTG_WHITELIST is not set
+# CONFIG_USB_OTG_BLACKLIST_HUB is not set
+CONFIG_USB_MON=m
+CONFIG_USB_WUSB=m
+CONFIG_USB_WUSB_CBAF=m
+# CONFIG_USB_WUSB_CBAF_DEBUG is not set
+
+#
+# USB Host Controller Drivers
+#
+# CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_XHCI_PLATFORM=m
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_EHCI_PCI=y
+CONFIG_USB_EHCI_HCD_PLATFORM=y
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_ISP1760_HCD is not set
+CONFIG_USB_ISP1362_HCD=m
+# CONFIG_USB_FUSBH200_HCD is not set
+# CONFIG_USB_FOTG210_HCD is not set
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PCI=m
+CONFIG_USB_OHCI_HCD_PLATFORM=y
+CONFIG_USB_UHCI_HCD=y
+# CONFIG_USB_U132_HCD is not set
+CONFIG_USB_SL811_HCD=m
+CONFIG_USB_SL811_HCD_ISO=y
+# CONFIG_USB_SL811_CS is not set
+# CONFIG_USB_R8A66597_HCD is not set
+CONFIG_USB_WHCI_HCD=m
+CONFIG_USB_HWA_HCD=m
+CONFIG_USB_HCD_BCMA=m
+CONFIG_USB_HCD_SSB=m
+# CONFIG_USB_HCD_TEST_MODE is not set
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=m
+CONFIG_USB_PRINTER=m
+CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=y
+# CONFIG_USB_STORAGE_DEBUG is not set
+CONFIG_USB_STORAGE_REALTEK=m
+CONFIG_REALTEK_AUTOPM=y
+CONFIG_USB_STORAGE_DATAFAB=m
+CONFIG_USB_STORAGE_FREECOM=m
+CONFIG_USB_STORAGE_ISD200=m
+CONFIG_USB_STORAGE_USBAT=m
+CONFIG_USB_STORAGE_SDDR09=m
+CONFIG_USB_STORAGE_SDDR55=m
+CONFIG_USB_STORAGE_JUMPSHOT=m
+CONFIG_USB_STORAGE_ALAUDA=m
+CONFIG_USB_STORAGE_ONETOUCH=m
+CONFIG_USB_STORAGE_KARMA=m
+CONFIG_USB_STORAGE_CYPRESS_ATACB=m
+CONFIG_USB_STORAGE_ENE_UB6250=m
+
+#
+# USB Imaging devices
+#
+CONFIG_USB_MDC800=m
+CONFIG_USB_MICROTEK=m
+# CONFIG_USB_MUSB_HDRC is not set
+CONFIG_USB_DWC3=m
+CONFIG_USB_DWC3_HOST=y
+
+#
+# Platform Glue Driver Support
+#
+# CONFIG_USB_DWC3_EXYNOS is not set
+CONFIG_USB_DWC3_PCI=m
+CONFIG_USB_DWC3_KEYSTONE=m
+
+#
+# Debugging features
+#
+# CONFIG_USB_DWC3_DEBUG is not set
+# CONFIG_USB_DWC2 is not set
+CONFIG_USB_CHIPIDEA=m
+# CONFIG_USB_CHIPIDEA_HOST is not set
+# CONFIG_USB_CHIPIDEA_DEBUG is not set
+
+#
+# USB port drivers
+#
+CONFIG_USB_USS720=m
+CONFIG_USB_SERIAL=m
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_SIMPLE=m
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+# CONFIG_USB_SERIAL_EMPEG is not set
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
+# CONFIG_USB_SERIAL_GARMIN is not set
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+CONFIG_USB_SERIAL_KEYSPAN_PDA=m
+# CONFIG_USB_SERIAL_KEYSPAN is not set
+CONFIG_USB_SERIAL_KLSI=m
+# CONFIG_USB_SERIAL_KOBIL_SCT is not set
+CONFIG_USB_SERIAL_MCT_U232=m
+# CONFIG_USB_SERIAL_METRO is not set
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7715_PARPORT=y
+CONFIG_USB_SERIAL_MOS7840=m
+CONFIG_USB_SERIAL_MXUPORT=m
+# CONFIG_USB_SERIAL_NAVMAN is not set
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QCAUX=m
+CONFIG_USB_SERIAL_QUALCOMM=m
+CONFIG_USB_SERIAL_SPCP8X5=m
+# CONFIG_USB_SERIAL_SAFE is not set
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+# CONFIG_USB_SERIAL_SYMBOL is not set
+# CONFIG_USB_SERIAL_TI is not set
+# CONFIG_USB_SERIAL_CYBERJACK is not set
+CONFIG_USB_SERIAL_XIRCOM=m
+CONFIG_USB_SERIAL_WWAN=m
+CONFIG_USB_SERIAL_OPTION=m
+# CONFIG_USB_SERIAL_OMNINET is not set
+# CONFIG_USB_SERIAL_OPTICON is not set
+# CONFIG_USB_SERIAL_XSENS_MT is not set
+# CONFIG_USB_SERIAL_WISHBONE is not set
+CONFIG_USB_SERIAL_ZTE=m
+CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+CONFIG_USB_EMI62=m
+CONFIG_USB_EMI26=m
+CONFIG_USB_ADUTUX=m
+CONFIG_USB_SEVSEG=m
+# CONFIG_USB_RIO500 is not set
+# CONFIG_USB_LEGOTOWER is not set
+CONFIG_USB_LCD=m
+CONFIG_USB_LED=m
+# CONFIG_USB_CYPRESS_CY7C63 is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_IDMOUSE is not set
+CONFIG_USB_FTDI_ELAN=m
+# CONFIG_USB_APPLEDISPLAY is not set
+CONFIG_USB_SISUSBVGA=m
+CONFIG_USB_SISUSBVGA_CON=y
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+CONFIG_USB_IOWARRIOR=m
+# CONFIG_USB_TEST is not set
+CONFIG_USB_EHSET_TEST_FIXTURE=m
+# CONFIG_USB_ISIGHTFW is not set
+CONFIG_USB_YUREX=m
+CONFIG_USB_EZUSB_FX2=m
+CONFIG_USB_HSIC_USB3503=m
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+CONFIG_USB_CXACRU=m
+CONFIG_USB_UEAGLEATM=m
+CONFIG_USB_XUSBATM=m
+
+#
+# USB Physical Layer drivers
+#
+CONFIG_USB_PHY=y
+CONFIG_USB_OTG_FSM=m
+# CONFIG_NOP_USB_XCEIV is not set
+# CONFIG_SAMSUNG_USB2PHY is not set
+# CONFIG_SAMSUNG_USB3PHY is not set
+# CONFIG_USB_GPIO_VBUS is not set
+# CONFIG_USB_ISP1301 is not set
+# CONFIG_USB_RCAR_PHY is not set
+# CONFIG_USB_GADGET is not set
+CONFIG_UWB=m
+CONFIG_UWB_HWA=m
+CONFIG_UWB_WHCI=m
+CONFIG_UWB_I1480U=m
+CONFIG_MMC=m
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_UNSAFE_RESUME is not set
+# CONFIG_MMC_CLKGATE is not set
+
+#
+# MMC/SD/SDIO Card Drivers
+#
+CONFIG_MMC_BLOCK=m
+CONFIG_MMC_BLOCK_MINORS=8
+CONFIG_MMC_BLOCK_BOUNCE=y
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_PCI=m
+CONFIG_MMC_RICOH_MMC=y
+CONFIG_MMC_SDHCI_ACPI=m
+CONFIG_MMC_SDHCI_PLTFM=m
+CONFIG_MMC_SDHCI_PXAV3=m
+CONFIG_MMC_SDHCI_PXAV2=m
+CONFIG_MMC_WBSD=m
+CONFIG_MMC_TIFM_SD=m
+# CONFIG_MMC_SDRICOH_CS is not set
+CONFIG_MMC_CB710=m
+CONFIG_MMC_VIA_SDMMC=m
+CONFIG_MMC_VUB300=m
+CONFIG_MMC_USHC=m
+CONFIG_MMC_REALTEK_PCI=m
+CONFIG_MEMSTICK=m
+# CONFIG_MEMSTICK_DEBUG is not set
+
+#
+# MemoryStick drivers
+#
+# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
+CONFIG_MSPRO_BLOCK=m
+CONFIG_MS_BLOCK=m
+
+#
+# MemoryStick Host Controller Drivers
+#
+CONFIG_MEMSTICK_TIFM_MS=m
+CONFIG_MEMSTICK_JMICRON_38X=m
+CONFIG_MEMSTICK_R592=m
+CONFIG_MEMSTICK_REALTEK_PCI=m
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+
+#
+# LED drivers
+#
+CONFIG_LEDS_LM3530=m
+CONFIG_LEDS_LM3533=m
+CONFIG_LEDS_LM3642=m
+CONFIG_LEDS_PCA9532=m
+CONFIG_LEDS_PCA9532_GPIO=y
+CONFIG_LEDS_GPIO=m
+CONFIG_LEDS_LP3944=m
+CONFIG_LEDS_LP55XX_COMMON=m
+CONFIG_LEDS_LP5521=m
+CONFIG_LEDS_LP5523=m
+CONFIG_LEDS_LP5562=m
+CONFIG_LEDS_LP8501=m
+CONFIG_LEDS_CLEVO_MAIL=m
+CONFIG_LEDS_PCA955X=m
+CONFIG_LEDS_PCA963X=m
+CONFIG_LEDS_PCA9685=m
+CONFIG_LEDS_BD2802=m
+CONFIG_LEDS_INTEL_SS4200=m
+CONFIG_LEDS_LT3593=m
+CONFIG_LEDS_DELL_NETBOOKS=m
+CONFIG_LEDS_TCA6507=m
+CONFIG_LEDS_LM355x=m
+CONFIG_LEDS_OT200=m
+CONFIG_LEDS_BLINKM=m
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=m
+CONFIG_LEDS_TRIGGER_ONESHOT=m
+CONFIG_LEDS_TRIGGER_HEARTBEAT=m
+CONFIG_LEDS_TRIGGER_BACKLIGHT=m
+CONFIG_LEDS_TRIGGER_CPU=y
+CONFIG_LEDS_TRIGGER_GPIO=m
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+CONFIG_LEDS_TRIGGER_TRANSIENT=m
+CONFIG_LEDS_TRIGGER_CAMERA=m
+CONFIG_LEDS_TRIGGER_NETDEV=m
+# CONFIG_ACCESSIBILITY is not set
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC=y
+# CONFIG_EDAC_LEGACY_SYSFS is not set
+# CONFIG_EDAC_DEBUG is not set
+CONFIG_EDAC_DECODE_MCE=m
+CONFIG_EDAC_MCE_INJ=m
+CONFIG_EDAC_MM_EDAC=m
+CONFIG_EDAC_AMD64=m
+# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set
+CONFIG_EDAC_E752X=m
+CONFIG_EDAC_I82975X=m
+CONFIG_EDAC_I3000=m
+CONFIG_EDAC_I3200=m
+CONFIG_EDAC_X38=m
+CONFIG_EDAC_I5400=m
+CONFIG_EDAC_I7CORE=m
+CONFIG_EDAC_I5000=m
+CONFIG_EDAC_I5100=m
+CONFIG_EDAC_I7300=m
+CONFIG_EDAC_SBRIDGE=m
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+
+#
+# I2C RTC drivers
+#
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_DS1374=m
+CONFIG_RTC_DRV_DS1672=m
+CONFIG_RTC_DRV_DS3232=m
+CONFIG_RTC_DRV_MAX6900=m
+CONFIG_RTC_DRV_RS5C372=m
+CONFIG_RTC_DRV_ISL1208=m
+CONFIG_RTC_DRV_ISL12022=m
+CONFIG_RTC_DRV_ISL12057=m
+CONFIG_RTC_DRV_X1205=m
+CONFIG_RTC_DRV_PCF2127=m
+CONFIG_RTC_DRV_PCF8523=m
+CONFIG_RTC_DRV_PCF8563=m
+CONFIG_RTC_DRV_PCF8583=m
+CONFIG_RTC_DRV_M41T80=m
+CONFIG_RTC_DRV_M41T80_WDT=y
+CONFIG_RTC_DRV_BQ32K=m
+# CONFIG_RTC_DRV_S35390A is not set
+CONFIG_RTC_DRV_FM3130=m
+CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RX8025=m
+CONFIG_RTC_DRV_EM3027=m
+CONFIG_RTC_DRV_RV3029C2=m
+
+#
+# SPI RTC drivers
+#
+
+#
+# Platform RTC drivers
+#
+CONFIG_RTC_DRV_CMOS=y
+CONFIG_RTC_DRV_DS1286=m
+CONFIG_RTC_DRV_DS1511=m
+CONFIG_RTC_DRV_DS1553=m
+CONFIG_RTC_DRV_DS1742=m
+CONFIG_RTC_DRV_STK17TA8=m
+# CONFIG_RTC_DRV_M48T86 is not set
+CONFIG_RTC_DRV_M48T35=m
+CONFIG_RTC_DRV_M48T59=m
+CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_BQ4802=m
+CONFIG_RTC_DRV_RP5C01=m
+CONFIG_RTC_DRV_V3020=m
+CONFIG_RTC_DRV_DS2404=m
+
+#
+# on-CPU RTC drivers
+#
+CONFIG_RTC_DRV_MOXART=m
+
+#
+# HID Sensor RTC drivers
+#
+CONFIG_RTC_DRV_HID_SENSOR_TIME=m
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+# CONFIG_INTEL_MID_DMAC is not set
+CONFIG_INTEL_IOATDMA=m
+CONFIG_DW_DMAC_CORE=m
+CONFIG_DW_DMAC=m
+CONFIG_DW_DMAC_PCI=m
+CONFIG_TIMB_DMA=m
+CONFIG_PCH_DMA=m
+CONFIG_DMA_ENGINE=y
+CONFIG_DMA_ACPI=y
+
+#
+# DMA Clients
+#
+CONFIG_ASYNC_TX_DMA=y
+# CONFIG_DMATEST is not set
+CONFIG_DMA_ENGINE_RAID=y
+CONFIG_DCA=m
+# CONFIG_AUXDISPLAY is not set
+CONFIG_UIO=m
+# CONFIG_UIO_CIF is not set
+# CONFIG_UIO_PDRV_GENIRQ is not set
+# CONFIG_UIO_DMEM_GENIRQ is not set
+CONFIG_UIO_AEC=m
+CONFIG_UIO_SERCOS3=m
+CONFIG_UIO_PCI_GENERIC=m
+# CONFIG_UIO_NETX is not set
+# CONFIG_UIO_MF624 is not set
+# CONFIG_VFIO is not set
+CONFIG_VIRT_DRIVERS=y
+CONFIG_VIRTIO=y
+
+#
+# Virtio drivers
+#
+CONFIG_VIRTIO_PCI=y
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_MMIO=m
+# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set
+
+#
+# Microsoft Hyper-V guest support
+#
+CONFIG_HYPERV=m
+CONFIG_HYPERV_UTILS=m
+CONFIG_HYPERV_BALLOON=m
+
+#
+# Xen driver support
+#
+CONFIG_XEN_BALLOON=y
+CONFIG_XEN_SELFBALLOONING=y
+CONFIG_XEN_SCRUB_PAGES=y
+CONFIG_XEN_DEV_EVTCHN=m
+CONFIG_XEN_BACKEND=y
+CONFIG_XENFS=m
+CONFIG_XEN_COMPAT_XENFS=y
+CONFIG_XEN_SYS_HYPERVISOR=y
+CONFIG_XEN_XENBUS_FRONTEND=y
+CONFIG_XEN_GNTDEV=m
+CONFIG_XEN_GRANT_DEV_ALLOC=m
+CONFIG_SWIOTLB_XEN=y
+CONFIG_XEN_TMEM=m
+CONFIG_XEN_PCIDEV_BACKEND=m
+CONFIG_XEN_PRIVCMD=m
+CONFIG_XEN_ACPI_PROCESSOR=m
+# CONFIG_XEN_MCE_LOG is not set
+CONFIG_XEN_HAVE_PVMMU=y
+CONFIG_STAGING=y
+CONFIG_ET131X=m
+CONFIG_SLICOSS=m
+CONFIG_USBIP_CORE=m
+CONFIG_USBIP_VHCI_HCD=m
+CONFIG_USBIP_HOST=m
+# CONFIG_USBIP_DEBUG is not set
+# CONFIG_W35UND is not set
+# CONFIG_PRISM2_USB is not set
+CONFIG_ECHO=m
+# CONFIG_COMEDI is not set
+# CONFIG_PANEL is not set
+# CONFIG_R8187SE is not set
+# CONFIG_RTL8192U is not set
+# CONFIG_RTLLIB is not set
+# CONFIG_R8712U is not set
+# CONFIG_R8188EU is not set
+# CONFIG_R8821AE is not set
+CONFIG_RTS5139=m
+# CONFIG_RTS5139_DEBUG is not set
+# CONFIG_RTS5208 is not set
+# CONFIG_TRANZPORT is not set
+# CONFIG_IDE_PHISON is not set
+# CONFIG_LINE6_USB is not set
+# CONFIG_USB_SERIAL_QUATECH2 is not set
+# CONFIG_VT6655 is not set
+# CONFIG_VT6656 is not set
+# CONFIG_DX_SEP is not set
+
+#
+# IIO staging drivers
+#
+
+#
+# Accelerometers
+#
+
+#
+# Analog to digital converters
+#
+# CONFIG_AD7291 is not set
+# CONFIG_AD7606 is not set
+# CONFIG_AD799X is not set
+
+#
+# Analog digital bi-direction converters
+#
+# CONFIG_ADT7316 is not set
+
+#
+# Capacitance to digital converters
+#
+# CONFIG_AD7150 is not set
+# CONFIG_AD7152 is not set
+# CONFIG_AD7746 is not set
+
+#
+# Direct Digital Synthesis
+#
+
+#
+# Digital gyroscope sensors
+#
+
+#
+# Network Analyzer, Impedance Converters
+#
+# CONFIG_AD5933 is not set
+
+#
+# Light sensors
+#
+# CONFIG_SENSORS_ISL29018 is not set
+# CONFIG_SENSORS_ISL29028 is not set
+# CONFIG_TSL2583 is not set
+# CONFIG_TSL2x7x is not set
+
+#
+# Magnetometer sensors
+#
+# CONFIG_SENSORS_HMC5843 is not set
+
+#
+# Active energy metering IC
+#
+# CONFIG_ADE7854 is not set
+
+#
+# Resolver to digital converters
+#
+
+#
+# Triggers - standalone
+#
+# CONFIG_IIO_PERIODIC_RTC_TRIGGER is not set
+# CONFIG_IIO_SIMPLE_DUMMY is not set
+# CONFIG_WLAGS49_H2 is not set
+# CONFIG_WLAGS49_H25 is not set
+# CONFIG_FB_SM7XX is not set
+# CONFIG_CRYSTALHD is not set
+# CONFIG_FB_XGI is not set
+# CONFIG_ACPI_QUICKSTART is not set
+# CONFIG_USB_ENESTORAGE is not set
+# CONFIG_BCM_WIMAX is not set
+# CONFIG_FT1000 is not set
+
+#
+# Speakup console speech
+#
+# CONFIG_SPEAKUP is not set
+# CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set
+# CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set
+# CONFIG_STAGING_MEDIA is not set
+
+#
+# Android
+#
+# CONFIG_ANDROID is not set
+# CONFIG_USB_WPAN_HCD is not set
+# CONFIG_WIMAX_GDM72XX is not set
+CONFIG_LTE_GDM724X=m
+# CONFIG_NET_VENDOR_SILICOM is not set
+# CONFIG_CED1401 is not set
+# CONFIG_DGRP is not set
+# CONFIG_FIREWIRE_SERIAL is not set
+# CONFIG_LUSTRE_FS is not set
+# CONFIG_XILLYBUS is not set
+# CONFIG_DGNC is not set
+# CONFIG_DGAP is not set
+CONFIG_X86_PLATFORM_DEVICES=y
+CONFIG_ACER_WMI=m
+CONFIG_ACERHDF=m
+CONFIG_ASUS_LAPTOP=m
+CONFIG_DELL_LAPTOP=m
+CONFIG_DELL_WMI=m
+CONFIG_DELL_WMI_AIO=m
+CONFIG_FUJITSU_LAPTOP=m
+# CONFIG_FUJITSU_LAPTOP_DEBUG is not set
+# CONFIG_FUJITSU_TABLET is not set
+CONFIG_AMILO_RFKILL=m
+CONFIG_HP_ACCEL=m
+# CONFIG_HP_WIRELESS is not set
+CONFIG_HP_WMI=m
+CONFIG_MSI_LAPTOP=m
+CONFIG_PANASONIC_LAPTOP=m
+CONFIG_COMPAL_LAPTOP=m
+CONFIG_SONY_LAPTOP=m
+CONFIG_SONYPI_COMPAT=y
+CONFIG_IDEAPAD_LAPTOP=m
+CONFIG_THINKPAD_ACPI=m
+CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
+# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set
+# CONFIG_THINKPAD_ACPI_DEBUG is not set
+# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
+CONFIG_THINKPAD_ACPI_VIDEO=y
+CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
+CONFIG_SENSORS_HDAPS=m
+# CONFIG_INTEL_MENLOW is not set
+CONFIG_EEEPC_LAPTOP=m
+CONFIG_ASUS_WMI=m
+CONFIG_ASUS_NB_WMI=m
+CONFIG_EEEPC_WMI=m
+CONFIG_ACPI_WMI=m
+CONFIG_MSI_WMI=m
+CONFIG_TOPSTAR_LAPTOP=m
+CONFIG_ACPI_TOSHIBA=m
+CONFIG_TOSHIBA_BT_RFKILL=m
+CONFIG_ACPI_CMPC=m
+CONFIG_INTEL_IPS=m
+# CONFIG_IBM_RTL is not set
+# CONFIG_XO15_EBOOK is not set
+CONFIG_SAMSUNG_LAPTOP=m
+CONFIG_MXM_WMI=m
+CONFIG_INTEL_OAKTRAIL=m
+CONFIG_SAMSUNG_Q10=m
+# CONFIG_APPLE_GMUX is not set
+CONFIG_INTEL_RST=m
+# CONFIG_INTEL_SMARTCONNECT is not set
+CONFIG_PVPANIC=m
+# CONFIG_CHROME_PLATFORMS is not set
+CONFIG_CLKDEV_LOOKUP=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+
+#
+# Common Clock Framework
+#
+# CONFIG_COMMON_CLK_SI5351 is not set
+
+#
+# Hardware Spinlock drivers
+#
+CONFIG_CLKEVT_I8253=y
+CONFIG_I8253_LOCK=y
+CONFIG_CLKBLD_I8253=y
+CONFIG_MAILBOX=y
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+CONFIG_AMD_IOMMU=y
+# CONFIG_AMD_IOMMU_STATS is not set
+CONFIG_DMAR_TABLE=y
+CONFIG_INTEL_IOMMU=y
+# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
+CONFIG_INTEL_IOMMU_FLOPPY_WA=y
+CONFIG_IRQ_REMAP=y
+
+#
+# Remoteproc drivers
+#
+# CONFIG_STE_MODEM_RPROC is not set
+
+#
+# Rpmsg drivers
+#
+# CONFIG_PM_DEVFREQ is not set
+# CONFIG_EXTCON is not set
+CONFIG_MEMORY=y
+CONFIG_IIO=m
+CONFIG_IIO_BUFFER=y
+CONFIG_IIO_BUFFER_CB=y
+CONFIG_IIO_KFIFO_BUF=m
+CONFIG_IIO_TRIGGER=y
+CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+
+#
+# Accelerometers
+#
+# CONFIG_BMA180 is not set
+# CONFIG_HID_SENSOR_ACCEL_3D is not set
+# CONFIG_IIO_ST_ACCEL_3AXIS is not set
+
+#
+# Analog to digital converters
+#
+# CONFIG_MAX1363 is not set
+# CONFIG_MCP3422 is not set
+# CONFIG_NAU7802 is not set
+# CONFIG_TI_ADC081C is not set
+# CONFIG_VIPERBOARD_ADC is not set
+
+#
+# Amplifiers
+#
+
+#
+# Hid Sensor IIO Common
+#
+CONFIG_HID_SENSOR_IIO_COMMON=m
+CONFIG_HID_SENSOR_IIO_TRIGGER=m
+
+#
+# Digital to analog converters
+#
+# CONFIG_AD5064 is not set
+# CONFIG_AD5380 is not set
+# CONFIG_AD5446 is not set
+# CONFIG_MAX517 is not set
+# CONFIG_MCP4725 is not set
+
+#
+# Frequency Synthesizers DDS/PLL
+#
+
+#
+# Clock Generator/Distribution
+#
+
+#
+# Phase-Locked Loop (PLL) frequency synthesizers
+#
+
+#
+# Digital gyroscope sensors
+#
+# CONFIG_HID_SENSOR_GYRO_3D is not set
+# CONFIG_IIO_ST_GYRO_3AXIS is not set
+# CONFIG_ITG3200 is not set
+
+#
+# Humidity sensors
+#
+# CONFIG_DHT11 is not set
+
+#
+# Inertial measurement units
+#
+# CONFIG_INV_MPU6050_IIO is not set
+
+#
+# Light sensors
+#
+# CONFIG_ADJD_S311 is not set
+# CONFIG_APDS9300 is not set
+# CONFIG_CM32181 is not set
+# CONFIG_CM36651 is not set
+# CONFIG_GP2AP020A00F is not set
+# CONFIG_HID_SENSOR_ALS is not set
+# CONFIG_SENSORS_LM3533 is not set
+# CONFIG_TCS3472 is not set
+# CONFIG_SENSORS_TSL2563 is not set
+# CONFIG_TSL4531 is not set
+# CONFIG_VCNL4000 is not set
+
+#
+# Magnetometer sensors
+#
+# CONFIG_AK8975 is not set
+# CONFIG_MAG3110 is not set
+# CONFIG_HID_SENSOR_MAGNETOMETER_3D is not set
+# CONFIG_IIO_ST_MAGN_3AXIS is not set
+
+#
+# Inclinometer sensors
+#
+# CONFIG_HID_SENSOR_INCLINOMETER_3D is not set
+
+#
+# Triggers - standalone
+#
+# CONFIG_IIO_INTERRUPT_TRIGGER is not set
+# CONFIG_IIO_SYSFS_TRIGGER is not set
+
+#
+# Pressure sensors
+#
+# CONFIG_MPL3115 is not set
+# CONFIG_IIO_ST_PRESS is not set
+
+#
+# Temperature sensors
+#
+# CONFIG_TMP006 is not set
+# CONFIG_NTB is not set
+# CONFIG_VME_BUS is not set
+# CONFIG_PWM is not set
+# CONFIG_IPACK_BUS is not set
+CONFIG_RESET_CONTROLLER=y
+# CONFIG_FMC is not set
+
+#
+# PHY Subsystem
+#
+CONFIG_GENERIC_PHY=y
+# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set
+# CONFIG_BCM_KONA_USB2_PHY is not set
+# CONFIG_POWERCAP is not set
+
+#
+# Firmware Drivers
+#
+CONFIG_EDD=m
+# CONFIG_EDD_OFF is not set
+CONFIG_FIRMWARE_MEMMAP=y
+CONFIG_DELL_RBU=m
+CONFIG_DCDBAS=m
+CONFIG_DMIID=y
+CONFIG_DMI_SYSFS=y
+CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y
+CONFIG_ISCSI_IBFT_FIND=y
+CONFIG_ISCSI_IBFT=m
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# EFI (Extensible Firmware Interface) Support
+#
+CONFIG_EFI_VARS=y
+CONFIG_EFI_VARS_PSTORE=y
+# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
+CONFIG_UEFI_CPER=y
+
+#
+# File systems
+#
+CONFIG_DCACHE_WORD_ACCESS=y
+# CONFIG_EXT2_FS is not set
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_USE_FOR_EXT23=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+CONFIG_REISERFS_PROC_INFO=y
+CONFIG_REISERFS_FS_XATTR=y
+CONFIG_REISERFS_FS_POSIX_ACL=y
+CONFIG_REISERFS_FS_SECURITY=y
+# CONFIG_JFS_FS is not set
+CONFIG_XFS_FS=m
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+# CONFIG_XFS_WARN is not set
+# CONFIG_XFS_DEBUG is not set
+# CONFIG_GFS2_FS is not set
+# CONFIG_OCFS2_FS is not set
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+CONFIG_BTRFS_ASSERT=y
+# CONFIG_NILFS2_FS is not set
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+CONFIG_FILE_LOCKING=y
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
+CONFIG_QUOTA=y
+CONFIG_QUOTA_NETLINK_INTERFACE=y
+# CONFIG_PRINT_QUOTA_WARNING is not set
+# CONFIG_QUOTA_DEBUG is not set
+CONFIG_QUOTA_TREE=y
+# CONFIG_QFMT_V1 is not set
+CONFIG_QFMT_V2=y
+CONFIG_QUOTACTL=y
+CONFIG_QUOTACTL_COMPAT=y
+CONFIG_AUTOFS4_FS=y
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+
+#
+# Caches
+#
+CONFIG_FSCACHE=m
+CONFIG_FSCACHE_STATS=y
+# CONFIG_FSCACHE_HISTOGRAM is not set
+# CONFIG_FSCACHE_DEBUG is not set
+# CONFIG_FSCACHE_OBJECT_LIST is not set
+CONFIG_CACHEFILES=m
+# CONFIG_CACHEFILES_DEBUG is not set
+# CONFIG_CACHEFILES_HISTOGRAM is not set
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=y
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=m
+CONFIG_UDF_NLS=y
+
+#
+# DOS/FAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
+# CONFIG_NTFS_FS is not set
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_PROC_SYSCTL=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+# CONFIG_HUGETLBFS is not set
+# CONFIG_HUGETLB_PAGE is not set
+CONFIG_CONFIGFS_FS=m
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_ECRYPT_FS is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_LOGFS is not set
+# CONFIG_CRAMFS is not set
+# CONFIG_SQUASHFS is not set
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+CONFIG_PSTORE=y
+# CONFIG_PSTORE_CONSOLE is not set
+# CONFIG_PSTORE_FTRACE is not set
+# CONFIG_PSTORE_RAM is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_EXOFS_FS is not set
+# CONFIG_F2FS_FS is not set
+CONFIG_EFIVAR_FS=m
+CONFIG_ORE=m
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+CONFIG_NFS_V2=m
+CONFIG_NFS_V3=m
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=m
+# CONFIG_NFS_SWAP is not set
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_PNFS_FILE_LAYOUT=m
+CONFIG_PNFS_BLOCK=m
+CONFIG_PNFS_OBJLAYOUT=m
+CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="ipfire.org"
+CONFIG_NFS_V4_1_MIGRATION=y
+CONFIG_NFS_V4_SECURITY_LABEL=y
+CONFIG_NFS_FSCACHE=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFSD=m
+CONFIG_NFSD_V2_ACL=y
+CONFIG_NFSD_V3=y
+CONFIG_NFSD_V3_ACL=y
+CONFIG_NFSD_V4=y
+CONFIG_NFSD_V4_SECURITY_LABEL=y
+# CONFIG_NFSD_FAULT_INJECTION is not set
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_ACL_SUPPORT=m
+CONFIG_NFS_COMMON=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_SUNRPC_BACKCHANNEL=y
+CONFIG_RPCSEC_GSS_KRB5=m
+# CONFIG_SUNRPC_DEBUG is not set
+# CONFIG_CEPH_FS is not set
+CONFIG_CIFS=m
+CONFIG_CIFS_STATS=y
+# CONFIG_CIFS_STATS2 is not set
+# CONFIG_CIFS_WEAK_PW_HASH is not set
+# CONFIG_CIFS_UPCALL is not set
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+CONFIG_CIFS_ACL=y
+# CONFIG_CIFS_DEBUG is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_SMB2=y
+CONFIG_CIFS_FSCACHE=y
+# CONFIG_NCP_FS is not set
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf-8"
+CONFIG_NLS_CODEPAGE_437=y
+CONFIG_NLS_CODEPAGE_737=m
+CONFIG_NLS_CODEPAGE_775=m
+CONFIG_NLS_CODEPAGE_850=m
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+CONFIG_NLS_CODEPAGE_857=m
+CONFIG_NLS_CODEPAGE_860=m
+CONFIG_NLS_CODEPAGE_861=m
+CONFIG_NLS_CODEPAGE_862=m
+CONFIG_NLS_CODEPAGE_863=m
+CONFIG_NLS_CODEPAGE_864=m
+CONFIG_NLS_CODEPAGE_865=m
+CONFIG_NLS_CODEPAGE_866=m
+CONFIG_NLS_CODEPAGE_869=m
+CONFIG_NLS_CODEPAGE_936=m
+CONFIG_NLS_CODEPAGE_950=m
+CONFIG_NLS_CODEPAGE_932=m
+CONFIG_NLS_CODEPAGE_949=m
+CONFIG_NLS_CODEPAGE_874=m
+CONFIG_NLS_ISO8859_8=m
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=y
+CONFIG_NLS_ISO8859_1=m
+CONFIG_NLS_ISO8859_2=m
+CONFIG_NLS_ISO8859_3=m
+CONFIG_NLS_ISO8859_4=m
+CONFIG_NLS_ISO8859_5=m
+CONFIG_NLS_ISO8859_6=m
+CONFIG_NLS_ISO8859_7=m
+CONFIG_NLS_ISO8859_9=m
+CONFIG_NLS_ISO8859_13=m
+CONFIG_NLS_ISO8859_14=m
+CONFIG_NLS_ISO8859_15=m
+CONFIG_NLS_KOI8_R=m
+CONFIG_NLS_KOI8_U=m
+CONFIG_NLS_MAC_ROMAN=m
+CONFIG_NLS_MAC_CELTIC=m
+CONFIG_NLS_MAC_CENTEURO=m
+CONFIG_NLS_MAC_CROATIAN=m
+CONFIG_NLS_MAC_CYRILLIC=m
+CONFIG_NLS_MAC_GAELIC=m
+CONFIG_NLS_MAC_GREEK=m
+CONFIG_NLS_MAC_ICELAND=m
+CONFIG_NLS_MAC_INUIT=m
+CONFIG_NLS_MAC_ROMANIAN=m
+CONFIG_NLS_MAC_TURKISH=m
+CONFIG_NLS_UTF8=m
+CONFIG_DLM=m
+# CONFIG_DLM_DEBUG is not set
+
+#
+# Kernel hacking
+#
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+
+#
+# printk and dmesg options
+#
+# CONFIG_PRINTK_TIME is not set
+CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
+# CONFIG_BOOT_PRINTK_DELAY is not set
+CONFIG_DYNAMIC_DEBUG=y
+
+#
+# Compile-time checks and compiler options
+#
+# CONFIG_DEBUG_INFO is not set
+# CONFIG_ENABLE_WARN_DEPRECATED is not set
+CONFIG_ENABLE_MUST_CHECK=y
+CONFIG_FRAME_WARN=2048
+CONFIG_STRIP_ASM_SYMS=y
+# CONFIG_READABLE_ASM is not set
+# CONFIG_UNUSED_SYMBOLS is not set
+CONFIG_DEBUG_FS=y
+CONFIG_HEADERS_CHECK=y
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
+# CONFIG_MAGIC_SYSRQ is not set
+CONFIG_DEBUG_KERNEL=y
+
+#
+# Memory Debugging
+#
+# CONFIG_DEBUG_OBJECTS is not set
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_SLUB_STATS is not set
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_DEBUG_KMEMLEAK is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_VIRTUAL is not set
+CONFIG_DEBUG_MEMORY_INIT=y
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
+CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
+CONFIG_DEBUG_STACKOVERFLOW=y
+CONFIG_HAVE_ARCH_KMEMCHECK=y
+CONFIG_DEBUG_SHIRQ=y
+
+#
+# Debug Lockups and Hangs
+#
+CONFIG_LOCKUP_DETECTOR=y
+CONFIG_HARDLOCKUP_DETECTOR=y
+# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
+CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0
+# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
+CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
+# CONFIG_DETECT_HUNG_TASK is not set
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_PANIC_TIMEOUT=0
+CONFIG_SCHED_DEBUG=y
+CONFIG_SCHEDSTATS=y
+CONFIG_TIMER_STATS=y
+
+#
+# Lock Debugging (spinlocks, mutexes, etc...)
+#
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_RT_MUTEX_TESTER is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+# CONFIG_DEBUG_MUTEXES is not set
+# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_DEBUG_KOBJECT is not set
+CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_DEBUG_WRITECOUNT is not set
+CONFIG_DEBUG_LIST=y
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_NOTIFIERS is not set
+# CONFIG_DEBUG_CREDENTIALS is not set
+
+#
+# RCU Debugging
+#
+# CONFIG_SPARSE_RCU_POINTER is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+CONFIG_RCU_CPU_STALL_TIMEOUT=60
+# CONFIG_RCU_CPU_STALL_INFO is not set
+# CONFIG_RCU_TRACE is not set
+# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
+# CONFIG_NOTIFIER_ERROR_INJECTION is not set
+# CONFIG_FAULT_INJECTION is not set
+CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y
+# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
+CONFIG_USER_STACKTRACE_SUPPORT=y
+CONFIG_NOP_TRACER=y
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
+CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_HAVE_FENTRY=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACER_MAX_TRACE=y
+CONFIG_TRACE_CLOCK=y
+CONFIG_RING_BUFFER=y
+CONFIG_EVENT_TRACING=y
+CONFIG_CONTEXT_SWITCH_TRACER=y
+CONFIG_TRACING=y
+CONFIG_GENERIC_TRACER=y
+CONFIG_TRACING_SUPPORT=y
+CONFIG_FTRACE=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_FUNCTION_GRAPH_TRACER=y
+# CONFIG_IRQSOFF_TRACER is not set
+CONFIG_SCHED_TRACER=y
+CONFIG_FTRACE_SYSCALLS=y
+CONFIG_TRACER_SNAPSHOT=y
+# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
+CONFIG_BRANCH_PROFILE_NONE=y
+# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
+# CONFIG_PROFILE_ALL_BRANCHES is not set
+CONFIG_STACK_TRACER=y
+CONFIG_BLK_DEV_IO_TRACE=y
+# CONFIG_UPROBE_EVENT is not set
+# CONFIG_PROBE_EVENTS is not set
+CONFIG_DYNAMIC_FTRACE=y
+CONFIG_DYNAMIC_FTRACE_WITH_REGS=y
+CONFIG_FUNCTION_PROFILER=y
+CONFIG_FTRACE_MCOUNT_RECORD=y
+# CONFIG_FTRACE_STARTUP_TEST is not set
+# CONFIG_MMIOTRACE is not set
+CONFIG_RING_BUFFER_BENCHMARK=m
+# CONFIG_RING_BUFFER_STARTUP_TEST is not set
+
+#
+# Runtime Testing
+#
+# CONFIG_LKDTM is not set
+# CONFIG_TEST_LIST_SORT is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
+CONFIG_RBTREE_TEST=m
+# CONFIG_INTERVAL_TREE_TEST is not set
+# CONFIG_PERCPU_TEST is not set
+# CONFIG_ATOMIC64_SELFTEST is not set
+CONFIG_ASYNC_RAID6_TEST=m
+# CONFIG_TEST_STRING_HELPERS is not set
+# CONFIG_TEST_KSTRTOX is not set
+# CONFIG_BUILD_DOCSRC is not set
+# CONFIG_DMA_API_DEBUG is not set
+# CONFIG_TEST_MODULE is not set
+# CONFIG_TEST_USER_COPY is not set
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_ARCH_KGDB=y
+# CONFIG_KGDB is not set
+CONFIG_STRICT_DEVMEM=y
+# CONFIG_X86_VERBOSE_BOOTUP is not set
+CONFIG_EARLY_PRINTK=y
+# CONFIG_EARLY_PRINTK_DBGP is not set
+CONFIG_EARLY_PRINTK_EFI=y
+# CONFIG_X86_PTDUMP is not set
+CONFIG_DEBUG_NX_TEST=m
+CONFIG_DOUBLEFAULT=y
+# CONFIG_DEBUG_TLBFLUSH is not set
+# CONFIG_IOMMU_STRESS is not set
+CONFIG_HAVE_MMIOTRACE_SUPPORT=y
+CONFIG_IO_DELAY_TYPE_0X80=0
+CONFIG_IO_DELAY_TYPE_0XED=1
+CONFIG_IO_DELAY_TYPE_UDELAY=2
+CONFIG_IO_DELAY_TYPE_NONE=3
+CONFIG_IO_DELAY_0X80=y
+# CONFIG_IO_DELAY_0XED is not set
+# CONFIG_IO_DELAY_UDELAY is not set
+# CONFIG_IO_DELAY_NONE is not set
+CONFIG_DEFAULT_IO_DELAY_TYPE=0
+CONFIG_DEBUG_BOOT_PARAMS=y
+# CONFIG_CPA_DEBUG is not set
+CONFIG_OPTIMIZE_INLINING=y
+# CONFIG_DEBUG_NMI_SELFTEST is not set
+# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set
+
+#
+# Security options
+#
+
+#
+# Grsecurity
+#
+CONFIG_TASK_SIZE_MAX_SHIFT=47
+CONFIG_PAX_USERCOPY_SLABS=y
+CONFIG_GRKERNSEC=y
+# CONFIG_GRKERNSEC_CONFIG_AUTO is not set
+CONFIG_GRKERNSEC_CONFIG_CUSTOM=y
+
+#
+# Customize Configuration
+#
+
+#
+# PaX
+#
+CONFIG_PAX=y
+
+#
+# PaX Control
+#
+# CONFIG_PAX_SOFTMODE is not set
+CONFIG_PAX_EI_PAX=y
+CONFIG_PAX_PT_PAX_FLAGS=y
+# CONFIG_PAX_XATTR_PAX_FLAGS is not set
+# CONFIG_PAX_NO_ACL_FLAGS is not set
+CONFIG_PAX_HAVE_ACL_FLAGS=y
+# CONFIG_PAX_HOOK_ACL_FLAGS is not set
+
+#
+# Non-executable pages
+#
+CONFIG_PAX_NOEXEC=y
+CONFIG_PAX_PAGEEXEC=y
+CONFIG_PAX_EMUTRAMP=y
+CONFIG_PAX_MPROTECT=y
+# CONFIG_PAX_MPROTECT_COMPAT is not set
+CONFIG_PAX_ELFRELOCS=y
+CONFIG_PAX_KERNEXEC_PLUGIN_METHOD=""
+
+#
+# Address Space Layout Randomization
+#
+CONFIG_PAX_ASLR=y
+CONFIG_PAX_RANDKSTACK=y
+CONFIG_PAX_RANDUSTACK=y
+CONFIG_PAX_RANDMMAP=y
+
+#
+# Miscellaneous hardening features
+#
+CONFIG_PAX_MEMORY_SANITIZE=y
+CONFIG_PAX_MEMORY_STACKLEAK=y
+CONFIG_PAX_MEMORY_STRUCTLEAK=y
+CONFIG_PAX_REFCOUNT=y
+CONFIG_PAX_USERCOPY=y
+# CONFIG_PAX_USERCOPY_DEBUG is not set
+# CONFIG_PAX_SIZE_OVERFLOW is not set
+# CONFIG_PAX_LATENT_ENTROPY is not set
+
+#
+# Memory Protections
+#
+# CONFIG_GRKERNSEC_KMEM is not set
+# CONFIG_GRKERNSEC_IO is not set
+CONFIG_GRKERNSEC_JIT_HARDEN=y
+# CONFIG_GRKERNSEC_PERF_HARDEN is not set
+CONFIG_GRKERNSEC_RAND_THREADSTACK=y
+CONFIG_GRKERNSEC_PROC_MEMMAP=y
+CONFIG_GRKERNSEC_KSTACKOVERFLOW=y
+CONFIG_GRKERNSEC_BRUTE=y
+CONFIG_GRKERNSEC_MODHARDEN=y
+CONFIG_GRKERNSEC_HIDESYM=y
+# CONFIG_GRKERNSEC_RANDSTRUCT is not set
+CONFIG_GRKERNSEC_KERN_LOCKOUT=y
+
+#
+# Role Based Access Control Options
+#
+CONFIG_GRKERNSEC_NO_RBAC=y
+# CONFIG_GRKERNSEC_ACL_HIDEKERN is not set
+CONFIG_GRKERNSEC_ACL_MAXTRIES=3
+CONFIG_GRKERNSEC_ACL_TIMEOUT=30
+
+#
+# Filesystem Protections
+#
+# CONFIG_GRKERNSEC_PROC is not set
+CONFIG_GRKERNSEC_LINK=y
+# CONFIG_GRKERNSEC_SYMLINKOWN is not set
+CONFIG_GRKERNSEC_FIFO=y
+# CONFIG_GRKERNSEC_SYSFS_RESTRICT is not set
+# CONFIG_GRKERNSEC_ROFS is not set
+CONFIG_GRKERNSEC_DEVICE_SIDECHANNEL=y
+CONFIG_GRKERNSEC_CHROOT=y
+# CONFIG_GRKERNSEC_CHROOT_MOUNT is not set
+CONFIG_GRKERNSEC_CHROOT_DOUBLE=y
+CONFIG_GRKERNSEC_CHROOT_PIVOT=y
+CONFIG_GRKERNSEC_CHROOT_CHDIR=y
+# CONFIG_GRKERNSEC_CHROOT_CHMOD is not set
+CONFIG_GRKERNSEC_CHROOT_FCHDIR=y
+# CONFIG_GRKERNSEC_CHROOT_MKNOD is not set
+CONFIG_GRKERNSEC_CHROOT_SHMAT=y
+CONFIG_GRKERNSEC_CHROOT_UNIX=y
+CONFIG_GRKERNSEC_CHROOT_FINDTASK=y
+CONFIG_GRKERNSEC_CHROOT_NICE=y
+CONFIG_GRKERNSEC_CHROOT_SYSCTL=y
+CONFIG_GRKERNSEC_CHROOT_RENAME=y
+# CONFIG_GRKERNSEC_CHROOT_CAPS is not set
+CONFIG_GRKERNSEC_CHROOT_INITRD=y
+
+#
+# Kernel Auditing
+#
+# CONFIG_GRKERNSEC_AUDIT_GROUP is not set
+# CONFIG_GRKERNSEC_EXECLOG is not set
+CONFIG_GRKERNSEC_RESLOG=y
+# CONFIG_GRKERNSEC_CHROOT_EXECLOG is not set
+# CONFIG_GRKERNSEC_AUDIT_PTRACE is not set
+# CONFIG_GRKERNSEC_AUDIT_CHDIR is not set
+# CONFIG_GRKERNSEC_AUDIT_MOUNT is not set
+CONFIG_GRKERNSEC_SIGNAL=y
+CONFIG_GRKERNSEC_FORKFAIL=y
+# CONFIG_GRKERNSEC_TIME is not set
+CONFIG_GRKERNSEC_PROC_IPADDR=y
+# CONFIG_GRKERNSEC_RWXMAP_LOG is not set
+
+#
+# Executable Protections
+#
+CONFIG_GRKERNSEC_DMESG=y
+CONFIG_GRKERNSEC_HARDEN_PTRACE=y
+CONFIG_GRKERNSEC_PTRACE_READEXEC=y
+CONFIG_GRKERNSEC_SETXID=y
+CONFIG_GRKERNSEC_HARDEN_IPC=y
+# CONFIG_GRKERNSEC_TPE is not set
+
+#
+# Network Protections
+#
+CONFIG_GRKERNSEC_BLACKHOLE=y
+CONFIG_GRKERNSEC_NO_SIMULT_CONNECT=y
+# CONFIG_GRKERNSEC_SOCKET is not set
+
+#
+# Physical Protections
+#
+# CONFIG_GRKERNSEC_DENYUSB is not set
+
+#
+# Sysctl Support
+#
+# CONFIG_GRKERNSEC_SYSCTL is not set
+
+#
+# Logging Options
+#
+CONFIG_GRKERNSEC_FLOODTIME=10
+CONFIG_GRKERNSEC_FLOODBURST=6
+CONFIG_KEYS=y
+# CONFIG_PERSISTENT_KEYRINGS is not set
+# CONFIG_BIG_KEYS is not set
+# CONFIG_ENCRYPTED_KEYS is not set
+CONFIG_KEYS_DEBUG_PROC_KEYS=y
+CONFIG_SECURITY_DMESG_RESTRICT=y
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+CONFIG_SECURITY_NETWORK=y
+CONFIG_SECURITY_NETWORK_XFRM=y
+# CONFIG_SECURITY_PATH is not set
+# CONFIG_INTEL_TXT is not set
+# CONFIG_SECURITY_SELINUX is not set
+# CONFIG_SECURITY_SMACK is not set
+# CONFIG_SECURITY_TOMOYO is not set
+# CONFIG_SECURITY_APPARMOR is not set
+# CONFIG_IMA is not set
+# CONFIG_EVM is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_DEFAULT_SECURITY=""
+CONFIG_XOR_BLOCKS=m
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+CONFIG_CRYPTO_FIPS=y
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=y
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_BLKCIPHER=y
+CONFIG_CRYPTO_BLKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_PCOMP=m
+CONFIG_CRYPTO_PCOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+# CONFIG_CRYPTO_USER is not set
+# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
+CONFIG_CRYPTO_GF128MUL=y
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_WORKQUEUE=y
+CONFIG_CRYPTO_CRYPTD=y
+CONFIG_CRYPTO_AUTHENC=m
+CONFIG_CRYPTO_TEST=m
+CONFIG_CRYPTO_ABLK_HELPER=y
+CONFIG_CRYPTO_GLUE_HELPER_X86=y
+
+#
+# Authenticated Encryption with Associated Data
+#
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_SEQIV=y
+
+#
+# Block modes
+#
+CONFIG_CRYPTO_CBC=y
+CONFIG_CRYPTO_CTR=y
+CONFIG_CRYPTO_CTS=m
+CONFIG_CRYPTO_ECB=y
+CONFIG_CRYPTO_LRW=y
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XTS=y
+
+#
+# Hash modes
+#
+CONFIG_CRYPTO_CMAC=m
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
+
+#
+# Digest
+#
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32C_INTEL=y
+CONFIG_CRYPTO_CRC32=y
+CONFIG_CRYPTO_CRC32_PCLMUL=m
+CONFIG_CRYPTO_CRCT10DIF=y
+CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=y
+CONFIG_CRYPTO_MICHAEL_MIC=m
+CONFIG_CRYPTO_RMD128=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_RMD256=m
+CONFIG_CRYPTO_RMD320=m
+CONFIG_CRYPTO_SHA1=m
+CONFIG_CRYPTO_SHA1_SSSE3=m
+CONFIG_CRYPTO_SHA256_SSSE3=m
+CONFIG_CRYPTO_SHA512_SSSE3=m
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=m
+CONFIG_CRYPTO_TGR192=m
+CONFIG_CRYPTO_WP512=m
+CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
+
+#
+# Ciphers
+#
+CONFIG_CRYPTO_AES=y
+CONFIG_CRYPTO_AES_X86_64=y
+CONFIG_CRYPTO_AES_NI_INTEL=y
+CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_BLOWFISH_COMMON=m
+CONFIG_CRYPTO_BLOWFISH_X86_64=m
+CONFIG_CRYPTO_CAMELLIA=m
+CONFIG_CRYPTO_CAMELLIA_X86_64=m
+CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m
+CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m
+CONFIG_CRYPTO_CAST_COMMON=m
+CONFIG_CRYPTO_CAST5=m
+CONFIG_CRYPTO_CAST5_AVX_X86_64=m
+CONFIG_CRYPTO_CAST6=m
+CONFIG_CRYPTO_CAST6_AVX_X86_64=m
+CONFIG_CRYPTO_DES=m
+CONFIG_CRYPTO_FCRYPT=m
+CONFIG_CRYPTO_KHAZAD=m
+CONFIG_CRYPTO_SALSA20=m
+CONFIG_CRYPTO_SALSA20_X86_64=m
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m
+CONFIG_CRYPTO_SERPENT_AVX_X86_64=m
+CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+CONFIG_CRYPTO_TWOFISH_X86_64=m
+CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m
+CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_ZLIB=m
+CONFIG_CRYPTO_LZO=m
+CONFIG_CRYPTO_LZ4=m
+CONFIG_CRYPTO_LZ4HC=m
+
+#
+# Random Number Generation
+#
+CONFIG_CRYPTO_ANSI_CPRNG=m
+CONFIG_CRYPTO_USER_API=y
+CONFIG_CRYPTO_USER_API_HASH=y
+CONFIG_CRYPTO_USER_API_SKCIPHER=y
+CONFIG_CRYPTO_HASH_INFO=y
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_DEV_PADLOCK=m
+CONFIG_CRYPTO_DEV_PADLOCK_AES=m
+CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
+CONFIG_CRYPTO_DEV_CCP=y
+CONFIG_CRYPTO_DEV_CCP_DD=m
+CONFIG_CRYPTO_DEV_CCP_CRYPTO=m
+CONFIG_ASYMMETRIC_KEY_TYPE=m
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m
+CONFIG_PUBLIC_KEY_ALGO_RSA=m
+CONFIG_X509_CERTIFICATE_PARSER=m
+CONFIG_HAVE_KVM=y
+CONFIG_HAVE_KVM_IRQCHIP=y
+CONFIG_HAVE_KVM_IRQ_ROUTING=y
+CONFIG_HAVE_KVM_EVENTFD=y
+CONFIG_KVM_APIC_ARCHITECTURE=y
+CONFIG_KVM_MMIO=y
+CONFIG_KVM_ASYNC_PF=y
+CONFIG_HAVE_KVM_MSI=y
+CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
+CONFIG_KVM_VFIO=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=m
+CONFIG_KVM_INTEL=m
+CONFIG_KVM_AMD=m
+CONFIG_KVM_MMU_AUDIT=y
+CONFIG_KVM_DEVICE_ASSIGNMENT=y
+CONFIG_BINARY_PRINTF=y
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+CONFIG_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_NET_UTILS=y
+CONFIG_GENERIC_FIND_FIRST_BIT=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_IOMAP=y
+CONFIG_GENERIC_IO=y
+CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
+CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
+CONFIG_CRC_CCITT=y
+CONFIG_CRC16=y
+CONFIG_CRC_T10DIF=y
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+CONFIG_CRC7=m
+CONFIG_LIBCRC32C=m
+CONFIG_CRC8=m
+# CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_LZ4_COMPRESS=m
+CONFIG_LZ4HC_COMPRESS=m
+CONFIG_LZ4_DECOMPRESS=y
+CONFIG_XZ_DEC=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_IA64=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_BZIP2=y
+CONFIG_DECOMPRESS_LZMA=y
+CONFIG_DECOMPRESS_XZ=y
+CONFIG_DECOMPRESS_LZO=y
+CONFIG_DECOMPRESS_LZ4=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
+CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
+CONFIG_CHECK_SIGNATURE=y
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_NLATTR=y
+CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
+CONFIG_AVERAGE=y
+CONFIG_CLZ_TAB=y
+CONFIG_CORDIC=m
+# CONFIG_DDR is not set
+CONFIG_MPILIB=m
+CONFIG_OID_REGISTRY=m
+CONFIG_UCS2_STRING=y
+CONFIG_FONT_SUPPORT=y
+# CONFIG_FONTS is not set
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
index 5755366edcac048a14bae2766eb1b353251871f7..3b84e31c0bb63c44a7af52d030f35c8c629cf9aa 100644 (file)
                                'title' => "$Lang::tr{'wlan client'}",
                                'enabled' => 0,
                                };
+    $subsystem->{'22.dma'} = {'caption' => $Lang::tr{'email settings'},
+                               'uri' => '/cgi-bin/mail.cgi',
+                               'title' => "$Lang::tr{'email settings'}",
+                               'enabled' => 1,
+                               };
     $subsystem->{'30.ssh'} = {
                                'caption' => $Lang::tr{'ssh access'},
                                'uri' => '/cgi-bin/remote.cgi',
diff --git a/config/menu/EX-tripwire.menu b/config/menu/EX-tripwire.menu
deleted file mode 100644 (file)
index 6a23312..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-    $subipfire->{'40.tripwire'} = {'caption' => $Lang::tr{'tripwire'},
-                                 'uri' => '/cgi-bin/tripwire.cgi',
-                                 'title' => $Lang::tr{'tripwire'},
-                                 'enabled' => 1,
-                                 };
diff --git a/config/qemu/qemu b/config/qemu/qemu
new file mode 100644 (file)
index 0000000..834eb9c
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+#
+# QEMU wrapper to enable kvm as default like old qemu-kvm...
+#
+if [ $(uname -m) = "x86_64" ]; then
+QEMU_SYSTEM=qemu-system-x86_64
+else
+QEMU_SYSTEM=qemu-system-i386
+fi
+
+if [[ $* == *" -no-kvm"* ]]; then
+       $QEMU_SYSTEM $*
+else
+       $QEMU_SYSTEM -enable-kvm $*
+fi
+exit ${?}
index bbe51eee774dd6b1eef5e5780da33df301aaafe5..58c240625a0e7388f30699cdc0efea3a125f0532 100644 (file)
@@ -1,13 +1,50 @@
-#usr/lib/perl5/site_perl/5.12.3/Locale
-usr/lib/perl5/site_perl/5.12.3/Locale/Constants.pm
-usr/lib/perl5/site_perl/5.12.3/Locale/Constants.pod
-usr/lib/perl5/site_perl/5.12.3/Locale/Country.pm
-usr/lib/perl5/site_perl/5.12.3/Locale/Country.pod
-usr/lib/perl5/site_perl/5.12.3/Locale/Currency.pm
-usr/lib/perl5/site_perl/5.12.3/Locale/Currency.pod
-usr/lib/perl5/site_perl/5.12.3/Locale/Language.pm
-usr/lib/perl5/site_perl/5.12.3/Locale/Language.pod
-usr/lib/perl5/site_perl/5.12.3/Locale/Script.pm
-usr/lib/perl5/site_perl/5.12.3/Locale/Script.pod
-#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Locale-Codes
-#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Locale-Codes/.packlist
+#usr/lib/perl5/5.12.3/Locale/Codes
+usr/lib/perl5/5.12.3/Locale/Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes.pod
+usr/lib/perl5/5.12.3/Locale/Codes/API.pod
+usr/lib/perl5/5.12.3/Locale/Codes/Changes.pod
+usr/lib/perl5/5.12.3/Locale/Codes/Constants.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Constants.pod
+usr/lib/perl5/5.12.3/Locale/Codes/Country.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Country.pod
+usr/lib/perl5/5.12.3/Locale/Codes/Country_Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Country_Retired.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Currency.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Currency.pod
+usr/lib/perl5/5.12.3/Locale/Codes/Currency_Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Currency_Retired.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangExt.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangExt.pod
+usr/lib/perl5/5.12.3/Locale/Codes/LangExt_Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangExt_Retired.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangFam.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangFam.pod
+usr/lib/perl5/5.12.3/Locale/Codes/LangFam_Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangFam_Retired.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangVar.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangVar.pod
+usr/lib/perl5/5.12.3/Locale/Codes/LangVar_Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes/LangVar_Retired.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Language.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Language.pod
+usr/lib/perl5/5.12.3/Locale/Codes/Language_Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Language_Retired.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Script.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Script.pod
+usr/lib/perl5/5.12.3/Locale/Codes/Script_Codes.pm
+usr/lib/perl5/5.12.3/Locale/Codes/Script_Retired.pm
+#usr/lib/perl5/5.12.3/MACHINE-linux-thread-multi/auto/Locale
+#usr/lib/perl5/5.12.3/MACHINE-linux-thread-multi/auto/Locale/Codes
+#usr/lib/perl5/5.12.3/MACHINE-linux-thread-multi/auto/Locale/Codes/.packlist
+#usr/share/man/man3/Locale::Codes.3
+#usr/share/man/man3/Locale::Codes::API.3
+#usr/share/man/man3/Locale::Codes::Changes.3
+#usr/share/man/man3/Locale::Codes::Constants.3
+#usr/share/man/man3/Locale::Codes::Country.3
+#usr/share/man/man3/Locale::Codes::Currency.3
+#usr/share/man/man3/Locale::Codes::LangExt.3
+#usr/share/man/man3/Locale::Codes::LangFam.3
+#usr/share/man/man3/Locale::Codes::LangFam_Retired.3
+#usr/share/man/man3/Locale::Codes::LangVar.3
+#usr/share/man/man3/Locale::Codes::Language.3
+#usr/share/man/man3/Locale::Codes::Script.3
index 8033a874a5554dc997037607d0c28570e0cad9ab..7e33a155eee1f826334845cdc685ded290335058 100644 (file)
@@ -1,5 +1,8 @@
 #etc/httpd
 #etc/httpd/conf
+#etc/httpd/conf/conf.d
+etc/httpd/conf/conf.d/php5.conf
+etc/httpd/conf/default-server.conf
 #etc/httpd/conf/extra
 #etc/httpd/conf/extra/httpd-autoindex.conf
 #etc/httpd/conf/extra/httpd-dav.conf
 #etc/httpd/conf/extra/httpd-ssl.conf
 #etc/httpd/conf/extra/httpd-userdir.conf
 #etc/httpd/conf/extra/httpd-vhosts.conf
+etc/httpd/conf/global.conf
+etc/httpd/conf/hostname.conf
 etc/httpd/conf/httpd.conf
+etc/httpd/conf/listen.conf
+etc/httpd/conf/loadmodule.conf
 etc/httpd/conf/magic
 etc/httpd/conf/mime.types
+etc/httpd/conf/mod_log_config.conf
 #etc/httpd/conf/original
 #etc/httpd/conf/original/extra
 #etc/httpd/conf/original/extra/httpd-autoindex.conf
@@ -29,6 +37,14 @@ etc/httpd/conf/mime.types
 #etc/httpd/conf/original/extra/httpd-userdir.conf
 #etc/httpd/conf/original/extra/httpd-vhosts.conf
 #etc/httpd/conf/original/httpd.conf
+etc/httpd/conf/server-tuning.conf
+etc/httpd/conf/ssl-global.conf
+etc/httpd/conf/uid.conf
+#etc/httpd/conf/vhosts.d
+etc/httpd/conf/vhosts.d/ipfire-interface-ssl.conf
+etc/httpd/conf/vhosts.d/ipfire-interface.conf
+#etc/httpd/conf/vhosts.d/nagios.conf
+#etc/httpd/conf/vhosts.d/openmailadmin.conf
 #srv/web
 #srv/web/ipfire
 #srv/web/ipfire/cgi-bin
@@ -1373,77 +1389,3 @@ usr/sbin/httpd
 #usr/share/man/man8/rotatelogs.8
 #usr/share/man/man8/suexec.8
 var/log/httpd
-etc/httpd/conf/conf.d
-etc/httpd/conf/default-server.conf
-etc/httpd/conf/global.conf
-etc/httpd/conf/hostname.conf
-etc/httpd/conf/listen.conf
-etc/httpd/conf/loadmodule.conf
-etc/httpd/conf/mod_log_config.conf
-etc/httpd/conf/server-tuning.conf
-etc/httpd/conf/ssl-global.conf
-etc/httpd/conf/uid.conf
-etc/httpd/conf/vhosts.d/ipfire-interface-ssl.conf
-etc/httpd/conf/vhosts.d/ipfire-interface.conf
-srv/web/ipfire/cgi-bin/aliases.cgi
-srv/web/ipfire/cgi-bin/atm-status.cgi
-srv/web/ipfire/cgi-bin/backup.cgi
-srv/web/ipfire/cgi-bin/chpasswd.cgi
-srv/web/ipfire/cgi-bin/connections.cgi
-srv/web/ipfire/cgi-bin/connscheduler.cgi
-srv/web/ipfire/cgi-bin/country.cgi
-srv/web/ipfire/cgi-bin/credits.cgi
-srv/web/ipfire/cgi-bin/dns.cgi
-srv/web/ipfire/cgi-bin/dnsforward.cgi
-srv/web/ipfire/cgi-bin/ddns.cgi
-srv/web/ipfire/cgi-bin/dhcp.cgi
-srv/web/ipfire/cgi-bin/entropy.cgi
-srv/web/ipfire/cgi-bin/extrahd.cgi
-srv/web/ipfire/cgi-bin/fireinfo.cgi
-srv/web/ipfire/cgi-bin/firewall.cgi
-srv/web/ipfire/cgi-bin/fwhosts.cgi
-srv/web/ipfire/cgi-bin/geoip-block.cgi
-srv/web/ipfire/cgi-bin/gpl.cgi
-srv/web/ipfire/cgi-bin/gui.cgi
-srv/web/ipfire/cgi-bin/hardwaregraphs.cgi
-srv/web/ipfire/cgi-bin/hosts.cgi
-srv/web/ipfire/cgi-bin/ids.cgi
-srv/web/ipfire/cgi-bin/index.cgi
-srv/web/ipfire/cgi-bin/ipinfo.cgi
-srv/web/ipfire/cgi-bin/iptables.cgi
-srv/web/ipfire/cgi-bin/logs.cgi
-srv/web/ipfire/cgi-bin/mac.cgi
-srv/web/ipfire/cgi-bin/media.cgi
-srv/web/ipfire/cgi-bin/memory.cgi
-srv/web/ipfire/cgi-bin/modem.cgi
-srv/web/ipfire/cgi-bin/modem-status.cgi
-srv/web/ipfire/cgi-bin/netexternal.cgi
-srv/web/ipfire/cgi-bin/netinternal.cgi
-srv/web/ipfire/cgi-bin/netother.cgi
-srv/web/ipfire/cgi-bin/netovpnrw.cgi
-srv/web/ipfire/cgi-bin/netovpnsrv.cgi
-srv/web/ipfire/cgi-bin/optionsfw.cgi
-srv/web/ipfire/cgi-bin/ovpnmain.cgi
-srv/web/ipfire/cgi-bin/p2p-block.cgi
-srv/web/ipfire/cgi-bin/pakfire.cgi
-srv/web/ipfire/cgi-bin/pppsetup.cgi
-srv/web/ipfire/cgi-bin/proxy.cgi
-srv/web/ipfire/cgi-bin/qos.cgi
-srv/web/ipfire/cgi-bin/remote.cgi
-srv/web/ipfire/cgi-bin/routing.cgi
-srv/web/ipfire/cgi-bin/services.cgi
-srv/web/ipfire/cgi-bin/shutdown.cgi
-srv/web/ipfire/cgi-bin/speed.cgi
-srv/web/ipfire/cgi-bin/system.cgi
-srv/web/ipfire/cgi-bin/time.cgi
-srv/web/ipfire/cgi-bin/traffic.cgi
-srv/web/ipfire/cgi-bin/updatexlrator.cgi
-srv/web/ipfire/cgi-bin/upnp.cgi
-srv/web/ipfire/cgi-bin/urlfilter.cgi
-srv/web/ipfire/cgi-bin/vpnmain.cgi
-srv/web/ipfire/cgi-bin/wakeonlan.cgi
-srv/web/ipfire/cgi-bin/webaccess.cgi
-srv/web/ipfire/cgi-bin/wireless.cgi
-srv/web/ipfire/cgi-bin/wirelessclient.cgi
-srv/web/ipfire/html
-var/updatecache
index b3d281d85d88a428d3abffae35e8d76c7638a61d..ba6423716356c6bea659bc270e11877650c95b52 100644 (file)
 #usr/lib/ldscripts/armelfb_linux_eabi.xsw
 #usr/lib/ldscripts/armelfb_linux_eabi.xu
 #usr/lib/ldscripts/armelfb_linux_eabi.xw
-usr/lib/libbfd-2.22.so
+usr/lib/libbfd-2.24.so
 #usr/lib/libbfd.a
 #usr/lib/libbfd.la
 #usr/lib/libbfd.so
 #usr/lib/libiberty.a
-usr/lib/libopcodes-2.22.so
+usr/lib/libopcodes-2.24.so
 #usr/lib/libopcodes.a
 #usr/lib/libopcodes.la
 #usr/lib/libopcodes.so
index ee9d800353e32efe1f72ba660c5760312dbb632d..121ac1759097158ad26c3d3558d764bd863e1ed7 100644 (file)
 #usr/bin/armv5tel-unknown-linux-gnueabi-c++
 #usr/bin/armv5tel-unknown-linux-gnueabi-g++
 #usr/bin/armv5tel-unknown-linux-gnueabi-gcc
-#usr/bin/armv5tel-unknown-linux-gnueabi-gcc-4.4.7
+#usr/bin/armv5tel-unknown-linux-gnueabi-gcc-4.9.3
+#usr/bin/armv5tel-unknown-linux-gnueabi-gcc-ar
+#usr/bin/armv5tel-unknown-linux-gnueabi-gcc-nm
+#usr/bin/armv5tel-unknown-linux-gnueabi-gcc-ranlib
 #usr/bin/c++
 #usr/bin/cc
 #usr/bin/cpp
 #usr/bin/g++
 #usr/bin/gcc
-#usr/bin/gccbug
+#usr/bin/gcc-ar
+#usr/bin/gcc-nm
+#usr/bin/gcc-ranlib
 #usr/bin/gcov
 #usr/include/c++
-#usr/include/c++/4.4.7
-#usr/include/c++/4.4.7/algorithm
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/atomic_word.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/basic_file.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/c++allocator.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/c++config.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/c++io.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/c++locale.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/cpu_defines.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/ctype_base.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/ctype_inline.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/ctype_noninline.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/cxxabi_tweaks.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/error_constants.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/extc++.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/gthr-default.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/gthr-posix.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/gthr-single.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/gthr-tpf.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/gthr.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/messages_members.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/os_defines.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/stdc++.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/stdtr1c++.h
-#usr/include/c++/4.4.7/armv5tel-unknown-linux-gnueabi/bits/time_members.h
-#usr/include/c++/4.4.7/array
-#usr/include/c++/4.4.7/backward
-#usr/include/c++/4.4.7/backward/auto_ptr.h
-#usr/include/c++/4.4.7/backward/backward_warning.h
-#usr/include/c++/4.4.7/backward/binders.h
-#usr/include/c++/4.4.7/backward/hash_fun.h
-#usr/include/c++/4.4.7/backward/hash_map
-#usr/include/c++/4.4.7/backward/hash_set
-#usr/include/c++/4.4.7/backward/hashtable.h
-#usr/include/c++/4.4.7/backward/strstream
-#usr/include/c++/4.4.7/bits
-#usr/include/c++/4.4.7/bits/algorithmfwd.h
-#usr/include/c++/4.4.7/bits/allocator.h
-#usr/include/c++/4.4.7/bits/atomic_0.h
-#usr/include/c++/4.4.7/bits/atomic_2.h
-#usr/include/c++/4.4.7/bits/atomicfwd_c.h
-#usr/include/c++/4.4.7/bits/atomicfwd_cxx.h
-#usr/include/c++/4.4.7/bits/basic_ios.h
-#usr/include/c++/4.4.7/bits/basic_ios.tcc
-#usr/include/c++/4.4.7/bits/basic_string.h
-#usr/include/c++/4.4.7/bits/basic_string.tcc
-#usr/include/c++/4.4.7/bits/boost_concept_check.h
-#usr/include/c++/4.4.7/bits/char_traits.h
-#usr/include/c++/4.4.7/bits/cmath.tcc
-#usr/include/c++/4.4.7/bits/codecvt.h
-#usr/include/c++/4.4.7/bits/concept_check.h
-#usr/include/c++/4.4.7/bits/cpp_type_traits.h
-#usr/include/c++/4.4.7/bits/deque.tcc
-#usr/include/c++/4.4.7/bits/forward_list.h
-#usr/include/c++/4.4.7/bits/forward_list.tcc
-#usr/include/c++/4.4.7/bits/fstream.tcc
-#usr/include/c++/4.4.7/bits/functexcept.h
-#usr/include/c++/4.4.7/bits/functional_hash.h
-#usr/include/c++/4.4.7/bits/gslice.h
-#usr/include/c++/4.4.7/bits/gslice_array.h
-#usr/include/c++/4.4.7/bits/hashtable.h
-#usr/include/c++/4.4.7/bits/indirect_array.h
-#usr/include/c++/4.4.7/bits/ios_base.h
-#usr/include/c++/4.4.7/bits/istream.tcc
-#usr/include/c++/4.4.7/bits/list.tcc
-#usr/include/c++/4.4.7/bits/locale_classes.h
-#usr/include/c++/4.4.7/bits/locale_classes.tcc
-#usr/include/c++/4.4.7/bits/locale_facets.h
-#usr/include/c++/4.4.7/bits/locale_facets.tcc
-#usr/include/c++/4.4.7/bits/locale_facets_nonio.h
-#usr/include/c++/4.4.7/bits/locale_facets_nonio.tcc
-#usr/include/c++/4.4.7/bits/localefwd.h
-#usr/include/c++/4.4.7/bits/mask_array.h
-#usr/include/c++/4.4.7/bits/move.h
-#usr/include/c++/4.4.7/bits/ostream.tcc
-#usr/include/c++/4.4.7/bits/ostream_insert.h
-#usr/include/c++/4.4.7/bits/postypes.h
-#usr/include/c++/4.4.7/bits/shared_ptr.h
-#usr/include/c++/4.4.7/bits/slice_array.h
-#usr/include/c++/4.4.7/bits/sstream.tcc
-#usr/include/c++/4.4.7/bits/stl_algo.h
-#usr/include/c++/4.4.7/bits/stl_algobase.h
-#usr/include/c++/4.4.7/bits/stl_bvector.h
-#usr/include/c++/4.4.7/bits/stl_construct.h
-#usr/include/c++/4.4.7/bits/stl_deque.h
-#usr/include/c++/4.4.7/bits/stl_function.h
-#usr/include/c++/4.4.7/bits/stl_heap.h
-#usr/include/c++/4.4.7/bits/stl_iterator.h
-#usr/include/c++/4.4.7/bits/stl_iterator_base_funcs.h
-#usr/include/c++/4.4.7/bits/stl_iterator_base_types.h
-#usr/include/c++/4.4.7/bits/stl_list.h
-#usr/include/c++/4.4.7/bits/stl_map.h
-#usr/include/c++/4.4.7/bits/stl_multimap.h
-#usr/include/c++/4.4.7/bits/stl_multiset.h
-#usr/include/c++/4.4.7/bits/stl_numeric.h
-#usr/include/c++/4.4.7/bits/stl_pair.h
-#usr/include/c++/4.4.7/bits/stl_queue.h
-#usr/include/c++/4.4.7/bits/stl_raw_storage_iter.h
-#usr/include/c++/4.4.7/bits/stl_relops.h
-#usr/include/c++/4.4.7/bits/stl_set.h
-#usr/include/c++/4.4.7/bits/stl_stack.h
-#usr/include/c++/4.4.7/bits/stl_tempbuf.h
-#usr/include/c++/4.4.7/bits/stl_tree.h
-#usr/include/c++/4.4.7/bits/stl_uninitialized.h
-#usr/include/c++/4.4.7/bits/stl_vector.h
-#usr/include/c++/4.4.7/bits/stream_iterator.h
-#usr/include/c++/4.4.7/bits/streambuf.tcc
-#usr/include/c++/4.4.7/bits/streambuf_iterator.h
-#usr/include/c++/4.4.7/bits/stringfwd.h
-#usr/include/c++/4.4.7/bits/unique_ptr.h
-#usr/include/c++/4.4.7/bits/valarray_after.h
-#usr/include/c++/4.4.7/bits/valarray_array.h
-#usr/include/c++/4.4.7/bits/valarray_array.tcc
-#usr/include/c++/4.4.7/bits/valarray_before.h
-#usr/include/c++/4.4.7/bits/vector.tcc
-#usr/include/c++/4.4.7/bitset
-#usr/include/c++/4.4.7/c++0x_warning.h
-#usr/include/c++/4.4.7/cassert
-#usr/include/c++/4.4.7/ccomplex
-#usr/include/c++/4.4.7/cctype
-#usr/include/c++/4.4.7/cerrno
-#usr/include/c++/4.4.7/cfenv
-#usr/include/c++/4.4.7/cfloat
-#usr/include/c++/4.4.7/chrono
-#usr/include/c++/4.4.7/cinttypes
-#usr/include/c++/4.4.7/ciso646
-#usr/include/c++/4.4.7/climits
-#usr/include/c++/4.4.7/clocale
-#usr/include/c++/4.4.7/cmath
-#usr/include/c++/4.4.7/complex
-#usr/include/c++/4.4.7/complex.h
-#usr/include/c++/4.4.7/condition_variable
-#usr/include/c++/4.4.7/csetjmp
-#usr/include/c++/4.4.7/csignal
-#usr/include/c++/4.4.7/cstdarg
-#usr/include/c++/4.4.7/cstdatomic
-#usr/include/c++/4.4.7/cstdbool
-#usr/include/c++/4.4.7/cstddef
-#usr/include/c++/4.4.7/cstdint
-#usr/include/c++/4.4.7/cstdio
-#usr/include/c++/4.4.7/cstdlib
-#usr/include/c++/4.4.7/cstring
-#usr/include/c++/4.4.7/ctgmath
-#usr/include/c++/4.4.7/ctime
-#usr/include/c++/4.4.7/cwchar
-#usr/include/c++/4.4.7/cwctype
-#usr/include/c++/4.4.7/cxxabi-forced.h
-#usr/include/c++/4.4.7/cxxabi.h
-#usr/include/c++/4.4.7/debug
-#usr/include/c++/4.4.7/debug/bitset
-#usr/include/c++/4.4.7/debug/debug.h
-#usr/include/c++/4.4.7/debug/deque
-#usr/include/c++/4.4.7/debug/formatter.h
-#usr/include/c++/4.4.7/debug/functions.h
-#usr/include/c++/4.4.7/debug/list
-#usr/include/c++/4.4.7/debug/macros.h
-#usr/include/c++/4.4.7/debug/map
-#usr/include/c++/4.4.7/debug/map.h
-#usr/include/c++/4.4.7/debug/multimap.h
-#usr/include/c++/4.4.7/debug/multiset.h
-#usr/include/c++/4.4.7/debug/safe_base.h
-#usr/include/c++/4.4.7/debug/safe_iterator.h
-#usr/include/c++/4.4.7/debug/safe_iterator.tcc
-#usr/include/c++/4.4.7/debug/safe_sequence.h
-#usr/include/c++/4.4.7/debug/set
-#usr/include/c++/4.4.7/debug/set.h
-#usr/include/c++/4.4.7/debug/string
-#usr/include/c++/4.4.7/debug/unordered_map
-#usr/include/c++/4.4.7/debug/unordered_set
-#usr/include/c++/4.4.7/debug/vector
-#usr/include/c++/4.4.7/deque
-#usr/include/c++/4.4.7/exception
-#usr/include/c++/4.4.7/exception_defines.h
-#usr/include/c++/4.4.7/exception_ptr.h
-#usr/include/c++/4.4.7/ext
-#usr/include/c++/4.4.7/ext/algorithm
-#usr/include/c++/4.4.7/ext/array_allocator.h
-#usr/include/c++/4.4.7/ext/atomicity.h
-#usr/include/c++/4.4.7/ext/bitmap_allocator.h
-#usr/include/c++/4.4.7/ext/cast.h
-#usr/include/c++/4.4.7/ext/codecvt_specializations.h
-#usr/include/c++/4.4.7/ext/concurrence.h
-#usr/include/c++/4.4.7/ext/debug_allocator.h
-#usr/include/c++/4.4.7/ext/enc_filebuf.h
-#usr/include/c++/4.4.7/ext/extptr_allocator.h
-#usr/include/c++/4.4.7/ext/functional
-#usr/include/c++/4.4.7/ext/hash_map
-#usr/include/c++/4.4.7/ext/hash_set
-#usr/include/c++/4.4.7/ext/iterator
-#usr/include/c++/4.4.7/ext/malloc_allocator.h
-#usr/include/c++/4.4.7/ext/memory
-#usr/include/c++/4.4.7/ext/mt_allocator.h
-#usr/include/c++/4.4.7/ext/new_allocator.h
-#usr/include/c++/4.4.7/ext/numeric
-#usr/include/c++/4.4.7/ext/numeric_traits.h
-#usr/include/c++/4.4.7/ext/pb_ds
-#usr/include/c++/4.4.7/ext/pb_ds/assoc_container.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy/basic_tree_policy_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy/null_node_metadata.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_types.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/cond_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/cond_key_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/const_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/entry_pred.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/resize_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/standard_policies.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cond_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/container_base_dispatch.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/debug_map_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/eq_fn
-#usr/include/c++/4.4.7/ext/pb_ds/detail/eq_fn/eq_by_less.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/standard_policies.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/const_point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/null_metadata.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/lu_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/counter_lu_metadata.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/counter_lu_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/mtf_lu_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/child_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/cond_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/head.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/internal_node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/leaf.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/node_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/node_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/point_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/priority_queue_base_dispatch.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/standard_policies.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_trace_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/sample_trie_e_access_traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/string_trie_e_access_traits_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/type_utils.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/types_traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/const_point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/exception.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/hash_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/list_update_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/priority_queue.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/tag_and_trait.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/tree_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/trie_policy.hpp
-#usr/include/c++/4.4.7/ext/pod_char_traits.h
-#usr/include/c++/4.4.7/ext/pointer.h
-#usr/include/c++/4.4.7/ext/pool_allocator.h
-#usr/include/c++/4.4.7/ext/rb_tree
-#usr/include/c++/4.4.7/ext/rc_string_base.h
-#usr/include/c++/4.4.7/ext/rope
-#usr/include/c++/4.4.7/ext/ropeimpl.h
-#usr/include/c++/4.4.7/ext/slist
-#usr/include/c++/4.4.7/ext/sso_string_base.h
-#usr/include/c++/4.4.7/ext/stdio_filebuf.h
-#usr/include/c++/4.4.7/ext/stdio_sync_filebuf.h
-#usr/include/c++/4.4.7/ext/string_conversions.h
-#usr/include/c++/4.4.7/ext/throw_allocator.h
-#usr/include/c++/4.4.7/ext/type_traits.h
-#usr/include/c++/4.4.7/ext/typelist.h
-#usr/include/c++/4.4.7/ext/vstring.h
-#usr/include/c++/4.4.7/ext/vstring.tcc
-#usr/include/c++/4.4.7/ext/vstring_fwd.h
-#usr/include/c++/4.4.7/ext/vstring_util.h
-#usr/include/c++/4.4.7/fenv.h
-#usr/include/c++/4.4.7/forward_list
-#usr/include/c++/4.4.7/fstream
-#usr/include/c++/4.4.7/functional
-#usr/include/c++/4.4.7/initializer_list
-#usr/include/c++/4.4.7/iomanip
-#usr/include/c++/4.4.7/ios
-#usr/include/c++/4.4.7/iosfwd
-#usr/include/c++/4.4.7/iostream
-#usr/include/c++/4.4.7/istream
-#usr/include/c++/4.4.7/iterator
-#usr/include/c++/4.4.7/limits
-#usr/include/c++/4.4.7/list
-#usr/include/c++/4.4.7/locale
-#usr/include/c++/4.4.7/map
-#usr/include/c++/4.4.7/memory
-#usr/include/c++/4.4.7/mutex
-#usr/include/c++/4.4.7/new
-#usr/include/c++/4.4.7/numeric
-#usr/include/c++/4.4.7/ostream
-#usr/include/c++/4.4.7/parallel
-#usr/include/c++/4.4.7/parallel/algo.h
-#usr/include/c++/4.4.7/parallel/algobase.h
-#usr/include/c++/4.4.7/parallel/algorithm
-#usr/include/c++/4.4.7/parallel/algorithmfwd.h
-#usr/include/c++/4.4.7/parallel/balanced_quicksort.h
-#usr/include/c++/4.4.7/parallel/base.h
-#usr/include/c++/4.4.7/parallel/basic_iterator.h
-#usr/include/c++/4.4.7/parallel/checkers.h
-#usr/include/c++/4.4.7/parallel/compatibility.h
-#usr/include/c++/4.4.7/parallel/compiletime_settings.h
-#usr/include/c++/4.4.7/parallel/equally_split.h
-#usr/include/c++/4.4.7/parallel/features.h
-#usr/include/c++/4.4.7/parallel/find.h
-#usr/include/c++/4.4.7/parallel/find_selectors.h
-#usr/include/c++/4.4.7/parallel/for_each.h
-#usr/include/c++/4.4.7/parallel/for_each_selectors.h
-#usr/include/c++/4.4.7/parallel/iterator.h
-#usr/include/c++/4.4.7/parallel/list_partition.h
-#usr/include/c++/4.4.7/parallel/losertree.h
-#usr/include/c++/4.4.7/parallel/merge.h
-#usr/include/c++/4.4.7/parallel/multiseq_selection.h
-#usr/include/c++/4.4.7/parallel/multiway_merge.h
-#usr/include/c++/4.4.7/parallel/multiway_mergesort.h
-#usr/include/c++/4.4.7/parallel/numeric
-#usr/include/c++/4.4.7/parallel/numericfwd.h
-#usr/include/c++/4.4.7/parallel/omp_loop.h
-#usr/include/c++/4.4.7/parallel/omp_loop_static.h
-#usr/include/c++/4.4.7/parallel/par_loop.h
-#usr/include/c++/4.4.7/parallel/parallel.h
-#usr/include/c++/4.4.7/parallel/partial_sum.h
-#usr/include/c++/4.4.7/parallel/partition.h
-#usr/include/c++/4.4.7/parallel/queue.h
-#usr/include/c++/4.4.7/parallel/quicksort.h
-#usr/include/c++/4.4.7/parallel/random_number.h
-#usr/include/c++/4.4.7/parallel/random_shuffle.h
-#usr/include/c++/4.4.7/parallel/search.h
-#usr/include/c++/4.4.7/parallel/set_operations.h
-#usr/include/c++/4.4.7/parallel/settings.h
-#usr/include/c++/4.4.7/parallel/sort.h
-#usr/include/c++/4.4.7/parallel/tags.h
-#usr/include/c++/4.4.7/parallel/types.h
-#usr/include/c++/4.4.7/parallel/unique_copy.h
-#usr/include/c++/4.4.7/parallel/workstealing.h
-#usr/include/c++/4.4.7/queue
-#usr/include/c++/4.4.7/random
-#usr/include/c++/4.4.7/ratio
-#usr/include/c++/4.4.7/regex
-#usr/include/c++/4.4.7/set
-#usr/include/c++/4.4.7/sstream
-#usr/include/c++/4.4.7/stack
-#usr/include/c++/4.4.7/stdatomic.h
-#usr/include/c++/4.4.7/stdexcept
-#usr/include/c++/4.4.7/streambuf
-#usr/include/c++/4.4.7/string
-#usr/include/c++/4.4.7/system_error
-#usr/include/c++/4.4.7/tgmath.h
-#usr/include/c++/4.4.7/thread
-#usr/include/c++/4.4.7/tr1
-#usr/include/c++/4.4.7/tr1/array
-#usr/include/c++/4.4.7/tr1/bessel_function.tcc
-#usr/include/c++/4.4.7/tr1/beta_function.tcc
-#usr/include/c++/4.4.7/tr1/ccomplex
-#usr/include/c++/4.4.7/tr1/cctype
-#usr/include/c++/4.4.7/tr1/cfenv
-#usr/include/c++/4.4.7/tr1/cfloat
-#usr/include/c++/4.4.7/tr1/cinttypes
-#usr/include/c++/4.4.7/tr1/climits
-#usr/include/c++/4.4.7/tr1/cmath
-#usr/include/c++/4.4.7/tr1/complex
-#usr/include/c++/4.4.7/tr1/complex.h
-#usr/include/c++/4.4.7/tr1/cstdarg
-#usr/include/c++/4.4.7/tr1/cstdbool
-#usr/include/c++/4.4.7/tr1/cstdint
-#usr/include/c++/4.4.7/tr1/cstdio
-#usr/include/c++/4.4.7/tr1/cstdlib
-#usr/include/c++/4.4.7/tr1/ctgmath
-#usr/include/c++/4.4.7/tr1/ctime
-#usr/include/c++/4.4.7/tr1/ctype.h
-#usr/include/c++/4.4.7/tr1/cwchar
-#usr/include/c++/4.4.7/tr1/cwctype
-#usr/include/c++/4.4.7/tr1/ell_integral.tcc
-#usr/include/c++/4.4.7/tr1/exp_integral.tcc
-#usr/include/c++/4.4.7/tr1/fenv.h
-#usr/include/c++/4.4.7/tr1/float.h
-#usr/include/c++/4.4.7/tr1/functional
-#usr/include/c++/4.4.7/tr1/functional_hash.h
-#usr/include/c++/4.4.7/tr1/gamma.tcc
-#usr/include/c++/4.4.7/tr1/hashtable.h
-#usr/include/c++/4.4.7/tr1/hypergeometric.tcc
-#usr/include/c++/4.4.7/tr1/inttypes.h
-#usr/include/c++/4.4.7/tr1/legendre_function.tcc
-#usr/include/c++/4.4.7/tr1/limits.h
-#usr/include/c++/4.4.7/tr1/math.h
-#usr/include/c++/4.4.7/tr1/memory
-#usr/include/c++/4.4.7/tr1/modified_bessel_func.tcc
-#usr/include/c++/4.4.7/tr1/poly_hermite.tcc
-#usr/include/c++/4.4.7/tr1/poly_laguerre.tcc
-#usr/include/c++/4.4.7/tr1/random
-#usr/include/c++/4.4.7/tr1/regex
-#usr/include/c++/4.4.7/tr1/riemann_zeta.tcc
-#usr/include/c++/4.4.7/tr1/shared_ptr.h
-#usr/include/c++/4.4.7/tr1/special_function_util.h
-#usr/include/c++/4.4.7/tr1/stdarg.h
-#usr/include/c++/4.4.7/tr1/stdbool.h
-#usr/include/c++/4.4.7/tr1/stdint.h
-#usr/include/c++/4.4.7/tr1/stdio.h
-#usr/include/c++/4.4.7/tr1/stdlib.h
-#usr/include/c++/4.4.7/tr1/tgmath.h
-#usr/include/c++/4.4.7/tr1/tuple
-#usr/include/c++/4.4.7/tr1/type_traits
-#usr/include/c++/4.4.7/tr1/unordered_map
-#usr/include/c++/4.4.7/tr1/unordered_set
-#usr/include/c++/4.4.7/tr1/utility
-#usr/include/c++/4.4.7/tr1/wchar.h
-#usr/include/c++/4.4.7/tr1/wctype.h
-#usr/include/c++/4.4.7/tr1_impl
-#usr/include/c++/4.4.7/tr1_impl/array
-#usr/include/c++/4.4.7/tr1_impl/boost_sp_counted_base.h
-#usr/include/c++/4.4.7/tr1_impl/cctype
-#usr/include/c++/4.4.7/tr1_impl/cfenv
-#usr/include/c++/4.4.7/tr1_impl/cinttypes
-#usr/include/c++/4.4.7/tr1_impl/cmath
-#usr/include/c++/4.4.7/tr1_impl/complex
-#usr/include/c++/4.4.7/tr1_impl/cstdint
-#usr/include/c++/4.4.7/tr1_impl/cstdio
-#usr/include/c++/4.4.7/tr1_impl/cstdlib
-#usr/include/c++/4.4.7/tr1_impl/cwchar
-#usr/include/c++/4.4.7/tr1_impl/cwctype
-#usr/include/c++/4.4.7/tr1_impl/functional
-#usr/include/c++/4.4.7/tr1_impl/functional_hash.h
-#usr/include/c++/4.4.7/tr1_impl/hashtable
-#usr/include/c++/4.4.7/tr1_impl/hashtable_policy.h
-#usr/include/c++/4.4.7/tr1_impl/random
-#usr/include/c++/4.4.7/tr1_impl/random.tcc
-#usr/include/c++/4.4.7/tr1_impl/regex
-#usr/include/c++/4.4.7/tr1_impl/type_traits
-#usr/include/c++/4.4.7/tr1_impl/unordered_map
-#usr/include/c++/4.4.7/tr1_impl/unordered_set
-#usr/include/c++/4.4.7/tr1_impl/utility
-#usr/include/c++/4.4.7/tuple
-#usr/include/c++/4.4.7/type_traits
-#usr/include/c++/4.4.7/typeinfo
-#usr/include/c++/4.4.7/unordered_map
-#usr/include/c++/4.4.7/unordered_set
-#usr/include/c++/4.4.7/utility
-#usr/include/c++/4.4.7/valarray
-#usr/include/c++/4.4.7/vector
-#usr/info
-#usr/info/cpp.info
-#usr/info/cppinternals.info
-#usr/info/dir
-#usr/info/gcc.info
-#usr/info/gccinstall.info
-#usr/info/gccint.info
-#usr/info/libgomp.info
+#usr/include/c++/4.9.3
+#usr/include/c++/4.9.3/algorithm
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/atomic_word.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/basic_file.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/c++allocator.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/c++config.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/c++io.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/c++locale.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/cpu_defines.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/ctype_base.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/ctype_inline.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/cxxabi_tweaks.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/error_constants.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/extc++.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/gthr-default.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/gthr-posix.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/gthr-single.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/gthr.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/messages_members.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/opt_random.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/os_defines.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/stdc++.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/stdtr1c++.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/bits/time_members.h
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/ext
+#usr/include/c++/4.9.3/armv5tel-unknown-linux-gnueabi/ext/opt_random.h
+#usr/include/c++/4.9.3/array
+#usr/include/c++/4.9.3/atomic
+#usr/include/c++/4.9.3/backward
+#usr/include/c++/4.9.3/backward/auto_ptr.h
+#usr/include/c++/4.9.3/backward/backward_warning.h
+#usr/include/c++/4.9.3/backward/binders.h
+#usr/include/c++/4.9.3/backward/hash_fun.h
+#usr/include/c++/4.9.3/backward/hash_map
+#usr/include/c++/4.9.3/backward/hash_set
+#usr/include/c++/4.9.3/backward/hashtable.h
+#usr/include/c++/4.9.3/backward/strstream
+#usr/include/c++/4.9.3/bits
+#usr/include/c++/4.9.3/bits/algorithmfwd.h
+#usr/include/c++/4.9.3/bits/alloc_traits.h
+#usr/include/c++/4.9.3/bits/allocator.h
+#usr/include/c++/4.9.3/bits/atomic_base.h
+#usr/include/c++/4.9.3/bits/atomic_lockfree_defines.h
+#usr/include/c++/4.9.3/bits/basic_ios.h
+#usr/include/c++/4.9.3/bits/basic_ios.tcc
+#usr/include/c++/4.9.3/bits/basic_string.h
+#usr/include/c++/4.9.3/bits/basic_string.tcc
+#usr/include/c++/4.9.3/bits/boost_concept_check.h
+#usr/include/c++/4.9.3/bits/c++0x_warning.h
+#usr/include/c++/4.9.3/bits/c++14_warning.h
+#usr/include/c++/4.9.3/bits/char_traits.h
+#usr/include/c++/4.9.3/bits/codecvt.h
+#usr/include/c++/4.9.3/bits/concept_check.h
+#usr/include/c++/4.9.3/bits/cpp_type_traits.h
+#usr/include/c++/4.9.3/bits/cxxabi_forced.h
+#usr/include/c++/4.9.3/bits/deque.tcc
+#usr/include/c++/4.9.3/bits/enable_special_members.h
+#usr/include/c++/4.9.3/bits/exception_defines.h
+#usr/include/c++/4.9.3/bits/exception_ptr.h
+#usr/include/c++/4.9.3/bits/forward_list.h
+#usr/include/c++/4.9.3/bits/forward_list.tcc
+#usr/include/c++/4.9.3/bits/fstream.tcc
+#usr/include/c++/4.9.3/bits/functexcept.h
+#usr/include/c++/4.9.3/bits/functional_hash.h
+#usr/include/c++/4.9.3/bits/gslice.h
+#usr/include/c++/4.9.3/bits/gslice_array.h
+#usr/include/c++/4.9.3/bits/hash_bytes.h
+#usr/include/c++/4.9.3/bits/hashtable.h
+#usr/include/c++/4.9.3/bits/hashtable_policy.h
+#usr/include/c++/4.9.3/bits/indirect_array.h
+#usr/include/c++/4.9.3/bits/ios_base.h
+#usr/include/c++/4.9.3/bits/istream.tcc
+#usr/include/c++/4.9.3/bits/list.tcc
+#usr/include/c++/4.9.3/bits/locale_classes.h
+#usr/include/c++/4.9.3/bits/locale_classes.tcc
+#usr/include/c++/4.9.3/bits/locale_facets.h
+#usr/include/c++/4.9.3/bits/locale_facets.tcc
+#usr/include/c++/4.9.3/bits/locale_facets_nonio.h
+#usr/include/c++/4.9.3/bits/locale_facets_nonio.tcc
+#usr/include/c++/4.9.3/bits/localefwd.h
+#usr/include/c++/4.9.3/bits/mask_array.h
+#usr/include/c++/4.9.3/bits/memoryfwd.h
+#usr/include/c++/4.9.3/bits/move.h
+#usr/include/c++/4.9.3/bits/nested_exception.h
+#usr/include/c++/4.9.3/bits/ostream.tcc
+#usr/include/c++/4.9.3/bits/ostream_insert.h
+#usr/include/c++/4.9.3/bits/parse_numbers.h
+#usr/include/c++/4.9.3/bits/postypes.h
+#usr/include/c++/4.9.3/bits/predefined_ops.h
+#usr/include/c++/4.9.3/bits/ptr_traits.h
+#usr/include/c++/4.9.3/bits/random.h
+#usr/include/c++/4.9.3/bits/random.tcc
+#usr/include/c++/4.9.3/bits/range_access.h
+#usr/include/c++/4.9.3/bits/regex.h
+#usr/include/c++/4.9.3/bits/regex.tcc
+#usr/include/c++/4.9.3/bits/regex_automaton.h
+#usr/include/c++/4.9.3/bits/regex_automaton.tcc
+#usr/include/c++/4.9.3/bits/regex_compiler.h
+#usr/include/c++/4.9.3/bits/regex_compiler.tcc
+#usr/include/c++/4.9.3/bits/regex_constants.h
+#usr/include/c++/4.9.3/bits/regex_error.h
+#usr/include/c++/4.9.3/bits/regex_executor.h
+#usr/include/c++/4.9.3/bits/regex_executor.tcc
+#usr/include/c++/4.9.3/bits/regex_scanner.h
+#usr/include/c++/4.9.3/bits/regex_scanner.tcc
+#usr/include/c++/4.9.3/bits/shared_ptr.h
+#usr/include/c++/4.9.3/bits/shared_ptr_base.h
+#usr/include/c++/4.9.3/bits/slice_array.h
+#usr/include/c++/4.9.3/bits/sstream.tcc
+#usr/include/c++/4.9.3/bits/stl_algo.h
+#usr/include/c++/4.9.3/bits/stl_algobase.h
+#usr/include/c++/4.9.3/bits/stl_bvector.h
+#usr/include/c++/4.9.3/bits/stl_construct.h
+#usr/include/c++/4.9.3/bits/stl_deque.h
+#usr/include/c++/4.9.3/bits/stl_function.h
+#usr/include/c++/4.9.3/bits/stl_heap.h
+#usr/include/c++/4.9.3/bits/stl_iterator.h
+#usr/include/c++/4.9.3/bits/stl_iterator_base_funcs.h
+#usr/include/c++/4.9.3/bits/stl_iterator_base_types.h
+#usr/include/c++/4.9.3/bits/stl_list.h
+#usr/include/c++/4.9.3/bits/stl_map.h
+#usr/include/c++/4.9.3/bits/stl_multimap.h
+#usr/include/c++/4.9.3/bits/stl_multiset.h
+#usr/include/c++/4.9.3/bits/stl_numeric.h
+#usr/include/c++/4.9.3/bits/stl_pair.h
+#usr/include/c++/4.9.3/bits/stl_queue.h
+#usr/include/c++/4.9.3/bits/stl_raw_storage_iter.h
+#usr/include/c++/4.9.3/bits/stl_relops.h
+#usr/include/c++/4.9.3/bits/stl_set.h
+#usr/include/c++/4.9.3/bits/stl_stack.h
+#usr/include/c++/4.9.3/bits/stl_tempbuf.h
+#usr/include/c++/4.9.3/bits/stl_tree.h
+#usr/include/c++/4.9.3/bits/stl_uninitialized.h
+#usr/include/c++/4.9.3/bits/stl_vector.h
+#usr/include/c++/4.9.3/bits/stream_iterator.h
+#usr/include/c++/4.9.3/bits/streambuf.tcc
+#usr/include/c++/4.9.3/bits/streambuf_iterator.h
+#usr/include/c++/4.9.3/bits/stringfwd.h
+#usr/include/c++/4.9.3/bits/unique_ptr.h
+#usr/include/c++/4.9.3/bits/unordered_map.h
+#usr/include/c++/4.9.3/bits/unordered_set.h
+#usr/include/c++/4.9.3/bits/uses_allocator.h
+#usr/include/c++/4.9.3/bits/valarray_after.h
+#usr/include/c++/4.9.3/bits/valarray_array.h
+#usr/include/c++/4.9.3/bits/valarray_array.tcc
+#usr/include/c++/4.9.3/bits/valarray_before.h
+#usr/include/c++/4.9.3/bits/vector.tcc
+#usr/include/c++/4.9.3/bitset
+#usr/include/c++/4.9.3/cassert
+#usr/include/c++/4.9.3/ccomplex
+#usr/include/c++/4.9.3/cctype
+#usr/include/c++/4.9.3/cerrno
+#usr/include/c++/4.9.3/cfenv
+#usr/include/c++/4.9.3/cfloat
+#usr/include/c++/4.9.3/chrono
+#usr/include/c++/4.9.3/cinttypes
+#usr/include/c++/4.9.3/ciso646
+#usr/include/c++/4.9.3/climits
+#usr/include/c++/4.9.3/clocale
+#usr/include/c++/4.9.3/cmath
+#usr/include/c++/4.9.3/complex
+#usr/include/c++/4.9.3/complex.h
+#usr/include/c++/4.9.3/condition_variable
+#usr/include/c++/4.9.3/csetjmp
+#usr/include/c++/4.9.3/csignal
+#usr/include/c++/4.9.3/cstdalign
+#usr/include/c++/4.9.3/cstdarg
+#usr/include/c++/4.9.3/cstdbool
+#usr/include/c++/4.9.3/cstddef
+#usr/include/c++/4.9.3/cstdint
+#usr/include/c++/4.9.3/cstdio
+#usr/include/c++/4.9.3/cstdlib
+#usr/include/c++/4.9.3/cstring
+#usr/include/c++/4.9.3/ctgmath
+#usr/include/c++/4.9.3/ctime
+#usr/include/c++/4.9.3/cwchar
+#usr/include/c++/4.9.3/cwctype
+#usr/include/c++/4.9.3/cxxabi.h
+#usr/include/c++/4.9.3/debug
+#usr/include/c++/4.9.3/debug/array
+#usr/include/c++/4.9.3/debug/bitset
+#usr/include/c++/4.9.3/debug/debug.h
+#usr/include/c++/4.9.3/debug/deque
+#usr/include/c++/4.9.3/debug/formatter.h
+#usr/include/c++/4.9.3/debug/forward_list
+#usr/include/c++/4.9.3/debug/functions.h
+#usr/include/c++/4.9.3/debug/list
+#usr/include/c++/4.9.3/debug/macros.h
+#usr/include/c++/4.9.3/debug/map
+#usr/include/c++/4.9.3/debug/map.h
+#usr/include/c++/4.9.3/debug/multimap.h
+#usr/include/c++/4.9.3/debug/multiset.h
+#usr/include/c++/4.9.3/debug/safe_base.h
+#usr/include/c++/4.9.3/debug/safe_iterator.h
+#usr/include/c++/4.9.3/debug/safe_iterator.tcc
+#usr/include/c++/4.9.3/debug/safe_local_iterator.h
+#usr/include/c++/4.9.3/debug/safe_local_iterator.tcc
+#usr/include/c++/4.9.3/debug/safe_sequence.h
+#usr/include/c++/4.9.3/debug/safe_sequence.tcc
+#usr/include/c++/4.9.3/debug/safe_unordered_base.h
+#usr/include/c++/4.9.3/debug/safe_unordered_container.h
+#usr/include/c++/4.9.3/debug/safe_unordered_container.tcc
+#usr/include/c++/4.9.3/debug/set
+#usr/include/c++/4.9.3/debug/set.h
+#usr/include/c++/4.9.3/debug/string
+#usr/include/c++/4.9.3/debug/unordered_map
+#usr/include/c++/4.9.3/debug/unordered_set
+#usr/include/c++/4.9.3/debug/vector
+#usr/include/c++/4.9.3/decimal
+#usr/include/c++/4.9.3/decimal/decimal
+#usr/include/c++/4.9.3/decimal/decimal.h
+#usr/include/c++/4.9.3/deque
+#usr/include/c++/4.9.3/exception
+#usr/include/c++/4.9.3/experimental
+#usr/include/c++/4.9.3/experimental/optional
+#usr/include/c++/4.9.3/experimental/string_view
+#usr/include/c++/4.9.3/experimental/string_view.tcc
+#usr/include/c++/4.9.3/ext
+#usr/include/c++/4.9.3/ext/algorithm
+#usr/include/c++/4.9.3/ext/aligned_buffer.h
+#usr/include/c++/4.9.3/ext/alloc_traits.h
+#usr/include/c++/4.9.3/ext/array_allocator.h
+#usr/include/c++/4.9.3/ext/atomicity.h
+#usr/include/c++/4.9.3/ext/bitmap_allocator.h
+#usr/include/c++/4.9.3/ext/cast.h
+#usr/include/c++/4.9.3/ext/cmath
+#usr/include/c++/4.9.3/ext/codecvt_specializations.h
+#usr/include/c++/4.9.3/ext/concurrence.h
+#usr/include/c++/4.9.3/ext/debug_allocator.h
+#usr/include/c++/4.9.3/ext/enc_filebuf.h
+#usr/include/c++/4.9.3/ext/extptr_allocator.h
+#usr/include/c++/4.9.3/ext/functional
+#usr/include/c++/4.9.3/ext/hash_map
+#usr/include/c++/4.9.3/ext/hash_set
+#usr/include/c++/4.9.3/ext/iterator
+#usr/include/c++/4.9.3/ext/malloc_allocator.h
+#usr/include/c++/4.9.3/ext/memory
+#usr/include/c++/4.9.3/ext/mt_allocator.h
+#usr/include/c++/4.9.3/ext/new_allocator.h
+#usr/include/c++/4.9.3/ext/numeric
+#usr/include/c++/4.9.3/ext/numeric_traits.h
+#usr/include/c++/4.9.3/ext/pb_ds
+#usr/include/c++/4.9.3/ext/pb_ds/assoc_container.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/entry_pred.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/resize_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/branch_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cond_dealtor.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/container_base_dispatch.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/debug_map_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn/eq_by_less.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/lu_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/priority_queue_base_dispatch.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/standard_policies.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_trace_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/type_utils.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/types_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/exception.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/hash_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/list_update_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/priority_queue.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/tag_and_trait.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/tree_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/trie_policy.hpp
+#usr/include/c++/4.9.3/ext/pod_char_traits.h
+#usr/include/c++/4.9.3/ext/pointer.h
+#usr/include/c++/4.9.3/ext/pool_allocator.h
+#usr/include/c++/4.9.3/ext/random
+#usr/include/c++/4.9.3/ext/random.tcc
+#usr/include/c++/4.9.3/ext/rb_tree
+#usr/include/c++/4.9.3/ext/rc_string_base.h
+#usr/include/c++/4.9.3/ext/rope
+#usr/include/c++/4.9.3/ext/ropeimpl.h
+#usr/include/c++/4.9.3/ext/slist
+#usr/include/c++/4.9.3/ext/sso_string_base.h
+#usr/include/c++/4.9.3/ext/stdio_filebuf.h
+#usr/include/c++/4.9.3/ext/stdio_sync_filebuf.h
+#usr/include/c++/4.9.3/ext/string_conversions.h
+#usr/include/c++/4.9.3/ext/throw_allocator.h
+#usr/include/c++/4.9.3/ext/type_traits.h
+#usr/include/c++/4.9.3/ext/typelist.h
+#usr/include/c++/4.9.3/ext/vstring.h
+#usr/include/c++/4.9.3/ext/vstring.tcc
+#usr/include/c++/4.9.3/ext/vstring_fwd.h
+#usr/include/c++/4.9.3/ext/vstring_util.h
+#usr/include/c++/4.9.3/fenv.h
+#usr/include/c++/4.9.3/forward_list
+#usr/include/c++/4.9.3/fstream
+#usr/include/c++/4.9.3/functional
+#usr/include/c++/4.9.3/future
+#usr/include/c++/4.9.3/initializer_list
+#usr/include/c++/4.9.3/iomanip
+#usr/include/c++/4.9.3/ios
+#usr/include/c++/4.9.3/iosfwd
+#usr/include/c++/4.9.3/iostream
+#usr/include/c++/4.9.3/istream
+#usr/include/c++/4.9.3/iterator
+#usr/include/c++/4.9.3/limits
+#usr/include/c++/4.9.3/list
+#usr/include/c++/4.9.3/locale
+#usr/include/c++/4.9.3/map
+#usr/include/c++/4.9.3/memory
+#usr/include/c++/4.9.3/mutex
+#usr/include/c++/4.9.3/new
+#usr/include/c++/4.9.3/numeric
+#usr/include/c++/4.9.3/ostream
+#usr/include/c++/4.9.3/parallel
+#usr/include/c++/4.9.3/parallel/algo.h
+#usr/include/c++/4.9.3/parallel/algobase.h
+#usr/include/c++/4.9.3/parallel/algorithm
+#usr/include/c++/4.9.3/parallel/algorithmfwd.h
+#usr/include/c++/4.9.3/parallel/balanced_quicksort.h
+#usr/include/c++/4.9.3/parallel/base.h
+#usr/include/c++/4.9.3/parallel/basic_iterator.h
+#usr/include/c++/4.9.3/parallel/checkers.h
+#usr/include/c++/4.9.3/parallel/compatibility.h
+#usr/include/c++/4.9.3/parallel/compiletime_settings.h
+#usr/include/c++/4.9.3/parallel/equally_split.h
+#usr/include/c++/4.9.3/parallel/features.h
+#usr/include/c++/4.9.3/parallel/find.h
+#usr/include/c++/4.9.3/parallel/find_selectors.h
+#usr/include/c++/4.9.3/parallel/for_each.h
+#usr/include/c++/4.9.3/parallel/for_each_selectors.h
+#usr/include/c++/4.9.3/parallel/iterator.h
+#usr/include/c++/4.9.3/parallel/list_partition.h
+#usr/include/c++/4.9.3/parallel/losertree.h
+#usr/include/c++/4.9.3/parallel/merge.h
+#usr/include/c++/4.9.3/parallel/multiseq_selection.h
+#usr/include/c++/4.9.3/parallel/multiway_merge.h
+#usr/include/c++/4.9.3/parallel/multiway_mergesort.h
+#usr/include/c++/4.9.3/parallel/numeric
+#usr/include/c++/4.9.3/parallel/numericfwd.h
+#usr/include/c++/4.9.3/parallel/omp_loop.h
+#usr/include/c++/4.9.3/parallel/omp_loop_static.h
+#usr/include/c++/4.9.3/parallel/par_loop.h
+#usr/include/c++/4.9.3/parallel/parallel.h
+#usr/include/c++/4.9.3/parallel/partial_sum.h
+#usr/include/c++/4.9.3/parallel/partition.h
+#usr/include/c++/4.9.3/parallel/queue.h
+#usr/include/c++/4.9.3/parallel/quicksort.h
+#usr/include/c++/4.9.3/parallel/random_number.h
+#usr/include/c++/4.9.3/parallel/random_shuffle.h
+#usr/include/c++/4.9.3/parallel/search.h
+#usr/include/c++/4.9.3/parallel/set_operations.h
+#usr/include/c++/4.9.3/parallel/settings.h
+#usr/include/c++/4.9.3/parallel/sort.h
+#usr/include/c++/4.9.3/parallel/tags.h
+#usr/include/c++/4.9.3/parallel/types.h
+#usr/include/c++/4.9.3/parallel/unique_copy.h
+#usr/include/c++/4.9.3/parallel/workstealing.h
+#usr/include/c++/4.9.3/profile
+#usr/include/c++/4.9.3/profile/array
+#usr/include/c++/4.9.3/profile/base.h
+#usr/include/c++/4.9.3/profile/bitset
+#usr/include/c++/4.9.3/profile/deque
+#usr/include/c++/4.9.3/profile/forward_list
+#usr/include/c++/4.9.3/profile/impl
+#usr/include/c++/4.9.3/profile/impl/profiler.h
+#usr/include/c++/4.9.3/profile/impl/profiler_algos.h
+#usr/include/c++/4.9.3/profile/impl/profiler_container_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_hash_func.h
+#usr/include/c++/4.9.3/profile/impl/profiler_hashtable_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_list_to_slist.h
+#usr/include/c++/4.9.3/profile/impl/profiler_list_to_vector.h
+#usr/include/c++/4.9.3/profile/impl/profiler_map_to_unordered_map.h
+#usr/include/c++/4.9.3/profile/impl/profiler_node.h
+#usr/include/c++/4.9.3/profile/impl/profiler_state.h
+#usr/include/c++/4.9.3/profile/impl/profiler_trace.h
+#usr/include/c++/4.9.3/profile/impl/profiler_vector_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_vector_to_list.h
+#usr/include/c++/4.9.3/profile/iterator_tracker.h
+#usr/include/c++/4.9.3/profile/list
+#usr/include/c++/4.9.3/profile/map
+#usr/include/c++/4.9.3/profile/map.h
+#usr/include/c++/4.9.3/profile/multimap.h
+#usr/include/c++/4.9.3/profile/multiset.h
+#usr/include/c++/4.9.3/profile/set
+#usr/include/c++/4.9.3/profile/set.h
+#usr/include/c++/4.9.3/profile/unordered_base.h
+#usr/include/c++/4.9.3/profile/unordered_map
+#usr/include/c++/4.9.3/profile/unordered_set
+#usr/include/c++/4.9.3/profile/vector
+#usr/include/c++/4.9.3/queue
+#usr/include/c++/4.9.3/random
+#usr/include/c++/4.9.3/ratio
+#usr/include/c++/4.9.3/regex
+#usr/include/c++/4.9.3/scoped_allocator
+#usr/include/c++/4.9.3/set
+#usr/include/c++/4.9.3/shared_mutex
+#usr/include/c++/4.9.3/sstream
+#usr/include/c++/4.9.3/stack
+#usr/include/c++/4.9.3/stdexcept
+#usr/include/c++/4.9.3/streambuf
+#usr/include/c++/4.9.3/string
+#usr/include/c++/4.9.3/system_error
+#usr/include/c++/4.9.3/tgmath.h
+#usr/include/c++/4.9.3/thread
+#usr/include/c++/4.9.3/tr1
+#usr/include/c++/4.9.3/tr1/array
+#usr/include/c++/4.9.3/tr1/bessel_function.tcc
+#usr/include/c++/4.9.3/tr1/beta_function.tcc
+#usr/include/c++/4.9.3/tr1/ccomplex
+#usr/include/c++/4.9.3/tr1/cctype
+#usr/include/c++/4.9.3/tr1/cfenv
+#usr/include/c++/4.9.3/tr1/cfloat
+#usr/include/c++/4.9.3/tr1/cinttypes
+#usr/include/c++/4.9.3/tr1/climits
+#usr/include/c++/4.9.3/tr1/cmath
+#usr/include/c++/4.9.3/tr1/complex
+#usr/include/c++/4.9.3/tr1/complex.h
+#usr/include/c++/4.9.3/tr1/cstdarg
+#usr/include/c++/4.9.3/tr1/cstdbool
+#usr/include/c++/4.9.3/tr1/cstdint
+#usr/include/c++/4.9.3/tr1/cstdio
+#usr/include/c++/4.9.3/tr1/cstdlib
+#usr/include/c++/4.9.3/tr1/ctgmath
+#usr/include/c++/4.9.3/tr1/ctime
+#usr/include/c++/4.9.3/tr1/ctype.h
+#usr/include/c++/4.9.3/tr1/cwchar
+#usr/include/c++/4.9.3/tr1/cwctype
+#usr/include/c++/4.9.3/tr1/ell_integral.tcc
+#usr/include/c++/4.9.3/tr1/exp_integral.tcc
+#usr/include/c++/4.9.3/tr1/fenv.h
+#usr/include/c++/4.9.3/tr1/float.h
+#usr/include/c++/4.9.3/tr1/functional
+#usr/include/c++/4.9.3/tr1/functional_hash.h
+#usr/include/c++/4.9.3/tr1/gamma.tcc
+#usr/include/c++/4.9.3/tr1/hashtable.h
+#usr/include/c++/4.9.3/tr1/hashtable_policy.h
+#usr/include/c++/4.9.3/tr1/hypergeometric.tcc
+#usr/include/c++/4.9.3/tr1/inttypes.h
+#usr/include/c++/4.9.3/tr1/legendre_function.tcc
+#usr/include/c++/4.9.3/tr1/limits.h
+#usr/include/c++/4.9.3/tr1/math.h
+#usr/include/c++/4.9.3/tr1/memory
+#usr/include/c++/4.9.3/tr1/modified_bessel_func.tcc
+#usr/include/c++/4.9.3/tr1/poly_hermite.tcc
+#usr/include/c++/4.9.3/tr1/poly_laguerre.tcc
+#usr/include/c++/4.9.3/tr1/random
+#usr/include/c++/4.9.3/tr1/random.h
+#usr/include/c++/4.9.3/tr1/random.tcc
+#usr/include/c++/4.9.3/tr1/regex
+#usr/include/c++/4.9.3/tr1/riemann_zeta.tcc
+#usr/include/c++/4.9.3/tr1/shared_ptr.h
+#usr/include/c++/4.9.3/tr1/special_function_util.h
+#usr/include/c++/4.9.3/tr1/stdarg.h
+#usr/include/c++/4.9.3/tr1/stdbool.h
+#usr/include/c++/4.9.3/tr1/stdint.h
+#usr/include/c++/4.9.3/tr1/stdio.h
+#usr/include/c++/4.9.3/tr1/stdlib.h
+#usr/include/c++/4.9.3/tr1/tgmath.h
+#usr/include/c++/4.9.3/tr1/tuple
+#usr/include/c++/4.9.3/tr1/type_traits
+#usr/include/c++/4.9.3/tr1/unordered_map
+#usr/include/c++/4.9.3/tr1/unordered_map.h
+#usr/include/c++/4.9.3/tr1/unordered_set
+#usr/include/c++/4.9.3/tr1/unordered_set.h
+#usr/include/c++/4.9.3/tr1/utility
+#usr/include/c++/4.9.3/tr1/wchar.h
+#usr/include/c++/4.9.3/tr1/wctype.h
+#usr/include/c++/4.9.3/tr2
+#usr/include/c++/4.9.3/tr2/bool_set
+#usr/include/c++/4.9.3/tr2/bool_set.tcc
+#usr/include/c++/4.9.3/tr2/dynamic_bitset
+#usr/include/c++/4.9.3/tr2/dynamic_bitset.tcc
+#usr/include/c++/4.9.3/tr2/ratio
+#usr/include/c++/4.9.3/tr2/type_traits
+#usr/include/c++/4.9.3/tuple
+#usr/include/c++/4.9.3/type_traits
+#usr/include/c++/4.9.3/typeindex
+#usr/include/c++/4.9.3/typeinfo
+#usr/include/c++/4.9.3/unordered_map
+#usr/include/c++/4.9.3/unordered_set
+#usr/include/c++/4.9.3/utility
+#usr/include/c++/4.9.3/valarray
+#usr/include/c++/4.9.3/vector
 #usr/lib/gcc
 #usr/lib/gcc/armv5tel-unknown-linux-gnueabi
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/cc1
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/cc1plus
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/collect2
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/crtbegin.o
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/crtbeginS.o
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/crtbeginT.o
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/crtend.o
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/crtendS.o
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/finclude
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include-fixed
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include-fixed/README
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include-fixed/limits.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include-fixed/syslimits.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/arm_neon.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/float.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/iso646.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/mf-runtime.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/mmintrin.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/omp.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/ssp
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/ssp/ssp.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/ssp/stdio.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/ssp/string.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/ssp/unistd.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/stdarg.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/stdbool.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/stddef.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/stdfix.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/unwind.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/include/varargs.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/fixinc.sh
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/fixinc_list
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/fixincl
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/gsyslimits.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/include
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/include/README
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/include/limits.h
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/macro_list
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/mkheaders
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/mkheaders.conf
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/install-tools/mkinstalldirs
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/libgcc.a
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/libgcc_eh.a
-#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.4.7/libgcov.a
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/cc1
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/cc1plus
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/collect2
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/crtbegin.o
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/crtbeginS.o
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/crtbeginT.o
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/crtend.o
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/crtendS.o
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/finclude
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include-fixed
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include-fixed/README
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include-fixed/limits.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include-fixed/syslimits.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/arm_acle.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/arm_neon.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/float.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/iso646.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/mmintrin.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/omp.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/sanitizer
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/sanitizer/asan_interface.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/sanitizer/common_interface_defs.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/sanitizer/lsan_interface.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/ssp
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/ssp/ssp.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/ssp/stdio.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/ssp/string.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/ssp/unistd.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdalign.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdarg.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdatomic.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdbool.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stddef.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdfix.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdint-gcc.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdint.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/stdnoreturn.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/unwind-arm-common.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/unwind.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/include/varargs.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/fixinc.sh
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/fixinc_list
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/fixincl
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/gsyslimits.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/include
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/include/README
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/include/limits.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/macro_list
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/mkheaders
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/mkheaders.conf
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/install-tools/mkinstalldirs
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/libgcc.a
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/libgcc_eh.a
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/libgcov.a
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/liblto_plugin.la
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/liblto_plugin.so
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/liblto_plugin.so.0
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/liblto_plugin.so.0.0.0
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/lto-wrapper
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/lto1
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/gengtype
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/gtype.state
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ada
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ada/gcc-interface
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ada/gcc-interface/ada-tree.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/alias.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/all-tree.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/alloc-pool.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ansidecl.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/attribs.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/auto-host.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/b-header-vars
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/basic-block.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/bitmap.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/builtins.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/bversion.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/c-family
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/c-family/c-common.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/c-family/c-common.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/c-family/c-objc.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/c-family/c-pragma.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/c-family/c-pretty-print.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/c-tree.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/calls.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cfg-flags.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cfgexpand.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cfghooks.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cfgloop.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cgraph.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cif-code.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cilk-builtins.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cilkplus.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/aarch-common-protos.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/aout.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/arm-cores.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/arm-opts.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/arm-protos.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/arm.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/bpabi.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/elf.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/linux-eabi.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/linux-elf.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/arm/linux-gas.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/dbxelf.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/elfos.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/glibc-stdint.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/gnu-user.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/initfini-array.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/linux-android.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/linux-protos.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/linux.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/config/vxworks-dummy.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/configargs.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/context.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/coretypes.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cp
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cp/cp-tree.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cp/cp-tree.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cp/cxx-pretty-print.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cp/name-lookup.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cp/type-utils.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cppdefault.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/cpplib.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/debug.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/defaults.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/df.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/diagnostic-color.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/diagnostic-core.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/diagnostic.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/diagnostic.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/double-int.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/dumpfile.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/emit-rtl.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/except.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/filenames.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/fixed-value.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/flag-types.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/flags.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/fold-const.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/function.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gcc-plugin.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gcc-symtab.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/genrtl.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ggc.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-builder.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-expr.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-fold.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-iterator.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-low.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-pretty-print.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-ssa.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple-walk.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimple.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimplify-me.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gimplify.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gsstruct.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gtm-builtins.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/gtype-desc.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/hard-reg-set.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/hash-table.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/hashtab.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/highlev-plugin-common.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/hwint.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/incpath.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/input.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/insn-codes.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/insn-constants.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/insn-flags.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/insn-modes.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/insn-notes.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/internal-fn.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/internal-fn.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/intl.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ipa-prop.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ipa-ref-inline.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ipa-ref.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ipa-reference.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ipa-utils.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/is-a.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/java
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/java/java-tree.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/langhooks.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/libiberty.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/line-map.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/machmode.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/md5.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/mode-classes.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/objc
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/objc/objc-tree.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/obstack.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/omp-builtins.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/options.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/opts.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/output.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/params.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/params.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/pass-instances.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/pass_manager.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/plugin-api.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/plugin-version.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/plugin.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/plugin.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/pointer-set.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/predict.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/predict.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/prefix.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/pretty-print.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/print-rtl.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/print-tree.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/real.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/realmpfr.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/reg-notes.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/regset.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/resource.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/rtl.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/rtl.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/safe-ctype.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/sanitizer.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/sbitmap.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/splay-tree.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/ssa-iterators.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/statistics.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/stmt.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/stor-layout.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/stringpool.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/symtab.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/sync-builtins.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/system.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/target-hooks-macros.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/target.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/target.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/timevar.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/timevar.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tm-preds.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tm.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tm_p.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/toplev.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-cfg.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-cfgcleanup.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-check.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-core.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-dfa.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-dump.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-eh.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-hasher.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-inline.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-into-ssa.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-iterator.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-nested.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-object-size.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-outof-ssa.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-parloops.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-pass.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-phinodes.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-pretty-print.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-address.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-alias.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-coalesce.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-dom.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-loop-ivopts.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-loop-manip.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-loop-niter.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-loop.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-operands.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-sccvn.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-ter.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-threadedge.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa-threadupdate.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssa.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree-ssanames.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/tree.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/treestruct.def
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/varasm.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/vec.h
+#usr/lib/gcc/armv5tel-unknown-linux-gnueabi/4.9.3/plugin/include/version.h
+#usr/lib/libasan.a
+#usr/lib/libasan.la
+#usr/lib/libasan.so
+usr/lib/libasan.so.1
+usr/lib/libasan.so.1.0.0
+#usr/lib/libasan_preinit.o
+#usr/lib/libatomic.a
+#usr/lib/libatomic.la
+#usr/lib/libatomic.so
+usr/lib/libatomic.so.1
+usr/lib/libatomic.so.1.1.0
 #usr/lib/libgomp.a
 #usr/lib/libgomp.la
 #usr/lib/libgomp.so
 usr/lib/libgomp.so.1
 usr/lib/libgomp.so.1.0.0
 #usr/lib/libgomp.spec
-#usr/lib/libmudflap.a
-#usr/lib/libmudflap.la
-#usr/lib/libmudflap.so
-usr/lib/libmudflap.so.0
-usr/lib/libmudflap.so.0.0.0
-#usr/lib/libmudflapth.a
-#usr/lib/libmudflapth.la
-#usr/lib/libmudflapth.so
-usr/lib/libmudflapth.so.0
-usr/lib/libmudflapth.so.0.0.0
+#usr/lib/libitm.a
+#usr/lib/libitm.la
+#usr/lib/libitm.so
+usr/lib/libitm.so.1
+usr/lib/libitm.so.1.0.0
+#usr/lib/libitm.spec
+#usr/lib/libsanitizer.spec
 #usr/lib/libssp.a
 #usr/lib/libssp.la
 #usr/lib/libssp.so
@@ -766,16 +1058,34 @@ usr/lib/libssp.so.0.0.0
 #usr/lib/libssp_nonshared.a
 #usr/lib/libssp_nonshared.la
 #usr/lib/libstdc++.a
-usr/lib/libstdc++.so.6.0.13
+usr/lib/libstdc++.so.6.0.20
+#usr/lib/libstdc++.so.6.0.20-gdb.py
 #usr/lib/libsupc++.a
 #usr/lib/libsupc++.la
-#usr/man
-#usr/man/man1
-#usr/man/man1/cpp.1
-#usr/man/man1/g++.1
-#usr/man/man1/gcc.1
-#usr/man/man1/gcov.1
-#usr/man/man7
-#usr/man/man7/fsf-funding.7
-#usr/man/man7/gfdl.7
-#usr/man/man7/gpl.7
+#usr/lib/libubsan.a
+#usr/lib/libubsan.la
+#usr/lib/libubsan.so
+usr/lib/libubsan.so.0
+usr/lib/libubsan.so.0.0.0
+#usr/share/gcc-4.9.3
+#usr/share/gcc-4.9.3/python
+#usr/share/gcc-4.9.3/python/libstdcxx
+#usr/share/gcc-4.9.3/python/libstdcxx/__init__.py
+#usr/share/gcc-4.9.3/python/libstdcxx/v6
+#usr/share/gcc-4.9.3/python/libstdcxx/v6/__init__.py
+#usr/share/gcc-4.9.3/python/libstdcxx/v6/printers.py
+#usr/share/info/cpp.info
+#usr/share/info/cppinternals.info
+#usr/share/info/gcc.info
+#usr/share/info/gccinstall.info
+#usr/share/info/gccint.info
+#usr/share/info/libgomp.info
+#usr/share/info/libitm.info
+#usr/share/info/libquadmath.info
+#usr/share/man/man1/cpp.1
+#usr/share/man/man1/g++.1
+#usr/share/man/man1/gcc.1
+#usr/share/man/man1/gcov.1
+#usr/share/man/man7/fsf-funding.7
+#usr/share/man/man7/gfdl.7
+#usr/share/man/man7/gpl.7
index b4cd8f857192a330af409cf004e677fd54fad7c5..e6d328bb5ae9f636964bcac219bfa623f1e152f9 100644 (file)
@@ -1,3 +1,4 @@
+etc/init.d
 #etc/rc.d
 #etc/rc.d/helper
 etc/rc.d/helper/getdnsfromdhcpc.pl
@@ -12,7 +13,6 @@ etc/rc.d/init.d/apache
 etc/rc.d/init.d/beep
 #etc/rc.d/init.d/bluetooth
 etc/rc.d/init.d/checkfs
-etc/rc.d/init.d/waitdrives
 #etc/rc.d/init.d/clamav
 etc/rc.d/init.d/cleanfs
 #etc/rc.d/init.d/client175
@@ -25,12 +25,14 @@ etc/rc.d/init.d/console
 #etc/rc.d/init.d/cyrus-sasl
 etc/rc.d/init.d/dhcp
 etc/rc.d/init.d/dhcrelay
+#etc/rc.d/init.d/dnsdist
 etc/rc.d/init.d/dnsmasq
 etc/rc.d/init.d/fcron
 #etc/rc.d/init.d/fetchmail
 etc/rc.d/init.d/fireinfo
 etc/rc.d/init.d/firewall
 etc/rc.d/init.d/firstsetup
+etc/rc.d/init.d/fsresize
 etc/rc.d/init.d/functions
 #etc/rc.d/init.d/gnump3d
 etc/rc.d/init.d/halt
@@ -52,8 +54,8 @@ etc/rc.d/init.d/mISDN
 #etc/rc.d/init.d/miniupnpd
 #etc/rc.d/init.d/mldonkey
 etc/rc.d/init.d/modules
-#etc/rc.d/init.d/motion
 #etc/rc.d/init.d/monit
+#etc/rc.d/init.d/motion
 etc/rc.d/init.d/mountfs
 etc/rc.d/init.d/mountkernfs
 etc/rc.d/init.d/mounttmpfs
@@ -62,7 +64,6 @@ etc/rc.d/init.d/mounttmpfs
 #etc/rc.d/init.d/netsnmpd
 etc/rc.d/init.d/network
 etc/rc.d/init.d/network-trigger
-etc/rc.d/init.d/network-vlans
 #etc/rc.d/init.d/networking
 etc/rc.d/init.d/networking/any
 etc/rc.d/init.d/networking/blue
@@ -76,12 +77,14 @@ etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq
 etc/rc.d/init.d/networking/red.down/10-ipsec
 etc/rc.d/init.d/networking/red.down/10-miniupnpd
 etc/rc.d/init.d/networking/red.down/10-ovpn
+etc/rc.d/init.d/networking/red.down/10-static-routes
 etc/rc.d/init.d/networking/red.down/20-firewall
 #etc/rc.d/init.d/networking/red.up
 etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup
 etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq
 etc/rc.d/init.d/networking/red.up/10-miniupnpd
 etc/rc.d/init.d/networking/red.up/10-multicast
+etc/rc.d/init.d/networking/red.up/10-static-routes
 etc/rc.d/init.d/networking/red.up/20-firewall
 etc/rc.d/init.d/networking/red.up/23-RS-snort
 etc/rc.d/init.d/networking/red.up/24-RS-qos
@@ -100,7 +103,6 @@ etc/rc.d/init.d/ntp
 #etc/rc.d/init.d/nut
 #etc/rc.d/init.d/openvmtools
 etc/rc.d/init.d/partresize
-etc/rc.d/init.d/fsresize
 #etc/rc.d/init.d/portmap
 #etc/rc.d/init.d/postfix
 #etc/rc.d/init.d/pound
@@ -126,14 +128,16 @@ etc/rc.d/init.d/sysctl
 etc/rc.d/init.d/sysklogd
 etc/rc.d/init.d/template
 #etc/rc.d/init.d/tftpd
-etc/rc.d/init.d/tmpfs
 #etc/rc.d/init.d/tor
+#etc/rc.d/init.d/transmission
 etc/rc.d/init.d/udev
 etc/rc.d/init.d/udev_retry
 etc/rc.d/init.d/upnpd
 #etc/rc.d/init.d/vdr
 #etc/rc.d/init.d/vdradmin
+etc/rc.d/init.d/vnstat
 #etc/rc.d/init.d/vsftpd
+etc/rc.d/init.d/waitdrives
 #etc/rc.d/init.d/watchdog
 etc/rc.d/init.d/wlanclient
 #etc/rc.d/init.d/xinetd
@@ -150,13 +154,13 @@ etc/rc.d/rc0.d/K30sshd
 etc/rc.d/rc0.d/K45random
 etc/rc.d/rc0.d/K47setclock
 etc/rc.d/rc0.d/K49cyrus-sasl
+etc/rc.d/rc0.d/K51vnstat
 etc/rc.d/rc0.d/K78snort
 etc/rc.d/rc0.d/K79leds
 etc/rc.d/rc0.d/K80network
 etc/rc.d/rc0.d/K82wlanclient
 #etc/rc.d/rc0.d/K84bluetooth
 #etc/rc.d/rc0.d/K85messagebus
-etc/rc.d/rc0.d/K85tmpfs
 etc/rc.d/rc0.d/K90sysklogd
 etc/rc.d/rc0.d/S60sendsignals
 etc/rc.d/rc0.d/S70localnet
@@ -164,8 +168,9 @@ etc/rc.d/rc0.d/S80mountfs
 etc/rc.d/rc0.d/S90swap
 etc/rc.d/rc0.d/S99halt
 #etc/rc.d/rc3.d
-etc/rc.d/rc3.d/S01tmpfs
+etc/rc.d/rc3.d/S01vnstat
 etc/rc.d/rc3.d/S10sysklogd
+etc/rc.d/rc3.d/S15fireinfo
 #etc/rc.d/rc3.d/S15messagebus
 #etc/rc.d/rc3.d/S16bluetooth
 #etc/rc.d/rc3.d/S18cpufreq
@@ -198,13 +203,13 @@ etc/rc.d/rc6.d/K30sshd
 etc/rc.d/rc6.d/K45random
 etc/rc.d/rc6.d/K47setclock
 etc/rc.d/rc6.d/K49cyrus-sasl
+etc/rc.d/rc6.d/K51vnstat
 etc/rc.d/rc6.d/K78snort
 etc/rc.d/rc6.d/K79leds
 etc/rc.d/rc6.d/K80network
 etc/rc.d/rc6.d/K82wlanclient
 #etc/rc.d/rc6.d/K84bluetooth
 #etc/rc.d/rc6.d/K85messagebus
-etc/rc.d/rc6.d/K85tmpfs
 etc/rc.d/rc6.d/K90sysklogd
 etc/rc.d/rc6.d/S60sendsignals
 etc/rc.d/rc6.d/S70mountfs
@@ -232,16 +237,11 @@ etc/rc.d/rcsysinit.d/S75firstsetup
 etc/rc.d/rcsysinit.d/S80localnet
 etc/rc.d/rcsysinit.d/S85firewall
 etc/rc.d/rcsysinit.d/S90network-trigger
-etc/rc.d/rcsysinit.d/S91network-vlans
 etc/rc.d/rcsysinit.d/S92rngd
-etc/rc.d/rc3.d/S15fireinfo
 #etc/sysconfig
 etc/sysconfig/createfiles
 etc/sysconfig/firewall.local
 etc/sysconfig/modules
+etc/sysconfig/ramdisk
 etc/sysconfig/rc
 etc/sysconfig/rc.local
-etc/init.d
-etc/rc.d/init.d/networking/red.down/10-static-routes
-etc/rc.d/init.d/networking/red.up/10-static-routes
-#etc/rc.d/init.d/transmission
similarity index 94%
rename from config/rootfiles/common/python
rename to config/rootfiles/common/armv5tel/python
index 3472e251783a3000d914d0b299203d535e23090b..a308ae0e4f31a4fcd6bf639601eabe387645883f 100644 (file)
@@ -171,12 +171,18 @@ usr/lib/python2.7/__phello__.foo.pyc
 #usr/lib/python2.7/_abcoll.py
 usr/lib/python2.7/_abcoll.pyc
 #usr/lib/python2.7/_abcoll.pyo
+#usr/lib/python2.7/_osx_support.py
+#usr/lib/python2.7/_osx_support.pyc
+#usr/lib/python2.7/_osx_support.pyo
 #usr/lib/python2.7/_pyio.py
 usr/lib/python2.7/_pyio.pyc
 #usr/lib/python2.7/_pyio.pyo
 #usr/lib/python2.7/_strptime.py
 usr/lib/python2.7/_strptime.pyc
 #usr/lib/python2.7/_strptime.pyo
+#usr/lib/python2.7/_sysconfigdata.py
+usr/lib/python2.7/_sysconfigdata.pyc
+#usr/lib/python2.7/_sysconfigdata.pyo
 #usr/lib/python2.7/_threading_local.py
 usr/lib/python2.7/_threading_local.pyc
 #usr/lib/python2.7/_threading_local.pyo
@@ -488,9 +494,6 @@ usr/lib/python2.7/ctypes/macholib/framework.pyc
 #usr/lib/python2.7/ctypes/test/test_delattr.py
 #usr/lib/python2.7/ctypes/test/test_delattr.pyc
 #usr/lib/python2.7/ctypes/test/test_delattr.pyo
-#usr/lib/python2.7/ctypes/test/test_errcheck.py
-#usr/lib/python2.7/ctypes/test/test_errcheck.pyc
-#usr/lib/python2.7/ctypes/test/test_errcheck.pyo
 #usr/lib/python2.7/ctypes/test/test_errno.py
 #usr/lib/python2.7/ctypes/test/test_errno.pyc
 #usr/lib/python2.7/ctypes/test/test_errno.pyo
@@ -512,9 +515,6 @@ usr/lib/python2.7/ctypes/macholib/framework.pyc
 #usr/lib/python2.7/ctypes/test/test_init.py
 #usr/lib/python2.7/ctypes/test/test_init.pyc
 #usr/lib/python2.7/ctypes/test/test_init.pyo
-#usr/lib/python2.7/ctypes/test/test_integers.py
-#usr/lib/python2.7/ctypes/test/test_integers.pyc
-#usr/lib/python2.7/ctypes/test/test_integers.pyo
 #usr/lib/python2.7/ctypes/test/test_internals.py
 #usr/lib/python2.7/ctypes/test/test_internals.pyc
 #usr/lib/python2.7/ctypes/test/test_internals.pyo
@@ -605,6 +605,9 @@ usr/lib/python2.7/ctypes/macholib/framework.pyc
 #usr/lib/python2.7/ctypes/test/test_win32.py
 #usr/lib/python2.7/ctypes/test/test_win32.pyc
 #usr/lib/python2.7/ctypes/test/test_win32.pyo
+#usr/lib/python2.7/ctypes/test/test_wintypes.py
+#usr/lib/python2.7/ctypes/test/test_wintypes.pyc
+#usr/lib/python2.7/ctypes/test/test_wintypes.pyo
 #usr/lib/python2.7/ctypes/util.py
 usr/lib/python2.7/ctypes/util.pyc
 #usr/lib/python2.7/ctypes/util.pyo
@@ -1452,6 +1455,19 @@ usr/lib/python2.7/encodings/uu_codec.pyc
 #usr/lib/python2.7/encodings/zlib_codec.py
 usr/lib/python2.7/encodings/zlib_codec.pyc
 #usr/lib/python2.7/encodings/zlib_codec.pyo
+#usr/lib/python2.7/ensurepip
+#usr/lib/python2.7/ensurepip/__init__.py
+#usr/lib/python2.7/ensurepip/__init__.pyc
+#usr/lib/python2.7/ensurepip/__init__.pyo
+#usr/lib/python2.7/ensurepip/__main__.py
+#usr/lib/python2.7/ensurepip/__main__.pyc
+#usr/lib/python2.7/ensurepip/__main__.pyo
+#usr/lib/python2.7/ensurepip/_bundled
+#usr/lib/python2.7/ensurepip/_bundled/pip-6.1.1-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/setuptools-15.2-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_uninstall.py
+#usr/lib/python2.7/ensurepip/_uninstall.pyc
+#usr/lib/python2.7/ensurepip/_uninstall.pyo
 #usr/lib/python2.7/filecmp.py
 usr/lib/python2.7/filecmp.pyc
 #usr/lib/python2.7/filecmp.pyo
@@ -1583,6 +1599,13 @@ usr/lib/python2.7/httplib.pyc
 #usr/lib/python2.7/idlelib/Icons
 #usr/lib/python2.7/idlelib/Icons/folder.gif
 #usr/lib/python2.7/idlelib/Icons/idle.icns
+#usr/lib/python2.7/idlelib/Icons/idle.ico
+#usr/lib/python2.7/idlelib/Icons/idle_16.gif
+#usr/lib/python2.7/idlelib/Icons/idle_16.png
+#usr/lib/python2.7/idlelib/Icons/idle_32.gif
+#usr/lib/python2.7/idlelib/Icons/idle_32.png
+#usr/lib/python2.7/idlelib/Icons/idle_48.gif
+#usr/lib/python2.7/idlelib/Icons/idle_48.png
 #usr/lib/python2.7/idlelib/Icons/minusnode.gif
 #usr/lib/python2.7/idlelib/Icons/openfolder.gif
 #usr/lib/python2.7/idlelib/Icons/plusnode.gif
@@ -1701,6 +1724,80 @@ usr/lib/python2.7/httplib.pyc
 #usr/lib/python2.7/idlelib/idle.pyc
 #usr/lib/python2.7/idlelib/idle.pyo
 #usr/lib/python2.7/idlelib/idle.pyw
+#usr/lib/python2.7/idlelib/idle_test
+#usr/lib/python2.7/idlelib/idle_test/README.txt
+#usr/lib/python2.7/idlelib/idle_test/__init__.py
+#usr/lib/python2.7/idlelib/idle_test/__init__.pyc
+#usr/lib/python2.7/idlelib/idle_test/__init__.pyo
+#usr/lib/python2.7/idlelib/idle_test/htest.py
+#usr/lib/python2.7/idlelib/idle_test/htest.pyc
+#usr/lib/python2.7/idlelib/idle_test/htest.pyo
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.py
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.pyc
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.pyo
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.py
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.pyc
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.py
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.py
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.py
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.py
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.py
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.py
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.py
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_grep.py
+#usr/lib/python2.7/idlelib/idle_test/test_grep.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_grep.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.py
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.py
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_io.py
+#usr/lib/python2.7/idlelib/idle_test/test_io.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_io.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.py
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.py
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.py
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.py
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.py
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_text.py
+#usr/lib/python2.7/idlelib/idle_test/test_text.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_text.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_textview.py
+#usr/lib/python2.7/idlelib/idle_test/test_textview.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_textview.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_warning.py
+#usr/lib/python2.7/idlelib/idle_test/test_warning.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_warning.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.py
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.pyo
 #usr/lib/python2.7/idlelib/idlever.py
 #usr/lib/python2.7/idlelib/idlever.pyc
 #usr/lib/python2.7/idlelib/idlever.pyo
@@ -1719,9 +1816,6 @@ usr/lib/python2.7/httplib.pyc
 #usr/lib/python2.7/idlelib/tabbedpages.py
 #usr/lib/python2.7/idlelib/tabbedpages.pyc
 #usr/lib/python2.7/idlelib/tabbedpages.pyo
-#usr/lib/python2.7/idlelib/testcode.py
-#usr/lib/python2.7/idlelib/testcode.pyc
-#usr/lib/python2.7/idlelib/testcode.pyo
 #usr/lib/python2.7/idlelib/textView.py
 #usr/lib/python2.7/idlelib/textView.pyc
 #usr/lib/python2.7/idlelib/textView.pyo
@@ -1809,6 +1903,9 @@ usr/lib/python2.7/json/scanner.pyc
 #usr/lib/python2.7/json/tests/test_speedups.py
 #usr/lib/python2.7/json/tests/test_speedups.pyc
 #usr/lib/python2.7/json/tests/test_speedups.pyo
+#usr/lib/python2.7/json/tests/test_tool.py
+#usr/lib/python2.7/json/tests/test_tool.pyc
+#usr/lib/python2.7/json/tests/test_tool.pyo
 #usr/lib/python2.7/json/tests/test_unicode.py
 #usr/lib/python2.7/json/tests/test_unicode.pyc
 #usr/lib/python2.7/json/tests/test_unicode.pyo
@@ -1819,7 +1916,7 @@ usr/lib/python2.7/json/tool.pyc
 usr/lib/python2.7/keyword.pyc
 #usr/lib/python2.7/keyword.pyo
 #usr/lib/python2.7/lib-dynload
-usr/lib/python2.7/lib-dynload/Python-2.7.3-py2.7.egg-info
+#usr/lib/python2.7/lib-dynload/Python-2.7.10-py2.7.egg-info
 usr/lib/python2.7/lib-dynload/_bisect.so
 usr/lib/python2.7/lib-dynload/_bsddb.so
 usr/lib/python2.7/lib-dynload/_codecs_cn.so
@@ -1860,7 +1957,7 @@ usr/lib/python2.7/lib-dynload/cStringIO.so
 usr/lib/python2.7/lib-dynload/cmath.so
 usr/lib/python2.7/lib-dynload/crypt.so
 usr/lib/python2.7/lib-dynload/datetime.so
-usr/lib/python2.7/lib-dynload/dbm.so
+#usr/lib/python2.7/lib-dynload/dbm_failed.so
 usr/lib/python2.7/lib-dynload/dl.so
 usr/lib/python2.7/lib-dynload/fcntl.so
 usr/lib/python2.7/lib-dynload/future_builtins.so
@@ -1926,12 +2023,27 @@ usr/lib/python2.7/lib-dynload/zlib.so
 #usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.py
 #usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.pyc
 #usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.pyo
 #usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.py
 #usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyc
 #usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyo
 #usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.py
 #usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyc
 #usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.pyo
 #usr/lib/python2.7/lib-tk/test/test_ttk
 #usr/lib/python2.7/lib-tk/test/test_ttk/__init__.py
 #usr/lib/python2.7/lib-tk/test/test_ttk/__init__.pyc
@@ -1951,6 +2063,9 @@ usr/lib/python2.7/lib-dynload/zlib.so
 #usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.py
 #usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.pyc
 #usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.pyo
+#usr/lib/python2.7/lib-tk/test/widget_tests.py
+#usr/lib/python2.7/lib-tk/test/widget_tests.pyc
+#usr/lib/python2.7/lib-tk/test/widget_tests.pyo
 #usr/lib/python2.7/lib-tk/tkColorChooser.py
 #usr/lib/python2.7/lib-tk/tkColorChooser.pyc
 #usr/lib/python2.7/lib-tk/tkColorChooser.pyo
@@ -1977,9 +2092,9 @@ usr/lib/python2.7/lib-dynload/zlib.so
 #usr/lib/python2.7/lib-tk/turtle.pyo
 #usr/lib/python2.7/lib2to3
 #usr/lib/python2.7/lib2to3/Grammar.txt
-#usr/lib/python2.7/lib2to3/Grammar2.7.3.final.0.pickle
+#usr/lib/python2.7/lib2to3/Grammar2.7.10.final.0.pickle
 #usr/lib/python2.7/lib2to3/PatternGrammar.txt
-#usr/lib/python2.7/lib2to3/PatternGrammar2.7.3.final.0.pickle
+#usr/lib/python2.7/lib2to3/PatternGrammar2.7.10.final.0.pickle
 #usr/lib/python2.7/lib2to3/__init__.py
 #usr/lib/python2.7/lib2to3/__init__.pyc
 #usr/lib/python2.7/lib2to3/__init__.pyo
@@ -2005,6 +2120,9 @@ usr/lib/python2.7/lib-dynload/zlib.so
 #usr/lib/python2.7/lib2to3/fixes/fix_apply.py
 #usr/lib/python2.7/lib2to3/fixes/fix_apply.pyc
 #usr/lib/python2.7/lib2to3/fixes/fix_apply.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.py
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.pyo
 #usr/lib/python2.7/lib2to3/fixes/fix_basestring.py
 #usr/lib/python2.7/lib2to3/fixes/fix_basestring.pyc
 #usr/lib/python2.7/lib2to3/fixes/fix_basestring.pyo
@@ -2207,6 +2325,7 @@ usr/lib/python2.7/lib-dynload/zlib.so
 #usr/lib/python2.7/lib2to3/tests/data/bom.py
 #usr/lib/python2.7/lib2to3/tests/data/crlf.py
 #usr/lib/python2.7/lib2to3/tests/data/different_encoding.py
+#usr/lib/python2.7/lib2to3/tests/data/false_encoding.py
 #usr/lib/python2.7/lib2to3/tests/data/fixers
 #usr/lib/python2.7/lib2to3/tests/data/fixers/bad_order.py
 #usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes
@@ -2628,12 +2747,33 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/__init__.py
 #usr/lib/python2.7/test/__init__.pyc
 #usr/lib/python2.7/test/__init__.pyo
+#usr/lib/python2.7/test/_mock_backport.py
+#usr/lib/python2.7/test/_mock_backport.pyc
+#usr/lib/python2.7/test/_mock_backport.pyo
+#usr/lib/python2.7/test/audiodata
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm24.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm24.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.wav
+#usr/lib/python2.7/test/audiodata/pluck-ulaw.aifc
+#usr/lib/python2.7/test/audiodata/pluck-ulaw.au
 #usr/lib/python2.7/test/audiotest.au
+#usr/lib/python2.7/test/audiotests.py
+#usr/lib/python2.7/test/audiotests.pyc
+#usr/lib/python2.7/test/audiotests.pyo
 #usr/lib/python2.7/test/autotest.py
 #usr/lib/python2.7/test/autotest.pyc
 #usr/lib/python2.7/test/autotest.pyo
 #usr/lib/python2.7/test/bad_coding.py
 #usr/lib/python2.7/test/bad_coding2.py
+#usr/lib/python2.7/test/bad_coding3.py
 #usr/lib/python2.7/test/badcert.pem
 #usr/lib/python2.7/test/badkey.pem
 #usr/lib/python2.7/test/badsyntax_future3.py
@@ -2647,6 +2787,11 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/buffer_tests.py
 #usr/lib/python2.7/test/buffer_tests.pyc
 #usr/lib/python2.7/test/buffer_tests.pyo
+#usr/lib/python2.7/test/capath
+#usr/lib/python2.7/test/capath/4e1295a3.0
+#usr/lib/python2.7/test/capath/5ed36f99.0
+#usr/lib/python2.7/test/capath/6e88d7b8.0
+#usr/lib/python2.7/test/capath/99d0fa06.0
 #usr/lib/python2.7/test/cfgparser.1
 #usr/lib/python2.7/test/check_soundcard.vbs
 #usr/lib/python2.7/test/cjkencodings
@@ -2830,6 +2975,7 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/decimaltestdata/tointegral.decTest
 #usr/lib/python2.7/test/decimaltestdata/tointegralx.decTest
 #usr/lib/python2.7/test/decimaltestdata/xor.decTest
+#usr/lib/python2.7/test/dh1024.pem
 #usr/lib/python2.7/test/doctest_aliases.py
 #usr/lib/python2.7/test/doctest_aliases.pyc
 #usr/lib/python2.7/test/doctest_aliases.pyo
@@ -2849,6 +2995,18 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/greyrgb.uue
 #usr/lib/python2.7/test/https_svn_python_org_root.pem
 #usr/lib/python2.7/test/ieee754.txt
+#usr/lib/python2.7/test/imghdrdata
+#usr/lib/python2.7/test/imghdrdata/python.bmp
+#usr/lib/python2.7/test/imghdrdata/python.gif
+#usr/lib/python2.7/test/imghdrdata/python.jpg
+#usr/lib/python2.7/test/imghdrdata/python.pbm
+#usr/lib/python2.7/test/imghdrdata/python.pgm
+#usr/lib/python2.7/test/imghdrdata/python.png
+#usr/lib/python2.7/test/imghdrdata/python.ppm
+#usr/lib/python2.7/test/imghdrdata/python.ras
+#usr/lib/python2.7/test/imghdrdata/python.sgi
+#usr/lib/python2.7/test/imghdrdata/python.tiff
+#usr/lib/python2.7/test/imghdrdata/python.xbm
 #usr/lib/python2.7/test/infinite_reload.py
 #usr/lib/python2.7/test/infinite_reload.pyc
 #usr/lib/python2.7/test/infinite_reload.pyo
@@ -2858,18 +3016,29 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/inspect_fodder2.py
 #usr/lib/python2.7/test/inspect_fodder2.pyc
 #usr/lib/python2.7/test/inspect_fodder2.pyo
+#usr/lib/python2.7/test/keycert.passwd.pem
 #usr/lib/python2.7/test/keycert.pem
+#usr/lib/python2.7/test/keycert2.pem
+#usr/lib/python2.7/test/keycert3.pem
+#usr/lib/python2.7/test/keycert4.pem
 #usr/lib/python2.7/test/list_tests.py
 #usr/lib/python2.7/test/list_tests.pyc
 #usr/lib/python2.7/test/list_tests.pyo
 #usr/lib/python2.7/test/lock_tests.py
 #usr/lib/python2.7/test/lock_tests.pyc
 #usr/lib/python2.7/test/lock_tests.pyo
+#usr/lib/python2.7/test/make_ssl_certs.py
+#usr/lib/python2.7/test/make_ssl_certs.pyc
+#usr/lib/python2.7/test/make_ssl_certs.pyo
 #usr/lib/python2.7/test/mapping_tests.py
 #usr/lib/python2.7/test/mapping_tests.pyc
 #usr/lib/python2.7/test/mapping_tests.pyo
 #usr/lib/python2.7/test/math_testcases.txt
+#usr/lib/python2.7/test/mp_fork_bomb.py
+#usr/lib/python2.7/test/mp_fork_bomb.pyc
+#usr/lib/python2.7/test/mp_fork_bomb.pyo
 #usr/lib/python2.7/test/nokia.pem
+#usr/lib/python2.7/test/nullbytecert.pem
 #usr/lib/python2.7/test/nullcert.pem
 #usr/lib/python2.7/test/outstanding_bugs.py
 #usr/lib/python2.7/test/outstanding_bugs.pyc
@@ -2880,6 +3049,7 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/profilee.py
 #usr/lib/python2.7/test/profilee.pyc
 #usr/lib/python2.7/test/profilee.pyo
+#usr/lib/python2.7/test/pycacert.pem
 #usr/lib/python2.7/test/pyclbr_input.py
 #usr/lib/python2.7/test/pyclbr_input.pyc
 #usr/lib/python2.7/test/pyclbr_input.pyo
@@ -2907,12 +3077,20 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/reperf.py
 #usr/lib/python2.7/test/reperf.pyc
 #usr/lib/python2.7/test/reperf.pyo
+#usr/lib/python2.7/test/revocation.crl
 #usr/lib/python2.7/test/sample_doctest.py
 #usr/lib/python2.7/test/sample_doctest.pyc
 #usr/lib/python2.7/test/sample_doctest.pyo
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.py
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.pyc
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.pyo
+#usr/lib/python2.7/test/sample_doctest_no_doctests.py
+#usr/lib/python2.7/test/sample_doctest_no_doctests.pyc
+#usr/lib/python2.7/test/sample_doctest_no_doctests.pyo
 #usr/lib/python2.7/test/script_helper.py
 #usr/lib/python2.7/test/script_helper.pyc
 #usr/lib/python2.7/test/script_helper.pyo
+#usr/lib/python2.7/test/selfsigned_pythontestdotnet.pem
 #usr/lib/python2.7/test/seq_tests.py
 #usr/lib/python2.7/test/seq_tests.pyc
 #usr/lib/python2.7/test/seq_tests.pyo
@@ -2922,7 +3100,11 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/sortperf.pyc
 #usr/lib/python2.7/test/sortperf.pyo
 #usr/lib/python2.7/test/ssl_cert.pem
+#usr/lib/python2.7/test/ssl_key.passwd.pem
 #usr/lib/python2.7/test/ssl_key.pem
+#usr/lib/python2.7/test/ssl_servers.py
+#usr/lib/python2.7/test/ssl_servers.pyc
+#usr/lib/python2.7/test/ssl_servers.pyo
 #usr/lib/python2.7/test/string_tests.py
 #usr/lib/python2.7/test/string_tests.pyc
 #usr/lib/python2.7/test/string_tests.pyo
@@ -2930,6 +3112,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/subprocessdata/sigchild_ignore.py
 #usr/lib/python2.7/test/subprocessdata/sigchild_ignore.pyc
 #usr/lib/python2.7/test/subprocessdata/sigchild_ignore.pyo
+#usr/lib/python2.7/test/symlink_support.py
+#usr/lib/python2.7/test/symlink_support.pyc
+#usr/lib/python2.7/test/symlink_support.pyo
 #usr/lib/python2.7/test/test_MimeWriter.py
 #usr/lib/python2.7/test/test_MimeWriter.pyc
 #usr/lib/python2.7/test/test_MimeWriter.pyo
@@ -2948,6 +3133,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test__locale.py
 #usr/lib/python2.7/test/test__locale.pyc
 #usr/lib/python2.7/test/test__locale.pyo
+#usr/lib/python2.7/test/test__osx_support.py
+#usr/lib/python2.7/test/test__osx_support.pyc
+#usr/lib/python2.7/test/test__osx_support.pyo
 #usr/lib/python2.7/test/test_abc.py
 #usr/lib/python2.7/test/test_abc.pyc
 #usr/lib/python2.7/test/test_abc.pyo
@@ -3280,6 +3468,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_email_renamed.py
 #usr/lib/python2.7/test/test_email_renamed.pyc
 #usr/lib/python2.7/test/test_email_renamed.pyo
+#usr/lib/python2.7/test/test_ensurepip.py
+#usr/lib/python2.7/test/test_ensurepip.pyc
+#usr/lib/python2.7/test/test_ensurepip.pyo
 #usr/lib/python2.7/test/test_enumerate.py
 #usr/lib/python2.7/test/test_enumerate.pyc
 #usr/lib/python2.7/test/test_enumerate.pyo
@@ -3310,6 +3501,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_file2k.py
 #usr/lib/python2.7/test/test_file2k.pyc
 #usr/lib/python2.7/test/test_file2k.pyo
+#usr/lib/python2.7/test/test_file_eintr.py
+#usr/lib/python2.7/test/test_file_eintr.pyc
+#usr/lib/python2.7/test/test_file_eintr.pyo
 #usr/lib/python2.7/test/test_filecmp.py
 #usr/lib/python2.7/test/test_filecmp.pyc
 #usr/lib/python2.7/test/test_filecmp.pyo
@@ -3445,6 +3639,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_httpservers.py
 #usr/lib/python2.7/test/test_httpservers.pyc
 #usr/lib/python2.7/test/test_httpservers.pyo
+#usr/lib/python2.7/test/test_idle.py
+#usr/lib/python2.7/test/test_idle.pyc
+#usr/lib/python2.7/test/test_idle.pyo
 #usr/lib/python2.7/test/test_imageop.py
 #usr/lib/python2.7/test/test_imageop.pyc
 #usr/lib/python2.7/test/test_imageop.pyo
@@ -3454,6 +3651,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_imgfile.py
 #usr/lib/python2.7/test/test_imgfile.pyc
 #usr/lib/python2.7/test/test_imgfile.pyo
+#usr/lib/python2.7/test/test_imghdr.py
+#usr/lib/python2.7/test/test_imghdr.pyc
+#usr/lib/python2.7/test/test_imghdr.pyo
 #usr/lib/python2.7/test/test_imp.py
 #usr/lib/python2.7/test/test_imp.pyc
 #usr/lib/python2.7/test/test_imp.pyo
@@ -3541,6 +3741,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_macpath.py
 #usr/lib/python2.7/test/test_macpath.pyc
 #usr/lib/python2.7/test/test_macpath.pyo
+#usr/lib/python2.7/test/test_macurl2path.py
+#usr/lib/python2.7/test/test_macurl2path.pyc
+#usr/lib/python2.7/test/test_macurl2path.pyo
 #usr/lib/python2.7/test/test_mailbox.py
 #usr/lib/python2.7/test/test_mailbox.pyc
 #usr/lib/python2.7/test/test_mailbox.pyo
@@ -3610,6 +3813,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_nis.py
 #usr/lib/python2.7/test/test_nis.pyc
 #usr/lib/python2.7/test/test_nis.pyo
+#usr/lib/python2.7/test/test_nntplib.py
+#usr/lib/python2.7/test/test_nntplib.pyc
+#usr/lib/python2.7/test/test_nntplib.pyo
 #usr/lib/python2.7/test/test_normalization.py
 #usr/lib/python2.7/test/test_normalization.pyc
 #usr/lib/python2.7/test/test_normalization.pyo
@@ -3841,6 +4047,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_sort.py
 #usr/lib/python2.7/test/test_sort.pyc
 #usr/lib/python2.7/test/test_sort.pyo
+#usr/lib/python2.7/test/test_spwd.py
+#usr/lib/python2.7/test/test_spwd.pyc
+#usr/lib/python2.7/test/test_spwd.pyo
 #usr/lib/python2.7/test/test_sqlite.py
 #usr/lib/python2.7/test/test_sqlite.pyc
 #usr/lib/python2.7/test/test_sqlite.pyo
@@ -3850,6 +4059,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_startfile.py
 #usr/lib/python2.7/test/test_startfile.pyc
 #usr/lib/python2.7/test/test_startfile.pyo
+#usr/lib/python2.7/test/test_stat.py
+#usr/lib/python2.7/test/test_stat.pyc
+#usr/lib/python2.7/test/test_stat.pyo
 #usr/lib/python2.7/test/test_str.py
 #usr/lib/python2.7/test/test_str.pyc
 #usr/lib/python2.7/test/test_str.pyo
@@ -3883,6 +4095,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_subprocess.py
 #usr/lib/python2.7/test/test_subprocess.pyc
 #usr/lib/python2.7/test/test_subprocess.pyo
+#usr/lib/python2.7/test/test_sunau.py
+#usr/lib/python2.7/test/test_sunau.pyc
+#usr/lib/python2.7/test/test_sunau.pyo
 #usr/lib/python2.7/test/test_sunaudiodev.py
 #usr/lib/python2.7/test/test_sunaudiodev.pyc
 #usr/lib/python2.7/test/test_sunaudiodev.pyo
@@ -3946,6 +4161,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_time.py
 #usr/lib/python2.7/test/test_time.pyc
 #usr/lib/python2.7/test/test_time.pyo
+#usr/lib/python2.7/test/test_timeit.py
+#usr/lib/python2.7/test/test_timeit.pyc
+#usr/lib/python2.7/test/test_timeit.pyo
 #usr/lib/python2.7/test/test_timeout.py
 #usr/lib/python2.7/test/test_timeout.pyc
 #usr/lib/python2.7/test/test_timeout.pyo
@@ -3955,6 +4173,9 @@ usr/lib/python2.7/tempfile.pyc
 #usr/lib/python2.7/test/test_tokenize.py
 #usr/lib/python2.7/test/test_tokenize.pyc
 #usr/lib/python2.7/test/test_tokenize.pyo
+#usr/lib/python2.7/test/test_tools.py
+#usr/lib/python2.7/test/test_tools.pyc
+#usr/lib/python2.7/test/test_tools.pyo
 #usr/lib/python2.7/test/test_trace.py
 #usr/lib/python2.7/test/test_trace.pyc
 #usr/lib/python2.7/test/test_trace.pyo
@@ -4400,4 +4621,6 @@ usr/lib/python2.7/xmlrpclib.pyc
 #usr/lib/python2.7/zipfile.py
 usr/lib/python2.7/zipfile.pyc
 #usr/lib/python2.7/zipfile.pyo
+#usr/share/man/man1/python.1
+#usr/share/man/man1/python2.1
 #usr/share/man/man1/python2.7.1
index 9599f6d1375f2b6ded376e449ef9b2063e23ab0c..74b4acfccd8e85b57f9e45c4492d6e203a855fd7 100644 (file)
@@ -1 +1,2 @@
 usr/sbin/arping
+#usr/share/man/man8/arping.8
diff --git a/config/rootfiles/common/ca-certificates b/config/rootfiles/common/ca-certificates
new file mode 100644 (file)
index 0000000..087c3e4
--- /dev/null
@@ -0,0 +1,4 @@
+etc/ssl/cert.pem
+#etc/ssl/certs
+etc/ssl/certs/ca-bundle.crt
+etc/ssl/certs/ca-bundle.trust.crt
diff --git a/config/rootfiles/common/chkconfig b/config/rootfiles/common/chkconfig
new file mode 100644 (file)
index 0000000..0468d2f
--- /dev/null
@@ -0,0 +1,4 @@
+#etc/alternatives
+usr/sbin/alternatives
+usr/sbin/update-alternatives
+#var/lib/alternatives
index 069d0c4f6d94f8e054ba8f47773d2719421df6d4..a0ae9423f63daf9d1518f829d082b617750ecc5c 100644 (file)
 #usr/bin/cmake
 #usr/bin/cpack
 #usr/bin/ctest
-#usr/doc
-#usr/doc/cmake-2.6
-#usr/doc/cmake-2.6/ccmake.docbook
-#usr/doc/cmake-2.6/ccmake.html
-#usr/doc/cmake-2.6/ccmake.txt
-#usr/doc/cmake-2.6/cmake-commands.html
-#usr/doc/cmake-2.6/cmake-commands.txt
-#usr/doc/cmake-2.6/cmake-compatcommands.html
-#usr/doc/cmake-2.6/cmake-compatcommands.txt
-#usr/doc/cmake-2.6/cmake-modules.html
-#usr/doc/cmake-2.6/cmake-modules.txt
-#usr/doc/cmake-2.6/cmake-policies.html
-#usr/doc/cmake-2.6/cmake-policies.txt
-#usr/doc/cmake-2.6/cmake-properties.html
-#usr/doc/cmake-2.6/cmake-properties.txt
-#usr/doc/cmake-2.6/cmake-variables.html
-#usr/doc/cmake-2.6/cmake-variables.txt
-#usr/doc/cmake-2.6/cmake.docbook
-#usr/doc/cmake-2.6/cmake.html
-#usr/doc/cmake-2.6/cmake.txt
-#usr/doc/cmake-2.6/cpack.docbook
-#usr/doc/cmake-2.6/cpack.html
-#usr/doc/cmake-2.6/cpack.txt
-#usr/doc/cmake-2.6/ctest.docbook
-#usr/doc/cmake-2.6/ctest.html
-#usr/doc/cmake-2.6/ctest.txt
-#usr/man/man1/ccmake.1
-#usr/man/man1/cmake.1
-#usr/man/man1/cmakecommands.1
-#usr/man/man1/cmakecompat.1
-#usr/man/man1/cmakemodules.1
-#usr/man/man1/cmakepolicies.1
-#usr/man/man1/cmakeprops.1
-#usr/man/man1/cmakevars.1
-#usr/man/man1/cpack.1
-#usr/man/man1/ctest.1
-#usr/share/cmake-2.6
-#usr/share/cmake-2.6/Modules
-#usr/share/cmake-2.6/Modules/AddFileDependencies.cmake
-#usr/share/cmake-2.6/Modules/BundleUtilities.cmake
-#usr/share/cmake-2.6/Modules/CMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeASM-ATTInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeASMCompiler.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeASMInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeASM_MASMInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeBackwardCompatibilityC.cmake
-#usr/share/cmake-2.6/Modules/CMakeBackwardCompatibilityCXX.cmake
-#usr/share/cmake-2.6/Modules/CMakeBorlandFindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeBuildSettings.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeCCompiler.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeCCompilerABI.c
-#usr/share/cmake-2.6/Modules/CMakeCCompilerId.c.in
-#usr/share/cmake-2.6/Modules/CMakeCInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeCXXCompiler.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeCXXCompilerABI.cpp
-#usr/share/cmake-2.6/Modules/CMakeCXXCompilerId.cpp.in
-#usr/share/cmake-2.6/Modules/CMakeCXXInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeCommonLanguageInclude.cmake
-#usr/share/cmake-2.6/Modules/CMakeCompilerABI.h
-#usr/share/cmake-2.6/Modules/CMakeConfigurableFile.in
-#usr/share/cmake-2.6/Modules/CMakeDependentOption.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineASM-ATTCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineASMCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineASM_MASMCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineCCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineCXXCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineCompilerABI.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineCompilerId.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineFortranCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineJavaCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineRCCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeDetermineSystem.cmake
-#usr/share/cmake-2.6/Modules/CMakeExportBuildSettings.cmake
-#usr/share/cmake-2.6/Modules/CMakeFindBinUtils.cmake
-#usr/share/cmake-2.6/Modules/CMakeFindFrameworks.cmake
-#usr/share/cmake-2.6/Modules/CMakeFindWMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeFindXCode.cmake
-#usr/share/cmake-2.6/Modules/CMakeForceCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeFortranCompiler.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeFortranCompilerId.F90.in
-#usr/share/cmake-2.6/Modules/CMakeFortranInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeGenericSystem.cmake
-#usr/share/cmake-2.6/Modules/CMakeImportBuildSettings.cmake
-#usr/share/cmake-2.6/Modules/CMakeJavaCompiler.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeJavaInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeMSYSFindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeMinGWFindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeNMakeFindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakePlatformId.h.in
-#usr/share/cmake-2.6/Modules/CMakePrintSystemInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeRCCompiler.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeRCInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeSystem.cmake.in
-#usr/share/cmake-2.6/Modules/CMakeSystemSpecificInformation.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestASM-ATTCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestASMCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestASM_MASMCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestCCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestCXXCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestForFreeVC.cxx
-#usr/share/cmake-2.6/Modules/CMakeTestFortranCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestGNU.c
-#usr/share/cmake-2.6/Modules/CMakeTestJavaCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeTestNMakeCLVersion.c
-#usr/share/cmake-2.6/Modules/CMakeTestRCCompiler.cmake
-#usr/share/cmake-2.6/Modules/CMakeUnixFindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeVS6BackwardCompatibility.cmake
-#usr/share/cmake-2.6/Modules/CMakeVS6FindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeVS71FindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeVS7BackwardCompatibility.cmake
-#usr/share/cmake-2.6/Modules/CMakeVS7FindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeVS8FindMake.cmake
-#usr/share/cmake-2.6/Modules/CMakeVS9FindMake.cmake
-#usr/share/cmake-2.6/Modules/CPack.DS_Store.in
-#usr/share/cmake-2.6/Modules/CPack.Description.plist.in
-#usr/share/cmake-2.6/Modules/CPack.Info.plist.in
-#usr/share/cmake-2.6/Modules/CPack.OSXScriptLauncher.in
-#usr/share/cmake-2.6/Modules/CPack.OSXScriptLauncher.rsrc.in
-#usr/share/cmake-2.6/Modules/CPack.OSXX11.Info.plist.in
-#usr/share/cmake-2.6/Modules/CPack.OSXX11.main.scpt.in
-#usr/share/cmake-2.6/Modules/CPack.RuntimeScript.in
-#usr/share/cmake-2.6/Modules/CPack.STGZ_Header.sh.in
-#usr/share/cmake-2.6/Modules/CPack.VolumeIcon.icns.in
-#usr/share/cmake-2.6/Modules/CPack.background.png.in
-#usr/share/cmake-2.6/Modules/CPack.cmake
-#usr/share/cmake-2.6/Modules/CPack.distribution.dist.in
-#usr/share/cmake-2.6/Modules/CPackDeb.cmake
-#usr/share/cmake-2.6/Modules/CPackRPM.cmake
-#usr/share/cmake-2.6/Modules/CPackZIP.cmake
-#usr/share/cmake-2.6/Modules/CTest.cmake
-#usr/share/cmake-2.6/Modules/CTestTargets.cmake
-#usr/share/cmake-2.6/Modules/CheckCCompilerFlag.cmake
-#usr/share/cmake-2.6/Modules/CheckCSourceCompiles.cmake
-#usr/share/cmake-2.6/Modules/CheckCSourceRuns.cmake
-#usr/share/cmake-2.6/Modules/CheckCXXCompilerFlag.cmake
-#usr/share/cmake-2.6/Modules/CheckCXXSourceCompiles.cmake
-#usr/share/cmake-2.6/Modules/CheckCXXSourceRuns.cmake
-#usr/share/cmake-2.6/Modules/CheckForPthreads.c
-#usr/share/cmake-2.6/Modules/CheckFortranFunctionExists.cmake
-#usr/share/cmake-2.6/Modules/CheckFunctionExists.c
-#usr/share/cmake-2.6/Modules/CheckFunctionExists.cmake
-#usr/share/cmake-2.6/Modules/CheckIncludeFile.c.in
-#usr/share/cmake-2.6/Modules/CheckIncludeFile.cmake
-#usr/share/cmake-2.6/Modules/CheckIncludeFile.cxx.in
-#usr/share/cmake-2.6/Modules/CheckIncludeFileCXX.cmake
-#usr/share/cmake-2.6/Modules/CheckIncludeFiles.cmake
-#usr/share/cmake-2.6/Modules/CheckLibraryExists.cmake
-#usr/share/cmake-2.6/Modules/CheckLibraryExists.lists.in
-#usr/share/cmake-2.6/Modules/CheckSizeOf.cmake
-#usr/share/cmake-2.6/Modules/CheckStructHasMember.cmake
-#usr/share/cmake-2.6/Modules/CheckSymbolExists.cmake
-#usr/share/cmake-2.6/Modules/CheckTypeSize.cmake
-#usr/share/cmake-2.6/Modules/CheckTypeSizeC.c.in
-#usr/share/cmake-2.6/Modules/CheckVariableExists.c
-#usr/share/cmake-2.6/Modules/CheckVariableExists.cmake
-#usr/share/cmake-2.6/Modules/Dart.cmake
-#usr/share/cmake-2.6/Modules/DartConfiguration.tcl.in
-#usr/share/cmake-2.6/Modules/Documentation.cmake
-#usr/share/cmake-2.6/Modules/DummyCXXFile.cxx
-#usr/share/cmake-2.6/Modules/FLTKCompatibility.cmake
-#usr/share/cmake-2.6/Modules/FeatureSummary.cmake
-#usr/share/cmake-2.6/Modules/FindASPELL.cmake
-#usr/share/cmake-2.6/Modules/FindAVIFile.cmake
-#usr/share/cmake-2.6/Modules/FindBLAS.cmake
-#usr/share/cmake-2.6/Modules/FindBZip2.cmake
-#usr/share/cmake-2.6/Modules/FindBoost.cmake
-#usr/share/cmake-2.6/Modules/FindCABLE.cmake
-#usr/share/cmake-2.6/Modules/FindCURL.cmake
-#usr/share/cmake-2.6/Modules/FindCVS.cmake
-#usr/share/cmake-2.6/Modules/FindCoin3D.cmake
-#usr/share/cmake-2.6/Modules/FindCups.cmake
-#usr/share/cmake-2.6/Modules/FindCurses.cmake
-#usr/share/cmake-2.6/Modules/FindCxxTest.cmake
-#usr/share/cmake-2.6/Modules/FindCygwin.cmake
-#usr/share/cmake-2.6/Modules/FindDCMTK.cmake
-#usr/share/cmake-2.6/Modules/FindDart.cmake
-#usr/share/cmake-2.6/Modules/FindDevIL.cmake
-#usr/share/cmake-2.6/Modules/FindDoxygen.cmake
-#usr/share/cmake-2.6/Modules/FindEXPAT.cmake
-#usr/share/cmake-2.6/Modules/FindFLTK.cmake
-#usr/share/cmake-2.6/Modules/FindFLTK2.cmake
-#usr/share/cmake-2.6/Modules/FindFreetype.cmake
-#usr/share/cmake-2.6/Modules/FindGCCXML.cmake
-#usr/share/cmake-2.6/Modules/FindGDAL.cmake
-#usr/share/cmake-2.6/Modules/FindGIF.cmake
-#usr/share/cmake-2.6/Modules/FindGLU.cmake
-#usr/share/cmake-2.6/Modules/FindGLUT.cmake
-#usr/share/cmake-2.6/Modules/FindGTK.cmake
-#usr/share/cmake-2.6/Modules/FindGettext.cmake
-#usr/share/cmake-2.6/Modules/FindGnuplot.cmake
-#usr/share/cmake-2.6/Modules/FindHSPELL.cmake
-#usr/share/cmake-2.6/Modules/FindHTMLHelp.cmake
-#usr/share/cmake-2.6/Modules/FindITK.cmake
-#usr/share/cmake-2.6/Modules/FindImageMagick.cmake
-#usr/share/cmake-2.6/Modules/FindJNI.cmake
-#usr/share/cmake-2.6/Modules/FindJPEG.cmake
-#usr/share/cmake-2.6/Modules/FindJasper.cmake
-#usr/share/cmake-2.6/Modules/FindJava.cmake
-#usr/share/cmake-2.6/Modules/FindKDE3.cmake
-#usr/share/cmake-2.6/Modules/FindKDE4.cmake
-#usr/share/cmake-2.6/Modules/FindLAPACK.cmake
-#usr/share/cmake-2.6/Modules/FindLATEX.cmake
-#usr/share/cmake-2.6/Modules/FindLibXml2.cmake
-#usr/share/cmake-2.6/Modules/FindLibXslt.cmake
-#usr/share/cmake-2.6/Modules/FindLua50.cmake
-#usr/share/cmake-2.6/Modules/FindLua51.cmake
-#usr/share/cmake-2.6/Modules/FindMFC.cmake
-#usr/share/cmake-2.6/Modules/FindMPEG.cmake
-#usr/share/cmake-2.6/Modules/FindMPEG2.cmake
-#usr/share/cmake-2.6/Modules/FindMPI.cmake
-#usr/share/cmake-2.6/Modules/FindMatlab.cmake
-#usr/share/cmake-2.6/Modules/FindMotif.cmake
-#usr/share/cmake-2.6/Modules/FindOpenAL.cmake
-#usr/share/cmake-2.6/Modules/FindOpenGL.cmake
-#usr/share/cmake-2.6/Modules/FindOpenMP.cmake
-#usr/share/cmake-2.6/Modules/FindOpenSSL.cmake
-#usr/share/cmake-2.6/Modules/FindOpenSceneGraph.cmake
-#usr/share/cmake-2.6/Modules/FindOpenThreads.cmake
-#usr/share/cmake-2.6/Modules/FindPHP4.cmake
-#usr/share/cmake-2.6/Modules/FindPNG.cmake
-#usr/share/cmake-2.6/Modules/FindPackageHandleStandardArgs.cmake
-#usr/share/cmake-2.6/Modules/FindPackageMessage.cmake
-#usr/share/cmake-2.6/Modules/FindPerl.cmake
-#usr/share/cmake-2.6/Modules/FindPerlLibs.cmake
-#usr/share/cmake-2.6/Modules/FindPhysFS.cmake
-#usr/share/cmake-2.6/Modules/FindPike.cmake
-#usr/share/cmake-2.6/Modules/FindPkgConfig.cmake
-#usr/share/cmake-2.6/Modules/FindProducer.cmake
-#usr/share/cmake-2.6/Modules/FindPythonInterp.cmake
-#usr/share/cmake-2.6/Modules/FindPythonLibs.cmake
-#usr/share/cmake-2.6/Modules/FindQt.cmake
-#usr/share/cmake-2.6/Modules/FindQt3.cmake
-#usr/share/cmake-2.6/Modules/FindQt4.cmake
-#usr/share/cmake-2.6/Modules/FindQuickTime.cmake
-#usr/share/cmake-2.6/Modules/FindRTI.cmake
-#usr/share/cmake-2.6/Modules/FindRuby.cmake
-#usr/share/cmake-2.6/Modules/FindSDL.cmake
-#usr/share/cmake-2.6/Modules/FindSDL_image.cmake
-#usr/share/cmake-2.6/Modules/FindSDL_mixer.cmake
-#usr/share/cmake-2.6/Modules/FindSDL_net.cmake
-#usr/share/cmake-2.6/Modules/FindSDL_sound.cmake
-#usr/share/cmake-2.6/Modules/FindSDL_ttf.cmake
-#usr/share/cmake-2.6/Modules/FindSWIG.cmake
-#usr/share/cmake-2.6/Modules/FindSelfPackers.cmake
-#usr/share/cmake-2.6/Modules/FindSquish.cmake
-#usr/share/cmake-2.6/Modules/FindSubversion.cmake
-#usr/share/cmake-2.6/Modules/FindTCL.cmake
-#usr/share/cmake-2.6/Modules/FindTIFF.cmake
-#usr/share/cmake-2.6/Modules/FindTclStub.cmake
-#usr/share/cmake-2.6/Modules/FindTclsh.cmake
-#usr/share/cmake-2.6/Modules/FindThreads.cmake
-#usr/share/cmake-2.6/Modules/FindUnixCommands.cmake
-#usr/share/cmake-2.6/Modules/FindVTK.cmake
-#usr/share/cmake-2.6/Modules/FindWget.cmake
-#usr/share/cmake-2.6/Modules/FindWish.cmake
-#usr/share/cmake-2.6/Modules/FindX11.cmake
-#usr/share/cmake-2.6/Modules/FindXMLRPC.cmake
-#usr/share/cmake-2.6/Modules/FindZLIB.cmake
-#usr/share/cmake-2.6/Modules/Findosg.cmake
-#usr/share/cmake-2.6/Modules/FindosgAnimation.cmake
-#usr/share/cmake-2.6/Modules/FindosgDB.cmake
-#usr/share/cmake-2.6/Modules/FindosgFX.cmake
-#usr/share/cmake-2.6/Modules/FindosgGA.cmake
-#usr/share/cmake-2.6/Modules/FindosgIntrospection.cmake
-#usr/share/cmake-2.6/Modules/FindosgManipulator.cmake
-#usr/share/cmake-2.6/Modules/FindosgParticle.cmake
-#usr/share/cmake-2.6/Modules/FindosgProducer.cmake
-#usr/share/cmake-2.6/Modules/FindosgShadow.cmake
-#usr/share/cmake-2.6/Modules/FindosgSim.cmake
-#usr/share/cmake-2.6/Modules/FindosgTerrain.cmake
-#usr/share/cmake-2.6/Modules/FindosgText.cmake
-#usr/share/cmake-2.6/Modules/FindosgUtil.cmake
-#usr/share/cmake-2.6/Modules/FindosgViewer.cmake
-#usr/share/cmake-2.6/Modules/FindosgVolume.cmake
-#usr/share/cmake-2.6/Modules/FindosgWidget.cmake
-#usr/share/cmake-2.6/Modules/Findosg_functions.cmake
-#usr/share/cmake-2.6/Modules/FindwxWidgets.cmake
-#usr/share/cmake-2.6/Modules/FindwxWindows.cmake
-#usr/share/cmake-2.6/Modules/FortranCInterface.cmake
-#usr/share/cmake-2.6/Modules/FortranCInterface.h.in
-#usr/share/cmake-2.6/Modules/GetPrerequisites.cmake
-#usr/share/cmake-2.6/Modules/ITKCompatibility.cmake
-#usr/share/cmake-2.6/Modules/InstallRequiredSystemLibraries.cmake
-#usr/share/cmake-2.6/Modules/KDE3Macros.cmake
-#usr/share/cmake-2.6/Modules/MacOSXBundleInfo.plist.in
-#usr/share/cmake-2.6/Modules/MacOSXFrameworkInfo.plist.in
-#usr/share/cmake-2.6/Modules/MacroAddFileDependencies.cmake
-#usr/share/cmake-2.6/Modules/NSIS.InstallOptions.ini.in
-#usr/share/cmake-2.6/Modules/NSIS.template.in
-#usr/share/cmake-2.6/Modules/Platform
-#usr/share/cmake-2.6/Modules/Platform/AIX-VisualAge-Fortran.cmake
-#usr/share/cmake-2.6/Modules/Platform/AIX.cmake
-#usr/share/cmake-2.6/Modules/Platform/BSDOS.cmake
-#usr/share/cmake-2.6/Modules/Platform/BeOS.cmake
-#usr/share/cmake-2.6/Modules/Platform/BlueGeneL.cmake
-#usr/share/cmake-2.6/Modules/Platform/CYGWIN-g77.cmake
-#usr/share/cmake-2.6/Modules/Platform/CYGWIN.cmake
-#usr/share/cmake-2.6/Modules/Platform/Catamount.cmake
-#usr/share/cmake-2.6/Modules/Platform/Darwin-icc.cmake
-#usr/share/cmake-2.6/Modules/Platform/Darwin-icpc.cmake
-#usr/share/cmake-2.6/Modules/Platform/Darwin-xlc.cmake
-#usr/share/cmake-2.6/Modules/Platform/Darwin.cmake
-#usr/share/cmake-2.6/Modules/Platform/DragonFly.cmake
-#usr/share/cmake-2.6/Modules/Platform/FreeBSD.cmake
-#usr/share/cmake-2.6/Modules/Platform/GNU.cmake
-#usr/share/cmake-2.6/Modules/Platform/Generic-ADSP-ASM.cmake
-#usr/share/cmake-2.6/Modules/Platform/Generic-ADSP-C.cmake
-#usr/share/cmake-2.6/Modules/Platform/Generic-ADSP-CXX.cmake
-#usr/share/cmake-2.6/Modules/Platform/Generic-ADSP-Common.cmake
-#usr/share/cmake-2.6/Modules/Platform/Generic-SDCC-C.cmake
-#usr/share/cmake-2.6/Modules/Platform/Generic.cmake
-#usr/share/cmake-2.6/Modules/Platform/HP-UX.cmake
-#usr/share/cmake-2.6/Modules/Platform/Haiku.cmake
-#usr/share/cmake-2.6/Modules/Platform/IRIX.cmake
-#usr/share/cmake-2.6/Modules/Platform/IRIX64.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-GNU-Fortran.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-Intel-C.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-Intel-CXX.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-Intel-Fortran.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-PGI-C.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-PGI-CXX.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-PGI-Fortran.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-SunPro-C.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-SunPro-CXX.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-SunPro-Fortran.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-VisualAge-C.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-VisualAge-Fortran.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-como.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-icpc.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux-ifort.cmake
-#usr/share/cmake-2.6/Modules/Platform/Linux.cmake
-#usr/share/cmake-2.6/Modules/Platform/MP-RAS.cmake
-#usr/share/cmake-2.6/Modules/Platform/NetBSD.cmake
-#usr/share/cmake-2.6/Modules/Platform/OSF1.cmake
-#usr/share/cmake-2.6/Modules/Platform/OpenBSD.cmake
-#usr/share/cmake-2.6/Modules/Platform/QNX.cmake
-#usr/share/cmake-2.6/Modules/Platform/RISCos.cmake
-#usr/share/cmake-2.6/Modules/Platform/SCO_SV.cmake
-#usr/share/cmake-2.6/Modules/Platform/SINIX.cmake
-#usr/share/cmake-2.6/Modules/Platform/SunOS-SunPro-Fortran.cmake
-#usr/share/cmake-2.6/Modules/Platform/SunOS.cmake
-#usr/share/cmake-2.6/Modules/Platform/Tru64.cmake
-#usr/share/cmake-2.6/Modules/Platform/ULTRIX.cmake
-#usr/share/cmake-2.6/Modules/Platform/UNIX_SV.cmake
-#usr/share/cmake-2.6/Modules/Platform/UnixPaths.cmake
-#usr/share/cmake-2.6/Modules/Platform/UnixWare.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-bcc32.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-cl.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-cl.cmake.in
-#usr/share/cmake-2.6/Modules/Platform/Windows-df.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-g++.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-g77.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-gcc.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-icl.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-ifort.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows-wcl386.cmake
-#usr/share/cmake-2.6/Modules/Platform/Windows.cmake
-#usr/share/cmake-2.6/Modules/Platform/WindowsPaths.cmake
-#usr/share/cmake-2.6/Modules/Platform/Xenix.cmake
-#usr/share/cmake-2.6/Modules/Platform/cl.cmake
-#usr/share/cmake-2.6/Modules/Platform/eCos.cmake
-#usr/share/cmake-2.6/Modules/Platform/g77.cmake
-#usr/share/cmake-2.6/Modules/Platform/gas.cmake
-#usr/share/cmake-2.6/Modules/Platform/gcc.cmake
-#usr/share/cmake-2.6/Modules/Platform/kFreeBSD.cmake
-#usr/share/cmake-2.6/Modules/Platform/syllable.cmake
-#usr/share/cmake-2.6/Modules/Platform/xlf.cmake
-#usr/share/cmake-2.6/Modules/SquishTestScript.cmake
-#usr/share/cmake-2.6/Modules/SystemInformation.cmake
-#usr/share/cmake-2.6/Modules/SystemInformation.in
-#usr/share/cmake-2.6/Modules/TestBigEndian.cmake
-#usr/share/cmake-2.6/Modules/TestCXXAcceptsFlag.cmake
-#usr/share/cmake-2.6/Modules/TestEndianess.c.in
-#usr/share/cmake-2.6/Modules/TestForANSIForScope.cmake
-#usr/share/cmake-2.6/Modules/TestForANSIStreamHeaders.cmake
-#usr/share/cmake-2.6/Modules/TestForANSIStreamHeaders.cxx
-#usr/share/cmake-2.6/Modules/TestForAnsiForScope.cxx
-#usr/share/cmake-2.6/Modules/TestForSSTREAM.cmake
-#usr/share/cmake-2.6/Modules/TestForSSTREAM.cxx
-#usr/share/cmake-2.6/Modules/TestForSTDNamespace.cmake
-#usr/share/cmake-2.6/Modules/TestForSTDNamespace.cxx
-#usr/share/cmake-2.6/Modules/UseEcos.cmake
-#usr/share/cmake-2.6/Modules/UsePkgConfig.cmake
-#usr/share/cmake-2.6/Modules/UseQt4.cmake
-#usr/share/cmake-2.6/Modules/UseSWIG.cmake
-#usr/share/cmake-2.6/Modules/UseVTK40.cmake
-#usr/share/cmake-2.6/Modules/UseVTKBuildSettings40.cmake
-#usr/share/cmake-2.6/Modules/UseVTKConfig40.cmake
-#usr/share/cmake-2.6/Modules/Use_wxWindows.cmake
-#usr/share/cmake-2.6/Modules/UsewxWidgets.cmake
-#usr/share/cmake-2.6/Modules/VTKCompatibility.cmake
-#usr/share/cmake-2.6/Modules/ecos_clean.cmake
-#usr/share/cmake-2.6/Modules/kde3init_dummy.cpp.in
-#usr/share/cmake-2.6/Modules/kde3uic.cmake
-#usr/share/cmake-2.6/Modules/readme.txt
-#usr/share/cmake-2.6/Templates
-#usr/share/cmake-2.6/Templates/CMakeLists.txt
-#usr/share/cmake-2.6/Templates/CMakeVSMacros1.vsmacros
-#usr/share/cmake-2.6/Templates/CMakeVSMacros2.vsmacros
-#usr/share/cmake-2.6/Templates/CMakeVisualStudio6Configurations.cmake
-#usr/share/cmake-2.6/Templates/CPack.GenericDescription.txt
-#usr/share/cmake-2.6/Templates/CPack.GenericLicense.txt
-#usr/share/cmake-2.6/Templates/CPack.GenericWelcome.txt
-#usr/share/cmake-2.6/Templates/CPackConfig.cmake.in
-#usr/share/cmake-2.6/Templates/CTestScript.cmake.in
-#usr/share/cmake-2.6/Templates/DLLFooter.dsptemplate
-#usr/share/cmake-2.6/Templates/DLLHeader.dsptemplate
-#usr/share/cmake-2.6/Templates/EXEFooter.dsptemplate
-#usr/share/cmake-2.6/Templates/EXEHeader.dsptemplate
-#usr/share/cmake-2.6/Templates/EXEWinHeader.dsptemplate
-#usr/share/cmake-2.6/Templates/TestDriver.cxx.in
-#usr/share/cmake-2.6/Templates/UtilityFooter.dsptemplate
-#usr/share/cmake-2.6/Templates/UtilityHeader.dsptemplate
-#usr/share/cmake-2.6/Templates/cygwin-package.sh.in
-#usr/share/cmake-2.6/Templates/staticLibFooter.dsptemplate
-#usr/share/cmake-2.6/Templates/staticLibHeader.dsptemplate
-#usr/share/cmake-2.6/include
-#usr/share/cmake-2.6/include/cmCPluginAPI.h
+#usr/share/aclocal/cmake.m4
+#usr/share/cmake-3.2
+#usr/share/cmake-3.2/Help
+#usr/share/cmake-3.2/Help/command
+#usr/share/cmake-3.2/Help/command/FIND_XXX.txt
+#usr/share/cmake-3.2/Help/command/FIND_XXX_MAC.txt
+#usr/share/cmake-3.2/Help/command/FIND_XXX_ORDER.txt
+#usr/share/cmake-3.2/Help/command/FIND_XXX_ROOT.txt
+#usr/share/cmake-3.2/Help/command/add_compile_options.rst
+#usr/share/cmake-3.2/Help/command/add_custom_command.rst
+#usr/share/cmake-3.2/Help/command/add_custom_target.rst
+#usr/share/cmake-3.2/Help/command/add_definitions.rst
+#usr/share/cmake-3.2/Help/command/add_dependencies.rst
+#usr/share/cmake-3.2/Help/command/add_executable.rst
+#usr/share/cmake-3.2/Help/command/add_library.rst
+#usr/share/cmake-3.2/Help/command/add_subdirectory.rst
+#usr/share/cmake-3.2/Help/command/add_test.rst
+#usr/share/cmake-3.2/Help/command/aux_source_directory.rst
+#usr/share/cmake-3.2/Help/command/break.rst
+#usr/share/cmake-3.2/Help/command/build_command.rst
+#usr/share/cmake-3.2/Help/command/build_name.rst
+#usr/share/cmake-3.2/Help/command/cmake_host_system_information.rst
+#usr/share/cmake-3.2/Help/command/cmake_minimum_required.rst
+#usr/share/cmake-3.2/Help/command/cmake_policy.rst
+#usr/share/cmake-3.2/Help/command/configure_file.rst
+#usr/share/cmake-3.2/Help/command/continue.rst
+#usr/share/cmake-3.2/Help/command/create_test_sourcelist.rst
+#usr/share/cmake-3.2/Help/command/ctest_build.rst
+#usr/share/cmake-3.2/Help/command/ctest_configure.rst
+#usr/share/cmake-3.2/Help/command/ctest_coverage.rst
+#usr/share/cmake-3.2/Help/command/ctest_empty_binary_directory.rst
+#usr/share/cmake-3.2/Help/command/ctest_memcheck.rst
+#usr/share/cmake-3.2/Help/command/ctest_read_custom_files.rst
+#usr/share/cmake-3.2/Help/command/ctest_run_script.rst
+#usr/share/cmake-3.2/Help/command/ctest_sleep.rst
+#usr/share/cmake-3.2/Help/command/ctest_start.rst
+#usr/share/cmake-3.2/Help/command/ctest_submit.rst
+#usr/share/cmake-3.2/Help/command/ctest_test.rst
+#usr/share/cmake-3.2/Help/command/ctest_update.rst
+#usr/share/cmake-3.2/Help/command/ctest_upload.rst
+#usr/share/cmake-3.2/Help/command/define_property.rst
+#usr/share/cmake-3.2/Help/command/else.rst
+#usr/share/cmake-3.2/Help/command/elseif.rst
+#usr/share/cmake-3.2/Help/command/enable_language.rst
+#usr/share/cmake-3.2/Help/command/enable_testing.rst
+#usr/share/cmake-3.2/Help/command/endforeach.rst
+#usr/share/cmake-3.2/Help/command/endfunction.rst
+#usr/share/cmake-3.2/Help/command/endif.rst
+#usr/share/cmake-3.2/Help/command/endmacro.rst
+#usr/share/cmake-3.2/Help/command/endwhile.rst
+#usr/share/cmake-3.2/Help/command/exec_program.rst
+#usr/share/cmake-3.2/Help/command/execute_process.rst
+#usr/share/cmake-3.2/Help/command/export.rst
+#usr/share/cmake-3.2/Help/command/export_library_dependencies.rst
+#usr/share/cmake-3.2/Help/command/file.rst
+#usr/share/cmake-3.2/Help/command/find_file.rst
+#usr/share/cmake-3.2/Help/command/find_library.rst
+#usr/share/cmake-3.2/Help/command/find_package.rst
+#usr/share/cmake-3.2/Help/command/find_path.rst
+#usr/share/cmake-3.2/Help/command/find_program.rst
+#usr/share/cmake-3.2/Help/command/fltk_wrap_ui.rst
+#usr/share/cmake-3.2/Help/command/foreach.rst
+#usr/share/cmake-3.2/Help/command/function.rst
+#usr/share/cmake-3.2/Help/command/get_cmake_property.rst
+#usr/share/cmake-3.2/Help/command/get_directory_property.rst
+#usr/share/cmake-3.2/Help/command/get_filename_component.rst
+#usr/share/cmake-3.2/Help/command/get_property.rst
+#usr/share/cmake-3.2/Help/command/get_source_file_property.rst
+#usr/share/cmake-3.2/Help/command/get_target_property.rst
+#usr/share/cmake-3.2/Help/command/get_test_property.rst
+#usr/share/cmake-3.2/Help/command/if.rst
+#usr/share/cmake-3.2/Help/command/include.rst
+#usr/share/cmake-3.2/Help/command/include_directories.rst
+#usr/share/cmake-3.2/Help/command/include_external_msproject.rst
+#usr/share/cmake-3.2/Help/command/include_regular_expression.rst
+#usr/share/cmake-3.2/Help/command/install.rst
+#usr/share/cmake-3.2/Help/command/install_files.rst
+#usr/share/cmake-3.2/Help/command/install_programs.rst
+#usr/share/cmake-3.2/Help/command/install_targets.rst
+#usr/share/cmake-3.2/Help/command/link_directories.rst
+#usr/share/cmake-3.2/Help/command/link_libraries.rst
+#usr/share/cmake-3.2/Help/command/list.rst
+#usr/share/cmake-3.2/Help/command/load_cache.rst
+#usr/share/cmake-3.2/Help/command/load_command.rst
+#usr/share/cmake-3.2/Help/command/macro.rst
+#usr/share/cmake-3.2/Help/command/make_directory.rst
+#usr/share/cmake-3.2/Help/command/mark_as_advanced.rst
+#usr/share/cmake-3.2/Help/command/math.rst
+#usr/share/cmake-3.2/Help/command/message.rst
+#usr/share/cmake-3.2/Help/command/option.rst
+#usr/share/cmake-3.2/Help/command/output_required_files.rst
+#usr/share/cmake-3.2/Help/command/project.rst
+#usr/share/cmake-3.2/Help/command/qt_wrap_cpp.rst
+#usr/share/cmake-3.2/Help/command/qt_wrap_ui.rst
+#usr/share/cmake-3.2/Help/command/remove.rst
+#usr/share/cmake-3.2/Help/command/remove_definitions.rst
+#usr/share/cmake-3.2/Help/command/return.rst
+#usr/share/cmake-3.2/Help/command/separate_arguments.rst
+#usr/share/cmake-3.2/Help/command/set.rst
+#usr/share/cmake-3.2/Help/command/set_directory_properties.rst
+#usr/share/cmake-3.2/Help/command/set_property.rst
+#usr/share/cmake-3.2/Help/command/set_source_files_properties.rst
+#usr/share/cmake-3.2/Help/command/set_target_properties.rst
+#usr/share/cmake-3.2/Help/command/set_tests_properties.rst
+#usr/share/cmake-3.2/Help/command/site_name.rst
+#usr/share/cmake-3.2/Help/command/source_group.rst
+#usr/share/cmake-3.2/Help/command/string.rst
+#usr/share/cmake-3.2/Help/command/subdir_depends.rst
+#usr/share/cmake-3.2/Help/command/subdirs.rst
+#usr/share/cmake-3.2/Help/command/target_compile_definitions.rst
+#usr/share/cmake-3.2/Help/command/target_compile_features.rst
+#usr/share/cmake-3.2/Help/command/target_compile_options.rst
+#usr/share/cmake-3.2/Help/command/target_include_directories.rst
+#usr/share/cmake-3.2/Help/command/target_link_libraries.rst
+#usr/share/cmake-3.2/Help/command/target_sources.rst
+#usr/share/cmake-3.2/Help/command/try_compile.rst
+#usr/share/cmake-3.2/Help/command/try_run.rst
+#usr/share/cmake-3.2/Help/command/unset.rst
+#usr/share/cmake-3.2/Help/command/use_mangled_mesa.rst
+#usr/share/cmake-3.2/Help/command/utility_source.rst
+#usr/share/cmake-3.2/Help/command/variable_requires.rst
+#usr/share/cmake-3.2/Help/command/variable_watch.rst
+#usr/share/cmake-3.2/Help/command/while.rst
+#usr/share/cmake-3.2/Help/command/write_file.rst
+#usr/share/cmake-3.2/Help/generator
+#usr/share/cmake-3.2/Help/generator/Borland
+#Makefiles.rst
+#usr/share/cmake-3.2/Help/generator/CodeBlocks.rst
+#usr/share/cmake-3.2/Help/generator/CodeLite.rst
+#usr/share/cmake-3.2/Help/generator/Eclipse
+#CDT4.rst
+#usr/share/cmake-3.2/Help/generator/KDevelop3.rst
+#usr/share/cmake-3.2/Help/generator/Kate.rst
+#usr/share/cmake-3.2/Help/generator/MSYS
+#Makefiles.rst
+#usr/share/cmake-3.2/Help/generator/MinGW
+#Makefiles.rst
+#usr/share/cmake-3.2/Help/generator/NMake
+#Makefiles
+#JOM.rst
+#usr/share/cmake-3.2/Help/generator/NMake
+#Makefiles.rst
+#usr/share/cmake-3.2/Help/generator/Ninja.rst
+#usr/share/cmake-3.2/Help/generator/Sublime
+#Text
+#2.rst
+#usr/share/cmake-3.2/Help/generator/Unix
+#Makefiles.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#10
+#2010.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#11
+#2012.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#12
+#2013.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#14
+#2015.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#6.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#7
+#.NET
+#2003.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#7.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#8
+#2005.rst
+#usr/share/cmake-3.2/Help/generator/Visual
+#Studio
+#9
+#2008.rst
+#usr/share/cmake-3.2/Help/generator/Watcom
+#WMake.rst
+#usr/share/cmake-3.2/Help/generator/Xcode.rst
+#usr/share/cmake-3.2/Help/include
+#usr/share/cmake-3.2/Help/include/COMPILE_DEFINITIONS_DISCLAIMER.txt
+#usr/share/cmake-3.2/Help/include/INTERFACE_INCLUDE_DIRECTORIES_WARNING.txt
+#usr/share/cmake-3.2/Help/include/INTERFACE_LINK_LIBRARIES_WARNING.txt
+#usr/share/cmake-3.2/Help/index.rst
+#usr/share/cmake-3.2/Help/manual
+#usr/share/cmake-3.2/Help/manual/LINKS.txt
+#usr/share/cmake-3.2/Help/manual/OPTIONS_BUILD.txt
+#usr/share/cmake-3.2/Help/manual/OPTIONS_HELP.txt
+#usr/share/cmake-3.2/Help/manual/ccmake.1.rst
+#usr/share/cmake-3.2/Help/manual/cmake-buildsystem.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-commands.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-compile-features.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-developer.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-generator-expressions.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-generators.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-gui.1.rst
+#usr/share/cmake-3.2/Help/manual/cmake-language.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-modules.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-packages.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-policies.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-properties.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-qt.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-toolchains.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake-variables.7.rst
+#usr/share/cmake-3.2/Help/manual/cmake.1.rst
+#usr/share/cmake-3.2/Help/manual/cpack.1.rst
+#usr/share/cmake-3.2/Help/manual/ctest.1.rst
+#usr/share/cmake-3.2/Help/module
+#usr/share/cmake-3.2/Help/module/AddFileDependencies.rst
+#usr/share/cmake-3.2/Help/module/BundleUtilities.rst
+#usr/share/cmake-3.2/Help/module/CMakeAddFortranSubdirectory.rst
+#usr/share/cmake-3.2/Help/module/CMakeBackwardCompatibilityCXX.rst
+#usr/share/cmake-3.2/Help/module/CMakeDependentOption.rst
+#usr/share/cmake-3.2/Help/module/CMakeDetermineVSServicePack.rst
+#usr/share/cmake-3.2/Help/module/CMakeExpandImportedTargets.rst
+#usr/share/cmake-3.2/Help/module/CMakeFindDependencyMacro.rst
+#usr/share/cmake-3.2/Help/module/CMakeFindFrameworks.rst
+#usr/share/cmake-3.2/Help/module/CMakeFindPackageMode.rst
+#usr/share/cmake-3.2/Help/module/CMakeForceCompiler.rst
+#usr/share/cmake-3.2/Help/module/CMakeGraphVizOptions.rst
+#usr/share/cmake-3.2/Help/module/CMakePackageConfigHelpers.rst
+#usr/share/cmake-3.2/Help/module/CMakeParseArguments.rst
+#usr/share/cmake-3.2/Help/module/CMakePrintHelpers.rst
+#usr/share/cmake-3.2/Help/module/CMakePrintSystemInformation.rst
+#usr/share/cmake-3.2/Help/module/CMakePushCheckState.rst
+#usr/share/cmake-3.2/Help/module/CMakeVerifyManifest.rst
+#usr/share/cmake-3.2/Help/module/CPack.rst
+#usr/share/cmake-3.2/Help/module/CPackBundle.rst
+#usr/share/cmake-3.2/Help/module/CPackComponent.rst
+#usr/share/cmake-3.2/Help/module/CPackCygwin.rst
+#usr/share/cmake-3.2/Help/module/CPackDMG.rst
+#usr/share/cmake-3.2/Help/module/CPackDeb.rst
+#usr/share/cmake-3.2/Help/module/CPackIFW.rst
+#usr/share/cmake-3.2/Help/module/CPackNSIS.rst
+#usr/share/cmake-3.2/Help/module/CPackPackageMaker.rst
+#usr/share/cmake-3.2/Help/module/CPackRPM.rst
+#usr/share/cmake-3.2/Help/module/CPackWIX.rst
+#usr/share/cmake-3.2/Help/module/CTest.rst
+#usr/share/cmake-3.2/Help/module/CTestCoverageCollectGCOV.rst
+#usr/share/cmake-3.2/Help/module/CTestScriptMode.rst
+#usr/share/cmake-3.2/Help/module/CTestUseLaunchers.rst
+#usr/share/cmake-3.2/Help/module/CheckCCompilerFlag.rst
+#usr/share/cmake-3.2/Help/module/CheckCSourceCompiles.rst
+#usr/share/cmake-3.2/Help/module/CheckCSourceRuns.rst
+#usr/share/cmake-3.2/Help/module/CheckCXXCompilerFlag.rst
+#usr/share/cmake-3.2/Help/module/CheckCXXSourceCompiles.rst
+#usr/share/cmake-3.2/Help/module/CheckCXXSourceRuns.rst
+#usr/share/cmake-3.2/Help/module/CheckCXXSymbolExists.rst
+#usr/share/cmake-3.2/Help/module/CheckFortranFunctionExists.rst
+#usr/share/cmake-3.2/Help/module/CheckFortranSourceCompiles.rst
+#usr/share/cmake-3.2/Help/module/CheckFunctionExists.rst
+#usr/share/cmake-3.2/Help/module/CheckIncludeFile.rst
+#usr/share/cmake-3.2/Help/module/CheckIncludeFileCXX.rst
+#usr/share/cmake-3.2/Help/module/CheckIncludeFiles.rst
+#usr/share/cmake-3.2/Help/module/CheckLanguage.rst
+#usr/share/cmake-3.2/Help/module/CheckLibraryExists.rst
+#usr/share/cmake-3.2/Help/module/CheckPrototypeDefinition.rst
+#usr/share/cmake-3.2/Help/module/CheckStructHasMember.rst
+#usr/share/cmake-3.2/Help/module/CheckSymbolExists.rst
+#usr/share/cmake-3.2/Help/module/CheckTypeSize.rst
+#usr/share/cmake-3.2/Help/module/CheckVariableExists.rst
+#usr/share/cmake-3.2/Help/module/Dart.rst
+#usr/share/cmake-3.2/Help/module/DeployQt4.rst
+#usr/share/cmake-3.2/Help/module/Documentation.rst
+#usr/share/cmake-3.2/Help/module/ExternalData.rst
+#usr/share/cmake-3.2/Help/module/ExternalProject.rst
+#usr/share/cmake-3.2/Help/module/FeatureSummary.rst
+#usr/share/cmake-3.2/Help/module/FindALSA.rst
+#usr/share/cmake-3.2/Help/module/FindASPELL.rst
+#usr/share/cmake-3.2/Help/module/FindAVIFile.rst
+#usr/share/cmake-3.2/Help/module/FindArmadillo.rst
+#usr/share/cmake-3.2/Help/module/FindBISON.rst
+#usr/share/cmake-3.2/Help/module/FindBLAS.rst
+#usr/share/cmake-3.2/Help/module/FindBZip2.rst
+#usr/share/cmake-3.2/Help/module/FindBacktrace.rst
+#usr/share/cmake-3.2/Help/module/FindBoost.rst
+#usr/share/cmake-3.2/Help/module/FindBullet.rst
+#usr/share/cmake-3.2/Help/module/FindCABLE.rst
+#usr/share/cmake-3.2/Help/module/FindCUDA.rst
+#usr/share/cmake-3.2/Help/module/FindCURL.rst
+#usr/share/cmake-3.2/Help/module/FindCVS.rst
+#usr/share/cmake-3.2/Help/module/FindCoin3D.rst
+#usr/share/cmake-3.2/Help/module/FindCups.rst
+#usr/share/cmake-3.2/Help/module/FindCurses.rst
+#usr/share/cmake-3.2/Help/module/FindCxxTest.rst
+#usr/share/cmake-3.2/Help/module/FindCygwin.rst
+#usr/share/cmake-3.2/Help/module/FindDCMTK.rst
+#usr/share/cmake-3.2/Help/module/FindDart.rst
+#usr/share/cmake-3.2/Help/module/FindDevIL.rst
+#usr/share/cmake-3.2/Help/module/FindDoxygen.rst
+#usr/share/cmake-3.2/Help/module/FindEXPAT.rst
+#usr/share/cmake-3.2/Help/module/FindFLEX.rst
+#usr/share/cmake-3.2/Help/module/FindFLTK.rst
+#usr/share/cmake-3.2/Help/module/FindFLTK2.rst
+#usr/share/cmake-3.2/Help/module/FindFreetype.rst
+#usr/share/cmake-3.2/Help/module/FindGCCXML.rst
+#usr/share/cmake-3.2/Help/module/FindGDAL.rst
+#usr/share/cmake-3.2/Help/module/FindGIF.rst
+#usr/share/cmake-3.2/Help/module/FindGLEW.rst
+#usr/share/cmake-3.2/Help/module/FindGLUT.rst
+#usr/share/cmake-3.2/Help/module/FindGSL.rst
+#usr/share/cmake-3.2/Help/module/FindGTK.rst
+#usr/share/cmake-3.2/Help/module/FindGTK2.rst
+#usr/share/cmake-3.2/Help/module/FindGTest.rst
+#usr/share/cmake-3.2/Help/module/FindGettext.rst
+#usr/share/cmake-3.2/Help/module/FindGit.rst
+#usr/share/cmake-3.2/Help/module/FindGnuTLS.rst
+#usr/share/cmake-3.2/Help/module/FindGnuplot.rst
+#usr/share/cmake-3.2/Help/module/FindHDF5.rst
+#usr/share/cmake-3.2/Help/module/FindHSPELL.rst
+#usr/share/cmake-3.2/Help/module/FindHTMLHelp.rst
+#usr/share/cmake-3.2/Help/module/FindHg.rst
+#usr/share/cmake-3.2/Help/module/FindITK.rst
+#usr/share/cmake-3.2/Help/module/FindIce.rst
+#usr/share/cmake-3.2/Help/module/FindIcotool.rst
+#usr/share/cmake-3.2/Help/module/FindImageMagick.rst
+#usr/share/cmake-3.2/Help/module/FindIntl.rst
+#usr/share/cmake-3.2/Help/module/FindJNI.rst
+#usr/share/cmake-3.2/Help/module/FindJPEG.rst
+#usr/share/cmake-3.2/Help/module/FindJasper.rst
+#usr/share/cmake-3.2/Help/module/FindJava.rst
+#usr/share/cmake-3.2/Help/module/FindKDE3.rst
+#usr/share/cmake-3.2/Help/module/FindKDE4.rst
+#usr/share/cmake-3.2/Help/module/FindLAPACK.rst
+#usr/share/cmake-3.2/Help/module/FindLATEX.rst
+#usr/share/cmake-3.2/Help/module/FindLibArchive.rst
+#usr/share/cmake-3.2/Help/module/FindLibLZMA.rst
+#usr/share/cmake-3.2/Help/module/FindLibXml2.rst
+#usr/share/cmake-3.2/Help/module/FindLibXslt.rst
+#usr/share/cmake-3.2/Help/module/FindLua.rst
+#usr/share/cmake-3.2/Help/module/FindLua50.rst
+#usr/share/cmake-3.2/Help/module/FindLua51.rst
+#usr/share/cmake-3.2/Help/module/FindMFC.rst
+#usr/share/cmake-3.2/Help/module/FindMPEG.rst
+#usr/share/cmake-3.2/Help/module/FindMPEG2.rst
+#usr/share/cmake-3.2/Help/module/FindMPI.rst
+#usr/share/cmake-3.2/Help/module/FindMatlab.rst
+#usr/share/cmake-3.2/Help/module/FindMotif.rst
+#usr/share/cmake-3.2/Help/module/FindOpenAL.rst
+#usr/share/cmake-3.2/Help/module/FindOpenCL.rst
+#usr/share/cmake-3.2/Help/module/FindOpenGL.rst
+#usr/share/cmake-3.2/Help/module/FindOpenMP.rst
+#usr/share/cmake-3.2/Help/module/FindOpenSSL.rst
+#usr/share/cmake-3.2/Help/module/FindOpenSceneGraph.rst
+#usr/share/cmake-3.2/Help/module/FindOpenThreads.rst
+#usr/share/cmake-3.2/Help/module/FindPHP4.rst
+#usr/share/cmake-3.2/Help/module/FindPNG.rst
+#usr/share/cmake-3.2/Help/module/FindPackageHandleStandardArgs.rst
+#usr/share/cmake-3.2/Help/module/FindPackageMessage.rst
+#usr/share/cmake-3.2/Help/module/FindPerl.rst
+#usr/share/cmake-3.2/Help/module/FindPerlLibs.rst
+#usr/share/cmake-3.2/Help/module/FindPhysFS.rst
+#usr/share/cmake-3.2/Help/module/FindPike.rst
+#usr/share/cmake-3.2/Help/module/FindPkgConfig.rst
+#usr/share/cmake-3.2/Help/module/FindPostgreSQL.rst
+#usr/share/cmake-3.2/Help/module/FindProducer.rst
+#usr/share/cmake-3.2/Help/module/FindProtobuf.rst
+#usr/share/cmake-3.2/Help/module/FindPythonInterp.rst
+#usr/share/cmake-3.2/Help/module/FindPythonLibs.rst
+#usr/share/cmake-3.2/Help/module/FindQt.rst
+#usr/share/cmake-3.2/Help/module/FindQt3.rst
+#usr/share/cmake-3.2/Help/module/FindQt4.rst
+#usr/share/cmake-3.2/Help/module/FindQuickTime.rst
+#usr/share/cmake-3.2/Help/module/FindRTI.rst
+#usr/share/cmake-3.2/Help/module/FindRuby.rst
+#usr/share/cmake-3.2/Help/module/FindSDL.rst
+#usr/share/cmake-3.2/Help/module/FindSDL_image.rst
+#usr/share/cmake-3.2/Help/module/FindSDL_mixer.rst
+#usr/share/cmake-3.2/Help/module/FindSDL_net.rst
+#usr/share/cmake-3.2/Help/module/FindSDL_sound.rst
+#usr/share/cmake-3.2/Help/module/FindSDL_ttf.rst
+#usr/share/cmake-3.2/Help/module/FindSWIG.rst
+#usr/share/cmake-3.2/Help/module/FindSelfPackers.rst
+#usr/share/cmake-3.2/Help/module/FindSquish.rst
+#usr/share/cmake-3.2/Help/module/FindSubversion.rst
+#usr/share/cmake-3.2/Help/module/FindTCL.rst
+#usr/share/cmake-3.2/Help/module/FindTIFF.rst
+#usr/share/cmake-3.2/Help/module/FindTclStub.rst
+#usr/share/cmake-3.2/Help/module/FindTclsh.rst
+#usr/share/cmake-3.2/Help/module/FindThreads.rst
+#usr/share/cmake-3.2/Help/module/FindUnixCommands.rst
+#usr/share/cmake-3.2/Help/module/FindVTK.rst
+#usr/share/cmake-3.2/Help/module/FindWget.rst
+#usr/share/cmake-3.2/Help/module/FindWish.rst
+#usr/share/cmake-3.2/Help/module/FindX11.rst
+#usr/share/cmake-3.2/Help/module/FindXMLRPC.rst
+#usr/share/cmake-3.2/Help/module/FindXercesC.rst
+#usr/share/cmake-3.2/Help/module/FindZLIB.rst
+#usr/share/cmake-3.2/Help/module/Findosg.rst
+#usr/share/cmake-3.2/Help/module/FindosgAnimation.rst
+#usr/share/cmake-3.2/Help/module/FindosgDB.rst
+#usr/share/cmake-3.2/Help/module/FindosgFX.rst
+#usr/share/cmake-3.2/Help/module/FindosgGA.rst
+#usr/share/cmake-3.2/Help/module/FindosgIntrospection.rst
+#usr/share/cmake-3.2/Help/module/FindosgManipulator.rst
+#usr/share/cmake-3.2/Help/module/FindosgParticle.rst
+#usr/share/cmake-3.2/Help/module/FindosgPresentation.rst
+#usr/share/cmake-3.2/Help/module/FindosgProducer.rst
+#usr/share/cmake-3.2/Help/module/FindosgQt.rst
+#usr/share/cmake-3.2/Help/module/FindosgShadow.rst
+#usr/share/cmake-3.2/Help/module/FindosgSim.rst
+#usr/share/cmake-3.2/Help/module/FindosgTerrain.rst
+#usr/share/cmake-3.2/Help/module/FindosgText.rst
+#usr/share/cmake-3.2/Help/module/FindosgUtil.rst
+#usr/share/cmake-3.2/Help/module/FindosgViewer.rst
+#usr/share/cmake-3.2/Help/module/FindosgVolume.rst
+#usr/share/cmake-3.2/Help/module/FindosgWidget.rst
+#usr/share/cmake-3.2/Help/module/Findosg_functions.rst
+#usr/share/cmake-3.2/Help/module/FindwxWidgets.rst
+#usr/share/cmake-3.2/Help/module/FindwxWindows.rst
+#usr/share/cmake-3.2/Help/module/FortranCInterface.rst
+#usr/share/cmake-3.2/Help/module/GNUInstallDirs.rst
+#usr/share/cmake-3.2/Help/module/GenerateExportHeader.rst
+#usr/share/cmake-3.2/Help/module/GetPrerequisites.rst
+#usr/share/cmake-3.2/Help/module/InstallRequiredSystemLibraries.rst
+#usr/share/cmake-3.2/Help/module/MacroAddFileDependencies.rst
+#usr/share/cmake-3.2/Help/module/ProcessorCount.rst
+#usr/share/cmake-3.2/Help/module/SelectLibraryConfigurations.rst
+#usr/share/cmake-3.2/Help/module/SquishTestScript.rst
+#usr/share/cmake-3.2/Help/module/TestBigEndian.rst
+#usr/share/cmake-3.2/Help/module/TestCXXAcceptsFlag.rst
+#usr/share/cmake-3.2/Help/module/TestForANSIForScope.rst
+#usr/share/cmake-3.2/Help/module/TestForANSIStreamHeaders.rst
+#usr/share/cmake-3.2/Help/module/TestForSSTREAM.rst
+#usr/share/cmake-3.2/Help/module/TestForSTDNamespace.rst
+#usr/share/cmake-3.2/Help/module/UseEcos.rst
+#usr/share/cmake-3.2/Help/module/UseJava.rst
+#usr/share/cmake-3.2/Help/module/UseJavaClassFilelist.rst
+#usr/share/cmake-3.2/Help/module/UseJavaSymlinks.rst
+#usr/share/cmake-3.2/Help/module/UsePkgConfig.rst
+#usr/share/cmake-3.2/Help/module/UseSWIG.rst
+#usr/share/cmake-3.2/Help/module/Use_wxWindows.rst
+#usr/share/cmake-3.2/Help/module/UsewxWidgets.rst
+#usr/share/cmake-3.2/Help/module/WriteBasicConfigVersionFile.rst
+#usr/share/cmake-3.2/Help/module/WriteCompilerDetectionHeader.rst
+#usr/share/cmake-3.2/Help/policy
+#usr/share/cmake-3.2/Help/policy/CMP0000.rst
+#usr/share/cmake-3.2/Help/policy/CMP0001.rst
+#usr/share/cmake-3.2/Help/policy/CMP0002.rst
+#usr/share/cmake-3.2/Help/policy/CMP0003.rst
+#usr/share/cmake-3.2/Help/policy/CMP0004.rst
+#usr/share/cmake-3.2/Help/policy/CMP0005.rst
+#usr/share/cmake-3.2/Help/policy/CMP0006.rst
+#usr/share/cmake-3.2/Help/policy/CMP0007.rst
+#usr/share/cmake-3.2/Help/policy/CMP0008.rst
+#usr/share/cmake-3.2/Help/policy/CMP0009.rst
+#usr/share/cmake-3.2/Help/policy/CMP0010.rst
+#usr/share/cmake-3.2/Help/policy/CMP0011.rst
+#usr/share/cmake-3.2/Help/policy/CMP0012.rst
+#usr/share/cmake-3.2/Help/policy/CMP0013.rst
+#usr/share/cmake-3.2/Help/policy/CMP0014.rst
+#usr/share/cmake-3.2/Help/policy/CMP0015.rst
+#usr/share/cmake-3.2/Help/policy/CMP0016.rst
+#usr/share/cmake-3.2/Help/policy/CMP0017.rst
+#usr/share/cmake-3.2/Help/policy/CMP0018.rst
+#usr/share/cmake-3.2/Help/policy/CMP0019.rst
+#usr/share/cmake-3.2/Help/policy/CMP0020.rst
+#usr/share/cmake-3.2/Help/policy/CMP0021.rst
+#usr/share/cmake-3.2/Help/policy/CMP0022.rst
+#usr/share/cmake-3.2/Help/policy/CMP0023.rst
+#usr/share/cmake-3.2/Help/policy/CMP0024.rst
+#usr/share/cmake-3.2/Help/policy/CMP0025.rst
+#usr/share/cmake-3.2/Help/policy/CMP0026.rst
+#usr/share/cmake-3.2/Help/policy/CMP0027.rst
+#usr/share/cmake-3.2/Help/policy/CMP0028.rst
+#usr/share/cmake-3.2/Help/policy/CMP0029.rst
+#usr/share/cmake-3.2/Help/policy/CMP0030.rst
+#usr/share/cmake-3.2/Help/policy/CMP0031.rst
+#usr/share/cmake-3.2/Help/policy/CMP0032.rst
+#usr/share/cmake-3.2/Help/policy/CMP0033.rst
+#usr/share/cmake-3.2/Help/policy/CMP0034.rst
+#usr/share/cmake-3.2/Help/policy/CMP0035.rst
+#usr/share/cmake-3.2/Help/policy/CMP0036.rst
+#usr/share/cmake-3.2/Help/policy/CMP0037.rst
+#usr/share/cmake-3.2/Help/policy/CMP0038.rst
+#usr/share/cmake-3.2/Help/policy/CMP0039.rst
+#usr/share/cmake-3.2/Help/policy/CMP0040.rst
+#usr/share/cmake-3.2/Help/policy/CMP0041.rst
+#usr/share/cmake-3.2/Help/policy/CMP0042.rst
+#usr/share/cmake-3.2/Help/policy/CMP0043.rst
+#usr/share/cmake-3.2/Help/policy/CMP0044.rst
+#usr/share/cmake-3.2/Help/policy/CMP0045.rst
+#usr/share/cmake-3.2/Help/policy/CMP0046.rst
+#usr/share/cmake-3.2/Help/policy/CMP0047.rst
+#usr/share/cmake-3.2/Help/policy/CMP0048.rst
+#usr/share/cmake-3.2/Help/policy/CMP0049.rst
+#usr/share/cmake-3.2/Help/policy/CMP0050.rst
+#usr/share/cmake-3.2/Help/policy/CMP0051.rst
+#usr/share/cmake-3.2/Help/policy/CMP0052.rst
+#usr/share/cmake-3.2/Help/policy/CMP0053.rst
+#usr/share/cmake-3.2/Help/policy/CMP0054.rst
+#usr/share/cmake-3.2/Help/policy/CMP0055.rst
+#usr/share/cmake-3.2/Help/policy/CMP0056.rst
+#usr/share/cmake-3.2/Help/policy/DISALLOWED_COMMAND.txt
+#usr/share/cmake-3.2/Help/prop_cache
+#usr/share/cmake-3.2/Help/prop_cache/ADVANCED.rst
+#usr/share/cmake-3.2/Help/prop_cache/HELPSTRING.rst
+#usr/share/cmake-3.2/Help/prop_cache/MODIFIED.rst
+#usr/share/cmake-3.2/Help/prop_cache/STRINGS.rst
+#usr/share/cmake-3.2/Help/prop_cache/TYPE.rst
+#usr/share/cmake-3.2/Help/prop_cache/VALUE.rst
+#usr/share/cmake-3.2/Help/prop_dir
+#usr/share/cmake-3.2/Help/prop_dir/ADDITIONAL_MAKE_CLEAN_FILES.rst
+#usr/share/cmake-3.2/Help/prop_dir/CACHE_VARIABLES.rst
+#usr/share/cmake-3.2/Help/prop_dir/CLEAN_NO_CUSTOM.rst
+#usr/share/cmake-3.2/Help/prop_dir/CMAKE_CONFIGURE_DEPENDS.rst
+#usr/share/cmake-3.2/Help/prop_dir/COMPILE_DEFINITIONS.rst
+#usr/share/cmake-3.2/Help/prop_dir/COMPILE_DEFINITIONS_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_dir/COMPILE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_dir/DEFINITIONS.rst
+#usr/share/cmake-3.2/Help/prop_dir/EXCLUDE_FROM_ALL.rst
+#usr/share/cmake-3.2/Help/prop_dir/IMPLICIT_DEPENDS_INCLUDE_TRANSFORM.rst
+#usr/share/cmake-3.2/Help/prop_dir/INCLUDE_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/prop_dir/INCLUDE_REGULAR_EXPRESSION.rst
+#usr/share/cmake-3.2/Help/prop_dir/INTERPROCEDURAL_OPTIMIZATION.rst
+#usr/share/cmake-3.2/Help/prop_dir/INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_dir/LINK_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/prop_dir/LISTFILE_STACK.rst
+#usr/share/cmake-3.2/Help/prop_dir/MACROS.rst
+#usr/share/cmake-3.2/Help/prop_dir/PARENT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_dir/RULE_LAUNCH_COMPILE.rst
+#usr/share/cmake-3.2/Help/prop_dir/RULE_LAUNCH_CUSTOM.rst
+#usr/share/cmake-3.2/Help/prop_dir/RULE_LAUNCH_LINK.rst
+#usr/share/cmake-3.2/Help/prop_dir/TEST_INCLUDE_FILE.rst
+#usr/share/cmake-3.2/Help/prop_dir/VARIABLES.rst
+#usr/share/cmake-3.2/Help/prop_dir/VS_GLOBAL_SECTION_POST_section.rst
+#usr/share/cmake-3.2/Help/prop_dir/VS_GLOBAL_SECTION_PRE_section.rst
+#usr/share/cmake-3.2/Help/prop_gbl
+#usr/share/cmake-3.2/Help/prop_gbl/ALLOW_DUPLICATE_CUSTOM_TARGETS.rst
+#usr/share/cmake-3.2/Help/prop_gbl/AUTOGEN_TARGETS_FOLDER.rst
+#usr/share/cmake-3.2/Help/prop_gbl/AUTOMOC_TARGETS_FOLDER.rst
+#usr/share/cmake-3.2/Help/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/CMAKE_C_KNOWN_FEATURES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/DEBUG_CONFIGURATIONS.rst
+#usr/share/cmake-3.2/Help/prop_gbl/DISABLED_FEATURES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/ECLIPSE_EXTRA_NATURES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/ENABLED_FEATURES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/ENABLED_LANGUAGES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst
+#usr/share/cmake-3.2/Help/prop_gbl/FIND_LIBRARY_USE_OPENBSD_VERSIONING.rst
+#usr/share/cmake-3.2/Help/prop_gbl/GLOBAL_DEPENDS_DEBUG_MODE.rst
+#usr/share/cmake-3.2/Help/prop_gbl/GLOBAL_DEPENDS_NO_CYCLES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/IN_TRY_COMPILE.rst
+#usr/share/cmake-3.2/Help/prop_gbl/JOB_POOLS.rst
+#usr/share/cmake-3.2/Help/prop_gbl/PACKAGES_FOUND.rst
+#usr/share/cmake-3.2/Help/prop_gbl/PACKAGES_NOT_FOUND.rst
+#usr/share/cmake-3.2/Help/prop_gbl/PREDEFINED_TARGETS_FOLDER.rst
+#usr/share/cmake-3.2/Help/prop_gbl/REPORT_UNDEFINED_PROPERTIES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/RULE_LAUNCH_COMPILE.rst
+#usr/share/cmake-3.2/Help/prop_gbl/RULE_LAUNCH_CUSTOM.rst
+#usr/share/cmake-3.2/Help/prop_gbl/RULE_LAUNCH_LINK.rst
+#usr/share/cmake-3.2/Help/prop_gbl/RULE_MESSAGES.rst
+#usr/share/cmake-3.2/Help/prop_gbl/TARGET_ARCHIVES_MAY_BE_SHARED_LIBS.rst
+#usr/share/cmake-3.2/Help/prop_gbl/TARGET_SUPPORTS_SHARED_LIBS.rst
+#usr/share/cmake-3.2/Help/prop_gbl/USE_FOLDERS.rst
+#usr/share/cmake-3.2/Help/prop_inst
+#usr/share/cmake-3.2/Help/prop_inst/CPACK_NEVER_OVERWRITE.rst
+#usr/share/cmake-3.2/Help/prop_inst/CPACK_PERMANENT.rst
+#usr/share/cmake-3.2/Help/prop_inst/CPACK_WIX_ACL.rst
+#usr/share/cmake-3.2/Help/prop_sf
+#usr/share/cmake-3.2/Help/prop_sf/ABSTRACT.rst
+#usr/share/cmake-3.2/Help/prop_sf/AUTORCC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_sf/AUTOUIC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_sf/COMPILE_DEFINITIONS.rst
+#usr/share/cmake-3.2/Help/prop_sf/COMPILE_DEFINITIONS_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_sf/COMPILE_FLAGS.rst
+#usr/share/cmake-3.2/Help/prop_sf/EXTERNAL_OBJECT.rst
+#usr/share/cmake-3.2/Help/prop_sf/Fortran_FORMAT.rst
+#usr/share/cmake-3.2/Help/prop_sf/GENERATED.rst
+#usr/share/cmake-3.2/Help/prop_sf/HEADER_FILE_ONLY.rst
+#usr/share/cmake-3.2/Help/prop_sf/KEEP_EXTENSION.rst
+#usr/share/cmake-3.2/Help/prop_sf/LABELS.rst
+#usr/share/cmake-3.2/Help/prop_sf/LANGUAGE.rst
+#usr/share/cmake-3.2/Help/prop_sf/LOCATION.rst
+#usr/share/cmake-3.2/Help/prop_sf/MACOSX_PACKAGE_LOCATION.rst
+#usr/share/cmake-3.2/Help/prop_sf/OBJECT_DEPENDS.rst
+#usr/share/cmake-3.2/Help/prop_sf/OBJECT_OUTPUTS.rst
+#usr/share/cmake-3.2/Help/prop_sf/SYMBOLIC.rst
+#usr/share/cmake-3.2/Help/prop_sf/VS_DEPLOYMENT_CONTENT.rst
+#usr/share/cmake-3.2/Help/prop_sf/VS_DEPLOYMENT_LOCATION.rst
+#usr/share/cmake-3.2/Help/prop_sf/VS_SHADER_ENTRYPOINT.rst
+#usr/share/cmake-3.2/Help/prop_sf/VS_SHADER_FLAGS.rst
+#usr/share/cmake-3.2/Help/prop_sf/VS_SHADER_MODEL.rst
+#usr/share/cmake-3.2/Help/prop_sf/VS_SHADER_TYPE.rst
+#usr/share/cmake-3.2/Help/prop_sf/WRAP_EXCLUDE.rst
+#usr/share/cmake-3.2/Help/prop_sf/XCODE_EXPLICIT_FILE_TYPE.rst
+#usr/share/cmake-3.2/Help/prop_sf/XCODE_LAST_KNOWN_FILE_TYPE.rst
+#usr/share/cmake-3.2/Help/prop_test
+#usr/share/cmake-3.2/Help/prop_test/ATTACHED_FILES.rst
+#usr/share/cmake-3.2/Help/prop_test/ATTACHED_FILES_ON_FAIL.rst
+#usr/share/cmake-3.2/Help/prop_test/COST.rst
+#usr/share/cmake-3.2/Help/prop_test/DEPENDS.rst
+#usr/share/cmake-3.2/Help/prop_test/ENVIRONMENT.rst
+#usr/share/cmake-3.2/Help/prop_test/FAIL_REGULAR_EXPRESSION.rst
+#usr/share/cmake-3.2/Help/prop_test/LABELS.rst
+#usr/share/cmake-3.2/Help/prop_test/MEASUREMENT.rst
+#usr/share/cmake-3.2/Help/prop_test/PASS_REGULAR_EXPRESSION.rst
+#usr/share/cmake-3.2/Help/prop_test/PROCESSORS.rst
+#usr/share/cmake-3.2/Help/prop_test/REQUIRED_FILES.rst
+#usr/share/cmake-3.2/Help/prop_test/RESOURCE_LOCK.rst
+#usr/share/cmake-3.2/Help/prop_test/RUN_SERIAL.rst
+#usr/share/cmake-3.2/Help/prop_test/SKIP_RETURN_CODE.rst
+#usr/share/cmake-3.2/Help/prop_test/TIMEOUT.rst
+#usr/share/cmake-3.2/Help/prop_test/WILL_FAIL.rst
+#usr/share/cmake-3.2/Help/prop_test/WORKING_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_tgt
+#usr/share/cmake-3.2/Help/prop_tgt/ALIASED_TARGET.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ANDROID_API.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ANDROID_API_MIN.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ANDROID_GUI.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ARCHIVE_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ARCHIVE_OUTPUT_DIRECTORY_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ARCHIVE_OUTPUT_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ARCHIVE_OUTPUT_NAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/AUTOGEN_TARGET_DEPENDS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/AUTOMOC.rst
+#usr/share/cmake-3.2/Help/prop_tgt/AUTOMOC_MOC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/AUTORCC.rst
+#usr/share/cmake-3.2/Help/prop_tgt/AUTORCC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/AUTOUIC.rst
+#usr/share/cmake-3.2/Help/prop_tgt/AUTOUIC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/BUILD_WITH_INSTALL_RPATH.rst
+#usr/share/cmake-3.2/Help/prop_tgt/BUNDLE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/BUNDLE_EXTENSION.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPATIBLE_INTERFACE_BOOL.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPATIBLE_INTERFACE_NUMBER_MAX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPATIBLE_INTERFACE_NUMBER_MIN.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPATIBLE_INTERFACE_STRING.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_DEFINITIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_DEFINITIONS_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_FEATURES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_FLAGS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_PDB_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_PDB_NAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_PDB_NOTE.txt
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_PDB_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/COMPILE_PDB_OUTPUT_DIRECTORY_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/CONFIG_OUTPUT_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/CONFIG_POSTFIX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/CXX_EXTENSIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/CXX_STANDARD.rst
+#usr/share/cmake-3.2/Help/prop_tgt/CXX_STANDARD_REQUIRED.rst
+#usr/share/cmake-3.2/Help/prop_tgt/C_EXTENSIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/C_STANDARD.rst
+#usr/share/cmake-3.2/Help/prop_tgt/C_STANDARD_REQUIRED.rst
+#usr/share/cmake-3.2/Help/prop_tgt/DEBUG_POSTFIX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/DEFINE_SYMBOL.rst
+#usr/share/cmake-3.2/Help/prop_tgt/ENABLE_EXPORTS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/EXCLUDE_FROM_ALL.rst
+#usr/share/cmake-3.2/Help/prop_tgt/EXCLUDE_FROM_DEFAULT_BUILD.rst
+#usr/share/cmake-3.2/Help/prop_tgt/EXCLUDE_FROM_DEFAULT_BUILD_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/EXPORT_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/EchoString.rst
+#usr/share/cmake-3.2/Help/prop_tgt/FOLDER.rst
+#usr/share/cmake-3.2/Help/prop_tgt/FRAMEWORK.rst
+#usr/share/cmake-3.2/Help/prop_tgt/Fortran_FORMAT.rst
+#usr/share/cmake-3.2/Help/prop_tgt/Fortran_MODULE_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/GENERATOR_FILE_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/GNUtoMS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/HAS_CXX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPLICIT_DEPENDS_INCLUDE_TRANSFORM.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_CONFIGURATIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_IMPLIB.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_IMPLIB_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_DEPENDENT_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_DEPENDENT_LIBRARIES_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_INTERFACE_LANGUAGES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_INTERFACE_LANGUAGES_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_INTERFACE_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_INTERFACE_LIBRARIES_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_INTERFACE_MULTIPLICITY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LINK_INTERFACE_MULTIPLICITY_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LOCATION.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_LOCATION_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_NO_SONAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_NO_SONAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_SONAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORTED_SONAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORT_PREFIX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/IMPORT_SUFFIX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INCLUDE_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INSTALL_NAME_DIR.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INSTALL_RPATH.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INSTALL_RPATH_USE_LINK_PATH.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_AUTOUIC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_BUILD_PROPERTY.txt
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_COMPILE_DEFINITIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_COMPILE_FEATURES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_COMPILE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_INCLUDE_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_LINK_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_POSITION_INDEPENDENT_CODE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_SOURCES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERFACE_SYSTEM_INCLUDE_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERPROCEDURAL_OPTIMIZATION.rst
+#usr/share/cmake-3.2/Help/prop_tgt/INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/JOB_POOL_COMPILE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/JOB_POOL_LINK.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LABELS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LANG_VISIBILITY_PRESET.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LIBRARY_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LIBRARY_OUTPUT_DIRECTORY_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LIBRARY_OUTPUT_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LIBRARY_OUTPUT_NAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINKER_LANGUAGE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_DEPENDS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_DEPENDS_NO_SHARED.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_FLAGS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_FLAGS_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_INTERFACE_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_INTERFACE_LIBRARIES_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_INTERFACE_MULTIPLICITY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_INTERFACE_MULTIPLICITY_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_SEARCH_END_STATIC.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LINK_SEARCH_START_STATIC.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LOCATION.rst
+#usr/share/cmake-3.2/Help/prop_tgt/LOCATION_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/MACOSX_BUNDLE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/MACOSX_BUNDLE_INFO_PLIST.rst
+#usr/share/cmake-3.2/Help/prop_tgt/MACOSX_FRAMEWORK_INFO_PLIST.rst
+#usr/share/cmake-3.2/Help/prop_tgt/MACOSX_RPATH.rst
+#usr/share/cmake-3.2/Help/prop_tgt/MAP_IMPORTED_CONFIG_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/NO_SONAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/NO_SYSTEM_FROM_IMPORTED.rst
+#usr/share/cmake-3.2/Help/prop_tgt/OSX_ARCHITECTURES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/OSX_ARCHITECTURES_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/OUTPUT_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/OUTPUT_NAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PDB_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PDB_NAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PDB_NOTE.txt
+#usr/share/cmake-3.2/Help/prop_tgt/PDB_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PDB_OUTPUT_DIRECTORY_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/POSITION_INDEPENDENT_CODE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/POST_INSTALL_SCRIPT.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PREFIX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PRE_INSTALL_SCRIPT.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PRIVATE_HEADER.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PROJECT_LABEL.rst
+#usr/share/cmake-3.2/Help/prop_tgt/PUBLIC_HEADER.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RESOURCE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RULE_LAUNCH_COMPILE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RULE_LAUNCH_CUSTOM.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RULE_LAUNCH_LINK.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RUNTIME_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RUNTIME_OUTPUT_DIRECTORY_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RUNTIME_OUTPUT_NAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/RUNTIME_OUTPUT_NAME_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/SKIP_BUILD_RPATH.rst
+#usr/share/cmake-3.2/Help/prop_tgt/SOURCES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/SOVERSION.rst
+#usr/share/cmake-3.2/Help/prop_tgt/STATIC_LIBRARY_FLAGS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/STATIC_LIBRARY_FLAGS_CONFIG.rst
+#usr/share/cmake-3.2/Help/prop_tgt/SUFFIX.rst
+#usr/share/cmake-3.2/Help/prop_tgt/TARGET_FILE_TYPES.txt
+#usr/share/cmake-3.2/Help/prop_tgt/TYPE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VERSION.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VISIBILITY_INLINES_HIDDEN.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_DOTNET_REFERENCES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_DOTNET_TARGET_FRAMEWORK_VERSION.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_GLOBAL_KEYWORD.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_GLOBAL_PROJECT_TYPES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_GLOBAL_ROOTNAMESPACE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_GLOBAL_variable.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_KEYWORD.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_SCC_AUXPATH.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_SCC_LOCALPATH.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_SCC_PROJECTNAME.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_SCC_PROVIDER.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_WINRT_COMPONENT.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_WINRT_EXTENSIONS.rst
+#usr/share/cmake-3.2/Help/prop_tgt/VS_WINRT_REFERENCES.rst
+#usr/share/cmake-3.2/Help/prop_tgt/WIN32_EXECUTABLE.rst
+#usr/share/cmake-3.2/Help/prop_tgt/XCODE_ATTRIBUTE_an-attribute.rst
+#usr/share/cmake-3.2/Help/prop_tgt/XXX_OUTPUT_DIRECTORY.txt
+#usr/share/cmake-3.2/Help/prop_tgt/XXX_OUTPUT_NAME.txt
+#usr/share/cmake-3.2/Help/release
+#usr/share/cmake-3.2/Help/release/3.0.rst
+#usr/share/cmake-3.2/Help/release/3.1.rst
+#usr/share/cmake-3.2/Help/release/3.2.rst
+#usr/share/cmake-3.2/Help/release/dev.txt
+#usr/share/cmake-3.2/Help/release/index.rst
+#usr/share/cmake-3.2/Help/variable
+#usr/share/cmake-3.2/Help/variable/APPLE.rst
+#usr/share/cmake-3.2/Help/variable/BORLAND.rst
+#usr/share/cmake-3.2/Help/variable/BUILD_SHARED_LIBS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ABSOLUTE_DESTINATION_FILES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ANDROID_API.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ANDROID_API_MIN.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ANDROID_GUI.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_APPBUNDLE_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ARCHIVE_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ARGC.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ARGV0.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AUTOMOC.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AUTOMOC_MOC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AUTOMOC_RELAXED_MODE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AUTORCC.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AUTORCC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AUTOUIC.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_AUTOUIC_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_BACKWARDS_COMPATIBILITY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_BINARY_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_BUILD_TOOL.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_BUILD_TYPE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_BUILD_WITH_INSTALL_RPATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CACHEFILE_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CACHE_MAJOR_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CACHE_MINOR_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CACHE_PATCH_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CFG_INTDIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CL_64.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_COLOR_MAKEFILE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_COMPILER_2005.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_COMPILER_IS_GNULANG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_CONFIG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CONFIGURATION_TYPES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CONFIG_POSTFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CROSSCOMPILING.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CTEST_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CURRENT_BINARY_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CURRENT_LIST_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CURRENT_LIST_FILE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CURRENT_LIST_LINE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CURRENT_SOURCE_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CXX_COMPILE_FEATURES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CXX_EXTENSIONS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CXX_STANDARD.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_CXX_STANDARD_REQUIRED.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_C_COMPILE_FEATURES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_C_EXTENSIONS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_C_STANDARD.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_C_STANDARD_REQUIRED.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_DEBUG_POSTFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_DEBUG_TARGET_PROPERTIES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_DL_LIBS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_EDIT_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ERROR_DEPRECATED.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_EXECUTABLE_SUFFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_EXE_LINKER_FLAGS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_EXE_LINKER_FLAGS_CONFIG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_EXPORT_NO_PACKAGE_REGISTRY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_EXTRA_GENERATOR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_LIBRARY_PREFIXES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_LIBRARY_SUFFIXES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_NO_INSTALL_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_PACKAGE_NAME.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_PACKAGE_WARN_NO_MODULE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_ROOT_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_INCLUDE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_LIBRARY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_PACKAGE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_PROGRAM.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_XXX.txt
+#usr/share/cmake-3.2/Help/variable/CMAKE_FRAMEWORK_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_Fortran_FORMAT.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_Fortran_MODDIR_DEFAULT.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_Fortran_MODDIR_FLAG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_Fortran_MODOUT_FLAG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_Fortran_MODULE_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_GENERATOR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_GENERATOR_PLATFORM.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_GENERATOR_TOOLSET.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_GNUtoMS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOME_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOST_APPLE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOST_SYSTEM.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOST_SYSTEM_NAME.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOST_SYSTEM_PROCESSOR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOST_SYSTEM_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOST_UNIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_HOST_WIN32.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_IGNORE_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_IMPORT_LIBRARY_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_IMPORT_LIBRARY_SUFFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INCLUDE_CURRENT_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INCLUDE_DIRECTORIES_BEFORE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INCLUDE_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INSTALL_DEFAULT_COMPONENT_NAME.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INSTALL_MESSAGE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INSTALL_NAME_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INSTALL_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INSTALL_RPATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INSTALL_RPATH_USE_LINK_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_INTERNAL_PLATFORM_ABI.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_JOB_POOL_COMPILE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_JOB_POOL_LINK.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_ARCHIVE_APPEND.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_ARCHIVE_CREATE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_ARCHIVE_FINISH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILER.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILER_ABI.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILER_EXTERNAL_TOOLCHAIN.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILER_ID.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILER_LOADED.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILER_TARGET.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILER_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_COMPILE_OBJECT.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_CREATE_SHARED_LIBRARY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_CREATE_SHARED_MODULE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_CREATE_STATIC_LIBRARY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_FLAGS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_FLAGS_DEBUG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_FLAGS_MINSIZEREL.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_FLAGS_RELEASE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_FLAGS_RELWITHDEBINFO.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_IGNORE_EXTENSIONS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_IMPLICIT_INCLUDE_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_IMPLICIT_LINK_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_IMPLICIT_LINK_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_LIBRARY_ARCHITECTURE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_LINKER_PREFERENCE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_LINKER_PREFERENCE_PROPAGATES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_LINK_EXECUTABLE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_OUTPUT_EXTENSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_PLATFORM_ID.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_SIMULATE_ID.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_SIMULATE_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_SIZEOF_DATA_PTR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_SOURCE_FILE_EXTENSIONS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LANG_VISIBILITY_PRESET.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LIBRARY_ARCHITECTURE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LIBRARY_ARCHITECTURE_REGEX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LIBRARY_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LIBRARY_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LIBRARY_PATH_FLAG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LINK_DEF_FILE_FLAG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LINK_DEPENDS_NO_SHARED.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LINK_INTERFACE_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LINK_LIBRARY_FILE_FLAG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LINK_LIBRARY_FLAG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_LINK_LIBRARY_SUFFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MACOSX_BUNDLE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MACOSX_RPATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MAJOR_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MAKE_PROGRAM.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MAP_IMPORTED_CONFIG_CONFIG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MATCH_COUNT.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MFC_FLAG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MINIMUM_REQUIRED_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MINOR_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MODULE_LINKER_FLAGS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MODULE_LINKER_FLAGS_CONFIG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_MODULE_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_NOT_USING_CONFIG_FLAGS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_NO_BUILTIN_CHRPATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_NO_SYSTEM_FROM_IMPORTED.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_OBJECT_PATH_MAX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_OSX_ARCHITECTURES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_OSX_DEPLOYMENT_TARGET.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_OSX_SYSROOT.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_OSX_VARIABLE.txt
+#usr/share/cmake-3.2/Help/variable/CMAKE_PARENT_LIST_FILE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_PATCH_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_PDB_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_PDB_OUTPUT_DIRECTORY_CONFIG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_POLICY_DEFAULT_CMPNNNN.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_POLICY_WARNING_CMPNNNN.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_POSITION_INDEPENDENT_CODE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_PREFIX_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_PROGRAM_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_PROJECT_NAME.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_PROJECT_PROJECT-NAME_INCLUDE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_RANLIB.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_ROOT.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_RUNTIME_OUTPUT_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SCRIPT_MODE_FILE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SHARED_LIBRARY_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SHARED_LIBRARY_SUFFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SHARED_LINKER_FLAGS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SHARED_LINKER_FLAGS_CONFIG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SHARED_MODULE_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SHARED_MODULE_SUFFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SIZEOF_VOID_P.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SKIP_BUILD_RPATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SKIP_INSTALL_ALL_DEPENDENCY.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SKIP_INSTALL_RPATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SKIP_INSTALL_RULES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SKIP_RPATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SOURCE_DIR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_STAGING_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_STANDARD_LIBRARIES.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_STATIC_LIBRARY_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_STATIC_LIBRARY_SUFFIX.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_STATIC_LINKER_FLAGS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_STATIC_LINKER_FLAGS_CONFIG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSROOT.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_IGNORE_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_INCLUDE_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_LIBRARY_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_NAME.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_PREFIX_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_PROCESSOR.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_PROGRAM_PATH.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_SYSTEM_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_TOOLCHAIN_FILE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_TRY_COMPILE_CONFIGURATION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_TWEAK_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_USER_MAKE_RULES_OVERRIDE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_USER_MAKE_RULES_OVERRIDE_LANG.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_USE_RELATIVE_PATHS.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VERBOSE_MAKEFILE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VISIBILITY_INLINES_HIDDEN.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VS_DEVENV_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VS_INTEL_Fortran_PROJECT_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VS_MSBUILD_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VS_MSDEV_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VS_NsightTegra_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VS_PLATFORM_NAME.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_VS_PLATFORM_TOOLSET.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_WARN_DEPRECATED.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_WIN32_EXECUTABLE.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_XCODE_ATTRIBUTE_an-attribute.rst
+#usr/share/cmake-3.2/Help/variable/CMAKE_XCODE_PLATFORM_TOOLSET.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_ABSOLUTE_DESTINATION_FILES.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_INCLUDE_TOPLEVEL_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_INSTALL_SCRIPT.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_PACKAGING_INSTALL_PREFIX.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_SET_DESTDIR.rst
+#usr/share/cmake-3.2/Help/variable/CPACK_WARN_ON_ABSOLUTE_INSTALL_DESTINATION.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_BINARY_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_BUILD_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_BUILD_NAME.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_BZR_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_BZR_UPDATE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_CHECKOUT_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_CONFIGURATION_TYPE.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_CONFIGURE_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_COVERAGE_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_COVERAGE_EXTRA_FLAGS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_CURL_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_CVS_CHECKOUT.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_CVS_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_CVS_UPDATE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_DROP_LOCATION.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_DROP_METHOD.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_DROP_SITE.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_DROP_SITE_CDASH.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_DROP_SITE_PASSWORD.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_DROP_SITE_USER.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_GIT_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_GIT_UPDATE_CUSTOM.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_GIT_UPDATE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_HG_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_HG_UPDATE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_MEMORYCHECK_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_MEMORYCHECK_COMMAND_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_MEMORYCHECK_SANITIZER_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_MEMORYCHECK_SUPPRESSIONS_FILE.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_MEMORYCHECK_TYPE.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_NIGHTLY_START_TIME.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_P4_CLIENT.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_P4_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_P4_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_P4_UPDATE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_SCP_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_SITE.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_SOURCE_DIRECTORY.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_SVN_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_SVN_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_SVN_UPDATE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_TEST_TIMEOUT.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_TRIGGER_SITE.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_UPDATE_COMMAND.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_UPDATE_OPTIONS.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_UPDATE_VERSION_ONLY.rst
+#usr/share/cmake-3.2/Help/variable/CTEST_USE_LAUNCHERS.rst
+#usr/share/cmake-3.2/Help/variable/CYGWIN.rst
+#usr/share/cmake-3.2/Help/variable/ENV.rst
+#usr/share/cmake-3.2/Help/variable/EXECUTABLE_OUTPUT_PATH.rst
+#usr/share/cmake-3.2/Help/variable/LIBRARY_OUTPUT_PATH.rst
+#usr/share/cmake-3.2/Help/variable/MINGW.rst
+#usr/share/cmake-3.2/Help/variable/MSVC.rst
+#usr/share/cmake-3.2/Help/variable/MSVC10.rst
+#usr/share/cmake-3.2/Help/variable/MSVC11.rst
+#usr/share/cmake-3.2/Help/variable/MSVC12.rst
+#usr/share/cmake-3.2/Help/variable/MSVC14.rst
+#usr/share/cmake-3.2/Help/variable/MSVC60.rst
+#usr/share/cmake-3.2/Help/variable/MSVC70.rst
+#usr/share/cmake-3.2/Help/variable/MSVC71.rst
+#usr/share/cmake-3.2/Help/variable/MSVC80.rst
+#usr/share/cmake-3.2/Help/variable/MSVC90.rst
+#usr/share/cmake-3.2/Help/variable/MSVC_IDE.rst
+#usr/share/cmake-3.2/Help/variable/MSVC_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT-NAME_BINARY_DIR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT-NAME_SOURCE_DIR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT-NAME_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT-NAME_VERSION_MAJOR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT-NAME_VERSION_MINOR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT-NAME_VERSION_PATCH.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT-NAME_VERSION_TWEAK.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_BINARY_DIR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_NAME.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_SOURCE_DIR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_VERSION.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_VERSION_MAJOR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_VERSION_MINOR.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_VERSION_PATCH.rst
+#usr/share/cmake-3.2/Help/variable/PROJECT_VERSION_TWEAK.rst
+#usr/share/cmake-3.2/Help/variable/UNIX.rst
+#usr/share/cmake-3.2/Help/variable/WIN32.rst
+#usr/share/cmake-3.2/Help/variable/WINCE.rst
+#usr/share/cmake-3.2/Help/variable/WINDOWS_PHONE.rst
+#usr/share/cmake-3.2/Help/variable/WINDOWS_STORE.rst
+#usr/share/cmake-3.2/Help/variable/XCODE_VERSION.rst
+#usr/share/cmake-3.2/Modules
+#usr/share/cmake-3.2/Modules/.NoDartCoverage
+#usr/share/cmake-3.2/Modules/AddFileDependencies.cmake
+#usr/share/cmake-3.2/Modules/AutogenInfo.cmake.in
+#usr/share/cmake-3.2/Modules/BasicConfigVersion-AnyNewerVersion.cmake.in
+#usr/share/cmake-3.2/Modules/BasicConfigVersion-ExactVersion.cmake.in
+#usr/share/cmake-3.2/Modules/BasicConfigVersion-SameMajorVersion.cmake.in
+#usr/share/cmake-3.2/Modules/BundleUtilities.cmake
+#usr/share/cmake-3.2/Modules/CMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeASM-ATTInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeASMCompiler.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeASMInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeASM_MASMInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeASM_NASMInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeAddFortranSubdirectory
+#usr/share/cmake-3.2/Modules/CMakeAddFortranSubdirectory.cmake
+#usr/share/cmake-3.2/Modules/CMakeAddFortranSubdirectory/build_mingw.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeAddFortranSubdirectory/config_mingw.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeAddNewLanguage.txt
+#usr/share/cmake-3.2/Modules/CMakeBackwardCompatibilityC.cmake
+#usr/share/cmake-3.2/Modules/CMakeBackwardCompatibilityCXX.cmake
+#usr/share/cmake-3.2/Modules/CMakeBorlandFindMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeBuildSettings.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeCCompiler.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeCCompilerABI.c
+#usr/share/cmake-3.2/Modules/CMakeCCompilerId.c.in
+#usr/share/cmake-3.2/Modules/CMakeCInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeCXXCompiler.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeCXXCompilerABI.cpp
+#usr/share/cmake-3.2/Modules/CMakeCXXCompilerId.cpp.in
+#usr/share/cmake-3.2/Modules/CMakeCXXInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake
+#usr/share/cmake-3.2/Modules/CMakeClDeps.cmake
+#usr/share/cmake-3.2/Modules/CMakeCommonLanguageInclude.cmake
+#usr/share/cmake-3.2/Modules/CMakeCompilerABI.h
+#usr/share/cmake-3.2/Modules/CMakeCompilerIdDetection.cmake
+#usr/share/cmake-3.2/Modules/CMakeConfigurableFile.in
+#usr/share/cmake-3.2/Modules/CMakeDependentOption.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineASM-ATTCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineASMCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineASM_MASMCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineASM_NASMCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineCCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineCXXCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineCompileFeatures.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineCompilerABI.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineCompilerId.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineFortranCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineJavaCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineRCCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineSystem.cmake
+#usr/share/cmake-3.2/Modules/CMakeDetermineVSServicePack.cmake
+#usr/share/cmake-3.2/Modules/CMakeExpandImportedTargets.cmake
+#usr/share/cmake-3.2/Modules/CMakeExportBuildSettings.cmake
+#usr/share/cmake-3.2/Modules/CMakeExtraGeneratorDetermineCompilerMacrosAndIncludeDirs.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindBinUtils.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindCodeBlocks.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindDependencyMacro.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindEclipseCDT4.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindFrameworks.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindJavaCommon.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindKDevelop3.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindKate.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindPackageMode.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindWMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeFindXCode.cmake
+#usr/share/cmake-3.2/Modules/CMakeForceCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeFortranCompiler.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeFortranCompilerABI.F
+#usr/share/cmake-3.2/Modules/CMakeFortranCompilerId.F.in
+#usr/share/cmake-3.2/Modules/CMakeFortranInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeGenericSystem.cmake
+#usr/share/cmake-3.2/Modules/CMakeGraphVizOptions.cmake
+#usr/share/cmake-3.2/Modules/CMakeImportBuildSettings.cmake
+#usr/share/cmake-3.2/Modules/CMakeJOMFindMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeJavaCompiler.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeJavaInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeMSYSFindMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeMinGWFindMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeNMakeFindMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeNinjaFindMake.cmake
+#usr/share/cmake-3.2/Modules/CMakePackageConfigHelpers.cmake
+#usr/share/cmake-3.2/Modules/CMakeParseArguments.cmake
+#usr/share/cmake-3.2/Modules/CMakeParseImplicitLinkInfo.cmake
+#usr/share/cmake-3.2/Modules/CMakePlatformId.h.in
+#usr/share/cmake-3.2/Modules/CMakePrintHelpers.cmake
+#usr/share/cmake-3.2/Modules/CMakePrintSystemInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakePushCheckState.cmake
+#usr/share/cmake-3.2/Modules/CMakeRCCompiler.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeRCInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeSystem.cmake.in
+#usr/share/cmake-3.2/Modules/CMakeSystemSpecificInformation.cmake
+#usr/share/cmake-3.2/Modules/CMakeSystemSpecificInitialize.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestASM-ATTCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestASMCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestASM_MASMCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestASM_NASMCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestCCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestCXXCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestCompilerCommon.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestFortranCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestGNU.c
+#usr/share/cmake-3.2/Modules/CMakeTestJavaCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestRCCompiler.cmake
+#usr/share/cmake-3.2/Modules/CMakeTestWatcomVersion.c
+#usr/share/cmake-3.2/Modules/CMakeUnixFindMake.cmake
+#usr/share/cmake-3.2/Modules/CMakeVS6BackwardCompatibility.cmake
+#usr/share/cmake-3.2/Modules/CMakeVS7BackwardCompatibility.cmake
+#usr/share/cmake-3.2/Modules/CMakeVerifyManifest.cmake
+#usr/share/cmake-3.2/Modules/CPack.DS_Store.in
+#usr/share/cmake-3.2/Modules/CPack.Description.plist.in
+#usr/share/cmake-3.2/Modules/CPack.Info.plist.in
+#usr/share/cmake-3.2/Modules/CPack.OSXScriptLauncher.in
+#usr/share/cmake-3.2/Modules/CPack.OSXScriptLauncher.rsrc.in
+#usr/share/cmake-3.2/Modules/CPack.OSXX11.Info.plist.in
+#usr/share/cmake-3.2/Modules/CPack.OSXX11.main.scpt.in
+#usr/share/cmake-3.2/Modules/CPack.RuntimeScript.in
+#usr/share/cmake-3.2/Modules/CPack.STGZ_Header.sh.in
+#usr/share/cmake-3.2/Modules/CPack.VolumeIcon.icns.in
+#usr/share/cmake-3.2/Modules/CPack.background.png.in
+#usr/share/cmake-3.2/Modules/CPack.cmake
+#usr/share/cmake-3.2/Modules/CPack.distribution.dist.in
+#usr/share/cmake-3.2/Modules/CPackBundle.cmake
+#usr/share/cmake-3.2/Modules/CPackComponent.cmake
+#usr/share/cmake-3.2/Modules/CPackCygwin.cmake
+#usr/share/cmake-3.2/Modules/CPackDMG.cmake
+#usr/share/cmake-3.2/Modules/CPackDeb.cmake
+#usr/share/cmake-3.2/Modules/CPackIFW.cmake
+#usr/share/cmake-3.2/Modules/CPackNSIS.cmake
+#usr/share/cmake-3.2/Modules/CPackPackageMaker.cmake
+#usr/share/cmake-3.2/Modules/CPackRPM.cmake
+#usr/share/cmake-3.2/Modules/CPackWIX.cmake
+#usr/share/cmake-3.2/Modules/CPackZIP.cmake
+#usr/share/cmake-3.2/Modules/CTest.cmake
+#usr/share/cmake-3.2/Modules/CTestCoverageCollectGCOV.cmake
+#usr/share/cmake-3.2/Modules/CTestScriptMode.cmake
+#usr/share/cmake-3.2/Modules/CTestTargets.cmake
+#usr/share/cmake-3.2/Modules/CTestUseLaunchers.cmake
+#usr/share/cmake-3.2/Modules/CheckCCompilerFlag.cmake
+#usr/share/cmake-3.2/Modules/CheckCSourceCompiles.cmake
+#usr/share/cmake-3.2/Modules/CheckCSourceRuns.cmake
+#usr/share/cmake-3.2/Modules/CheckCXXCompilerFlag.cmake
+#usr/share/cmake-3.2/Modules/CheckCXXSourceCompiles.cmake
+#usr/share/cmake-3.2/Modules/CheckCXXSourceRuns.cmake
+#usr/share/cmake-3.2/Modules/CheckCXXSymbolExists.cmake
+#usr/share/cmake-3.2/Modules/CheckForPthreads.c
+#usr/share/cmake-3.2/Modules/CheckFortranFunctionExists.cmake
+#usr/share/cmake-3.2/Modules/CheckFortranSourceCompiles.cmake
+#usr/share/cmake-3.2/Modules/CheckFunctionExists.c
+#usr/share/cmake-3.2/Modules/CheckFunctionExists.cmake
+#usr/share/cmake-3.2/Modules/CheckIncludeFile.c.in
+#usr/share/cmake-3.2/Modules/CheckIncludeFile.cmake
+#usr/share/cmake-3.2/Modules/CheckIncludeFile.cxx.in
+#usr/share/cmake-3.2/Modules/CheckIncludeFileCXX.cmake
+#usr/share/cmake-3.2/Modules/CheckIncludeFiles.cmake
+#usr/share/cmake-3.2/Modules/CheckLanguage.cmake
+#usr/share/cmake-3.2/Modules/CheckLibraryExists.cmake
+#usr/share/cmake-3.2/Modules/CheckLibraryExists.lists.in
+#usr/share/cmake-3.2/Modules/CheckPrototypeDefinition.c.in
+#usr/share/cmake-3.2/Modules/CheckPrototypeDefinition.cmake
+#usr/share/cmake-3.2/Modules/CheckSizeOf.cmake
+#usr/share/cmake-3.2/Modules/CheckStructHasMember.cmake
+#usr/share/cmake-3.2/Modules/CheckSymbolExists.cmake
+#usr/share/cmake-3.2/Modules/CheckTypeSize.c.in
+#usr/share/cmake-3.2/Modules/CheckTypeSize.cmake
+#usr/share/cmake-3.2/Modules/CheckTypeSizeMap.cmake.in
+#usr/share/cmake-3.2/Modules/CheckVariableExists.c
+#usr/share/cmake-3.2/Modules/CheckVariableExists.cmake
+#usr/share/cmake-3.2/Modules/Compiler
+#usr/share/cmake-3.2/Modules/Compiler/ADSP-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Absoft-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/AppleClang-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/AppleClang-C-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/AppleClang-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/AppleClang-CXX-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/AppleClang-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/AppleClang-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Borland-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-C-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-CXX-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-CXX-TestableFeatures.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang-DetermineCompilerInternal.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Clang.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Compaq-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Cray-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Cray-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Cray-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Cray-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Embarcadero-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Fujitsu-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/G95-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU-C-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU-CXX-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/GNU.cmake
+#usr/share/cmake-3.2/Modules/Compiler/HP-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/HP-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/HP-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/HP-CXX-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/HP-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/HP-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/IAR-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/IAR-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/IAR-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/IAR-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/IAR.cmake
+#usr/share/cmake-3.2/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake
+#usr/share/cmake-3.2/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Intel-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Intel-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Intel-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Intel-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Intel-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/MIPSpro-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/MIPSpro-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/MIPSpro-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/MIPSpro-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/MSVC-CXX-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/MSVC-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/MSVC-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/NAG-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PGI-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PGI-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PGI-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PGI-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PGI.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PathScale-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PathScale-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PathScale-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PathScale-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/PathScale.cmake
+#usr/share/cmake-3.2/Modules/Compiler/QCC-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/QCC-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/QCC.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SCO-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SCO-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SCO-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SCO.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SDCC-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SunPro-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SunPro-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SunPro-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SunPro-CXX-FeatureTests.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SunPro-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/SunPro-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/TI-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/TI-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/TI-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/TI-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/TinyCC-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/VisualAge-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/VisualAge-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/VisualAge-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/Watcom-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/XL-ASM.cmake
+#usr/share/cmake-3.2/Modules/Compiler/XL-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/XL-C.cmake
+#usr/share/cmake-3.2/Modules/Compiler/XL-CXX-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/XL-CXX.cmake
+#usr/share/cmake-3.2/Modules/Compiler/XL-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Compiler/XL.cmake
+#usr/share/cmake-3.2/Modules/Compiler/zOS-C-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake
+#usr/share/cmake-3.2/Modules/CompilerId
+#usr/share/cmake-3.2/Modules/CompilerId/VS-10.vcxproj.in
+#usr/share/cmake-3.2/Modules/CompilerId/VS-6.dsp.in
+#usr/share/cmake-3.2/Modules/CompilerId/VS-7.vcproj.in
+#usr/share/cmake-3.2/Modules/CompilerId/VS-Intel.vfproj.in
+#usr/share/cmake-3.2/Modules/CompilerId/VS-NsightTegra.vcxproj.in
+#usr/share/cmake-3.2/Modules/CompilerId/Xcode-1.pbxproj.in
+#usr/share/cmake-3.2/Modules/CompilerId/Xcode-2.pbxproj.in
+#usr/share/cmake-3.2/Modules/CompilerId/Xcode-3.pbxproj.in
+#usr/share/cmake-3.2/Modules/Dart.cmake
+#usr/share/cmake-3.2/Modules/DartConfiguration.tcl.in
+#usr/share/cmake-3.2/Modules/DeployQt4.cmake
+#usr/share/cmake-3.2/Modules/Documentation.cmake
+#usr/share/cmake-3.2/Modules/DummyCXXFile.cxx
+#usr/share/cmake-3.2/Modules/ExternalData.cmake
+#usr/share/cmake-3.2/Modules/ExternalData_config.cmake.in
+#usr/share/cmake-3.2/Modules/ExternalProject.cmake
+#usr/share/cmake-3.2/Modules/FLTKCompatibility.cmake
+#usr/share/cmake-3.2/Modules/FeatureSummary.cmake
+#usr/share/cmake-3.2/Modules/FindALSA.cmake
+#usr/share/cmake-3.2/Modules/FindASPELL.cmake
+#usr/share/cmake-3.2/Modules/FindAVIFile.cmake
+#usr/share/cmake-3.2/Modules/FindArmadillo.cmake
+#usr/share/cmake-3.2/Modules/FindBISON.cmake
+#usr/share/cmake-3.2/Modules/FindBLAS.cmake
+#usr/share/cmake-3.2/Modules/FindBZip2.cmake
+#usr/share/cmake-3.2/Modules/FindBacktrace.cmake
+#usr/share/cmake-3.2/Modules/FindBoost.cmake
+#usr/share/cmake-3.2/Modules/FindBullet.cmake
+#usr/share/cmake-3.2/Modules/FindCABLE.cmake
+#usr/share/cmake-3.2/Modules/FindCUDA
+#usr/share/cmake-3.2/Modules/FindCUDA.cmake
+#usr/share/cmake-3.2/Modules/FindCUDA/make2cmake.cmake
+#usr/share/cmake-3.2/Modules/FindCUDA/parse_cubin.cmake
+#usr/share/cmake-3.2/Modules/FindCUDA/run_nvcc.cmake
+#usr/share/cmake-3.2/Modules/FindCURL.cmake
+#usr/share/cmake-3.2/Modules/FindCVS.cmake
+#usr/share/cmake-3.2/Modules/FindCoin3D.cmake
+#usr/share/cmake-3.2/Modules/FindCups.cmake
+#usr/share/cmake-3.2/Modules/FindCurses.cmake
+#usr/share/cmake-3.2/Modules/FindCxxTest.cmake
+#usr/share/cmake-3.2/Modules/FindCygwin.cmake
+#usr/share/cmake-3.2/Modules/FindDCMTK.cmake
+#usr/share/cmake-3.2/Modules/FindDart.cmake
+#usr/share/cmake-3.2/Modules/FindDevIL.cmake
+#usr/share/cmake-3.2/Modules/FindDoxygen.cmake
+#usr/share/cmake-3.2/Modules/FindEXPAT.cmake
+#usr/share/cmake-3.2/Modules/FindFLEX.cmake
+#usr/share/cmake-3.2/Modules/FindFLTK.cmake
+#usr/share/cmake-3.2/Modules/FindFLTK2.cmake
+#usr/share/cmake-3.2/Modules/FindFreetype.cmake
+#usr/share/cmake-3.2/Modules/FindGCCXML.cmake
+#usr/share/cmake-3.2/Modules/FindGDAL.cmake
+#usr/share/cmake-3.2/Modules/FindGIF.cmake
+#usr/share/cmake-3.2/Modules/FindGLEW.cmake
+#usr/share/cmake-3.2/Modules/FindGLU.cmake
+#usr/share/cmake-3.2/Modules/FindGLUT.cmake
+#usr/share/cmake-3.2/Modules/FindGSL.cmake
+#usr/share/cmake-3.2/Modules/FindGTK.cmake
+#usr/share/cmake-3.2/Modules/FindGTK2.cmake
+#usr/share/cmake-3.2/Modules/FindGTest.cmake
+#usr/share/cmake-3.2/Modules/FindGettext.cmake
+#usr/share/cmake-3.2/Modules/FindGit.cmake
+#usr/share/cmake-3.2/Modules/FindGnuTLS.cmake
+#usr/share/cmake-3.2/Modules/FindGnuplot.cmake
+#usr/share/cmake-3.2/Modules/FindHDF5.cmake
+#usr/share/cmake-3.2/Modules/FindHSPELL.cmake
+#usr/share/cmake-3.2/Modules/FindHTMLHelp.cmake
+#usr/share/cmake-3.2/Modules/FindHg.cmake
+#usr/share/cmake-3.2/Modules/FindIce.cmake
+#usr/share/cmake-3.2/Modules/FindIcotool.cmake
+#usr/share/cmake-3.2/Modules/FindImageMagick.cmake
+#usr/share/cmake-3.2/Modules/FindIntl.cmake
+#usr/share/cmake-3.2/Modules/FindJNI.cmake
+#usr/share/cmake-3.2/Modules/FindJPEG.cmake
+#usr/share/cmake-3.2/Modules/FindJasper.cmake
+#usr/share/cmake-3.2/Modules/FindJava.cmake
+#usr/share/cmake-3.2/Modules/FindKDE3.cmake
+#usr/share/cmake-3.2/Modules/FindKDE4.cmake
+#usr/share/cmake-3.2/Modules/FindLAPACK.cmake
+#usr/share/cmake-3.2/Modules/FindLATEX.cmake
+#usr/share/cmake-3.2/Modules/FindLibArchive.cmake
+#usr/share/cmake-3.2/Modules/FindLibLZMA.cmake
+#usr/share/cmake-3.2/Modules/FindLibXml2.cmake
+#usr/share/cmake-3.2/Modules/FindLibXslt.cmake
+#usr/share/cmake-3.2/Modules/FindLua.cmake
+#usr/share/cmake-3.2/Modules/FindLua50.cmake
+#usr/share/cmake-3.2/Modules/FindLua51.cmake
+#usr/share/cmake-3.2/Modules/FindMFC.cmake
+#usr/share/cmake-3.2/Modules/FindMPEG.cmake
+#usr/share/cmake-3.2/Modules/FindMPEG2.cmake
+#usr/share/cmake-3.2/Modules/FindMPI.cmake
+#usr/share/cmake-3.2/Modules/FindMatlab.cmake
+#usr/share/cmake-3.2/Modules/FindMotif.cmake
+#usr/share/cmake-3.2/Modules/FindOpenAL.cmake
+#usr/share/cmake-3.2/Modules/FindOpenCL.cmake
+#usr/share/cmake-3.2/Modules/FindOpenGL.cmake
+#usr/share/cmake-3.2/Modules/FindOpenMP.cmake
+#usr/share/cmake-3.2/Modules/FindOpenSSL.cmake
+#usr/share/cmake-3.2/Modules/FindOpenSceneGraph.cmake
+#usr/share/cmake-3.2/Modules/FindOpenThreads.cmake
+#usr/share/cmake-3.2/Modules/FindPHP4.cmake
+#usr/share/cmake-3.2/Modules/FindPNG.cmake
+#usr/share/cmake-3.2/Modules/FindPackageHandleStandardArgs.cmake
+#usr/share/cmake-3.2/Modules/FindPackageMessage.cmake
+#usr/share/cmake-3.2/Modules/FindPerl.cmake
+#usr/share/cmake-3.2/Modules/FindPerlLibs.cmake
+#usr/share/cmake-3.2/Modules/FindPhysFS.cmake
+#usr/share/cmake-3.2/Modules/FindPike.cmake
+#usr/share/cmake-3.2/Modules/FindPkgConfig.cmake
+#usr/share/cmake-3.2/Modules/FindPostgreSQL.cmake
+#usr/share/cmake-3.2/Modules/FindProducer.cmake
+#usr/share/cmake-3.2/Modules/FindProtobuf.cmake
+#usr/share/cmake-3.2/Modules/FindPythonInterp.cmake
+#usr/share/cmake-3.2/Modules/FindPythonLibs.cmake
+#usr/share/cmake-3.2/Modules/FindQt.cmake
+#usr/share/cmake-3.2/Modules/FindQt3.cmake
+#usr/share/cmake-3.2/Modules/FindQt4.cmake
+#usr/share/cmake-3.2/Modules/FindQuickTime.cmake
+#usr/share/cmake-3.2/Modules/FindRTI.cmake
+#usr/share/cmake-3.2/Modules/FindRuby.cmake
+#usr/share/cmake-3.2/Modules/FindSDL.cmake
+#usr/share/cmake-3.2/Modules/FindSDL_image.cmake
+#usr/share/cmake-3.2/Modules/FindSDL_mixer.cmake
+#usr/share/cmake-3.2/Modules/FindSDL_net.cmake
+#usr/share/cmake-3.2/Modules/FindSDL_sound.cmake
+#usr/share/cmake-3.2/Modules/FindSDL_ttf.cmake
+#usr/share/cmake-3.2/Modules/FindSWIG.cmake
+#usr/share/cmake-3.2/Modules/FindSelfPackers.cmake
+#usr/share/cmake-3.2/Modules/FindSquish.cmake
+#usr/share/cmake-3.2/Modules/FindSubversion.cmake
+#usr/share/cmake-3.2/Modules/FindTCL.cmake
+#usr/share/cmake-3.2/Modules/FindTIFF.cmake
+#usr/share/cmake-3.2/Modules/FindTclStub.cmake
+#usr/share/cmake-3.2/Modules/FindTclsh.cmake
+#usr/share/cmake-3.2/Modules/FindThreads.cmake
+#usr/share/cmake-3.2/Modules/FindUnixCommands.cmake
+#usr/share/cmake-3.2/Modules/FindWget.cmake
+#usr/share/cmake-3.2/Modules/FindWish.cmake
+#usr/share/cmake-3.2/Modules/FindX11.cmake
+#usr/share/cmake-3.2/Modules/FindXMLRPC.cmake
+#usr/share/cmake-3.2/Modules/FindXercesC.cmake
+#usr/share/cmake-3.2/Modules/FindZLIB.cmake
+#usr/share/cmake-3.2/Modules/Findosg.cmake
+#usr/share/cmake-3.2/Modules/FindosgAnimation.cmake
+#usr/share/cmake-3.2/Modules/FindosgDB.cmake
+#usr/share/cmake-3.2/Modules/FindosgFX.cmake
+#usr/share/cmake-3.2/Modules/FindosgGA.cmake
+#usr/share/cmake-3.2/Modules/FindosgIntrospection.cmake
+#usr/share/cmake-3.2/Modules/FindosgManipulator.cmake
+#usr/share/cmake-3.2/Modules/FindosgParticle.cmake
+#usr/share/cmake-3.2/Modules/FindosgPresentation.cmake
+#usr/share/cmake-3.2/Modules/FindosgProducer.cmake
+#usr/share/cmake-3.2/Modules/FindosgQt.cmake
+#usr/share/cmake-3.2/Modules/FindosgShadow.cmake
+#usr/share/cmake-3.2/Modules/FindosgSim.cmake
+#usr/share/cmake-3.2/Modules/FindosgTerrain.cmake
+#usr/share/cmake-3.2/Modules/FindosgText.cmake
+#usr/share/cmake-3.2/Modules/FindosgUtil.cmake
+#usr/share/cmake-3.2/Modules/FindosgViewer.cmake
+#usr/share/cmake-3.2/Modules/FindosgVolume.cmake
+#usr/share/cmake-3.2/Modules/FindosgWidget.cmake
+#usr/share/cmake-3.2/Modules/Findosg_functions.cmake
+#usr/share/cmake-3.2/Modules/FindwxWidgets.cmake
+#usr/share/cmake-3.2/Modules/FindwxWindows.cmake
+#usr/share/cmake-3.2/Modules/FortranCInterface
+#usr/share/cmake-3.2/Modules/FortranCInterface.cmake
+#usr/share/cmake-3.2/Modules/FortranCInterface/CMakeLists.txt
+#usr/share/cmake-3.2/Modules/FortranCInterface/Detect.cmake
+#usr/share/cmake-3.2/Modules/FortranCInterface/Input.cmake.in
+#usr/share/cmake-3.2/Modules/FortranCInterface/Macro.h.in
+#usr/share/cmake-3.2/Modules/FortranCInterface/Output.cmake.in
+#usr/share/cmake-3.2/Modules/FortranCInterface/Verify
+#usr/share/cmake-3.2/Modules/FortranCInterface/Verify/CMakeLists.txt
+#usr/share/cmake-3.2/Modules/FortranCInterface/Verify/VerifyC.c
+#usr/share/cmake-3.2/Modules/FortranCInterface/Verify/VerifyCXX.cxx
+#usr/share/cmake-3.2/Modules/FortranCInterface/Verify/VerifyFortran.f
+#usr/share/cmake-3.2/Modules/FortranCInterface/Verify/main.c
+#usr/share/cmake-3.2/Modules/FortranCInterface/call_mod.f90
+#usr/share/cmake-3.2/Modules/FortranCInterface/call_sub.f
+#usr/share/cmake-3.2/Modules/FortranCInterface/main.F
+#usr/share/cmake-3.2/Modules/FortranCInterface/my_module.f90
+#usr/share/cmake-3.2/Modules/FortranCInterface/my_module_.c
+#usr/share/cmake-3.2/Modules/FortranCInterface/my_sub.f
+#usr/share/cmake-3.2/Modules/FortranCInterface/mymodule.f90
+#usr/share/cmake-3.2/Modules/FortranCInterface/mymodule_.c
+#usr/share/cmake-3.2/Modules/FortranCInterface/mysub.f
+#usr/share/cmake-3.2/Modules/FortranCInterface/symbol.c.in
+#usr/share/cmake-3.2/Modules/GNUInstallDirs.cmake
+#usr/share/cmake-3.2/Modules/GenerateExportHeader.cmake
+#usr/share/cmake-3.2/Modules/GetPrerequisites.cmake
+#usr/share/cmake-3.2/Modules/ITKCompatibility.cmake
+#usr/share/cmake-3.2/Modules/InstallRequiredSystemLibraries.cmake
+#usr/share/cmake-3.2/Modules/IntelVSImplicitPath
+#usr/share/cmake-3.2/Modules/IntelVSImplicitPath/CMakeLists.txt
+#usr/share/cmake-3.2/Modules/IntelVSImplicitPath/detect.cmake
+#usr/share/cmake-3.2/Modules/IntelVSImplicitPath/hello.f
+#usr/share/cmake-3.2/Modules/Internal
+#usr/share/cmake-3.2/Modules/Internal/FeatureTesting.cmake
+#usr/share/cmake-3.2/Modules/KDE3Macros.cmake
+#usr/share/cmake-3.2/Modules/MacOSXBundleInfo.plist.in
+#usr/share/cmake-3.2/Modules/MacOSXFrameworkInfo.plist.in
+#usr/share/cmake-3.2/Modules/MacroAddFileDependencies.cmake
+#usr/share/cmake-3.2/Modules/NSIS.InstallOptions.ini.in
+#usr/share/cmake-3.2/Modules/NSIS.template.in
+#usr/share/cmake-3.2/Modules/Platform
+#usr/share/cmake-3.2/Modules/Platform/AIX-GNU-ASM.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-VisualAge-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-VisualAge-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-VisualAge-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-XL-ASM.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-XL-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-XL-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-XL-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX-XL.cmake
+#usr/share/cmake-3.2/Modules/Platform/AIX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Android.cmake
+#usr/share/cmake-3.2/Modules/Platform/BSDOS.cmake
+#usr/share/cmake-3.2/Modules/Platform/BeOS.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneL.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-base.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-dynamic-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-dynamic-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-dynamic-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-dynamic-XL-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-dynamic-XL-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-dynamic-XL-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-dynamic.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-static-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-static-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-static-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-static-XL-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-static-XL-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-static-XL-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/BlueGeneP-static.cmake
+#usr/share/cmake-3.2/Modules/Platform/CYGWIN-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/CYGWIN-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/CYGWIN-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/CYGWIN-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/CYGWIN-GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/CYGWIN-windres.cmake
+#usr/share/cmake-3.2/Modules/Platform/CYGWIN.cmake
+#usr/share/cmake-3.2/Modules/Platform/Catamount.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Absoft-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-AppleClang-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-AppleClang-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Clang-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Clang-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Clang.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Initialize.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Intel-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Intel-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Intel-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-Intel.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-NAG-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-VisualAge-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-VisualAge-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-XL-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin-XL-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Darwin.cmake
+#usr/share/cmake-3.2/Modules/Platform/DragonFly.cmake
+#usr/share/cmake-3.2/Modules/Platform/FreeBSD.cmake
+#usr/share/cmake-3.2/Modules/Platform/GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/GNUtoMS_lib.bat.in
+#usr/share/cmake-3.2/Modules/Platform/GNUtoMS_lib.cmake
+#usr/share/cmake-3.2/Modules/Platform/Generic-ADSP-ASM.cmake
+#usr/share/cmake-3.2/Modules/Platform/Generic-ADSP-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Generic-ADSP-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Generic-ADSP-Common.cmake
+#usr/share/cmake-3.2/Modules/Platform/Generic-SDCC-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Generic.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-HP-ASM.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-HP-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-HP-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-HP-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX-HP.cmake
+#usr/share/cmake-3.2/Modules/Platform/HP-UX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Haiku.cmake
+#usr/share/cmake-3.2/Modules/Platform/IRIX.cmake
+#usr/share/cmake-3.2/Modules/Platform/IRIX64.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-Absoft-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-Clang-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-Clang-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-Intel-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-Intel-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-Intel-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-Intel.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-NAG-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PGI-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PGI-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PGI-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PGI.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PathScale-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PathScale-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PathScale-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-PathScale.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-SunPro-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-TinyCC-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-VisualAge-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-VisualAge-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-VisualAge-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-XL-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-XL-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-XL-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux-como.cmake
+#usr/share/cmake-3.2/Modules/Platform/Linux.cmake
+#usr/share/cmake-3.2/Modules/Platform/MP-RAS.cmake
+#usr/share/cmake-3.2/Modules/Platform/MirBSD.cmake
+#usr/share/cmake-3.2/Modules/Platform/NetBSD.cmake
+#usr/share/cmake-3.2/Modules/Platform/OSF1.cmake
+#usr/share/cmake-3.2/Modules/Platform/OpenBSD.cmake
+#usr/share/cmake-3.2/Modules/Platform/OpenVMS.cmake
+#usr/share/cmake-3.2/Modules/Platform/QNX.cmake
+#usr/share/cmake-3.2/Modules/Platform/RISCos.cmake
+#usr/share/cmake-3.2/Modules/Platform/SCO_SV.cmake
+#usr/share/cmake-3.2/Modules/Platform/SINIX.cmake
+#usr/share/cmake-3.2/Modules/Platform/SunOS-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/SunOS-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/SunOS-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/SunOS-GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/SunOS.cmake
+#usr/share/cmake-3.2/Modules/Platform/Tru64.cmake
+#usr/share/cmake-3.2/Modules/Platform/ULTRIX.cmake
+#usr/share/cmake-3.2/Modules/Platform/UNIX_SV.cmake
+#usr/share/cmake-3.2/Modules/Platform/UnixPaths.cmake
+#usr/share/cmake-3.2/Modules/Platform/UnixWare.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Borland-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Borland-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Clang-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Clang-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Clang.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Embarcadero-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Embarcadero-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Embarcadero.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-G95-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-GNU-C-ABI.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-GNU-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-GNU-CXX-ABI.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-GNU-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-GNU-Fortran-ABI.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-GNU-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-GNU.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Intel-ASM.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Intel-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Intel-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Intel-Fortran.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-Intel.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-MSVC-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-MSVC-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-MSVC.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-NMcl.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-df.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-wcl386.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows-windres.cmake
+#usr/share/cmake-3.2/Modules/Platform/Windows.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsCE-MSVC-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsCE-MSVC-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsCE.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsPaths.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsPhone-MSVC-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsPhone-MSVC-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsPhone.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsStore-MSVC-C.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsStore-MSVC-CXX.cmake
+#usr/share/cmake-3.2/Modules/Platform/WindowsStore.cmake
+#usr/share/cmake-3.2/Modules/Platform/Xenix.cmake
+#usr/share/cmake-3.2/Modules/Platform/eCos.cmake
+#usr/share/cmake-3.2/Modules/Platform/gas.cmake
+#usr/share/cmake-3.2/Modules/Platform/kFreeBSD.cmake
+#usr/share/cmake-3.2/Modules/Platform/syllable.cmake
+#usr/share/cmake-3.2/Modules/ProcessorCount.cmake
+#usr/share/cmake-3.2/Modules/Qt4ConfigDependentSettings.cmake
+#usr/share/cmake-3.2/Modules/Qt4Macros.cmake
+#usr/share/cmake-3.2/Modules/RepositoryInfo.txt.in
+#usr/share/cmake-3.2/Modules/SelectLibraryConfigurations.cmake
+#usr/share/cmake-3.2/Modules/Squish4RunTestCase.bat
+#usr/share/cmake-3.2/Modules/Squish4RunTestCase.sh
+#usr/share/cmake-3.2/Modules/SquishRunTestCase.bat
+#usr/share/cmake-3.2/Modules/SquishRunTestCase.sh
+#usr/share/cmake-3.2/Modules/SquishTestScript.cmake
+#usr/share/cmake-3.2/Modules/SystemInformation.cmake
+#usr/share/cmake-3.2/Modules/SystemInformation.in
+#usr/share/cmake-3.2/Modules/TestBigEndian.cmake
+#usr/share/cmake-3.2/Modules/TestCXXAcceptsFlag.cmake
+#usr/share/cmake-3.2/Modules/TestEndianess.c.in
+#usr/share/cmake-3.2/Modules/TestForANSIForScope.cmake
+#usr/share/cmake-3.2/Modules/TestForANSIStreamHeaders.cmake
+#usr/share/cmake-3.2/Modules/TestForANSIStreamHeaders.cxx
+#usr/share/cmake-3.2/Modules/TestForAnsiForScope.cxx
+#usr/share/cmake-3.2/Modules/TestForSSTREAM.cmake
+#usr/share/cmake-3.2/Modules/TestForSSTREAM.cxx
+#usr/share/cmake-3.2/Modules/TestForSTDNamespace.cmake
+#usr/share/cmake-3.2/Modules/TestForSTDNamespace.cxx
+#usr/share/cmake-3.2/Modules/UseEcos.cmake
+#usr/share/cmake-3.2/Modules/UseJava.cmake
+#usr/share/cmake-3.2/Modules/UseJavaClassFilelist.cmake
+#usr/share/cmake-3.2/Modules/UseJavaSymlinks.cmake
+#usr/share/cmake-3.2/Modules/UsePkgConfig.cmake
+#usr/share/cmake-3.2/Modules/UseQt4.cmake
+#usr/share/cmake-3.2/Modules/UseSWIG.cmake
+#usr/share/cmake-3.2/Modules/UseVTK40.cmake
+#usr/share/cmake-3.2/Modules/UseVTKBuildSettings40.cmake
+#usr/share/cmake-3.2/Modules/UseVTKConfig40.cmake
+#usr/share/cmake-3.2/Modules/Use_wxWindows.cmake
+#usr/share/cmake-3.2/Modules/UsewxWidgets.cmake
+#usr/share/cmake-3.2/Modules/VTKCompatibility.cmake
+#usr/share/cmake-3.2/Modules/WIX.template.in
+#usr/share/cmake-3.2/Modules/WriteBasicConfigVersionFile.cmake
+#usr/share/cmake-3.2/Modules/WriteCompilerDetectionHeader.cmake
+#usr/share/cmake-3.2/Modules/ecos_clean.cmake
+#usr/share/cmake-3.2/Modules/exportheader.cmake.in
+#usr/share/cmake-3.2/Modules/kde3init_dummy.cpp.in
+#usr/share/cmake-3.2/Modules/kde3uic.cmake
+#usr/share/cmake-3.2/Modules/readme.txt
+#usr/share/cmake-3.2/Templates
+#usr/share/cmake-3.2/Templates/AppleInfo.plist
+#usr/share/cmake-3.2/Templates/CMakeVSMacros1.vsmacros
+#usr/share/cmake-3.2/Templates/CMakeVSMacros2.vsmacros
+#usr/share/cmake-3.2/Templates/CMakeVisualStudio6Configurations.cmake
+#usr/share/cmake-3.2/Templates/CPack.GenericDescription.txt
+#usr/share/cmake-3.2/Templates/CPack.GenericLicense.txt
+#usr/share/cmake-3.2/Templates/CPack.GenericWelcome.txt
+#usr/share/cmake-3.2/Templates/CPackConfig.cmake.in
+#usr/share/cmake-3.2/Templates/CTestScript.cmake.in
+#usr/share/cmake-3.2/Templates/DLLFooter.dsptemplate
+#usr/share/cmake-3.2/Templates/DLLHeader.dsptemplate
+#usr/share/cmake-3.2/Templates/EXEFooter.dsptemplate
+#usr/share/cmake-3.2/Templates/EXEHeader.dsptemplate
+#usr/share/cmake-3.2/Templates/EXEWinHeader.dsptemplate
+#usr/share/cmake-3.2/Templates/TestDriver.cxx.in
+#usr/share/cmake-3.2/Templates/UtilityFooter.dsptemplate
+#usr/share/cmake-3.2/Templates/UtilityHeader.dsptemplate
+#usr/share/cmake-3.2/Templates/Windows
+#usr/share/cmake-3.2/Templates/Windows/ApplicationIcon.png
+#usr/share/cmake-3.2/Templates/Windows/Logo.png
+#usr/share/cmake-3.2/Templates/Windows/SmallLogo.png
+#usr/share/cmake-3.2/Templates/Windows/SplashScreen.png
+#usr/share/cmake-3.2/Templates/Windows/StoreLogo.png
+#usr/share/cmake-3.2/Templates/Windows/Windows_TemporaryKey.pfx
+#usr/share/cmake-3.2/Templates/cygwin-package.sh.in
+#usr/share/cmake-3.2/Templates/staticLibFooter.dsptemplate
+#usr/share/cmake-3.2/Templates/staticLibHeader.dsptemplate
+#usr/share/cmake-3.2/completions
+#usr/share/cmake-3.2/completions/cmake
+#usr/share/cmake-3.2/completions/cpack
+#usr/share/cmake-3.2/completions/ctest
+#usr/share/cmake-3.2/editors
+#usr/share/cmake-3.2/editors/emacs
+#usr/share/cmake-3.2/editors/emacs/cmake-mode.el
+#usr/share/cmake-3.2/editors/vim
+#usr/share/cmake-3.2/editors/vim/cmake-help.vim
+#usr/share/cmake-3.2/editors/vim/cmake-indent.vim
+#usr/share/cmake-3.2/editors/vim/cmake-syntax.vim
+#usr/share/cmake-3.2/include
+#usr/share/cmake-3.2/include/cmCPluginAPI.h
+#usr/share/doc/cmake-2.8.12.2
+#usr/share/doc/cmake-2.8.12.2/Copyright.txt
+#usr/share/doc/cmake-2.8.12.2/cmcompress
+#usr/share/doc/cmake-2.8.12.2/cmcompress/Copyright.txt
+#usr/share/doc/cmake-2.8.12.2/cmsys
+#usr/share/doc/cmake-2.8.12.2/cmsys/Copyright.txt
index 273249434d962bd38f90f82e5a21836474f6128c..cac4c3de14a03b9bafad0fd8eaab48d6059c76dc 100644 (file)
@@ -218,11 +218,11 @@ usr/lib/libcollectdclient.so.0.0.0
 #usr/lib/perl5/Collectd/Plugins
 #usr/lib/perl5/Collectd/Plugins/OpenVZ.pm
 #usr/lib/perl5/Collectd/Unixsock.pm
-#usr/lib/perl5/i586-linux-thread-multi
-#usr/lib/perl5/i586-linux-thread-multi/auto
-#usr/lib/perl5/i586-linux-thread-multi/auto/Collectd
-#usr/lib/perl5/i586-linux-thread-multi/auto/Collectd/.packlist
-#usr/lib/perl5/i586-linux-thread-multi/perllocal.pod
+#usr/lib/perl5/MACHINE-linux-thread-multi
+#usr/lib/perl5/MACHINE-linux-thread-multi/auto
+#usr/lib/perl5/MACHINE-linux-thread-multi/auto/Collectd
+#usr/lib/perl5/MACHINE-linux-thread-multi/auto/Collectd/.packlist
+#usr/lib/perl5/MACHINE-linux-thread-multi/perllocal.pod
 #usr/lib/pkgconfig/libcollectdclient.pc
 #usr/man/man3/Collectd::Unixsock.3
 usr/sbin/collectd
index f6cbb61efd1e8f5468dbbb785905732cb1f78634..71539ef42b939af0f01e8e6f5d93650dcae718c2 100644 (file)
@@ -115,7 +115,6 @@ var/ipfire/menu.d/70-log.menu
 #var/ipfire/menu.d/EX-mpfire.menu
 #var/ipfire/menu.d/EX-samba.menu
 #var/ipfire/menu.d/EX-tor.menu
-#var/ipfire/menu.d/EX-tripwire.menu
 #var/ipfire/menu.d/EX-wlanap.menu
 var/ipfire/modem
 #var/ipfire/modem/defaults
@@ -182,9 +181,6 @@ var/ipfire/snort
 #var/ipfire/snort/settings
 var/ipfire/time
 #var/ipfire/time/settings
-#var/ipfire/tripwire
-#var/ipfire/tripwire/report
-#var/ipfire/tripwire/settings
 var/ipfire/updatexlrator
 var/ipfire/updatexlrator/autocheck
 var/ipfire/updatexlrator/bin
index 5ce29aa4a2fe9dbeb86e31a0b66d126e50cff748..52b642abca650332c68eac99b66b3bc201f14a2a 100644 (file)
@@ -1,6 +1,13 @@
+#usr/lib/conntrack-tools
+#usr/lib/conntrack-tools/ct_helper_ftp.la
+usr/lib/conntrack-tools/ct_helper_ftp.so
+#usr/lib/conntrack-tools/ct_helper_rpc.la
+usr/lib/conntrack-tools/ct_helper_rpc.so
+#usr/lib/conntrack-tools/ct_helper_tns.la
+usr/lib/conntrack-tools/ct_helper_tns.so
 usr/sbin/conntrack
-#usr/sbin/conntrackd
-#usr/sbin/nfct
+usr/sbin/conntrackd
+usr/sbin/nfct
 #usr/share/man/man8/conntrack.8
 #usr/share/man/man8/conntrackd.8
 #usr/share/man/man8/nfct.8
index d7f2c76768e443bd1fc12925babb7cfdd853832a..32fc103bfaa9dc81e10c6a3b135a905ccc230fb4 100644 (file)
@@ -1,4 +1,3 @@
-bin/[
 bin/chgrp
 bin/chmod
 bin/chown
index af32dfa6a13243921c0011a0e849e10c8fe0b8fc..0fd281963ceece5f18f234b34ceddf51d92a9f97 100644 (file)
@@ -144,6 +144,9 @@ usr/lib/libcurl.so.4.3.0
 #usr/share/man/man3/CURLOPT_OPENSOCKETDATA.3
 #usr/share/man/man3/CURLOPT_OPENSOCKETFUNCTION.3
 #usr/share/man/man3/CURLOPT_PASSWORD.3
+#usr/share/man/man3/CURLOPT_PATH_AS_IS.3
+#usr/share/man/man3/CURLOPT_PINNEDPUBLICKEY.3
+#usr/share/man/man3/CURLOPT_PIPEWAIT.3
 #usr/share/man/man3/CURLOPT_PORT.3
 #usr/share/man/man3/CURLOPT_POST.3
 #usr/share/man/man3/CURLOPT_POSTFIELDS.3
@@ -164,6 +167,7 @@ usr/lib/libcurl.so.4.3.0
 #usr/share/man/man3/CURLOPT_PROXYTYPE.3
 #usr/share/man/man3/CURLOPT_PROXYUSERNAME.3
 #usr/share/man/man3/CURLOPT_PROXYUSERPWD.3
+#usr/share/man/man3/CURLOPT_PROXY_SERVICE_NAME.3
 #usr/share/man/man3/CURLOPT_PROXY_TRANSFER_MODE.3
 #usr/share/man/man3/CURLOPT_PUT.3
 #usr/share/man/man3/CURLOPT_QUOTE.3
@@ -185,6 +189,7 @@ usr/lib/libcurl.so.4.3.0
 #usr/share/man/man3/CURLOPT_SASL_IR.3
 #usr/share/man/man3/CURLOPT_SEEKDATA.3
 #usr/share/man/man3/CURLOPT_SEEKFUNCTION.3
+#usr/share/man/man3/CURLOPT_SERVICE_NAME.3
 #usr/share/man/man3/CURLOPT_SHARE.3
 #usr/share/man/man3/CURLOPT_SOCKOPTDATA.3
 #usr/share/man/man3/CURLOPT_SOCKOPTFUNCTION.3
@@ -209,10 +214,12 @@ usr/lib/libcurl.so.4.3.0
 #usr/share/man/man3/CURLOPT_SSL_CTX_FUNCTION.3
 #usr/share/man/man3/CURLOPT_SSL_ENABLE_ALPN.3
 #usr/share/man/man3/CURLOPT_SSL_ENABLE_NPN.3
+#usr/share/man/man3/CURLOPT_SSL_FALSESTART.3
 #usr/share/man/man3/CURLOPT_SSL_OPTIONS.3
 #usr/share/man/man3/CURLOPT_SSL_SESSIONID_CACHE.3
 #usr/share/man/man3/CURLOPT_SSL_VERIFYHOST.3
 #usr/share/man/man3/CURLOPT_SSL_VERIFYPEER.3
+#usr/share/man/man3/CURLOPT_SSL_VERIFYSTATUS.3
 #usr/share/man/man3/CURLOPT_STDERR.3
 #usr/share/man/man3/CURLOPT_TCP_KEEPALIVE.3
 #usr/share/man/man3/CURLOPT_TCP_KEEPIDLE.3
@@ -296,5 +303,6 @@ usr/lib/libcurl.so.4.3.0
 #usr/share/man/man3/libcurl-errors.3
 #usr/share/man/man3/libcurl-multi.3
 #usr/share/man/man3/libcurl-share.3
+#usr/share/man/man3/libcurl-symbols.3
 #usr/share/man/man3/libcurl-tutorial.3
 #usr/share/man/man3/libcurl.3
index 9fe53d18a1a6be3b8228ea266afdf2bb10cb1d0a..b00abdb9e33fde40711d58714e9611a567d52cf5 100644 (file)
@@ -2,7 +2,9 @@ usr/bin/cmp
 usr/bin/diff
 #usr/bin/diff3
 #usr/bin/sdiff
+#usr/info
 #usr/info/diff.info
+#usr/info/dir
 #usr/man/man1/cmp.1
 #usr/man/man1/diff.1
 #usr/man/man1/diff3.1
diff --git a/config/rootfiles/common/dma b/config/rootfiles/common/dma
new file mode 100644 (file)
index 0000000..e98e674
--- /dev/null
@@ -0,0 +1,14 @@
+etc/alternatives/sendmail
+usr/lib/dma-mbox-create
+usr/sbin/dma
+usr/sbin/dma-cleanup-spool
+usr/sbin/mailq
+usr/sbin/sendmail
+usr/sbin/sendmail.dma
+#usr/share/man/man8/dma.8
+var/ipfire/dma
+var/ipfire/dma/auth.conf
+var/ipfire/dma/dma.conf
+var/ipfire/dma/mail.conf
+var/lib/alternatives/sendmail
+var/spool/dma
diff --git a/config/rootfiles/common/flag-icons b/config/rootfiles/common/flag-icons
new file mode 100644 (file)
index 0000000..eee2c0c
--- /dev/null
@@ -0,0 +1,243 @@
+srv/web/ipfire/html/images/flags
+#srv/web/ipfire/html/images/flags/AD.png
+#srv/web/ipfire/html/images/flags/AE.png
+#srv/web/ipfire/html/images/flags/AF.png
+#srv/web/ipfire/html/images/flags/AG.png
+#srv/web/ipfire/html/images/flags/AI.png
+#srv/web/ipfire/html/images/flags/AL.png
+#srv/web/ipfire/html/images/flags/AM.png
+#srv/web/ipfire/html/images/flags/AN.png
+#srv/web/ipfire/html/images/flags/AO.png
+#srv/web/ipfire/html/images/flags/AQ.png
+#srv/web/ipfire/html/images/flags/AR.png
+#srv/web/ipfire/html/images/flags/AS.png
+#srv/web/ipfire/html/images/flags/AT.png
+#srv/web/ipfire/html/images/flags/AU.png
+#srv/web/ipfire/html/images/flags/AW.png
+#srv/web/ipfire/html/images/flags/AX.png
+#srv/web/ipfire/html/images/flags/AZ.png
+#srv/web/ipfire/html/images/flags/BA.png
+#srv/web/ipfire/html/images/flags/BB.png
+#srv/web/ipfire/html/images/flags/BD.png
+#srv/web/ipfire/html/images/flags/BE.png
+#srv/web/ipfire/html/images/flags/BF.png
+#srv/web/ipfire/html/images/flags/BG.png
+#srv/web/ipfire/html/images/flags/BH.png
+#srv/web/ipfire/html/images/flags/BI.png
+#srv/web/ipfire/html/images/flags/BJ.png
+#srv/web/ipfire/html/images/flags/BL.png
+#srv/web/ipfire/html/images/flags/BM.png
+#srv/web/ipfire/html/images/flags/BN.png
+#srv/web/ipfire/html/images/flags/BO.png
+#srv/web/ipfire/html/images/flags/BR.png
+#srv/web/ipfire/html/images/flags/BS.png
+#srv/web/ipfire/html/images/flags/BT.png
+#srv/web/ipfire/html/images/flags/BW.png
+#srv/web/ipfire/html/images/flags/BY.png
+#srv/web/ipfire/html/images/flags/BZ.png
+#srv/web/ipfire/html/images/flags/CA.png
+#srv/web/ipfire/html/images/flags/CC.png
+#srv/web/ipfire/html/images/flags/CD.png
+#srv/web/ipfire/html/images/flags/CF.png
+#srv/web/ipfire/html/images/flags/CG.png
+#srv/web/ipfire/html/images/flags/CH.png
+#srv/web/ipfire/html/images/flags/CI.png
+#srv/web/ipfire/html/images/flags/CK.png
+#srv/web/ipfire/html/images/flags/CL.png
+#srv/web/ipfire/html/images/flags/CM.png
+#srv/web/ipfire/html/images/flags/CN.png
+#srv/web/ipfire/html/images/flags/CO.png
+#srv/web/ipfire/html/images/flags/CR.png
+#srv/web/ipfire/html/images/flags/CU.png
+#srv/web/ipfire/html/images/flags/CV.png
+#srv/web/ipfire/html/images/flags/CW.png
+#srv/web/ipfire/html/images/flags/CX.png
+#srv/web/ipfire/html/images/flags/CY.png
+#srv/web/ipfire/html/images/flags/CZ.png
+#srv/web/ipfire/html/images/flags/DE.png
+#srv/web/ipfire/html/images/flags/DJ.png
+#srv/web/ipfire/html/images/flags/DK.png
+#srv/web/ipfire/html/images/flags/DM.png
+#srv/web/ipfire/html/images/flags/DO.png
+#srv/web/ipfire/html/images/flags/DZ.png
+#srv/web/ipfire/html/images/flags/EC.png
+#srv/web/ipfire/html/images/flags/EE.png
+#srv/web/ipfire/html/images/flags/EG.png
+#srv/web/ipfire/html/images/flags/EH.png
+#srv/web/ipfire/html/images/flags/ER.png
+#srv/web/ipfire/html/images/flags/ES.png
+#srv/web/ipfire/html/images/flags/ET.png
+#srv/web/ipfire/html/images/flags/EU.png
+#srv/web/ipfire/html/images/flags/FI.png
+#srv/web/ipfire/html/images/flags/FJ.png
+#srv/web/ipfire/html/images/flags/FK.png
+#srv/web/ipfire/html/images/flags/FM.png
+#srv/web/ipfire/html/images/flags/FO.png
+#srv/web/ipfire/html/images/flags/FR.png
+#srv/web/ipfire/html/images/flags/GA.png
+#srv/web/ipfire/html/images/flags/GB.png
+#srv/web/ipfire/html/images/flags/GD.png
+#srv/web/ipfire/html/images/flags/GE.png
+#srv/web/ipfire/html/images/flags/GG.png
+#srv/web/ipfire/html/images/flags/GH.png
+#srv/web/ipfire/html/images/flags/GI.png
+#srv/web/ipfire/html/images/flags/GL.png
+#srv/web/ipfire/html/images/flags/GM.png
+#srv/web/ipfire/html/images/flags/GN.png
+#srv/web/ipfire/html/images/flags/GQ.png
+#srv/web/ipfire/html/images/flags/GR.png
+#srv/web/ipfire/html/images/flags/GS.png
+#srv/web/ipfire/html/images/flags/GT.png
+#srv/web/ipfire/html/images/flags/GU.png
+#srv/web/ipfire/html/images/flags/GW.png
+#srv/web/ipfire/html/images/flags/GY.png
+#srv/web/ipfire/html/images/flags/HK.png
+#srv/web/ipfire/html/images/flags/HN.png
+#srv/web/ipfire/html/images/flags/HR.png
+#srv/web/ipfire/html/images/flags/HT.png
+#srv/web/ipfire/html/images/flags/HU.png
+#srv/web/ipfire/html/images/flags/IC.png
+#srv/web/ipfire/html/images/flags/ID.png
+#srv/web/ipfire/html/images/flags/IE.png
+#srv/web/ipfire/html/images/flags/IL.png
+#srv/web/ipfire/html/images/flags/IM.png
+#srv/web/ipfire/html/images/flags/IN.png
+#srv/web/ipfire/html/images/flags/IQ.png
+#srv/web/ipfire/html/images/flags/IR.png
+#srv/web/ipfire/html/images/flags/IS.png
+#srv/web/ipfire/html/images/flags/IT.png
+#srv/web/ipfire/html/images/flags/JE.png
+#srv/web/ipfire/html/images/flags/JM.png
+#srv/web/ipfire/html/images/flags/JO.png
+#srv/web/ipfire/html/images/flags/JP.png
+#srv/web/ipfire/html/images/flags/KE.png
+#srv/web/ipfire/html/images/flags/KG.png
+#srv/web/ipfire/html/images/flags/KH.png
+#srv/web/ipfire/html/images/flags/KI.png
+#srv/web/ipfire/html/images/flags/KM.png
+#srv/web/ipfire/html/images/flags/KN.png
+#srv/web/ipfire/html/images/flags/KP.png
+#srv/web/ipfire/html/images/flags/KR.png
+#srv/web/ipfire/html/images/flags/KW.png
+#srv/web/ipfire/html/images/flags/KY.png
+#srv/web/ipfire/html/images/flags/KZ.png
+#srv/web/ipfire/html/images/flags/LA.png
+#srv/web/ipfire/html/images/flags/LB.png
+#srv/web/ipfire/html/images/flags/LC.png
+#srv/web/ipfire/html/images/flags/LI.png
+#srv/web/ipfire/html/images/flags/LK.png
+#srv/web/ipfire/html/images/flags/LR.png
+#srv/web/ipfire/html/images/flags/LS.png
+#srv/web/ipfire/html/images/flags/LT.png
+#srv/web/ipfire/html/images/flags/LU.png
+#srv/web/ipfire/html/images/flags/LV.png
+#srv/web/ipfire/html/images/flags/LY.png
+#srv/web/ipfire/html/images/flags/MA.png
+#srv/web/ipfire/html/images/flags/MC.png
+#srv/web/ipfire/html/images/flags/MD.png
+#srv/web/ipfire/html/images/flags/ME.png
+#srv/web/ipfire/html/images/flags/MF.png
+#srv/web/ipfire/html/images/flags/MG.png
+#srv/web/ipfire/html/images/flags/MH.png
+#srv/web/ipfire/html/images/flags/MK.png
+#srv/web/ipfire/html/images/flags/ML.png
+#srv/web/ipfire/html/images/flags/MM.png
+#srv/web/ipfire/html/images/flags/MN.png
+#srv/web/ipfire/html/images/flags/MO.png
+#srv/web/ipfire/html/images/flags/MP.png
+#srv/web/ipfire/html/images/flags/MQ.png
+#srv/web/ipfire/html/images/flags/MR.png
+#srv/web/ipfire/html/images/flags/MS.png
+#srv/web/ipfire/html/images/flags/MT.png
+#srv/web/ipfire/html/images/flags/MU.png
+#srv/web/ipfire/html/images/flags/MV.png
+#srv/web/ipfire/html/images/flags/MW.png
+#srv/web/ipfire/html/images/flags/MX.png
+#srv/web/ipfire/html/images/flags/MY.png
+#srv/web/ipfire/html/images/flags/MZ.png
+#srv/web/ipfire/html/images/flags/NA.png
+#srv/web/ipfire/html/images/flags/NC.png
+#srv/web/ipfire/html/images/flags/NE.png
+#srv/web/ipfire/html/images/flags/NF.png
+#srv/web/ipfire/html/images/flags/NG.png
+#srv/web/ipfire/html/images/flags/NI.png
+#srv/web/ipfire/html/images/flags/NL.png
+#srv/web/ipfire/html/images/flags/NO.png
+#srv/web/ipfire/html/images/flags/NP.png
+#srv/web/ipfire/html/images/flags/NR.png
+#srv/web/ipfire/html/images/flags/NU.png
+#srv/web/ipfire/html/images/flags/NZ.png
+#srv/web/ipfire/html/images/flags/OM.png
+#srv/web/ipfire/html/images/flags/PA.png
+#srv/web/ipfire/html/images/flags/PE.png
+#srv/web/ipfire/html/images/flags/PF.png
+#srv/web/ipfire/html/images/flags/PG.png
+#srv/web/ipfire/html/images/flags/PH.png
+#srv/web/ipfire/html/images/flags/PK.png
+#srv/web/ipfire/html/images/flags/PL.png
+#srv/web/ipfire/html/images/flags/PN.png
+#srv/web/ipfire/html/images/flags/PR.png
+#srv/web/ipfire/html/images/flags/PS.png
+#srv/web/ipfire/html/images/flags/PT.png
+#srv/web/ipfire/html/images/flags/PW.png
+#srv/web/ipfire/html/images/flags/PY.png
+#srv/web/ipfire/html/images/flags/QA.png
+#srv/web/ipfire/html/images/flags/RO.png
+#srv/web/ipfire/html/images/flags/RS.png
+#srv/web/ipfire/html/images/flags/RU.png
+#srv/web/ipfire/html/images/flags/RW.png
+#srv/web/ipfire/html/images/flags/SA.png
+#srv/web/ipfire/html/images/flags/SB.png
+#srv/web/ipfire/html/images/flags/SC.png
+#srv/web/ipfire/html/images/flags/SD.png
+#srv/web/ipfire/html/images/flags/SE.png
+#srv/web/ipfire/html/images/flags/SG.png
+#srv/web/ipfire/html/images/flags/SH.png
+#srv/web/ipfire/html/images/flags/SI.png
+#srv/web/ipfire/html/images/flags/SK.png
+#srv/web/ipfire/html/images/flags/SL.png
+#srv/web/ipfire/html/images/flags/SM.png
+#srv/web/ipfire/html/images/flags/SN.png
+#srv/web/ipfire/html/images/flags/SO.png
+#srv/web/ipfire/html/images/flags/SR.png
+#srv/web/ipfire/html/images/flags/SS.png
+#srv/web/ipfire/html/images/flags/ST.png
+#srv/web/ipfire/html/images/flags/SV.png
+#srv/web/ipfire/html/images/flags/SY.png
+#srv/web/ipfire/html/images/flags/SZ.png
+#srv/web/ipfire/html/images/flags/TC.png
+#srv/web/ipfire/html/images/flags/TD.png
+#srv/web/ipfire/html/images/flags/TF.png
+#srv/web/ipfire/html/images/flags/TG.png
+#srv/web/ipfire/html/images/flags/TH.png
+#srv/web/ipfire/html/images/flags/TJ.png
+#srv/web/ipfire/html/images/flags/TK.png
+#srv/web/ipfire/html/images/flags/TL.png
+#srv/web/ipfire/html/images/flags/TM.png
+#srv/web/ipfire/html/images/flags/TN.png
+#srv/web/ipfire/html/images/flags/TO.png
+#srv/web/ipfire/html/images/flags/TR.png
+#srv/web/ipfire/html/images/flags/TT.png
+#srv/web/ipfire/html/images/flags/TV.png
+#srv/web/ipfire/html/images/flags/TW.png
+#srv/web/ipfire/html/images/flags/TZ.png
+#srv/web/ipfire/html/images/flags/UA.png
+#srv/web/ipfire/html/images/flags/UG.png
+#srv/web/ipfire/html/images/flags/US.png
+#srv/web/ipfire/html/images/flags/UY.png
+#srv/web/ipfire/html/images/flags/UZ.png
+#srv/web/ipfire/html/images/flags/VA.png
+#srv/web/ipfire/html/images/flags/VC.png
+#srv/web/ipfire/html/images/flags/VE.png
+#srv/web/ipfire/html/images/flags/VG.png
+#srv/web/ipfire/html/images/flags/VI.png
+#srv/web/ipfire/html/images/flags/VN.png
+#srv/web/ipfire/html/images/flags/VU.png
+#srv/web/ipfire/html/images/flags/WF.png
+#srv/web/ipfire/html/images/flags/WS.png
+#srv/web/ipfire/html/images/flags/YE.png
+#srv/web/ipfire/html/images/flags/YT.png
+#srv/web/ipfire/html/images/flags/ZA.png
+#srv/web/ipfire/html/images/flags/ZM.png
+#srv/web/ipfire/html/images/flags/ZW.png
+#srv/web/ipfire/html/images/flags/unknown.png
index 48f20e91974439cfa12c8aca49ece27a19e5471d..fd5bfb8d0a39c6cddc73d9946b8dc25785ea9ac4 100644 (file)
 #usr/lib/ldscripts/elf_i386.xsw
 #usr/lib/ldscripts/elf_i386.xu
 #usr/lib/ldscripts/elf_i386.xw
+#usr/lib/ldscripts/elf_k1om.x
+#usr/lib/ldscripts/elf_k1om.xbn
+#usr/lib/ldscripts/elf_k1om.xc
+#usr/lib/ldscripts/elf_k1om.xd
+#usr/lib/ldscripts/elf_k1om.xdc
+#usr/lib/ldscripts/elf_k1om.xdw
+#usr/lib/ldscripts/elf_k1om.xn
+#usr/lib/ldscripts/elf_k1om.xr
+#usr/lib/ldscripts/elf_k1om.xs
+#usr/lib/ldscripts/elf_k1om.xsc
+#usr/lib/ldscripts/elf_k1om.xsw
+#usr/lib/ldscripts/elf_k1om.xu
+#usr/lib/ldscripts/elf_k1om.xw
+#usr/lib/ldscripts/elf_l1om.x
+#usr/lib/ldscripts/elf_l1om.xbn
+#usr/lib/ldscripts/elf_l1om.xc
+#usr/lib/ldscripts/elf_l1om.xd
+#usr/lib/ldscripts/elf_l1om.xdc
+#usr/lib/ldscripts/elf_l1om.xdw
+#usr/lib/ldscripts/elf_l1om.xn
+#usr/lib/ldscripts/elf_l1om.xr
+#usr/lib/ldscripts/elf_l1om.xs
+#usr/lib/ldscripts/elf_l1om.xsc
+#usr/lib/ldscripts/elf_l1om.xsw
+#usr/lib/ldscripts/elf_l1om.xu
+#usr/lib/ldscripts/elf_l1om.xw
+#usr/lib/ldscripts/elf_x86_64.x
+#usr/lib/ldscripts/elf_x86_64.xbn
+#usr/lib/ldscripts/elf_x86_64.xc
+#usr/lib/ldscripts/elf_x86_64.xd
+#usr/lib/ldscripts/elf_x86_64.xdc
+#usr/lib/ldscripts/elf_x86_64.xdw
+#usr/lib/ldscripts/elf_x86_64.xn
+#usr/lib/ldscripts/elf_x86_64.xr
+#usr/lib/ldscripts/elf_x86_64.xs
+#usr/lib/ldscripts/elf_x86_64.xsc
+#usr/lib/ldscripts/elf_x86_64.xsw
+#usr/lib/ldscripts/elf_x86_64.xu
+#usr/lib/ldscripts/elf_x86_64.xw
 #usr/lib/ldscripts/i386linux.x
 #usr/lib/ldscripts/i386linux.xbn
 #usr/lib/ldscripts/i386linux.xn
 #usr/lib/ldscripts/i386linux.xr
 #usr/lib/ldscripts/i386linux.xu
-usr/lib/libbfd-2.22.so
+usr/lib/libbfd-2.24.so
 #usr/lib/libbfd.a
 #usr/lib/libbfd.la
 #usr/lib/libbfd.so
 #usr/lib/libiberty.a
-usr/lib/libopcodes-2.22.so
+usr/lib/libopcodes-2.24.so
 #usr/lib/libopcodes.a
 #usr/lib/libopcodes.la
 #usr/lib/libopcodes.so
index 10c712a7589fd9b6eb69244c233a6351f7a4d0fc..0e4b5c7baa045737fc747d4f7b7053ccdf5dbcdd 100644 (file)
 #usr/bin/cpp
 #usr/bin/g++
 #usr/bin/gcc
-#usr/bin/gccbug
+#usr/bin/gcc-ar
+#usr/bin/gcc-nm
+#usr/bin/gcc-ranlib
 #usr/bin/gcov
 #usr/bin/i586-pc-linux-gnu-c++
 #usr/bin/i586-pc-linux-gnu-g++
 #usr/bin/i586-pc-linux-gnu-gcc
-#usr/bin/i586-pc-linux-gnu-gcc-4.4.7
+#usr/bin/i586-pc-linux-gnu-gcc-4.9.3
+#usr/bin/i586-pc-linux-gnu-gcc-ar
+#usr/bin/i586-pc-linux-gnu-gcc-nm
+#usr/bin/i586-pc-linux-gnu-gcc-ranlib
 #usr/include/c++
-#usr/include/c++/4.4.7
-#usr/include/c++/4.4.7/algorithm
-#usr/include/c++/4.4.7/array
-#usr/include/c++/4.4.7/backward
-#usr/include/c++/4.4.7/backward/auto_ptr.h
-#usr/include/c++/4.4.7/backward/backward_warning.h
-#usr/include/c++/4.4.7/backward/binders.h
-#usr/include/c++/4.4.7/backward/hash_fun.h
-#usr/include/c++/4.4.7/backward/hash_map
-#usr/include/c++/4.4.7/backward/hash_set
-#usr/include/c++/4.4.7/backward/hashtable.h
-#usr/include/c++/4.4.7/backward/strstream
-#usr/include/c++/4.4.7/bits
-#usr/include/c++/4.4.7/bits/algorithmfwd.h
-#usr/include/c++/4.4.7/bits/allocator.h
-#usr/include/c++/4.4.7/bits/atomic_0.h
-#usr/include/c++/4.4.7/bits/atomic_2.h
-#usr/include/c++/4.4.7/bits/atomicfwd_c.h
-#usr/include/c++/4.4.7/bits/atomicfwd_cxx.h
-#usr/include/c++/4.4.7/bits/basic_ios.h
-#usr/include/c++/4.4.7/bits/basic_ios.tcc
-#usr/include/c++/4.4.7/bits/basic_string.h
-#usr/include/c++/4.4.7/bits/basic_string.tcc
-#usr/include/c++/4.4.7/bits/boost_concept_check.h
-#usr/include/c++/4.4.7/bits/char_traits.h
-#usr/include/c++/4.4.7/bits/cmath.tcc
-#usr/include/c++/4.4.7/bits/codecvt.h
-#usr/include/c++/4.4.7/bits/concept_check.h
-#usr/include/c++/4.4.7/bits/cpp_type_traits.h
-#usr/include/c++/4.4.7/bits/deque.tcc
-#usr/include/c++/4.4.7/bits/forward_list.h
-#usr/include/c++/4.4.7/bits/forward_list.tcc
-#usr/include/c++/4.4.7/bits/fstream.tcc
-#usr/include/c++/4.4.7/bits/functexcept.h
-#usr/include/c++/4.4.7/bits/functional_hash.h
-#usr/include/c++/4.4.7/bits/gslice.h
-#usr/include/c++/4.4.7/bits/gslice_array.h
-#usr/include/c++/4.4.7/bits/hashtable.h
-#usr/include/c++/4.4.7/bits/indirect_array.h
-#usr/include/c++/4.4.7/bits/ios_base.h
-#usr/include/c++/4.4.7/bits/istream.tcc
-#usr/include/c++/4.4.7/bits/list.tcc
-#usr/include/c++/4.4.7/bits/locale_classes.h
-#usr/include/c++/4.4.7/bits/locale_classes.tcc
-#usr/include/c++/4.4.7/bits/locale_facets.h
-#usr/include/c++/4.4.7/bits/locale_facets.tcc
-#usr/include/c++/4.4.7/bits/locale_facets_nonio.h
-#usr/include/c++/4.4.7/bits/locale_facets_nonio.tcc
-#usr/include/c++/4.4.7/bits/localefwd.h
-#usr/include/c++/4.4.7/bits/mask_array.h
-#usr/include/c++/4.4.7/bits/move.h
-#usr/include/c++/4.4.7/bits/ostream.tcc
-#usr/include/c++/4.4.7/bits/ostream_insert.h
-#usr/include/c++/4.4.7/bits/postypes.h
-#usr/include/c++/4.4.7/bits/shared_ptr.h
-#usr/include/c++/4.4.7/bits/slice_array.h
-#usr/include/c++/4.4.7/bits/sstream.tcc
-#usr/include/c++/4.4.7/bits/stl_algo.h
-#usr/include/c++/4.4.7/bits/stl_algobase.h
-#usr/include/c++/4.4.7/bits/stl_bvector.h
-#usr/include/c++/4.4.7/bits/stl_construct.h
-#usr/include/c++/4.4.7/bits/stl_deque.h
-#usr/include/c++/4.4.7/bits/stl_function.h
-#usr/include/c++/4.4.7/bits/stl_heap.h
-#usr/include/c++/4.4.7/bits/stl_iterator.h
-#usr/include/c++/4.4.7/bits/stl_iterator_base_funcs.h
-#usr/include/c++/4.4.7/bits/stl_iterator_base_types.h
-#usr/include/c++/4.4.7/bits/stl_list.h
-#usr/include/c++/4.4.7/bits/stl_map.h
-#usr/include/c++/4.4.7/bits/stl_multimap.h
-#usr/include/c++/4.4.7/bits/stl_multiset.h
-#usr/include/c++/4.4.7/bits/stl_numeric.h
-#usr/include/c++/4.4.7/bits/stl_pair.h
-#usr/include/c++/4.4.7/bits/stl_queue.h
-#usr/include/c++/4.4.7/bits/stl_raw_storage_iter.h
-#usr/include/c++/4.4.7/bits/stl_relops.h
-#usr/include/c++/4.4.7/bits/stl_set.h
-#usr/include/c++/4.4.7/bits/stl_stack.h
-#usr/include/c++/4.4.7/bits/stl_tempbuf.h
-#usr/include/c++/4.4.7/bits/stl_tree.h
-#usr/include/c++/4.4.7/bits/stl_uninitialized.h
-#usr/include/c++/4.4.7/bits/stl_vector.h
-#usr/include/c++/4.4.7/bits/stream_iterator.h
-#usr/include/c++/4.4.7/bits/streambuf.tcc
-#usr/include/c++/4.4.7/bits/streambuf_iterator.h
-#usr/include/c++/4.4.7/bits/stringfwd.h
-#usr/include/c++/4.4.7/bits/unique_ptr.h
-#usr/include/c++/4.4.7/bits/valarray_after.h
-#usr/include/c++/4.4.7/bits/valarray_array.h
-#usr/include/c++/4.4.7/bits/valarray_array.tcc
-#usr/include/c++/4.4.7/bits/valarray_before.h
-#usr/include/c++/4.4.7/bits/vector.tcc
-#usr/include/c++/4.4.7/bitset
-#usr/include/c++/4.4.7/c++0x_warning.h
-#usr/include/c++/4.4.7/cassert
-#usr/include/c++/4.4.7/ccomplex
-#usr/include/c++/4.4.7/cctype
-#usr/include/c++/4.4.7/cerrno
-#usr/include/c++/4.4.7/cfenv
-#usr/include/c++/4.4.7/cfloat
-#usr/include/c++/4.4.7/chrono
-#usr/include/c++/4.4.7/cinttypes
-#usr/include/c++/4.4.7/ciso646
-#usr/include/c++/4.4.7/climits
-#usr/include/c++/4.4.7/clocale
-#usr/include/c++/4.4.7/cmath
-#usr/include/c++/4.4.7/complex
-#usr/include/c++/4.4.7/complex.h
-#usr/include/c++/4.4.7/condition_variable
-#usr/include/c++/4.4.7/csetjmp
-#usr/include/c++/4.4.7/csignal
-#usr/include/c++/4.4.7/cstdarg
-#usr/include/c++/4.4.7/cstdatomic
-#usr/include/c++/4.4.7/cstdbool
-#usr/include/c++/4.4.7/cstddef
-#usr/include/c++/4.4.7/cstdint
-#usr/include/c++/4.4.7/cstdio
-#usr/include/c++/4.4.7/cstdlib
-#usr/include/c++/4.4.7/cstring
-#usr/include/c++/4.4.7/ctgmath
-#usr/include/c++/4.4.7/ctime
-#usr/include/c++/4.4.7/cwchar
-#usr/include/c++/4.4.7/cwctype
-#usr/include/c++/4.4.7/cxxabi-forced.h
-#usr/include/c++/4.4.7/cxxabi.h
-#usr/include/c++/4.4.7/debug
-#usr/include/c++/4.4.7/debug/bitset
-#usr/include/c++/4.4.7/debug/debug.h
-#usr/include/c++/4.4.7/debug/deque
-#usr/include/c++/4.4.7/debug/formatter.h
-#usr/include/c++/4.4.7/debug/functions.h
-#usr/include/c++/4.4.7/debug/list
-#usr/include/c++/4.4.7/debug/macros.h
-#usr/include/c++/4.4.7/debug/map
-#usr/include/c++/4.4.7/debug/map.h
-#usr/include/c++/4.4.7/debug/multimap.h
-#usr/include/c++/4.4.7/debug/multiset.h
-#usr/include/c++/4.4.7/debug/safe_base.h
-#usr/include/c++/4.4.7/debug/safe_iterator.h
-#usr/include/c++/4.4.7/debug/safe_iterator.tcc
-#usr/include/c++/4.4.7/debug/safe_sequence.h
-#usr/include/c++/4.4.7/debug/set
-#usr/include/c++/4.4.7/debug/set.h
-#usr/include/c++/4.4.7/debug/string
-#usr/include/c++/4.4.7/debug/unordered_map
-#usr/include/c++/4.4.7/debug/unordered_set
-#usr/include/c++/4.4.7/debug/vector
-#usr/include/c++/4.4.7/deque
-#usr/include/c++/4.4.7/exception
-#usr/include/c++/4.4.7/exception_defines.h
-#usr/include/c++/4.4.7/exception_ptr.h
-#usr/include/c++/4.4.7/ext
-#usr/include/c++/4.4.7/ext/algorithm
-#usr/include/c++/4.4.7/ext/array_allocator.h
-#usr/include/c++/4.4.7/ext/atomicity.h
-#usr/include/c++/4.4.7/ext/bitmap_allocator.h
-#usr/include/c++/4.4.7/ext/cast.h
-#usr/include/c++/4.4.7/ext/codecvt_specializations.h
-#usr/include/c++/4.4.7/ext/concurrence.h
-#usr/include/c++/4.4.7/ext/debug_allocator.h
-#usr/include/c++/4.4.7/ext/enc_filebuf.h
-#usr/include/c++/4.4.7/ext/extptr_allocator.h
-#usr/include/c++/4.4.7/ext/functional
-#usr/include/c++/4.4.7/ext/hash_map
-#usr/include/c++/4.4.7/ext/hash_set
-#usr/include/c++/4.4.7/ext/iterator
-#usr/include/c++/4.4.7/ext/malloc_allocator.h
-#usr/include/c++/4.4.7/ext/memory
-#usr/include/c++/4.4.7/ext/mt_allocator.h
-#usr/include/c++/4.4.7/ext/new_allocator.h
-#usr/include/c++/4.4.7/ext/numeric
-#usr/include/c++/4.4.7/ext/numeric_traits.h
-#usr/include/c++/4.4.7/ext/pb_ds
-#usr/include/c++/4.4.7/ext/pb_ds/assoc_container.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy/basic_tree_policy_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy/null_node_metadata.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_tree_policy/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/basic_types.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/cond_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/cond_key_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/bin_search_tree_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/const_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/entry_pred.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/resize_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/standard_policies.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/cond_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/container_base_dispatch.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/debug_map_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/eq_fn
-#usr/include/c++/4.4.7/ext/pb_ds/detail/eq_fn/eq_by_less.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/standard_policies.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/const_point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/null_metadata.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/lu_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/counter_lu_metadata.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/counter_lu_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/mtf_lu_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/ov_tree_map_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/child_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/cond_dtor_entry_dealtor.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/head.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/internal_node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/leaf.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/node_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/node_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/point_iterators.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/priority_queue_base_dispatch.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rb_tree_map_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/node.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/splay_tree_/traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/standard_policies.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/tree_trace_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/sample_trie_e_access_traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/string_trie_e_access_traits_imp.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/type_utils.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/types_traits.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/const_point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/exception.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/hash_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/list_update_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/priority_queue.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/tag_and_trait.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/tree_policy.hpp
-#usr/include/c++/4.4.7/ext/pb_ds/trie_policy.hpp
-#usr/include/c++/4.4.7/ext/pod_char_traits.h
-#usr/include/c++/4.4.7/ext/pointer.h
-#usr/include/c++/4.4.7/ext/pool_allocator.h
-#usr/include/c++/4.4.7/ext/rb_tree
-#usr/include/c++/4.4.7/ext/rc_string_base.h
-#usr/include/c++/4.4.7/ext/rope
-#usr/include/c++/4.4.7/ext/ropeimpl.h
-#usr/include/c++/4.4.7/ext/slist
-#usr/include/c++/4.4.7/ext/sso_string_base.h
-#usr/include/c++/4.4.7/ext/stdio_filebuf.h
-#usr/include/c++/4.4.7/ext/stdio_sync_filebuf.h
-#usr/include/c++/4.4.7/ext/string_conversions.h
-#usr/include/c++/4.4.7/ext/throw_allocator.h
-#usr/include/c++/4.4.7/ext/type_traits.h
-#usr/include/c++/4.4.7/ext/typelist.h
-#usr/include/c++/4.4.7/ext/vstring.h
-#usr/include/c++/4.4.7/ext/vstring.tcc
-#usr/include/c++/4.4.7/ext/vstring_fwd.h
-#usr/include/c++/4.4.7/ext/vstring_util.h
-#usr/include/c++/4.4.7/fenv.h
-#usr/include/c++/4.4.7/forward_list
-#usr/include/c++/4.4.7/fstream
-#usr/include/c++/4.4.7/functional
-#usr/include/c++/4.4.7/i586-pc-linux-gnu
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/atomic_word.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/basic_file.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/c++allocator.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/c++config.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/c++io.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/c++locale.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/cpu_defines.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/ctype_base.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/ctype_inline.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/ctype_noninline.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/cxxabi_tweaks.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/error_constants.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/extc++.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/gthr-default.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/gthr-posix.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/gthr-single.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/gthr-tpf.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/gthr.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/messages_members.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/os_defines.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/stdc++.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/stdtr1c++.h
-#usr/include/c++/4.4.7/i586-pc-linux-gnu/bits/time_members.h
-#usr/include/c++/4.4.7/initializer_list
-#usr/include/c++/4.4.7/iomanip
-#usr/include/c++/4.4.7/ios
-#usr/include/c++/4.4.7/iosfwd
-#usr/include/c++/4.4.7/iostream
-#usr/include/c++/4.4.7/istream
-#usr/include/c++/4.4.7/iterator
-#usr/include/c++/4.4.7/limits
-#usr/include/c++/4.4.7/list
-#usr/include/c++/4.4.7/locale
-#usr/include/c++/4.4.7/map
-#usr/include/c++/4.4.7/memory
-#usr/include/c++/4.4.7/mutex
-#usr/include/c++/4.4.7/new
-#usr/include/c++/4.4.7/numeric
-#usr/include/c++/4.4.7/ostream
-#usr/include/c++/4.4.7/parallel
-#usr/include/c++/4.4.7/parallel/algo.h
-#usr/include/c++/4.4.7/parallel/algobase.h
-#usr/include/c++/4.4.7/parallel/algorithm
-#usr/include/c++/4.4.7/parallel/algorithmfwd.h
-#usr/include/c++/4.4.7/parallel/balanced_quicksort.h
-#usr/include/c++/4.4.7/parallel/base.h
-#usr/include/c++/4.4.7/parallel/basic_iterator.h
-#usr/include/c++/4.4.7/parallel/checkers.h
-#usr/include/c++/4.4.7/parallel/compatibility.h
-#usr/include/c++/4.4.7/parallel/compiletime_settings.h
-#usr/include/c++/4.4.7/parallel/equally_split.h
-#usr/include/c++/4.4.7/parallel/features.h
-#usr/include/c++/4.4.7/parallel/find.h
-#usr/include/c++/4.4.7/parallel/find_selectors.h
-#usr/include/c++/4.4.7/parallel/for_each.h
-#usr/include/c++/4.4.7/parallel/for_each_selectors.h
-#usr/include/c++/4.4.7/parallel/iterator.h
-#usr/include/c++/4.4.7/parallel/list_partition.h
-#usr/include/c++/4.4.7/parallel/losertree.h
-#usr/include/c++/4.4.7/parallel/merge.h
-#usr/include/c++/4.4.7/parallel/multiseq_selection.h
-#usr/include/c++/4.4.7/parallel/multiway_merge.h
-#usr/include/c++/4.4.7/parallel/multiway_mergesort.h
-#usr/include/c++/4.4.7/parallel/numeric
-#usr/include/c++/4.4.7/parallel/numericfwd.h
-#usr/include/c++/4.4.7/parallel/omp_loop.h
-#usr/include/c++/4.4.7/parallel/omp_loop_static.h
-#usr/include/c++/4.4.7/parallel/par_loop.h
-#usr/include/c++/4.4.7/parallel/parallel.h
-#usr/include/c++/4.4.7/parallel/partial_sum.h
-#usr/include/c++/4.4.7/parallel/partition.h
-#usr/include/c++/4.4.7/parallel/queue.h
-#usr/include/c++/4.4.7/parallel/quicksort.h
-#usr/include/c++/4.4.7/parallel/random_number.h
-#usr/include/c++/4.4.7/parallel/random_shuffle.h
-#usr/include/c++/4.4.7/parallel/search.h
-#usr/include/c++/4.4.7/parallel/set_operations.h
-#usr/include/c++/4.4.7/parallel/settings.h
-#usr/include/c++/4.4.7/parallel/sort.h
-#usr/include/c++/4.4.7/parallel/tags.h
-#usr/include/c++/4.4.7/parallel/types.h
-#usr/include/c++/4.4.7/parallel/unique_copy.h
-#usr/include/c++/4.4.7/parallel/workstealing.h
-#usr/include/c++/4.4.7/queue
-#usr/include/c++/4.4.7/random
-#usr/include/c++/4.4.7/ratio
-#usr/include/c++/4.4.7/regex
-#usr/include/c++/4.4.7/set
-#usr/include/c++/4.4.7/sstream
-#usr/include/c++/4.4.7/stack
-#usr/include/c++/4.4.7/stdatomic.h
-#usr/include/c++/4.4.7/stdexcept
-#usr/include/c++/4.4.7/streambuf
-#usr/include/c++/4.4.7/string
-#usr/include/c++/4.4.7/system_error
-#usr/include/c++/4.4.7/tgmath.h
-#usr/include/c++/4.4.7/thread
-#usr/include/c++/4.4.7/tr1
-#usr/include/c++/4.4.7/tr1/array
-#usr/include/c++/4.4.7/tr1/bessel_function.tcc
-#usr/include/c++/4.4.7/tr1/beta_function.tcc
-#usr/include/c++/4.4.7/tr1/ccomplex
-#usr/include/c++/4.4.7/tr1/cctype
-#usr/include/c++/4.4.7/tr1/cfenv
-#usr/include/c++/4.4.7/tr1/cfloat
-#usr/include/c++/4.4.7/tr1/cinttypes
-#usr/include/c++/4.4.7/tr1/climits
-#usr/include/c++/4.4.7/tr1/cmath
-#usr/include/c++/4.4.7/tr1/complex
-#usr/include/c++/4.4.7/tr1/complex.h
-#usr/include/c++/4.4.7/tr1/cstdarg
-#usr/include/c++/4.4.7/tr1/cstdbool
-#usr/include/c++/4.4.7/tr1/cstdint
-#usr/include/c++/4.4.7/tr1/cstdio
-#usr/include/c++/4.4.7/tr1/cstdlib
-#usr/include/c++/4.4.7/tr1/ctgmath
-#usr/include/c++/4.4.7/tr1/ctime
-#usr/include/c++/4.4.7/tr1/ctype.h
-#usr/include/c++/4.4.7/tr1/cwchar
-#usr/include/c++/4.4.7/tr1/cwctype
-#usr/include/c++/4.4.7/tr1/ell_integral.tcc
-#usr/include/c++/4.4.7/tr1/exp_integral.tcc
-#usr/include/c++/4.4.7/tr1/fenv.h
-#usr/include/c++/4.4.7/tr1/float.h
-#usr/include/c++/4.4.7/tr1/functional
-#usr/include/c++/4.4.7/tr1/functional_hash.h
-#usr/include/c++/4.4.7/tr1/gamma.tcc
-#usr/include/c++/4.4.7/tr1/hashtable.h
-#usr/include/c++/4.4.7/tr1/hypergeometric.tcc
-#usr/include/c++/4.4.7/tr1/inttypes.h
-#usr/include/c++/4.4.7/tr1/legendre_function.tcc
-#usr/include/c++/4.4.7/tr1/limits.h
-#usr/include/c++/4.4.7/tr1/math.h
-#usr/include/c++/4.4.7/tr1/memory
-#usr/include/c++/4.4.7/tr1/modified_bessel_func.tcc
-#usr/include/c++/4.4.7/tr1/poly_hermite.tcc
-#usr/include/c++/4.4.7/tr1/poly_laguerre.tcc
-#usr/include/c++/4.4.7/tr1/random
-#usr/include/c++/4.4.7/tr1/regex
-#usr/include/c++/4.4.7/tr1/riemann_zeta.tcc
-#usr/include/c++/4.4.7/tr1/shared_ptr.h
-#usr/include/c++/4.4.7/tr1/special_function_util.h
-#usr/include/c++/4.4.7/tr1/stdarg.h
-#usr/include/c++/4.4.7/tr1/stdbool.h
-#usr/include/c++/4.4.7/tr1/stdint.h
-#usr/include/c++/4.4.7/tr1/stdio.h
-#usr/include/c++/4.4.7/tr1/stdlib.h
-#usr/include/c++/4.4.7/tr1/tgmath.h
-#usr/include/c++/4.4.7/tr1/tuple
-#usr/include/c++/4.4.7/tr1/type_traits
-#usr/include/c++/4.4.7/tr1/unordered_map
-#usr/include/c++/4.4.7/tr1/unordered_set
-#usr/include/c++/4.4.7/tr1/utility
-#usr/include/c++/4.4.7/tr1/wchar.h
-#usr/include/c++/4.4.7/tr1/wctype.h
-#usr/include/c++/4.4.7/tr1_impl
-#usr/include/c++/4.4.7/tr1_impl/array
-#usr/include/c++/4.4.7/tr1_impl/boost_sp_counted_base.h
-#usr/include/c++/4.4.7/tr1_impl/cctype
-#usr/include/c++/4.4.7/tr1_impl/cfenv
-#usr/include/c++/4.4.7/tr1_impl/cinttypes
-#usr/include/c++/4.4.7/tr1_impl/cmath
-#usr/include/c++/4.4.7/tr1_impl/complex
-#usr/include/c++/4.4.7/tr1_impl/cstdint
-#usr/include/c++/4.4.7/tr1_impl/cstdio
-#usr/include/c++/4.4.7/tr1_impl/cstdlib
-#usr/include/c++/4.4.7/tr1_impl/cwchar
-#usr/include/c++/4.4.7/tr1_impl/cwctype
-#usr/include/c++/4.4.7/tr1_impl/functional
-#usr/include/c++/4.4.7/tr1_impl/functional_hash.h
-#usr/include/c++/4.4.7/tr1_impl/hashtable
-#usr/include/c++/4.4.7/tr1_impl/hashtable_policy.h
-#usr/include/c++/4.4.7/tr1_impl/random
-#usr/include/c++/4.4.7/tr1_impl/random.tcc
-#usr/include/c++/4.4.7/tr1_impl/regex
-#usr/include/c++/4.4.7/tr1_impl/type_traits
-#usr/include/c++/4.4.7/tr1_impl/unordered_map
-#usr/include/c++/4.4.7/tr1_impl/unordered_set
-#usr/include/c++/4.4.7/tr1_impl/utility
-#usr/include/c++/4.4.7/tuple
-#usr/include/c++/4.4.7/type_traits
-#usr/include/c++/4.4.7/typeinfo
-#usr/include/c++/4.4.7/unordered_map
-#usr/include/c++/4.4.7/unordered_set
-#usr/include/c++/4.4.7/utility
-#usr/include/c++/4.4.7/valarray
-#usr/include/c++/4.4.7/vector
-#usr/info
-#usr/info/cpp.info
-#usr/info/cppinternals.info
-#usr/info/dir
-#usr/info/gcc.info
-#usr/info/gccinstall.info
-#usr/info/gccint.info
-#usr/info/libgomp.info
+#usr/include/c++/4.9.3
+#usr/include/c++/4.9.3/algorithm
+#usr/include/c++/4.9.3/array
+#usr/include/c++/4.9.3/atomic
+#usr/include/c++/4.9.3/backward
+#usr/include/c++/4.9.3/backward/auto_ptr.h
+#usr/include/c++/4.9.3/backward/backward_warning.h
+#usr/include/c++/4.9.3/backward/binders.h
+#usr/include/c++/4.9.3/backward/hash_fun.h
+#usr/include/c++/4.9.3/backward/hash_map
+#usr/include/c++/4.9.3/backward/hash_set
+#usr/include/c++/4.9.3/backward/hashtable.h
+#usr/include/c++/4.9.3/backward/strstream
+#usr/include/c++/4.9.3/bits
+#usr/include/c++/4.9.3/bits/algorithmfwd.h
+#usr/include/c++/4.9.3/bits/alloc_traits.h
+#usr/include/c++/4.9.3/bits/allocator.h
+#usr/include/c++/4.9.3/bits/atomic_base.h
+#usr/include/c++/4.9.3/bits/atomic_lockfree_defines.h
+#usr/include/c++/4.9.3/bits/basic_ios.h
+#usr/include/c++/4.9.3/bits/basic_ios.tcc
+#usr/include/c++/4.9.3/bits/basic_string.h
+#usr/include/c++/4.9.3/bits/basic_string.tcc
+#usr/include/c++/4.9.3/bits/boost_concept_check.h
+#usr/include/c++/4.9.3/bits/c++0x_warning.h
+#usr/include/c++/4.9.3/bits/c++14_warning.h
+#usr/include/c++/4.9.3/bits/char_traits.h
+#usr/include/c++/4.9.3/bits/codecvt.h
+#usr/include/c++/4.9.3/bits/concept_check.h
+#usr/include/c++/4.9.3/bits/cpp_type_traits.h
+#usr/include/c++/4.9.3/bits/cxxabi_forced.h
+#usr/include/c++/4.9.3/bits/deque.tcc
+#usr/include/c++/4.9.3/bits/enable_special_members.h
+#usr/include/c++/4.9.3/bits/exception_defines.h
+#usr/include/c++/4.9.3/bits/exception_ptr.h
+#usr/include/c++/4.9.3/bits/forward_list.h
+#usr/include/c++/4.9.3/bits/forward_list.tcc
+#usr/include/c++/4.9.3/bits/fstream.tcc
+#usr/include/c++/4.9.3/bits/functexcept.h
+#usr/include/c++/4.9.3/bits/functional_hash.h
+#usr/include/c++/4.9.3/bits/gslice.h
+#usr/include/c++/4.9.3/bits/gslice_array.h
+#usr/include/c++/4.9.3/bits/hash_bytes.h
+#usr/include/c++/4.9.3/bits/hashtable.h
+#usr/include/c++/4.9.3/bits/hashtable_policy.h
+#usr/include/c++/4.9.3/bits/indirect_array.h
+#usr/include/c++/4.9.3/bits/ios_base.h
+#usr/include/c++/4.9.3/bits/istream.tcc
+#usr/include/c++/4.9.3/bits/list.tcc
+#usr/include/c++/4.9.3/bits/locale_classes.h
+#usr/include/c++/4.9.3/bits/locale_classes.tcc
+#usr/include/c++/4.9.3/bits/locale_facets.h
+#usr/include/c++/4.9.3/bits/locale_facets.tcc
+#usr/include/c++/4.9.3/bits/locale_facets_nonio.h
+#usr/include/c++/4.9.3/bits/locale_facets_nonio.tcc
+#usr/include/c++/4.9.3/bits/localefwd.h
+#usr/include/c++/4.9.3/bits/mask_array.h
+#usr/include/c++/4.9.3/bits/memoryfwd.h
+#usr/include/c++/4.9.3/bits/move.h
+#usr/include/c++/4.9.3/bits/nested_exception.h
+#usr/include/c++/4.9.3/bits/ostream.tcc
+#usr/include/c++/4.9.3/bits/ostream_insert.h
+#usr/include/c++/4.9.3/bits/parse_numbers.h
+#usr/include/c++/4.9.3/bits/postypes.h
+#usr/include/c++/4.9.3/bits/predefined_ops.h
+#usr/include/c++/4.9.3/bits/ptr_traits.h
+#usr/include/c++/4.9.3/bits/random.h
+#usr/include/c++/4.9.3/bits/random.tcc
+#usr/include/c++/4.9.3/bits/range_access.h
+#usr/include/c++/4.9.3/bits/regex.h
+#usr/include/c++/4.9.3/bits/regex.tcc
+#usr/include/c++/4.9.3/bits/regex_automaton.h
+#usr/include/c++/4.9.3/bits/regex_automaton.tcc
+#usr/include/c++/4.9.3/bits/regex_compiler.h
+#usr/include/c++/4.9.3/bits/regex_compiler.tcc
+#usr/include/c++/4.9.3/bits/regex_constants.h
+#usr/include/c++/4.9.3/bits/regex_error.h
+#usr/include/c++/4.9.3/bits/regex_executor.h
+#usr/include/c++/4.9.3/bits/regex_executor.tcc
+#usr/include/c++/4.9.3/bits/regex_scanner.h
+#usr/include/c++/4.9.3/bits/regex_scanner.tcc
+#usr/include/c++/4.9.3/bits/shared_ptr.h
+#usr/include/c++/4.9.3/bits/shared_ptr_base.h
+#usr/include/c++/4.9.3/bits/slice_array.h
+#usr/include/c++/4.9.3/bits/sstream.tcc
+#usr/include/c++/4.9.3/bits/stl_algo.h
+#usr/include/c++/4.9.3/bits/stl_algobase.h
+#usr/include/c++/4.9.3/bits/stl_bvector.h
+#usr/include/c++/4.9.3/bits/stl_construct.h
+#usr/include/c++/4.9.3/bits/stl_deque.h
+#usr/include/c++/4.9.3/bits/stl_function.h
+#usr/include/c++/4.9.3/bits/stl_heap.h
+#usr/include/c++/4.9.3/bits/stl_iterator.h
+#usr/include/c++/4.9.3/bits/stl_iterator_base_funcs.h
+#usr/include/c++/4.9.3/bits/stl_iterator_base_types.h
+#usr/include/c++/4.9.3/bits/stl_list.h
+#usr/include/c++/4.9.3/bits/stl_map.h
+#usr/include/c++/4.9.3/bits/stl_multimap.h
+#usr/include/c++/4.9.3/bits/stl_multiset.h
+#usr/include/c++/4.9.3/bits/stl_numeric.h
+#usr/include/c++/4.9.3/bits/stl_pair.h
+#usr/include/c++/4.9.3/bits/stl_queue.h
+#usr/include/c++/4.9.3/bits/stl_raw_storage_iter.h
+#usr/include/c++/4.9.3/bits/stl_relops.h
+#usr/include/c++/4.9.3/bits/stl_set.h
+#usr/include/c++/4.9.3/bits/stl_stack.h
+#usr/include/c++/4.9.3/bits/stl_tempbuf.h
+#usr/include/c++/4.9.3/bits/stl_tree.h
+#usr/include/c++/4.9.3/bits/stl_uninitialized.h
+#usr/include/c++/4.9.3/bits/stl_vector.h
+#usr/include/c++/4.9.3/bits/stream_iterator.h
+#usr/include/c++/4.9.3/bits/streambuf.tcc
+#usr/include/c++/4.9.3/bits/streambuf_iterator.h
+#usr/include/c++/4.9.3/bits/stringfwd.h
+#usr/include/c++/4.9.3/bits/unique_ptr.h
+#usr/include/c++/4.9.3/bits/unordered_map.h
+#usr/include/c++/4.9.3/bits/unordered_set.h
+#usr/include/c++/4.9.3/bits/uses_allocator.h
+#usr/include/c++/4.9.3/bits/valarray_after.h
+#usr/include/c++/4.9.3/bits/valarray_array.h
+#usr/include/c++/4.9.3/bits/valarray_array.tcc
+#usr/include/c++/4.9.3/bits/valarray_before.h
+#usr/include/c++/4.9.3/bits/vector.tcc
+#usr/include/c++/4.9.3/bitset
+#usr/include/c++/4.9.3/cassert
+#usr/include/c++/4.9.3/ccomplex
+#usr/include/c++/4.9.3/cctype
+#usr/include/c++/4.9.3/cerrno
+#usr/include/c++/4.9.3/cfenv
+#usr/include/c++/4.9.3/cfloat
+#usr/include/c++/4.9.3/chrono
+#usr/include/c++/4.9.3/cinttypes
+#usr/include/c++/4.9.3/ciso646
+#usr/include/c++/4.9.3/climits
+#usr/include/c++/4.9.3/clocale
+#usr/include/c++/4.9.3/cmath
+#usr/include/c++/4.9.3/complex
+#usr/include/c++/4.9.3/complex.h
+#usr/include/c++/4.9.3/condition_variable
+#usr/include/c++/4.9.3/csetjmp
+#usr/include/c++/4.9.3/csignal
+#usr/include/c++/4.9.3/cstdalign
+#usr/include/c++/4.9.3/cstdarg
+#usr/include/c++/4.9.3/cstdbool
+#usr/include/c++/4.9.3/cstddef
+#usr/include/c++/4.9.3/cstdint
+#usr/include/c++/4.9.3/cstdio
+#usr/include/c++/4.9.3/cstdlib
+#usr/include/c++/4.9.3/cstring
+#usr/include/c++/4.9.3/ctgmath
+#usr/include/c++/4.9.3/ctime
+#usr/include/c++/4.9.3/cwchar
+#usr/include/c++/4.9.3/cwctype
+#usr/include/c++/4.9.3/cxxabi.h
+#usr/include/c++/4.9.3/debug
+#usr/include/c++/4.9.3/debug/array
+#usr/include/c++/4.9.3/debug/bitset
+#usr/include/c++/4.9.3/debug/debug.h
+#usr/include/c++/4.9.3/debug/deque
+#usr/include/c++/4.9.3/debug/formatter.h
+#usr/include/c++/4.9.3/debug/forward_list
+#usr/include/c++/4.9.3/debug/functions.h
+#usr/include/c++/4.9.3/debug/list
+#usr/include/c++/4.9.3/debug/macros.h
+#usr/include/c++/4.9.3/debug/map
+#usr/include/c++/4.9.3/debug/map.h
+#usr/include/c++/4.9.3/debug/multimap.h
+#usr/include/c++/4.9.3/debug/multiset.h
+#usr/include/c++/4.9.3/debug/safe_base.h
+#usr/include/c++/4.9.3/debug/safe_iterator.h
+#usr/include/c++/4.9.3/debug/safe_iterator.tcc
+#usr/include/c++/4.9.3/debug/safe_local_iterator.h
+#usr/include/c++/4.9.3/debug/safe_local_iterator.tcc
+#usr/include/c++/4.9.3/debug/safe_sequence.h
+#usr/include/c++/4.9.3/debug/safe_sequence.tcc
+#usr/include/c++/4.9.3/debug/safe_unordered_base.h
+#usr/include/c++/4.9.3/debug/safe_unordered_container.h
+#usr/include/c++/4.9.3/debug/safe_unordered_container.tcc
+#usr/include/c++/4.9.3/debug/set
+#usr/include/c++/4.9.3/debug/set.h
+#usr/include/c++/4.9.3/debug/string
+#usr/include/c++/4.9.3/debug/unordered_map
+#usr/include/c++/4.9.3/debug/unordered_set
+#usr/include/c++/4.9.3/debug/vector
+#usr/include/c++/4.9.3/decimal
+#usr/include/c++/4.9.3/decimal/decimal
+#usr/include/c++/4.9.3/decimal/decimal.h
+#usr/include/c++/4.9.3/deque
+#usr/include/c++/4.9.3/exception
+#usr/include/c++/4.9.3/experimental
+#usr/include/c++/4.9.3/experimental/optional
+#usr/include/c++/4.9.3/experimental/string_view
+#usr/include/c++/4.9.3/experimental/string_view.tcc
+#usr/include/c++/4.9.3/ext
+#usr/include/c++/4.9.3/ext/algorithm
+#usr/include/c++/4.9.3/ext/aligned_buffer.h
+#usr/include/c++/4.9.3/ext/alloc_traits.h
+#usr/include/c++/4.9.3/ext/array_allocator.h
+#usr/include/c++/4.9.3/ext/atomicity.h
+#usr/include/c++/4.9.3/ext/bitmap_allocator.h
+#usr/include/c++/4.9.3/ext/cast.h
+#usr/include/c++/4.9.3/ext/cmath
+#usr/include/c++/4.9.3/ext/codecvt_specializations.h
+#usr/include/c++/4.9.3/ext/concurrence.h
+#usr/include/c++/4.9.3/ext/debug_allocator.h
+#usr/include/c++/4.9.3/ext/enc_filebuf.h
+#usr/include/c++/4.9.3/ext/extptr_allocator.h
+#usr/include/c++/4.9.3/ext/functional
+#usr/include/c++/4.9.3/ext/hash_map
+#usr/include/c++/4.9.3/ext/hash_set
+#usr/include/c++/4.9.3/ext/iterator
+#usr/include/c++/4.9.3/ext/malloc_allocator.h
+#usr/include/c++/4.9.3/ext/memory
+#usr/include/c++/4.9.3/ext/mt_allocator.h
+#usr/include/c++/4.9.3/ext/new_allocator.h
+#usr/include/c++/4.9.3/ext/numeric
+#usr/include/c++/4.9.3/ext/numeric_traits.h
+#usr/include/c++/4.9.3/ext/pb_ds
+#usr/include/c++/4.9.3/ext/pb_ds/assoc_container.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/entry_pred.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/resize_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/branch_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cond_dealtor.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/container_base_dispatch.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/debug_map_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn/eq_by_less.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/lu_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/priority_queue_base_dispatch.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/standard_policies.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_trace_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/type_utils.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/types_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/exception.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/hash_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/list_update_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/priority_queue.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/tag_and_trait.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/tree_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/trie_policy.hpp
+#usr/include/c++/4.9.3/ext/pod_char_traits.h
+#usr/include/c++/4.9.3/ext/pointer.h
+#usr/include/c++/4.9.3/ext/pool_allocator.h
+#usr/include/c++/4.9.3/ext/random
+#usr/include/c++/4.9.3/ext/random.tcc
+#usr/include/c++/4.9.3/ext/rb_tree
+#usr/include/c++/4.9.3/ext/rc_string_base.h
+#usr/include/c++/4.9.3/ext/rope
+#usr/include/c++/4.9.3/ext/ropeimpl.h
+#usr/include/c++/4.9.3/ext/slist
+#usr/include/c++/4.9.3/ext/sso_string_base.h
+#usr/include/c++/4.9.3/ext/stdio_filebuf.h
+#usr/include/c++/4.9.3/ext/stdio_sync_filebuf.h
+#usr/include/c++/4.9.3/ext/string_conversions.h
+#usr/include/c++/4.9.3/ext/throw_allocator.h
+#usr/include/c++/4.9.3/ext/type_traits.h
+#usr/include/c++/4.9.3/ext/typelist.h
+#usr/include/c++/4.9.3/ext/vstring.h
+#usr/include/c++/4.9.3/ext/vstring.tcc
+#usr/include/c++/4.9.3/ext/vstring_fwd.h
+#usr/include/c++/4.9.3/ext/vstring_util.h
+#usr/include/c++/4.9.3/fenv.h
+#usr/include/c++/4.9.3/forward_list
+#usr/include/c++/4.9.3/fstream
+#usr/include/c++/4.9.3/functional
+#usr/include/c++/4.9.3/future
+#usr/include/c++/4.9.3/i586-pc-linux-gnu
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/atomic_word.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/basic_file.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/c++allocator.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/c++config.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/c++io.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/c++locale.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/cpu_defines.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/ctype_base.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/ctype_inline.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/cxxabi_tweaks.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/error_constants.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/extc++.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/gthr-default.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/gthr-posix.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/gthr-single.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/gthr.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/messages_members.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/opt_random.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/os_defines.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/stdc++.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/stdtr1c++.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/bits/time_members.h
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/ext
+#usr/include/c++/4.9.3/i586-pc-linux-gnu/ext/opt_random.h
+#usr/include/c++/4.9.3/initializer_list
+#usr/include/c++/4.9.3/iomanip
+#usr/include/c++/4.9.3/ios
+#usr/include/c++/4.9.3/iosfwd
+#usr/include/c++/4.9.3/iostream
+#usr/include/c++/4.9.3/istream
+#usr/include/c++/4.9.3/iterator
+#usr/include/c++/4.9.3/limits
+#usr/include/c++/4.9.3/list
+#usr/include/c++/4.9.3/locale
+#usr/include/c++/4.9.3/map
+#usr/include/c++/4.9.3/memory
+#usr/include/c++/4.9.3/mutex
+#usr/include/c++/4.9.3/new
+#usr/include/c++/4.9.3/numeric
+#usr/include/c++/4.9.3/ostream
+#usr/include/c++/4.9.3/parallel
+#usr/include/c++/4.9.3/parallel/algo.h
+#usr/include/c++/4.9.3/parallel/algobase.h
+#usr/include/c++/4.9.3/parallel/algorithm
+#usr/include/c++/4.9.3/parallel/algorithmfwd.h
+#usr/include/c++/4.9.3/parallel/balanced_quicksort.h
+#usr/include/c++/4.9.3/parallel/base.h
+#usr/include/c++/4.9.3/parallel/basic_iterator.h
+#usr/include/c++/4.9.3/parallel/checkers.h
+#usr/include/c++/4.9.3/parallel/compatibility.h
+#usr/include/c++/4.9.3/parallel/compiletime_settings.h
+#usr/include/c++/4.9.3/parallel/equally_split.h
+#usr/include/c++/4.9.3/parallel/features.h
+#usr/include/c++/4.9.3/parallel/find.h
+#usr/include/c++/4.9.3/parallel/find_selectors.h
+#usr/include/c++/4.9.3/parallel/for_each.h
+#usr/include/c++/4.9.3/parallel/for_each_selectors.h
+#usr/include/c++/4.9.3/parallel/iterator.h
+#usr/include/c++/4.9.3/parallel/list_partition.h
+#usr/include/c++/4.9.3/parallel/losertree.h
+#usr/include/c++/4.9.3/parallel/merge.h
+#usr/include/c++/4.9.3/parallel/multiseq_selection.h
+#usr/include/c++/4.9.3/parallel/multiway_merge.h
+#usr/include/c++/4.9.3/parallel/multiway_mergesort.h
+#usr/include/c++/4.9.3/parallel/numeric
+#usr/include/c++/4.9.3/parallel/numericfwd.h
+#usr/include/c++/4.9.3/parallel/omp_loop.h
+#usr/include/c++/4.9.3/parallel/omp_loop_static.h
+#usr/include/c++/4.9.3/parallel/par_loop.h
+#usr/include/c++/4.9.3/parallel/parallel.h
+#usr/include/c++/4.9.3/parallel/partial_sum.h
+#usr/include/c++/4.9.3/parallel/partition.h
+#usr/include/c++/4.9.3/parallel/queue.h
+#usr/include/c++/4.9.3/parallel/quicksort.h
+#usr/include/c++/4.9.3/parallel/random_number.h
+#usr/include/c++/4.9.3/parallel/random_shuffle.h
+#usr/include/c++/4.9.3/parallel/search.h
+#usr/include/c++/4.9.3/parallel/set_operations.h
+#usr/include/c++/4.9.3/parallel/settings.h
+#usr/include/c++/4.9.3/parallel/sort.h
+#usr/include/c++/4.9.3/parallel/tags.h
+#usr/include/c++/4.9.3/parallel/types.h
+#usr/include/c++/4.9.3/parallel/unique_copy.h
+#usr/include/c++/4.9.3/parallel/workstealing.h
+#usr/include/c++/4.9.3/profile
+#usr/include/c++/4.9.3/profile/array
+#usr/include/c++/4.9.3/profile/base.h
+#usr/include/c++/4.9.3/profile/bitset
+#usr/include/c++/4.9.3/profile/deque
+#usr/include/c++/4.9.3/profile/forward_list
+#usr/include/c++/4.9.3/profile/impl
+#usr/include/c++/4.9.3/profile/impl/profiler.h
+#usr/include/c++/4.9.3/profile/impl/profiler_algos.h
+#usr/include/c++/4.9.3/profile/impl/profiler_container_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_hash_func.h
+#usr/include/c++/4.9.3/profile/impl/profiler_hashtable_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_list_to_slist.h
+#usr/include/c++/4.9.3/profile/impl/profiler_list_to_vector.h
+#usr/include/c++/4.9.3/profile/impl/profiler_map_to_unordered_map.h
+#usr/include/c++/4.9.3/profile/impl/profiler_node.h
+#usr/include/c++/4.9.3/profile/impl/profiler_state.h
+#usr/include/c++/4.9.3/profile/impl/profiler_trace.h
+#usr/include/c++/4.9.3/profile/impl/profiler_vector_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_vector_to_list.h
+#usr/include/c++/4.9.3/profile/iterator_tracker.h
+#usr/include/c++/4.9.3/profile/list
+#usr/include/c++/4.9.3/profile/map
+#usr/include/c++/4.9.3/profile/map.h
+#usr/include/c++/4.9.3/profile/multimap.h
+#usr/include/c++/4.9.3/profile/multiset.h
+#usr/include/c++/4.9.3/profile/set
+#usr/include/c++/4.9.3/profile/set.h
+#usr/include/c++/4.9.3/profile/unordered_base.h
+#usr/include/c++/4.9.3/profile/unordered_map
+#usr/include/c++/4.9.3/profile/unordered_set
+#usr/include/c++/4.9.3/profile/vector
+#usr/include/c++/4.9.3/queue
+#usr/include/c++/4.9.3/random
+#usr/include/c++/4.9.3/ratio
+#usr/include/c++/4.9.3/regex
+#usr/include/c++/4.9.3/scoped_allocator
+#usr/include/c++/4.9.3/set
+#usr/include/c++/4.9.3/shared_mutex
+#usr/include/c++/4.9.3/sstream
+#usr/include/c++/4.9.3/stack
+#usr/include/c++/4.9.3/stdexcept
+#usr/include/c++/4.9.3/streambuf
+#usr/include/c++/4.9.3/string
+#usr/include/c++/4.9.3/system_error
+#usr/include/c++/4.9.3/tgmath.h
+#usr/include/c++/4.9.3/thread
+#usr/include/c++/4.9.3/tr1
+#usr/include/c++/4.9.3/tr1/array
+#usr/include/c++/4.9.3/tr1/bessel_function.tcc
+#usr/include/c++/4.9.3/tr1/beta_function.tcc
+#usr/include/c++/4.9.3/tr1/ccomplex
+#usr/include/c++/4.9.3/tr1/cctype
+#usr/include/c++/4.9.3/tr1/cfenv
+#usr/include/c++/4.9.3/tr1/cfloat
+#usr/include/c++/4.9.3/tr1/cinttypes
+#usr/include/c++/4.9.3/tr1/climits
+#usr/include/c++/4.9.3/tr1/cmath
+#usr/include/c++/4.9.3/tr1/complex
+#usr/include/c++/4.9.3/tr1/complex.h
+#usr/include/c++/4.9.3/tr1/cstdarg
+#usr/include/c++/4.9.3/tr1/cstdbool
+#usr/include/c++/4.9.3/tr1/cstdint
+#usr/include/c++/4.9.3/tr1/cstdio
+#usr/include/c++/4.9.3/tr1/cstdlib
+#usr/include/c++/4.9.3/tr1/ctgmath
+#usr/include/c++/4.9.3/tr1/ctime
+#usr/include/c++/4.9.3/tr1/ctype.h
+#usr/include/c++/4.9.3/tr1/cwchar
+#usr/include/c++/4.9.3/tr1/cwctype
+#usr/include/c++/4.9.3/tr1/ell_integral.tcc
+#usr/include/c++/4.9.3/tr1/exp_integral.tcc
+#usr/include/c++/4.9.3/tr1/fenv.h
+#usr/include/c++/4.9.3/tr1/float.h
+#usr/include/c++/4.9.3/tr1/functional
+#usr/include/c++/4.9.3/tr1/functional_hash.h
+#usr/include/c++/4.9.3/tr1/gamma.tcc
+#usr/include/c++/4.9.3/tr1/hashtable.h
+#usr/include/c++/4.9.3/tr1/hashtable_policy.h
+#usr/include/c++/4.9.3/tr1/hypergeometric.tcc
+#usr/include/c++/4.9.3/tr1/inttypes.h
+#usr/include/c++/4.9.3/tr1/legendre_function.tcc
+#usr/include/c++/4.9.3/tr1/limits.h
+#usr/include/c++/4.9.3/tr1/math.h
+#usr/include/c++/4.9.3/tr1/memory
+#usr/include/c++/4.9.3/tr1/modified_bessel_func.tcc
+#usr/include/c++/4.9.3/tr1/poly_hermite.tcc
+#usr/include/c++/4.9.3/tr1/poly_laguerre.tcc
+#usr/include/c++/4.9.3/tr1/random
+#usr/include/c++/4.9.3/tr1/random.h
+#usr/include/c++/4.9.3/tr1/random.tcc
+#usr/include/c++/4.9.3/tr1/regex
+#usr/include/c++/4.9.3/tr1/riemann_zeta.tcc
+#usr/include/c++/4.9.3/tr1/shared_ptr.h
+#usr/include/c++/4.9.3/tr1/special_function_util.h
+#usr/include/c++/4.9.3/tr1/stdarg.h
+#usr/include/c++/4.9.3/tr1/stdbool.h
+#usr/include/c++/4.9.3/tr1/stdint.h
+#usr/include/c++/4.9.3/tr1/stdio.h
+#usr/include/c++/4.9.3/tr1/stdlib.h
+#usr/include/c++/4.9.3/tr1/tgmath.h
+#usr/include/c++/4.9.3/tr1/tuple
+#usr/include/c++/4.9.3/tr1/type_traits
+#usr/include/c++/4.9.3/tr1/unordered_map
+#usr/include/c++/4.9.3/tr1/unordered_map.h
+#usr/include/c++/4.9.3/tr1/unordered_set
+#usr/include/c++/4.9.3/tr1/unordered_set.h
+#usr/include/c++/4.9.3/tr1/utility
+#usr/include/c++/4.9.3/tr1/wchar.h
+#usr/include/c++/4.9.3/tr1/wctype.h
+#usr/include/c++/4.9.3/tr2
+#usr/include/c++/4.9.3/tr2/bool_set
+#usr/include/c++/4.9.3/tr2/bool_set.tcc
+#usr/include/c++/4.9.3/tr2/dynamic_bitset
+#usr/include/c++/4.9.3/tr2/dynamic_bitset.tcc
+#usr/include/c++/4.9.3/tr2/ratio
+#usr/include/c++/4.9.3/tr2/type_traits
+#usr/include/c++/4.9.3/tuple
+#usr/include/c++/4.9.3/type_traits
+#usr/include/c++/4.9.3/typeindex
+#usr/include/c++/4.9.3/typeinfo
+#usr/include/c++/4.9.3/unordered_map
+#usr/include/c++/4.9.3/unordered_set
+#usr/include/c++/4.9.3/utility
+#usr/include/c++/4.9.3/valarray
+#usr/include/c++/4.9.3/vector
 #usr/lib/gcc
 #usr/lib/gcc/i586-pc-linux-gnu
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/cc1
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/cc1plus
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/collect2
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtbegin.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtbeginS.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtbeginT.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtend.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtendS.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtfastmath.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtprec32.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtprec64.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/crtprec80.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/finclude
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include-fixed
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include-fixed/README
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include-fixed/limits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include-fixed/syslimits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/ammintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/avxintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/bmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/cpuid.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/cross-stdarg.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/emmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/float.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/immintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/iso646.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/mf-runtime.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/mm3dnow.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/mm_malloc.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/mmintrin-common.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/mmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/nmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/omp.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/pmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/smmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/ssp
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/ssp/ssp.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/ssp/stdio.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/ssp/string.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/ssp/unistd.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/stdarg.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/stdbool.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/stddef.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/stdfix.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/tmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/unwind.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/varargs.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/wmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/x86intrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/include/xmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/fixinc.sh
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/fixinc_list
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/fixincl
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/gsyslimits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/include
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/include/README
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/include/limits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/macro_list
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/mkheaders
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/mkheaders.conf
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/install-tools/mkinstalldirs
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/libgcc.a
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/libgcc_eh.a
-#usr/lib/gcc/i586-pc-linux-gnu/4.4.7/libgcov.a
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/cc1
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/cc1plus
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/collect2
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtbegin.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtbeginS.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtbeginT.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtend.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtendS.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtfastmath.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtprec32.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtprec64.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/crtprec80.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/finclude
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include-fixed
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include-fixed/README
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include-fixed/limits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include-fixed/syslimits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/adxintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/ammintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/avx2intrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/avx512cdintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/avx512erintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/avx512fintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/avx512pfintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/avxintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/bmi2intrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/bmiintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/bmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/cilk.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/cilk_api.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/cilk_api_linux.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/cilk_stub.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/cilk_undocumented.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/common.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/holder.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/hyperobject_base.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/metaprogramming.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_file.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_list.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_max.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_min.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_min_max.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_opadd.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_opand.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_opmul.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_opor.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_opxor.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_ostream.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cilk/reducer_string.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cpuid.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/cross-stdarg.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/emmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/f16cintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/float.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/fma4intrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/fmaintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/fxsrintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/ia32intrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/immintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/iso646.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/lwpintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/lzcntintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/mm3dnow.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/mm_malloc.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/mmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/nmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/omp.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/pmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/popcntintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/prfchwintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/quadmath.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/quadmath_weak.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/rdseedintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/rtmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/sanitizer
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/sanitizer/asan_interface.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/sanitizer/common_interface_defs.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/sanitizer/lsan_interface.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/shaintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/smmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/ssp
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/ssp/ssp.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/ssp/stdio.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/ssp/string.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/ssp/unistd.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdalign.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdarg.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdatomic.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdbool.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stddef.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdfix.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdint-gcc.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdint.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/stdnoreturn.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/tbmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/tmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/unwind.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/varargs.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/wmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/x86intrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/xmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/xopintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/xsaveintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/xsaveoptintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/include/xtestintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/fixinc.sh
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/fixinc_list
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/fixincl
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/gsyslimits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/include
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/include/README
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/include/limits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/macro_list
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/mkheaders
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/mkheaders.conf
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/install-tools/mkinstalldirs
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/libgcc.a
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/libgcc_eh.a
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/libgcov.a
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/liblto_plugin.la
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/liblto_plugin.so
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/liblto_plugin.so.0
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/liblto_plugin.so.0.0.0
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/lto-wrapper
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/lto1
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/gengtype
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/gtype.state
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ada
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ada/gcc-interface
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ada/gcc-interface/ada-tree.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/alias.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/all-tree.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/alloc-pool.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ansidecl.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/attribs.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/auto-host.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/b-header-vars
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/basic-block.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/bitmap.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/builtins.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/bversion.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/c-family
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/c-family/c-common.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/c-family/c-common.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/c-family/c-objc.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/c-family/c-pragma.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/c-family/c-pretty-print.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/c-tree.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/calls.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cfg-flags.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cfgexpand.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cfghooks.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cfgloop.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cgraph.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cif-code.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cilk-builtins.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cilkplus.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/dbxelf.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/elfos.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/glibc-stdint.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/gnu-user.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/att.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/gnu-user-common.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/gnu-user.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/i386-opts.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/i386-protos.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/i386.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/linux-common.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/linux.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/stringop.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/unix.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/i386/x86-tune.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/initfini-array.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/linux-android.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/linux-protos.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/linux.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/config/vxworks-dummy.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/configargs.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/context.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/coretypes.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cp
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cp/cp-tree.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cp/cp-tree.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cp/cxx-pretty-print.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cp/name-lookup.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cp/type-utils.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cppdefault.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/cpplib.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/debug.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/defaults.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/df.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/diagnostic-color.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/diagnostic-core.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/diagnostic.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/diagnostic.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/double-int.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/dumpfile.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/emit-rtl.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/except.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/filenames.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/fixed-value.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/flag-types.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/flags.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/fold-const.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/function.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gcc-plugin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gcc-symtab.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/genrtl.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ggc.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-builder.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-expr.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-fold.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-iterator.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-low.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-pretty-print.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-ssa.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple-walk.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimple.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimplify-me.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gimplify.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gsstruct.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gtm-builtins.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/gtype-desc.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/hard-reg-set.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/hash-table.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/hashtab.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/highlev-plugin-common.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/hwint.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/incpath.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/input.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/insn-codes.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/insn-constants.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/insn-flags.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/insn-modes.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/insn-notes.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/internal-fn.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/internal-fn.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/intl.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ipa-prop.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ipa-ref-inline.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ipa-ref.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ipa-reference.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ipa-utils.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/is-a.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/java
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/java/java-tree.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/langhooks.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/libiberty.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/line-map.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/machmode.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/md5.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/mode-classes.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/objc
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/objc/objc-tree.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/obstack.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/omp-builtins.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/options.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/opts.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/output.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/params.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/params.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/pass-instances.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/pass_manager.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/plugin-api.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/plugin-version.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/plugin.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/plugin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/pointer-set.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/predict.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/predict.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/prefix.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/pretty-print.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/print-rtl.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/print-tree.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/real.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/realmpfr.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/reg-notes.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/regset.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/resource.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/rtl.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/rtl.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/safe-ctype.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/sanitizer.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/sbitmap.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/splay-tree.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/ssa-iterators.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/statistics.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/stmt.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/stor-layout.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/stringpool.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/symtab.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/sync-builtins.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/system.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/target-hooks-macros.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/target.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/target.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/timevar.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/timevar.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tm-preds.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tm.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tm_p.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/toplev.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-cfg.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-cfgcleanup.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-check.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-core.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-dfa.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-dump.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-eh.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-hasher.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-inline.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-into-ssa.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-iterator.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-nested.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-object-size.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-outof-ssa.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-parloops.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-pass.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-phinodes.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-pretty-print.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-address.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-alias.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-coalesce.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-dom.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-loop-ivopts.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-loop-manip.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-loop-niter.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-loop.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-operands.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-sccvn.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-ter.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-threadedge.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa-threadupdate.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssa.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree-ssanames.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/tree.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/treestruct.def
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/varasm.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/vec.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.9.3/plugin/include/version.h
+#usr/lib/libasan.a
+#usr/lib/libasan.la
+#usr/lib/libasan.so
+usr/lib/libasan.so.1
+usr/lib/libasan.so.1.0.0
+usr/lib/libasan_preinit.o
+#usr/lib/libatomic.a
+#usr/lib/libatomic.la
+usr/lib/libatomic.so
+usr/lib/libatomic.so.1
+usr/lib/libatomic.so.1.1.0
+#usr/lib/libcilkrts.a
+#usr/lib/libcilkrts.la
+#usr/lib/libcilkrts.so
+usr/lib/libcilkrts.so.5
+usr/lib/libcilkrts.so.5.0.0
+#usr/lib/libcilkrts.spec
 #usr/lib/libgomp.a
 #usr/lib/libgomp.la
 #usr/lib/libgomp.so
 usr/lib/libgomp.so.1
 usr/lib/libgomp.so.1.0.0
 #usr/lib/libgomp.spec
-#usr/lib/libmudflap.a
-#usr/lib/libmudflap.la
-#usr/lib/libmudflap.so
-usr/lib/libmudflap.so.0
-usr/lib/libmudflap.so.0.0.0
-#usr/lib/libmudflapth.a
-#usr/lib/libmudflapth.la
-#usr/lib/libmudflapth.so
-usr/lib/libmudflapth.so.0
-usr/lib/libmudflapth.so.0.0.0
+#usr/lib/libitm.a
+#usr/lib/libitm.la
+#usr/lib/libitm.so
+usr/lib/libitm.so.1
+usr/lib/libitm.so.1.0.0
+#usr/lib/libitm.spec
+#usr/lib/libquadmath.a
+#usr/lib/libquadmath.la
+#usr/lib/libquadmath.so
+usr/lib/libquadmath.so.0
+usr/lib/libquadmath.so.0.0.0
+#usr/lib/libsanitizer.spec
 #usr/lib/libssp.a
 #usr/lib/libssp.la
 #usr/lib/libssp.so
@@ -786,16 +1136,39 @@ usr/lib/libssp.so.0.0.0
 #usr/lib/libssp_nonshared.a
 #usr/lib/libssp_nonshared.la
 #usr/lib/libstdc++.a
-usr/lib/libstdc++.so.6.0.13
+usr/lib/libstdc++.so.6.0.20
+#usr/lib/libstdc++.so.6.0.20-gdb.py
 #usr/lib/libsupc++.a
 #usr/lib/libsupc++.la
-#usr/man
-#usr/man/man1
-#usr/man/man1/cpp.1
-#usr/man/man1/g++.1
-#usr/man/man1/gcc.1
-#usr/man/man1/gcov.1
-#usr/man/man7
-#usr/man/man7/fsf-funding.7
-#usr/man/man7/gfdl.7
-#usr/man/man7/gpl.7
+#usr/lib/libubsan.a
+#usr/lib/libubsan.la
+#usr/lib/libubsan.so
+usr/lib/libubsan.so.0
+usr/lib/libubsan.so.0.0.0
+#usr/lib/libvtv.a
+#usr/lib/libvtv.la
+#usr/lib/libvtv.so
+usr/lib/libvtv.so.0
+usr/lib/libvtv.so.0.0.0
+#usr/share/gcc-4.9.3
+#usr/share/gcc-4.9.3/python
+#usr/share/gcc-4.9.3/python/libstdcxx
+#usr/share/gcc-4.9.3/python/libstdcxx/__init__.py
+#usr/share/gcc-4.9.3/python/libstdcxx/v6
+#usr/share/gcc-4.9.3/python/libstdcxx/v6/__init__.py
+#usr/share/gcc-4.9.3/python/libstdcxx/v6/printers.py
+#usr/share/info/cpp.info
+#usr/share/info/cppinternals.info
+#usr/share/info/gcc.info
+#usr/share/info/gccinstall.info
+#usr/share/info/gccint.info
+#usr/share/info/libgomp.info
+#usr/share/info/libitm.info
+#usr/share/info/libquadmath.info
+#usr/share/man/man1/cpp.1
+#usr/share/man/man1/g++.1
+#usr/share/man/man1/gcc.1
+#usr/share/man/man1/gcov.1
+#usr/share/man/man7/fsf-funding.7
+#usr/share/man/man7/gfdl.7
+#usr/share/man/man7/gpl.7
index 878ba667e540fbf1daaa3e825a7584f0224463a7..80ae0dd2d762a3fad31bf5613775bb55fc766bd7 100644 (file)
@@ -1,3 +1,4 @@
+etc/init.d
 #etc/rc.d
 #etc/rc.d/helper
 etc/rc.d/helper/getdnsfromdhcpc.pl
@@ -14,7 +15,6 @@ etc/rc.d/init.d/beep
 #etc/rc.d/init.d/bluetooth
 etc/rc.d/init.d/checkfs
 etc/rc.d/init.d/checkfstab
-etc/rc.d/init.d/waitdrives
 #etc/rc.d/init.d/clamav
 etc/rc.d/init.d/cleanfs
 #etc/rc.d/init.d/client175
@@ -27,12 +27,14 @@ etc/rc.d/init.d/console
 #etc/rc.d/init.d/cyrus-sasl
 etc/rc.d/init.d/dhcp
 etc/rc.d/init.d/dhcrelay
+#etc/rc.d/init.d/dnsdist
 etc/rc.d/init.d/dnsmasq
 etc/rc.d/init.d/fcron
 #etc/rc.d/init.d/fetchmail
 etc/rc.d/init.d/fireinfo
 etc/rc.d/init.d/firewall
 etc/rc.d/init.d/firstsetup
+etc/rc.d/init.d/fsresize
 etc/rc.d/init.d/functions
 #etc/rc.d/init.d/gnump3d
 etc/rc.d/init.d/halt
@@ -64,7 +66,6 @@ etc/rc.d/init.d/mounttmpfs
 #etc/rc.d/init.d/netsnmpd
 etc/rc.d/init.d/network
 etc/rc.d/init.d/network-trigger
-etc/rc.d/init.d/network-vlans
 #etc/rc.d/init.d/networking
 etc/rc.d/init.d/networking/any
 etc/rc.d/init.d/networking/blue
@@ -78,12 +79,14 @@ etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq
 etc/rc.d/init.d/networking/red.down/10-ipsec
 etc/rc.d/init.d/networking/red.down/10-miniupnpd
 etc/rc.d/init.d/networking/red.down/10-ovpn
+etc/rc.d/init.d/networking/red.down/10-static-routes
 etc/rc.d/init.d/networking/red.down/20-firewall
 #etc/rc.d/init.d/networking/red.up
 etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup
 etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq
 etc/rc.d/init.d/networking/red.up/10-miniupnpd
 etc/rc.d/init.d/networking/red.up/10-multicast
+etc/rc.d/init.d/networking/red.up/10-static-routes
 etc/rc.d/init.d/networking/red.up/20-firewall
 etc/rc.d/init.d/networking/red.up/23-RS-snort
 etc/rc.d/init.d/networking/red.up/24-RS-qos
@@ -102,7 +105,6 @@ etc/rc.d/init.d/ntp
 #etc/rc.d/init.d/nut
 #etc/rc.d/init.d/openvmtools
 etc/rc.d/init.d/partresize
-etc/rc.d/init.d/fsresize
 #etc/rc.d/init.d/portmap
 #etc/rc.d/init.d/postfix
 #etc/rc.d/init.d/pound
@@ -127,7 +129,6 @@ etc/rc.d/init.d/sysctl
 etc/rc.d/init.d/sysklogd
 etc/rc.d/init.d/template
 #etc/rc.d/init.d/tftpd
-etc/rc.d/init.d/tmpfs
 #etc/rc.d/init.d/tor
 #etc/rc.d/init.d/transmission
 etc/rc.d/init.d/udev
@@ -135,7 +136,9 @@ etc/rc.d/init.d/udev_retry
 etc/rc.d/init.d/upnpd
 #etc/rc.d/init.d/vdr
 #etc/rc.d/init.d/vdradmin
+etc/rc.d/init.d/vnstat
 #etc/rc.d/init.d/vsftpd
+etc/rc.d/init.d/waitdrives
 #etc/rc.d/init.d/watchdog
 etc/rc.d/init.d/wlanclient
 #etc/rc.d/init.d/xinetd
@@ -152,13 +155,13 @@ etc/rc.d/rc0.d/K30sshd
 etc/rc.d/rc0.d/K45random
 etc/rc.d/rc0.d/K47setclock
 etc/rc.d/rc0.d/K49cyrus-sasl
+etc/rc.d/rc0.d/K51vnstat
 etc/rc.d/rc0.d/K78snort
 etc/rc.d/rc0.d/K79leds
 etc/rc.d/rc0.d/K80network
 etc/rc.d/rc0.d/K82wlanclient
 #etc/rc.d/rc0.d/K84bluetooth
 #etc/rc.d/rc0.d/K85messagebus
-etc/rc.d/rc0.d/K85tmpfs
 etc/rc.d/rc0.d/K87acpid
 etc/rc.d/rc0.d/K90sysklogd
 etc/rc.d/rc0.d/S60sendsignals
@@ -167,9 +170,10 @@ etc/rc.d/rc0.d/S80mountfs
 etc/rc.d/rc0.d/S90swap
 etc/rc.d/rc0.d/S99halt
 #etc/rc.d/rc3.d
-etc/rc.d/rc3.d/S01tmpfs
+etc/rc.d/rc3.d/S01vnstat
 etc/rc.d/rc3.d/S10sysklogd
 etc/rc.d/rc3.d/S12acpid
+etc/rc.d/rc3.d/S15fireinfo
 #etc/rc.d/rc3.d/S15messagebus
 #etc/rc.d/rc3.d/S16bluetooth
 #etc/rc.d/rc3.d/S18cpufreq
@@ -202,13 +206,13 @@ etc/rc.d/rc6.d/K30sshd
 etc/rc.d/rc6.d/K45random
 etc/rc.d/rc6.d/K47setclock
 etc/rc.d/rc6.d/K49cyrus-sasl
+etc/rc.d/rc6.d/K51vnstat
 etc/rc.d/rc6.d/K78snort
 etc/rc.d/rc6.d/K79leds
 etc/rc.d/rc6.d/K80network
 etc/rc.d/rc6.d/K82wlanclient
 #etc/rc.d/rc6.d/K84bluetooth
 #etc/rc.d/rc6.d/K85messagebus
-etc/rc.d/rc6.d/K85tmpfs
 etc/rc.d/rc6.d/K87acpid
 etc/rc.d/rc6.d/K90sysklogd
 etc/rc.d/rc6.d/S60sendsignals
@@ -237,15 +241,11 @@ etc/rc.d/rcsysinit.d/S75firstsetup
 etc/rc.d/rcsysinit.d/S80localnet
 etc/rc.d/rcsysinit.d/S85firewall
 etc/rc.d/rcsysinit.d/S90network-trigger
-etc/rc.d/rcsysinit.d/S91network-vlans
 etc/rc.d/rcsysinit.d/S92rngd
-etc/rc.d/rc3.d/S15fireinfo
 #etc/sysconfig
 etc/sysconfig/createfiles
 etc/sysconfig/firewall.local
 etc/sysconfig/modules
+etc/sysconfig/ramdisk
 etc/sysconfig/rc
 etc/sysconfig/rc.local
-etc/init.d
-etc/rc.d/init.d/networking/red.down/10-static-routes
-etc/rc.d/init.d/networking/red.up/10-static-routes
diff --git a/config/rootfiles/common/i586/openssl-sse2 b/config/rootfiles/common/i586/openssl-sse2
new file mode 100644 (file)
index 0000000..7f6ddd6
--- /dev/null
@@ -0,0 +1 @@
+usr/lib/sse2/libcrypto.so.10
diff --git a/config/rootfiles/common/i586/python b/config/rootfiles/common/i586/python
new file mode 100644 (file)
index 0000000..a308ae0
--- /dev/null
@@ -0,0 +1,4626 @@
+#usr/bin/2to3
+#usr/bin/idle
+#usr/bin/pydoc
+usr/bin/python
+#usr/bin/python-config
+usr/bin/python2
+#usr/bin/python2-config
+usr/bin/python2.7
+#usr/bin/python2.7-config
+#usr/bin/smtpd.py
+#usr/include/python2.7
+#usr/include/python2.7/Python-ast.h
+#usr/include/python2.7/Python.h
+#usr/include/python2.7/abstract.h
+#usr/include/python2.7/asdl.h
+#usr/include/python2.7/ast.h
+#usr/include/python2.7/bitset.h
+#usr/include/python2.7/boolobject.h
+#usr/include/python2.7/bufferobject.h
+#usr/include/python2.7/bytearrayobject.h
+#usr/include/python2.7/bytes_methods.h
+#usr/include/python2.7/bytesobject.h
+#usr/include/python2.7/cStringIO.h
+#usr/include/python2.7/cellobject.h
+#usr/include/python2.7/ceval.h
+#usr/include/python2.7/classobject.h
+#usr/include/python2.7/cobject.h
+#usr/include/python2.7/code.h
+#usr/include/python2.7/codecs.h
+#usr/include/python2.7/compile.h
+#usr/include/python2.7/complexobject.h
+#usr/include/python2.7/datetime.h
+#usr/include/python2.7/descrobject.h
+#usr/include/python2.7/dictobject.h
+#usr/include/python2.7/dtoa.h
+#usr/include/python2.7/enumobject.h
+#usr/include/python2.7/errcode.h
+#usr/include/python2.7/eval.h
+#usr/include/python2.7/fileobject.h
+#usr/include/python2.7/floatobject.h
+#usr/include/python2.7/frameobject.h
+#usr/include/python2.7/funcobject.h
+#usr/include/python2.7/genobject.h
+#usr/include/python2.7/graminit.h
+#usr/include/python2.7/grammar.h
+#usr/include/python2.7/import.h
+#usr/include/python2.7/intobject.h
+#usr/include/python2.7/intrcheck.h
+#usr/include/python2.7/iterobject.h
+#usr/include/python2.7/listobject.h
+#usr/include/python2.7/longintrepr.h
+#usr/include/python2.7/longobject.h
+#usr/include/python2.7/marshal.h
+#usr/include/python2.7/memoryobject.h
+#usr/include/python2.7/metagrammar.h
+#usr/include/python2.7/methodobject.h
+#usr/include/python2.7/modsupport.h
+#usr/include/python2.7/moduleobject.h
+#usr/include/python2.7/node.h
+#usr/include/python2.7/object.h
+#usr/include/python2.7/objimpl.h
+#usr/include/python2.7/opcode.h
+#usr/include/python2.7/osdefs.h
+#usr/include/python2.7/parsetok.h
+#usr/include/python2.7/patchlevel.h
+#usr/include/python2.7/pgen.h
+#usr/include/python2.7/pgenheaders.h
+#usr/include/python2.7/py_curses.h
+#usr/include/python2.7/pyarena.h
+#usr/include/python2.7/pycapsule.h
+usr/include/python2.7/pyconfig.h
+#usr/include/python2.7/pyctype.h
+#usr/include/python2.7/pydebug.h
+#usr/include/python2.7/pyerrors.h
+#usr/include/python2.7/pyexpat.h
+#usr/include/python2.7/pyfpe.h
+#usr/include/python2.7/pygetopt.h
+#usr/include/python2.7/pymacconfig.h
+#usr/include/python2.7/pymactoolbox.h
+#usr/include/python2.7/pymath.h
+#usr/include/python2.7/pymem.h
+#usr/include/python2.7/pyport.h
+#usr/include/python2.7/pystate.h
+#usr/include/python2.7/pystrcmp.h
+#usr/include/python2.7/pystrtod.h
+#usr/include/python2.7/pythonrun.h
+#usr/include/python2.7/pythread.h
+#usr/include/python2.7/rangeobject.h
+#usr/include/python2.7/setobject.h
+#usr/include/python2.7/sliceobject.h
+#usr/include/python2.7/stringobject.h
+#usr/include/python2.7/structmember.h
+#usr/include/python2.7/structseq.h
+#usr/include/python2.7/symtable.h
+#usr/include/python2.7/sysmodule.h
+#usr/include/python2.7/timefuncs.h
+#usr/include/python2.7/token.h
+#usr/include/python2.7/traceback.h
+#usr/include/python2.7/tupleobject.h
+#usr/include/python2.7/ucnhash.h
+#usr/include/python2.7/unicodeobject.h
+#usr/include/python2.7/warnings.h
+#usr/include/python2.7/weakrefobject.h
+usr/lib/libpython2.7.so
+usr/lib/libpython2.7.so.1.0
+#usr/lib/pkgconfig/python-2.7.pc
+#usr/lib/pkgconfig/python.pc
+#usr/lib/pkgconfig/python2.pc
+#usr/lib/python2.7
+#usr/lib/python2.7/BaseHTTPServer.py
+usr/lib/python2.7/BaseHTTPServer.pyc
+#usr/lib/python2.7/BaseHTTPServer.pyo
+#usr/lib/python2.7/Bastion.py
+usr/lib/python2.7/Bastion.pyc
+#usr/lib/python2.7/Bastion.pyo
+#usr/lib/python2.7/CGIHTTPServer.py
+usr/lib/python2.7/CGIHTTPServer.pyc
+#usr/lib/python2.7/CGIHTTPServer.pyo
+#usr/lib/python2.7/ConfigParser.py
+usr/lib/python2.7/ConfigParser.pyc
+#usr/lib/python2.7/ConfigParser.pyo
+#usr/lib/python2.7/Cookie.py
+usr/lib/python2.7/Cookie.pyc
+#usr/lib/python2.7/Cookie.pyo
+#usr/lib/python2.7/DocXMLRPCServer.py
+usr/lib/python2.7/DocXMLRPCServer.pyc
+#usr/lib/python2.7/DocXMLRPCServer.pyo
+#usr/lib/python2.7/HTMLParser.py
+usr/lib/python2.7/HTMLParser.pyc
+#usr/lib/python2.7/HTMLParser.pyo
+#usr/lib/python2.7/LICENSE.txt
+#usr/lib/python2.7/MimeWriter.py
+usr/lib/python2.7/MimeWriter.pyc
+#usr/lib/python2.7/MimeWriter.pyo
+#usr/lib/python2.7/Queue.py
+usr/lib/python2.7/Queue.pyc
+#usr/lib/python2.7/Queue.pyo
+#usr/lib/python2.7/SimpleHTTPServer.py
+usr/lib/python2.7/SimpleHTTPServer.pyc
+#usr/lib/python2.7/SimpleHTTPServer.pyo
+#usr/lib/python2.7/SimpleXMLRPCServer.py
+usr/lib/python2.7/SimpleXMLRPCServer.pyc
+#usr/lib/python2.7/SimpleXMLRPCServer.pyo
+#usr/lib/python2.7/SocketServer.py
+usr/lib/python2.7/SocketServer.pyc
+#usr/lib/python2.7/SocketServer.pyo
+#usr/lib/python2.7/StringIO.py
+usr/lib/python2.7/StringIO.pyc
+#usr/lib/python2.7/StringIO.pyo
+#usr/lib/python2.7/UserDict.py
+usr/lib/python2.7/UserDict.pyc
+#usr/lib/python2.7/UserDict.pyo
+#usr/lib/python2.7/UserList.py
+usr/lib/python2.7/UserList.pyc
+#usr/lib/python2.7/UserList.pyo
+#usr/lib/python2.7/UserString.py
+usr/lib/python2.7/UserString.pyc
+#usr/lib/python2.7/UserString.pyo
+#usr/lib/python2.7/_LWPCookieJar.py
+usr/lib/python2.7/_LWPCookieJar.pyc
+#usr/lib/python2.7/_LWPCookieJar.pyo
+#usr/lib/python2.7/_MozillaCookieJar.py
+usr/lib/python2.7/_MozillaCookieJar.pyc
+#usr/lib/python2.7/_MozillaCookieJar.pyo
+#usr/lib/python2.7/__future__.py
+usr/lib/python2.7/__future__.pyc
+#usr/lib/python2.7/__future__.pyo
+#usr/lib/python2.7/__phello__.foo.py
+usr/lib/python2.7/__phello__.foo.pyc
+#usr/lib/python2.7/__phello__.foo.pyo
+#usr/lib/python2.7/_abcoll.py
+usr/lib/python2.7/_abcoll.pyc
+#usr/lib/python2.7/_abcoll.pyo
+#usr/lib/python2.7/_osx_support.py
+#usr/lib/python2.7/_osx_support.pyc
+#usr/lib/python2.7/_osx_support.pyo
+#usr/lib/python2.7/_pyio.py
+usr/lib/python2.7/_pyio.pyc
+#usr/lib/python2.7/_pyio.pyo
+#usr/lib/python2.7/_strptime.py
+usr/lib/python2.7/_strptime.pyc
+#usr/lib/python2.7/_strptime.pyo
+#usr/lib/python2.7/_sysconfigdata.py
+usr/lib/python2.7/_sysconfigdata.pyc
+#usr/lib/python2.7/_sysconfigdata.pyo
+#usr/lib/python2.7/_threading_local.py
+usr/lib/python2.7/_threading_local.pyc
+#usr/lib/python2.7/_threading_local.pyo
+#usr/lib/python2.7/_weakrefset.py
+usr/lib/python2.7/_weakrefset.pyc
+#usr/lib/python2.7/_weakrefset.pyo
+#usr/lib/python2.7/abc.py
+usr/lib/python2.7/abc.pyc
+#usr/lib/python2.7/abc.pyo
+#usr/lib/python2.7/aifc.py
+usr/lib/python2.7/aifc.pyc
+#usr/lib/python2.7/aifc.pyo
+#usr/lib/python2.7/antigravity.py
+usr/lib/python2.7/antigravity.pyc
+#usr/lib/python2.7/antigravity.pyo
+#usr/lib/python2.7/anydbm.py
+usr/lib/python2.7/anydbm.pyc
+#usr/lib/python2.7/anydbm.pyo
+#usr/lib/python2.7/argparse.py
+usr/lib/python2.7/argparse.pyc
+#usr/lib/python2.7/argparse.pyo
+#usr/lib/python2.7/ast.py
+usr/lib/python2.7/ast.pyc
+#usr/lib/python2.7/ast.pyo
+#usr/lib/python2.7/asynchat.py
+usr/lib/python2.7/asynchat.pyc
+#usr/lib/python2.7/asynchat.pyo
+#usr/lib/python2.7/asyncore.py
+usr/lib/python2.7/asyncore.pyc
+#usr/lib/python2.7/asyncore.pyo
+#usr/lib/python2.7/atexit.py
+usr/lib/python2.7/atexit.pyc
+#usr/lib/python2.7/atexit.pyo
+#usr/lib/python2.7/audiodev.py
+usr/lib/python2.7/audiodev.pyc
+#usr/lib/python2.7/audiodev.pyo
+#usr/lib/python2.7/base64.py
+usr/lib/python2.7/base64.pyc
+#usr/lib/python2.7/base64.pyo
+#usr/lib/python2.7/bdb.py
+usr/lib/python2.7/bdb.pyc
+#usr/lib/python2.7/bdb.pyo
+#usr/lib/python2.7/binhex.py
+usr/lib/python2.7/binhex.pyc
+#usr/lib/python2.7/binhex.pyo
+#usr/lib/python2.7/bisect.py
+usr/lib/python2.7/bisect.pyc
+#usr/lib/python2.7/bisect.pyo
+#usr/lib/python2.7/bsddb
+#usr/lib/python2.7/bsddb/__init__.py
+usr/lib/python2.7/bsddb/__init__.pyc
+#usr/lib/python2.7/bsddb/__init__.pyo
+#usr/lib/python2.7/bsddb/db.py
+usr/lib/python2.7/bsddb/db.pyc
+#usr/lib/python2.7/bsddb/db.pyo
+#usr/lib/python2.7/bsddb/dbobj.py
+usr/lib/python2.7/bsddb/dbobj.pyc
+#usr/lib/python2.7/bsddb/dbobj.pyo
+#usr/lib/python2.7/bsddb/dbrecio.py
+usr/lib/python2.7/bsddb/dbrecio.pyc
+#usr/lib/python2.7/bsddb/dbrecio.pyo
+#usr/lib/python2.7/bsddb/dbshelve.py
+usr/lib/python2.7/bsddb/dbshelve.pyc
+#usr/lib/python2.7/bsddb/dbshelve.pyo
+#usr/lib/python2.7/bsddb/dbtables.py
+usr/lib/python2.7/bsddb/dbtables.pyc
+#usr/lib/python2.7/bsddb/dbtables.pyo
+#usr/lib/python2.7/bsddb/dbutils.py
+usr/lib/python2.7/bsddb/dbutils.pyc
+#usr/lib/python2.7/bsddb/dbutils.pyo
+#usr/lib/python2.7/bsddb/test
+#usr/lib/python2.7/bsddb/test/__init__.py
+#usr/lib/python2.7/bsddb/test/__init__.pyc
+#usr/lib/python2.7/bsddb/test/__init__.pyo
+#usr/lib/python2.7/bsddb/test/test_all.py
+#usr/lib/python2.7/bsddb/test/test_all.pyc
+#usr/lib/python2.7/bsddb/test/test_all.pyo
+#usr/lib/python2.7/bsddb/test/test_associate.py
+#usr/lib/python2.7/bsddb/test/test_associate.pyc
+#usr/lib/python2.7/bsddb/test/test_associate.pyo
+#usr/lib/python2.7/bsddb/test/test_basics.py
+#usr/lib/python2.7/bsddb/test/test_basics.pyc
+#usr/lib/python2.7/bsddb/test/test_basics.pyo
+#usr/lib/python2.7/bsddb/test/test_compare.py
+#usr/lib/python2.7/bsddb/test/test_compare.pyc
+#usr/lib/python2.7/bsddb/test/test_compare.pyo
+#usr/lib/python2.7/bsddb/test/test_compat.py
+#usr/lib/python2.7/bsddb/test/test_compat.pyc
+#usr/lib/python2.7/bsddb/test/test_compat.pyo
+#usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.py
+#usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.pyc
+#usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.pyo
+#usr/lib/python2.7/bsddb/test/test_db.py
+#usr/lib/python2.7/bsddb/test/test_db.pyc
+#usr/lib/python2.7/bsddb/test/test_db.pyo
+#usr/lib/python2.7/bsddb/test/test_dbenv.py
+#usr/lib/python2.7/bsddb/test/test_dbenv.pyc
+#usr/lib/python2.7/bsddb/test/test_dbenv.pyo
+#usr/lib/python2.7/bsddb/test/test_dbobj.py
+#usr/lib/python2.7/bsddb/test/test_dbobj.pyc
+#usr/lib/python2.7/bsddb/test/test_dbobj.pyo
+#usr/lib/python2.7/bsddb/test/test_dbshelve.py
+#usr/lib/python2.7/bsddb/test/test_dbshelve.pyc
+#usr/lib/python2.7/bsddb/test/test_dbshelve.pyo
+#usr/lib/python2.7/bsddb/test/test_dbtables.py
+#usr/lib/python2.7/bsddb/test/test_dbtables.pyc
+#usr/lib/python2.7/bsddb/test/test_dbtables.pyo
+#usr/lib/python2.7/bsddb/test/test_distributed_transactions.py
+#usr/lib/python2.7/bsddb/test/test_distributed_transactions.pyc
+#usr/lib/python2.7/bsddb/test/test_distributed_transactions.pyo
+#usr/lib/python2.7/bsddb/test/test_early_close.py
+#usr/lib/python2.7/bsddb/test/test_early_close.pyc
+#usr/lib/python2.7/bsddb/test/test_early_close.pyo
+#usr/lib/python2.7/bsddb/test/test_fileid.py
+#usr/lib/python2.7/bsddb/test/test_fileid.pyc
+#usr/lib/python2.7/bsddb/test/test_fileid.pyo
+#usr/lib/python2.7/bsddb/test/test_get_none.py
+#usr/lib/python2.7/bsddb/test/test_get_none.pyc
+#usr/lib/python2.7/bsddb/test/test_get_none.pyo
+#usr/lib/python2.7/bsddb/test/test_join.py
+#usr/lib/python2.7/bsddb/test/test_join.pyc
+#usr/lib/python2.7/bsddb/test/test_join.pyo
+#usr/lib/python2.7/bsddb/test/test_lock.py
+#usr/lib/python2.7/bsddb/test/test_lock.pyc
+#usr/lib/python2.7/bsddb/test/test_lock.pyo
+#usr/lib/python2.7/bsddb/test/test_misc.py
+#usr/lib/python2.7/bsddb/test/test_misc.pyc
+#usr/lib/python2.7/bsddb/test/test_misc.pyo
+#usr/lib/python2.7/bsddb/test/test_pickle.py
+#usr/lib/python2.7/bsddb/test/test_pickle.pyc
+#usr/lib/python2.7/bsddb/test/test_pickle.pyo
+#usr/lib/python2.7/bsddb/test/test_queue.py
+#usr/lib/python2.7/bsddb/test/test_queue.pyc
+#usr/lib/python2.7/bsddb/test/test_queue.pyo
+#usr/lib/python2.7/bsddb/test/test_recno.py
+#usr/lib/python2.7/bsddb/test/test_recno.pyc
+#usr/lib/python2.7/bsddb/test/test_recno.pyo
+#usr/lib/python2.7/bsddb/test/test_replication.py
+#usr/lib/python2.7/bsddb/test/test_replication.pyc
+#usr/lib/python2.7/bsddb/test/test_replication.pyo
+#usr/lib/python2.7/bsddb/test/test_sequence.py
+#usr/lib/python2.7/bsddb/test/test_sequence.pyc
+#usr/lib/python2.7/bsddb/test/test_sequence.pyo
+#usr/lib/python2.7/bsddb/test/test_thread.py
+#usr/lib/python2.7/bsddb/test/test_thread.pyc
+#usr/lib/python2.7/bsddb/test/test_thread.pyo
+#usr/lib/python2.7/cProfile.py
+usr/lib/python2.7/cProfile.pyc
+#usr/lib/python2.7/cProfile.pyo
+#usr/lib/python2.7/calendar.py
+usr/lib/python2.7/calendar.pyc
+#usr/lib/python2.7/calendar.pyo
+#usr/lib/python2.7/cgi.py
+usr/lib/python2.7/cgi.pyc
+#usr/lib/python2.7/cgi.pyo
+#usr/lib/python2.7/cgitb.py
+usr/lib/python2.7/cgitb.pyc
+#usr/lib/python2.7/cgitb.pyo
+#usr/lib/python2.7/chunk.py
+usr/lib/python2.7/chunk.pyc
+#usr/lib/python2.7/chunk.pyo
+#usr/lib/python2.7/cmd.py
+usr/lib/python2.7/cmd.pyc
+#usr/lib/python2.7/cmd.pyo
+#usr/lib/python2.7/code.py
+usr/lib/python2.7/code.pyc
+#usr/lib/python2.7/code.pyo
+#usr/lib/python2.7/codecs.py
+usr/lib/python2.7/codecs.pyc
+#usr/lib/python2.7/codecs.pyo
+#usr/lib/python2.7/codeop.py
+usr/lib/python2.7/codeop.pyc
+#usr/lib/python2.7/codeop.pyo
+#usr/lib/python2.7/collections.py
+usr/lib/python2.7/collections.pyc
+#usr/lib/python2.7/collections.pyo
+#usr/lib/python2.7/colorsys.py
+usr/lib/python2.7/colorsys.pyc
+#usr/lib/python2.7/colorsys.pyo
+#usr/lib/python2.7/commands.py
+usr/lib/python2.7/commands.pyc
+#usr/lib/python2.7/commands.pyo
+#usr/lib/python2.7/compileall.py
+usr/lib/python2.7/compileall.pyc
+#usr/lib/python2.7/compileall.pyo
+#usr/lib/python2.7/compiler
+#usr/lib/python2.7/compiler/__init__.py
+usr/lib/python2.7/compiler/__init__.pyc
+#usr/lib/python2.7/compiler/__init__.pyo
+#usr/lib/python2.7/compiler/ast.py
+usr/lib/python2.7/compiler/ast.pyc
+#usr/lib/python2.7/compiler/ast.pyo
+#usr/lib/python2.7/compiler/consts.py
+usr/lib/python2.7/compiler/consts.pyc
+#usr/lib/python2.7/compiler/consts.pyo
+#usr/lib/python2.7/compiler/future.py
+usr/lib/python2.7/compiler/future.pyc
+#usr/lib/python2.7/compiler/future.pyo
+#usr/lib/python2.7/compiler/misc.py
+usr/lib/python2.7/compiler/misc.pyc
+#usr/lib/python2.7/compiler/misc.pyo
+#usr/lib/python2.7/compiler/pyassem.py
+usr/lib/python2.7/compiler/pyassem.pyc
+#usr/lib/python2.7/compiler/pyassem.pyo
+#usr/lib/python2.7/compiler/pycodegen.py
+usr/lib/python2.7/compiler/pycodegen.pyc
+#usr/lib/python2.7/compiler/pycodegen.pyo
+#usr/lib/python2.7/compiler/symbols.py
+usr/lib/python2.7/compiler/symbols.pyc
+#usr/lib/python2.7/compiler/symbols.pyo
+#usr/lib/python2.7/compiler/syntax.py
+usr/lib/python2.7/compiler/syntax.pyc
+#usr/lib/python2.7/compiler/syntax.pyo
+#usr/lib/python2.7/compiler/transformer.py
+usr/lib/python2.7/compiler/transformer.pyc
+#usr/lib/python2.7/compiler/transformer.pyo
+#usr/lib/python2.7/compiler/visitor.py
+usr/lib/python2.7/compiler/visitor.pyc
+#usr/lib/python2.7/compiler/visitor.pyo
+usr/lib/python2.7/config
+usr/lib/python2.7/config/Makefile
+#usr/lib/python2.7/config/Setup
+#usr/lib/python2.7/config/Setup.config
+#usr/lib/python2.7/config/Setup.local
+#usr/lib/python2.7/config/config.c
+#usr/lib/python2.7/config/config.c.in
+#usr/lib/python2.7/config/install-sh
+#usr/lib/python2.7/config/libpython2.7.a
+#usr/lib/python2.7/config/makesetup
+#usr/lib/python2.7/config/python.o
+#usr/lib/python2.7/contextlib.py
+usr/lib/python2.7/contextlib.pyc
+#usr/lib/python2.7/contextlib.pyo
+#usr/lib/python2.7/cookielib.py
+usr/lib/python2.7/cookielib.pyc
+#usr/lib/python2.7/cookielib.pyo
+#usr/lib/python2.7/copy.py
+usr/lib/python2.7/copy.pyc
+#usr/lib/python2.7/copy.pyo
+#usr/lib/python2.7/copy_reg.py
+usr/lib/python2.7/copy_reg.pyc
+#usr/lib/python2.7/copy_reg.pyo
+#usr/lib/python2.7/csv.py
+usr/lib/python2.7/csv.pyc
+#usr/lib/python2.7/csv.pyo
+#usr/lib/python2.7/ctypes
+#usr/lib/python2.7/ctypes/__init__.py
+usr/lib/python2.7/ctypes/__init__.pyc
+#usr/lib/python2.7/ctypes/__init__.pyo
+#usr/lib/python2.7/ctypes/_endian.py
+usr/lib/python2.7/ctypes/_endian.pyc
+#usr/lib/python2.7/ctypes/_endian.pyo
+#usr/lib/python2.7/ctypes/macholib
+#usr/lib/python2.7/ctypes/macholib/README.ctypes
+#usr/lib/python2.7/ctypes/macholib/__init__.py
+usr/lib/python2.7/ctypes/macholib/__init__.pyc
+#usr/lib/python2.7/ctypes/macholib/__init__.pyo
+#usr/lib/python2.7/ctypes/macholib/dyld.py
+usr/lib/python2.7/ctypes/macholib/dyld.pyc
+#usr/lib/python2.7/ctypes/macholib/dyld.pyo
+#usr/lib/python2.7/ctypes/macholib/dylib.py
+usr/lib/python2.7/ctypes/macholib/dylib.pyc
+#usr/lib/python2.7/ctypes/macholib/dylib.pyo
+usr/lib/python2.7/ctypes/macholib/fetch_macholib
+usr/lib/python2.7/ctypes/macholib/fetch_macholib.bat
+#usr/lib/python2.7/ctypes/macholib/framework.py
+usr/lib/python2.7/ctypes/macholib/framework.pyc
+#usr/lib/python2.7/ctypes/macholib/framework.pyo
+#usr/lib/python2.7/ctypes/test
+#usr/lib/python2.7/ctypes/test/__init__.py
+#usr/lib/python2.7/ctypes/test/__init__.pyc
+#usr/lib/python2.7/ctypes/test/__init__.pyo
+#usr/lib/python2.7/ctypes/test/runtests.py
+#usr/lib/python2.7/ctypes/test/runtests.pyc
+#usr/lib/python2.7/ctypes/test/runtests.pyo
+#usr/lib/python2.7/ctypes/test/test_anon.py
+#usr/lib/python2.7/ctypes/test/test_anon.pyc
+#usr/lib/python2.7/ctypes/test/test_anon.pyo
+#usr/lib/python2.7/ctypes/test/test_array_in_pointer.py
+#usr/lib/python2.7/ctypes/test/test_array_in_pointer.pyc
+#usr/lib/python2.7/ctypes/test/test_array_in_pointer.pyo
+#usr/lib/python2.7/ctypes/test/test_arrays.py
+#usr/lib/python2.7/ctypes/test/test_arrays.pyc
+#usr/lib/python2.7/ctypes/test/test_arrays.pyo
+#usr/lib/python2.7/ctypes/test/test_as_parameter.py
+#usr/lib/python2.7/ctypes/test/test_as_parameter.pyc
+#usr/lib/python2.7/ctypes/test/test_as_parameter.pyo
+#usr/lib/python2.7/ctypes/test/test_bitfields.py
+#usr/lib/python2.7/ctypes/test/test_bitfields.pyc
+#usr/lib/python2.7/ctypes/test/test_bitfields.pyo
+#usr/lib/python2.7/ctypes/test/test_buffers.py
+#usr/lib/python2.7/ctypes/test/test_buffers.pyc
+#usr/lib/python2.7/ctypes/test/test_buffers.pyo
+#usr/lib/python2.7/ctypes/test/test_byteswap.py
+#usr/lib/python2.7/ctypes/test/test_byteswap.pyc
+#usr/lib/python2.7/ctypes/test/test_byteswap.pyo
+#usr/lib/python2.7/ctypes/test/test_callbacks.py
+#usr/lib/python2.7/ctypes/test/test_callbacks.pyc
+#usr/lib/python2.7/ctypes/test/test_callbacks.pyo
+#usr/lib/python2.7/ctypes/test/test_cast.py
+#usr/lib/python2.7/ctypes/test/test_cast.pyc
+#usr/lib/python2.7/ctypes/test/test_cast.pyo
+#usr/lib/python2.7/ctypes/test/test_cfuncs.py
+#usr/lib/python2.7/ctypes/test/test_cfuncs.pyc
+#usr/lib/python2.7/ctypes/test/test_cfuncs.pyo
+#usr/lib/python2.7/ctypes/test/test_checkretval.py
+#usr/lib/python2.7/ctypes/test/test_checkretval.pyc
+#usr/lib/python2.7/ctypes/test/test_checkretval.pyo
+#usr/lib/python2.7/ctypes/test/test_delattr.py
+#usr/lib/python2.7/ctypes/test/test_delattr.pyc
+#usr/lib/python2.7/ctypes/test/test_delattr.pyo
+#usr/lib/python2.7/ctypes/test/test_errno.py
+#usr/lib/python2.7/ctypes/test/test_errno.pyc
+#usr/lib/python2.7/ctypes/test/test_errno.pyo
+#usr/lib/python2.7/ctypes/test/test_find.py
+#usr/lib/python2.7/ctypes/test/test_find.pyc
+#usr/lib/python2.7/ctypes/test/test_find.pyo
+#usr/lib/python2.7/ctypes/test/test_frombuffer.py
+#usr/lib/python2.7/ctypes/test/test_frombuffer.pyc
+#usr/lib/python2.7/ctypes/test/test_frombuffer.pyo
+#usr/lib/python2.7/ctypes/test/test_funcptr.py
+#usr/lib/python2.7/ctypes/test/test_funcptr.pyc
+#usr/lib/python2.7/ctypes/test/test_funcptr.pyo
+#usr/lib/python2.7/ctypes/test/test_functions.py
+#usr/lib/python2.7/ctypes/test/test_functions.pyc
+#usr/lib/python2.7/ctypes/test/test_functions.pyo
+#usr/lib/python2.7/ctypes/test/test_incomplete.py
+#usr/lib/python2.7/ctypes/test/test_incomplete.pyc
+#usr/lib/python2.7/ctypes/test/test_incomplete.pyo
+#usr/lib/python2.7/ctypes/test/test_init.py
+#usr/lib/python2.7/ctypes/test/test_init.pyc
+#usr/lib/python2.7/ctypes/test/test_init.pyo
+#usr/lib/python2.7/ctypes/test/test_internals.py
+#usr/lib/python2.7/ctypes/test/test_internals.pyc
+#usr/lib/python2.7/ctypes/test/test_internals.pyo
+#usr/lib/python2.7/ctypes/test/test_keeprefs.py
+#usr/lib/python2.7/ctypes/test/test_keeprefs.pyc
+#usr/lib/python2.7/ctypes/test/test_keeprefs.pyo
+#usr/lib/python2.7/ctypes/test/test_libc.py
+#usr/lib/python2.7/ctypes/test/test_libc.pyc
+#usr/lib/python2.7/ctypes/test/test_libc.pyo
+#usr/lib/python2.7/ctypes/test/test_loading.py
+#usr/lib/python2.7/ctypes/test/test_loading.pyc
+#usr/lib/python2.7/ctypes/test/test_loading.pyo
+#usr/lib/python2.7/ctypes/test/test_macholib.py
+#usr/lib/python2.7/ctypes/test/test_macholib.pyc
+#usr/lib/python2.7/ctypes/test/test_macholib.pyo
+#usr/lib/python2.7/ctypes/test/test_memfunctions.py
+#usr/lib/python2.7/ctypes/test/test_memfunctions.pyc
+#usr/lib/python2.7/ctypes/test/test_memfunctions.pyo
+#usr/lib/python2.7/ctypes/test/test_numbers.py
+#usr/lib/python2.7/ctypes/test/test_numbers.pyc
+#usr/lib/python2.7/ctypes/test/test_numbers.pyo
+#usr/lib/python2.7/ctypes/test/test_objects.py
+#usr/lib/python2.7/ctypes/test/test_objects.pyc
+#usr/lib/python2.7/ctypes/test/test_objects.pyo
+#usr/lib/python2.7/ctypes/test/test_parameters.py
+#usr/lib/python2.7/ctypes/test/test_parameters.pyc
+#usr/lib/python2.7/ctypes/test/test_parameters.pyo
+#usr/lib/python2.7/ctypes/test/test_pep3118.py
+#usr/lib/python2.7/ctypes/test/test_pep3118.pyc
+#usr/lib/python2.7/ctypes/test/test_pep3118.pyo
+#usr/lib/python2.7/ctypes/test/test_pickling.py
+#usr/lib/python2.7/ctypes/test/test_pickling.pyc
+#usr/lib/python2.7/ctypes/test/test_pickling.pyo
+#usr/lib/python2.7/ctypes/test/test_pointers.py
+#usr/lib/python2.7/ctypes/test/test_pointers.pyc
+#usr/lib/python2.7/ctypes/test/test_pointers.pyo
+#usr/lib/python2.7/ctypes/test/test_prototypes.py
+#usr/lib/python2.7/ctypes/test/test_prototypes.pyc
+#usr/lib/python2.7/ctypes/test/test_prototypes.pyo
+#usr/lib/python2.7/ctypes/test/test_python_api.py
+#usr/lib/python2.7/ctypes/test/test_python_api.pyc
+#usr/lib/python2.7/ctypes/test/test_python_api.pyo
+#usr/lib/python2.7/ctypes/test/test_random_things.py
+#usr/lib/python2.7/ctypes/test/test_random_things.pyc
+#usr/lib/python2.7/ctypes/test/test_random_things.pyo
+#usr/lib/python2.7/ctypes/test/test_refcounts.py
+#usr/lib/python2.7/ctypes/test/test_refcounts.pyc
+#usr/lib/python2.7/ctypes/test/test_refcounts.pyo
+#usr/lib/python2.7/ctypes/test/test_repr.py
+#usr/lib/python2.7/ctypes/test/test_repr.pyc
+#usr/lib/python2.7/ctypes/test/test_repr.pyo
+#usr/lib/python2.7/ctypes/test/test_returnfuncptrs.py
+#usr/lib/python2.7/ctypes/test/test_returnfuncptrs.pyc
+#usr/lib/python2.7/ctypes/test/test_returnfuncptrs.pyo
+#usr/lib/python2.7/ctypes/test/test_simplesubclasses.py
+#usr/lib/python2.7/ctypes/test/test_simplesubclasses.pyc
+#usr/lib/python2.7/ctypes/test/test_simplesubclasses.pyo
+#usr/lib/python2.7/ctypes/test/test_sizes.py
+#usr/lib/python2.7/ctypes/test/test_sizes.pyc
+#usr/lib/python2.7/ctypes/test/test_sizes.pyo
+#usr/lib/python2.7/ctypes/test/test_slicing.py
+#usr/lib/python2.7/ctypes/test/test_slicing.pyc
+#usr/lib/python2.7/ctypes/test/test_slicing.pyo
+#usr/lib/python2.7/ctypes/test/test_stringptr.py
+#usr/lib/python2.7/ctypes/test/test_stringptr.pyc
+#usr/lib/python2.7/ctypes/test/test_stringptr.pyo
+#usr/lib/python2.7/ctypes/test/test_strings.py
+#usr/lib/python2.7/ctypes/test/test_strings.pyc
+#usr/lib/python2.7/ctypes/test/test_strings.pyo
+#usr/lib/python2.7/ctypes/test/test_struct_fields.py
+#usr/lib/python2.7/ctypes/test/test_struct_fields.pyc
+#usr/lib/python2.7/ctypes/test/test_struct_fields.pyo
+#usr/lib/python2.7/ctypes/test/test_structures.py
+#usr/lib/python2.7/ctypes/test/test_structures.pyc
+#usr/lib/python2.7/ctypes/test/test_structures.pyo
+#usr/lib/python2.7/ctypes/test/test_unaligned_structures.py
+#usr/lib/python2.7/ctypes/test/test_unaligned_structures.pyc
+#usr/lib/python2.7/ctypes/test/test_unaligned_structures.pyo
+#usr/lib/python2.7/ctypes/test/test_unicode.py
+#usr/lib/python2.7/ctypes/test/test_unicode.pyc
+#usr/lib/python2.7/ctypes/test/test_unicode.pyo
+#usr/lib/python2.7/ctypes/test/test_values.py
+#usr/lib/python2.7/ctypes/test/test_values.pyc
+#usr/lib/python2.7/ctypes/test/test_values.pyo
+#usr/lib/python2.7/ctypes/test/test_varsize_struct.py
+#usr/lib/python2.7/ctypes/test/test_varsize_struct.pyc
+#usr/lib/python2.7/ctypes/test/test_varsize_struct.pyo
+#usr/lib/python2.7/ctypes/test/test_win32.py
+#usr/lib/python2.7/ctypes/test/test_win32.pyc
+#usr/lib/python2.7/ctypes/test/test_win32.pyo
+#usr/lib/python2.7/ctypes/test/test_wintypes.py
+#usr/lib/python2.7/ctypes/test/test_wintypes.pyc
+#usr/lib/python2.7/ctypes/test/test_wintypes.pyo
+#usr/lib/python2.7/ctypes/util.py
+usr/lib/python2.7/ctypes/util.pyc
+#usr/lib/python2.7/ctypes/util.pyo
+#usr/lib/python2.7/ctypes/wintypes.py
+usr/lib/python2.7/ctypes/wintypes.pyc
+#usr/lib/python2.7/ctypes/wintypes.pyo
+#usr/lib/python2.7/curses
+#usr/lib/python2.7/curses/__init__.py
+usr/lib/python2.7/curses/__init__.pyc
+#usr/lib/python2.7/curses/__init__.pyo
+#usr/lib/python2.7/curses/ascii.py
+usr/lib/python2.7/curses/ascii.pyc
+#usr/lib/python2.7/curses/ascii.pyo
+#usr/lib/python2.7/curses/has_key.py
+usr/lib/python2.7/curses/has_key.pyc
+#usr/lib/python2.7/curses/has_key.pyo
+#usr/lib/python2.7/curses/panel.py
+usr/lib/python2.7/curses/panel.pyc
+#usr/lib/python2.7/curses/panel.pyo
+#usr/lib/python2.7/curses/textpad.py
+usr/lib/python2.7/curses/textpad.pyc
+#usr/lib/python2.7/curses/textpad.pyo
+#usr/lib/python2.7/curses/wrapper.py
+usr/lib/python2.7/curses/wrapper.pyc
+#usr/lib/python2.7/curses/wrapper.pyo
+#usr/lib/python2.7/dbhash.py
+usr/lib/python2.7/dbhash.pyc
+#usr/lib/python2.7/dbhash.pyo
+#usr/lib/python2.7/decimal.py
+usr/lib/python2.7/decimal.pyc
+#usr/lib/python2.7/decimal.pyo
+#usr/lib/python2.7/difflib.py
+usr/lib/python2.7/difflib.pyc
+#usr/lib/python2.7/difflib.pyo
+#usr/lib/python2.7/dircache.py
+usr/lib/python2.7/dircache.pyc
+#usr/lib/python2.7/dircache.pyo
+#usr/lib/python2.7/dis.py
+usr/lib/python2.7/dis.pyc
+#usr/lib/python2.7/dis.pyo
+#usr/lib/python2.7/distutils
+#usr/lib/python2.7/distutils/README
+#usr/lib/python2.7/distutils/__init__.py
+#usr/lib/python2.7/distutils/__init__.pyc
+#usr/lib/python2.7/distutils/__init__.pyo
+#usr/lib/python2.7/distutils/archive_util.py
+#usr/lib/python2.7/distutils/archive_util.pyc
+#usr/lib/python2.7/distutils/archive_util.pyo
+#usr/lib/python2.7/distutils/bcppcompiler.py
+#usr/lib/python2.7/distutils/bcppcompiler.pyc
+#usr/lib/python2.7/distutils/bcppcompiler.pyo
+#usr/lib/python2.7/distutils/ccompiler.py
+#usr/lib/python2.7/distutils/ccompiler.pyc
+#usr/lib/python2.7/distutils/ccompiler.pyo
+#usr/lib/python2.7/distutils/cmd.py
+#usr/lib/python2.7/distutils/cmd.pyc
+#usr/lib/python2.7/distutils/cmd.pyo
+#usr/lib/python2.7/distutils/command
+#usr/lib/python2.7/distutils/command/__init__.py
+#usr/lib/python2.7/distutils/command/__init__.pyc
+#usr/lib/python2.7/distutils/command/__init__.pyo
+#usr/lib/python2.7/distutils/command/bdist.py
+#usr/lib/python2.7/distutils/command/bdist.pyc
+#usr/lib/python2.7/distutils/command/bdist.pyo
+#usr/lib/python2.7/distutils/command/bdist_dumb.py
+#usr/lib/python2.7/distutils/command/bdist_dumb.pyc
+#usr/lib/python2.7/distutils/command/bdist_dumb.pyo
+#usr/lib/python2.7/distutils/command/bdist_msi.py
+#usr/lib/python2.7/distutils/command/bdist_msi.pyc
+#usr/lib/python2.7/distutils/command/bdist_msi.pyo
+#usr/lib/python2.7/distutils/command/bdist_rpm.py
+#usr/lib/python2.7/distutils/command/bdist_rpm.pyc
+#usr/lib/python2.7/distutils/command/bdist_rpm.pyo
+#usr/lib/python2.7/distutils/command/bdist_wininst.py
+#usr/lib/python2.7/distutils/command/bdist_wininst.pyc
+#usr/lib/python2.7/distutils/command/bdist_wininst.pyo
+#usr/lib/python2.7/distutils/command/build.py
+#usr/lib/python2.7/distutils/command/build.pyc
+#usr/lib/python2.7/distutils/command/build.pyo
+#usr/lib/python2.7/distutils/command/build_clib.py
+#usr/lib/python2.7/distutils/command/build_clib.pyc
+#usr/lib/python2.7/distutils/command/build_clib.pyo
+#usr/lib/python2.7/distutils/command/build_ext.py
+#usr/lib/python2.7/distutils/command/build_ext.pyc
+#usr/lib/python2.7/distutils/command/build_ext.pyo
+#usr/lib/python2.7/distutils/command/build_py.py
+#usr/lib/python2.7/distutils/command/build_py.pyc
+#usr/lib/python2.7/distutils/command/build_py.pyo
+#usr/lib/python2.7/distutils/command/build_scripts.py
+#usr/lib/python2.7/distutils/command/build_scripts.pyc
+#usr/lib/python2.7/distutils/command/build_scripts.pyo
+#usr/lib/python2.7/distutils/command/check.py
+#usr/lib/python2.7/distutils/command/check.pyc
+#usr/lib/python2.7/distutils/command/check.pyo
+#usr/lib/python2.7/distutils/command/clean.py
+#usr/lib/python2.7/distutils/command/clean.pyc
+#usr/lib/python2.7/distutils/command/clean.pyo
+#usr/lib/python2.7/distutils/command/command_template
+#usr/lib/python2.7/distutils/command/config.py
+#usr/lib/python2.7/distutils/command/config.pyc
+#usr/lib/python2.7/distutils/command/config.pyo
+#usr/lib/python2.7/distutils/command/install.py
+#usr/lib/python2.7/distutils/command/install.pyc
+#usr/lib/python2.7/distutils/command/install.pyo
+#usr/lib/python2.7/distutils/command/install_data.py
+#usr/lib/python2.7/distutils/command/install_data.pyc
+#usr/lib/python2.7/distutils/command/install_data.pyo
+#usr/lib/python2.7/distutils/command/install_egg_info.py
+#usr/lib/python2.7/distutils/command/install_egg_info.pyc
+#usr/lib/python2.7/distutils/command/install_egg_info.pyo
+#usr/lib/python2.7/distutils/command/install_headers.py
+#usr/lib/python2.7/distutils/command/install_headers.pyc
+#usr/lib/python2.7/distutils/command/install_headers.pyo
+#usr/lib/python2.7/distutils/command/install_lib.py
+#usr/lib/python2.7/distutils/command/install_lib.pyc
+#usr/lib/python2.7/distutils/command/install_lib.pyo
+#usr/lib/python2.7/distutils/command/install_scripts.py
+#usr/lib/python2.7/distutils/command/install_scripts.pyc
+#usr/lib/python2.7/distutils/command/install_scripts.pyo
+#usr/lib/python2.7/distutils/command/register.py
+#usr/lib/python2.7/distutils/command/register.pyc
+#usr/lib/python2.7/distutils/command/register.pyo
+#usr/lib/python2.7/distutils/command/sdist.py
+#usr/lib/python2.7/distutils/command/sdist.pyc
+#usr/lib/python2.7/distutils/command/sdist.pyo
+#usr/lib/python2.7/distutils/command/upload.py
+#usr/lib/python2.7/distutils/command/upload.pyc
+#usr/lib/python2.7/distutils/command/upload.pyo
+#usr/lib/python2.7/distutils/command/wininst-6.0.exe
+#usr/lib/python2.7/distutils/command/wininst-7.1.exe
+#usr/lib/python2.7/distutils/command/wininst-8.0.exe
+#usr/lib/python2.7/distutils/command/wininst-9.0-amd64.exe
+#usr/lib/python2.7/distutils/command/wininst-9.0.exe
+#usr/lib/python2.7/distutils/config.py
+#usr/lib/python2.7/distutils/config.pyc
+#usr/lib/python2.7/distutils/config.pyo
+#usr/lib/python2.7/distutils/core.py
+#usr/lib/python2.7/distutils/core.pyc
+#usr/lib/python2.7/distutils/core.pyo
+#usr/lib/python2.7/distutils/cygwinccompiler.py
+#usr/lib/python2.7/distutils/cygwinccompiler.pyc
+#usr/lib/python2.7/distutils/cygwinccompiler.pyo
+#usr/lib/python2.7/distutils/debug.py
+#usr/lib/python2.7/distutils/debug.pyc
+#usr/lib/python2.7/distutils/debug.pyo
+#usr/lib/python2.7/distutils/dep_util.py
+#usr/lib/python2.7/distutils/dep_util.pyc
+#usr/lib/python2.7/distutils/dep_util.pyo
+#usr/lib/python2.7/distutils/dir_util.py
+#usr/lib/python2.7/distutils/dir_util.pyc
+#usr/lib/python2.7/distutils/dir_util.pyo
+#usr/lib/python2.7/distutils/dist.py
+#usr/lib/python2.7/distutils/dist.pyc
+#usr/lib/python2.7/distutils/dist.pyo
+#usr/lib/python2.7/distutils/emxccompiler.py
+#usr/lib/python2.7/distutils/emxccompiler.pyc
+#usr/lib/python2.7/distutils/emxccompiler.pyo
+#usr/lib/python2.7/distutils/errors.py
+#usr/lib/python2.7/distutils/errors.pyc
+#usr/lib/python2.7/distutils/errors.pyo
+#usr/lib/python2.7/distutils/extension.py
+#usr/lib/python2.7/distutils/extension.pyc
+#usr/lib/python2.7/distutils/extension.pyo
+#usr/lib/python2.7/distutils/fancy_getopt.py
+#usr/lib/python2.7/distutils/fancy_getopt.pyc
+#usr/lib/python2.7/distutils/fancy_getopt.pyo
+#usr/lib/python2.7/distutils/file_util.py
+#usr/lib/python2.7/distutils/file_util.pyc
+#usr/lib/python2.7/distutils/file_util.pyo
+#usr/lib/python2.7/distutils/filelist.py
+#usr/lib/python2.7/distutils/filelist.pyc
+#usr/lib/python2.7/distutils/filelist.pyo
+#usr/lib/python2.7/distutils/log.py
+#usr/lib/python2.7/distutils/log.pyc
+#usr/lib/python2.7/distutils/log.pyo
+#usr/lib/python2.7/distutils/msvc9compiler.py
+#usr/lib/python2.7/distutils/msvc9compiler.pyc
+#usr/lib/python2.7/distutils/msvc9compiler.pyo
+#usr/lib/python2.7/distutils/msvccompiler.py
+#usr/lib/python2.7/distutils/msvccompiler.pyc
+#usr/lib/python2.7/distutils/msvccompiler.pyo
+#usr/lib/python2.7/distutils/spawn.py
+#usr/lib/python2.7/distutils/spawn.pyc
+#usr/lib/python2.7/distutils/spawn.pyo
+#usr/lib/python2.7/distutils/sysconfig.py
+#usr/lib/python2.7/distutils/sysconfig.pyc
+#usr/lib/python2.7/distutils/sysconfig.pyo
+#usr/lib/python2.7/distutils/tests
+#usr/lib/python2.7/distutils/tests/Setup.sample
+#usr/lib/python2.7/distutils/tests/__init__.py
+#usr/lib/python2.7/distutils/tests/__init__.pyc
+#usr/lib/python2.7/distutils/tests/__init__.pyo
+#usr/lib/python2.7/distutils/tests/setuptools_build_ext.py
+#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyc
+#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyo
+#usr/lib/python2.7/distutils/tests/setuptools_extension.py
+#usr/lib/python2.7/distutils/tests/setuptools_extension.pyc
+#usr/lib/python2.7/distutils/tests/setuptools_extension.pyo
+#usr/lib/python2.7/distutils/tests/support.py
+#usr/lib/python2.7/distutils/tests/support.pyc
+#usr/lib/python2.7/distutils/tests/support.pyo
+#usr/lib/python2.7/distutils/tests/test_archive_util.py
+#usr/lib/python2.7/distutils/tests/test_archive_util.pyc
+#usr/lib/python2.7/distutils/tests/test_archive_util.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist.py
+#usr/lib/python2.7/distutils/tests/test_bdist.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_dumb.py
+#usr/lib/python2.7/distutils/tests/test_bdist_dumb.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_dumb.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_msi.py
+#usr/lib/python2.7/distutils/tests/test_bdist_msi.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_msi.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_rpm.py
+#usr/lib/python2.7/distutils/tests/test_bdist_rpm.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_rpm.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_wininst.py
+#usr/lib/python2.7/distutils/tests/test_bdist_wininst.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_wininst.pyo
+#usr/lib/python2.7/distutils/tests/test_build.py
+#usr/lib/python2.7/distutils/tests/test_build.pyc
+#usr/lib/python2.7/distutils/tests/test_build.pyo
+#usr/lib/python2.7/distutils/tests/test_build_clib.py
+#usr/lib/python2.7/distutils/tests/test_build_clib.pyc
+#usr/lib/python2.7/distutils/tests/test_build_clib.pyo
+#usr/lib/python2.7/distutils/tests/test_build_ext.py
+#usr/lib/python2.7/distutils/tests/test_build_ext.pyc
+#usr/lib/python2.7/distutils/tests/test_build_ext.pyo
+#usr/lib/python2.7/distutils/tests/test_build_py.py
+#usr/lib/python2.7/distutils/tests/test_build_py.pyc
+#usr/lib/python2.7/distutils/tests/test_build_py.pyo
+#usr/lib/python2.7/distutils/tests/test_build_scripts.py
+#usr/lib/python2.7/distutils/tests/test_build_scripts.pyc
+#usr/lib/python2.7/distutils/tests/test_build_scripts.pyo
+#usr/lib/python2.7/distutils/tests/test_ccompiler.py
+#usr/lib/python2.7/distutils/tests/test_ccompiler.pyc
+#usr/lib/python2.7/distutils/tests/test_ccompiler.pyo
+#usr/lib/python2.7/distutils/tests/test_check.py
+#usr/lib/python2.7/distutils/tests/test_check.pyc
+#usr/lib/python2.7/distutils/tests/test_check.pyo
+#usr/lib/python2.7/distutils/tests/test_clean.py
+#usr/lib/python2.7/distutils/tests/test_clean.pyc
+#usr/lib/python2.7/distutils/tests/test_clean.pyo
+#usr/lib/python2.7/distutils/tests/test_cmd.py
+#usr/lib/python2.7/distutils/tests/test_cmd.pyc
+#usr/lib/python2.7/distutils/tests/test_cmd.pyo
+#usr/lib/python2.7/distutils/tests/test_config.py
+#usr/lib/python2.7/distutils/tests/test_config.pyc
+#usr/lib/python2.7/distutils/tests/test_config.pyo
+#usr/lib/python2.7/distutils/tests/test_config_cmd.py
+#usr/lib/python2.7/distutils/tests/test_config_cmd.pyc
+#usr/lib/python2.7/distutils/tests/test_config_cmd.pyo
+#usr/lib/python2.7/distutils/tests/test_core.py
+#usr/lib/python2.7/distutils/tests/test_core.pyc
+#usr/lib/python2.7/distutils/tests/test_core.pyo
+#usr/lib/python2.7/distutils/tests/test_dep_util.py
+#usr/lib/python2.7/distutils/tests/test_dep_util.pyc
+#usr/lib/python2.7/distutils/tests/test_dep_util.pyo
+#usr/lib/python2.7/distutils/tests/test_dir_util.py
+#usr/lib/python2.7/distutils/tests/test_dir_util.pyc
+#usr/lib/python2.7/distutils/tests/test_dir_util.pyo
+#usr/lib/python2.7/distutils/tests/test_dist.py
+#usr/lib/python2.7/distutils/tests/test_dist.pyc
+#usr/lib/python2.7/distutils/tests/test_dist.pyo
+#usr/lib/python2.7/distutils/tests/test_file_util.py
+#usr/lib/python2.7/distutils/tests/test_file_util.pyc
+#usr/lib/python2.7/distutils/tests/test_file_util.pyo
+#usr/lib/python2.7/distutils/tests/test_filelist.py
+#usr/lib/python2.7/distutils/tests/test_filelist.pyc
+#usr/lib/python2.7/distutils/tests/test_filelist.pyo
+#usr/lib/python2.7/distutils/tests/test_install.py
+#usr/lib/python2.7/distutils/tests/test_install.pyc
+#usr/lib/python2.7/distutils/tests/test_install.pyo
+#usr/lib/python2.7/distutils/tests/test_install_data.py
+#usr/lib/python2.7/distutils/tests/test_install_data.pyc
+#usr/lib/python2.7/distutils/tests/test_install_data.pyo
+#usr/lib/python2.7/distutils/tests/test_install_headers.py
+#usr/lib/python2.7/distutils/tests/test_install_headers.pyc
+#usr/lib/python2.7/distutils/tests/test_install_headers.pyo
+#usr/lib/python2.7/distutils/tests/test_install_lib.py
+#usr/lib/python2.7/distutils/tests/test_install_lib.pyc
+#usr/lib/python2.7/distutils/tests/test_install_lib.pyo
+#usr/lib/python2.7/distutils/tests/test_install_scripts.py
+#usr/lib/python2.7/distutils/tests/test_install_scripts.pyc
+#usr/lib/python2.7/distutils/tests/test_install_scripts.pyo
+#usr/lib/python2.7/distutils/tests/test_msvc9compiler.py
+#usr/lib/python2.7/distutils/tests/test_msvc9compiler.pyc
+#usr/lib/python2.7/distutils/tests/test_msvc9compiler.pyo
+#usr/lib/python2.7/distutils/tests/test_register.py
+#usr/lib/python2.7/distutils/tests/test_register.pyc
+#usr/lib/python2.7/distutils/tests/test_register.pyo
+#usr/lib/python2.7/distutils/tests/test_sdist.py
+#usr/lib/python2.7/distutils/tests/test_sdist.pyc
+#usr/lib/python2.7/distutils/tests/test_sdist.pyo
+#usr/lib/python2.7/distutils/tests/test_spawn.py
+#usr/lib/python2.7/distutils/tests/test_spawn.pyc
+#usr/lib/python2.7/distutils/tests/test_spawn.pyo
+#usr/lib/python2.7/distutils/tests/test_sysconfig.py
+#usr/lib/python2.7/distutils/tests/test_sysconfig.pyc
+#usr/lib/python2.7/distutils/tests/test_sysconfig.pyo
+#usr/lib/python2.7/distutils/tests/test_text_file.py
+#usr/lib/python2.7/distutils/tests/test_text_file.pyc
+#usr/lib/python2.7/distutils/tests/test_text_file.pyo
+#usr/lib/python2.7/distutils/tests/test_unixccompiler.py
+#usr/lib/python2.7/distutils/tests/test_unixccompiler.pyc
+#usr/lib/python2.7/distutils/tests/test_unixccompiler.pyo
+#usr/lib/python2.7/distutils/tests/test_upload.py
+#usr/lib/python2.7/distutils/tests/test_upload.pyc
+#usr/lib/python2.7/distutils/tests/test_upload.pyo
+#usr/lib/python2.7/distutils/tests/test_util.py
+#usr/lib/python2.7/distutils/tests/test_util.pyc
+#usr/lib/python2.7/distutils/tests/test_util.pyo
+#usr/lib/python2.7/distutils/tests/test_version.py
+#usr/lib/python2.7/distutils/tests/test_version.pyc
+#usr/lib/python2.7/distutils/tests/test_version.pyo
+#usr/lib/python2.7/distutils/tests/test_versionpredicate.py
+#usr/lib/python2.7/distutils/tests/test_versionpredicate.pyc
+#usr/lib/python2.7/distutils/tests/test_versionpredicate.pyo
+#usr/lib/python2.7/distutils/tests/xxmodule.c
+#usr/lib/python2.7/distutils/text_file.py
+#usr/lib/python2.7/distutils/text_file.pyc
+#usr/lib/python2.7/distutils/text_file.pyo
+#usr/lib/python2.7/distutils/unixccompiler.py
+#usr/lib/python2.7/distutils/unixccompiler.pyc
+#usr/lib/python2.7/distutils/unixccompiler.pyo
+#usr/lib/python2.7/distutils/util.py
+#usr/lib/python2.7/distutils/util.pyc
+#usr/lib/python2.7/distutils/util.pyo
+#usr/lib/python2.7/distutils/version.py
+#usr/lib/python2.7/distutils/version.pyc
+#usr/lib/python2.7/distutils/version.pyo
+#usr/lib/python2.7/distutils/versionpredicate.py
+#usr/lib/python2.7/distutils/versionpredicate.pyc
+#usr/lib/python2.7/distutils/versionpredicate.pyo
+#usr/lib/python2.7/doctest.py
+usr/lib/python2.7/doctest.pyc
+#usr/lib/python2.7/doctest.pyo
+#usr/lib/python2.7/dumbdbm.py
+usr/lib/python2.7/dumbdbm.pyc
+#usr/lib/python2.7/dumbdbm.pyo
+#usr/lib/python2.7/dummy_thread.py
+usr/lib/python2.7/dummy_thread.pyc
+#usr/lib/python2.7/dummy_thread.pyo
+#usr/lib/python2.7/dummy_threading.py
+usr/lib/python2.7/dummy_threading.pyc
+#usr/lib/python2.7/dummy_threading.pyo
+#usr/lib/python2.7/email
+#usr/lib/python2.7/email/__init__.py
+usr/lib/python2.7/email/__init__.pyc
+#usr/lib/python2.7/email/__init__.pyo
+#usr/lib/python2.7/email/_parseaddr.py
+usr/lib/python2.7/email/_parseaddr.pyc
+#usr/lib/python2.7/email/_parseaddr.pyo
+#usr/lib/python2.7/email/base64mime.py
+usr/lib/python2.7/email/base64mime.pyc
+#usr/lib/python2.7/email/base64mime.pyo
+#usr/lib/python2.7/email/charset.py
+usr/lib/python2.7/email/charset.pyc
+#usr/lib/python2.7/email/charset.pyo
+#usr/lib/python2.7/email/encoders.py
+usr/lib/python2.7/email/encoders.pyc
+#usr/lib/python2.7/email/encoders.pyo
+#usr/lib/python2.7/email/errors.py
+usr/lib/python2.7/email/errors.pyc
+#usr/lib/python2.7/email/errors.pyo
+#usr/lib/python2.7/email/feedparser.py
+usr/lib/python2.7/email/feedparser.pyc
+#usr/lib/python2.7/email/feedparser.pyo
+#usr/lib/python2.7/email/generator.py
+usr/lib/python2.7/email/generator.pyc
+#usr/lib/python2.7/email/generator.pyo
+#usr/lib/python2.7/email/header.py
+usr/lib/python2.7/email/header.pyc
+#usr/lib/python2.7/email/header.pyo
+#usr/lib/python2.7/email/iterators.py
+usr/lib/python2.7/email/iterators.pyc
+#usr/lib/python2.7/email/iterators.pyo
+#usr/lib/python2.7/email/message.py
+usr/lib/python2.7/email/message.pyc
+#usr/lib/python2.7/email/message.pyo
+#usr/lib/python2.7/email/mime
+#usr/lib/python2.7/email/mime/__init__.py
+usr/lib/python2.7/email/mime/__init__.pyc
+#usr/lib/python2.7/email/mime/__init__.pyo
+#usr/lib/python2.7/email/mime/application.py
+usr/lib/python2.7/email/mime/application.pyc
+#usr/lib/python2.7/email/mime/application.pyo
+#usr/lib/python2.7/email/mime/audio.py
+usr/lib/python2.7/email/mime/audio.pyc
+#usr/lib/python2.7/email/mime/audio.pyo
+#usr/lib/python2.7/email/mime/base.py
+usr/lib/python2.7/email/mime/base.pyc
+#usr/lib/python2.7/email/mime/base.pyo
+#usr/lib/python2.7/email/mime/image.py
+usr/lib/python2.7/email/mime/image.pyc
+#usr/lib/python2.7/email/mime/image.pyo
+#usr/lib/python2.7/email/mime/message.py
+usr/lib/python2.7/email/mime/message.pyc
+#usr/lib/python2.7/email/mime/message.pyo
+#usr/lib/python2.7/email/mime/multipart.py
+usr/lib/python2.7/email/mime/multipart.pyc
+#usr/lib/python2.7/email/mime/multipart.pyo
+#usr/lib/python2.7/email/mime/nonmultipart.py
+usr/lib/python2.7/email/mime/nonmultipart.pyc
+#usr/lib/python2.7/email/mime/nonmultipart.pyo
+#usr/lib/python2.7/email/mime/text.py
+usr/lib/python2.7/email/mime/text.pyc
+#usr/lib/python2.7/email/mime/text.pyo
+#usr/lib/python2.7/email/parser.py
+usr/lib/python2.7/email/parser.pyc
+#usr/lib/python2.7/email/parser.pyo
+#usr/lib/python2.7/email/quoprimime.py
+usr/lib/python2.7/email/quoprimime.pyc
+#usr/lib/python2.7/email/quoprimime.pyo
+#usr/lib/python2.7/email/test
+#usr/lib/python2.7/email/test/__init__.py
+#usr/lib/python2.7/email/test/__init__.pyc
+#usr/lib/python2.7/email/test/__init__.pyo
+#usr/lib/python2.7/email/test/data
+#usr/lib/python2.7/email/test/data/PyBanner048.gif
+#usr/lib/python2.7/email/test/data/audiotest.au
+#usr/lib/python2.7/email/test/data/msg_01.txt
+#usr/lib/python2.7/email/test/data/msg_02.txt
+#usr/lib/python2.7/email/test/data/msg_03.txt
+#usr/lib/python2.7/email/test/data/msg_04.txt
+#usr/lib/python2.7/email/test/data/msg_05.txt
+#usr/lib/python2.7/email/test/data/msg_06.txt
+#usr/lib/python2.7/email/test/data/msg_07.txt
+#usr/lib/python2.7/email/test/data/msg_08.txt
+#usr/lib/python2.7/email/test/data/msg_09.txt
+#usr/lib/python2.7/email/test/data/msg_10.txt
+#usr/lib/python2.7/email/test/data/msg_11.txt
+#usr/lib/python2.7/email/test/data/msg_12.txt
+#usr/lib/python2.7/email/test/data/msg_12a.txt
+#usr/lib/python2.7/email/test/data/msg_13.txt
+#usr/lib/python2.7/email/test/data/msg_14.txt
+#usr/lib/python2.7/email/test/data/msg_15.txt
+#usr/lib/python2.7/email/test/data/msg_16.txt
+#usr/lib/python2.7/email/test/data/msg_17.txt
+#usr/lib/python2.7/email/test/data/msg_18.txt
+#usr/lib/python2.7/email/test/data/msg_19.txt
+#usr/lib/python2.7/email/test/data/msg_20.txt
+#usr/lib/python2.7/email/test/data/msg_21.txt
+#usr/lib/python2.7/email/test/data/msg_22.txt
+#usr/lib/python2.7/email/test/data/msg_23.txt
+#usr/lib/python2.7/email/test/data/msg_24.txt
+#usr/lib/python2.7/email/test/data/msg_25.txt
+#usr/lib/python2.7/email/test/data/msg_26.txt
+#usr/lib/python2.7/email/test/data/msg_27.txt
+#usr/lib/python2.7/email/test/data/msg_28.txt
+#usr/lib/python2.7/email/test/data/msg_29.txt
+#usr/lib/python2.7/email/test/data/msg_30.txt
+#usr/lib/python2.7/email/test/data/msg_31.txt
+#usr/lib/python2.7/email/test/data/msg_32.txt
+#usr/lib/python2.7/email/test/data/msg_33.txt
+#usr/lib/python2.7/email/test/data/msg_34.txt
+#usr/lib/python2.7/email/test/data/msg_35.txt
+#usr/lib/python2.7/email/test/data/msg_36.txt
+#usr/lib/python2.7/email/test/data/msg_37.txt
+#usr/lib/python2.7/email/test/data/msg_38.txt
+#usr/lib/python2.7/email/test/data/msg_39.txt
+#usr/lib/python2.7/email/test/data/msg_40.txt
+#usr/lib/python2.7/email/test/data/msg_41.txt
+#usr/lib/python2.7/email/test/data/msg_42.txt
+#usr/lib/python2.7/email/test/data/msg_43.txt
+#usr/lib/python2.7/email/test/data/msg_44.txt
+#usr/lib/python2.7/email/test/data/msg_45.txt
+#usr/lib/python2.7/email/test/data/msg_46.txt
+#usr/lib/python2.7/email/test/test_email.py
+#usr/lib/python2.7/email/test/test_email.pyc
+#usr/lib/python2.7/email/test/test_email.pyo
+#usr/lib/python2.7/email/test/test_email_codecs.py
+#usr/lib/python2.7/email/test/test_email_codecs.pyc
+#usr/lib/python2.7/email/test/test_email_codecs.pyo
+#usr/lib/python2.7/email/test/test_email_codecs_renamed.py
+#usr/lib/python2.7/email/test/test_email_codecs_renamed.pyc
+#usr/lib/python2.7/email/test/test_email_codecs_renamed.pyo
+#usr/lib/python2.7/email/test/test_email_renamed.py
+#usr/lib/python2.7/email/test/test_email_renamed.pyc
+#usr/lib/python2.7/email/test/test_email_renamed.pyo
+#usr/lib/python2.7/email/test/test_email_torture.py
+#usr/lib/python2.7/email/test/test_email_torture.pyc
+#usr/lib/python2.7/email/test/test_email_torture.pyo
+#usr/lib/python2.7/email/utils.py
+usr/lib/python2.7/email/utils.pyc
+#usr/lib/python2.7/email/utils.pyo
+#usr/lib/python2.7/encodings
+#usr/lib/python2.7/encodings/__init__.py
+usr/lib/python2.7/encodings/__init__.pyc
+#usr/lib/python2.7/encodings/__init__.pyo
+#usr/lib/python2.7/encodings/aliases.py
+usr/lib/python2.7/encodings/aliases.pyc
+#usr/lib/python2.7/encodings/aliases.pyo
+#usr/lib/python2.7/encodings/ascii.py
+usr/lib/python2.7/encodings/ascii.pyc
+#usr/lib/python2.7/encodings/ascii.pyo
+#usr/lib/python2.7/encodings/base64_codec.py
+usr/lib/python2.7/encodings/base64_codec.pyc
+#usr/lib/python2.7/encodings/base64_codec.pyo
+#usr/lib/python2.7/encodings/big5.py
+usr/lib/python2.7/encodings/big5.pyc
+#usr/lib/python2.7/encodings/big5.pyo
+#usr/lib/python2.7/encodings/big5hkscs.py
+usr/lib/python2.7/encodings/big5hkscs.pyc
+#usr/lib/python2.7/encodings/big5hkscs.pyo
+#usr/lib/python2.7/encodings/bz2_codec.py
+usr/lib/python2.7/encodings/bz2_codec.pyc
+#usr/lib/python2.7/encodings/bz2_codec.pyo
+#usr/lib/python2.7/encodings/charmap.py
+usr/lib/python2.7/encodings/charmap.pyc
+#usr/lib/python2.7/encodings/charmap.pyo
+#usr/lib/python2.7/encodings/cp037.py
+usr/lib/python2.7/encodings/cp037.pyc
+#usr/lib/python2.7/encodings/cp037.pyo
+#usr/lib/python2.7/encodings/cp1006.py
+usr/lib/python2.7/encodings/cp1006.pyc
+#usr/lib/python2.7/encodings/cp1006.pyo
+#usr/lib/python2.7/encodings/cp1026.py
+usr/lib/python2.7/encodings/cp1026.pyc
+#usr/lib/python2.7/encodings/cp1026.pyo
+#usr/lib/python2.7/encodings/cp1140.py
+usr/lib/python2.7/encodings/cp1140.pyc
+#usr/lib/python2.7/encodings/cp1140.pyo
+#usr/lib/python2.7/encodings/cp1250.py
+usr/lib/python2.7/encodings/cp1250.pyc
+#usr/lib/python2.7/encodings/cp1250.pyo
+#usr/lib/python2.7/encodings/cp1251.py
+usr/lib/python2.7/encodings/cp1251.pyc
+#usr/lib/python2.7/encodings/cp1251.pyo
+#usr/lib/python2.7/encodings/cp1252.py
+usr/lib/python2.7/encodings/cp1252.pyc
+#usr/lib/python2.7/encodings/cp1252.pyo
+#usr/lib/python2.7/encodings/cp1253.py
+usr/lib/python2.7/encodings/cp1253.pyc
+#usr/lib/python2.7/encodings/cp1253.pyo
+#usr/lib/python2.7/encodings/cp1254.py
+usr/lib/python2.7/encodings/cp1254.pyc
+#usr/lib/python2.7/encodings/cp1254.pyo
+#usr/lib/python2.7/encodings/cp1255.py
+usr/lib/python2.7/encodings/cp1255.pyc
+#usr/lib/python2.7/encodings/cp1255.pyo
+#usr/lib/python2.7/encodings/cp1256.py
+usr/lib/python2.7/encodings/cp1256.pyc
+#usr/lib/python2.7/encodings/cp1256.pyo
+#usr/lib/python2.7/encodings/cp1257.py
+usr/lib/python2.7/encodings/cp1257.pyc
+#usr/lib/python2.7/encodings/cp1257.pyo
+#usr/lib/python2.7/encodings/cp1258.py
+usr/lib/python2.7/encodings/cp1258.pyc
+#usr/lib/python2.7/encodings/cp1258.pyo
+#usr/lib/python2.7/encodings/cp424.py
+usr/lib/python2.7/encodings/cp424.pyc
+#usr/lib/python2.7/encodings/cp424.pyo
+#usr/lib/python2.7/encodings/cp437.py
+usr/lib/python2.7/encodings/cp437.pyc
+#usr/lib/python2.7/encodings/cp437.pyo
+#usr/lib/python2.7/encodings/cp500.py
+usr/lib/python2.7/encodings/cp500.pyc
+#usr/lib/python2.7/encodings/cp500.pyo
+#usr/lib/python2.7/encodings/cp720.py
+usr/lib/python2.7/encodings/cp720.pyc
+#usr/lib/python2.7/encodings/cp720.pyo
+#usr/lib/python2.7/encodings/cp737.py
+usr/lib/python2.7/encodings/cp737.pyc
+#usr/lib/python2.7/encodings/cp737.pyo
+#usr/lib/python2.7/encodings/cp775.py
+usr/lib/python2.7/encodings/cp775.pyc
+#usr/lib/python2.7/encodings/cp775.pyo
+#usr/lib/python2.7/encodings/cp850.py
+usr/lib/python2.7/encodings/cp850.pyc
+#usr/lib/python2.7/encodings/cp850.pyo
+#usr/lib/python2.7/encodings/cp852.py
+usr/lib/python2.7/encodings/cp852.pyc
+#usr/lib/python2.7/encodings/cp852.pyo
+#usr/lib/python2.7/encodings/cp855.py
+usr/lib/python2.7/encodings/cp855.pyc
+#usr/lib/python2.7/encodings/cp855.pyo
+#usr/lib/python2.7/encodings/cp856.py
+usr/lib/python2.7/encodings/cp856.pyc
+#usr/lib/python2.7/encodings/cp856.pyo
+#usr/lib/python2.7/encodings/cp857.py
+usr/lib/python2.7/encodings/cp857.pyc
+#usr/lib/python2.7/encodings/cp857.pyo
+#usr/lib/python2.7/encodings/cp858.py
+usr/lib/python2.7/encodings/cp858.pyc
+#usr/lib/python2.7/encodings/cp858.pyo
+#usr/lib/python2.7/encodings/cp860.py
+usr/lib/python2.7/encodings/cp860.pyc
+#usr/lib/python2.7/encodings/cp860.pyo
+#usr/lib/python2.7/encodings/cp861.py
+usr/lib/python2.7/encodings/cp861.pyc
+#usr/lib/python2.7/encodings/cp861.pyo
+#usr/lib/python2.7/encodings/cp862.py
+usr/lib/python2.7/encodings/cp862.pyc
+#usr/lib/python2.7/encodings/cp862.pyo
+#usr/lib/python2.7/encodings/cp863.py
+usr/lib/python2.7/encodings/cp863.pyc
+#usr/lib/python2.7/encodings/cp863.pyo
+#usr/lib/python2.7/encodings/cp864.py
+usr/lib/python2.7/encodings/cp864.pyc
+#usr/lib/python2.7/encodings/cp864.pyo
+#usr/lib/python2.7/encodings/cp865.py
+usr/lib/python2.7/encodings/cp865.pyc
+#usr/lib/python2.7/encodings/cp865.pyo
+#usr/lib/python2.7/encodings/cp866.py
+usr/lib/python2.7/encodings/cp866.pyc
+#usr/lib/python2.7/encodings/cp866.pyo
+#usr/lib/python2.7/encodings/cp869.py
+usr/lib/python2.7/encodings/cp869.pyc
+#usr/lib/python2.7/encodings/cp869.pyo
+#usr/lib/python2.7/encodings/cp874.py
+usr/lib/python2.7/encodings/cp874.pyc
+#usr/lib/python2.7/encodings/cp874.pyo
+#usr/lib/python2.7/encodings/cp875.py
+usr/lib/python2.7/encodings/cp875.pyc
+#usr/lib/python2.7/encodings/cp875.pyo
+#usr/lib/python2.7/encodings/cp932.py
+usr/lib/python2.7/encodings/cp932.pyc
+#usr/lib/python2.7/encodings/cp932.pyo
+#usr/lib/python2.7/encodings/cp949.py
+usr/lib/python2.7/encodings/cp949.pyc
+#usr/lib/python2.7/encodings/cp949.pyo
+#usr/lib/python2.7/encodings/cp950.py
+usr/lib/python2.7/encodings/cp950.pyc
+#usr/lib/python2.7/encodings/cp950.pyo
+#usr/lib/python2.7/encodings/euc_jis_2004.py
+usr/lib/python2.7/encodings/euc_jis_2004.pyc
+#usr/lib/python2.7/encodings/euc_jis_2004.pyo
+#usr/lib/python2.7/encodings/euc_jisx0213.py
+usr/lib/python2.7/encodings/euc_jisx0213.pyc
+#usr/lib/python2.7/encodings/euc_jisx0213.pyo
+#usr/lib/python2.7/encodings/euc_jp.py
+usr/lib/python2.7/encodings/euc_jp.pyc
+#usr/lib/python2.7/encodings/euc_jp.pyo
+#usr/lib/python2.7/encodings/euc_kr.py
+usr/lib/python2.7/encodings/euc_kr.pyc
+#usr/lib/python2.7/encodings/euc_kr.pyo
+#usr/lib/python2.7/encodings/gb18030.py
+usr/lib/python2.7/encodings/gb18030.pyc
+#usr/lib/python2.7/encodings/gb18030.pyo
+#usr/lib/python2.7/encodings/gb2312.py
+usr/lib/python2.7/encodings/gb2312.pyc
+#usr/lib/python2.7/encodings/gb2312.pyo
+#usr/lib/python2.7/encodings/gbk.py
+usr/lib/python2.7/encodings/gbk.pyc
+#usr/lib/python2.7/encodings/gbk.pyo
+#usr/lib/python2.7/encodings/hex_codec.py
+usr/lib/python2.7/encodings/hex_codec.pyc
+#usr/lib/python2.7/encodings/hex_codec.pyo
+#usr/lib/python2.7/encodings/hp_roman8.py
+usr/lib/python2.7/encodings/hp_roman8.pyc
+#usr/lib/python2.7/encodings/hp_roman8.pyo
+#usr/lib/python2.7/encodings/hz.py
+usr/lib/python2.7/encodings/hz.pyc
+#usr/lib/python2.7/encodings/hz.pyo
+#usr/lib/python2.7/encodings/idna.py
+usr/lib/python2.7/encodings/idna.pyc
+#usr/lib/python2.7/encodings/idna.pyo
+#usr/lib/python2.7/encodings/iso2022_jp.py
+usr/lib/python2.7/encodings/iso2022_jp.pyc
+#usr/lib/python2.7/encodings/iso2022_jp.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_1.py
+usr/lib/python2.7/encodings/iso2022_jp_1.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_1.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_2.py
+usr/lib/python2.7/encodings/iso2022_jp_2.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_2.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_2004.py
+usr/lib/python2.7/encodings/iso2022_jp_2004.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_2004.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_3.py
+usr/lib/python2.7/encodings/iso2022_jp_3.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_3.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_ext.py
+usr/lib/python2.7/encodings/iso2022_jp_ext.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_ext.pyo
+#usr/lib/python2.7/encodings/iso2022_kr.py
+usr/lib/python2.7/encodings/iso2022_kr.pyc
+#usr/lib/python2.7/encodings/iso2022_kr.pyo
+#usr/lib/python2.7/encodings/iso8859_1.py
+usr/lib/python2.7/encodings/iso8859_1.pyc
+#usr/lib/python2.7/encodings/iso8859_1.pyo
+#usr/lib/python2.7/encodings/iso8859_10.py
+usr/lib/python2.7/encodings/iso8859_10.pyc
+#usr/lib/python2.7/encodings/iso8859_10.pyo
+#usr/lib/python2.7/encodings/iso8859_11.py
+usr/lib/python2.7/encodings/iso8859_11.pyc
+#usr/lib/python2.7/encodings/iso8859_11.pyo
+#usr/lib/python2.7/encodings/iso8859_13.py
+usr/lib/python2.7/encodings/iso8859_13.pyc
+#usr/lib/python2.7/encodings/iso8859_13.pyo
+#usr/lib/python2.7/encodings/iso8859_14.py
+usr/lib/python2.7/encodings/iso8859_14.pyc
+#usr/lib/python2.7/encodings/iso8859_14.pyo
+#usr/lib/python2.7/encodings/iso8859_15.py
+usr/lib/python2.7/encodings/iso8859_15.pyc
+#usr/lib/python2.7/encodings/iso8859_15.pyo
+#usr/lib/python2.7/encodings/iso8859_16.py
+usr/lib/python2.7/encodings/iso8859_16.pyc
+#usr/lib/python2.7/encodings/iso8859_16.pyo
+#usr/lib/python2.7/encodings/iso8859_2.py
+usr/lib/python2.7/encodings/iso8859_2.pyc
+#usr/lib/python2.7/encodings/iso8859_2.pyo
+#usr/lib/python2.7/encodings/iso8859_3.py
+usr/lib/python2.7/encodings/iso8859_3.pyc
+#usr/lib/python2.7/encodings/iso8859_3.pyo
+#usr/lib/python2.7/encodings/iso8859_4.py
+usr/lib/python2.7/encodings/iso8859_4.pyc
+#usr/lib/python2.7/encodings/iso8859_4.pyo
+#usr/lib/python2.7/encodings/iso8859_5.py
+usr/lib/python2.7/encodings/iso8859_5.pyc
+#usr/lib/python2.7/encodings/iso8859_5.pyo
+#usr/lib/python2.7/encodings/iso8859_6.py
+usr/lib/python2.7/encodings/iso8859_6.pyc
+#usr/lib/python2.7/encodings/iso8859_6.pyo
+#usr/lib/python2.7/encodings/iso8859_7.py
+usr/lib/python2.7/encodings/iso8859_7.pyc
+#usr/lib/python2.7/encodings/iso8859_7.pyo
+#usr/lib/python2.7/encodings/iso8859_8.py
+usr/lib/python2.7/encodings/iso8859_8.pyc
+#usr/lib/python2.7/encodings/iso8859_8.pyo
+#usr/lib/python2.7/encodings/iso8859_9.py
+usr/lib/python2.7/encodings/iso8859_9.pyc
+#usr/lib/python2.7/encodings/iso8859_9.pyo
+#usr/lib/python2.7/encodings/johab.py
+usr/lib/python2.7/encodings/johab.pyc
+#usr/lib/python2.7/encodings/johab.pyo
+#usr/lib/python2.7/encodings/koi8_r.py
+usr/lib/python2.7/encodings/koi8_r.pyc
+#usr/lib/python2.7/encodings/koi8_r.pyo
+#usr/lib/python2.7/encodings/koi8_u.py
+usr/lib/python2.7/encodings/koi8_u.pyc
+#usr/lib/python2.7/encodings/koi8_u.pyo
+#usr/lib/python2.7/encodings/latin_1.py
+usr/lib/python2.7/encodings/latin_1.pyc
+#usr/lib/python2.7/encodings/latin_1.pyo
+#usr/lib/python2.7/encodings/mac_arabic.py
+usr/lib/python2.7/encodings/mac_arabic.pyc
+#usr/lib/python2.7/encodings/mac_arabic.pyo
+#usr/lib/python2.7/encodings/mac_centeuro.py
+usr/lib/python2.7/encodings/mac_centeuro.pyc
+#usr/lib/python2.7/encodings/mac_centeuro.pyo
+#usr/lib/python2.7/encodings/mac_croatian.py
+usr/lib/python2.7/encodings/mac_croatian.pyc
+#usr/lib/python2.7/encodings/mac_croatian.pyo
+#usr/lib/python2.7/encodings/mac_cyrillic.py
+usr/lib/python2.7/encodings/mac_cyrillic.pyc
+#usr/lib/python2.7/encodings/mac_cyrillic.pyo
+#usr/lib/python2.7/encodings/mac_farsi.py
+usr/lib/python2.7/encodings/mac_farsi.pyc
+#usr/lib/python2.7/encodings/mac_farsi.pyo
+#usr/lib/python2.7/encodings/mac_greek.py
+usr/lib/python2.7/encodings/mac_greek.pyc
+#usr/lib/python2.7/encodings/mac_greek.pyo
+#usr/lib/python2.7/encodings/mac_iceland.py
+usr/lib/python2.7/encodings/mac_iceland.pyc
+#usr/lib/python2.7/encodings/mac_iceland.pyo
+#usr/lib/python2.7/encodings/mac_latin2.py
+usr/lib/python2.7/encodings/mac_latin2.pyc
+#usr/lib/python2.7/encodings/mac_latin2.pyo
+#usr/lib/python2.7/encodings/mac_roman.py
+usr/lib/python2.7/encodings/mac_roman.pyc
+#usr/lib/python2.7/encodings/mac_roman.pyo
+#usr/lib/python2.7/encodings/mac_romanian.py
+usr/lib/python2.7/encodings/mac_romanian.pyc
+#usr/lib/python2.7/encodings/mac_romanian.pyo
+#usr/lib/python2.7/encodings/mac_turkish.py
+usr/lib/python2.7/encodings/mac_turkish.pyc
+#usr/lib/python2.7/encodings/mac_turkish.pyo
+#usr/lib/python2.7/encodings/mbcs.py
+usr/lib/python2.7/encodings/mbcs.pyc
+#usr/lib/python2.7/encodings/mbcs.pyo
+#usr/lib/python2.7/encodings/palmos.py
+usr/lib/python2.7/encodings/palmos.pyc
+#usr/lib/python2.7/encodings/palmos.pyo
+#usr/lib/python2.7/encodings/ptcp154.py
+usr/lib/python2.7/encodings/ptcp154.pyc
+#usr/lib/python2.7/encodings/ptcp154.pyo
+#usr/lib/python2.7/encodings/punycode.py
+usr/lib/python2.7/encodings/punycode.pyc
+#usr/lib/python2.7/encodings/punycode.pyo
+#usr/lib/python2.7/encodings/quopri_codec.py
+usr/lib/python2.7/encodings/quopri_codec.pyc
+#usr/lib/python2.7/encodings/quopri_codec.pyo
+#usr/lib/python2.7/encodings/raw_unicode_escape.py
+usr/lib/python2.7/encodings/raw_unicode_escape.pyc
+#usr/lib/python2.7/encodings/raw_unicode_escape.pyo
+#usr/lib/python2.7/encodings/rot_13.py
+usr/lib/python2.7/encodings/rot_13.pyc
+#usr/lib/python2.7/encodings/rot_13.pyo
+#usr/lib/python2.7/encodings/shift_jis.py
+usr/lib/python2.7/encodings/shift_jis.pyc
+#usr/lib/python2.7/encodings/shift_jis.pyo
+#usr/lib/python2.7/encodings/shift_jis_2004.py
+usr/lib/python2.7/encodings/shift_jis_2004.pyc
+#usr/lib/python2.7/encodings/shift_jis_2004.pyo
+#usr/lib/python2.7/encodings/shift_jisx0213.py
+usr/lib/python2.7/encodings/shift_jisx0213.pyc
+#usr/lib/python2.7/encodings/shift_jisx0213.pyo
+#usr/lib/python2.7/encodings/string_escape.py
+usr/lib/python2.7/encodings/string_escape.pyc
+#usr/lib/python2.7/encodings/string_escape.pyo
+#usr/lib/python2.7/encodings/tis_620.py
+usr/lib/python2.7/encodings/tis_620.pyc
+#usr/lib/python2.7/encodings/tis_620.pyo
+#usr/lib/python2.7/encodings/undefined.py
+usr/lib/python2.7/encodings/undefined.pyc
+#usr/lib/python2.7/encodings/undefined.pyo
+#usr/lib/python2.7/encodings/unicode_escape.py
+usr/lib/python2.7/encodings/unicode_escape.pyc
+#usr/lib/python2.7/encodings/unicode_escape.pyo
+#usr/lib/python2.7/encodings/unicode_internal.py
+usr/lib/python2.7/encodings/unicode_internal.pyc
+#usr/lib/python2.7/encodings/unicode_internal.pyo
+#usr/lib/python2.7/encodings/utf_16.py
+usr/lib/python2.7/encodings/utf_16.pyc
+#usr/lib/python2.7/encodings/utf_16.pyo
+#usr/lib/python2.7/encodings/utf_16_be.py
+usr/lib/python2.7/encodings/utf_16_be.pyc
+#usr/lib/python2.7/encodings/utf_16_be.pyo
+#usr/lib/python2.7/encodings/utf_16_le.py
+usr/lib/python2.7/encodings/utf_16_le.pyc
+#usr/lib/python2.7/encodings/utf_16_le.pyo
+#usr/lib/python2.7/encodings/utf_32.py
+usr/lib/python2.7/encodings/utf_32.pyc
+#usr/lib/python2.7/encodings/utf_32.pyo
+#usr/lib/python2.7/encodings/utf_32_be.py
+usr/lib/python2.7/encodings/utf_32_be.pyc
+#usr/lib/python2.7/encodings/utf_32_be.pyo
+#usr/lib/python2.7/encodings/utf_32_le.py
+usr/lib/python2.7/encodings/utf_32_le.pyc
+#usr/lib/python2.7/encodings/utf_32_le.pyo
+#usr/lib/python2.7/encodings/utf_7.py
+usr/lib/python2.7/encodings/utf_7.pyc
+#usr/lib/python2.7/encodings/utf_7.pyo
+#usr/lib/python2.7/encodings/utf_8.py
+usr/lib/python2.7/encodings/utf_8.pyc
+#usr/lib/python2.7/encodings/utf_8.pyo
+#usr/lib/python2.7/encodings/utf_8_sig.py
+usr/lib/python2.7/encodings/utf_8_sig.pyc
+#usr/lib/python2.7/encodings/utf_8_sig.pyo
+#usr/lib/python2.7/encodings/uu_codec.py
+usr/lib/python2.7/encodings/uu_codec.pyc
+#usr/lib/python2.7/encodings/uu_codec.pyo
+#usr/lib/python2.7/encodings/zlib_codec.py
+usr/lib/python2.7/encodings/zlib_codec.pyc
+#usr/lib/python2.7/encodings/zlib_codec.pyo
+#usr/lib/python2.7/ensurepip
+#usr/lib/python2.7/ensurepip/__init__.py
+#usr/lib/python2.7/ensurepip/__init__.pyc
+#usr/lib/python2.7/ensurepip/__init__.pyo
+#usr/lib/python2.7/ensurepip/__main__.py
+#usr/lib/python2.7/ensurepip/__main__.pyc
+#usr/lib/python2.7/ensurepip/__main__.pyo
+#usr/lib/python2.7/ensurepip/_bundled
+#usr/lib/python2.7/ensurepip/_bundled/pip-6.1.1-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/setuptools-15.2-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_uninstall.py
+#usr/lib/python2.7/ensurepip/_uninstall.pyc
+#usr/lib/python2.7/ensurepip/_uninstall.pyo
+#usr/lib/python2.7/filecmp.py
+usr/lib/python2.7/filecmp.pyc
+#usr/lib/python2.7/filecmp.pyo
+#usr/lib/python2.7/fileinput.py
+usr/lib/python2.7/fileinput.pyc
+#usr/lib/python2.7/fileinput.pyo
+#usr/lib/python2.7/fnmatch.py
+usr/lib/python2.7/fnmatch.pyc
+#usr/lib/python2.7/fnmatch.pyo
+#usr/lib/python2.7/formatter.py
+usr/lib/python2.7/formatter.pyc
+#usr/lib/python2.7/formatter.pyo
+#usr/lib/python2.7/fpformat.py
+usr/lib/python2.7/fpformat.pyc
+#usr/lib/python2.7/fpformat.pyo
+#usr/lib/python2.7/fractions.py
+usr/lib/python2.7/fractions.pyc
+#usr/lib/python2.7/fractions.pyo
+#usr/lib/python2.7/ftplib.py
+usr/lib/python2.7/ftplib.pyc
+#usr/lib/python2.7/ftplib.pyo
+#usr/lib/python2.7/functools.py
+usr/lib/python2.7/functools.pyc
+#usr/lib/python2.7/functools.pyo
+#usr/lib/python2.7/genericpath.py
+usr/lib/python2.7/genericpath.pyc
+#usr/lib/python2.7/genericpath.pyo
+#usr/lib/python2.7/getopt.py
+usr/lib/python2.7/getopt.pyc
+#usr/lib/python2.7/getopt.pyo
+#usr/lib/python2.7/getpass.py
+usr/lib/python2.7/getpass.pyc
+#usr/lib/python2.7/getpass.pyo
+#usr/lib/python2.7/gettext.py
+usr/lib/python2.7/gettext.pyc
+#usr/lib/python2.7/gettext.pyo
+#usr/lib/python2.7/glob.py
+usr/lib/python2.7/glob.pyc
+#usr/lib/python2.7/glob.pyo
+#usr/lib/python2.7/gzip.py
+usr/lib/python2.7/gzip.pyc
+#usr/lib/python2.7/gzip.pyo
+#usr/lib/python2.7/hashlib.py
+usr/lib/python2.7/hashlib.pyc
+#usr/lib/python2.7/hashlib.pyo
+#usr/lib/python2.7/heapq.py
+usr/lib/python2.7/heapq.pyc
+#usr/lib/python2.7/heapq.pyo
+#usr/lib/python2.7/hmac.py
+usr/lib/python2.7/hmac.pyc
+#usr/lib/python2.7/hmac.pyo
+#usr/lib/python2.7/hotshot
+#usr/lib/python2.7/hotshot/__init__.py
+usr/lib/python2.7/hotshot/__init__.pyc
+#usr/lib/python2.7/hotshot/__init__.pyo
+#usr/lib/python2.7/hotshot/log.py
+usr/lib/python2.7/hotshot/log.pyc
+#usr/lib/python2.7/hotshot/log.pyo
+#usr/lib/python2.7/hotshot/stats.py
+usr/lib/python2.7/hotshot/stats.pyc
+#usr/lib/python2.7/hotshot/stats.pyo
+#usr/lib/python2.7/hotshot/stones.py
+usr/lib/python2.7/hotshot/stones.pyc
+#usr/lib/python2.7/hotshot/stones.pyo
+#usr/lib/python2.7/htmlentitydefs.py
+usr/lib/python2.7/htmlentitydefs.pyc
+#usr/lib/python2.7/htmlentitydefs.pyo
+#usr/lib/python2.7/htmllib.py
+usr/lib/python2.7/htmllib.pyc
+#usr/lib/python2.7/htmllib.pyo
+#usr/lib/python2.7/httplib.py
+usr/lib/python2.7/httplib.pyc
+#usr/lib/python2.7/httplib.pyo
+#usr/lib/python2.7/idlelib
+#usr/lib/python2.7/idlelib/AutoComplete.py
+#usr/lib/python2.7/idlelib/AutoComplete.pyc
+#usr/lib/python2.7/idlelib/AutoComplete.pyo
+#usr/lib/python2.7/idlelib/AutoCompleteWindow.py
+#usr/lib/python2.7/idlelib/AutoCompleteWindow.pyc
+#usr/lib/python2.7/idlelib/AutoCompleteWindow.pyo
+#usr/lib/python2.7/idlelib/AutoExpand.py
+#usr/lib/python2.7/idlelib/AutoExpand.pyc
+#usr/lib/python2.7/idlelib/AutoExpand.pyo
+#usr/lib/python2.7/idlelib/Bindings.py
+#usr/lib/python2.7/idlelib/Bindings.pyc
+#usr/lib/python2.7/idlelib/Bindings.pyo
+#usr/lib/python2.7/idlelib/CREDITS.txt
+#usr/lib/python2.7/idlelib/CallTipWindow.py
+#usr/lib/python2.7/idlelib/CallTipWindow.pyc
+#usr/lib/python2.7/idlelib/CallTipWindow.pyo
+#usr/lib/python2.7/idlelib/CallTips.py
+#usr/lib/python2.7/idlelib/CallTips.pyc
+#usr/lib/python2.7/idlelib/CallTips.pyo
+#usr/lib/python2.7/idlelib/ChangeLog
+#usr/lib/python2.7/idlelib/ClassBrowser.py
+#usr/lib/python2.7/idlelib/ClassBrowser.pyc
+#usr/lib/python2.7/idlelib/ClassBrowser.pyo
+#usr/lib/python2.7/idlelib/CodeContext.py
+#usr/lib/python2.7/idlelib/CodeContext.pyc
+#usr/lib/python2.7/idlelib/CodeContext.pyo
+#usr/lib/python2.7/idlelib/ColorDelegator.py
+#usr/lib/python2.7/idlelib/ColorDelegator.pyc
+#usr/lib/python2.7/idlelib/ColorDelegator.pyo
+#usr/lib/python2.7/idlelib/Debugger.py
+#usr/lib/python2.7/idlelib/Debugger.pyc
+#usr/lib/python2.7/idlelib/Debugger.pyo
+#usr/lib/python2.7/idlelib/Delegator.py
+#usr/lib/python2.7/idlelib/Delegator.pyc
+#usr/lib/python2.7/idlelib/Delegator.pyo
+#usr/lib/python2.7/idlelib/EditorWindow.py
+#usr/lib/python2.7/idlelib/EditorWindow.pyc
+#usr/lib/python2.7/idlelib/EditorWindow.pyo
+#usr/lib/python2.7/idlelib/FileList.py
+#usr/lib/python2.7/idlelib/FileList.pyc
+#usr/lib/python2.7/idlelib/FileList.pyo
+#usr/lib/python2.7/idlelib/FormatParagraph.py
+#usr/lib/python2.7/idlelib/FormatParagraph.pyc
+#usr/lib/python2.7/idlelib/FormatParagraph.pyo
+#usr/lib/python2.7/idlelib/GrepDialog.py
+#usr/lib/python2.7/idlelib/GrepDialog.pyc
+#usr/lib/python2.7/idlelib/GrepDialog.pyo
+#usr/lib/python2.7/idlelib/HISTORY.txt
+#usr/lib/python2.7/idlelib/HyperParser.py
+#usr/lib/python2.7/idlelib/HyperParser.pyc
+#usr/lib/python2.7/idlelib/HyperParser.pyo
+#usr/lib/python2.7/idlelib/IOBinding.py
+#usr/lib/python2.7/idlelib/IOBinding.pyc
+#usr/lib/python2.7/idlelib/IOBinding.pyo
+#usr/lib/python2.7/idlelib/Icons
+#usr/lib/python2.7/idlelib/Icons/folder.gif
+#usr/lib/python2.7/idlelib/Icons/idle.icns
+#usr/lib/python2.7/idlelib/Icons/idle.ico
+#usr/lib/python2.7/idlelib/Icons/idle_16.gif
+#usr/lib/python2.7/idlelib/Icons/idle_16.png
+#usr/lib/python2.7/idlelib/Icons/idle_32.gif
+#usr/lib/python2.7/idlelib/Icons/idle_32.png
+#usr/lib/python2.7/idlelib/Icons/idle_48.gif
+#usr/lib/python2.7/idlelib/Icons/idle_48.png
+#usr/lib/python2.7/idlelib/Icons/minusnode.gif
+#usr/lib/python2.7/idlelib/Icons/openfolder.gif
+#usr/lib/python2.7/idlelib/Icons/plusnode.gif
+#usr/lib/python2.7/idlelib/Icons/python.gif
+#usr/lib/python2.7/idlelib/Icons/tk.gif
+#usr/lib/python2.7/idlelib/IdleHistory.py
+#usr/lib/python2.7/idlelib/IdleHistory.pyc
+#usr/lib/python2.7/idlelib/IdleHistory.pyo
+#usr/lib/python2.7/idlelib/MultiCall.py
+#usr/lib/python2.7/idlelib/MultiCall.pyc
+#usr/lib/python2.7/idlelib/MultiCall.pyo
+#usr/lib/python2.7/idlelib/MultiStatusBar.py
+#usr/lib/python2.7/idlelib/MultiStatusBar.pyc
+#usr/lib/python2.7/idlelib/MultiStatusBar.pyo
+#usr/lib/python2.7/idlelib/NEWS.txt
+#usr/lib/python2.7/idlelib/ObjectBrowser.py
+#usr/lib/python2.7/idlelib/ObjectBrowser.pyc
+#usr/lib/python2.7/idlelib/ObjectBrowser.pyo
+#usr/lib/python2.7/idlelib/OutputWindow.py
+#usr/lib/python2.7/idlelib/OutputWindow.pyc
+#usr/lib/python2.7/idlelib/OutputWindow.pyo
+#usr/lib/python2.7/idlelib/ParenMatch.py
+#usr/lib/python2.7/idlelib/ParenMatch.pyc
+#usr/lib/python2.7/idlelib/ParenMatch.pyo
+#usr/lib/python2.7/idlelib/PathBrowser.py
+#usr/lib/python2.7/idlelib/PathBrowser.pyc
+#usr/lib/python2.7/idlelib/PathBrowser.pyo
+#usr/lib/python2.7/idlelib/Percolator.py
+#usr/lib/python2.7/idlelib/Percolator.pyc
+#usr/lib/python2.7/idlelib/Percolator.pyo
+#usr/lib/python2.7/idlelib/PyParse.py
+#usr/lib/python2.7/idlelib/PyParse.pyc
+#usr/lib/python2.7/idlelib/PyParse.pyo
+#usr/lib/python2.7/idlelib/PyShell.py
+#usr/lib/python2.7/idlelib/PyShell.pyc
+#usr/lib/python2.7/idlelib/PyShell.pyo
+#usr/lib/python2.7/idlelib/README.txt
+#usr/lib/python2.7/idlelib/RemoteDebugger.py
+#usr/lib/python2.7/idlelib/RemoteDebugger.pyc
+#usr/lib/python2.7/idlelib/RemoteDebugger.pyo
+#usr/lib/python2.7/idlelib/RemoteObjectBrowser.py
+#usr/lib/python2.7/idlelib/RemoteObjectBrowser.pyc
+#usr/lib/python2.7/idlelib/RemoteObjectBrowser.pyo
+#usr/lib/python2.7/idlelib/ReplaceDialog.py
+#usr/lib/python2.7/idlelib/ReplaceDialog.pyc
+#usr/lib/python2.7/idlelib/ReplaceDialog.pyo
+#usr/lib/python2.7/idlelib/RstripExtension.py
+#usr/lib/python2.7/idlelib/RstripExtension.pyc
+#usr/lib/python2.7/idlelib/RstripExtension.pyo
+#usr/lib/python2.7/idlelib/ScriptBinding.py
+#usr/lib/python2.7/idlelib/ScriptBinding.pyc
+#usr/lib/python2.7/idlelib/ScriptBinding.pyo
+#usr/lib/python2.7/idlelib/ScrolledList.py
+#usr/lib/python2.7/idlelib/ScrolledList.pyc
+#usr/lib/python2.7/idlelib/ScrolledList.pyo
+#usr/lib/python2.7/idlelib/SearchDialog.py
+#usr/lib/python2.7/idlelib/SearchDialog.pyc
+#usr/lib/python2.7/idlelib/SearchDialog.pyo
+#usr/lib/python2.7/idlelib/SearchDialogBase.py
+#usr/lib/python2.7/idlelib/SearchDialogBase.pyc
+#usr/lib/python2.7/idlelib/SearchDialogBase.pyo
+#usr/lib/python2.7/idlelib/SearchEngine.py
+#usr/lib/python2.7/idlelib/SearchEngine.pyc
+#usr/lib/python2.7/idlelib/SearchEngine.pyo
+#usr/lib/python2.7/idlelib/StackViewer.py
+#usr/lib/python2.7/idlelib/StackViewer.pyc
+#usr/lib/python2.7/idlelib/StackViewer.pyo
+#usr/lib/python2.7/idlelib/TODO.txt
+#usr/lib/python2.7/idlelib/ToolTip.py
+#usr/lib/python2.7/idlelib/ToolTip.pyc
+#usr/lib/python2.7/idlelib/ToolTip.pyo
+#usr/lib/python2.7/idlelib/TreeWidget.py
+#usr/lib/python2.7/idlelib/TreeWidget.pyc
+#usr/lib/python2.7/idlelib/TreeWidget.pyo
+#usr/lib/python2.7/idlelib/UndoDelegator.py
+#usr/lib/python2.7/idlelib/UndoDelegator.pyc
+#usr/lib/python2.7/idlelib/UndoDelegator.pyo
+#usr/lib/python2.7/idlelib/WidgetRedirector.py
+#usr/lib/python2.7/idlelib/WidgetRedirector.pyc
+#usr/lib/python2.7/idlelib/WidgetRedirector.pyo
+#usr/lib/python2.7/idlelib/WindowList.py
+#usr/lib/python2.7/idlelib/WindowList.pyc
+#usr/lib/python2.7/idlelib/WindowList.pyo
+#usr/lib/python2.7/idlelib/ZoomHeight.py
+#usr/lib/python2.7/idlelib/ZoomHeight.pyc
+#usr/lib/python2.7/idlelib/ZoomHeight.pyo
+#usr/lib/python2.7/idlelib/__init__.py
+#usr/lib/python2.7/idlelib/__init__.pyc
+#usr/lib/python2.7/idlelib/__init__.pyo
+#usr/lib/python2.7/idlelib/aboutDialog.py
+#usr/lib/python2.7/idlelib/aboutDialog.pyc
+#usr/lib/python2.7/idlelib/aboutDialog.pyo
+#usr/lib/python2.7/idlelib/config-extensions.def
+#usr/lib/python2.7/idlelib/config-highlight.def
+#usr/lib/python2.7/idlelib/config-keys.def
+#usr/lib/python2.7/idlelib/config-main.def
+#usr/lib/python2.7/idlelib/configDialog.py
+#usr/lib/python2.7/idlelib/configDialog.pyc
+#usr/lib/python2.7/idlelib/configDialog.pyo
+#usr/lib/python2.7/idlelib/configHandler.py
+#usr/lib/python2.7/idlelib/configHandler.pyc
+#usr/lib/python2.7/idlelib/configHandler.pyo
+#usr/lib/python2.7/idlelib/configHelpSourceEdit.py
+#usr/lib/python2.7/idlelib/configHelpSourceEdit.pyc
+#usr/lib/python2.7/idlelib/configHelpSourceEdit.pyo
+#usr/lib/python2.7/idlelib/configSectionNameDialog.py
+#usr/lib/python2.7/idlelib/configSectionNameDialog.pyc
+#usr/lib/python2.7/idlelib/configSectionNameDialog.pyo
+#usr/lib/python2.7/idlelib/dynOptionMenuWidget.py
+#usr/lib/python2.7/idlelib/dynOptionMenuWidget.pyc
+#usr/lib/python2.7/idlelib/dynOptionMenuWidget.pyo
+#usr/lib/python2.7/idlelib/extend.txt
+#usr/lib/python2.7/idlelib/help.txt
+#usr/lib/python2.7/idlelib/idle.bat
+#usr/lib/python2.7/idlelib/idle.py
+#usr/lib/python2.7/idlelib/idle.pyc
+#usr/lib/python2.7/idlelib/idle.pyo
+#usr/lib/python2.7/idlelib/idle.pyw
+#usr/lib/python2.7/idlelib/idle_test
+#usr/lib/python2.7/idlelib/idle_test/README.txt
+#usr/lib/python2.7/idlelib/idle_test/__init__.py
+#usr/lib/python2.7/idlelib/idle_test/__init__.pyc
+#usr/lib/python2.7/idlelib/idle_test/__init__.pyo
+#usr/lib/python2.7/idlelib/idle_test/htest.py
+#usr/lib/python2.7/idlelib/idle_test/htest.pyc
+#usr/lib/python2.7/idlelib/idle_test/htest.pyo
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.py
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.pyc
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.pyo
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.py
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.pyc
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.py
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.py
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.py
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.py
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.py
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.py
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.py
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_grep.py
+#usr/lib/python2.7/idlelib/idle_test/test_grep.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_grep.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.py
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.py
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_io.py
+#usr/lib/python2.7/idlelib/idle_test/test_io.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_io.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.py
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.py
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.py
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.py
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.py
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_text.py
+#usr/lib/python2.7/idlelib/idle_test/test_text.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_text.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_textview.py
+#usr/lib/python2.7/idlelib/idle_test/test_textview.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_textview.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_warning.py
+#usr/lib/python2.7/idlelib/idle_test/test_warning.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_warning.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.py
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.pyo
+#usr/lib/python2.7/idlelib/idlever.py
+#usr/lib/python2.7/idlelib/idlever.pyc
+#usr/lib/python2.7/idlelib/idlever.pyo
+#usr/lib/python2.7/idlelib/keybindingDialog.py
+#usr/lib/python2.7/idlelib/keybindingDialog.pyc
+#usr/lib/python2.7/idlelib/keybindingDialog.pyo
+#usr/lib/python2.7/idlelib/macosxSupport.py
+#usr/lib/python2.7/idlelib/macosxSupport.pyc
+#usr/lib/python2.7/idlelib/macosxSupport.pyo
+#usr/lib/python2.7/idlelib/rpc.py
+#usr/lib/python2.7/idlelib/rpc.pyc
+#usr/lib/python2.7/idlelib/rpc.pyo
+#usr/lib/python2.7/idlelib/run.py
+#usr/lib/python2.7/idlelib/run.pyc
+#usr/lib/python2.7/idlelib/run.pyo
+#usr/lib/python2.7/idlelib/tabbedpages.py
+#usr/lib/python2.7/idlelib/tabbedpages.pyc
+#usr/lib/python2.7/idlelib/tabbedpages.pyo
+#usr/lib/python2.7/idlelib/textView.py
+#usr/lib/python2.7/idlelib/textView.pyc
+#usr/lib/python2.7/idlelib/textView.pyo
+#usr/lib/python2.7/ihooks.py
+usr/lib/python2.7/ihooks.pyc
+#usr/lib/python2.7/ihooks.pyo
+#usr/lib/python2.7/imaplib.py
+usr/lib/python2.7/imaplib.pyc
+#usr/lib/python2.7/imaplib.pyo
+#usr/lib/python2.7/imghdr.py
+usr/lib/python2.7/imghdr.pyc
+#usr/lib/python2.7/imghdr.pyo
+#usr/lib/python2.7/importlib
+#usr/lib/python2.7/importlib/__init__.py
+usr/lib/python2.7/importlib/__init__.pyc
+#usr/lib/python2.7/importlib/__init__.pyo
+#usr/lib/python2.7/imputil.py
+usr/lib/python2.7/imputil.pyc
+#usr/lib/python2.7/imputil.pyo
+#usr/lib/python2.7/inspect.py
+usr/lib/python2.7/inspect.pyc
+#usr/lib/python2.7/inspect.pyo
+#usr/lib/python2.7/io.py
+usr/lib/python2.7/io.pyc
+#usr/lib/python2.7/io.pyo
+#usr/lib/python2.7/json
+#usr/lib/python2.7/json/__init__.py
+usr/lib/python2.7/json/__init__.pyc
+#usr/lib/python2.7/json/__init__.pyo
+#usr/lib/python2.7/json/decoder.py
+usr/lib/python2.7/json/decoder.pyc
+#usr/lib/python2.7/json/decoder.pyo
+#usr/lib/python2.7/json/encoder.py
+usr/lib/python2.7/json/encoder.pyc
+#usr/lib/python2.7/json/encoder.pyo
+#usr/lib/python2.7/json/scanner.py
+usr/lib/python2.7/json/scanner.pyc
+#usr/lib/python2.7/json/scanner.pyo
+#usr/lib/python2.7/json/tests
+#usr/lib/python2.7/json/tests/__init__.py
+#usr/lib/python2.7/json/tests/__init__.pyc
+#usr/lib/python2.7/json/tests/__init__.pyo
+#usr/lib/python2.7/json/tests/test_check_circular.py
+#usr/lib/python2.7/json/tests/test_check_circular.pyc
+#usr/lib/python2.7/json/tests/test_check_circular.pyo
+#usr/lib/python2.7/json/tests/test_decode.py
+#usr/lib/python2.7/json/tests/test_decode.pyc
+#usr/lib/python2.7/json/tests/test_decode.pyo
+#usr/lib/python2.7/json/tests/test_default.py
+#usr/lib/python2.7/json/tests/test_default.pyc
+#usr/lib/python2.7/json/tests/test_default.pyo
+#usr/lib/python2.7/json/tests/test_dump.py
+#usr/lib/python2.7/json/tests/test_dump.pyc
+#usr/lib/python2.7/json/tests/test_dump.pyo
+#usr/lib/python2.7/json/tests/test_encode_basestring_ascii.py
+#usr/lib/python2.7/json/tests/test_encode_basestring_ascii.pyc
+#usr/lib/python2.7/json/tests/test_encode_basestring_ascii.pyo
+#usr/lib/python2.7/json/tests/test_fail.py
+#usr/lib/python2.7/json/tests/test_fail.pyc
+#usr/lib/python2.7/json/tests/test_fail.pyo
+#usr/lib/python2.7/json/tests/test_float.py
+#usr/lib/python2.7/json/tests/test_float.pyc
+#usr/lib/python2.7/json/tests/test_float.pyo
+#usr/lib/python2.7/json/tests/test_indent.py
+#usr/lib/python2.7/json/tests/test_indent.pyc
+#usr/lib/python2.7/json/tests/test_indent.pyo
+#usr/lib/python2.7/json/tests/test_pass1.py
+#usr/lib/python2.7/json/tests/test_pass1.pyc
+#usr/lib/python2.7/json/tests/test_pass1.pyo
+#usr/lib/python2.7/json/tests/test_pass2.py
+#usr/lib/python2.7/json/tests/test_pass2.pyc
+#usr/lib/python2.7/json/tests/test_pass2.pyo
+#usr/lib/python2.7/json/tests/test_pass3.py
+#usr/lib/python2.7/json/tests/test_pass3.pyc
+#usr/lib/python2.7/json/tests/test_pass3.pyo
+#usr/lib/python2.7/json/tests/test_recursion.py
+#usr/lib/python2.7/json/tests/test_recursion.pyc
+#usr/lib/python2.7/json/tests/test_recursion.pyo
+#usr/lib/python2.7/json/tests/test_scanstring.py
+#usr/lib/python2.7/json/tests/test_scanstring.pyc
+#usr/lib/python2.7/json/tests/test_scanstring.pyo
+#usr/lib/python2.7/json/tests/test_separators.py
+#usr/lib/python2.7/json/tests/test_separators.pyc
+#usr/lib/python2.7/json/tests/test_separators.pyo
+#usr/lib/python2.7/json/tests/test_speedups.py
+#usr/lib/python2.7/json/tests/test_speedups.pyc
+#usr/lib/python2.7/json/tests/test_speedups.pyo
+#usr/lib/python2.7/json/tests/test_tool.py
+#usr/lib/python2.7/json/tests/test_tool.pyc
+#usr/lib/python2.7/json/tests/test_tool.pyo
+#usr/lib/python2.7/json/tests/test_unicode.py
+#usr/lib/python2.7/json/tests/test_unicode.pyc
+#usr/lib/python2.7/json/tests/test_unicode.pyo
+#usr/lib/python2.7/json/tool.py
+usr/lib/python2.7/json/tool.pyc
+#usr/lib/python2.7/json/tool.pyo
+#usr/lib/python2.7/keyword.py
+usr/lib/python2.7/keyword.pyc
+#usr/lib/python2.7/keyword.pyo
+#usr/lib/python2.7/lib-dynload
+#usr/lib/python2.7/lib-dynload/Python-2.7.10-py2.7.egg-info
+usr/lib/python2.7/lib-dynload/_bisect.so
+usr/lib/python2.7/lib-dynload/_bsddb.so
+usr/lib/python2.7/lib-dynload/_codecs_cn.so
+usr/lib/python2.7/lib-dynload/_codecs_hk.so
+usr/lib/python2.7/lib-dynload/_codecs_iso2022.so
+usr/lib/python2.7/lib-dynload/_codecs_jp.so
+usr/lib/python2.7/lib-dynload/_codecs_kr.so
+usr/lib/python2.7/lib-dynload/_codecs_tw.so
+usr/lib/python2.7/lib-dynload/_collections.so
+usr/lib/python2.7/lib-dynload/_csv.so
+usr/lib/python2.7/lib-dynload/_ctypes.so
+#usr/lib/python2.7/lib-dynload/_ctypes_test.so
+usr/lib/python2.7/lib-dynload/_curses.so
+usr/lib/python2.7/lib-dynload/_curses_panel.so
+usr/lib/python2.7/lib-dynload/_elementtree.so
+usr/lib/python2.7/lib-dynload/_functools.so
+usr/lib/python2.7/lib-dynload/_hashlib.so
+usr/lib/python2.7/lib-dynload/_heapq.so
+usr/lib/python2.7/lib-dynload/_hotshot.so
+usr/lib/python2.7/lib-dynload/_io.so
+usr/lib/python2.7/lib-dynload/_json.so
+usr/lib/python2.7/lib-dynload/_locale.so
+usr/lib/python2.7/lib-dynload/_lsprof.so
+usr/lib/python2.7/lib-dynload/_multibytecodec.so
+usr/lib/python2.7/lib-dynload/_multiprocessing.so
+usr/lib/python2.7/lib-dynload/_random.so
+usr/lib/python2.7/lib-dynload/_socket.so
+usr/lib/python2.7/lib-dynload/_sqlite3.so
+usr/lib/python2.7/lib-dynload/_ssl.so
+usr/lib/python2.7/lib-dynload/_struct.so
+usr/lib/python2.7/lib-dynload/_testcapi.so
+usr/lib/python2.7/lib-dynload/array.so
+usr/lib/python2.7/lib-dynload/audioop.so
+usr/lib/python2.7/lib-dynload/binascii.so
+usr/lib/python2.7/lib-dynload/bz2.so
+usr/lib/python2.7/lib-dynload/cPickle.so
+usr/lib/python2.7/lib-dynload/cStringIO.so
+usr/lib/python2.7/lib-dynload/cmath.so
+usr/lib/python2.7/lib-dynload/crypt.so
+usr/lib/python2.7/lib-dynload/datetime.so
+#usr/lib/python2.7/lib-dynload/dbm_failed.so
+usr/lib/python2.7/lib-dynload/dl.so
+usr/lib/python2.7/lib-dynload/fcntl.so
+usr/lib/python2.7/lib-dynload/future_builtins.so
+usr/lib/python2.7/lib-dynload/gdbm.so
+usr/lib/python2.7/lib-dynload/grp.so
+usr/lib/python2.7/lib-dynload/imageop.so
+usr/lib/python2.7/lib-dynload/itertools.so
+#usr/lib/python2.7/lib-dynload/linuxaudiodev.so
+usr/lib/python2.7/lib-dynload/math.so
+usr/lib/python2.7/lib-dynload/mmap.so
+usr/lib/python2.7/lib-dynload/nis.so
+usr/lib/python2.7/lib-dynload/operator.so
+#usr/lib/python2.7/lib-dynload/ossaudiodev.so
+usr/lib/python2.7/lib-dynload/parser.so
+usr/lib/python2.7/lib-dynload/pyexpat.so
+usr/lib/python2.7/lib-dynload/readline.so
+usr/lib/python2.7/lib-dynload/resource.so
+usr/lib/python2.7/lib-dynload/select.so
+usr/lib/python2.7/lib-dynload/spwd.so
+usr/lib/python2.7/lib-dynload/strop.so
+usr/lib/python2.7/lib-dynload/syslog.so
+usr/lib/python2.7/lib-dynload/termios.so
+usr/lib/python2.7/lib-dynload/time.so
+usr/lib/python2.7/lib-dynload/unicodedata.so
+usr/lib/python2.7/lib-dynload/zlib.so
+#usr/lib/python2.7/lib-tk
+#usr/lib/python2.7/lib-tk/Canvas.py
+#usr/lib/python2.7/lib-tk/Canvas.pyc
+#usr/lib/python2.7/lib-tk/Canvas.pyo
+#usr/lib/python2.7/lib-tk/Dialog.py
+#usr/lib/python2.7/lib-tk/Dialog.pyc
+#usr/lib/python2.7/lib-tk/Dialog.pyo
+#usr/lib/python2.7/lib-tk/FileDialog.py
+#usr/lib/python2.7/lib-tk/FileDialog.pyc
+#usr/lib/python2.7/lib-tk/FileDialog.pyo
+#usr/lib/python2.7/lib-tk/FixTk.py
+#usr/lib/python2.7/lib-tk/FixTk.pyc
+#usr/lib/python2.7/lib-tk/FixTk.pyo
+#usr/lib/python2.7/lib-tk/ScrolledText.py
+#usr/lib/python2.7/lib-tk/ScrolledText.pyc
+#usr/lib/python2.7/lib-tk/ScrolledText.pyo
+#usr/lib/python2.7/lib-tk/SimpleDialog.py
+#usr/lib/python2.7/lib-tk/SimpleDialog.pyc
+#usr/lib/python2.7/lib-tk/SimpleDialog.pyo
+#usr/lib/python2.7/lib-tk/Tix.py
+#usr/lib/python2.7/lib-tk/Tix.pyc
+#usr/lib/python2.7/lib-tk/Tix.pyo
+#usr/lib/python2.7/lib-tk/Tkconstants.py
+#usr/lib/python2.7/lib-tk/Tkconstants.pyc
+#usr/lib/python2.7/lib-tk/Tkconstants.pyo
+#usr/lib/python2.7/lib-tk/Tkdnd.py
+#usr/lib/python2.7/lib-tk/Tkdnd.pyc
+#usr/lib/python2.7/lib-tk/Tkdnd.pyo
+#usr/lib/python2.7/lib-tk/Tkinter.py
+#usr/lib/python2.7/lib-tk/Tkinter.pyc
+#usr/lib/python2.7/lib-tk/Tkinter.pyo
+#usr/lib/python2.7/lib-tk/test
+#usr/lib/python2.7/lib-tk/test/README
+#usr/lib/python2.7/lib-tk/test/runtktests.py
+#usr/lib/python2.7/lib-tk/test/runtktests.pyc
+#usr/lib/python2.7/lib-tk/test/runtktests.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter
+#usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk
+#usr/lib/python2.7/lib-tk/test/test_ttk/__init__.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/__init__.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/__init__.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/support.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/support.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/support.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_extensions.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_extensions.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_extensions.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_functions.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_functions.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_functions.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_style.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_style.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_style.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.pyo
+#usr/lib/python2.7/lib-tk/test/widget_tests.py
+#usr/lib/python2.7/lib-tk/test/widget_tests.pyc
+#usr/lib/python2.7/lib-tk/test/widget_tests.pyo
+#usr/lib/python2.7/lib-tk/tkColorChooser.py
+#usr/lib/python2.7/lib-tk/tkColorChooser.pyc
+#usr/lib/python2.7/lib-tk/tkColorChooser.pyo
+#usr/lib/python2.7/lib-tk/tkCommonDialog.py
+#usr/lib/python2.7/lib-tk/tkCommonDialog.pyc
+#usr/lib/python2.7/lib-tk/tkCommonDialog.pyo
+#usr/lib/python2.7/lib-tk/tkFileDialog.py
+#usr/lib/python2.7/lib-tk/tkFileDialog.pyc
+#usr/lib/python2.7/lib-tk/tkFileDialog.pyo
+#usr/lib/python2.7/lib-tk/tkFont.py
+#usr/lib/python2.7/lib-tk/tkFont.pyc
+#usr/lib/python2.7/lib-tk/tkFont.pyo
+#usr/lib/python2.7/lib-tk/tkMessageBox.py
+#usr/lib/python2.7/lib-tk/tkMessageBox.pyc
+#usr/lib/python2.7/lib-tk/tkMessageBox.pyo
+#usr/lib/python2.7/lib-tk/tkSimpleDialog.py
+#usr/lib/python2.7/lib-tk/tkSimpleDialog.pyc
+#usr/lib/python2.7/lib-tk/tkSimpleDialog.pyo
+#usr/lib/python2.7/lib-tk/ttk.py
+#usr/lib/python2.7/lib-tk/ttk.pyc
+#usr/lib/python2.7/lib-tk/ttk.pyo
+#usr/lib/python2.7/lib-tk/turtle.py
+#usr/lib/python2.7/lib-tk/turtle.pyc
+#usr/lib/python2.7/lib-tk/turtle.pyo
+#usr/lib/python2.7/lib2to3
+#usr/lib/python2.7/lib2to3/Grammar.txt
+#usr/lib/python2.7/lib2to3/Grammar2.7.10.final.0.pickle
+#usr/lib/python2.7/lib2to3/PatternGrammar.txt
+#usr/lib/python2.7/lib2to3/PatternGrammar2.7.10.final.0.pickle
+#usr/lib/python2.7/lib2to3/__init__.py
+#usr/lib/python2.7/lib2to3/__init__.pyc
+#usr/lib/python2.7/lib2to3/__init__.pyo
+#usr/lib/python2.7/lib2to3/__main__.py
+#usr/lib/python2.7/lib2to3/__main__.pyc
+#usr/lib/python2.7/lib2to3/__main__.pyo
+#usr/lib/python2.7/lib2to3/btm_matcher.py
+#usr/lib/python2.7/lib2to3/btm_matcher.pyc
+#usr/lib/python2.7/lib2to3/btm_matcher.pyo
+#usr/lib/python2.7/lib2to3/btm_utils.py
+#usr/lib/python2.7/lib2to3/btm_utils.pyc
+#usr/lib/python2.7/lib2to3/btm_utils.pyo
+#usr/lib/python2.7/lib2to3/fixer_base.py
+#usr/lib/python2.7/lib2to3/fixer_base.pyc
+#usr/lib/python2.7/lib2to3/fixer_base.pyo
+#usr/lib/python2.7/lib2to3/fixer_util.py
+#usr/lib/python2.7/lib2to3/fixer_util.pyc
+#usr/lib/python2.7/lib2to3/fixer_util.pyo
+#usr/lib/python2.7/lib2to3/fixes
+#usr/lib/python2.7/lib2to3/fixes/__init__.py
+#usr/lib/python2.7/lib2to3/fixes/__init__.pyc
+#usr/lib/python2.7/lib2to3/fixes/__init__.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_apply.py
+#usr/lib/python2.7/lib2to3/fixes/fix_apply.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_apply.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.py
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_basestring.py
+#usr/lib/python2.7/lib2to3/fixes/fix_basestring.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_basestring.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_buffer.py
+#usr/lib/python2.7/lib2to3/fixes/fix_buffer.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_buffer.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_callable.py
+#usr/lib/python2.7/lib2to3/fixes/fix_callable.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_callable.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_dict.py
+#usr/lib/python2.7/lib2to3/fixes/fix_dict.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_dict.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_except.py
+#usr/lib/python2.7/lib2to3/fixes/fix_except.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_except.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_exec.py
+#usr/lib/python2.7/lib2to3/fixes/fix_exec.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_exec.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_execfile.py
+#usr/lib/python2.7/lib2to3/fixes/fix_execfile.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_execfile.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_exitfunc.py
+#usr/lib/python2.7/lib2to3/fixes/fix_exitfunc.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_exitfunc.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_filter.py
+#usr/lib/python2.7/lib2to3/fixes/fix_filter.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_filter.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_funcattrs.py
+#usr/lib/python2.7/lib2to3/fixes/fix_funcattrs.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_funcattrs.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_future.py
+#usr/lib/python2.7/lib2to3/fixes/fix_future.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_future.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_getcwdu.py
+#usr/lib/python2.7/lib2to3/fixes/fix_getcwdu.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_getcwdu.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_has_key.py
+#usr/lib/python2.7/lib2to3/fixes/fix_has_key.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_has_key.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_idioms.py
+#usr/lib/python2.7/lib2to3/fixes/fix_idioms.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_idioms.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_import.py
+#usr/lib/python2.7/lib2to3/fixes/fix_import.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_import.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_imports.py
+#usr/lib/python2.7/lib2to3/fixes/fix_imports.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_imports.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_imports2.py
+#usr/lib/python2.7/lib2to3/fixes/fix_imports2.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_imports2.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_input.py
+#usr/lib/python2.7/lib2to3/fixes/fix_input.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_input.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_intern.py
+#usr/lib/python2.7/lib2to3/fixes/fix_intern.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_intern.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_isinstance.py
+#usr/lib/python2.7/lib2to3/fixes/fix_isinstance.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_isinstance.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools.py
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools_imports.py
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools_imports.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools_imports.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_long.py
+#usr/lib/python2.7/lib2to3/fixes/fix_long.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_long.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_map.py
+#usr/lib/python2.7/lib2to3/fixes/fix_map.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_map.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_metaclass.py
+#usr/lib/python2.7/lib2to3/fixes/fix_metaclass.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_metaclass.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_methodattrs.py
+#usr/lib/python2.7/lib2to3/fixes/fix_methodattrs.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_methodattrs.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_ne.py
+#usr/lib/python2.7/lib2to3/fixes/fix_ne.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_ne.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_next.py
+#usr/lib/python2.7/lib2to3/fixes/fix_next.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_next.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_nonzero.py
+#usr/lib/python2.7/lib2to3/fixes/fix_nonzero.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_nonzero.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_numliterals.py
+#usr/lib/python2.7/lib2to3/fixes/fix_numliterals.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_numliterals.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_operator.py
+#usr/lib/python2.7/lib2to3/fixes/fix_operator.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_operator.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_paren.py
+#usr/lib/python2.7/lib2to3/fixes/fix_paren.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_paren.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_print.py
+#usr/lib/python2.7/lib2to3/fixes/fix_print.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_print.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_raise.py
+#usr/lib/python2.7/lib2to3/fixes/fix_raise.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_raise.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_raw_input.py
+#usr/lib/python2.7/lib2to3/fixes/fix_raw_input.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_raw_input.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_reduce.py
+#usr/lib/python2.7/lib2to3/fixes/fix_reduce.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_reduce.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_renames.py
+#usr/lib/python2.7/lib2to3/fixes/fix_renames.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_renames.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_repr.py
+#usr/lib/python2.7/lib2to3/fixes/fix_repr.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_repr.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_set_literal.py
+#usr/lib/python2.7/lib2to3/fixes/fix_set_literal.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_set_literal.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_standarderror.py
+#usr/lib/python2.7/lib2to3/fixes/fix_standarderror.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_standarderror.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_sys_exc.py
+#usr/lib/python2.7/lib2to3/fixes/fix_sys_exc.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_sys_exc.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_throw.py
+#usr/lib/python2.7/lib2to3/fixes/fix_throw.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_throw.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_tuple_params.py
+#usr/lib/python2.7/lib2to3/fixes/fix_tuple_params.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_tuple_params.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_types.py
+#usr/lib/python2.7/lib2to3/fixes/fix_types.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_types.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_unicode.py
+#usr/lib/python2.7/lib2to3/fixes/fix_unicode.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_unicode.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_urllib.py
+#usr/lib/python2.7/lib2to3/fixes/fix_urllib.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_urllib.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_ws_comma.py
+#usr/lib/python2.7/lib2to3/fixes/fix_ws_comma.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_ws_comma.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_xrange.py
+#usr/lib/python2.7/lib2to3/fixes/fix_xrange.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_xrange.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_xreadlines.py
+#usr/lib/python2.7/lib2to3/fixes/fix_xreadlines.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_xreadlines.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_zip.py
+#usr/lib/python2.7/lib2to3/fixes/fix_zip.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_zip.pyo
+#usr/lib/python2.7/lib2to3/main.py
+#usr/lib/python2.7/lib2to3/main.pyc
+#usr/lib/python2.7/lib2to3/main.pyo
+#usr/lib/python2.7/lib2to3/patcomp.py
+#usr/lib/python2.7/lib2to3/patcomp.pyc
+#usr/lib/python2.7/lib2to3/patcomp.pyo
+#usr/lib/python2.7/lib2to3/pgen2
+#usr/lib/python2.7/lib2to3/pgen2/__init__.py
+#usr/lib/python2.7/lib2to3/pgen2/__init__.pyc
+#usr/lib/python2.7/lib2to3/pgen2/__init__.pyo
+#usr/lib/python2.7/lib2to3/pgen2/conv.py
+#usr/lib/python2.7/lib2to3/pgen2/conv.pyc
+#usr/lib/python2.7/lib2to3/pgen2/conv.pyo
+#usr/lib/python2.7/lib2to3/pgen2/driver.py
+#usr/lib/python2.7/lib2to3/pgen2/driver.pyc
+#usr/lib/python2.7/lib2to3/pgen2/driver.pyo
+#usr/lib/python2.7/lib2to3/pgen2/grammar.py
+#usr/lib/python2.7/lib2to3/pgen2/grammar.pyc
+#usr/lib/python2.7/lib2to3/pgen2/grammar.pyo
+#usr/lib/python2.7/lib2to3/pgen2/literals.py
+#usr/lib/python2.7/lib2to3/pgen2/literals.pyc
+#usr/lib/python2.7/lib2to3/pgen2/literals.pyo
+#usr/lib/python2.7/lib2to3/pgen2/parse.py
+#usr/lib/python2.7/lib2to3/pgen2/parse.pyc
+#usr/lib/python2.7/lib2to3/pgen2/parse.pyo
+#usr/lib/python2.7/lib2to3/pgen2/pgen.py
+#usr/lib/python2.7/lib2to3/pgen2/pgen.pyc
+#usr/lib/python2.7/lib2to3/pgen2/pgen.pyo
+#usr/lib/python2.7/lib2to3/pgen2/token.py
+#usr/lib/python2.7/lib2to3/pgen2/token.pyc
+#usr/lib/python2.7/lib2to3/pgen2/token.pyo
+#usr/lib/python2.7/lib2to3/pgen2/tokenize.py
+#usr/lib/python2.7/lib2to3/pgen2/tokenize.pyc
+#usr/lib/python2.7/lib2to3/pgen2/tokenize.pyo
+#usr/lib/python2.7/lib2to3/pygram.py
+#usr/lib/python2.7/lib2to3/pygram.pyc
+#usr/lib/python2.7/lib2to3/pygram.pyo
+#usr/lib/python2.7/lib2to3/pytree.py
+#usr/lib/python2.7/lib2to3/pytree.pyc
+#usr/lib/python2.7/lib2to3/pytree.pyo
+#usr/lib/python2.7/lib2to3/refactor.py
+#usr/lib/python2.7/lib2to3/refactor.pyc
+#usr/lib/python2.7/lib2to3/refactor.pyo
+#usr/lib/python2.7/lib2to3/tests
+#usr/lib/python2.7/lib2to3/tests/__init__.py
+#usr/lib/python2.7/lib2to3/tests/__init__.pyc
+#usr/lib/python2.7/lib2to3/tests/__init__.pyo
+#usr/lib/python2.7/lib2to3/tests/data
+#usr/lib/python2.7/lib2to3/tests/data/README
+#usr/lib/python2.7/lib2to3/tests/data/bom.py
+#usr/lib/python2.7/lib2to3/tests/data/crlf.py
+#usr/lib/python2.7/lib2to3/tests/data/different_encoding.py
+#usr/lib/python2.7/lib2to3/tests/data/false_encoding.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers
+#usr/lib/python2.7/lib2to3/tests/data/fixers/bad_order.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/__init__.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_explicit.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_first.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_last.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_parrot.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_preorder.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/no_fixer_cls.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/parrot_example.py
+#usr/lib/python2.7/lib2to3/tests/data/infinite_recursion.py
+#usr/lib/python2.7/lib2to3/tests/data/py2_test_grammar.py
+#usr/lib/python2.7/lib2to3/tests/data/py3_test_grammar.py
+#usr/lib/python2.7/lib2to3/tests/pytree_idempotency.py
+#usr/lib/python2.7/lib2to3/tests/pytree_idempotency.pyc
+#usr/lib/python2.7/lib2to3/tests/pytree_idempotency.pyo
+#usr/lib/python2.7/lib2to3/tests/support.py
+#usr/lib/python2.7/lib2to3/tests/support.pyc
+#usr/lib/python2.7/lib2to3/tests/support.pyo
+#usr/lib/python2.7/lib2to3/tests/test_all_fixers.py
+#usr/lib/python2.7/lib2to3/tests/test_all_fixers.pyc
+#usr/lib/python2.7/lib2to3/tests/test_all_fixers.pyo
+#usr/lib/python2.7/lib2to3/tests/test_fixers.py
+#usr/lib/python2.7/lib2to3/tests/test_fixers.pyc
+#usr/lib/python2.7/lib2to3/tests/test_fixers.pyo
+#usr/lib/python2.7/lib2to3/tests/test_main.py
+#usr/lib/python2.7/lib2to3/tests/test_main.pyc
+#usr/lib/python2.7/lib2to3/tests/test_main.pyo
+#usr/lib/python2.7/lib2to3/tests/test_parser.py
+#usr/lib/python2.7/lib2to3/tests/test_parser.pyc
+#usr/lib/python2.7/lib2to3/tests/test_parser.pyo
+#usr/lib/python2.7/lib2to3/tests/test_pytree.py
+#usr/lib/python2.7/lib2to3/tests/test_pytree.pyc
+#usr/lib/python2.7/lib2to3/tests/test_pytree.pyo
+#usr/lib/python2.7/lib2to3/tests/test_refactor.py
+#usr/lib/python2.7/lib2to3/tests/test_refactor.pyc
+#usr/lib/python2.7/lib2to3/tests/test_refactor.pyo
+#usr/lib/python2.7/lib2to3/tests/test_util.py
+#usr/lib/python2.7/lib2to3/tests/test_util.pyc
+#usr/lib/python2.7/lib2to3/tests/test_util.pyo
+#usr/lib/python2.7/linecache.py
+usr/lib/python2.7/linecache.pyc
+#usr/lib/python2.7/linecache.pyo
+#usr/lib/python2.7/locale.py
+usr/lib/python2.7/locale.pyc
+#usr/lib/python2.7/locale.pyo
+#usr/lib/python2.7/logging
+#usr/lib/python2.7/logging/__init__.py
+usr/lib/python2.7/logging/__init__.pyc
+#usr/lib/python2.7/logging/__init__.pyo
+#usr/lib/python2.7/logging/config.py
+usr/lib/python2.7/logging/config.pyc
+#usr/lib/python2.7/logging/config.pyo
+#usr/lib/python2.7/logging/handlers.py
+usr/lib/python2.7/logging/handlers.pyc
+#usr/lib/python2.7/logging/handlers.pyo
+#usr/lib/python2.7/macpath.py
+usr/lib/python2.7/macpath.pyc
+#usr/lib/python2.7/macpath.pyo
+#usr/lib/python2.7/macurl2path.py
+usr/lib/python2.7/macurl2path.pyc
+#usr/lib/python2.7/macurl2path.pyo
+#usr/lib/python2.7/mailbox.py
+usr/lib/python2.7/mailbox.pyc
+#usr/lib/python2.7/mailbox.pyo
+#usr/lib/python2.7/mailcap.py
+usr/lib/python2.7/mailcap.pyc
+#usr/lib/python2.7/mailcap.pyo
+#usr/lib/python2.7/markupbase.py
+usr/lib/python2.7/markupbase.pyc
+#usr/lib/python2.7/markupbase.pyo
+#usr/lib/python2.7/md5.py
+usr/lib/python2.7/md5.pyc
+#usr/lib/python2.7/md5.pyo
+#usr/lib/python2.7/mhlib.py
+usr/lib/python2.7/mhlib.pyc
+#usr/lib/python2.7/mhlib.pyo
+#usr/lib/python2.7/mimetools.py
+usr/lib/python2.7/mimetools.pyc
+#usr/lib/python2.7/mimetools.pyo
+#usr/lib/python2.7/mimetypes.py
+usr/lib/python2.7/mimetypes.pyc
+#usr/lib/python2.7/mimetypes.pyo
+#usr/lib/python2.7/mimify.py
+usr/lib/python2.7/mimify.pyc
+#usr/lib/python2.7/mimify.pyo
+#usr/lib/python2.7/modulefinder.py
+usr/lib/python2.7/modulefinder.pyc
+#usr/lib/python2.7/modulefinder.pyo
+#usr/lib/python2.7/multifile.py
+usr/lib/python2.7/multifile.pyc
+#usr/lib/python2.7/multifile.pyo
+#usr/lib/python2.7/multiprocessing
+#usr/lib/python2.7/multiprocessing/__init__.py
+usr/lib/python2.7/multiprocessing/__init__.pyc
+#usr/lib/python2.7/multiprocessing/__init__.pyo
+#usr/lib/python2.7/multiprocessing/connection.py
+usr/lib/python2.7/multiprocessing/connection.pyc
+#usr/lib/python2.7/multiprocessing/connection.pyo
+#usr/lib/python2.7/multiprocessing/dummy
+#usr/lib/python2.7/multiprocessing/dummy/__init__.py
+usr/lib/python2.7/multiprocessing/dummy/__init__.pyc
+#usr/lib/python2.7/multiprocessing/dummy/__init__.pyo
+#usr/lib/python2.7/multiprocessing/dummy/connection.py
+usr/lib/python2.7/multiprocessing/dummy/connection.pyc
+#usr/lib/python2.7/multiprocessing/dummy/connection.pyo
+#usr/lib/python2.7/multiprocessing/forking.py
+usr/lib/python2.7/multiprocessing/forking.pyc
+#usr/lib/python2.7/multiprocessing/forking.pyo
+#usr/lib/python2.7/multiprocessing/heap.py
+usr/lib/python2.7/multiprocessing/heap.pyc
+#usr/lib/python2.7/multiprocessing/heap.pyo
+#usr/lib/python2.7/multiprocessing/managers.py
+usr/lib/python2.7/multiprocessing/managers.pyc
+#usr/lib/python2.7/multiprocessing/managers.pyo
+#usr/lib/python2.7/multiprocessing/pool.py
+usr/lib/python2.7/multiprocessing/pool.pyc
+#usr/lib/python2.7/multiprocessing/pool.pyo
+#usr/lib/python2.7/multiprocessing/process.py
+usr/lib/python2.7/multiprocessing/process.pyc
+#usr/lib/python2.7/multiprocessing/process.pyo
+#usr/lib/python2.7/multiprocessing/queues.py
+usr/lib/python2.7/multiprocessing/queues.pyc
+#usr/lib/python2.7/multiprocessing/queues.pyo
+#usr/lib/python2.7/multiprocessing/reduction.py
+usr/lib/python2.7/multiprocessing/reduction.pyc
+#usr/lib/python2.7/multiprocessing/reduction.pyo
+#usr/lib/python2.7/multiprocessing/sharedctypes.py
+usr/lib/python2.7/multiprocessing/sharedctypes.pyc
+#usr/lib/python2.7/multiprocessing/sharedctypes.pyo
+#usr/lib/python2.7/multiprocessing/synchronize.py
+usr/lib/python2.7/multiprocessing/synchronize.pyc
+#usr/lib/python2.7/multiprocessing/synchronize.pyo
+#usr/lib/python2.7/multiprocessing/util.py
+usr/lib/python2.7/multiprocessing/util.pyc
+#usr/lib/python2.7/multiprocessing/util.pyo
+#usr/lib/python2.7/mutex.py
+usr/lib/python2.7/mutex.pyc
+#usr/lib/python2.7/mutex.pyo
+#usr/lib/python2.7/netrc.py
+usr/lib/python2.7/netrc.pyc
+#usr/lib/python2.7/netrc.pyo
+#usr/lib/python2.7/new.py
+usr/lib/python2.7/new.pyc
+#usr/lib/python2.7/new.pyo
+#usr/lib/python2.7/nntplib.py
+usr/lib/python2.7/nntplib.pyc
+#usr/lib/python2.7/nntplib.pyo
+#usr/lib/python2.7/ntpath.py
+usr/lib/python2.7/ntpath.pyc
+#usr/lib/python2.7/ntpath.pyo
+#usr/lib/python2.7/nturl2path.py
+usr/lib/python2.7/nturl2path.pyc
+#usr/lib/python2.7/nturl2path.pyo
+#usr/lib/python2.7/numbers.py
+usr/lib/python2.7/numbers.pyc
+#usr/lib/python2.7/numbers.pyo
+#usr/lib/python2.7/opcode.py
+usr/lib/python2.7/opcode.pyc
+#usr/lib/python2.7/opcode.pyo
+#usr/lib/python2.7/optparse.py
+usr/lib/python2.7/optparse.pyc
+#usr/lib/python2.7/optparse.pyo
+#usr/lib/python2.7/os.py
+usr/lib/python2.7/os.pyc
+#usr/lib/python2.7/os.pyo
+#usr/lib/python2.7/os2emxpath.py
+usr/lib/python2.7/os2emxpath.pyc
+#usr/lib/python2.7/os2emxpath.pyo
+#usr/lib/python2.7/pdb.doc
+#usr/lib/python2.7/pdb.py
+usr/lib/python2.7/pdb.pyc
+#usr/lib/python2.7/pdb.pyo
+#usr/lib/python2.7/pickle.py
+usr/lib/python2.7/pickle.pyc
+#usr/lib/python2.7/pickle.pyo
+#usr/lib/python2.7/pickletools.py
+usr/lib/python2.7/pickletools.pyc
+#usr/lib/python2.7/pickletools.pyo
+#usr/lib/python2.7/pipes.py
+usr/lib/python2.7/pipes.pyc
+#usr/lib/python2.7/pipes.pyo
+#usr/lib/python2.7/pkgutil.py
+usr/lib/python2.7/pkgutil.pyc
+#usr/lib/python2.7/pkgutil.pyo
+#usr/lib/python2.7/plat-linux2
+#usr/lib/python2.7/plat-linux2/CDROM.py
+usr/lib/python2.7/plat-linux2/CDROM.pyc
+#usr/lib/python2.7/plat-linux2/CDROM.pyo
+#usr/lib/python2.7/plat-linux2/DLFCN.py
+usr/lib/python2.7/plat-linux2/DLFCN.pyc
+#usr/lib/python2.7/plat-linux2/DLFCN.pyo
+#usr/lib/python2.7/plat-linux2/IN.py
+usr/lib/python2.7/plat-linux2/IN.pyc
+#usr/lib/python2.7/plat-linux2/IN.pyo
+#usr/lib/python2.7/plat-linux2/TYPES.py
+usr/lib/python2.7/plat-linux2/TYPES.pyc
+#usr/lib/python2.7/plat-linux2/TYPES.pyo
+#usr/lib/python2.7/plat-linux2/regen
+#usr/lib/python2.7/platform.py
+usr/lib/python2.7/platform.pyc
+#usr/lib/python2.7/platform.pyo
+#usr/lib/python2.7/plistlib.py
+usr/lib/python2.7/plistlib.pyc
+#usr/lib/python2.7/plistlib.pyo
+#usr/lib/python2.7/popen2.py
+usr/lib/python2.7/popen2.pyc
+#usr/lib/python2.7/popen2.pyo
+#usr/lib/python2.7/poplib.py
+usr/lib/python2.7/poplib.pyc
+#usr/lib/python2.7/poplib.pyo
+#usr/lib/python2.7/posixfile.py
+usr/lib/python2.7/posixfile.pyc
+#usr/lib/python2.7/posixfile.pyo
+#usr/lib/python2.7/posixpath.py
+usr/lib/python2.7/posixpath.pyc
+#usr/lib/python2.7/posixpath.pyo
+#usr/lib/python2.7/pprint.py
+usr/lib/python2.7/pprint.pyc
+#usr/lib/python2.7/pprint.pyo
+#usr/lib/python2.7/profile.py
+usr/lib/python2.7/profile.pyc
+#usr/lib/python2.7/profile.pyo
+#usr/lib/python2.7/pstats.py
+usr/lib/python2.7/pstats.pyc
+#usr/lib/python2.7/pstats.pyo
+#usr/lib/python2.7/pty.py
+usr/lib/python2.7/pty.pyc
+#usr/lib/python2.7/pty.pyo
+#usr/lib/python2.7/py_compile.py
+usr/lib/python2.7/py_compile.pyc
+#usr/lib/python2.7/py_compile.pyo
+usr/lib/python2.7/pyclbr.py
+#usr/lib/python2.7/pyclbr.pyc
+#usr/lib/python2.7/pyclbr.pyo
+#usr/lib/python2.7/pydoc.py
+usr/lib/python2.7/pydoc.pyc
+#usr/lib/python2.7/pydoc.pyo
+#usr/lib/python2.7/pydoc_data
+#usr/lib/python2.7/pydoc_data/__init__.py
+usr/lib/python2.7/pydoc_data/__init__.pyc
+#usr/lib/python2.7/pydoc_data/__init__.pyo
+#usr/lib/python2.7/pydoc_data/topics.py
+usr/lib/python2.7/pydoc_data/topics.pyc
+#usr/lib/python2.7/pydoc_data/topics.pyo
+#usr/lib/python2.7/quopri.py
+usr/lib/python2.7/quopri.pyc
+#usr/lib/python2.7/quopri.pyo
+#usr/lib/python2.7/random.py
+usr/lib/python2.7/random.pyc
+#usr/lib/python2.7/random.pyo
+#usr/lib/python2.7/re.py
+usr/lib/python2.7/re.pyc
+#usr/lib/python2.7/re.pyo
+#usr/lib/python2.7/repr.py
+usr/lib/python2.7/repr.pyc
+#usr/lib/python2.7/repr.pyo
+#usr/lib/python2.7/rexec.py
+usr/lib/python2.7/rexec.pyc
+#usr/lib/python2.7/rexec.pyo
+#usr/lib/python2.7/rfc822.py
+usr/lib/python2.7/rfc822.pyc
+#usr/lib/python2.7/rfc822.pyo
+#usr/lib/python2.7/rlcompleter.py
+usr/lib/python2.7/rlcompleter.pyc
+#usr/lib/python2.7/rlcompleter.pyo
+#usr/lib/python2.7/robotparser.py
+usr/lib/python2.7/robotparser.pyc
+#usr/lib/python2.7/robotparser.pyo
+#usr/lib/python2.7/runpy.py
+usr/lib/python2.7/runpy.pyc
+#usr/lib/python2.7/runpy.pyo
+#usr/lib/python2.7/sched.py
+usr/lib/python2.7/sched.pyc
+#usr/lib/python2.7/sched.pyo
+#usr/lib/python2.7/sets.py
+usr/lib/python2.7/sets.pyc
+#usr/lib/python2.7/sets.pyo
+#usr/lib/python2.7/sgmllib.py
+usr/lib/python2.7/sgmllib.pyc
+#usr/lib/python2.7/sgmllib.pyo
+#usr/lib/python2.7/sha.py
+usr/lib/python2.7/sha.pyc
+#usr/lib/python2.7/sha.pyo
+#usr/lib/python2.7/shelve.py
+usr/lib/python2.7/shelve.pyc
+#usr/lib/python2.7/shelve.pyo
+#usr/lib/python2.7/shlex.py
+usr/lib/python2.7/shlex.pyc
+#usr/lib/python2.7/shlex.pyo
+#usr/lib/python2.7/shutil.py
+usr/lib/python2.7/shutil.pyc
+#usr/lib/python2.7/shutil.pyo
+#usr/lib/python2.7/site-packages
+usr/lib/python2.7/site-packages/README
+#usr/lib/python2.7/site.py
+usr/lib/python2.7/site.pyc
+#usr/lib/python2.7/site.pyo
+#usr/lib/python2.7/smtpd.py
+usr/lib/python2.7/smtpd.pyc
+#usr/lib/python2.7/smtpd.pyo
+#usr/lib/python2.7/smtplib.py
+usr/lib/python2.7/smtplib.pyc
+#usr/lib/python2.7/smtplib.pyo
+#usr/lib/python2.7/sndhdr.py
+usr/lib/python2.7/sndhdr.pyc
+#usr/lib/python2.7/sndhdr.pyo
+#usr/lib/python2.7/socket.py
+usr/lib/python2.7/socket.pyc
+#usr/lib/python2.7/socket.pyo
+#usr/lib/python2.7/sqlite3
+#usr/lib/python2.7/sqlite3/__init__.py
+usr/lib/python2.7/sqlite3/__init__.pyc
+#usr/lib/python2.7/sqlite3/__init__.pyo
+#usr/lib/python2.7/sqlite3/dbapi2.py
+usr/lib/python2.7/sqlite3/dbapi2.pyc
+#usr/lib/python2.7/sqlite3/dbapi2.pyo
+#usr/lib/python2.7/sqlite3/dump.py
+usr/lib/python2.7/sqlite3/dump.pyc
+#usr/lib/python2.7/sqlite3/dump.pyo
+#usr/lib/python2.7/sqlite3/test
+#usr/lib/python2.7/sqlite3/test/__init__.py
+#usr/lib/python2.7/sqlite3/test/__init__.pyc
+#usr/lib/python2.7/sqlite3/test/__init__.pyo
+#usr/lib/python2.7/sqlite3/test/dbapi.py
+#usr/lib/python2.7/sqlite3/test/dbapi.pyc
+#usr/lib/python2.7/sqlite3/test/dbapi.pyo
+#usr/lib/python2.7/sqlite3/test/dump.py
+#usr/lib/python2.7/sqlite3/test/dump.pyc
+#usr/lib/python2.7/sqlite3/test/dump.pyo
+#usr/lib/python2.7/sqlite3/test/factory.py
+#usr/lib/python2.7/sqlite3/test/factory.pyc
+#usr/lib/python2.7/sqlite3/test/factory.pyo
+#usr/lib/python2.7/sqlite3/test/hooks.py
+#usr/lib/python2.7/sqlite3/test/hooks.pyc
+#usr/lib/python2.7/sqlite3/test/hooks.pyo
+#usr/lib/python2.7/sqlite3/test/py25tests.py
+#usr/lib/python2.7/sqlite3/test/py25tests.pyc
+#usr/lib/python2.7/sqlite3/test/py25tests.pyo
+#usr/lib/python2.7/sqlite3/test/regression.py
+#usr/lib/python2.7/sqlite3/test/regression.pyc
+#usr/lib/python2.7/sqlite3/test/regression.pyo
+#usr/lib/python2.7/sqlite3/test/transactions.py
+#usr/lib/python2.7/sqlite3/test/transactions.pyc
+#usr/lib/python2.7/sqlite3/test/transactions.pyo
+#usr/lib/python2.7/sqlite3/test/types.py
+#usr/lib/python2.7/sqlite3/test/types.pyc
+#usr/lib/python2.7/sqlite3/test/types.pyo
+#usr/lib/python2.7/sqlite3/test/userfunctions.py
+#usr/lib/python2.7/sqlite3/test/userfunctions.pyc
+#usr/lib/python2.7/sqlite3/test/userfunctions.pyo
+#usr/lib/python2.7/sre.py
+usr/lib/python2.7/sre.pyc
+#usr/lib/python2.7/sre.pyo
+#usr/lib/python2.7/sre_compile.py
+usr/lib/python2.7/sre_compile.pyc
+#usr/lib/python2.7/sre_compile.pyo
+#usr/lib/python2.7/sre_constants.py
+usr/lib/python2.7/sre_constants.pyc
+#usr/lib/python2.7/sre_constants.pyo
+#usr/lib/python2.7/sre_parse.py
+usr/lib/python2.7/sre_parse.pyc
+#usr/lib/python2.7/sre_parse.pyo
+#usr/lib/python2.7/ssl.py
+usr/lib/python2.7/ssl.pyc
+#usr/lib/python2.7/ssl.pyo
+#usr/lib/python2.7/stat.py
+usr/lib/python2.7/stat.pyc
+#usr/lib/python2.7/stat.pyo
+#usr/lib/python2.7/statvfs.py
+usr/lib/python2.7/statvfs.pyc
+#usr/lib/python2.7/statvfs.pyo
+#usr/lib/python2.7/string.py
+usr/lib/python2.7/string.pyc
+#usr/lib/python2.7/string.pyo
+#usr/lib/python2.7/stringold.py
+usr/lib/python2.7/stringold.pyc
+#usr/lib/python2.7/stringold.pyo
+#usr/lib/python2.7/stringprep.py
+usr/lib/python2.7/stringprep.pyc
+#usr/lib/python2.7/stringprep.pyo
+#usr/lib/python2.7/struct.py
+usr/lib/python2.7/struct.pyc
+#usr/lib/python2.7/struct.pyo
+#usr/lib/python2.7/subprocess.py
+usr/lib/python2.7/subprocess.pyc
+#usr/lib/python2.7/subprocess.pyo
+#usr/lib/python2.7/sunau.py
+usr/lib/python2.7/sunau.pyc
+#usr/lib/python2.7/sunau.pyo
+#usr/lib/python2.7/sunaudio.py
+usr/lib/python2.7/sunaudio.pyc
+#usr/lib/python2.7/sunaudio.pyo
+#usr/lib/python2.7/symbol.py
+usr/lib/python2.7/symbol.pyc
+#usr/lib/python2.7/symbol.pyo
+#usr/lib/python2.7/symtable.py
+usr/lib/python2.7/symtable.pyc
+#usr/lib/python2.7/symtable.pyo
+#usr/lib/python2.7/sysconfig.py
+usr/lib/python2.7/sysconfig.pyc
+#usr/lib/python2.7/sysconfig.pyo
+#usr/lib/python2.7/tabnanny.py
+usr/lib/python2.7/tabnanny.pyc
+#usr/lib/python2.7/tabnanny.pyo
+#usr/lib/python2.7/tarfile.py
+usr/lib/python2.7/tarfile.pyc
+#usr/lib/python2.7/tarfile.pyo
+#usr/lib/python2.7/telnetlib.py
+usr/lib/python2.7/telnetlib.pyc
+#usr/lib/python2.7/telnetlib.pyo
+#usr/lib/python2.7/tempfile.py
+usr/lib/python2.7/tempfile.pyc
+#usr/lib/python2.7/tempfile.pyo
+#usr/lib/python2.7/test
+#usr/lib/python2.7/test/185test.db
+#usr/lib/python2.7/test/Sine-1000Hz-300ms.aif
+#usr/lib/python2.7/test/__init__.py
+#usr/lib/python2.7/test/__init__.pyc
+#usr/lib/python2.7/test/__init__.pyo
+#usr/lib/python2.7/test/_mock_backport.py
+#usr/lib/python2.7/test/_mock_backport.pyc
+#usr/lib/python2.7/test/_mock_backport.pyo
+#usr/lib/python2.7/test/audiodata
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm24.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm24.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.wav
+#usr/lib/python2.7/test/audiodata/pluck-ulaw.aifc
+#usr/lib/python2.7/test/audiodata/pluck-ulaw.au
+#usr/lib/python2.7/test/audiotest.au
+#usr/lib/python2.7/test/audiotests.py
+#usr/lib/python2.7/test/audiotests.pyc
+#usr/lib/python2.7/test/audiotests.pyo
+#usr/lib/python2.7/test/autotest.py
+#usr/lib/python2.7/test/autotest.pyc
+#usr/lib/python2.7/test/autotest.pyo
+#usr/lib/python2.7/test/bad_coding.py
+#usr/lib/python2.7/test/bad_coding2.py
+#usr/lib/python2.7/test/bad_coding3.py
+#usr/lib/python2.7/test/badcert.pem
+#usr/lib/python2.7/test/badkey.pem
+#usr/lib/python2.7/test/badsyntax_future3.py
+#usr/lib/python2.7/test/badsyntax_future4.py
+#usr/lib/python2.7/test/badsyntax_future5.py
+#usr/lib/python2.7/test/badsyntax_future6.py
+#usr/lib/python2.7/test/badsyntax_future7.py
+#usr/lib/python2.7/test/badsyntax_future8.py
+#usr/lib/python2.7/test/badsyntax_future9.py
+#usr/lib/python2.7/test/badsyntax_nocaret.py
+#usr/lib/python2.7/test/buffer_tests.py
+#usr/lib/python2.7/test/buffer_tests.pyc
+#usr/lib/python2.7/test/buffer_tests.pyo
+#usr/lib/python2.7/test/capath
+#usr/lib/python2.7/test/capath/4e1295a3.0
+#usr/lib/python2.7/test/capath/5ed36f99.0
+#usr/lib/python2.7/test/capath/6e88d7b8.0
+#usr/lib/python2.7/test/capath/99d0fa06.0
+#usr/lib/python2.7/test/cfgparser.1
+#usr/lib/python2.7/test/check_soundcard.vbs
+#usr/lib/python2.7/test/cjkencodings
+#usr/lib/python2.7/test/cjkencodings/big5-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/big5.txt
+#usr/lib/python2.7/test/cjkencodings/big5hkscs-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/big5hkscs.txt
+#usr/lib/python2.7/test/cjkencodings/cp949-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/cp949.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jisx0213-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jisx0213.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jp-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jp.txt
+#usr/lib/python2.7/test/cjkencodings/euc_kr-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/euc_kr.txt
+#usr/lib/python2.7/test/cjkencodings/gb18030-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/gb18030.txt
+#usr/lib/python2.7/test/cjkencodings/gb2312-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/gb2312.txt
+#usr/lib/python2.7/test/cjkencodings/gbk-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/gbk.txt
+#usr/lib/python2.7/test/cjkencodings/hz-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/hz.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_jp-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_jp.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_kr-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_kr.txt
+#usr/lib/python2.7/test/cjkencodings/johab-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/johab.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jis-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jis.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jisx0213-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jisx0213.txt
+#usr/lib/python2.7/test/cmath_testcases.txt
+#usr/lib/python2.7/test/curses_tests.py
+#usr/lib/python2.7/test/curses_tests.pyc
+#usr/lib/python2.7/test/curses_tests.pyo
+#usr/lib/python2.7/test/data
+#usr/lib/python2.7/test/data/README
+#usr/lib/python2.7/test/decimaltestdata
+#usr/lib/python2.7/test/decimaltestdata/abs.decTest
+#usr/lib/python2.7/test/decimaltestdata/add.decTest
+#usr/lib/python2.7/test/decimaltestdata/and.decTest
+#usr/lib/python2.7/test/decimaltestdata/base.decTest
+#usr/lib/python2.7/test/decimaltestdata/clamp.decTest
+#usr/lib/python2.7/test/decimaltestdata/class.decTest
+#usr/lib/python2.7/test/decimaltestdata/compare.decTest
+#usr/lib/python2.7/test/decimaltestdata/comparetotal.decTest
+#usr/lib/python2.7/test/decimaltestdata/comparetotmag.decTest
+#usr/lib/python2.7/test/decimaltestdata/copy.decTest
+#usr/lib/python2.7/test/decimaltestdata/copyabs.decTest
+#usr/lib/python2.7/test/decimaltestdata/copynegate.decTest
+#usr/lib/python2.7/test/decimaltestdata/copysign.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddAdd.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddAnd.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddBase.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCanonical.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddClass.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompare.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompareSig.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompareTotal.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompareTotalMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopy.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopyAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopyNegate.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopySign.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddDivide.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddDivideInt.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddEncode.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddFMA.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddInvert.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddLogB.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMax.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMaxMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMin.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMinMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMultiply.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddNextMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddNextPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddNextToward.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddOr.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddQuantize.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddReduce.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddRemainder.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddRemainderNear.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddRotate.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddSameQuantum.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddScaleB.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddShift.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddSubtract.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddToIntegral.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddXor.decTest
+#usr/lib/python2.7/test/decimaltestdata/decDouble.decTest
+#usr/lib/python2.7/test/decimaltestdata/decQuad.decTest
+#usr/lib/python2.7/test/decimaltestdata/decSingle.decTest
+#usr/lib/python2.7/test/decimaltestdata/divide.decTest
+#usr/lib/python2.7/test/decimaltestdata/divideint.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqAdd.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqAnd.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqBase.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCanonical.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqClass.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompare.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompareSig.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompareTotal.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompareTotalMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopy.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopyAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopyNegate.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopySign.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqDivide.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqDivideInt.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqEncode.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqFMA.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqInvert.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqLogB.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMax.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMaxMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMin.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMinMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMultiply.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqNextMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqNextPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqNextToward.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqOr.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqQuantize.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqReduce.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqRemainder.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqRemainderNear.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqRotate.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqSameQuantum.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqScaleB.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqShift.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqSubtract.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqToIntegral.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqXor.decTest
+#usr/lib/python2.7/test/decimaltestdata/dsBase.decTest
+#usr/lib/python2.7/test/decimaltestdata/dsEncode.decTest
+#usr/lib/python2.7/test/decimaltestdata/exp.decTest
+#usr/lib/python2.7/test/decimaltestdata/extra.decTest
+#usr/lib/python2.7/test/decimaltestdata/fma.decTest
+#usr/lib/python2.7/test/decimaltestdata/inexact.decTest
+#usr/lib/python2.7/test/decimaltestdata/invert.decTest
+#usr/lib/python2.7/test/decimaltestdata/ln.decTest
+#usr/lib/python2.7/test/decimaltestdata/log10.decTest
+#usr/lib/python2.7/test/decimaltestdata/logb.decTest
+#usr/lib/python2.7/test/decimaltestdata/max.decTest
+#usr/lib/python2.7/test/decimaltestdata/maxmag.decTest
+#usr/lib/python2.7/test/decimaltestdata/min.decTest
+#usr/lib/python2.7/test/decimaltestdata/minmag.decTest
+#usr/lib/python2.7/test/decimaltestdata/minus.decTest
+#usr/lib/python2.7/test/decimaltestdata/multiply.decTest
+#usr/lib/python2.7/test/decimaltestdata/nextminus.decTest
+#usr/lib/python2.7/test/decimaltestdata/nextplus.decTest
+#usr/lib/python2.7/test/decimaltestdata/nexttoward.decTest
+#usr/lib/python2.7/test/decimaltestdata/or.decTest
+#usr/lib/python2.7/test/decimaltestdata/plus.decTest
+#usr/lib/python2.7/test/decimaltestdata/power.decTest
+#usr/lib/python2.7/test/decimaltestdata/powersqrt.decTest
+#usr/lib/python2.7/test/decimaltestdata/quantize.decTest
+#usr/lib/python2.7/test/decimaltestdata/randomBound32.decTest
+#usr/lib/python2.7/test/decimaltestdata/randoms.decTest
+#usr/lib/python2.7/test/decimaltestdata/reduce.decTest
+#usr/lib/python2.7/test/decimaltestdata/remainder.decTest
+#usr/lib/python2.7/test/decimaltestdata/remainderNear.decTest
+#usr/lib/python2.7/test/decimaltestdata/rescale.decTest
+#usr/lib/python2.7/test/decimaltestdata/rotate.decTest
+#usr/lib/python2.7/test/decimaltestdata/rounding.decTest
+#usr/lib/python2.7/test/decimaltestdata/samequantum.decTest
+#usr/lib/python2.7/test/decimaltestdata/scaleb.decTest
+#usr/lib/python2.7/test/decimaltestdata/shift.decTest
+#usr/lib/python2.7/test/decimaltestdata/squareroot.decTest
+#usr/lib/python2.7/test/decimaltestdata/subtract.decTest
+#usr/lib/python2.7/test/decimaltestdata/testall.decTest
+#usr/lib/python2.7/test/decimaltestdata/tointegral.decTest
+#usr/lib/python2.7/test/decimaltestdata/tointegralx.decTest
+#usr/lib/python2.7/test/decimaltestdata/xor.decTest
+#usr/lib/python2.7/test/dh1024.pem
+#usr/lib/python2.7/test/doctest_aliases.py
+#usr/lib/python2.7/test/doctest_aliases.pyc
+#usr/lib/python2.7/test/doctest_aliases.pyo
+#usr/lib/python2.7/test/double_const.py
+#usr/lib/python2.7/test/double_const.pyc
+#usr/lib/python2.7/test/double_const.pyo
+#usr/lib/python2.7/test/empty.vbs
+#usr/lib/python2.7/test/exception_hierarchy.txt
+#usr/lib/python2.7/test/floating_points.txt
+#usr/lib/python2.7/test/fork_wait.py
+#usr/lib/python2.7/test/fork_wait.pyc
+#usr/lib/python2.7/test/fork_wait.pyo
+#usr/lib/python2.7/test/formatfloat_testcases.txt
+#usr/lib/python2.7/test/gdb_sample.py
+#usr/lib/python2.7/test/gdb_sample.pyc
+#usr/lib/python2.7/test/gdb_sample.pyo
+#usr/lib/python2.7/test/greyrgb.uue
+#usr/lib/python2.7/test/https_svn_python_org_root.pem
+#usr/lib/python2.7/test/ieee754.txt
+#usr/lib/python2.7/test/imghdrdata
+#usr/lib/python2.7/test/imghdrdata/python.bmp
+#usr/lib/python2.7/test/imghdrdata/python.gif
+#usr/lib/python2.7/test/imghdrdata/python.jpg
+#usr/lib/python2.7/test/imghdrdata/python.pbm
+#usr/lib/python2.7/test/imghdrdata/python.pgm
+#usr/lib/python2.7/test/imghdrdata/python.png
+#usr/lib/python2.7/test/imghdrdata/python.ppm
+#usr/lib/python2.7/test/imghdrdata/python.ras
+#usr/lib/python2.7/test/imghdrdata/python.sgi
+#usr/lib/python2.7/test/imghdrdata/python.tiff
+#usr/lib/python2.7/test/imghdrdata/python.xbm
+#usr/lib/python2.7/test/infinite_reload.py
+#usr/lib/python2.7/test/infinite_reload.pyc
+#usr/lib/python2.7/test/infinite_reload.pyo
+#usr/lib/python2.7/test/inspect_fodder.py
+#usr/lib/python2.7/test/inspect_fodder.pyc
+#usr/lib/python2.7/test/inspect_fodder.pyo
+#usr/lib/python2.7/test/inspect_fodder2.py
+#usr/lib/python2.7/test/inspect_fodder2.pyc
+#usr/lib/python2.7/test/inspect_fodder2.pyo
+#usr/lib/python2.7/test/keycert.passwd.pem
+#usr/lib/python2.7/test/keycert.pem
+#usr/lib/python2.7/test/keycert2.pem
+#usr/lib/python2.7/test/keycert3.pem
+#usr/lib/python2.7/test/keycert4.pem
+#usr/lib/python2.7/test/list_tests.py
+#usr/lib/python2.7/test/list_tests.pyc
+#usr/lib/python2.7/test/list_tests.pyo
+#usr/lib/python2.7/test/lock_tests.py
+#usr/lib/python2.7/test/lock_tests.pyc
+#usr/lib/python2.7/test/lock_tests.pyo
+#usr/lib/python2.7/test/make_ssl_certs.py
+#usr/lib/python2.7/test/make_ssl_certs.pyc
+#usr/lib/python2.7/test/make_ssl_certs.pyo
+#usr/lib/python2.7/test/mapping_tests.py
+#usr/lib/python2.7/test/mapping_tests.pyc
+#usr/lib/python2.7/test/mapping_tests.pyo
+#usr/lib/python2.7/test/math_testcases.txt
+#usr/lib/python2.7/test/mp_fork_bomb.py
+#usr/lib/python2.7/test/mp_fork_bomb.pyc
+#usr/lib/python2.7/test/mp_fork_bomb.pyo
+#usr/lib/python2.7/test/nokia.pem
+#usr/lib/python2.7/test/nullbytecert.pem
+#usr/lib/python2.7/test/nullcert.pem
+#usr/lib/python2.7/test/outstanding_bugs.py
+#usr/lib/python2.7/test/outstanding_bugs.pyc
+#usr/lib/python2.7/test/outstanding_bugs.pyo
+#usr/lib/python2.7/test/pickletester.py
+#usr/lib/python2.7/test/pickletester.pyc
+#usr/lib/python2.7/test/pickletester.pyo
+#usr/lib/python2.7/test/profilee.py
+#usr/lib/python2.7/test/profilee.pyc
+#usr/lib/python2.7/test/profilee.pyo
+#usr/lib/python2.7/test/pycacert.pem
+#usr/lib/python2.7/test/pyclbr_input.py
+#usr/lib/python2.7/test/pyclbr_input.pyc
+#usr/lib/python2.7/test/pyclbr_input.pyo
+#usr/lib/python2.7/test/pydoc_mod.py
+#usr/lib/python2.7/test/pydoc_mod.pyc
+#usr/lib/python2.7/test/pydoc_mod.pyo
+#usr/lib/python2.7/test/pydocfodder.py
+#usr/lib/python2.7/test/pydocfodder.pyc
+#usr/lib/python2.7/test/pydocfodder.pyo
+#usr/lib/python2.7/test/pystone.py
+#usr/lib/python2.7/test/pystone.pyc
+#usr/lib/python2.7/test/pystone.pyo
+#usr/lib/python2.7/test/randv2_32.pck
+#usr/lib/python2.7/test/randv2_64.pck
+#usr/lib/python2.7/test/randv3.pck
+#usr/lib/python2.7/test/re_tests.py
+#usr/lib/python2.7/test/re_tests.pyc
+#usr/lib/python2.7/test/re_tests.pyo
+#usr/lib/python2.7/test/regrtest.py
+#usr/lib/python2.7/test/regrtest.pyc
+#usr/lib/python2.7/test/regrtest.pyo
+#usr/lib/python2.7/test/relimport.py
+#usr/lib/python2.7/test/relimport.pyc
+#usr/lib/python2.7/test/relimport.pyo
+#usr/lib/python2.7/test/reperf.py
+#usr/lib/python2.7/test/reperf.pyc
+#usr/lib/python2.7/test/reperf.pyo
+#usr/lib/python2.7/test/revocation.crl
+#usr/lib/python2.7/test/sample_doctest.py
+#usr/lib/python2.7/test/sample_doctest.pyc
+#usr/lib/python2.7/test/sample_doctest.pyo
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.py
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.pyc
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.pyo
+#usr/lib/python2.7/test/sample_doctest_no_doctests.py
+#usr/lib/python2.7/test/sample_doctest_no_doctests.pyc
+#usr/lib/python2.7/test/sample_doctest_no_doctests.pyo
+#usr/lib/python2.7/test/script_helper.py
+#usr/lib/python2.7/test/script_helper.pyc
+#usr/lib/python2.7/test/script_helper.pyo
+#usr/lib/python2.7/test/selfsigned_pythontestdotnet.pem
+#usr/lib/python2.7/test/seq_tests.py
+#usr/lib/python2.7/test/seq_tests.pyc
+#usr/lib/python2.7/test/seq_tests.pyo
+#usr/lib/python2.7/test/sgml_input.html
+#usr/lib/python2.7/test/sha256.pem
+#usr/lib/python2.7/test/sortperf.py
+#usr/lib/python2.7/test/sortperf.pyc
+#usr/lib/python2.7/test/sortperf.pyo
+#usr/lib/python2.7/test/ssl_cert.pem
+#usr/lib/python2.7/test/ssl_key.passwd.pem
+#usr/lib/python2.7/test/ssl_key.pem
+#usr/lib/python2.7/test/ssl_servers.py
+#usr/lib/python2.7/test/ssl_servers.pyc
+#usr/lib/python2.7/test/ssl_servers.pyo
+#usr/lib/python2.7/test/string_tests.py
+#usr/lib/python2.7/test/string_tests.pyc
+#usr/lib/python2.7/test/string_tests.pyo
+#usr/lib/python2.7/test/subprocessdata
+#usr/lib/python2.7/test/subprocessdata/sigchild_ignore.py
+#usr/lib/python2.7/test/subprocessdata/sigchild_ignore.pyc
+#usr/lib/python2.7/test/subprocessdata/sigchild_ignore.pyo
+#usr/lib/python2.7/test/symlink_support.py
+#usr/lib/python2.7/test/symlink_support.pyc
+#usr/lib/python2.7/test/symlink_support.pyo
+#usr/lib/python2.7/test/test_MimeWriter.py
+#usr/lib/python2.7/test/test_MimeWriter.pyc
+#usr/lib/python2.7/test/test_MimeWriter.pyo
+#usr/lib/python2.7/test/test_SimpleHTTPServer.py
+#usr/lib/python2.7/test/test_SimpleHTTPServer.pyc
+#usr/lib/python2.7/test/test_SimpleHTTPServer.pyo
+#usr/lib/python2.7/test/test_StringIO.py
+#usr/lib/python2.7/test/test_StringIO.pyc
+#usr/lib/python2.7/test/test_StringIO.pyo
+#usr/lib/python2.7/test/test___all__.py
+#usr/lib/python2.7/test/test___all__.pyc
+#usr/lib/python2.7/test/test___all__.pyo
+#usr/lib/python2.7/test/test___future__.py
+#usr/lib/python2.7/test/test___future__.pyc
+#usr/lib/python2.7/test/test___future__.pyo
+#usr/lib/python2.7/test/test__locale.py
+#usr/lib/python2.7/test/test__locale.pyc
+#usr/lib/python2.7/test/test__locale.pyo
+#usr/lib/python2.7/test/test__osx_support.py
+#usr/lib/python2.7/test/test__osx_support.pyc
+#usr/lib/python2.7/test/test__osx_support.pyo
+#usr/lib/python2.7/test/test_abc.py
+#usr/lib/python2.7/test/test_abc.pyc
+#usr/lib/python2.7/test/test_abc.pyo
+#usr/lib/python2.7/test/test_abstract_numbers.py
+#usr/lib/python2.7/test/test_abstract_numbers.pyc
+#usr/lib/python2.7/test/test_abstract_numbers.pyo
+#usr/lib/python2.7/test/test_aepack.py
+#usr/lib/python2.7/test/test_aepack.pyc
+#usr/lib/python2.7/test/test_aepack.pyo
+#usr/lib/python2.7/test/test_aifc.py
+#usr/lib/python2.7/test/test_aifc.pyc
+#usr/lib/python2.7/test/test_aifc.pyo
+#usr/lib/python2.7/test/test_al.py
+#usr/lib/python2.7/test/test_al.pyc
+#usr/lib/python2.7/test/test_al.pyo
+#usr/lib/python2.7/test/test_anydbm.py
+#usr/lib/python2.7/test/test_anydbm.pyc
+#usr/lib/python2.7/test/test_anydbm.pyo
+#usr/lib/python2.7/test/test_applesingle.py
+#usr/lib/python2.7/test/test_applesingle.pyc
+#usr/lib/python2.7/test/test_applesingle.pyo
+#usr/lib/python2.7/test/test_argparse.py
+#usr/lib/python2.7/test/test_argparse.pyc
+#usr/lib/python2.7/test/test_argparse.pyo
+#usr/lib/python2.7/test/test_array.py
+#usr/lib/python2.7/test/test_array.pyc
+#usr/lib/python2.7/test/test_array.pyo
+#usr/lib/python2.7/test/test_ascii_formatd.py
+#usr/lib/python2.7/test/test_ascii_formatd.pyc
+#usr/lib/python2.7/test/test_ascii_formatd.pyo
+#usr/lib/python2.7/test/test_ast.py
+#usr/lib/python2.7/test/test_ast.pyc
+#usr/lib/python2.7/test/test_ast.pyo
+#usr/lib/python2.7/test/test_asynchat.py
+#usr/lib/python2.7/test/test_asynchat.pyc
+#usr/lib/python2.7/test/test_asynchat.pyo
+#usr/lib/python2.7/test/test_asyncore.py
+#usr/lib/python2.7/test/test_asyncore.pyc
+#usr/lib/python2.7/test/test_asyncore.pyo
+#usr/lib/python2.7/test/test_atexit.py
+#usr/lib/python2.7/test/test_atexit.pyc
+#usr/lib/python2.7/test/test_atexit.pyo
+#usr/lib/python2.7/test/test_audioop.py
+#usr/lib/python2.7/test/test_audioop.pyc
+#usr/lib/python2.7/test/test_audioop.pyo
+#usr/lib/python2.7/test/test_augassign.py
+#usr/lib/python2.7/test/test_augassign.pyc
+#usr/lib/python2.7/test/test_augassign.pyo
+#usr/lib/python2.7/test/test_base64.py
+#usr/lib/python2.7/test/test_base64.pyc
+#usr/lib/python2.7/test/test_base64.pyo
+#usr/lib/python2.7/test/test_bastion.py
+#usr/lib/python2.7/test/test_bastion.pyc
+#usr/lib/python2.7/test/test_bastion.pyo
+#usr/lib/python2.7/test/test_bigaddrspace.py
+#usr/lib/python2.7/test/test_bigaddrspace.pyc
+#usr/lib/python2.7/test/test_bigaddrspace.pyo
+#usr/lib/python2.7/test/test_bigmem.py
+#usr/lib/python2.7/test/test_bigmem.pyc
+#usr/lib/python2.7/test/test_bigmem.pyo
+#usr/lib/python2.7/test/test_binascii.py
+#usr/lib/python2.7/test/test_binascii.pyc
+#usr/lib/python2.7/test/test_binascii.pyo
+#usr/lib/python2.7/test/test_binhex.py
+#usr/lib/python2.7/test/test_binhex.pyc
+#usr/lib/python2.7/test/test_binhex.pyo
+#usr/lib/python2.7/test/test_binop.py
+#usr/lib/python2.7/test/test_binop.pyc
+#usr/lib/python2.7/test/test_binop.pyo
+#usr/lib/python2.7/test/test_bisect.py
+#usr/lib/python2.7/test/test_bisect.pyc
+#usr/lib/python2.7/test/test_bisect.pyo
+#usr/lib/python2.7/test/test_bool.py
+#usr/lib/python2.7/test/test_bool.pyc
+#usr/lib/python2.7/test/test_bool.pyo
+#usr/lib/python2.7/test/test_bsddb.py
+#usr/lib/python2.7/test/test_bsddb.pyc
+#usr/lib/python2.7/test/test_bsddb.pyo
+#usr/lib/python2.7/test/test_bsddb185.py
+#usr/lib/python2.7/test/test_bsddb185.pyc
+#usr/lib/python2.7/test/test_bsddb185.pyo
+#usr/lib/python2.7/test/test_bsddb3.py
+#usr/lib/python2.7/test/test_bsddb3.pyc
+#usr/lib/python2.7/test/test_bsddb3.pyo
+#usr/lib/python2.7/test/test_buffer.py
+#usr/lib/python2.7/test/test_buffer.pyc
+#usr/lib/python2.7/test/test_buffer.pyo
+#usr/lib/python2.7/test/test_bufio.py
+#usr/lib/python2.7/test/test_bufio.pyc
+#usr/lib/python2.7/test/test_bufio.pyo
+#usr/lib/python2.7/test/test_builtin.py
+#usr/lib/python2.7/test/test_builtin.pyc
+#usr/lib/python2.7/test/test_builtin.pyo
+#usr/lib/python2.7/test/test_bytes.py
+#usr/lib/python2.7/test/test_bytes.pyc
+#usr/lib/python2.7/test/test_bytes.pyo
+#usr/lib/python2.7/test/test_bz2.py
+#usr/lib/python2.7/test/test_bz2.pyc
+#usr/lib/python2.7/test/test_bz2.pyo
+#usr/lib/python2.7/test/test_calendar.py
+#usr/lib/python2.7/test/test_calendar.pyc
+#usr/lib/python2.7/test/test_calendar.pyo
+#usr/lib/python2.7/test/test_call.py
+#usr/lib/python2.7/test/test_call.pyc
+#usr/lib/python2.7/test/test_call.pyo
+#usr/lib/python2.7/test/test_capi.py
+#usr/lib/python2.7/test/test_capi.pyc
+#usr/lib/python2.7/test/test_capi.pyo
+#usr/lib/python2.7/test/test_cd.py
+#usr/lib/python2.7/test/test_cd.pyc
+#usr/lib/python2.7/test/test_cd.pyo
+#usr/lib/python2.7/test/test_cfgparser.py
+#usr/lib/python2.7/test/test_cfgparser.pyc
+#usr/lib/python2.7/test/test_cfgparser.pyo
+#usr/lib/python2.7/test/test_cgi.py
+#usr/lib/python2.7/test/test_cgi.pyc
+#usr/lib/python2.7/test/test_cgi.pyo
+#usr/lib/python2.7/test/test_charmapcodec.py
+#usr/lib/python2.7/test/test_charmapcodec.pyc
+#usr/lib/python2.7/test/test_charmapcodec.pyo
+#usr/lib/python2.7/test/test_cl.py
+#usr/lib/python2.7/test/test_cl.pyc
+#usr/lib/python2.7/test/test_cl.pyo
+#usr/lib/python2.7/test/test_class.py
+#usr/lib/python2.7/test/test_class.pyc
+#usr/lib/python2.7/test/test_class.pyo
+#usr/lib/python2.7/test/test_cmath.py
+#usr/lib/python2.7/test/test_cmath.pyc
+#usr/lib/python2.7/test/test_cmath.pyo
+#usr/lib/python2.7/test/test_cmd.py
+#usr/lib/python2.7/test/test_cmd.pyc
+#usr/lib/python2.7/test/test_cmd.pyo
+#usr/lib/python2.7/test/test_cmd_line.py
+#usr/lib/python2.7/test/test_cmd_line.pyc
+#usr/lib/python2.7/test/test_cmd_line.pyo
+#usr/lib/python2.7/test/test_cmd_line_script.py
+#usr/lib/python2.7/test/test_cmd_line_script.pyc
+#usr/lib/python2.7/test/test_cmd_line_script.pyo
+#usr/lib/python2.7/test/test_code.py
+#usr/lib/python2.7/test/test_code.pyc
+#usr/lib/python2.7/test/test_code.pyo
+#usr/lib/python2.7/test/test_codeccallbacks.py
+#usr/lib/python2.7/test/test_codeccallbacks.pyc
+#usr/lib/python2.7/test/test_codeccallbacks.pyo
+#usr/lib/python2.7/test/test_codecencodings_cn.py
+#usr/lib/python2.7/test/test_codecencodings_cn.pyc
+#usr/lib/python2.7/test/test_codecencodings_cn.pyo
+#usr/lib/python2.7/test/test_codecencodings_hk.py
+#usr/lib/python2.7/test/test_codecencodings_hk.pyc
+#usr/lib/python2.7/test/test_codecencodings_hk.pyo
+#usr/lib/python2.7/test/test_codecencodings_iso2022.py
+#usr/lib/python2.7/test/test_codecencodings_iso2022.pyc
+#usr/lib/python2.7/test/test_codecencodings_iso2022.pyo
+#usr/lib/python2.7/test/test_codecencodings_jp.py
+#usr/lib/python2.7/test/test_codecencodings_jp.pyc
+#usr/lib/python2.7/test/test_codecencodings_jp.pyo
+#usr/lib/python2.7/test/test_codecencodings_kr.py
+#usr/lib/python2.7/test/test_codecencodings_kr.pyc
+#usr/lib/python2.7/test/test_codecencodings_kr.pyo
+#usr/lib/python2.7/test/test_codecencodings_tw.py
+#usr/lib/python2.7/test/test_codecencodings_tw.pyc
+#usr/lib/python2.7/test/test_codecencodings_tw.pyo
+#usr/lib/python2.7/test/test_codecmaps_cn.py
+#usr/lib/python2.7/test/test_codecmaps_cn.pyc
+#usr/lib/python2.7/test/test_codecmaps_cn.pyo
+#usr/lib/python2.7/test/test_codecmaps_hk.py
+#usr/lib/python2.7/test/test_codecmaps_hk.pyc
+#usr/lib/python2.7/test/test_codecmaps_hk.pyo
+#usr/lib/python2.7/test/test_codecmaps_jp.py
+#usr/lib/python2.7/test/test_codecmaps_jp.pyc
+#usr/lib/python2.7/test/test_codecmaps_jp.pyo
+#usr/lib/python2.7/test/test_codecmaps_kr.py
+#usr/lib/python2.7/test/test_codecmaps_kr.pyc
+#usr/lib/python2.7/test/test_codecmaps_kr.pyo
+#usr/lib/python2.7/test/test_codecmaps_tw.py
+#usr/lib/python2.7/test/test_codecmaps_tw.pyc
+#usr/lib/python2.7/test/test_codecmaps_tw.pyo
+#usr/lib/python2.7/test/test_codecs.py
+#usr/lib/python2.7/test/test_codecs.pyc
+#usr/lib/python2.7/test/test_codecs.pyo
+#usr/lib/python2.7/test/test_codeop.py
+#usr/lib/python2.7/test/test_codeop.pyc
+#usr/lib/python2.7/test/test_codeop.pyo
+#usr/lib/python2.7/test/test_coding.py
+#usr/lib/python2.7/test/test_coding.pyc
+#usr/lib/python2.7/test/test_coding.pyo
+#usr/lib/python2.7/test/test_coercion.py
+#usr/lib/python2.7/test/test_coercion.pyc
+#usr/lib/python2.7/test/test_coercion.pyo
+#usr/lib/python2.7/test/test_collections.py
+#usr/lib/python2.7/test/test_collections.pyc
+#usr/lib/python2.7/test/test_collections.pyo
+#usr/lib/python2.7/test/test_colorsys.py
+#usr/lib/python2.7/test/test_colorsys.pyc
+#usr/lib/python2.7/test/test_colorsys.pyo
+#usr/lib/python2.7/test/test_commands.py
+#usr/lib/python2.7/test/test_commands.pyc
+#usr/lib/python2.7/test/test_commands.pyo
+#usr/lib/python2.7/test/test_compare.py
+#usr/lib/python2.7/test/test_compare.pyc
+#usr/lib/python2.7/test/test_compare.pyo
+#usr/lib/python2.7/test/test_compile.py
+#usr/lib/python2.7/test/test_compile.pyc
+#usr/lib/python2.7/test/test_compile.pyo
+#usr/lib/python2.7/test/test_compileall.py
+#usr/lib/python2.7/test/test_compileall.pyc
+#usr/lib/python2.7/test/test_compileall.pyo
+#usr/lib/python2.7/test/test_compiler.py
+#usr/lib/python2.7/test/test_compiler.pyc
+#usr/lib/python2.7/test/test_compiler.pyo
+#usr/lib/python2.7/test/test_complex.py
+#usr/lib/python2.7/test/test_complex.pyc
+#usr/lib/python2.7/test/test_complex.pyo
+#usr/lib/python2.7/test/test_complex_args.py
+#usr/lib/python2.7/test/test_complex_args.pyc
+#usr/lib/python2.7/test/test_complex_args.pyo
+#usr/lib/python2.7/test/test_contains.py
+#usr/lib/python2.7/test/test_contains.pyc
+#usr/lib/python2.7/test/test_contains.pyo
+#usr/lib/python2.7/test/test_contextlib.py
+#usr/lib/python2.7/test/test_contextlib.pyc
+#usr/lib/python2.7/test/test_contextlib.pyo
+#usr/lib/python2.7/test/test_cookie.py
+#usr/lib/python2.7/test/test_cookie.pyc
+#usr/lib/python2.7/test/test_cookie.pyo
+#usr/lib/python2.7/test/test_cookielib.py
+#usr/lib/python2.7/test/test_cookielib.pyc
+#usr/lib/python2.7/test/test_cookielib.pyo
+#usr/lib/python2.7/test/test_copy.py
+#usr/lib/python2.7/test/test_copy.pyc
+#usr/lib/python2.7/test/test_copy.pyo
+#usr/lib/python2.7/test/test_copy_reg.py
+#usr/lib/python2.7/test/test_copy_reg.pyc
+#usr/lib/python2.7/test/test_copy_reg.pyo
+#usr/lib/python2.7/test/test_cpickle.py
+#usr/lib/python2.7/test/test_cpickle.pyc
+#usr/lib/python2.7/test/test_cpickle.pyo
+#usr/lib/python2.7/test/test_cprofile.py
+#usr/lib/python2.7/test/test_cprofile.pyc
+#usr/lib/python2.7/test/test_cprofile.pyo
+#usr/lib/python2.7/test/test_crypt.py
+#usr/lib/python2.7/test/test_crypt.pyc
+#usr/lib/python2.7/test/test_crypt.pyo
+#usr/lib/python2.7/test/test_csv.py
+#usr/lib/python2.7/test/test_csv.pyc
+#usr/lib/python2.7/test/test_csv.pyo
+#usr/lib/python2.7/test/test_ctypes.py
+#usr/lib/python2.7/test/test_ctypes.pyc
+#usr/lib/python2.7/test/test_ctypes.pyo
+#usr/lib/python2.7/test/test_curses.py
+#usr/lib/python2.7/test/test_curses.pyc
+#usr/lib/python2.7/test/test_curses.pyo
+#usr/lib/python2.7/test/test_datetime.py
+#usr/lib/python2.7/test/test_datetime.pyc
+#usr/lib/python2.7/test/test_datetime.pyo
+#usr/lib/python2.7/test/test_dbm.py
+#usr/lib/python2.7/test/test_dbm.pyc
+#usr/lib/python2.7/test/test_dbm.pyo
+#usr/lib/python2.7/test/test_decimal.py
+#usr/lib/python2.7/test/test_decimal.pyc
+#usr/lib/python2.7/test/test_decimal.pyo
+#usr/lib/python2.7/test/test_decorators.py
+#usr/lib/python2.7/test/test_decorators.pyc
+#usr/lib/python2.7/test/test_decorators.pyo
+#usr/lib/python2.7/test/test_defaultdict.py
+#usr/lib/python2.7/test/test_defaultdict.pyc
+#usr/lib/python2.7/test/test_defaultdict.pyo
+#usr/lib/python2.7/test/test_deque.py
+#usr/lib/python2.7/test/test_deque.pyc
+#usr/lib/python2.7/test/test_deque.pyo
+#usr/lib/python2.7/test/test_descr.py
+#usr/lib/python2.7/test/test_descr.pyc
+#usr/lib/python2.7/test/test_descr.pyo
+#usr/lib/python2.7/test/test_descrtut.py
+#usr/lib/python2.7/test/test_descrtut.pyc
+#usr/lib/python2.7/test/test_descrtut.pyo
+#usr/lib/python2.7/test/test_dict.py
+#usr/lib/python2.7/test/test_dict.pyc
+#usr/lib/python2.7/test/test_dict.pyo
+#usr/lib/python2.7/test/test_dictcomps.py
+#usr/lib/python2.7/test/test_dictcomps.pyc
+#usr/lib/python2.7/test/test_dictcomps.pyo
+#usr/lib/python2.7/test/test_dictviews.py
+#usr/lib/python2.7/test/test_dictviews.pyc
+#usr/lib/python2.7/test/test_dictviews.pyo
+#usr/lib/python2.7/test/test_difflib.py
+#usr/lib/python2.7/test/test_difflib.pyc
+#usr/lib/python2.7/test/test_difflib.pyo
+#usr/lib/python2.7/test/test_difflib_expect.html
+#usr/lib/python2.7/test/test_dircache.py
+#usr/lib/python2.7/test/test_dircache.pyc
+#usr/lib/python2.7/test/test_dircache.pyo
+#usr/lib/python2.7/test/test_dis.py
+#usr/lib/python2.7/test/test_dis.pyc
+#usr/lib/python2.7/test/test_dis.pyo
+#usr/lib/python2.7/test/test_distutils.py
+#usr/lib/python2.7/test/test_distutils.pyc
+#usr/lib/python2.7/test/test_distutils.pyo
+#usr/lib/python2.7/test/test_dl.py
+#usr/lib/python2.7/test/test_dl.pyc
+#usr/lib/python2.7/test/test_dl.pyo
+#usr/lib/python2.7/test/test_doctest.py
+#usr/lib/python2.7/test/test_doctest.pyc
+#usr/lib/python2.7/test/test_doctest.pyo
+#usr/lib/python2.7/test/test_doctest.txt
+#usr/lib/python2.7/test/test_doctest2.py
+#usr/lib/python2.7/test/test_doctest2.pyc
+#usr/lib/python2.7/test/test_doctest2.pyo
+#usr/lib/python2.7/test/test_doctest2.txt
+#usr/lib/python2.7/test/test_doctest3.txt
+#usr/lib/python2.7/test/test_doctest4.txt
+#usr/lib/python2.7/test/test_docxmlrpc.py
+#usr/lib/python2.7/test/test_docxmlrpc.pyc
+#usr/lib/python2.7/test/test_docxmlrpc.pyo
+#usr/lib/python2.7/test/test_dumbdbm.py
+#usr/lib/python2.7/test/test_dumbdbm.pyc
+#usr/lib/python2.7/test/test_dumbdbm.pyo
+#usr/lib/python2.7/test/test_dummy_thread.py
+#usr/lib/python2.7/test/test_dummy_thread.pyc
+#usr/lib/python2.7/test/test_dummy_thread.pyo
+#usr/lib/python2.7/test/test_dummy_threading.py
+#usr/lib/python2.7/test/test_dummy_threading.pyc
+#usr/lib/python2.7/test/test_dummy_threading.pyo
+#usr/lib/python2.7/test/test_email.py
+#usr/lib/python2.7/test/test_email.pyc
+#usr/lib/python2.7/test/test_email.pyo
+#usr/lib/python2.7/test/test_email_codecs.py
+#usr/lib/python2.7/test/test_email_codecs.pyc
+#usr/lib/python2.7/test/test_email_codecs.pyo
+#usr/lib/python2.7/test/test_email_renamed.py
+#usr/lib/python2.7/test/test_email_renamed.pyc
+#usr/lib/python2.7/test/test_email_renamed.pyo
+#usr/lib/python2.7/test/test_ensurepip.py
+#usr/lib/python2.7/test/test_ensurepip.pyc
+#usr/lib/python2.7/test/test_ensurepip.pyo
+#usr/lib/python2.7/test/test_enumerate.py
+#usr/lib/python2.7/test/test_enumerate.pyc
+#usr/lib/python2.7/test/test_enumerate.pyo
+#usr/lib/python2.7/test/test_eof.py
+#usr/lib/python2.7/test/test_eof.pyc
+#usr/lib/python2.7/test/test_eof.pyo
+#usr/lib/python2.7/test/test_epoll.py
+#usr/lib/python2.7/test/test_epoll.pyc
+#usr/lib/python2.7/test/test_epoll.pyo
+#usr/lib/python2.7/test/test_errno.py
+#usr/lib/python2.7/test/test_errno.pyc
+#usr/lib/python2.7/test/test_errno.pyo
+#usr/lib/python2.7/test/test_exception_variations.py
+#usr/lib/python2.7/test/test_exception_variations.pyc
+#usr/lib/python2.7/test/test_exception_variations.pyo
+#usr/lib/python2.7/test/test_exceptions.py
+#usr/lib/python2.7/test/test_exceptions.pyc
+#usr/lib/python2.7/test/test_exceptions.pyo
+#usr/lib/python2.7/test/test_extcall.py
+#usr/lib/python2.7/test/test_extcall.pyc
+#usr/lib/python2.7/test/test_extcall.pyo
+#usr/lib/python2.7/test/test_fcntl.py
+#usr/lib/python2.7/test/test_fcntl.pyc
+#usr/lib/python2.7/test/test_fcntl.pyo
+#usr/lib/python2.7/test/test_file.py
+#usr/lib/python2.7/test/test_file.pyc
+#usr/lib/python2.7/test/test_file.pyo
+#usr/lib/python2.7/test/test_file2k.py
+#usr/lib/python2.7/test/test_file2k.pyc
+#usr/lib/python2.7/test/test_file2k.pyo
+#usr/lib/python2.7/test/test_file_eintr.py
+#usr/lib/python2.7/test/test_file_eintr.pyc
+#usr/lib/python2.7/test/test_file_eintr.pyo
+#usr/lib/python2.7/test/test_filecmp.py
+#usr/lib/python2.7/test/test_filecmp.pyc
+#usr/lib/python2.7/test/test_filecmp.pyo
+#usr/lib/python2.7/test/test_fileinput.py
+#usr/lib/python2.7/test/test_fileinput.pyc
+#usr/lib/python2.7/test/test_fileinput.pyo
+#usr/lib/python2.7/test/test_fileio.py
+#usr/lib/python2.7/test/test_fileio.pyc
+#usr/lib/python2.7/test/test_fileio.pyo
+#usr/lib/python2.7/test/test_float.py
+#usr/lib/python2.7/test/test_float.pyc
+#usr/lib/python2.7/test/test_float.pyo
+#usr/lib/python2.7/test/test_fnmatch.py
+#usr/lib/python2.7/test/test_fnmatch.pyc
+#usr/lib/python2.7/test/test_fnmatch.pyo
+#usr/lib/python2.7/test/test_fork1.py
+#usr/lib/python2.7/test/test_fork1.pyc
+#usr/lib/python2.7/test/test_fork1.pyo
+#usr/lib/python2.7/test/test_format.py
+#usr/lib/python2.7/test/test_format.pyc
+#usr/lib/python2.7/test/test_format.pyo
+#usr/lib/python2.7/test/test_fpformat.py
+#usr/lib/python2.7/test/test_fpformat.pyc
+#usr/lib/python2.7/test/test_fpformat.pyo
+#usr/lib/python2.7/test/test_fractions.py
+#usr/lib/python2.7/test/test_fractions.pyc
+#usr/lib/python2.7/test/test_fractions.pyo
+#usr/lib/python2.7/test/test_frozen.py
+#usr/lib/python2.7/test/test_frozen.pyc
+#usr/lib/python2.7/test/test_frozen.pyo
+#usr/lib/python2.7/test/test_ftplib.py
+#usr/lib/python2.7/test/test_ftplib.pyc
+#usr/lib/python2.7/test/test_ftplib.pyo
+#usr/lib/python2.7/test/test_funcattrs.py
+#usr/lib/python2.7/test/test_funcattrs.pyc
+#usr/lib/python2.7/test/test_funcattrs.pyo
+#usr/lib/python2.7/test/test_functools.py
+#usr/lib/python2.7/test/test_functools.pyc
+#usr/lib/python2.7/test/test_functools.pyo
+#usr/lib/python2.7/test/test_future.py
+#usr/lib/python2.7/test/test_future.pyc
+#usr/lib/python2.7/test/test_future.pyo
+#usr/lib/python2.7/test/test_future1.py
+#usr/lib/python2.7/test/test_future1.pyc
+#usr/lib/python2.7/test/test_future1.pyo
+#usr/lib/python2.7/test/test_future2.py
+#usr/lib/python2.7/test/test_future2.pyc
+#usr/lib/python2.7/test/test_future2.pyo
+#usr/lib/python2.7/test/test_future3.py
+#usr/lib/python2.7/test/test_future3.pyc
+#usr/lib/python2.7/test/test_future3.pyo
+#usr/lib/python2.7/test/test_future4.py
+#usr/lib/python2.7/test/test_future4.pyc
+#usr/lib/python2.7/test/test_future4.pyo
+#usr/lib/python2.7/test/test_future5.py
+#usr/lib/python2.7/test/test_future5.pyc
+#usr/lib/python2.7/test/test_future5.pyo
+#usr/lib/python2.7/test/test_future_builtins.py
+#usr/lib/python2.7/test/test_future_builtins.pyc
+#usr/lib/python2.7/test/test_future_builtins.pyo
+#usr/lib/python2.7/test/test_gc.py
+#usr/lib/python2.7/test/test_gc.pyc
+#usr/lib/python2.7/test/test_gc.pyo
+#usr/lib/python2.7/test/test_gdb.py
+#usr/lib/python2.7/test/test_gdb.pyc
+#usr/lib/python2.7/test/test_gdb.pyo
+#usr/lib/python2.7/test/test_gdbm.py
+#usr/lib/python2.7/test/test_gdbm.pyc
+#usr/lib/python2.7/test/test_gdbm.pyo
+#usr/lib/python2.7/test/test_generators.py
+#usr/lib/python2.7/test/test_generators.pyc
+#usr/lib/python2.7/test/test_generators.pyo
+#usr/lib/python2.7/test/test_genericpath.py
+#usr/lib/python2.7/test/test_genericpath.pyc
+#usr/lib/python2.7/test/test_genericpath.pyo
+#usr/lib/python2.7/test/test_genexps.py
+#usr/lib/python2.7/test/test_genexps.pyc
+#usr/lib/python2.7/test/test_genexps.pyo
+#usr/lib/python2.7/test/test_getargs.py
+#usr/lib/python2.7/test/test_getargs.pyc
+#usr/lib/python2.7/test/test_getargs.pyo
+#usr/lib/python2.7/test/test_getargs2.py
+#usr/lib/python2.7/test/test_getargs2.pyc
+#usr/lib/python2.7/test/test_getargs2.pyo
+#usr/lib/python2.7/test/test_getopt.py
+#usr/lib/python2.7/test/test_getopt.pyc
+#usr/lib/python2.7/test/test_getopt.pyo
+#usr/lib/python2.7/test/test_gettext.py
+#usr/lib/python2.7/test/test_gettext.pyc
+#usr/lib/python2.7/test/test_gettext.pyo
+#usr/lib/python2.7/test/test_gl.py
+#usr/lib/python2.7/test/test_gl.pyc
+#usr/lib/python2.7/test/test_gl.pyo
+#usr/lib/python2.7/test/test_glob.py
+#usr/lib/python2.7/test/test_glob.pyc
+#usr/lib/python2.7/test/test_glob.pyo
+#usr/lib/python2.7/test/test_global.py
+#usr/lib/python2.7/test/test_global.pyc
+#usr/lib/python2.7/test/test_global.pyo
+#usr/lib/python2.7/test/test_grammar.py
+#usr/lib/python2.7/test/test_grammar.pyc
+#usr/lib/python2.7/test/test_grammar.pyo
+#usr/lib/python2.7/test/test_grp.py
+#usr/lib/python2.7/test/test_grp.pyc
+#usr/lib/python2.7/test/test_grp.pyo
+#usr/lib/python2.7/test/test_gzip.py
+#usr/lib/python2.7/test/test_gzip.pyc
+#usr/lib/python2.7/test/test_gzip.pyo
+#usr/lib/python2.7/test/test_hash.py
+#usr/lib/python2.7/test/test_hash.pyc
+#usr/lib/python2.7/test/test_hash.pyo
+#usr/lib/python2.7/test/test_hashlib.py
+#usr/lib/python2.7/test/test_hashlib.pyc
+#usr/lib/python2.7/test/test_hashlib.pyo
+#usr/lib/python2.7/test/test_heapq.py
+#usr/lib/python2.7/test/test_heapq.pyc
+#usr/lib/python2.7/test/test_heapq.pyo
+#usr/lib/python2.7/test/test_hmac.py
+#usr/lib/python2.7/test/test_hmac.pyc
+#usr/lib/python2.7/test/test_hmac.pyo
+#usr/lib/python2.7/test/test_hotshot.py
+#usr/lib/python2.7/test/test_hotshot.pyc
+#usr/lib/python2.7/test/test_hotshot.pyo
+#usr/lib/python2.7/test/test_htmllib.py
+#usr/lib/python2.7/test/test_htmllib.pyc
+#usr/lib/python2.7/test/test_htmllib.pyo
+#usr/lib/python2.7/test/test_htmlparser.py
+#usr/lib/python2.7/test/test_htmlparser.pyc
+#usr/lib/python2.7/test/test_htmlparser.pyo
+#usr/lib/python2.7/test/test_httplib.py
+#usr/lib/python2.7/test/test_httplib.pyc
+#usr/lib/python2.7/test/test_httplib.pyo
+#usr/lib/python2.7/test/test_httpservers.py
+#usr/lib/python2.7/test/test_httpservers.pyc
+#usr/lib/python2.7/test/test_httpservers.pyo
+#usr/lib/python2.7/test/test_idle.py
+#usr/lib/python2.7/test/test_idle.pyc
+#usr/lib/python2.7/test/test_idle.pyo
+#usr/lib/python2.7/test/test_imageop.py
+#usr/lib/python2.7/test/test_imageop.pyc
+#usr/lib/python2.7/test/test_imageop.pyo
+#usr/lib/python2.7/test/test_imaplib.py
+#usr/lib/python2.7/test/test_imaplib.pyc
+#usr/lib/python2.7/test/test_imaplib.pyo
+#usr/lib/python2.7/test/test_imgfile.py
+#usr/lib/python2.7/test/test_imgfile.pyc
+#usr/lib/python2.7/test/test_imgfile.pyo
+#usr/lib/python2.7/test/test_imghdr.py
+#usr/lib/python2.7/test/test_imghdr.pyc
+#usr/lib/python2.7/test/test_imghdr.pyo
+#usr/lib/python2.7/test/test_imp.py
+#usr/lib/python2.7/test/test_imp.pyc
+#usr/lib/python2.7/test/test_imp.pyo
+#usr/lib/python2.7/test/test_import.py
+#usr/lib/python2.7/test/test_import.pyc
+#usr/lib/python2.7/test/test_import.pyo
+#usr/lib/python2.7/test/test_importhooks.py
+#usr/lib/python2.7/test/test_importhooks.pyc
+#usr/lib/python2.7/test/test_importhooks.pyo
+#usr/lib/python2.7/test/test_importlib.py
+#usr/lib/python2.7/test/test_importlib.pyc
+#usr/lib/python2.7/test/test_importlib.pyo
+#usr/lib/python2.7/test/test_index.py
+#usr/lib/python2.7/test/test_index.pyc
+#usr/lib/python2.7/test/test_index.pyo
+#usr/lib/python2.7/test/test_inspect.py
+#usr/lib/python2.7/test/test_inspect.pyc
+#usr/lib/python2.7/test/test_inspect.pyo
+#usr/lib/python2.7/test/test_int.py
+#usr/lib/python2.7/test/test_int.pyc
+#usr/lib/python2.7/test/test_int.pyo
+#usr/lib/python2.7/test/test_int_literal.py
+#usr/lib/python2.7/test/test_int_literal.pyc
+#usr/lib/python2.7/test/test_int_literal.pyo
+#usr/lib/python2.7/test/test_io.py
+#usr/lib/python2.7/test/test_io.pyc
+#usr/lib/python2.7/test/test_io.pyo
+#usr/lib/python2.7/test/test_ioctl.py
+#usr/lib/python2.7/test/test_ioctl.pyc
+#usr/lib/python2.7/test/test_ioctl.pyo
+#usr/lib/python2.7/test/test_isinstance.py
+#usr/lib/python2.7/test/test_isinstance.pyc
+#usr/lib/python2.7/test/test_isinstance.pyo
+#usr/lib/python2.7/test/test_iter.py
+#usr/lib/python2.7/test/test_iter.pyc
+#usr/lib/python2.7/test/test_iter.pyo
+#usr/lib/python2.7/test/test_iterlen.py
+#usr/lib/python2.7/test/test_iterlen.pyc
+#usr/lib/python2.7/test/test_iterlen.pyo
+#usr/lib/python2.7/test/test_itertools.py
+#usr/lib/python2.7/test/test_itertools.pyc
+#usr/lib/python2.7/test/test_itertools.pyo
+#usr/lib/python2.7/test/test_json.py
+#usr/lib/python2.7/test/test_json.pyc
+#usr/lib/python2.7/test/test_json.pyo
+#usr/lib/python2.7/test/test_kqueue.py
+#usr/lib/python2.7/test/test_kqueue.pyc
+#usr/lib/python2.7/test/test_kqueue.pyo
+#usr/lib/python2.7/test/test_largefile.py
+#usr/lib/python2.7/test/test_largefile.pyc
+#usr/lib/python2.7/test/test_largefile.pyo
+#usr/lib/python2.7/test/test_lib2to3.py
+#usr/lib/python2.7/test/test_lib2to3.pyc
+#usr/lib/python2.7/test/test_lib2to3.pyo
+#usr/lib/python2.7/test/test_linecache.py
+#usr/lib/python2.7/test/test_linecache.pyc
+#usr/lib/python2.7/test/test_linecache.pyo
+#usr/lib/python2.7/test/test_linuxaudiodev.py
+#usr/lib/python2.7/test/test_linuxaudiodev.pyc
+#usr/lib/python2.7/test/test_linuxaudiodev.pyo
+#usr/lib/python2.7/test/test_list.py
+#usr/lib/python2.7/test/test_list.pyc
+#usr/lib/python2.7/test/test_list.pyo
+#usr/lib/python2.7/test/test_locale.py
+#usr/lib/python2.7/test/test_locale.pyc
+#usr/lib/python2.7/test/test_locale.pyo
+#usr/lib/python2.7/test/test_logging.py
+#usr/lib/python2.7/test/test_logging.pyc
+#usr/lib/python2.7/test/test_logging.pyo
+#usr/lib/python2.7/test/test_long.py
+#usr/lib/python2.7/test/test_long.pyc
+#usr/lib/python2.7/test/test_long.pyo
+#usr/lib/python2.7/test/test_long_future.py
+#usr/lib/python2.7/test/test_long_future.pyc
+#usr/lib/python2.7/test/test_long_future.pyo
+#usr/lib/python2.7/test/test_longexp.py
+#usr/lib/python2.7/test/test_longexp.pyc
+#usr/lib/python2.7/test/test_longexp.pyo
+#usr/lib/python2.7/test/test_macos.py
+#usr/lib/python2.7/test/test_macos.pyc
+#usr/lib/python2.7/test/test_macos.pyo
+#usr/lib/python2.7/test/test_macostools.py
+#usr/lib/python2.7/test/test_macostools.pyc
+#usr/lib/python2.7/test/test_macostools.pyo
+#usr/lib/python2.7/test/test_macpath.py
+#usr/lib/python2.7/test/test_macpath.pyc
+#usr/lib/python2.7/test/test_macpath.pyo
+#usr/lib/python2.7/test/test_macurl2path.py
+#usr/lib/python2.7/test/test_macurl2path.pyc
+#usr/lib/python2.7/test/test_macurl2path.pyo
+#usr/lib/python2.7/test/test_mailbox.py
+#usr/lib/python2.7/test/test_mailbox.pyc
+#usr/lib/python2.7/test/test_mailbox.pyo
+#usr/lib/python2.7/test/test_marshal.py
+#usr/lib/python2.7/test/test_marshal.pyc
+#usr/lib/python2.7/test/test_marshal.pyo
+#usr/lib/python2.7/test/test_math.py
+#usr/lib/python2.7/test/test_math.pyc
+#usr/lib/python2.7/test/test_math.pyo
+#usr/lib/python2.7/test/test_md5.py
+#usr/lib/python2.7/test/test_md5.pyc
+#usr/lib/python2.7/test/test_md5.pyo
+#usr/lib/python2.7/test/test_memoryio.py
+#usr/lib/python2.7/test/test_memoryio.pyc
+#usr/lib/python2.7/test/test_memoryio.pyo
+#usr/lib/python2.7/test/test_memoryview.py
+#usr/lib/python2.7/test/test_memoryview.pyc
+#usr/lib/python2.7/test/test_memoryview.pyo
+#usr/lib/python2.7/test/test_mhlib.py
+#usr/lib/python2.7/test/test_mhlib.pyc
+#usr/lib/python2.7/test/test_mhlib.pyo
+#usr/lib/python2.7/test/test_mimetools.py
+#usr/lib/python2.7/test/test_mimetools.pyc
+#usr/lib/python2.7/test/test_mimetools.pyo
+#usr/lib/python2.7/test/test_mimetypes.py
+#usr/lib/python2.7/test/test_mimetypes.pyc
+#usr/lib/python2.7/test/test_mimetypes.pyo
+#usr/lib/python2.7/test/test_minidom.py
+#usr/lib/python2.7/test/test_minidom.pyc
+#usr/lib/python2.7/test/test_minidom.pyo
+#usr/lib/python2.7/test/test_mmap.py
+#usr/lib/python2.7/test/test_mmap.pyc
+#usr/lib/python2.7/test/test_mmap.pyo
+#usr/lib/python2.7/test/test_module.py
+#usr/lib/python2.7/test/test_module.pyc
+#usr/lib/python2.7/test/test_module.pyo
+#usr/lib/python2.7/test/test_modulefinder.py
+#usr/lib/python2.7/test/test_modulefinder.pyc
+#usr/lib/python2.7/test/test_modulefinder.pyo
+#usr/lib/python2.7/test/test_msilib.py
+#usr/lib/python2.7/test/test_msilib.pyc
+#usr/lib/python2.7/test/test_msilib.pyo
+#usr/lib/python2.7/test/test_multibytecodec.py
+#usr/lib/python2.7/test/test_multibytecodec.pyc
+#usr/lib/python2.7/test/test_multibytecodec.pyo
+#usr/lib/python2.7/test/test_multibytecodec_support.py
+#usr/lib/python2.7/test/test_multibytecodec_support.pyc
+#usr/lib/python2.7/test/test_multibytecodec_support.pyo
+#usr/lib/python2.7/test/test_multifile.py
+#usr/lib/python2.7/test/test_multifile.pyc
+#usr/lib/python2.7/test/test_multifile.pyo
+#usr/lib/python2.7/test/test_multiprocessing.py
+#usr/lib/python2.7/test/test_multiprocessing.pyc
+#usr/lib/python2.7/test/test_multiprocessing.pyo
+#usr/lib/python2.7/test/test_mutants.py
+#usr/lib/python2.7/test/test_mutants.pyc
+#usr/lib/python2.7/test/test_mutants.pyo
+#usr/lib/python2.7/test/test_mutex.py
+#usr/lib/python2.7/test/test_mutex.pyc
+#usr/lib/python2.7/test/test_mutex.pyo
+#usr/lib/python2.7/test/test_netrc.py
+#usr/lib/python2.7/test/test_netrc.pyc
+#usr/lib/python2.7/test/test_netrc.pyo
+#usr/lib/python2.7/test/test_new.py
+#usr/lib/python2.7/test/test_new.pyc
+#usr/lib/python2.7/test/test_new.pyo
+#usr/lib/python2.7/test/test_nis.py
+#usr/lib/python2.7/test/test_nis.pyc
+#usr/lib/python2.7/test/test_nis.pyo
+#usr/lib/python2.7/test/test_nntplib.py
+#usr/lib/python2.7/test/test_nntplib.pyc
+#usr/lib/python2.7/test/test_nntplib.pyo
+#usr/lib/python2.7/test/test_normalization.py
+#usr/lib/python2.7/test/test_normalization.pyc
+#usr/lib/python2.7/test/test_normalization.pyo
+#usr/lib/python2.7/test/test_ntpath.py
+#usr/lib/python2.7/test/test_ntpath.pyc
+#usr/lib/python2.7/test/test_ntpath.pyo
+#usr/lib/python2.7/test/test_old_mailbox.py
+#usr/lib/python2.7/test/test_old_mailbox.pyc
+#usr/lib/python2.7/test/test_old_mailbox.pyo
+#usr/lib/python2.7/test/test_opcodes.py
+#usr/lib/python2.7/test/test_opcodes.pyc
+#usr/lib/python2.7/test/test_opcodes.pyo
+#usr/lib/python2.7/test/test_openpty.py
+#usr/lib/python2.7/test/test_openpty.pyc
+#usr/lib/python2.7/test/test_openpty.pyo
+#usr/lib/python2.7/test/test_operator.py
+#usr/lib/python2.7/test/test_operator.pyc
+#usr/lib/python2.7/test/test_operator.pyo
+#usr/lib/python2.7/test/test_optparse.py
+#usr/lib/python2.7/test/test_optparse.pyc
+#usr/lib/python2.7/test/test_optparse.pyo
+#usr/lib/python2.7/test/test_os.py
+#usr/lib/python2.7/test/test_os.pyc
+#usr/lib/python2.7/test/test_os.pyo
+#usr/lib/python2.7/test/test_ossaudiodev.py
+#usr/lib/python2.7/test/test_ossaudiodev.pyc
+#usr/lib/python2.7/test/test_ossaudiodev.pyo
+#usr/lib/python2.7/test/test_parser.py
+#usr/lib/python2.7/test/test_parser.pyc
+#usr/lib/python2.7/test/test_parser.pyo
+#usr/lib/python2.7/test/test_pdb.py
+#usr/lib/python2.7/test/test_pdb.pyc
+#usr/lib/python2.7/test/test_pdb.pyo
+#usr/lib/python2.7/test/test_peepholer.py
+#usr/lib/python2.7/test/test_peepholer.pyc
+#usr/lib/python2.7/test/test_peepholer.pyo
+#usr/lib/python2.7/test/test_pep247.py
+#usr/lib/python2.7/test/test_pep247.pyc
+#usr/lib/python2.7/test/test_pep247.pyo
+#usr/lib/python2.7/test/test_pep263.py
+#usr/lib/python2.7/test/test_pep263.pyc
+#usr/lib/python2.7/test/test_pep263.pyo
+#usr/lib/python2.7/test/test_pep277.py
+#usr/lib/python2.7/test/test_pep277.pyc
+#usr/lib/python2.7/test/test_pep277.pyo
+#usr/lib/python2.7/test/test_pep292.py
+#usr/lib/python2.7/test/test_pep292.pyc
+#usr/lib/python2.7/test/test_pep292.pyo
+#usr/lib/python2.7/test/test_pep352.py
+#usr/lib/python2.7/test/test_pep352.pyc
+#usr/lib/python2.7/test/test_pep352.pyo
+#usr/lib/python2.7/test/test_pickle.py
+#usr/lib/python2.7/test/test_pickle.pyc
+#usr/lib/python2.7/test/test_pickle.pyo
+#usr/lib/python2.7/test/test_pickletools.py
+#usr/lib/python2.7/test/test_pickletools.pyc
+#usr/lib/python2.7/test/test_pickletools.pyo
+#usr/lib/python2.7/test/test_pipes.py
+#usr/lib/python2.7/test/test_pipes.pyc
+#usr/lib/python2.7/test/test_pipes.pyo
+#usr/lib/python2.7/test/test_pkg.py
+#usr/lib/python2.7/test/test_pkg.pyc
+#usr/lib/python2.7/test/test_pkg.pyo
+#usr/lib/python2.7/test/test_pkgimport.py
+#usr/lib/python2.7/test/test_pkgimport.pyc
+#usr/lib/python2.7/test/test_pkgimport.pyo
+#usr/lib/python2.7/test/test_pkgutil.py
+#usr/lib/python2.7/test/test_pkgutil.pyc
+#usr/lib/python2.7/test/test_pkgutil.pyo
+#usr/lib/python2.7/test/test_platform.py
+#usr/lib/python2.7/test/test_platform.pyc
+#usr/lib/python2.7/test/test_platform.pyo
+#usr/lib/python2.7/test/test_plistlib.py
+#usr/lib/python2.7/test/test_plistlib.pyc
+#usr/lib/python2.7/test/test_plistlib.pyo
+#usr/lib/python2.7/test/test_poll.py
+#usr/lib/python2.7/test/test_poll.pyc
+#usr/lib/python2.7/test/test_poll.pyo
+#usr/lib/python2.7/test/test_popen.py
+#usr/lib/python2.7/test/test_popen.pyc
+#usr/lib/python2.7/test/test_popen.pyo
+#usr/lib/python2.7/test/test_popen2.py
+#usr/lib/python2.7/test/test_popen2.pyc
+#usr/lib/python2.7/test/test_popen2.pyo
+#usr/lib/python2.7/test/test_poplib.py
+#usr/lib/python2.7/test/test_poplib.pyc
+#usr/lib/python2.7/test/test_poplib.pyo
+#usr/lib/python2.7/test/test_posix.py
+#usr/lib/python2.7/test/test_posix.pyc
+#usr/lib/python2.7/test/test_posix.pyo
+#usr/lib/python2.7/test/test_posixpath.py
+#usr/lib/python2.7/test/test_posixpath.pyc
+#usr/lib/python2.7/test/test_posixpath.pyo
+#usr/lib/python2.7/test/test_pow.py
+#usr/lib/python2.7/test/test_pow.pyc
+#usr/lib/python2.7/test/test_pow.pyo
+#usr/lib/python2.7/test/test_pprint.py
+#usr/lib/python2.7/test/test_pprint.pyc
+#usr/lib/python2.7/test/test_pprint.pyo
+#usr/lib/python2.7/test/test_print.py
+#usr/lib/python2.7/test/test_print.pyc
+#usr/lib/python2.7/test/test_print.pyo
+#usr/lib/python2.7/test/test_profile.py
+#usr/lib/python2.7/test/test_profile.pyc
+#usr/lib/python2.7/test/test_profile.pyo
+#usr/lib/python2.7/test/test_property.py
+#usr/lib/python2.7/test/test_property.pyc
+#usr/lib/python2.7/test/test_property.pyo
+#usr/lib/python2.7/test/test_pstats.py
+#usr/lib/python2.7/test/test_pstats.pyc
+#usr/lib/python2.7/test/test_pstats.pyo
+#usr/lib/python2.7/test/test_pty.py
+#usr/lib/python2.7/test/test_pty.pyc
+#usr/lib/python2.7/test/test_pty.pyo
+#usr/lib/python2.7/test/test_pwd.py
+#usr/lib/python2.7/test/test_pwd.pyc
+#usr/lib/python2.7/test/test_pwd.pyo
+#usr/lib/python2.7/test/test_py3kwarn.py
+#usr/lib/python2.7/test/test_py3kwarn.pyc
+#usr/lib/python2.7/test/test_py3kwarn.pyo
+#usr/lib/python2.7/test/test_py_compile.py
+#usr/lib/python2.7/test/test_py_compile.pyc
+#usr/lib/python2.7/test/test_py_compile.pyo
+#usr/lib/python2.7/test/test_pyclbr.py
+#usr/lib/python2.7/test/test_pyclbr.pyc
+#usr/lib/python2.7/test/test_pyclbr.pyo
+#usr/lib/python2.7/test/test_pydoc.py
+#usr/lib/python2.7/test/test_pydoc.pyc
+#usr/lib/python2.7/test/test_pydoc.pyo
+#usr/lib/python2.7/test/test_pyexpat.py
+#usr/lib/python2.7/test/test_pyexpat.pyc
+#usr/lib/python2.7/test/test_pyexpat.pyo
+#usr/lib/python2.7/test/test_queue.py
+#usr/lib/python2.7/test/test_queue.pyc
+#usr/lib/python2.7/test/test_queue.pyo
+#usr/lib/python2.7/test/test_quopri.py
+#usr/lib/python2.7/test/test_quopri.pyc
+#usr/lib/python2.7/test/test_quopri.pyo
+#usr/lib/python2.7/test/test_random.py
+#usr/lib/python2.7/test/test_random.pyc
+#usr/lib/python2.7/test/test_random.pyo
+#usr/lib/python2.7/test/test_re.py
+#usr/lib/python2.7/test/test_re.pyc
+#usr/lib/python2.7/test/test_re.pyo
+#usr/lib/python2.7/test/test_readline.py
+#usr/lib/python2.7/test/test_readline.pyc
+#usr/lib/python2.7/test/test_readline.pyo
+#usr/lib/python2.7/test/test_repr.py
+#usr/lib/python2.7/test/test_repr.pyc
+#usr/lib/python2.7/test/test_repr.pyo
+#usr/lib/python2.7/test/test_resource.py
+#usr/lib/python2.7/test/test_resource.pyc
+#usr/lib/python2.7/test/test_resource.pyo
+#usr/lib/python2.7/test/test_rfc822.py
+#usr/lib/python2.7/test/test_rfc822.pyc
+#usr/lib/python2.7/test/test_rfc822.pyo
+#usr/lib/python2.7/test/test_richcmp.py
+#usr/lib/python2.7/test/test_richcmp.pyc
+#usr/lib/python2.7/test/test_richcmp.pyo
+#usr/lib/python2.7/test/test_rlcompleter.py
+#usr/lib/python2.7/test/test_rlcompleter.pyc
+#usr/lib/python2.7/test/test_rlcompleter.pyo
+#usr/lib/python2.7/test/test_robotparser.py
+#usr/lib/python2.7/test/test_robotparser.pyc
+#usr/lib/python2.7/test/test_robotparser.pyo
+#usr/lib/python2.7/test/test_runpy.py
+#usr/lib/python2.7/test/test_runpy.pyc
+#usr/lib/python2.7/test/test_runpy.pyo
+#usr/lib/python2.7/test/test_sax.py
+#usr/lib/python2.7/test/test_sax.pyc
+#usr/lib/python2.7/test/test_sax.pyo
+#usr/lib/python2.7/test/test_scope.py
+#usr/lib/python2.7/test/test_scope.pyc
+#usr/lib/python2.7/test/test_scope.pyo
+#usr/lib/python2.7/test/test_scriptpackages.py
+#usr/lib/python2.7/test/test_scriptpackages.pyc
+#usr/lib/python2.7/test/test_scriptpackages.pyo
+#usr/lib/python2.7/test/test_select.py
+#usr/lib/python2.7/test/test_select.pyc
+#usr/lib/python2.7/test/test_select.pyo
+#usr/lib/python2.7/test/test_set.py
+#usr/lib/python2.7/test/test_set.pyc
+#usr/lib/python2.7/test/test_set.pyo
+#usr/lib/python2.7/test/test_setcomps.py
+#usr/lib/python2.7/test/test_setcomps.pyc
+#usr/lib/python2.7/test/test_setcomps.pyo
+#usr/lib/python2.7/test/test_sets.py
+#usr/lib/python2.7/test/test_sets.pyc
+#usr/lib/python2.7/test/test_sets.pyo
+#usr/lib/python2.7/test/test_sgmllib.py
+#usr/lib/python2.7/test/test_sgmllib.pyc
+#usr/lib/python2.7/test/test_sgmllib.pyo
+#usr/lib/python2.7/test/test_sha.py
+#usr/lib/python2.7/test/test_sha.pyc
+#usr/lib/python2.7/test/test_sha.pyo
+#usr/lib/python2.7/test/test_shelve.py
+#usr/lib/python2.7/test/test_shelve.pyc
+#usr/lib/python2.7/test/test_shelve.pyo
+#usr/lib/python2.7/test/test_shlex.py
+#usr/lib/python2.7/test/test_shlex.pyc
+#usr/lib/python2.7/test/test_shlex.pyo
+#usr/lib/python2.7/test/test_shutil.py
+#usr/lib/python2.7/test/test_shutil.pyc
+#usr/lib/python2.7/test/test_shutil.pyo
+#usr/lib/python2.7/test/test_signal.py
+#usr/lib/python2.7/test/test_signal.pyc
+#usr/lib/python2.7/test/test_signal.pyo
+#usr/lib/python2.7/test/test_site.py
+#usr/lib/python2.7/test/test_site.pyc
+#usr/lib/python2.7/test/test_site.pyo
+#usr/lib/python2.7/test/test_slice.py
+#usr/lib/python2.7/test/test_slice.pyc
+#usr/lib/python2.7/test/test_slice.pyo
+#usr/lib/python2.7/test/test_smtplib.py
+#usr/lib/python2.7/test/test_smtplib.pyc
+#usr/lib/python2.7/test/test_smtplib.pyo
+#usr/lib/python2.7/test/test_smtpnet.py
+#usr/lib/python2.7/test/test_smtpnet.pyc
+#usr/lib/python2.7/test/test_smtpnet.pyo
+#usr/lib/python2.7/test/test_socket.py
+#usr/lib/python2.7/test/test_socket.pyc
+#usr/lib/python2.7/test/test_socket.pyo
+#usr/lib/python2.7/test/test_socketserver.py
+#usr/lib/python2.7/test/test_socketserver.pyc
+#usr/lib/python2.7/test/test_socketserver.pyo
+#usr/lib/python2.7/test/test_softspace.py
+#usr/lib/python2.7/test/test_softspace.pyc
+#usr/lib/python2.7/test/test_softspace.pyo
+#usr/lib/python2.7/test/test_sort.py
+#usr/lib/python2.7/test/test_sort.pyc
+#usr/lib/python2.7/test/test_sort.pyo
+#usr/lib/python2.7/test/test_spwd.py
+#usr/lib/python2.7/test/test_spwd.pyc
+#usr/lib/python2.7/test/test_spwd.pyo
+#usr/lib/python2.7/test/test_sqlite.py
+#usr/lib/python2.7/test/test_sqlite.pyc
+#usr/lib/python2.7/test/test_sqlite.pyo
+#usr/lib/python2.7/test/test_ssl.py
+#usr/lib/python2.7/test/test_ssl.pyc
+#usr/lib/python2.7/test/test_ssl.pyo
+#usr/lib/python2.7/test/test_startfile.py
+#usr/lib/python2.7/test/test_startfile.pyc
+#usr/lib/python2.7/test/test_startfile.pyo
+#usr/lib/python2.7/test/test_stat.py
+#usr/lib/python2.7/test/test_stat.pyc
+#usr/lib/python2.7/test/test_stat.pyo
+#usr/lib/python2.7/test/test_str.py
+#usr/lib/python2.7/test/test_str.pyc
+#usr/lib/python2.7/test/test_str.pyo
+#usr/lib/python2.7/test/test_strftime.py
+#usr/lib/python2.7/test/test_strftime.pyc
+#usr/lib/python2.7/test/test_strftime.pyo
+#usr/lib/python2.7/test/test_string.py
+#usr/lib/python2.7/test/test_string.pyc
+#usr/lib/python2.7/test/test_string.pyo
+#usr/lib/python2.7/test/test_stringprep.py
+#usr/lib/python2.7/test/test_stringprep.pyc
+#usr/lib/python2.7/test/test_stringprep.pyo
+#usr/lib/python2.7/test/test_strop.py
+#usr/lib/python2.7/test/test_strop.pyc
+#usr/lib/python2.7/test/test_strop.pyo
+#usr/lib/python2.7/test/test_strptime.py
+#usr/lib/python2.7/test/test_strptime.pyc
+#usr/lib/python2.7/test/test_strptime.pyo
+#usr/lib/python2.7/test/test_strtod.py
+#usr/lib/python2.7/test/test_strtod.pyc
+#usr/lib/python2.7/test/test_strtod.pyo
+#usr/lib/python2.7/test/test_struct.py
+#usr/lib/python2.7/test/test_struct.pyc
+#usr/lib/python2.7/test/test_struct.pyo
+#usr/lib/python2.7/test/test_structmembers.py
+#usr/lib/python2.7/test/test_structmembers.pyc
+#usr/lib/python2.7/test/test_structmembers.pyo
+#usr/lib/python2.7/test/test_structseq.py
+#usr/lib/python2.7/test/test_structseq.pyc
+#usr/lib/python2.7/test/test_structseq.pyo
+#usr/lib/python2.7/test/test_subprocess.py
+#usr/lib/python2.7/test/test_subprocess.pyc
+#usr/lib/python2.7/test/test_subprocess.pyo
+#usr/lib/python2.7/test/test_sunau.py
+#usr/lib/python2.7/test/test_sunau.pyc
+#usr/lib/python2.7/test/test_sunau.pyo
+#usr/lib/python2.7/test/test_sunaudiodev.py
+#usr/lib/python2.7/test/test_sunaudiodev.pyc
+#usr/lib/python2.7/test/test_sunaudiodev.pyo
+#usr/lib/python2.7/test/test_sundry.py
+#usr/lib/python2.7/test/test_sundry.pyc
+#usr/lib/python2.7/test/test_sundry.pyo
+#usr/lib/python2.7/test/test_support.py
+#usr/lib/python2.7/test/test_support.pyc
+#usr/lib/python2.7/test/test_support.pyo
+#usr/lib/python2.7/test/test_symtable.py
+#usr/lib/python2.7/test/test_symtable.pyc
+#usr/lib/python2.7/test/test_symtable.pyo
+#usr/lib/python2.7/test/test_syntax.py
+#usr/lib/python2.7/test/test_syntax.pyc
+#usr/lib/python2.7/test/test_syntax.pyo
+#usr/lib/python2.7/test/test_sys.py
+#usr/lib/python2.7/test/test_sys.pyc
+#usr/lib/python2.7/test/test_sys.pyo
+#usr/lib/python2.7/test/test_sys_setprofile.py
+#usr/lib/python2.7/test/test_sys_setprofile.pyc
+#usr/lib/python2.7/test/test_sys_setprofile.pyo
+#usr/lib/python2.7/test/test_sys_settrace.py
+#usr/lib/python2.7/test/test_sys_settrace.pyc
+#usr/lib/python2.7/test/test_sys_settrace.pyo
+#usr/lib/python2.7/test/test_sysconfig.py
+#usr/lib/python2.7/test/test_sysconfig.pyc
+#usr/lib/python2.7/test/test_sysconfig.pyo
+#usr/lib/python2.7/test/test_tarfile.py
+#usr/lib/python2.7/test/test_tarfile.pyc
+#usr/lib/python2.7/test/test_tarfile.pyo
+#usr/lib/python2.7/test/test_tcl.py
+#usr/lib/python2.7/test/test_tcl.pyc
+#usr/lib/python2.7/test/test_tcl.pyo
+#usr/lib/python2.7/test/test_telnetlib.py
+#usr/lib/python2.7/test/test_telnetlib.pyc
+#usr/lib/python2.7/test/test_telnetlib.pyo
+#usr/lib/python2.7/test/test_tempfile.py
+#usr/lib/python2.7/test/test_tempfile.pyc
+#usr/lib/python2.7/test/test_tempfile.pyo
+#usr/lib/python2.7/test/test_textwrap.py
+#usr/lib/python2.7/test/test_textwrap.pyc
+#usr/lib/python2.7/test/test_textwrap.pyo
+#usr/lib/python2.7/test/test_thread.py
+#usr/lib/python2.7/test/test_thread.pyc
+#usr/lib/python2.7/test/test_thread.pyo
+#usr/lib/python2.7/test/test_threaded_import.py
+#usr/lib/python2.7/test/test_threaded_import.pyc
+#usr/lib/python2.7/test/test_threaded_import.pyo
+#usr/lib/python2.7/test/test_threadedtempfile.py
+#usr/lib/python2.7/test/test_threadedtempfile.pyc
+#usr/lib/python2.7/test/test_threadedtempfile.pyo
+#usr/lib/python2.7/test/test_threading.py
+#usr/lib/python2.7/test/test_threading.pyc
+#usr/lib/python2.7/test/test_threading.pyo
+#usr/lib/python2.7/test/test_threading_local.py
+#usr/lib/python2.7/test/test_threading_local.pyc
+#usr/lib/python2.7/test/test_threading_local.pyo
+#usr/lib/python2.7/test/test_threadsignals.py
+#usr/lib/python2.7/test/test_threadsignals.pyc
+#usr/lib/python2.7/test/test_threadsignals.pyo
+#usr/lib/python2.7/test/test_time.py
+#usr/lib/python2.7/test/test_time.pyc
+#usr/lib/python2.7/test/test_time.pyo
+#usr/lib/python2.7/test/test_timeit.py
+#usr/lib/python2.7/test/test_timeit.pyc
+#usr/lib/python2.7/test/test_timeit.pyo
+#usr/lib/python2.7/test/test_timeout.py
+#usr/lib/python2.7/test/test_timeout.pyc
+#usr/lib/python2.7/test/test_timeout.pyo
+#usr/lib/python2.7/test/test_tk.py
+#usr/lib/python2.7/test/test_tk.pyc
+#usr/lib/python2.7/test/test_tk.pyo
+#usr/lib/python2.7/test/test_tokenize.py
+#usr/lib/python2.7/test/test_tokenize.pyc
+#usr/lib/python2.7/test/test_tokenize.pyo
+#usr/lib/python2.7/test/test_tools.py
+#usr/lib/python2.7/test/test_tools.pyc
+#usr/lib/python2.7/test/test_tools.pyo
+#usr/lib/python2.7/test/test_trace.py
+#usr/lib/python2.7/test/test_trace.pyc
+#usr/lib/python2.7/test/test_trace.pyo
+#usr/lib/python2.7/test/test_traceback.py
+#usr/lib/python2.7/test/test_traceback.pyc
+#usr/lib/python2.7/test/test_traceback.pyo
+#usr/lib/python2.7/test/test_transformer.py
+#usr/lib/python2.7/test/test_transformer.pyc
+#usr/lib/python2.7/test/test_transformer.pyo
+#usr/lib/python2.7/test/test_ttk_guionly.py
+#usr/lib/python2.7/test/test_ttk_guionly.pyc
+#usr/lib/python2.7/test/test_ttk_guionly.pyo
+#usr/lib/python2.7/test/test_ttk_textonly.py
+#usr/lib/python2.7/test/test_ttk_textonly.pyc
+#usr/lib/python2.7/test/test_ttk_textonly.pyo
+#usr/lib/python2.7/test/test_tuple.py
+#usr/lib/python2.7/test/test_tuple.pyc
+#usr/lib/python2.7/test/test_tuple.pyo
+#usr/lib/python2.7/test/test_typechecks.py
+#usr/lib/python2.7/test/test_typechecks.pyc
+#usr/lib/python2.7/test/test_typechecks.pyo
+#usr/lib/python2.7/test/test_types.py
+#usr/lib/python2.7/test/test_types.pyc
+#usr/lib/python2.7/test/test_types.pyo
+#usr/lib/python2.7/test/test_ucn.py
+#usr/lib/python2.7/test/test_ucn.pyc
+#usr/lib/python2.7/test/test_ucn.pyo
+#usr/lib/python2.7/test/test_unary.py
+#usr/lib/python2.7/test/test_unary.pyc
+#usr/lib/python2.7/test/test_unary.pyo
+#usr/lib/python2.7/test/test_undocumented_details.py
+#usr/lib/python2.7/test/test_undocumented_details.pyc
+#usr/lib/python2.7/test/test_undocumented_details.pyo
+#usr/lib/python2.7/test/test_unicode.py
+#usr/lib/python2.7/test/test_unicode.pyc
+#usr/lib/python2.7/test/test_unicode.pyo
+#usr/lib/python2.7/test/test_unicode_file.py
+#usr/lib/python2.7/test/test_unicode_file.pyc
+#usr/lib/python2.7/test/test_unicode_file.pyo
+#usr/lib/python2.7/test/test_unicodedata.py
+#usr/lib/python2.7/test/test_unicodedata.pyc
+#usr/lib/python2.7/test/test_unicodedata.pyo
+#usr/lib/python2.7/test/test_unittest.py
+#usr/lib/python2.7/test/test_unittest.pyc
+#usr/lib/python2.7/test/test_unittest.pyo
+#usr/lib/python2.7/test/test_univnewlines.py
+#usr/lib/python2.7/test/test_univnewlines.pyc
+#usr/lib/python2.7/test/test_univnewlines.pyo
+#usr/lib/python2.7/test/test_univnewlines2k.py
+#usr/lib/python2.7/test/test_univnewlines2k.pyc
+#usr/lib/python2.7/test/test_univnewlines2k.pyo
+#usr/lib/python2.7/test/test_unpack.py
+#usr/lib/python2.7/test/test_unpack.pyc
+#usr/lib/python2.7/test/test_unpack.pyo
+#usr/lib/python2.7/test/test_urllib.py
+#usr/lib/python2.7/test/test_urllib.pyc
+#usr/lib/python2.7/test/test_urllib.pyo
+#usr/lib/python2.7/test/test_urllib2.py
+#usr/lib/python2.7/test/test_urllib2.pyc
+#usr/lib/python2.7/test/test_urllib2.pyo
+#usr/lib/python2.7/test/test_urllib2_localnet.py
+#usr/lib/python2.7/test/test_urllib2_localnet.pyc
+#usr/lib/python2.7/test/test_urllib2_localnet.pyo
+#usr/lib/python2.7/test/test_urllib2net.py
+#usr/lib/python2.7/test/test_urllib2net.pyc
+#usr/lib/python2.7/test/test_urllib2net.pyo
+#usr/lib/python2.7/test/test_urllibnet.py
+#usr/lib/python2.7/test/test_urllibnet.pyc
+#usr/lib/python2.7/test/test_urllibnet.pyo
+#usr/lib/python2.7/test/test_urlparse.py
+#usr/lib/python2.7/test/test_urlparse.pyc
+#usr/lib/python2.7/test/test_urlparse.pyo
+#usr/lib/python2.7/test/test_userdict.py
+#usr/lib/python2.7/test/test_userdict.pyc
+#usr/lib/python2.7/test/test_userdict.pyo
+#usr/lib/python2.7/test/test_userlist.py
+#usr/lib/python2.7/test/test_userlist.pyc
+#usr/lib/python2.7/test/test_userlist.pyo
+#usr/lib/python2.7/test/test_userstring.py
+#usr/lib/python2.7/test/test_userstring.pyc
+#usr/lib/python2.7/test/test_userstring.pyo
+#usr/lib/python2.7/test/test_uu.py
+#usr/lib/python2.7/test/test_uu.pyc
+#usr/lib/python2.7/test/test_uu.pyo
+#usr/lib/python2.7/test/test_uuid.py
+#usr/lib/python2.7/test/test_uuid.pyc
+#usr/lib/python2.7/test/test_uuid.pyo
+#usr/lib/python2.7/test/test_wait3.py
+#usr/lib/python2.7/test/test_wait3.pyc
+#usr/lib/python2.7/test/test_wait3.pyo
+#usr/lib/python2.7/test/test_wait4.py
+#usr/lib/python2.7/test/test_wait4.pyc
+#usr/lib/python2.7/test/test_wait4.pyo
+#usr/lib/python2.7/test/test_warnings.py
+#usr/lib/python2.7/test/test_warnings.pyc
+#usr/lib/python2.7/test/test_warnings.pyo
+#usr/lib/python2.7/test/test_wave.py
+#usr/lib/python2.7/test/test_wave.pyc
+#usr/lib/python2.7/test/test_wave.pyo
+#usr/lib/python2.7/test/test_weakref.py
+#usr/lib/python2.7/test/test_weakref.pyc
+#usr/lib/python2.7/test/test_weakref.pyo
+#usr/lib/python2.7/test/test_weakset.py
+#usr/lib/python2.7/test/test_weakset.pyc
+#usr/lib/python2.7/test/test_weakset.pyo
+#usr/lib/python2.7/test/test_whichdb.py
+#usr/lib/python2.7/test/test_whichdb.pyc
+#usr/lib/python2.7/test/test_whichdb.pyo
+#usr/lib/python2.7/test/test_winreg.py
+#usr/lib/python2.7/test/test_winreg.pyc
+#usr/lib/python2.7/test/test_winreg.pyo
+#usr/lib/python2.7/test/test_winsound.py
+#usr/lib/python2.7/test/test_winsound.pyc
+#usr/lib/python2.7/test/test_winsound.pyo
+#usr/lib/python2.7/test/test_with.py
+#usr/lib/python2.7/test/test_with.pyc
+#usr/lib/python2.7/test/test_with.pyo
+#usr/lib/python2.7/test/test_wsgiref.py
+#usr/lib/python2.7/test/test_wsgiref.pyc
+#usr/lib/python2.7/test/test_wsgiref.pyo
+#usr/lib/python2.7/test/test_xdrlib.py
+#usr/lib/python2.7/test/test_xdrlib.pyc
+#usr/lib/python2.7/test/test_xdrlib.pyo
+#usr/lib/python2.7/test/test_xml_etree.py
+#usr/lib/python2.7/test/test_xml_etree.pyc
+#usr/lib/python2.7/test/test_xml_etree.pyo
+#usr/lib/python2.7/test/test_xml_etree_c.py
+#usr/lib/python2.7/test/test_xml_etree_c.pyc
+#usr/lib/python2.7/test/test_xml_etree_c.pyo
+#usr/lib/python2.7/test/test_xmllib.py
+#usr/lib/python2.7/test/test_xmllib.pyc
+#usr/lib/python2.7/test/test_xmllib.pyo
+#usr/lib/python2.7/test/test_xmlrpc.py
+#usr/lib/python2.7/test/test_xmlrpc.pyc
+#usr/lib/python2.7/test/test_xmlrpc.pyo
+#usr/lib/python2.7/test/test_xpickle.py
+#usr/lib/python2.7/test/test_xpickle.pyc
+#usr/lib/python2.7/test/test_xpickle.pyo
+#usr/lib/python2.7/test/test_xrange.py
+#usr/lib/python2.7/test/test_xrange.pyc
+#usr/lib/python2.7/test/test_xrange.pyo
+#usr/lib/python2.7/test/test_zipfile.py
+#usr/lib/python2.7/test/test_zipfile.pyc
+#usr/lib/python2.7/test/test_zipfile.pyo
+#usr/lib/python2.7/test/test_zipfile64.py
+#usr/lib/python2.7/test/test_zipfile64.pyc
+#usr/lib/python2.7/test/test_zipfile64.pyo
+#usr/lib/python2.7/test/test_zipimport.py
+#usr/lib/python2.7/test/test_zipimport.pyc
+#usr/lib/python2.7/test/test_zipimport.pyo
+#usr/lib/python2.7/test/test_zipimport_support.py
+#usr/lib/python2.7/test/test_zipimport_support.pyc
+#usr/lib/python2.7/test/test_zipimport_support.pyo
+#usr/lib/python2.7/test/test_zlib.py
+#usr/lib/python2.7/test/test_zlib.pyc
+#usr/lib/python2.7/test/test_zlib.pyo
+#usr/lib/python2.7/test/testall.py
+#usr/lib/python2.7/test/testall.pyc
+#usr/lib/python2.7/test/testall.pyo
+#usr/lib/python2.7/test/testcodec.py
+#usr/lib/python2.7/test/testcodec.pyc
+#usr/lib/python2.7/test/testcodec.pyo
+#usr/lib/python2.7/test/testimg.uue
+#usr/lib/python2.7/test/testimgr.uue
+#usr/lib/python2.7/test/testrgb.uue
+#usr/lib/python2.7/test/testtar.tar
+#usr/lib/python2.7/test/tf_inherit_check.py
+#usr/lib/python2.7/test/tf_inherit_check.pyc
+#usr/lib/python2.7/test/tf_inherit_check.pyo
+#usr/lib/python2.7/test/threaded_import_hangers.py
+#usr/lib/python2.7/test/threaded_import_hangers.pyc
+#usr/lib/python2.7/test/threaded_import_hangers.pyo
+#usr/lib/python2.7/test/time_hashlib.py
+#usr/lib/python2.7/test/time_hashlib.pyc
+#usr/lib/python2.7/test/time_hashlib.pyo
+#usr/lib/python2.7/test/tokenize_tests.txt
+#usr/lib/python2.7/test/tracedmodules
+#usr/lib/python2.7/test/tracedmodules/__init__.py
+#usr/lib/python2.7/test/tracedmodules/__init__.pyc
+#usr/lib/python2.7/test/tracedmodules/__init__.pyo
+#usr/lib/python2.7/test/tracedmodules/testmod.py
+#usr/lib/python2.7/test/tracedmodules/testmod.pyc
+#usr/lib/python2.7/test/tracedmodules/testmod.pyo
+#usr/lib/python2.7/test/warning_tests.py
+#usr/lib/python2.7/test/warning_tests.pyc
+#usr/lib/python2.7/test/warning_tests.pyo
+#usr/lib/python2.7/test/win_console_handler.py
+#usr/lib/python2.7/test/win_console_handler.pyc
+#usr/lib/python2.7/test/win_console_handler.pyo
+#usr/lib/python2.7/test/wrongcert.pem
+#usr/lib/python2.7/test/xmltestdata
+#usr/lib/python2.7/test/xmltestdata/simple-ns.xml
+#usr/lib/python2.7/test/xmltestdata/simple.xml
+#usr/lib/python2.7/test/xmltestdata/test.xml
+#usr/lib/python2.7/test/xmltestdata/test.xml.out
+#usr/lib/python2.7/test/xmltests.py
+#usr/lib/python2.7/test/xmltests.pyc
+#usr/lib/python2.7/test/xmltests.pyo
+#usr/lib/python2.7/test/zipdir.zip
+#usr/lib/python2.7/textwrap.py
+usr/lib/python2.7/textwrap.pyc
+#usr/lib/python2.7/textwrap.pyo
+#usr/lib/python2.7/this.py
+usr/lib/python2.7/this.pyc
+#usr/lib/python2.7/this.pyo
+#usr/lib/python2.7/threading.py
+usr/lib/python2.7/threading.pyc
+#usr/lib/python2.7/threading.pyo
+#usr/lib/python2.7/timeit.py
+usr/lib/python2.7/timeit.pyc
+#usr/lib/python2.7/timeit.pyo
+#usr/lib/python2.7/toaiff.py
+usr/lib/python2.7/toaiff.pyc
+#usr/lib/python2.7/toaiff.pyo
+#usr/lib/python2.7/token.py
+usr/lib/python2.7/token.pyc
+#usr/lib/python2.7/token.pyo
+#usr/lib/python2.7/tokenize.py
+usr/lib/python2.7/tokenize.pyc
+#usr/lib/python2.7/tokenize.pyo
+#usr/lib/python2.7/trace.py
+usr/lib/python2.7/trace.pyc
+#usr/lib/python2.7/trace.pyo
+#usr/lib/python2.7/traceback.py
+usr/lib/python2.7/traceback.pyc
+#usr/lib/python2.7/traceback.pyo
+#usr/lib/python2.7/tty.py
+usr/lib/python2.7/tty.pyc
+#usr/lib/python2.7/tty.pyo
+#usr/lib/python2.7/types.py
+usr/lib/python2.7/types.pyc
+#usr/lib/python2.7/types.pyo
+#usr/lib/python2.7/unittest
+#usr/lib/python2.7/unittest/__init__.py
+#usr/lib/python2.7/unittest/__init__.pyc
+#usr/lib/python2.7/unittest/__init__.pyo
+#usr/lib/python2.7/unittest/__main__.py
+#usr/lib/python2.7/unittest/__main__.pyc
+#usr/lib/python2.7/unittest/__main__.pyo
+#usr/lib/python2.7/unittest/case.py
+#usr/lib/python2.7/unittest/case.pyc
+#usr/lib/python2.7/unittest/case.pyo
+#usr/lib/python2.7/unittest/loader.py
+#usr/lib/python2.7/unittest/loader.pyc
+#usr/lib/python2.7/unittest/loader.pyo
+#usr/lib/python2.7/unittest/main.py
+#usr/lib/python2.7/unittest/main.pyc
+#usr/lib/python2.7/unittest/main.pyo
+#usr/lib/python2.7/unittest/result.py
+#usr/lib/python2.7/unittest/result.pyc
+#usr/lib/python2.7/unittest/result.pyo
+#usr/lib/python2.7/unittest/runner.py
+#usr/lib/python2.7/unittest/runner.pyc
+#usr/lib/python2.7/unittest/runner.pyo
+#usr/lib/python2.7/unittest/signals.py
+#usr/lib/python2.7/unittest/signals.pyc
+#usr/lib/python2.7/unittest/signals.pyo
+#usr/lib/python2.7/unittest/suite.py
+#usr/lib/python2.7/unittest/suite.pyc
+#usr/lib/python2.7/unittest/suite.pyo
+#usr/lib/python2.7/unittest/test
+#usr/lib/python2.7/unittest/test/__init__.py
+#usr/lib/python2.7/unittest/test/__init__.pyc
+#usr/lib/python2.7/unittest/test/__init__.pyo
+#usr/lib/python2.7/unittest/test/dummy.py
+#usr/lib/python2.7/unittest/test/dummy.pyc
+#usr/lib/python2.7/unittest/test/dummy.pyo
+#usr/lib/python2.7/unittest/test/support.py
+#usr/lib/python2.7/unittest/test/support.pyc
+#usr/lib/python2.7/unittest/test/support.pyo
+#usr/lib/python2.7/unittest/test/test_assertions.py
+#usr/lib/python2.7/unittest/test/test_assertions.pyc
+#usr/lib/python2.7/unittest/test/test_assertions.pyo
+#usr/lib/python2.7/unittest/test/test_break.py
+#usr/lib/python2.7/unittest/test/test_break.pyc
+#usr/lib/python2.7/unittest/test/test_break.pyo
+#usr/lib/python2.7/unittest/test/test_case.py
+#usr/lib/python2.7/unittest/test/test_case.pyc
+#usr/lib/python2.7/unittest/test/test_case.pyo
+#usr/lib/python2.7/unittest/test/test_discovery.py
+#usr/lib/python2.7/unittest/test/test_discovery.pyc
+#usr/lib/python2.7/unittest/test/test_discovery.pyo
+#usr/lib/python2.7/unittest/test/test_functiontestcase.py
+#usr/lib/python2.7/unittest/test/test_functiontestcase.pyc
+#usr/lib/python2.7/unittest/test/test_functiontestcase.pyo
+#usr/lib/python2.7/unittest/test/test_loader.py
+#usr/lib/python2.7/unittest/test/test_loader.pyc
+#usr/lib/python2.7/unittest/test/test_loader.pyo
+#usr/lib/python2.7/unittest/test/test_program.py
+#usr/lib/python2.7/unittest/test/test_program.pyc
+#usr/lib/python2.7/unittest/test/test_program.pyo
+#usr/lib/python2.7/unittest/test/test_result.py
+#usr/lib/python2.7/unittest/test/test_result.pyc
+#usr/lib/python2.7/unittest/test/test_result.pyo
+#usr/lib/python2.7/unittest/test/test_runner.py
+#usr/lib/python2.7/unittest/test/test_runner.pyc
+#usr/lib/python2.7/unittest/test/test_runner.pyo
+#usr/lib/python2.7/unittest/test/test_setups.py
+#usr/lib/python2.7/unittest/test/test_setups.pyc
+#usr/lib/python2.7/unittest/test/test_setups.pyo
+#usr/lib/python2.7/unittest/test/test_skipping.py
+#usr/lib/python2.7/unittest/test/test_skipping.pyc
+#usr/lib/python2.7/unittest/test/test_skipping.pyo
+#usr/lib/python2.7/unittest/test/test_suite.py
+#usr/lib/python2.7/unittest/test/test_suite.pyc
+#usr/lib/python2.7/unittest/test/test_suite.pyo
+#usr/lib/python2.7/unittest/util.py
+#usr/lib/python2.7/unittest/util.pyc
+#usr/lib/python2.7/unittest/util.pyo
+#usr/lib/python2.7/urllib.py
+usr/lib/python2.7/urllib.pyc
+#usr/lib/python2.7/urllib.pyo
+#usr/lib/python2.7/urllib2.py
+usr/lib/python2.7/urllib2.pyc
+#usr/lib/python2.7/urllib2.pyo
+#usr/lib/python2.7/urlparse.py
+usr/lib/python2.7/urlparse.pyc
+#usr/lib/python2.7/urlparse.pyo
+#usr/lib/python2.7/user.py
+usr/lib/python2.7/user.pyc
+#usr/lib/python2.7/user.pyo
+#usr/lib/python2.7/uu.py
+usr/lib/python2.7/uu.pyc
+#usr/lib/python2.7/uu.pyo
+#usr/lib/python2.7/uuid.py
+usr/lib/python2.7/uuid.pyc
+#usr/lib/python2.7/uuid.pyo
+#usr/lib/python2.7/warnings.py
+usr/lib/python2.7/warnings.pyc
+#usr/lib/python2.7/warnings.pyo
+#usr/lib/python2.7/wave.py
+usr/lib/python2.7/wave.pyc
+#usr/lib/python2.7/wave.pyo
+#usr/lib/python2.7/weakref.py
+usr/lib/python2.7/weakref.pyc
+#usr/lib/python2.7/weakref.pyo
+#usr/lib/python2.7/webbrowser.py
+usr/lib/python2.7/webbrowser.pyc
+#usr/lib/python2.7/webbrowser.pyo
+#usr/lib/python2.7/whichdb.py
+usr/lib/python2.7/whichdb.pyc
+#usr/lib/python2.7/whichdb.pyo
+#usr/lib/python2.7/wsgiref
+#usr/lib/python2.7/wsgiref.egg-info
+#usr/lib/python2.7/wsgiref/__init__.py
+usr/lib/python2.7/wsgiref/__init__.pyc
+#usr/lib/python2.7/wsgiref/__init__.pyo
+#usr/lib/python2.7/wsgiref/handlers.py
+usr/lib/python2.7/wsgiref/handlers.pyc
+#usr/lib/python2.7/wsgiref/handlers.pyo
+#usr/lib/python2.7/wsgiref/headers.py
+usr/lib/python2.7/wsgiref/headers.pyc
+#usr/lib/python2.7/wsgiref/headers.pyo
+#usr/lib/python2.7/wsgiref/simple_server.py
+usr/lib/python2.7/wsgiref/simple_server.pyc
+#usr/lib/python2.7/wsgiref/simple_server.pyo
+#usr/lib/python2.7/wsgiref/util.py
+usr/lib/python2.7/wsgiref/util.pyc
+#usr/lib/python2.7/wsgiref/util.pyo
+#usr/lib/python2.7/wsgiref/validate.py
+usr/lib/python2.7/wsgiref/validate.pyc
+#usr/lib/python2.7/wsgiref/validate.pyo
+#usr/lib/python2.7/xdrlib.py
+usr/lib/python2.7/xdrlib.pyc
+#usr/lib/python2.7/xdrlib.pyo
+#usr/lib/python2.7/xml
+#usr/lib/python2.7/xml/__init__.py
+usr/lib/python2.7/xml/__init__.pyc
+#usr/lib/python2.7/xml/__init__.pyo
+#usr/lib/python2.7/xml/dom
+#usr/lib/python2.7/xml/dom/NodeFilter.py
+usr/lib/python2.7/xml/dom/NodeFilter.pyc
+#usr/lib/python2.7/xml/dom/NodeFilter.pyo
+#usr/lib/python2.7/xml/dom/__init__.py
+usr/lib/python2.7/xml/dom/__init__.pyc
+#usr/lib/python2.7/xml/dom/__init__.pyo
+#usr/lib/python2.7/xml/dom/domreg.py
+usr/lib/python2.7/xml/dom/domreg.pyc
+#usr/lib/python2.7/xml/dom/domreg.pyo
+#usr/lib/python2.7/xml/dom/expatbuilder.py
+usr/lib/python2.7/xml/dom/expatbuilder.pyc
+#usr/lib/python2.7/xml/dom/expatbuilder.pyo
+#usr/lib/python2.7/xml/dom/minicompat.py
+usr/lib/python2.7/xml/dom/minicompat.pyc
+#usr/lib/python2.7/xml/dom/minicompat.pyo
+#usr/lib/python2.7/xml/dom/minidom.py
+usr/lib/python2.7/xml/dom/minidom.pyc
+#usr/lib/python2.7/xml/dom/minidom.pyo
+#usr/lib/python2.7/xml/dom/pulldom.py
+usr/lib/python2.7/xml/dom/pulldom.pyc
+#usr/lib/python2.7/xml/dom/pulldom.pyo
+#usr/lib/python2.7/xml/dom/xmlbuilder.py
+usr/lib/python2.7/xml/dom/xmlbuilder.pyc
+#usr/lib/python2.7/xml/dom/xmlbuilder.pyo
+#usr/lib/python2.7/xml/etree
+#usr/lib/python2.7/xml/etree/ElementInclude.py
+usr/lib/python2.7/xml/etree/ElementInclude.pyc
+#usr/lib/python2.7/xml/etree/ElementInclude.pyo
+#usr/lib/python2.7/xml/etree/ElementPath.py
+usr/lib/python2.7/xml/etree/ElementPath.pyc
+#usr/lib/python2.7/xml/etree/ElementPath.pyo
+#usr/lib/python2.7/xml/etree/ElementTree.py
+usr/lib/python2.7/xml/etree/ElementTree.pyc
+#usr/lib/python2.7/xml/etree/ElementTree.pyo
+#usr/lib/python2.7/xml/etree/__init__.py
+usr/lib/python2.7/xml/etree/__init__.pyc
+#usr/lib/python2.7/xml/etree/__init__.pyo
+#usr/lib/python2.7/xml/etree/cElementTree.py
+usr/lib/python2.7/xml/etree/cElementTree.pyc
+#usr/lib/python2.7/xml/etree/cElementTree.pyo
+#usr/lib/python2.7/xml/parsers
+#usr/lib/python2.7/xml/parsers/__init__.py
+usr/lib/python2.7/xml/parsers/__init__.pyc
+#usr/lib/python2.7/xml/parsers/__init__.pyo
+#usr/lib/python2.7/xml/parsers/expat.py
+usr/lib/python2.7/xml/parsers/expat.pyc
+#usr/lib/python2.7/xml/parsers/expat.pyo
+#usr/lib/python2.7/xml/sax
+#usr/lib/python2.7/xml/sax/__init__.py
+usr/lib/python2.7/xml/sax/__init__.pyc
+#usr/lib/python2.7/xml/sax/__init__.pyo
+#usr/lib/python2.7/xml/sax/_exceptions.py
+usr/lib/python2.7/xml/sax/_exceptions.pyc
+#usr/lib/python2.7/xml/sax/_exceptions.pyo
+#usr/lib/python2.7/xml/sax/expatreader.py
+usr/lib/python2.7/xml/sax/expatreader.pyc
+#usr/lib/python2.7/xml/sax/expatreader.pyo
+#usr/lib/python2.7/xml/sax/handler.py
+usr/lib/python2.7/xml/sax/handler.pyc
+#usr/lib/python2.7/xml/sax/handler.pyo
+#usr/lib/python2.7/xml/sax/saxutils.py
+usr/lib/python2.7/xml/sax/saxutils.pyc
+#usr/lib/python2.7/xml/sax/saxutils.pyo
+#usr/lib/python2.7/xml/sax/xmlreader.py
+usr/lib/python2.7/xml/sax/xmlreader.pyc
+#usr/lib/python2.7/xml/sax/xmlreader.pyo
+#usr/lib/python2.7/xmllib.py
+usr/lib/python2.7/xmllib.pyc
+#usr/lib/python2.7/xmllib.pyo
+#usr/lib/python2.7/xmlrpclib.py
+usr/lib/python2.7/xmlrpclib.pyc
+#usr/lib/python2.7/xmlrpclib.pyo
+#usr/lib/python2.7/zipfile.py
+usr/lib/python2.7/zipfile.pyc
+#usr/lib/python2.7/zipfile.pyo
+#usr/share/man/man1/python.1
+#usr/share/man/man1/python2.1
+#usr/share/man/man1/python2.7.1
index 63a072fa12d92e98ab03efb2d3574d193f8a04fa..ff8cda5981b66b75ed61dcfbdab7ce282e77292f 100644 (file)
 #usr/share/locale/km_KH/LC_MESSAGES/installer.mo
 #usr/share/locale/nl/LC_MESSAGES/installer.mo
 #usr/share/locale/pl/LC_MESSAGES/installer.mo
+#usr/share/locale/pt/LC_MESSAGES/installer.mo
 #usr/share/locale/pt_BR/LC_MESSAGES/installer.mo
 #usr/share/locale/pt_PT/LC_MESSAGES/installer.mo
+#usr/share/locale/ro/LC_MESSAGES/installer.mo
 #usr/share/locale/ro_RO/LC_MESSAGES/installer.mo
 #usr/share/locale/ru/LC_MESSAGES/installer.mo
 #usr/share/locale/rw/LC_MESSAGES/installer.mo
index bb4c05b486e8bf168d9b216e1631421cf5a6c1ad..93dcaff8969b61ef84578bbd277b0c8f210f43d9 100644 (file)
@@ -1,6 +1,7 @@
 #etc/iproute2
 etc/iproute2/ematch_map
 etc/iproute2/group
+etc/iproute2/nl_protos
 etc/iproute2/rt_dsfield
 etc/iproute2/rt_protos
 etc/iproute2/rt_realms
@@ -60,20 +61,27 @@ usr/sbin/arpd
 #usr/share/doc/iproute2/rtstat.sgml
 #usr/share/doc/iproute2/ss.sgml
 #usr/share/man/man3/libnetlink.3
+#usr/share/man/man7/tc-hfsc.7
 #usr/share/man/man8/arpd.8
 #usr/share/man/man8/bridge.8
 #usr/share/man/man8/ctstat.8
 #usr/share/man/man8/ip-address.8
 #usr/share/man/man8/ip-addrlabel.8
+#usr/share/man/man8/ip-fou.8
+#usr/share/man/man8/ip-gue.8
+#usr/share/man/man8/ip-l2tp.8
 #usr/share/man/man8/ip-link.8
 #usr/share/man/man8/ip-maddress.8
 #usr/share/man/man8/ip-monitor.8
 #usr/share/man/man8/ip-mroute.8
 #usr/share/man/man8/ip-neighbour.8
+#usr/share/man/man8/ip-netconf.8
 #usr/share/man/man8/ip-netns.8
 #usr/share/man/man8/ip-ntable.8
 #usr/share/man/man8/ip-route.8
 #usr/share/man/man8/ip-rule.8
+#usr/share/man/man8/ip-tcp_metrics.8
+#usr/share/man/man8/ip-token.8
 #usr/share/man/man8/ip-tunnel.8
 #usr/share/man/man8/ip-xfrm.8
 #usr/share/man/man8/ip.8
@@ -86,17 +94,21 @@ usr/sbin/arpd
 #usr/share/man/man8/rtstat.8
 #usr/share/man/man8/ss.8
 #usr/share/man/man8/tc-bfifo.8
+#usr/share/man/man8/tc-bpf.8
 #usr/share/man/man8/tc-cbq-details.8
 #usr/share/man/man8/tc-cbq.8
 #usr/share/man/man8/tc-choke.8
 #usr/share/man/man8/tc-codel.8
 #usr/share/man/man8/tc-drr.8
+#usr/share/man/man8/tc-ematch.8
 #usr/share/man/man8/tc-fq_codel.8
 #usr/share/man/man8/tc-hfsc.8
 #usr/share/man/man8/tc-htb.8
+#usr/share/man/man8/tc-mqprio.8
 #usr/share/man/man8/tc-netem.8
 #usr/share/man/man8/tc-pfifo.8
 #usr/share/man/man8/tc-pfifo_fast.8
+#usr/share/man/man8/tc-pie.8
 #usr/share/man/man8/tc-prio.8
 #usr/share/man/man8/tc-red.8
 #usr/share/man/man8/tc-sfb.8
diff --git a/config/rootfiles/common/ipset b/config/rootfiles/common/ipset
new file mode 100644 (file)
index 0000000..50ebed5
--- /dev/null
@@ -0,0 +1,26 @@
+etc/ipset
+#usr/include/libipset
+#usr/include/libipset/data.h
+#usr/include/libipset/errcode.h
+#usr/include/libipset/linux_ip_set.h
+#usr/include/libipset/linux_ip_set_bitmap.h
+#usr/include/libipset/linux_ip_set_hash.h
+#usr/include/libipset/linux_ip_set_list.h
+#usr/include/libipset/mnl.h
+#usr/include/libipset/nf_inet_addr.h
+#usr/include/libipset/nfproto.h
+#usr/include/libipset/parse.h
+#usr/include/libipset/pfxlen.h
+#usr/include/libipset/print.h
+#usr/include/libipset/session.h
+#usr/include/libipset/transport.h
+#usr/include/libipset/types.h
+#usr/include/libipset/ui.h
+#usr/include/libipset/utils.h
+#usr/lib/libipset.la
+#usr/lib/libipset.so
+usr/lib/libipset.so.3
+usr/lib/libipset.so.3.6.0
+#usr/lib/pkgconfig/libipset.pc
+usr/sbin/ipset
+#usr/share/man/man8/ipset.8
index a0f12900800373654797bce70bdcd1447fda4698..09e827c2aa43d7884f30a85c8b35999732e3151e 100644 (file)
@@ -54,7 +54,6 @@ lib/xtables
 #lib/xtables/libipt_ULOG.so
 #lib/xtables/libipt_ah.so
 #lib/xtables/libipt_icmp.so
-#lib/xtables/libipt_ipp2p.so
 #lib/xtables/libipt_realm.so
 #lib/xtables/libipt_ttl.so
 #lib/xtables/libipt_unclean.so
@@ -88,6 +87,7 @@ lib/xtables
 #lib/xtables/libxt_cluster.so
 #lib/xtables/libxt_comment.so
 #lib/xtables/libxt_connbytes.so
+#lib/xtables/libxt_connlabel.so
 #lib/xtables/libxt_connlimit.so
 #lib/xtables/libxt_connmark.so
 #lib/xtables/libxt_conntrack.so
@@ -137,6 +137,7 @@ sbin/iptables
 sbin/iptables-restore
 sbin/iptables-save
 sbin/iptables-xml
+#sbin/nfnl_osf
 sbin/xtables-multi
 #usr/include/libipq.h
 #usr/include/libiptc
@@ -145,52 +146,12 @@ sbin/xtables-multi
 #usr/include/libiptc/libiptc.h
 #usr/include/libiptc/libxtc.h
 #usr/include/libiptc/xtcshared.h
-#usr/include/libnetfilter_conntrack
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack.h
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_dccp.h
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_icmp.h
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_ipv4.h
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_ipv6.h
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_sctp.h
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_tcp.h
-#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_udp.h
-#usr/include/libnetfilter_conntrack/linux_nfnetlink_conntrack.h
-#usr/include/libnetfilter_cttimeout
-#usr/include/libnetfilter_cttimeout/libnetfilter_cttimeout.h
-#usr/include/libnetfilter_queue
-#usr/include/libnetfilter_queue/libnetfilter_queue.h
-#usr/include/libnetfilter_queue/linux_nfnetlink_queue.h
-#usr/include/libnfnetlink
-#usr/include/libnfnetlink/libnfnetlink.h
-#usr/include/libnfnetlink/linux_nfnetlink.h
-#usr/include/libnfnetlink/linux_nfnetlink_compat.h
 #usr/include/xtables-version.h
 #usr/include/xtables.h
-#usr/lib/libnetfilter_conntrack.la
-usr/lib/libnetfilter_conntrack.so
-usr/lib/libnetfilter_conntrack.so.3
-usr/lib/libnetfilter_conntrack.so.3.4.0
-#usr/lib/libnetfilter_cttimeout.la
-usr/lib/libnetfilter_cttimeout.so
-usr/lib/libnetfilter_cttimeout.so.1
-usr/lib/libnetfilter_cttimeout.so.1.0.0
-#usr/lib/libnetfilter_queue.la
-usr/lib/libnetfilter_queue.so
-usr/lib/libnetfilter_queue.so.1
-usr/lib/libnetfilter_queue.so.1.2.0
-#usr/lib/libnfnetlink.a
-#usr/lib/libnfnetlink.la
-usr/lib/libnfnetlink.so
-usr/lib/libnfnetlink.so.0
-usr/lib/libnfnetlink.so.0.2.0
 #usr/lib/pkgconfig/libip4tc.pc
 #usr/lib/pkgconfig/libip6tc.pc
 #usr/lib/pkgconfig/libipq.pc
 #usr/lib/pkgconfig/libiptc.pc
-#usr/lib/pkgconfig/libnetfilter_conntrack.pc
-#usr/lib/pkgconfig/libnetfilter_cttimeout.pc
-#usr/lib/pkgconfig/libnetfilter_queue.pc
-#usr/lib/pkgconfig/libnfnetlink.pc
 #usr/lib/pkgconfig/xtables.pc
 #usr/share/man/man1/iptables-xml.1
 #usr/share/man/man3/ipq_create_handle.3
@@ -211,3 +172,5 @@ usr/lib/libnfnetlink.so.0.2.0
 #usr/share/man/man8/iptables-restore.8
 #usr/share/man/man8/iptables-save.8
 #usr/share/man/man8/iptables.8
+#usr/share/xtables
+usr/share/xtables/pf.os
diff --git a/config/rootfiles/common/libarchive b/config/rootfiles/common/libarchive
new file mode 100644 (file)
index 0000000..735bf37
--- /dev/null
@@ -0,0 +1,49 @@
+#usr/bin/bsdcpio
+#usr/bin/bsdtar
+#usr/include/archive.h
+#usr/include/archive_entry.h
+#usr/lib/libarchive.la
+#usr/lib/libarchive.so
+#usr/lib/libarchive.so.13
+#usr/lib/libarchive.so.13.1.2
+#usr/lib/pkgconfig/libarchive.pc
+#usr/share/man/man1/bsdcpio.1
+#usr/share/man/man1/bsdtar.1
+#usr/share/man/man3/archive_entry.3
+#usr/share/man/man3/archive_entry_acl.3
+#usr/share/man/man3/archive_entry_linkify.3
+#usr/share/man/man3/archive_entry_paths.3
+#usr/share/man/man3/archive_entry_perms.3
+#usr/share/man/man3/archive_entry_stat.3
+#usr/share/man/man3/archive_entry_time.3
+#usr/share/man/man3/archive_read.3
+#usr/share/man/man3/archive_read_data.3
+#usr/share/man/man3/archive_read_disk.3
+#usr/share/man/man3/archive_read_extract.3
+#usr/share/man/man3/archive_read_filter.3
+#usr/share/man/man3/archive_read_format.3
+#usr/share/man/man3/archive_read_free.3
+#usr/share/man/man3/archive_read_header.3
+#usr/share/man/man3/archive_read_new.3
+#usr/share/man/man3/archive_read_open.3
+#usr/share/man/man3/archive_read_set_options.3
+#usr/share/man/man3/archive_util.3
+#usr/share/man/man3/archive_write.3
+#usr/share/man/man3/archive_write_blocksize.3
+#usr/share/man/man3/archive_write_data.3
+#usr/share/man/man3/archive_write_disk.3
+#usr/share/man/man3/archive_write_filter.3
+#usr/share/man/man3/archive_write_finish_entry.3
+#usr/share/man/man3/archive_write_format.3
+#usr/share/man/man3/archive_write_free.3
+#usr/share/man/man3/archive_write_header.3
+#usr/share/man/man3/archive_write_new.3
+#usr/share/man/man3/archive_write_open.3
+#usr/share/man/man3/archive_write_set_options.3
+#usr/share/man/man3/libarchive.3
+#usr/share/man/man3/libarchive_changes.3
+#usr/share/man/man3/libarchive_internals.3
+#usr/share/man/man5/cpio.5
+#usr/share/man/man5/libarchive-formats.5
+#usr/share/man/man5/mtree.5
+#usr/share/man/man5/tar.5
similarity index 95%
rename from config/rootfiles/packages/libevent2
rename to config/rootfiles/common/libevent2
index 5beb5f8b835e5b0d4d11016886a1147ac74f558b..aab354ebee540dcd3a894e600cdb792d889d4680 100644 (file)
@@ -34,12 +34,12 @@ usr/lib/libevent_openssl-2.0.so.5
 usr/lib/libevent_openssl-2.0.so.5.1.9
 #usr/lib/libevent_openssl.a
 #usr/lib/libevent_openssl.la
-#usr/lib/libevent_openssl.so
+usr/lib/libevent_openssl.so
 usr/lib/libevent_pthreads-2.0.so.5
 usr/lib/libevent_pthreads-2.0.so.5.1.9
 #usr/lib/libevent_pthreads.a
 #usr/lib/libevent_pthreads.la
-#usr/lib/libevent_pthreads.so
+usr/lib/libevent_pthreads.so
 #usr/lib/pkgconfig/libevent.pc
 #usr/lib/pkgconfig/libevent_openssl.pc
 #usr/lib/pkgconfig/libevent_pthreads.pc
index 96e48e1f9d504942ade30c4eb83896f43512a72e..578e0b689b89ad16973758ecbbed0840fae43f75 100644 (file)
@@ -6,9 +6,7 @@
 #usr/lib/libgcrypt.la
 #usr/lib/libgcrypt.so
 usr/lib/libgcrypt.so.20
-usr/lib/libgcrypt.so.20.0.1
+usr/lib/libgcrypt.so.20.0.4
 #usr/share/aclocal/libgcrypt.m4
 #usr/share/info/gcrypt.info
-#usr/share/info/gcrypt.info-1
-#usr/share/info/gcrypt.info-2
 #usr/share/man/man1/hmac256.1
index cbb7dec245f064a08dc42ba0affc874fae71eb95..3e927ed91810f4fe8fe6ab40b7f8bcd9feccd0ce 100644 (file)
@@ -4,7 +4,7 @@ usr/bin/gpg-error
 #usr/lib/libgpg-error.la
 #usr/lib/libgpg-error.so
 usr/lib/libgpg-error.so.0
-usr/lib/libgpg-error.so.0.11.0
+usr/lib/libgpg-error.so.0.16.0
 #usr/share/aclocal/gpg-error.m4
 #usr/share/common-lisp
 #usr/share/common-lisp/source
@@ -13,19 +13,24 @@ usr/lib/libgpg-error.so.0.11.0
 #usr/share/common-lisp/source/gpg-error/gpg-error-package.lisp
 #usr/share/common-lisp/source/gpg-error/gpg-error.asd
 #usr/share/common-lisp/source/gpg-error/gpg-error.lisp
+#usr/share/info/gpgrt.info
 #usr/share/locale/cs/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/da/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/de/LC_MESSAGES/libgpg-error.mo
-#usr/share/locale/eo
-#usr/share/locale/eo/LC_MESSAGES
 #usr/share/locale/eo/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/fr/LC_MESSAGES/libgpg-error.mo
+#usr/share/locale/hu/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/it/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/ja/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/nl/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/pl/LC_MESSAGES/libgpg-error.mo
+#usr/share/locale/pt/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/ro/LC_MESSAGES/libgpg-error.mo
+#usr/share/locale/ru/LC_MESSAGES/libgpg-error.mo
+#usr/share/locale/sr/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/sv/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/uk/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/vi/LC_MESSAGES/libgpg-error.mo
 #usr/share/locale/zh_CN/LC_MESSAGES/libgpg-error.mo
+#usr/share/locale/zh_TW/LC_MESSAGES/libgpg-error.mo
+#usr/share/man/man1/gpg-error-config.1
diff --git a/config/rootfiles/common/libmpc b/config/rootfiles/common/libmpc
new file mode 100644 (file)
index 0000000..c8684ce
--- /dev/null
@@ -0,0 +1,7 @@
+#usr/include/mpc.h
+#usr/lib/libmpc.a
+#usr/lib/libmpc.la
+#usr/lib/libmpc.so
+usr/lib/libmpc.so.3
+usr/lib/libmpc.so.3.0.0
+#usr/share/info/mpc.info
index 8fe7c1791ee09676a05024ae0c8e4e55ce3e2022..ffa20fd0e20245ace38d4b2d6ba4861a18f3e4c3 100644 (file)
@@ -1,3 +1,4 @@
+#usr/bin/libnet-config
 #usr/include/libnet
 #usr/include/libnet.h
 #usr/include/libnet/libnet-asn1.h
@@ -7,3 +8,10 @@
 #usr/include/libnet/libnet-structures.h
 #usr/include/libnet/libnet-types.h
 #usr/lib/libnet.a
+#usr/lib/libnet.la
+usr/lib/libnet.so
+usr/lib/libnet.so.1
+usr/lib/libnet.so.1.7.0
+#usr/share/man/man3/libnet-functions.h.3
+#usr/share/man/man3/libnet-macros.h.3
+#usr/share/man/man3/libnet.h.3
diff --git a/config/rootfiles/common/libnetfilter_conntrack b/config/rootfiles/common/libnetfilter_conntrack
new file mode 100644 (file)
index 0000000..6095d0b
--- /dev/null
@@ -0,0 +1,15 @@
+#usr/include/libnetfilter_conntrack
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack.h
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_dccp.h
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_icmp.h
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_ipv4.h
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_ipv6.h
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_sctp.h
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_tcp.h
+#usr/include/libnetfilter_conntrack/libnetfilter_conntrack_udp.h
+#usr/include/libnetfilter_conntrack/linux_nfnetlink_conntrack.h
+#usr/lib/libnetfilter_conntrack.la
+#usr/lib/libnetfilter_conntrack.so
+usr/lib/libnetfilter_conntrack.so.3
+usr/lib/libnetfilter_conntrack.so.3.5.0
+#usr/lib/pkgconfig/libnetfilter_conntrack.pc
diff --git a/config/rootfiles/common/libnetfilter_cthelper b/config/rootfiles/common/libnetfilter_cthelper
new file mode 100644 (file)
index 0000000..4e2e9e5
--- /dev/null
@@ -0,0 +1,7 @@
+#usr/include/libnetfilter_cthelper
+#usr/include/libnetfilter_cthelper/libnetfilter_cthelper.h
+#usr/lib/libnetfilter_cthelper.la
+#usr/lib/libnetfilter_cthelper.so
+usr/lib/libnetfilter_cthelper.so.0
+usr/lib/libnetfilter_cthelper.so.0.0.0
+#usr/lib/pkgconfig/libnetfilter_cthelper.pc
diff --git a/config/rootfiles/common/libnetfilter_cttimeout b/config/rootfiles/common/libnetfilter_cttimeout
new file mode 100644 (file)
index 0000000..f1647d1
--- /dev/null
@@ -0,0 +1,7 @@
+#usr/include/libnetfilter_cttimeout
+#usr/include/libnetfilter_cttimeout/libnetfilter_cttimeout.h
+#usr/lib/libnetfilter_cttimeout.la
+#usr/lib/libnetfilter_cttimeout.so
+usr/lib/libnetfilter_cttimeout.so.1
+usr/lib/libnetfilter_cttimeout.so.1.0.0
+#usr/lib/pkgconfig/libnetfilter_cttimeout.pc
diff --git a/config/rootfiles/common/libnetfilter_queue b/config/rootfiles/common/libnetfilter_queue
new file mode 100644 (file)
index 0000000..418a5df
--- /dev/null
@@ -0,0 +1,14 @@
+#usr/include/internal.h
+#usr/include/libnetfilter_queue
+#usr/include/libnetfilter_queue/libnetfilter_queue.h
+#usr/include/libnetfilter_queue/libnetfilter_queue_ipv4.h
+#usr/include/libnetfilter_queue/libnetfilter_queue_ipv6.h
+#usr/include/libnetfilter_queue/libnetfilter_queue_tcp.h
+#usr/include/libnetfilter_queue/libnetfilter_queue_udp.h
+#usr/include/libnetfilter_queue/linux_nfnetlink_queue.h
+#usr/include/libnetfilter_queue/pktbuff.h
+#usr/lib/libnetfilter_queue.la
+#usr/lib/libnetfilter_queue.so
+usr/lib/libnetfilter_queue.so.1
+usr/lib/libnetfilter_queue.so.1.3.0
+#usr/lib/pkgconfig/libnetfilter_queue.pc
diff --git a/config/rootfiles/common/libnfnetlink b/config/rootfiles/common/libnfnetlink
new file mode 100644 (file)
index 0000000..ad97cb5
--- /dev/null
@@ -0,0 +1,9 @@
+#usr/include/libnfnetlink
+#usr/include/libnfnetlink/libnfnetlink.h
+#usr/include/libnfnetlink/linux_nfnetlink.h
+#usr/include/libnfnetlink/linux_nfnetlink_compat.h
+#usr/lib/libnfnetlink.la
+#usr/lib/libnfnetlink.so
+usr/lib/libnfnetlink.so.0
+usr/lib/libnfnetlink.so.0.2.0
+#usr/lib/pkgconfig/libnfnetlink.pc
index b8e96489ca7ff6a89e015995541affa831ce8c67..2045ca714898d6afb38b9861d67d0c8690e66de2 100644 (file)
@@ -15,7 +15,7 @@
 #usr/lib/libpcap.a
 usr/lib/libpcap.so
 usr/lib/libpcap.so.1
-usr/lib/libpcap.so.1.6.2
+usr/lib/libpcap.so.1.7.4
 #usr/share/man/man1/pcap-config.1
 #usr/share/man/man3/pcap.3pcap
 #usr/share/man/man3/pcap_activate.3pcap
index 5646be25ab600f9badfdb85843ca019911613339..23753c79ee92fb1b59a3c31334be642bf082b7dc 100644 (file)
@@ -9,9 +9,10 @@
 #usr/lib/libltdl.la
 usr/lib/libltdl.so
 usr/lib/libltdl.so.7
-usr/lib/libltdl.so.7.3.0
+usr/lib/libltdl.so.7.3.1
 #usr/share/aclocal/argz.m4
 #usr/share/aclocal/libtool.m4
+#usr/share/aclocal/ltargz.m4
 #usr/share/aclocal/ltdl.m4
 #usr/share/aclocal/ltoptions.m4
 #usr/share/aclocal/ltsugar.m4
@@ -21,6 +22,32 @@ usr/lib/libltdl.so.7.3.0
 #usr/share/info/libtool.info-1
 #usr/share/info/libtool.info-2
 #usr/share/libtool
+#usr/share/libtool/config-h.in
+#usr/share/libtool/configure
+#usr/share/libtool/configure.ac
+#usr/share/libtool/COPYING.LIB
+#usr/share/libtool/Makefile.am
+#usr/share/libtool/Makefile.in
+#usr/share/libtool/README
+#usr/share/libtool/aclocal.m4
+#usr/share/libtool/lt__alloc.c
+#usr/share/libtool/lt__argz.c
+#usr/share/libtool/lt__dirent.c
+#usr/share/libtool/lt__strl.c
+#usr/share/libtool/lt_dlloader.c
+#usr/share/libtool/lt_error.c
+#usr/share/libtool/ltdl.c
+#usr/share/libtool/ltdl.h
+#usr/share/libtool/ltdl.mk
+#usr/share/libtool/slist.c
+#usr/share/libtool/build-aux
+#usr/share/libtool/build-aux/compile
+#usr/share/libtool/build-aux/config.guess
+#usr/share/libtool/build-aux/config.sub
+#usr/share/libtool/build-aux/depcomp
+#usr/share/libtool/build-aux/install-sh
+#usr/share/libtool/build-aux/ltmain.sh
+#usr/share/libtool/build-aux/missing
 #usr/share/libtool/config
 #usr/share/libtool/config/compile
 #usr/share/libtool/config/config.guess
@@ -41,6 +68,24 @@ usr/lib/libltdl.so.7.3.0
 #usr/share/libtool/libltdl/config-h.in
 #usr/share/libtool/libltdl/configure
 #usr/share/libtool/libltdl/configure.ac
+#usr/share/libtool/libltdl/lt__alloc.c
+#usr/share/libtool/libltdl/lt__dirent.c
+#usr/share/libtool/libltdl/lt__strl.c
+#usr/share/libtool/libltdl/lt_dlloader.c
+#usr/share/libtool/libltdl/lt_error.c
+#usr/share/libtool/libltdl/ltdl.c
+#usr/share/libtool/libltdl/ltdl.h
+#usr/share/libtool/libltdl/slist.c
+#usr/share/libtool/libltdl/lt__alloc.h
+#usr/share/libtool/libltdl/lt__argz_.h
+#usr/share/libtool/libltdl/lt__dirent.h
+#usr/share/libtool/libltdl/lt__glibc.h
+#usr/share/libtool/libltdl/lt__private.h
+#usr/share/libtool/libltdl/lt__strl.h
+#usr/share/libtool/libltdl/lt_dlloader.h
+#usr/share/libtool/libltdl/lt_error.h
+#usr/share/libtool/libltdl/lt_system.h
+#usr/share/libtool/libltdl/slist.h
 #usr/share/libtool/libltdl/libltdl
 #usr/share/libtool/libltdl/libltdl/lt__alloc.h
 #usr/share/libtool/libltdl/libltdl/lt__dirent.h
@@ -59,13 +104,13 @@ usr/lib/libltdl.so.7.3.0
 #usr/share/libtool/libltdl/loaders/loadlibrary.c
 #usr/share/libtool/libltdl/loaders/preopen.c
 #usr/share/libtool/libltdl/loaders/shl_load.c
-#usr/share/libtool/libltdl/lt__alloc.c
-#usr/share/libtool/libltdl/lt__dirent.c
-#usr/share/libtool/libltdl/lt__strl.c
-#usr/share/libtool/libltdl/lt_dlloader.c
-#usr/share/libtool/libltdl/lt_error.c
-#usr/share/libtool/libltdl/ltdl.c
-#usr/share/libtool/libltdl/ltdl.h
-#usr/share/libtool/libltdl/slist.c
+#usr/share/libtool/loaders
+#usr/share/libtool/loaders/dld_link.c
+#usr/share/libtool/loaders/dlopen.c
+#usr/share/libtool/loaders/dyld.c
+#usr/share/libtool/loaders/load_add_on.c
+#usr/share/libtool/loaders/loadlibrary.c
+#usr/share/libtool/loaders/preopen.c
+#usr/share/libtool/loaders/shl_load.c
 #usr/share/man/man1/libtool.1
 #usr/share/man/man1/libtoolize.1
index 61c2f2a63999072a9459035a870f7e2b86654d64..5be9bdf9fdfb54e2f8328dab0a6f12f44cd6cc4b 100644 (file)
@@ -1,15 +1,16 @@
 etc/udev/rules.d/23-usb.rules
 #usr/bin/libusb-config
+#usr/include/libusb-1.0
+#usr/include/libusb-1.0/libusb.h
 #usr/include/usb.h
-#usr/include/usbpp.h
-usr/lib/libusb-0.1.so.4
-usr/lib/libusb-0.1.so.4.4.4
-#usr/lib/libusb.a
+#usr/lib/libusb-0.1.so.4
+#usr/lib/libusb-0.1.so.4.4.4
+#usr/lib/libusb-1.0.a
+#usr/lib/libusb-1.0.la
+#usr/lib/libusb-1.0.so
+usr/lib/libusb-1.0.so.0
+usr/lib/libusb-1.0.so.0.1.0
 #usr/lib/libusb.la
-usr/lib/libusb.so
-usr/lib/libusbpp-0.1.so.4
-usr/lib/libusbpp-0.1.so.4.4.4
-#usr/lib/libusbpp.a
-#usr/lib/libusbpp.la
-usr/lib/libusbpp.so
+#usr/lib/libusb.so
+#usr/lib/pkgconfig/libusb-1.0.pc
 #usr/lib/pkgconfig/libusb.pc
diff --git a/config/rootfiles/common/libusb-compat b/config/rootfiles/common/libusb-compat
new file mode 100644 (file)
index 0000000..ca3007e
--- /dev/null
@@ -0,0 +1,7 @@
+#usr/bin/libusb-config
+#usr/include/usb.h
+usr/lib/libusb-0.1.so.4
+usr/lib/libusb-0.1.so.4.4.4
+#usr/lib/libusb.la
+usr/lib/libusb.so
+#usr/lib/pkgconfig/libusb.pc
diff --git a/config/rootfiles/common/libusbx b/config/rootfiles/common/libusbx
deleted file mode 100644 (file)
index 62d6492..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-#usr/include/libusb-1.0
-#usr/include/libusb-1.0/libusb.h
-#usr/lib/libusb-1.0.a
-#usr/lib/libusb-1.0.la
-#usr/lib/libusb-1.0.so
-usr/lib/libusb-1.0.so.0
-usr/lib/libusb-1.0.so.0.1.0
-#usr/lib/pkgconfig/libusb-1.0.pc
index 07c1edda52a9062292fc3d1752d0559be475f746..1298651712ca5c791ba93149102f5757d20cbaae 100644 (file)
 #usr/include/libxml2/libxml/xpath.h
 #usr/include/libxml2/libxml/xpathInternals.h
 #usr/include/libxml2/libxml/xpointer.h
+#usr/lib/cmake
+#usr/lib/cmake/libxml2
+#usr/lib/cmake/libxml2/libxml2-config.cmake
 #usr/lib/libxml2.a
 #usr/lib/libxml2.la
 usr/lib/libxml2.so
 usr/lib/libxml2.so.2
-usr/lib/libxml2.so.2.6.32
+usr/lib/libxml2.so.2.9.2
 #usr/lib/pkgconfig/libxml-2.0.pc
 usr/lib/python2.7/site-packages/drv_libxml2.py
 usr/lib/python2.7/site-packages/libxml2.py
@@ -63,218 +66,220 @@ usr/lib/python2.7/site-packages/libxml2.py
 usr/lib/python2.7/site-packages/libxml2mod.so
 #usr/lib/xml2Conf.sh
 #usr/share/aclocal/libxml.m4
-#usr/share/doc/libxml2-2.6.32
-#usr/share/doc/libxml2-2.6.32/Copyright
-#usr/share/doc/libxml2-2.6.32/examples
-#usr/share/doc/libxml2-2.6.32/examples/testHTML.c
-#usr/share/doc/libxml2-2.6.32/examples/testSAX.c
-#usr/share/doc/libxml2-2.6.32/examples/testXPath.c
-#usr/share/doc/libxml2-2.6.32/examples/xmllint.c
-#usr/share/doc/libxml2-2.6.32/html
-#usr/share/doc/libxml2-2.6.32/html/DOM.gif
-#usr/share/doc/libxml2-2.6.32/html/FAQ.html
-#usr/share/doc/libxml2-2.6.32/html/Libxml2-Logo-180x168.gif
-#usr/share/doc/libxml2-2.6.32/html/Libxml2-Logo-90x34.gif
-#usr/share/doc/libxml2-2.6.32/html/encoding.html
-#usr/share/doc/libxml2-2.6.32/html/examples.xml
-#usr/share/doc/libxml2-2.6.32/html/examples.xsl
-#usr/share/doc/libxml2-2.6.32/html/html
-#usr/share/doc/libxml2-2.6.32/html/html/book1.html
-#usr/share/doc/libxml2-2.6.32/html/html/home.png
-#usr/share/doc/libxml2-2.6.32/html/html/index.html
-#usr/share/doc/libxml2-2.6.32/html/html/left.png
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-DOCBparser.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-HTMLparser.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-HTMLtree.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-SAX.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-SAX2.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-c14n.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-catalog.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-chvalid.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-debugXML.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-dict.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-encoding.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-entities.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-globals.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-hash.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-lib.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-list.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-nanoftp.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-nanohttp.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-parser.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-parserInternals.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-pattern.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-relaxng.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-schemasInternals.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-schematron.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-threads.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-tree.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-uri.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-valid.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xinclude.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xlink.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlIO.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlautomata.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlerror.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlexports.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlmemory.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlmodule.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlreader.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlregexp.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlsave.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlschemas.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlschemastypes.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlstring.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlunicode.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlversion.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xmlwriter.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xpath.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xpathInternals.html
-#usr/share/doc/libxml2-2.6.32/html/html/libxml-xpointer.html
-#usr/share/doc/libxml2-2.6.32/html/html/right.png
-#usr/share/doc/libxml2-2.6.32/html/html/up.png
-#usr/share/doc/libxml2-2.6.32/html/io1.c
-#usr/share/doc/libxml2-2.6.32/html/io1.res
-#usr/share/doc/libxml2-2.6.32/html/io2.c
-#usr/share/doc/libxml2-2.6.32/html/io2.res
-#usr/share/doc/libxml2-2.6.32/html/libxml.gif
-#usr/share/doc/libxml2-2.6.32/html/parse1.c
-#usr/share/doc/libxml2-2.6.32/html/parse2.c
-#usr/share/doc/libxml2-2.6.32/html/parse3.c
-#usr/share/doc/libxml2-2.6.32/html/parse4.c
-#usr/share/doc/libxml2-2.6.32/html/reader1.c
-#usr/share/doc/libxml2-2.6.32/html/reader1.res
-#usr/share/doc/libxml2-2.6.32/html/reader2.c
-#usr/share/doc/libxml2-2.6.32/html/reader3.c
-#usr/share/doc/libxml2-2.6.32/html/reader3.res
-#usr/share/doc/libxml2-2.6.32/html/reader4.c
-#usr/share/doc/libxml2-2.6.32/html/reader4.res
-#usr/share/doc/libxml2-2.6.32/html/redhat.gif
-#usr/share/doc/libxml2-2.6.32/html/smallfootonly.gif
-#usr/share/doc/libxml2-2.6.32/html/structure.gif
-#usr/share/doc/libxml2-2.6.32/html/test1.xml
-#usr/share/doc/libxml2-2.6.32/html/test2.xml
-#usr/share/doc/libxml2-2.6.32/html/test3.xml
-#usr/share/doc/libxml2-2.6.32/html/testWriter.c
-#usr/share/doc/libxml2-2.6.32/html/tree1.c
-#usr/share/doc/libxml2-2.6.32/html/tree1.res
-#usr/share/doc/libxml2-2.6.32/html/tree2.c
-#usr/share/doc/libxml2-2.6.32/html/tree2.res
-#usr/share/doc/libxml2-2.6.32/html/tst.xml
-#usr/share/doc/libxml2-2.6.32/html/tutorial
-#usr/share/doc/libxml2-2.6.32/html/tutorial/apa.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/apb.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/apc.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/apd.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ape.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/apf.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/apg.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/aph.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/api.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s02.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s03.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s04.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s05.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s06.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s07.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s08.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ar01s09.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/blank.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/1.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/10.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/2.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/3.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/4.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/5.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/6.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/7.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/8.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/callouts/9.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/caution.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/draft.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/home.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/important.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/next.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/note.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/prev.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/tip.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/toc-blank.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/toc-minus.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/toc-plus.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/up.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/images/warning.png
-#usr/share/doc/libxml2-2.6.32/html/tutorial/includeaddattribute.c
-#usr/share/doc/libxml2-2.6.32/html/tutorial/includeaddkeyword.c
-#usr/share/doc/libxml2-2.6.32/html/tutorial/includeconvert.c
-#usr/share/doc/libxml2-2.6.32/html/tutorial/includegetattribute.c
-#usr/share/doc/libxml2-2.6.32/html/tutorial/includekeyword.c
-#usr/share/doc/libxml2-2.6.32/html/tutorial/includexpath.c
-#usr/share/doc/libxml2-2.6.32/html/tutorial/index.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/ix01.html
-#usr/share/doc/libxml2-2.6.32/html/tutorial/xmltutorial.pdf
-#usr/share/doc/libxml2-2.6.32/html/w3c.png
-#usr/share/doc/libxml2-2.6.32/html/writer.xml
-#usr/share/doc/libxml2-2.6.32/html/xml.html
-#usr/share/doc/libxml2-2.6.32/html/xpath1.c
-#usr/share/doc/libxml2-2.6.32/html/xpath1.res
-#usr/share/doc/libxml2-2.6.32/html/xpath2.c
-#usr/share/doc/libxml2-2.6.32/html/xpath2.res
-#usr/share/doc/libxml2-python-2.6.32
-#usr/share/doc/libxml2-python-2.6.32/TODO
-#usr/share/doc/libxml2-python-2.6.32/examples
-#usr/share/doc/libxml2-python-2.6.32/examples/attribs.py
-#usr/share/doc/libxml2-python-2.6.32/examples/build.py
-#usr/share/doc/libxml2-python-2.6.32/examples/compareNodes.py
-#usr/share/doc/libxml2-python-2.6.32/examples/ctxterror.py
-#usr/share/doc/libxml2-python-2.6.32/examples/cutnpaste.py
-#usr/share/doc/libxml2-python-2.6.32/examples/dtdvalid.py
-#usr/share/doc/libxml2-python-2.6.32/examples/error.py
-#usr/share/doc/libxml2-python-2.6.32/examples/inbuf.py
-#usr/share/doc/libxml2-python-2.6.32/examples/indexes.py
-#usr/share/doc/libxml2-python-2.6.32/examples/invalid.xml
-#usr/share/doc/libxml2-python-2.6.32/examples/nsdel.py
-#usr/share/doc/libxml2-python-2.6.32/examples/outbuf.py
-#usr/share/doc/libxml2-python-2.6.32/examples/push.py
-#usr/share/doc/libxml2-python-2.6.32/examples/pushSAX.py
-#usr/share/doc/libxml2-python-2.6.32/examples/pushSAXhtml.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader2.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader3.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader4.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader5.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader6.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader7.py
-#usr/share/doc/libxml2-python-2.6.32/examples/reader8.py
-#usr/share/doc/libxml2-python-2.6.32/examples/readererr.py
-#usr/share/doc/libxml2-python-2.6.32/examples/readernext.py
-#usr/share/doc/libxml2-python-2.6.32/examples/regexp.py
-#usr/share/doc/libxml2-python-2.6.32/examples/relaxng.py
-#usr/share/doc/libxml2-python-2.6.32/examples/resolver.py
-#usr/share/doc/libxml2-python-2.6.32/examples/schema.py
-#usr/share/doc/libxml2-python-2.6.32/examples/serialize.py
-#usr/share/doc/libxml2-python-2.6.32/examples/sync.py
-#usr/share/doc/libxml2-python-2.6.32/examples/test.dtd
-#usr/share/doc/libxml2-python-2.6.32/examples/thread2.py
-#usr/share/doc/libxml2-python-2.6.32/examples/tst.py
-#usr/share/doc/libxml2-python-2.6.32/examples/tst.xml
-#usr/share/doc/libxml2-python-2.6.32/examples/tstLastError.py
-#usr/share/doc/libxml2-python-2.6.32/examples/tstURI.py
-#usr/share/doc/libxml2-python-2.6.32/examples/tstmem.py
-#usr/share/doc/libxml2-python-2.6.32/examples/tstxpath.py
-#usr/share/doc/libxml2-python-2.6.32/examples/valid.xml
-#usr/share/doc/libxml2-python-2.6.32/examples/validDTD.py
-#usr/share/doc/libxml2-python-2.6.32/examples/validRNG.py
-#usr/share/doc/libxml2-python-2.6.32/examples/validSchemas.py
-#usr/share/doc/libxml2-python-2.6.32/examples/validate.py
-#usr/share/doc/libxml2-python-2.6.32/examples/walker.py
-#usr/share/doc/libxml2-python-2.6.32/examples/xpath.py
-#usr/share/doc/libxml2-python-2.6.32/examples/xpathext.py
-#usr/share/doc/libxml2-python-2.6.32/examples/xpathns.py
-#usr/share/doc/libxml2-python-2.6.32/examples/xpathret.py
-#usr/share/gtk-doc
-#usr/share/gtk-doc/html
+#usr/share/doc/libxml2-2.9.2
+#usr/share/doc/libxml2-2.9.2/Copyright
+#usr/share/doc/libxml2-2.9.2/examples
+#usr/share/doc/libxml2-2.9.2/examples/testHTML.c
+#usr/share/doc/libxml2-2.9.2/examples/testSAX.c
+#usr/share/doc/libxml2-2.9.2/examples/testXPath.c
+#usr/share/doc/libxml2-2.9.2/examples/xmllint.c
+#usr/share/doc/libxml2-2.9.2/html
+#usr/share/doc/libxml2-2.9.2/html/DOM.gif
+#usr/share/doc/libxml2-2.9.2/html/FAQ.html
+#usr/share/doc/libxml2-2.9.2/html/Libxml2-Logo-180x168.gif
+#usr/share/doc/libxml2-2.9.2/html/Libxml2-Logo-90x34.gif
+#usr/share/doc/libxml2-2.9.2/html/encoding.html
+#usr/share/doc/libxml2-2.9.2/html/examples.xml
+#usr/share/doc/libxml2-2.9.2/html/examples.xsl
+#usr/share/doc/libxml2-2.9.2/html/html
+#usr/share/doc/libxml2-2.9.2/html/html/book1.html
+#usr/share/doc/libxml2-2.9.2/html/html/home.png
+#usr/share/doc/libxml2-2.9.2/html/html/index.html
+#usr/share/doc/libxml2-2.9.2/html/html/left.png
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-DOCBparser.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-HTMLparser.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-HTMLtree.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-SAX.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-SAX2.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-c14n.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-catalog.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-chvalid.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-debugXML.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-dict.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-encoding.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-entities.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-globals.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-hash.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-lib.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-list.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-nanoftp.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-nanohttp.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-parser.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-parserInternals.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-pattern.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-relaxng.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-schemasInternals.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-schematron.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-threads.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-tree.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-uri.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-valid.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xinclude.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xlink.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlIO.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlautomata.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlerror.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlexports.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlmemory.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlmodule.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlreader.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlregexp.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlsave.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlschemas.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlschemastypes.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlstring.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlunicode.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlversion.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xmlwriter.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xpath.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xpathInternals.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xpointer.html
+#usr/share/doc/libxml2-2.9.2/html/html/libxml-xzlib.html
+#usr/share/doc/libxml2-2.9.2/html/html/right.png
+#usr/share/doc/libxml2-2.9.2/html/html/up.png
+#usr/share/doc/libxml2-2.9.2/html/index.html
+#usr/share/doc/libxml2-2.9.2/html/io1.c
+#usr/share/doc/libxml2-2.9.2/html/io1.res
+#usr/share/doc/libxml2-2.9.2/html/io2.c
+#usr/share/doc/libxml2-2.9.2/html/io2.res
+#usr/share/doc/libxml2-2.9.2/html/libxml.gif
+#usr/share/doc/libxml2-2.9.2/html/parse1.c
+#usr/share/doc/libxml2-2.9.2/html/parse2.c
+#usr/share/doc/libxml2-2.9.2/html/parse3.c
+#usr/share/doc/libxml2-2.9.2/html/parse4.c
+#usr/share/doc/libxml2-2.9.2/html/reader1.c
+#usr/share/doc/libxml2-2.9.2/html/reader1.res
+#usr/share/doc/libxml2-2.9.2/html/reader2.c
+#usr/share/doc/libxml2-2.9.2/html/reader3.c
+#usr/share/doc/libxml2-2.9.2/html/reader3.res
+#usr/share/doc/libxml2-2.9.2/html/reader4.c
+#usr/share/doc/libxml2-2.9.2/html/reader4.res
+#usr/share/doc/libxml2-2.9.2/html/redhat.gif
+#usr/share/doc/libxml2-2.9.2/html/smallfootonly.gif
+#usr/share/doc/libxml2-2.9.2/html/structure.gif
+#usr/share/doc/libxml2-2.9.2/html/test1.xml
+#usr/share/doc/libxml2-2.9.2/html/test2.xml
+#usr/share/doc/libxml2-2.9.2/html/test3.xml
+#usr/share/doc/libxml2-2.9.2/html/testWriter.c
+#usr/share/doc/libxml2-2.9.2/html/tree1.c
+#usr/share/doc/libxml2-2.9.2/html/tree1.res
+#usr/share/doc/libxml2-2.9.2/html/tree2.c
+#usr/share/doc/libxml2-2.9.2/html/tree2.res
+#usr/share/doc/libxml2-2.9.2/html/tst.xml
+#usr/share/doc/libxml2-2.9.2/html/tutorial
+#usr/share/doc/libxml2-2.9.2/html/tutorial/apa.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/apb.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/apc.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/apd.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ape.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/apf.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/apg.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/aph.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/api.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s02.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s03.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s04.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s05.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s06.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s07.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s08.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ar01s09.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/blank.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/1.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/10.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/2.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/3.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/4.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/5.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/6.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/7.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/8.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/9.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/caution.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/draft.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/home.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/important.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/next.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/note.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/prev.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/tip.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/toc-blank.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/toc-minus.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/toc-plus.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/up.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/images/warning.png
+#usr/share/doc/libxml2-2.9.2/html/tutorial/includeaddattribute.c
+#usr/share/doc/libxml2-2.9.2/html/tutorial/includeaddkeyword.c
+#usr/share/doc/libxml2-2.9.2/html/tutorial/includeconvert.c
+#usr/share/doc/libxml2-2.9.2/html/tutorial/includegetattribute.c
+#usr/share/doc/libxml2-2.9.2/html/tutorial/includekeyword.c
+#usr/share/doc/libxml2-2.9.2/html/tutorial/includexpath.c
+#usr/share/doc/libxml2-2.9.2/html/tutorial/index.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/ix01.html
+#usr/share/doc/libxml2-2.9.2/html/tutorial/xmltutorial.pdf
+#usr/share/doc/libxml2-2.9.2/html/w3c.png
+#usr/share/doc/libxml2-2.9.2/html/writer.xml
+#usr/share/doc/libxml2-2.9.2/html/xml.html
+#usr/share/doc/libxml2-2.9.2/html/xpath1.c
+#usr/share/doc/libxml2-2.9.2/html/xpath1.res
+#usr/share/doc/libxml2-2.9.2/html/xpath2.c
+#usr/share/doc/libxml2-2.9.2/html/xpath2.res
+#usr/share/doc/libxml2-python-2.9.2
+#usr/share/doc/libxml2-python-2.9.2/TODO
+#usr/share/doc/libxml2-python-2.9.2/examples
+#usr/share/doc/libxml2-python-2.9.2/examples/attribs.py
+#usr/share/doc/libxml2-python-2.9.2/examples/build.py
+#usr/share/doc/libxml2-python-2.9.2/examples/compareNodes.py
+#usr/share/doc/libxml2-python-2.9.2/examples/ctxterror.py
+#usr/share/doc/libxml2-python-2.9.2/examples/cutnpaste.py
+#usr/share/doc/libxml2-python-2.9.2/examples/dtdvalid.py
+#usr/share/doc/libxml2-python-2.9.2/examples/error.py
+#usr/share/doc/libxml2-python-2.9.2/examples/inbuf.py
+#usr/share/doc/libxml2-python-2.9.2/examples/indexes.py
+#usr/share/doc/libxml2-python-2.9.2/examples/input_callback.py
+#usr/share/doc/libxml2-python-2.9.2/examples/invalid.xml
+#usr/share/doc/libxml2-python-2.9.2/examples/nsdel.py
+#usr/share/doc/libxml2-python-2.9.2/examples/outbuf.py
+#usr/share/doc/libxml2-python-2.9.2/examples/push.py
+#usr/share/doc/libxml2-python-2.9.2/examples/pushSAX.py
+#usr/share/doc/libxml2-python-2.9.2/examples/pushSAXhtml.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader2.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader3.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader4.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader5.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader6.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader7.py
+#usr/share/doc/libxml2-python-2.9.2/examples/reader8.py
+#usr/share/doc/libxml2-python-2.9.2/examples/readererr.py
+#usr/share/doc/libxml2-python-2.9.2/examples/readernext.py
+#usr/share/doc/libxml2-python-2.9.2/examples/regexp.py
+#usr/share/doc/libxml2-python-2.9.2/examples/relaxng.py
+#usr/share/doc/libxml2-python-2.9.2/examples/resolver.py
+#usr/share/doc/libxml2-python-2.9.2/examples/schema.py
+#usr/share/doc/libxml2-python-2.9.2/examples/serialize.py
+#usr/share/doc/libxml2-python-2.9.2/examples/sync.py
+#usr/share/doc/libxml2-python-2.9.2/examples/test.dtd
+#usr/share/doc/libxml2-python-2.9.2/examples/thread2.py
+#usr/share/doc/libxml2-python-2.9.2/examples/tst.py
+#usr/share/doc/libxml2-python-2.9.2/examples/tst.xml
+#usr/share/doc/libxml2-python-2.9.2/examples/tstLastError.py
+#usr/share/doc/libxml2-python-2.9.2/examples/tstURI.py
+#usr/share/doc/libxml2-python-2.9.2/examples/tstmem.py
+#usr/share/doc/libxml2-python-2.9.2/examples/tstxpath.py
+#usr/share/doc/libxml2-python-2.9.2/examples/valid.xml
+#usr/share/doc/libxml2-python-2.9.2/examples/validDTD.py
+#usr/share/doc/libxml2-python-2.9.2/examples/validRNG.py
+#usr/share/doc/libxml2-python-2.9.2/examples/validSchemas.py
+#usr/share/doc/libxml2-python-2.9.2/examples/validate.py
+#usr/share/doc/libxml2-python-2.9.2/examples/walker.py
+#usr/share/doc/libxml2-python-2.9.2/examples/xpath.py
+#usr/share/doc/libxml2-python-2.9.2/examples/xpathext.py
+#usr/share/doc/libxml2-python-2.9.2/examples/xpathleak.py
+#usr/share/doc/libxml2-python-2.9.2/examples/xpathns.py
+#usr/share/doc/libxml2-python-2.9.2/examples/xpathret.py
 #usr/share/gtk-doc/html/libxml2
 #usr/share/gtk-doc/html/libxml2/general.html
 #usr/share/gtk-doc/html/libxml2/home.png
index a6e2ab39a3b03991378330634339d029f7a71207..be00b2426c2bb91047b57a039e024c8481d7dfa6 100644 (file)
@@ -24,18 +24,19 @@ usr/bin/xsltproc
 #usr/include/libxslt/xsltInternals.h
 #usr/include/libxslt/xsltconfig.h
 #usr/include/libxslt/xsltexports.h
+#usr/include/libxslt/xsltlocale.h
 #usr/include/libxslt/xsltutils.h
 #usr/lib/libexslt.a
 #usr/lib/libexslt.la
 usr/lib/libexslt.so
 usr/lib/libexslt.so.0
-usr/lib/libexslt.so.0.8.13
+usr/lib/libexslt.so.0.8.17
 #usr/lib/libxslt-plugins
 #usr/lib/libxslt.a
 #usr/lib/libxslt.la
 usr/lib/libxslt.so
 usr/lib/libxslt.so.1
-usr/lib/libxslt.so.1.1.17
+usr/lib/libxslt.so.1.1.28
 #usr/lib/pkgconfig/libexslt.pc
 #usr/lib/pkgconfig/libxslt.pc
 usr/lib/python2.7/site-packages/libxml2.pyc
@@ -44,108 +45,113 @@ usr/lib/python2.7/site-packages/libxml2.pyc
 #usr/lib/python2.7/site-packages/libxsltmod.la
 usr/lib/python2.7/site-packages/libxsltmod.so
 #usr/lib/xsltConf.sh
-#usr/man/man1/xsltproc.1
-#usr/man/man3/libexslt.3
-#usr/man/man3/libxslt.3
 #usr/share/aclocal/libxslt.m4
-#usr/share/doc/libxslt-1.1.17
-#usr/share/doc/libxslt-1.1.17/html
-#usr/share/doc/libxslt-1.1.17/html/API.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk0.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk1.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk2.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk3.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk4.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk5.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk6.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk7.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk8.html
-#usr/share/doc/libxslt-1.1.17/html/APIchunk9.html
-#usr/share/doc/libxslt-1.1.17/html/APIconstructors.html
-#usr/share/doc/libxslt-1.1.17/html/APIfiles.html
-#usr/share/doc/libxslt-1.1.17/html/APIfunctions.html
-#usr/share/doc/libxslt-1.1.17/html/APIsymbols.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/APIchunk0.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/APIconstructors.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/APIfiles.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/APIfunctions.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/APIsymbols.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/bugs.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/docs.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/downloads.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/exslt.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/help.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/index.html
-#usr/share/doc/libxslt-1.1.17/html/EXSLT/intro.html
-#usr/share/doc/libxslt-1.1.17/html/FAQ.html
-#usr/share/doc/libxslt-1.1.17/html/Libxslt-Logo-180x168.gif
-#usr/share/doc/libxslt-1.1.17/html/Libxslt-Logo-90x34.gif
-#usr/share/doc/libxslt-1.1.17/html/bugs.html
-#usr/share/doc/libxslt-1.1.17/html/contexts.gif
-#usr/share/doc/libxslt-1.1.17/html/contribs.html
-#usr/share/doc/libxslt-1.1.17/html/docbook.html
-#usr/share/doc/libxslt-1.1.17/html/docs.html
-#usr/share/doc/libxslt-1.1.17/html/downloads.html
-#usr/share/doc/libxslt-1.1.17/html/extensions.html
-#usr/share/doc/libxslt-1.1.17/html/help.html
-#usr/share/doc/libxslt-1.1.17/html/html
-#usr/share/doc/libxslt-1.1.17/html/html/book1.html
-#usr/share/doc/libxslt-1.1.17/html/html/home.png
-#usr/share/doc/libxslt-1.1.17/html/html/index.html
-#usr/share/doc/libxslt-1.1.17/html/html/left.png
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-attributes.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-documents.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-extensions.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-extra.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-functions.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-imports.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-keys.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-lib.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-namespaces.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-numbersInternals.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-pattern.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-preproc.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-security.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-templates.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-transform.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-variables.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-xslt.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-xsltInternals.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-xsltexports.html
-#usr/share/doc/libxslt-1.1.17/html/html/libxslt-xsltutils.html
-#usr/share/doc/libxslt-1.1.17/html/html/right.png
-#usr/share/doc/libxslt-1.1.17/html/html/up.png
-#usr/share/doc/libxslt-1.1.17/html/index.html
-#usr/share/doc/libxslt-1.1.17/html/internals.html
-#usr/share/doc/libxslt-1.1.17/html/intro.html
-#usr/share/doc/libxslt-1.1.17/html/news.html
-#usr/share/doc/libxslt-1.1.17/html/node.gif
-#usr/share/doc/libxslt-1.1.17/html/object.gif
-#usr/share/doc/libxslt-1.1.17/html/processing.gif
-#usr/share/doc/libxslt-1.1.17/html/python.html
-#usr/share/doc/libxslt-1.1.17/html/redhat.gif
-#usr/share/doc/libxslt-1.1.17/html/smallfootonly.gif
-#usr/share/doc/libxslt-1.1.17/html/stylesheet.gif
-#usr/share/doc/libxslt-1.1.17/html/templates.gif
-#usr/share/doc/libxslt-1.1.17/html/tutorial
-#usr/share/doc/libxslt-1.1.17/html/tutorial/libxslt_tutorial.c
-#usr/share/doc/libxslt-1.1.17/html/tutorial/libxslttutorial.html
-#usr/share/doc/libxslt-1.1.17/html/tutorial/libxslttutorial.xml
-#usr/share/doc/libxslt-1.1.17/html/tutorial2
-#usr/share/doc/libxslt-1.1.17/html/tutorial2/libxslt_pipes.c
-#usr/share/doc/libxslt-1.1.17/html/tutorial2/libxslt_pipes.html
-#usr/share/doc/libxslt-1.1.17/html/tutorial2/libxslt_pipes.xml
-#usr/share/doc/libxslt-1.1.17/html/xslt.html
-#usr/share/doc/libxslt-1.1.17/html/xsltproc.html
-#usr/share/doc/libxslt-1.1.17/html/xsltproc2.html
-#usr/share/doc/libxslt-python-1.1.17
-#usr/share/doc/libxslt-python-1.1.17/TODO
-#usr/share/doc/libxslt-python-1.1.17/examples
-#usr/share/doc/libxslt-python-1.1.17/examples/basic.py
-#usr/share/doc/libxslt-python-1.1.17/examples/exslt.py
-#usr/share/doc/libxslt-python-1.1.17/examples/extelem.py
-#usr/share/doc/libxslt-python-1.1.17/examples/extfunc.py
-#usr/share/doc/libxslt-python-1.1.17/examples/pyxsltproc.py
-#usr/share/doc/libxslt-python-1.1.17/examples/test.xml
-#usr/share/doc/libxslt-python-1.1.17/examples/test.xsl
+#usr/share/doc/libxslt-1.1.28
+#usr/share/doc/libxslt-1.1.28/html
+#usr/share/doc/libxslt-1.1.28/html/API.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk0.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk1.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk10.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk11.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk12.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk13.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk2.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk3.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk4.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk5.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk6.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk7.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk8.html
+#usr/share/doc/libxslt-1.1.28/html/APIchunk9.html
+#usr/share/doc/libxslt-1.1.28/html/APIconstructors.html
+#usr/share/doc/libxslt-1.1.28/html/APIfiles.html
+#usr/share/doc/libxslt-1.1.28/html/APIfunctions.html
+#usr/share/doc/libxslt-1.1.28/html/APIsymbols.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/APIchunk0.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/APIconstructors.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/APIfiles.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/APIfunctions.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/APIsymbols.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/bugs.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/docs.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/downloads.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/exslt.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/help.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/index.html
+#usr/share/doc/libxslt-1.1.28/html/EXSLT/intro.html
+#usr/share/doc/libxslt-1.1.28/html/FAQ.html
+#usr/share/doc/libxslt-1.1.28/html/Libxslt-Logo-180x168.gif
+#usr/share/doc/libxslt-1.1.28/html/Libxslt-Logo-90x34.gif
+#usr/share/doc/libxslt-1.1.28/html/bugs.html
+#usr/share/doc/libxslt-1.1.28/html/contexts.gif
+#usr/share/doc/libxslt-1.1.28/html/contribs.html
+#usr/share/doc/libxslt-1.1.28/html/docbook.html
+#usr/share/doc/libxslt-1.1.28/html/docs.html
+#usr/share/doc/libxslt-1.1.28/html/downloads.html
+#usr/share/doc/libxslt-1.1.28/html/extensions.html
+#usr/share/doc/libxslt-1.1.28/html/help.html
+#usr/share/doc/libxslt-1.1.28/html/html
+#usr/share/doc/libxslt-1.1.28/html/html/book1.html
+#usr/share/doc/libxslt-1.1.28/html/html/home.png
+#usr/share/doc/libxslt-1.1.28/html/html/index.html
+#usr/share/doc/libxslt-1.1.28/html/html/left.png
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-attributes.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-documents.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-extensions.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-extra.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-functions.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-imports.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-keys.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-lib.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-namespaces.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-numbersInternals.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-pattern.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-preproc.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-security.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-templates.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-transform.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-variables.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-xslt.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-xsltInternals.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-xsltexports.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-xsltlocale.html
+#usr/share/doc/libxslt-1.1.28/html/html/libxslt-xsltutils.html
+#usr/share/doc/libxslt-1.1.28/html/html/right.png
+#usr/share/doc/libxslt-1.1.28/html/html/up.png
+#usr/share/doc/libxslt-1.1.28/html/index.html
+#usr/share/doc/libxslt-1.1.28/html/internals.html
+#usr/share/doc/libxslt-1.1.28/html/intro.html
+#usr/share/doc/libxslt-1.1.28/html/news.html
+#usr/share/doc/libxslt-1.1.28/html/node.gif
+#usr/share/doc/libxslt-1.1.28/html/object.gif
+#usr/share/doc/libxslt-1.1.28/html/processing.gif
+#usr/share/doc/libxslt-1.1.28/html/python.html
+#usr/share/doc/libxslt-1.1.28/html/redhat.gif
+#usr/share/doc/libxslt-1.1.28/html/smallfootonly.gif
+#usr/share/doc/libxslt-1.1.28/html/stylesheet.gif
+#usr/share/doc/libxslt-1.1.28/html/templates.gif
+#usr/share/doc/libxslt-1.1.28/html/tutorial
+#usr/share/doc/libxslt-1.1.28/html/tutorial/libxslt_tutorial.c
+#usr/share/doc/libxslt-1.1.28/html/tutorial/libxslttutorial.html
+#usr/share/doc/libxslt-1.1.28/html/tutorial/libxslttutorial.xml
+#usr/share/doc/libxslt-1.1.28/html/tutorial2
+#usr/share/doc/libxslt-1.1.28/html/tutorial2/libxslt_pipes.c
+#usr/share/doc/libxslt-1.1.28/html/tutorial2/libxslt_pipes.html
+#usr/share/doc/libxslt-1.1.28/html/tutorial2/libxslt_pipes.xml
+#usr/share/doc/libxslt-1.1.28/html/xslt.html
+#usr/share/doc/libxslt-1.1.28/html/xsltproc.html
+#usr/share/doc/libxslt-1.1.28/html/xsltproc2.html
+#usr/share/doc/libxslt-python-1.1.28
+#usr/share/doc/libxslt-python-1.1.28/TODO
+#usr/share/doc/libxslt-python-1.1.28/examples
+#usr/share/doc/libxslt-python-1.1.28/examples/basic.py
+#usr/share/doc/libxslt-python-1.1.28/examples/exslt.py
+#usr/share/doc/libxslt-python-1.1.28/examples/extelem.py
+#usr/share/doc/libxslt-python-1.1.28/examples/extfunc.py
+#usr/share/doc/libxslt-python-1.1.28/examples/pyxsltproc.py
+#usr/share/doc/libxslt-python-1.1.28/examples/test.xml
+#usr/share/doc/libxslt-python-1.1.28/examples/test.xsl
+#usr/share/man/man1/xsltproc.1
+#usr/share/man/man3/libexslt.3
+#usr/share/man/man3/libxslt.3
diff --git a/config/rootfiles/common/lua b/config/rootfiles/common/lua
new file mode 100644 (file)
index 0000000..15d5995
--- /dev/null
@@ -0,0 +1,14 @@
+usr/bin/lua
+usr/bin/luac
+#usr/include/lauxlib.h
+#usr/include/lua.h
+#usr/include/lua.hpp
+#usr/include/luaconf.h
+#usr/include/lualib.h
+usr/lib/liblua-5.3.so
+#usr/lib/liblua.a
+#usr/lib/liblua.la
+usr/lib/liblua.so
+#usr/lib/pkgconfig/lua.pc
+#usr/share/man/man1/lua.1
+#usr/share/man/man1/luac.1
index 6d746bd10d3ec0e065fe6317b9782b9f93f6cfed..4ebc05cdbc8a4bf6e7e69169407f53915a8a2b4d 100644 (file)
 #usr/include/lzo/lzoconf.h
 #usr/include/lzo/lzodefs.h
 #usr/include/lzo/lzoutil.h
-#usr/lib/liblzo2.a
 #usr/lib/liblzo2.la
 usr/lib/liblzo2.so
 usr/lib/liblzo2.so.2
 usr/lib/liblzo2.so.2.0.0
-#usr/share/doc/lzo
-#usr/share/doc/lzo/AUTHORS
-#usr/share/doc/lzo/COPYING
-#usr/share/doc/lzo/LZO.FAQ
-#usr/share/doc/lzo/LZO.TXT
-#usr/share/doc/lzo/LZOAPI.TXT
-#usr/share/doc/lzo/NEWS
-#usr/share/doc/lzo/THANKS
+#usr/share/doc/lzo-2.09
+#usr/share/doc/lzo-2.09/AUTHORS
+#usr/share/doc/lzo-2.09/COPYING
+#usr/share/doc/lzo-2.09/LZO.FAQ
+#usr/share/doc/lzo-2.09/LZO.TXT
+#usr/share/doc/lzo-2.09/LZOAPI.TXT
+#usr/share/doc/lzo-2.09/NEWS
+#usr/share/doc/lzo-2.09/THANKS
index f33d08c61a499ff113eec47ad70e77723d6963b5..191788460a0f42fc87002e0b5ba63834b3b91f10 100644 (file)
@@ -3,6 +3,7 @@ usr/local/bin/addonctrl
 usr/local/bin/backupctrl
 #usr/local/bin/clamavctrl
 usr/local/bin/collectdctrl
+usr/local/bin/ddnsctrl
 usr/local/bin/dhcpctrl
 usr/local/bin/dnsmasqctrl
 usr/local/bin/extrahdctrl
@@ -32,7 +33,6 @@ usr/local/bin/sshctrl
 usr/local/bin/syslogdctrl
 usr/local/bin/timectrl
 #usr/local/bin/torctrl
-#usr/local/bin/tripwirectrl
 usr/local/bin/updxlratorctrl
 usr/local/bin/upnpctrl
 usr/local/bin/urlfilterctrl
index 46b3bd9c967078a9cda4d75e2eff69fe7eef0326..da434e92df6f40d3339969cec1b31c09cf6be8e2 100644 (file)
@@ -77,6 +77,8 @@ usr/lib/libtic.so.5.9
 usr/lib/libtinfo.so.5
 usr/lib/libtinfo.so.5.9
 #usr/lib/terminfo
+#usr/man
+#usr/man/man1
 #usr/man/man1/captoinfo.1m
 #usr/man/man1/clear.1
 #usr/man/man1/infocmp.1m
@@ -941,6 +943,7 @@ usr/lib/libtinfo.so.5.9
 #usr/man/man5
 #usr/man/man5/term.5
 #usr/man/man5/terminfo.5
+#usr/man/man7
 #usr/man/man7/term.7
 #usr/share/tabset
 #usr/share/tabset/std
index e6e4552959d28ecbe6aa36f22f7e075fd18ff0ef..7845a34bc4e547ff33d5a29dbfe7502933361fea 100644 (file)
@@ -20,6 +20,7 @@
 #usr/include/nettle/chacha-poly1305.h
 #usr/include/nettle/chacha.h
 #usr/include/nettle/ctr.h
+#usr/include/nettle/curve25519.h
 #usr/include/nettle/des-compat.h
 #usr/include/nettle/des.h
 #usr/include/nettle/dsa-compat.h
@@ -28,6 +29,7 @@
 #usr/include/nettle/ecc-curve.h
 #usr/include/nettle/ecc.h
 #usr/include/nettle/ecdsa.h
+#usr/include/nettle/eddsa.h
 #usr/include/nettle/gcm.h
 #usr/include/nettle/gosthash94.h
 #usr/include/nettle/hmac.h
 #usr/include/nettle/sha3.h
 #usr/include/nettle/twofish.h
 #usr/include/nettle/umac.h
+#usr/include/nettle/version.h
 #usr/include/nettle/yarrow.h
-#usr/lib/libhogweed.a
-#usr/lib/libhogweed.so
-usr/lib/libhogweed.so.3
-usr/lib/libhogweed.so.3.0
-#usr/lib/libnettle.a
+usr/lib/libhogweed.so
+usr/lib/libhogweed.so.4
+usr/lib/libhogweed.so.4.1
 #usr/lib/libnettle.so
-usr/lib/libnettle.so.5
-usr/lib/libnettle.so.5.0
+usr/lib/libnettle.so.6
+usr/lib/libnettle.so.6.1
 #usr/lib/pkgconfig/hogweed.pc
 #usr/lib/pkgconfig/nettle.pc
+#usr/share/doc/nettle-3.1.1
 #usr/share/info/nettle.info
index 2fbd2b34c87623ab9b6aceaea7c9af854743f5b1..adc9b7581371c92e6174500b8b30d9efe0d9c3ec 100644 (file)
@@ -3,7 +3,7 @@ usr/bin/whiptail
 #usr/lib/libnewt.a
 #usr/lib/libnewt.so
 usr/lib/libnewt.so.0.52
-usr/lib/libnewt.so.0.52.17
+usr/lib/libnewt.so.0.52.18
 #usr/lib/pkgconfig/libnewt.pc
 #usr/lib/python2.7/site-packages/_snack.so
 #usr/lib/python2.7/site-packages/snack.py
@@ -13,8 +13,6 @@ usr/lib/libnewt.so.0.52.17
 #usr/share/locale/as
 #usr/share/locale/as/LC_MESSAGES
 #usr/share/locale/as/LC_MESSAGES/newt.mo
-#usr/share/locale/ast
-#usr/share/locale/ast/LC_MESSAGES
 #usr/share/locale/ast/LC_MESSAGES/newt.mo
 #usr/share/locale/bal
 #usr/share/locale/bal/LC_MESSAGES
@@ -102,8 +100,6 @@ usr/lib/libnewt.so.0.52.17
 #usr/share/locale/nn
 #usr/share/locale/nn/LC_MESSAGES
 #usr/share/locale/nn/LC_MESSAGES/newt.mo
-#usr/share/locale/pa
-#usr/share/locale/pa/LC_MESSAGES
 #usr/share/locale/pa/LC_MESSAGES/newt.mo
 #usr/share/locale/pl/LC_MESSAGES/newt.mo
 #usr/share/locale/pt/LC_MESSAGES/newt.mo
index aacdb25a48f7f72764d6302be05ed0cc3c68047b..fd1262e9bdc531151a003ae0da9faba88e421fe9 100644 (file)
@@ -10,261 +10,264 @@ usr/bin/ntpd
 usr/bin/ntpdate
 usr/bin/ntpdc
 usr/bin/ntpq
+#usr/bin/ntpsnmpd
 usr/bin/ntptime
 usr/bin/ntptrace
 usr/bin/sntp
 usr/bin/tickadj
-#usr/include/event2
-#usr/share/doc/ntp4
-#usr/share/doc/ntp4/html
-#usr/share/doc/ntp4/html/access.html
-#usr/share/doc/ntp4/html/accopt.html
-#usr/share/doc/ntp4/html/assoc.html
-#usr/share/doc/ntp4/html/audio.html
-#usr/share/doc/ntp4/html/authentic.html
-#usr/share/doc/ntp4/html/authopt.html
-#usr/share/doc/ntp4/html/autokey.html
-#usr/share/doc/ntp4/html/bugs.html
-#usr/share/doc/ntp4/html/build.html
-#usr/share/doc/ntp4/html/clock.html
-#usr/share/doc/ntp4/html/clockopt.html
-#usr/share/doc/ntp4/html/cluster.html
-#usr/share/doc/ntp4/html/comdex.html
-#usr/share/doc/ntp4/html/config.html
-#usr/share/doc/ntp4/html/confopt.html
-#usr/share/doc/ntp4/html/copyright.html
-#usr/share/doc/ntp4/html/debug.html
-#usr/share/doc/ntp4/html/decode.html
-#usr/share/doc/ntp4/html/discipline.html
-#usr/share/doc/ntp4/html/discover.html
-#usr/share/doc/ntp4/html/drivers
-#usr/share/doc/ntp4/html/drivers/driver1.html
-#usr/share/doc/ntp4/html/drivers/driver10.html
-#usr/share/doc/ntp4/html/drivers/driver11.html
-#usr/share/doc/ntp4/html/drivers/driver12.html
-#usr/share/doc/ntp4/html/drivers/driver16.html
-#usr/share/doc/ntp4/html/drivers/driver18.html
-#usr/share/doc/ntp4/html/drivers/driver19.html
-#usr/share/doc/ntp4/html/drivers/driver20.html
-#usr/share/doc/ntp4/html/drivers/driver22.html
-#usr/share/doc/ntp4/html/drivers/driver26.html
-#usr/share/doc/ntp4/html/drivers/driver27.html
-#usr/share/doc/ntp4/html/drivers/driver28.html
-#usr/share/doc/ntp4/html/drivers/driver29.html
-#usr/share/doc/ntp4/html/drivers/driver3.html
-#usr/share/doc/ntp4/html/drivers/driver30.html
-#usr/share/doc/ntp4/html/drivers/driver31.html
-#usr/share/doc/ntp4/html/drivers/driver32.html
-#usr/share/doc/ntp4/html/drivers/driver33.html
-#usr/share/doc/ntp4/html/drivers/driver34.html
-#usr/share/doc/ntp4/html/drivers/driver35.html
-#usr/share/doc/ntp4/html/drivers/driver36.html
-#usr/share/doc/ntp4/html/drivers/driver37.html
-#usr/share/doc/ntp4/html/drivers/driver38.html
-#usr/share/doc/ntp4/html/drivers/driver39.html
-#usr/share/doc/ntp4/html/drivers/driver4.html
-#usr/share/doc/ntp4/html/drivers/driver40.html
-#usr/share/doc/ntp4/html/drivers/driver42.html
-#usr/share/doc/ntp4/html/drivers/driver43.html
-#usr/share/doc/ntp4/html/drivers/driver44.html
-#usr/share/doc/ntp4/html/drivers/driver45.html
-#usr/share/doc/ntp4/html/drivers/driver46.html
-#usr/share/doc/ntp4/html/drivers/driver5.html
-#usr/share/doc/ntp4/html/drivers/driver6.html
-#usr/share/doc/ntp4/html/drivers/driver7.html
-#usr/share/doc/ntp4/html/drivers/driver8.html
-#usr/share/doc/ntp4/html/drivers/driver9.html
-#usr/share/doc/ntp4/html/drivers/icons
-#usr/share/doc/ntp4/html/drivers/icons/home.gif
-#usr/share/doc/ntp4/html/drivers/icons/mail2.gif
-#usr/share/doc/ntp4/html/drivers/mx4200data.html
-#usr/share/doc/ntp4/html/drivers/oncore-shmem.html
-#usr/share/doc/ntp4/html/drivers/scripts
-#usr/share/doc/ntp4/html/drivers/scripts/footer.txt
-#usr/share/doc/ntp4/html/drivers/scripts/style.css
-#usr/share/doc/ntp4/html/drivers/tf582_4.html
-#usr/share/doc/ntp4/html/extern.html
-#usr/share/doc/ntp4/html/filter.html
-#usr/share/doc/ntp4/html/hints
-#usr/share/doc/ntp4/html/hints.html
-#usr/share/doc/ntp4/html/hints/a-ux
-#usr/share/doc/ntp4/html/hints/aix
-#usr/share/doc/ntp4/html/hints/bsdi
-#usr/share/doc/ntp4/html/hints/changes
-#usr/share/doc/ntp4/html/hints/decosf1
-#usr/share/doc/ntp4/html/hints/decosf2
-#usr/share/doc/ntp4/html/hints/freebsd
-#usr/share/doc/ntp4/html/hints/hpux
-#usr/share/doc/ntp4/html/hints/linux
-#usr/share/doc/ntp4/html/hints/mpeix
-#usr/share/doc/ntp4/html/hints/notes-xntp-v3
-#usr/share/doc/ntp4/html/hints/parse
-#usr/share/doc/ntp4/html/hints/refclocks
-#usr/share/doc/ntp4/html/hints/rs6000
-#usr/share/doc/ntp4/html/hints/sco.html
-#usr/share/doc/ntp4/html/hints/sgi
-#usr/share/doc/ntp4/html/hints/solaris-dosynctodr.html
-#usr/share/doc/ntp4/html/hints/solaris.html
-#usr/share/doc/ntp4/html/hints/solaris.xtra.4023118
-#usr/share/doc/ntp4/html/hints/solaris.xtra.4095849
-#usr/share/doc/ntp4/html/hints/solaris.xtra.S99ntpd
-#usr/share/doc/ntp4/html/hints/solaris.xtra.patchfreq
-#usr/share/doc/ntp4/html/hints/sun4
-#usr/share/doc/ntp4/html/hints/svr4-dell
-#usr/share/doc/ntp4/html/hints/svr4_package
-#usr/share/doc/ntp4/html/hints/todo
-#usr/share/doc/ntp4/html/hints/vxworks.html
-#usr/share/doc/ntp4/html/hints/winnt.html
-#usr/share/doc/ntp4/html/history.html
-#usr/share/doc/ntp4/html/howto.html
-#usr/share/doc/ntp4/html/huffpuff.html
-#usr/share/doc/ntp4/html/icons
-#usr/share/doc/ntp4/html/icons/home.gif
-#usr/share/doc/ntp4/html/icons/mail2.gif
-#usr/share/doc/ntp4/html/icons/sitemap.png
-#usr/share/doc/ntp4/html/index.html
-#usr/share/doc/ntp4/html/kern.html
-#usr/share/doc/ntp4/html/kernpps.html
-#usr/share/doc/ntp4/html/keygen.html
-#usr/share/doc/ntp4/html/leap.html
-#usr/share/doc/ntp4/html/miscopt.html
-#usr/share/doc/ntp4/html/monopt.html
-#usr/share/doc/ntp4/html/msyslog.html
-#usr/share/doc/ntp4/html/ntp-wait.html
-#usr/share/doc/ntp4/html/ntp_conf.html
-#usr/share/doc/ntp4/html/ntpd.html
-#usr/share/doc/ntp4/html/ntpdate.html
-#usr/share/doc/ntp4/html/ntpdc.html
-#usr/share/doc/ntp4/html/ntpdsim.html
-#usr/share/doc/ntp4/html/ntpdsim_new.html
-#usr/share/doc/ntp4/html/ntpq.html
-#usr/share/doc/ntp4/html/ntptime.html
-#usr/share/doc/ntp4/html/ntptrace.html
-#usr/share/doc/ntp4/html/orphan.html
-#usr/share/doc/ntp4/html/parsedata.html
-#usr/share/doc/ntp4/html/parsenew.html
-#usr/share/doc/ntp4/html/pic
-#usr/share/doc/ntp4/html/pic/9400n.jpg
-#usr/share/doc/ntp4/html/pic/alice11.gif
-#usr/share/doc/ntp4/html/pic/alice13.gif
-#usr/share/doc/ntp4/html/pic/alice15.gif
-#usr/share/doc/ntp4/html/pic/alice23.gif
-#usr/share/doc/ntp4/html/pic/alice31.gif
-#usr/share/doc/ntp4/html/pic/alice32.gif
-#usr/share/doc/ntp4/html/pic/alice35.gif
-#usr/share/doc/ntp4/html/pic/alice38.gif
-#usr/share/doc/ntp4/html/pic/alice44.gif
-#usr/share/doc/ntp4/html/pic/alice47.gif
-#usr/share/doc/ntp4/html/pic/alice51.gif
-#usr/share/doc/ntp4/html/pic/alice61.gif
-#usr/share/doc/ntp4/html/pic/barnstable.gif
-#usr/share/doc/ntp4/html/pic/beaver.gif
-#usr/share/doc/ntp4/html/pic/boom3.gif
-#usr/share/doc/ntp4/html/pic/boom3a.gif
-#usr/share/doc/ntp4/html/pic/boom4.gif
-#usr/share/doc/ntp4/html/pic/broad.gif
-#usr/share/doc/ntp4/html/pic/bustardfly.gif
-#usr/share/doc/ntp4/html/pic/c51.jpg
-#usr/share/doc/ntp4/html/pic/description.jpg
-#usr/share/doc/ntp4/html/pic/discipline.gif
-#usr/share/doc/ntp4/html/pic/dogsnake.gif
-#usr/share/doc/ntp4/html/pic/driver29.gif
-#usr/share/doc/ntp4/html/pic/driver43_1.gif
-#usr/share/doc/ntp4/html/pic/driver43_2.jpg
-#usr/share/doc/ntp4/html/pic/fg6021.gif
-#usr/share/doc/ntp4/html/pic/fg6039.jpg
-#usr/share/doc/ntp4/html/pic/fig_3_1.gif
-#usr/share/doc/ntp4/html/pic/flatheads.gif
-#usr/share/doc/ntp4/html/pic/flt1.gif
-#usr/share/doc/ntp4/html/pic/flt2.gif
-#usr/share/doc/ntp4/html/pic/flt3.gif
-#usr/share/doc/ntp4/html/pic/flt4.gif
-#usr/share/doc/ntp4/html/pic/flt5.gif
-#usr/share/doc/ntp4/html/pic/flt6.gif
-#usr/share/doc/ntp4/html/pic/flt7.gif
-#usr/share/doc/ntp4/html/pic/flt8.gif
-#usr/share/doc/ntp4/html/pic/flt9.gif
-#usr/share/doc/ntp4/html/pic/freq1211.gif
-#usr/share/doc/ntp4/html/pic/gadget.jpg
-#usr/share/doc/ntp4/html/pic/gps167.jpg
-#usr/share/doc/ntp4/html/pic/group.gif
-#usr/share/doc/ntp4/html/pic/hornraba.gif
-#usr/share/doc/ntp4/html/pic/igclock.gif
-#usr/share/doc/ntp4/html/pic/neoclock4x.gif
-#usr/share/doc/ntp4/html/pic/offset1211.gif
-#usr/share/doc/ntp4/html/pic/oncore_evalbig.gif
-#usr/share/doc/ntp4/html/pic/oncore_remoteant.jpg
-#usr/share/doc/ntp4/html/pic/oncore_utplusbig.gif
-#usr/share/doc/ntp4/html/pic/oz2.gif
-#usr/share/doc/ntp4/html/pic/panda.gif
-#usr/share/doc/ntp4/html/pic/pd_om006.gif
-#usr/share/doc/ntp4/html/pic/pd_om011.gif
-#usr/share/doc/ntp4/html/pic/peer.gif
-#usr/share/doc/ntp4/html/pic/pogo.gif
-#usr/share/doc/ntp4/html/pic/pogo1a.gif
-#usr/share/doc/ntp4/html/pic/pogo3a.gif
-#usr/share/doc/ntp4/html/pic/pogo4.gif
-#usr/share/doc/ntp4/html/pic/pogo5.gif
-#usr/share/doc/ntp4/html/pic/pogo6.gif
-#usr/share/doc/ntp4/html/pic/pogo7.gif
-#usr/share/doc/ntp4/html/pic/pogo8.gif
-#usr/share/doc/ntp4/html/pic/pzf509.jpg
-#usr/share/doc/ntp4/html/pic/pzf511.jpg
-#usr/share/doc/ntp4/html/pic/rabbit.gif
-#usr/share/doc/ntp4/html/pic/radio2.jpg
-#usr/share/doc/ntp4/html/pic/sheepb.jpg
-#usr/share/doc/ntp4/html/pic/stack1a.jpg
-#usr/share/doc/ntp4/html/pic/stats.gif
-#usr/share/doc/ntp4/html/pic/sx5.gif
-#usr/share/doc/ntp4/html/pic/thunderbolt.jpg
-#usr/share/doc/ntp4/html/pic/time1.gif
-#usr/share/doc/ntp4/html/pic/tonea.gif
-#usr/share/doc/ntp4/html/pic/tribeb.gif
-#usr/share/doc/ntp4/html/pic/wingdorothy.gif
-#usr/share/doc/ntp4/html/poll.html
-#usr/share/doc/ntp4/html/pps.html
-#usr/share/doc/ntp4/html/prefer.html
-#usr/share/doc/ntp4/html/quick.html
-#usr/share/doc/ntp4/html/rate.html
-#usr/share/doc/ntp4/html/rdebug.html
-#usr/share/doc/ntp4/html/refclock.html
-#usr/share/doc/ntp4/html/release.html
-#usr/share/doc/ntp4/html/scripts
-#usr/share/doc/ntp4/html/scripts/accopt.txt
-#usr/share/doc/ntp4/html/scripts/audio.txt
-#usr/share/doc/ntp4/html/scripts/authopt.txt
-#usr/share/doc/ntp4/html/scripts/clockopt.txt
-#usr/share/doc/ntp4/html/scripts/command.txt
-#usr/share/doc/ntp4/html/scripts/config.txt
-#usr/share/doc/ntp4/html/scripts/confopt.txt
-#usr/share/doc/ntp4/html/scripts/external.txt
-#usr/share/doc/ntp4/html/scripts/footer.txt
-#usr/share/doc/ntp4/html/scripts/hand.txt
-#usr/share/doc/ntp4/html/scripts/install.txt
-#usr/share/doc/ntp4/html/scripts/manual.txt
-#usr/share/doc/ntp4/html/scripts/misc.txt
-#usr/share/doc/ntp4/html/scripts/miscopt.txt
-#usr/share/doc/ntp4/html/scripts/monopt.txt
-#usr/share/doc/ntp4/html/scripts/refclock.txt
-#usr/share/doc/ntp4/html/scripts/special.txt
-#usr/share/doc/ntp4/html/scripts/style.css
-#usr/share/doc/ntp4/html/select.html
-#usr/share/doc/ntp4/html/sitemap.html
-#usr/share/doc/ntp4/html/sntp.html
-#usr/share/doc/ntp4/html/stats.html
-#usr/share/doc/ntp4/html/tickadj.html
-#usr/share/doc/ntp4/html/warp.html
-#usr/share/doc/ntp4/html/xleave.html
-#usr/share/doc/ntp4/ntp-keygen.html
-#usr/share/doc/ntp4/ntp-wait.html
-#usr/share/doc/ntp4/ntp.conf.html
-#usr/share/doc/ntp4/ntp.keys.html
-#usr/share/doc/ntp4/ntpd.html
-#usr/share/doc/ntp4/ntpdc.html
-#usr/share/doc/ntp4/ntpq.html
-#usr/share/doc/ntp4/ntpsnmpd.html
-#usr/share/doc/ntp4/ntpsweep.html
-#usr/share/doc/ntp4/ntptrace.html
+usr/bin/update-leap
+#usr/share/doc/ntp
+#usr/share/doc/ntp/html
+#usr/share/doc/ntp/html/access.html
+#usr/share/doc/ntp/html/accopt.html
+#usr/share/doc/ntp/html/assoc.html
+#usr/share/doc/ntp/html/audio.html
+#usr/share/doc/ntp/html/authentic.html
+#usr/share/doc/ntp/html/authopt.html
+#usr/share/doc/ntp/html/autokey.html
+#usr/share/doc/ntp/html/bugs.html
+#usr/share/doc/ntp/html/build.html
+#usr/share/doc/ntp/html/clock.html
+#usr/share/doc/ntp/html/clockopt.html
+#usr/share/doc/ntp/html/cluster.html
+#usr/share/doc/ntp/html/comdex.html
+#usr/share/doc/ntp/html/config.html
+#usr/share/doc/ntp/html/confopt.html
+#usr/share/doc/ntp/html/copyright.html
+#usr/share/doc/ntp/html/debug.html
+#usr/share/doc/ntp/html/decode.html
+#usr/share/doc/ntp/html/discipline.html
+#usr/share/doc/ntp/html/discover.html
+#usr/share/doc/ntp/html/drivers
+#usr/share/doc/ntp/html/drivers/driver1.html
+#usr/share/doc/ntp/html/drivers/driver10.html
+#usr/share/doc/ntp/html/drivers/driver11.html
+#usr/share/doc/ntp/html/drivers/driver12.html
+#usr/share/doc/ntp/html/drivers/driver16.html
+#usr/share/doc/ntp/html/drivers/driver18.html
+#usr/share/doc/ntp/html/drivers/driver19.html
+#usr/share/doc/ntp/html/drivers/driver20.html
+#usr/share/doc/ntp/html/drivers/driver22.html
+#usr/share/doc/ntp/html/drivers/driver26.html
+#usr/share/doc/ntp/html/drivers/driver27.html
+#usr/share/doc/ntp/html/drivers/driver28.html
+#usr/share/doc/ntp/html/drivers/driver29.html
+#usr/share/doc/ntp/html/drivers/driver3.html
+#usr/share/doc/ntp/html/drivers/driver30.html
+#usr/share/doc/ntp/html/drivers/driver31.html
+#usr/share/doc/ntp/html/drivers/driver32.html
+#usr/share/doc/ntp/html/drivers/driver33.html
+#usr/share/doc/ntp/html/drivers/driver34.html
+#usr/share/doc/ntp/html/drivers/driver35.html
+#usr/share/doc/ntp/html/drivers/driver36.html
+#usr/share/doc/ntp/html/drivers/driver37.html
+#usr/share/doc/ntp/html/drivers/driver38.html
+#usr/share/doc/ntp/html/drivers/driver39.html
+#usr/share/doc/ntp/html/drivers/driver4.html
+#usr/share/doc/ntp/html/drivers/driver40-ja.html
+#usr/share/doc/ntp/html/drivers/driver40.html
+#usr/share/doc/ntp/html/drivers/driver42.html
+#usr/share/doc/ntp/html/drivers/driver43.html
+#usr/share/doc/ntp/html/drivers/driver44.html
+#usr/share/doc/ntp/html/drivers/driver45.html
+#usr/share/doc/ntp/html/drivers/driver46.html
+#usr/share/doc/ntp/html/drivers/driver5.html
+#usr/share/doc/ntp/html/drivers/driver6.html
+#usr/share/doc/ntp/html/drivers/driver7.html
+#usr/share/doc/ntp/html/drivers/driver8.html
+#usr/share/doc/ntp/html/drivers/driver9.html
+#usr/share/doc/ntp/html/drivers/icons
+#usr/share/doc/ntp/html/drivers/icons/home.gif
+#usr/share/doc/ntp/html/drivers/icons/mail2.gif
+#usr/share/doc/ntp/html/drivers/mx4200data.html
+#usr/share/doc/ntp/html/drivers/oncore-shmem.html
+#usr/share/doc/ntp/html/drivers/scripts
+#usr/share/doc/ntp/html/drivers/scripts/footer.txt
+#usr/share/doc/ntp/html/drivers/scripts/style.css
+#usr/share/doc/ntp/html/drivers/tf582_4.html
+#usr/share/doc/ntp/html/extern.html
+#usr/share/doc/ntp/html/filter.html
+#usr/share/doc/ntp/html/hints
+#usr/share/doc/ntp/html/hints.html
+#usr/share/doc/ntp/html/hints/a-ux
+#usr/share/doc/ntp/html/hints/aix
+#usr/share/doc/ntp/html/hints/bsdi
+#usr/share/doc/ntp/html/hints/changes
+#usr/share/doc/ntp/html/hints/decosf1
+#usr/share/doc/ntp/html/hints/decosf2
+#usr/share/doc/ntp/html/hints/freebsd
+#usr/share/doc/ntp/html/hints/hpux
+#usr/share/doc/ntp/html/hints/linux
+#usr/share/doc/ntp/html/hints/mpeix
+#usr/share/doc/ntp/html/hints/notes-xntp-v3
+#usr/share/doc/ntp/html/hints/parse
+#usr/share/doc/ntp/html/hints/refclocks
+#usr/share/doc/ntp/html/hints/rs6000
+#usr/share/doc/ntp/html/hints/sco.html
+#usr/share/doc/ntp/html/hints/sgi
+#usr/share/doc/ntp/html/hints/solaris-dosynctodr.html
+#usr/share/doc/ntp/html/hints/solaris.html
+#usr/share/doc/ntp/html/hints/solaris.xtra.4023118
+#usr/share/doc/ntp/html/hints/solaris.xtra.4095849
+#usr/share/doc/ntp/html/hints/solaris.xtra.S99ntpd
+#usr/share/doc/ntp/html/hints/solaris.xtra.patchfreq
+#usr/share/doc/ntp/html/hints/sun4
+#usr/share/doc/ntp/html/hints/svr4-dell
+#usr/share/doc/ntp/html/hints/svr4_package
+#usr/share/doc/ntp/html/hints/todo
+#usr/share/doc/ntp/html/hints/vxworks.html
+#usr/share/doc/ntp/html/hints/winnt.html
+#usr/share/doc/ntp/html/history.html
+#usr/share/doc/ntp/html/howto.html
+#usr/share/doc/ntp/html/huffpuff.html
+#usr/share/doc/ntp/html/icons
+#usr/share/doc/ntp/html/icons/home.gif
+#usr/share/doc/ntp/html/icons/mail2.gif
+#usr/share/doc/ntp/html/icons/sitemap.png
+#usr/share/doc/ntp/html/index.html
+#usr/share/doc/ntp/html/kern.html
+#usr/share/doc/ntp/html/kernpps.html
+#usr/share/doc/ntp/html/keygen.html
+#usr/share/doc/ntp/html/leap.html
+#usr/share/doc/ntp/html/miscopt.html
+#usr/share/doc/ntp/html/monopt.html
+#usr/share/doc/ntp/html/msyslog.html
+#usr/share/doc/ntp/html/ntp-wait.html
+#usr/share/doc/ntp/html/ntp_conf.html
+#usr/share/doc/ntp/html/ntpd.html
+#usr/share/doc/ntp/html/ntpdate.html
+#usr/share/doc/ntp/html/ntpdc.html
+#usr/share/doc/ntp/html/ntpdsim.html
+#usr/share/doc/ntp/html/ntpdsim_new.html
+#usr/share/doc/ntp/html/ntpq.html
+#usr/share/doc/ntp/html/ntptime.html
+#usr/share/doc/ntp/html/ntptrace.html
+#usr/share/doc/ntp/html/orphan.html
+#usr/share/doc/ntp/html/parsedata.html
+#usr/share/doc/ntp/html/parsenew.html
+#usr/share/doc/ntp/html/pic
+#usr/share/doc/ntp/html/pic/9400n.jpg
+#usr/share/doc/ntp/html/pic/alice11.gif
+#usr/share/doc/ntp/html/pic/alice13.gif
+#usr/share/doc/ntp/html/pic/alice15.gif
+#usr/share/doc/ntp/html/pic/alice23.gif
+#usr/share/doc/ntp/html/pic/alice31.gif
+#usr/share/doc/ntp/html/pic/alice32.gif
+#usr/share/doc/ntp/html/pic/alice35.gif
+#usr/share/doc/ntp/html/pic/alice38.gif
+#usr/share/doc/ntp/html/pic/alice44.gif
+#usr/share/doc/ntp/html/pic/alice47.gif
+#usr/share/doc/ntp/html/pic/alice51.gif
+#usr/share/doc/ntp/html/pic/alice61.gif
+#usr/share/doc/ntp/html/pic/barnstable.gif
+#usr/share/doc/ntp/html/pic/beaver.gif
+#usr/share/doc/ntp/html/pic/boom3.gif
+#usr/share/doc/ntp/html/pic/boom3a.gif
+#usr/share/doc/ntp/html/pic/boom4.gif
+#usr/share/doc/ntp/html/pic/broad.gif
+#usr/share/doc/ntp/html/pic/bustardfly.gif
+#usr/share/doc/ntp/html/pic/c51.jpg
+#usr/share/doc/ntp/html/pic/description.jpg
+#usr/share/doc/ntp/html/pic/discipline.gif
+#usr/share/doc/ntp/html/pic/dogsnake.gif
+#usr/share/doc/ntp/html/pic/driver29.gif
+#usr/share/doc/ntp/html/pic/driver43_1.gif
+#usr/share/doc/ntp/html/pic/driver43_2.jpg
+#usr/share/doc/ntp/html/pic/fg6021.gif
+#usr/share/doc/ntp/html/pic/fg6039.jpg
+#usr/share/doc/ntp/html/pic/fig_3_1.gif
+#usr/share/doc/ntp/html/pic/flatheads.gif
+#usr/share/doc/ntp/html/pic/flt1.gif
+#usr/share/doc/ntp/html/pic/flt2.gif
+#usr/share/doc/ntp/html/pic/flt3.gif
+#usr/share/doc/ntp/html/pic/flt4.gif
+#usr/share/doc/ntp/html/pic/flt5.gif
+#usr/share/doc/ntp/html/pic/flt6.gif
+#usr/share/doc/ntp/html/pic/flt7.gif
+#usr/share/doc/ntp/html/pic/flt8.gif
+#usr/share/doc/ntp/html/pic/flt9.gif
+#usr/share/doc/ntp/html/pic/freq1211.gif
+#usr/share/doc/ntp/html/pic/gadget.jpg
+#usr/share/doc/ntp/html/pic/gps167.jpg
+#usr/share/doc/ntp/html/pic/group.gif
+#usr/share/doc/ntp/html/pic/hornraba.gif
+#usr/share/doc/ntp/html/pic/igclock.gif
+#usr/share/doc/ntp/html/pic/neoclock4x.gif
+#usr/share/doc/ntp/html/pic/offset1211.gif
+#usr/share/doc/ntp/html/pic/oncore_evalbig.gif
+#usr/share/doc/ntp/html/pic/oncore_remoteant.jpg
+#usr/share/doc/ntp/html/pic/oncore_utplusbig.gif
+#usr/share/doc/ntp/html/pic/oz2.gif
+#usr/share/doc/ntp/html/pic/panda.gif
+#usr/share/doc/ntp/html/pic/pd_om006.gif
+#usr/share/doc/ntp/html/pic/pd_om011.gif
+#usr/share/doc/ntp/html/pic/peer.gif
+#usr/share/doc/ntp/html/pic/pogo.gif
+#usr/share/doc/ntp/html/pic/pogo1a.gif
+#usr/share/doc/ntp/html/pic/pogo3a.gif
+#usr/share/doc/ntp/html/pic/pogo4.gif
+#usr/share/doc/ntp/html/pic/pogo5.gif
+#usr/share/doc/ntp/html/pic/pogo6.gif
+#usr/share/doc/ntp/html/pic/pogo7.gif
+#usr/share/doc/ntp/html/pic/pogo8.gif
+#usr/share/doc/ntp/html/pic/pzf509.jpg
+#usr/share/doc/ntp/html/pic/pzf511.jpg
+#usr/share/doc/ntp/html/pic/rabbit.gif
+#usr/share/doc/ntp/html/pic/radio2.jpg
+#usr/share/doc/ntp/html/pic/sheepb.jpg
+#usr/share/doc/ntp/html/pic/stack1a.jpg
+#usr/share/doc/ntp/html/pic/stats.gif
+#usr/share/doc/ntp/html/pic/sx5.gif
+#usr/share/doc/ntp/html/pic/thunderbolt.jpg
+#usr/share/doc/ntp/html/pic/time1.gif
+#usr/share/doc/ntp/html/pic/tonea.gif
+#usr/share/doc/ntp/html/pic/tribeb.gif
+#usr/share/doc/ntp/html/pic/wingdorothy.gif
+#usr/share/doc/ntp/html/poll.html
+#usr/share/doc/ntp/html/pps.html
+#usr/share/doc/ntp/html/prefer.html
+#usr/share/doc/ntp/html/quick.html
+#usr/share/doc/ntp/html/rate.html
+#usr/share/doc/ntp/html/rdebug.html
+#usr/share/doc/ntp/html/refclock.html
+#usr/share/doc/ntp/html/release.html
+#usr/share/doc/ntp/html/scripts
+#usr/share/doc/ntp/html/scripts/accopt.txt
+#usr/share/doc/ntp/html/scripts/audio.txt
+#usr/share/doc/ntp/html/scripts/authopt.txt
+#usr/share/doc/ntp/html/scripts/clockopt.txt
+#usr/share/doc/ntp/html/scripts/command.txt
+#usr/share/doc/ntp/html/scripts/config.txt
+#usr/share/doc/ntp/html/scripts/confopt.txt
+#usr/share/doc/ntp/html/scripts/external.txt
+#usr/share/doc/ntp/html/scripts/footer.txt
+#usr/share/doc/ntp/html/scripts/hand.txt
+#usr/share/doc/ntp/html/scripts/install.txt
+#usr/share/doc/ntp/html/scripts/manual.txt
+#usr/share/doc/ntp/html/scripts/misc.txt
+#usr/share/doc/ntp/html/scripts/miscopt.txt
+#usr/share/doc/ntp/html/scripts/monopt.txt
+#usr/share/doc/ntp/html/scripts/refclock.txt
+#usr/share/doc/ntp/html/scripts/special.txt
+#usr/share/doc/ntp/html/scripts/style.css
+#usr/share/doc/ntp/html/select.html
+#usr/share/doc/ntp/html/sitemap.html
+#usr/share/doc/ntp/html/sntp.html
+#usr/share/doc/ntp/html/stats.html
+#usr/share/doc/ntp/html/tickadj.html
+#usr/share/doc/ntp/html/warp.html
+#usr/share/doc/ntp/html/xleave.html
+#usr/share/doc/ntp/ntp-keygen.html
+#usr/share/doc/ntp/ntp-wait.html
+#usr/share/doc/ntp/ntp.conf.html
+#usr/share/doc/ntp/ntp.keys.html
+#usr/share/doc/ntp/ntpd.html
+#usr/share/doc/ntp/ntpdc.html
+#usr/share/doc/ntp/ntpq.html
+#usr/share/doc/ntp/ntpsnmpd.html
+#usr/share/doc/ntp/ntpsweep.html
+#usr/share/doc/ntp/ntptrace.html
+#usr/share/doc/ntp/update-leap.html
 #usr/share/doc/sntp
 #usr/share/doc/sntp/sntp.html
 #usr/share/man/man1/calc_tickadj.1
@@ -274,13 +277,15 @@ usr/bin/tickadj
 #usr/share/man/man1/ntpdc.1
 #usr/share/man/man1/ntpq.1
 #usr/share/man/man1/ntptrace.1
+#usr/share/man/man1/ntpsnmpd.1
 #usr/share/man/man1/sntp.1
+#usr/share/man/man1/update-leap.1
 #usr/share/man/man5/ntp.conf.5
 #usr/share/man/man5/ntp.keys.5
 #usr/share/ntp
 #usr/share/ntp/lib
 #usr/share/ntp/lib/NTP
-#usr/share/ntp/lib/NTP/Util.pm
+usr/share/ntp/lib/NTP/Util.pm
 var/ipfire/time/counter.conf
 var/ipfire/time/enable
 var/ipfire/time/settime.conf
diff --git a/config/rootfiles/common/openssl-compat b/config/rootfiles/common/openssl-compat
deleted file mode 100644 (file)
index ccf89d0..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/lib/libcrypto.so.0.9.8
-usr/lib/libssl.so.0.9.8
index 78ac2a24fba7e91a6ceb7a5b673a4f59d72988d4..8c4cc2ac2559da5ed84289c9286d11d33300586f 100644 (file)
@@ -10,7 +10,7 @@
 #usr/lib/libpcre.la
 usr/lib/libpcre.so
 usr/lib/libpcre.so.1
-usr/lib/libpcre.so.1.2.4
+usr/lib/libpcre.so.1.2.5
 #usr/lib/libpcrecpp.la
 usr/lib/libpcrecpp.so
 usr/lib/libpcrecpp.so.0
diff --git a/config/rootfiles/common/perl-Email-Date-Format b/config/rootfiles/common/perl-Email-Date-Format
new file mode 100644 (file)
index 0000000..dbfab85
--- /dev/null
@@ -0,0 +1,8 @@
+#usr/lib/perl5/site_perl/5.12.3/Email
+#usr/lib/perl5/site_perl/5.12.3/Email/Date
+usr/lib/perl5/site_perl/5.12.3/Email/Date/Format.pm
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Email
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Email/Date
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Email/Date/Format
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Email/Date/Format/.packlist
+#usr/share/man/man3/Email::Date::Format.3
diff --git a/config/rootfiles/common/perl-MIME-Lite b/config/rootfiles/common/perl-MIME-Lite
new file mode 100644 (file)
index 0000000..89248ae
--- /dev/null
@@ -0,0 +1,6 @@
+usr/lib/perl5/site_perl/5.12.3/MIME/Lite.pm
+#usr/lib/perl5/site_perl/5.12.3/MIME/changes.pod
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/MIME/Lite
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/MIME/Lite/.packlist
+#usr/share/man/man3/MIME::Lite.3
+#usr/share/man/man3/MIME::changes.3
index ca2f642287c944c953a46d94b100cdd33a7149b2..bbc7d9b2b6aa9c957f3d0a0d8a60ef1a74497f9f 100644 (file)
@@ -1,8 +1,8 @@
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/Text
-usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/Text/CSV_XS.pm
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS/.packlist
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.bs
-usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.so
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Text
+usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Text/CSV_XS.pm
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS/.packlist
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.bs
+usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.so
 #usr/share/man/man3/Text::CSV_XS.3
index d5e5ad3e16c148e0319e12eb90fc7a9ba11f551d..286316799602126a61ac61f40ce06f065f9eb2a6 100644 (file)
@@ -3,7 +3,7 @@ bin/ps
 lib/libproc-3.2.6.so
 sbin/sysctl
 usr/bin/free
-#usr/bin/pgrep
+usr/bin/pgrep
 #usr/bin/pkill
 #usr/bin/pmap
 #usr/bin/pwdx
index c957d523bdfa7a25644a0217f536db4924bb8da0..98d76b582a7f6827cfac2fb9baf247e0f492dadf 100644 (file)
@@ -1,5 +1,7 @@
 #srv/web/ipfire/html/graphs
 usr/bin/rrdcached
+#usr/bin/rrdcreate
+#usr/bin/rrdinfo
 usr/bin/rrdtool
 usr/bin/rrdupdate
 #usr/include/rrd.h
@@ -9,12 +11,12 @@ usr/bin/rrdupdate
 #usr/lib/librrd.la
 #usr/lib/librrd.so
 usr/lib/librrd.so.4
-usr/lib/librrd.so.4.2.0
+usr/lib/librrd.so.4.3.5
 #usr/lib/librrd_th.a
 #usr/lib/librrd_th.la
 #usr/lib/librrd_th.so
 usr/lib/librrd_th.so.4
-usr/lib/librrd_th.so.4.2.0
+usr/lib/librrd_th.so.4.3.5
 usr/lib/perl5/site_perl/5.12.3/RRDp.pm
 usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/RRDs.pm
 #usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/RRDp
@@ -24,98 +26,98 @@ usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/RRDs.pm
 #usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/RRDs/RRDs.bs
 usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/RRDs/RRDs.so
 #usr/lib/pkgconfig/librrd.pc
-#usr/share/doc/rrdtool-1.4.7
-#usr/share/doc/rrdtool-1.4.7/html
-#usr/share/doc/rrdtool-1.4.7/html/RRDp.html
-#usr/share/doc/rrdtool-1.4.7/html/RRDs.html
-#usr/share/doc/rrdtool-1.4.7/html/bin_dec_hex.html
-#usr/share/doc/rrdtool-1.4.7/html/cdeftutorial.html
-#usr/share/doc/rrdtool-1.4.7/html/index.html
-#usr/share/doc/rrdtool-1.4.7/html/librrd.html
-#usr/share/doc/rrdtool-1.4.7/html/rpntutorial.html
-#usr/share/doc/rrdtool-1.4.7/html/rrd-beginners.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdbuild.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdcached.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdcgi.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdcreate.html
-#usr/share/doc/rrdtool-1.4.7/html/rrddump.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdfetch.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdfirst.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdflushcached.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdgraph.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdgraph_data.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdgraph_examples.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdgraph_graph.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdgraph_rpn.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdinfo.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdlast.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdlastupdate.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdresize.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdrestore.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdthreads.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdtool.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdtune.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdtutorial.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdupdate.html
-#usr/share/doc/rrdtool-1.4.7/html/rrdxport.html
-#usr/share/doc/rrdtool-1.4.7/txt
-#usr/share/doc/rrdtool-1.4.7/txt/bin_dec_hex.pod
-#usr/share/doc/rrdtool-1.4.7/txt/bin_dec_hex.txt
-#usr/share/doc/rrdtool-1.4.7/txt/cdeftutorial.pod
-#usr/share/doc/rrdtool-1.4.7/txt/cdeftutorial.txt
-#usr/share/doc/rrdtool-1.4.7/txt/librrd.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rpntutorial.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rpntutorial.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrd-beginners.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrd-beginners.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdbuild.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdbuild.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdcached.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdcached.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdcgi.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdcgi.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdcreate.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdcreate.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrddump.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrddump.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdfetch.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdfetch.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdfirst.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdfirst.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdflushcached.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdflushcached.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_data.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_data.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_examples.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_examples.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_graph.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_graph.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_rpn.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdgraph_rpn.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdinfo.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdinfo.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdlast.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdlast.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdlastupdate.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdlastupdate.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdresize.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdresize.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdrestore.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdrestore.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdthreads.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdthreads.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdtool.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdtool.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdtune.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdtune.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdtutorial.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdtutorial.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdupdate.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdupdate.txt
-#usr/share/doc/rrdtool-1.4.7/txt/rrdxport.pod
-#usr/share/doc/rrdtool-1.4.7/txt/rrdxport.txt
+#usr/share/doc/rrdtool-1.5.5
+#usr/share/doc/rrdtool-1.5.5/html
+#usr/share/doc/rrdtool-1.5.5/html/RRDp.html
+#usr/share/doc/rrdtool-1.5.5/html/RRDs.html
+#usr/share/doc/rrdtool-1.5.5/html/bin_dec_hex.html
+#usr/share/doc/rrdtool-1.5.5/html/cdeftutorial.html
+#usr/share/doc/rrdtool-1.5.5/html/index.html
+#usr/share/doc/rrdtool-1.5.5/html/librrd.html
+#usr/share/doc/rrdtool-1.5.5/html/rpntutorial.html
+#usr/share/doc/rrdtool-1.5.5/html/rrd-beginners.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdbuild.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdcached.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdcgi.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdcreate.html
+#usr/share/doc/rrdtool-1.5.5/html/rrddump.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdfetch.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdfirst.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdflushcached.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdgraph.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdgraph_data.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdgraph_examples.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdgraph_graph.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdgraph_rpn.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdinfo.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdlast.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdlastupdate.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdresize.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdrestore.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdthreads.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdtool.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdtune.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdtutorial.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdupdate.html
+#usr/share/doc/rrdtool-1.5.5/html/rrdxport.html
+#usr/share/doc/rrdtool-1.5.5/txt
+#usr/share/doc/rrdtool-1.5.5/txt/bin_dec_hex.pod
+#usr/share/doc/rrdtool-1.5.5/txt/bin_dec_hex.txt
+#usr/share/doc/rrdtool-1.5.5/txt/cdeftutorial.pod
+#usr/share/doc/rrdtool-1.5.5/txt/cdeftutorial.txt
+#usr/share/doc/rrdtool-1.5.5/txt/librrd.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rpntutorial.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rpntutorial.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrd-beginners.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrd-beginners.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdbuild.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdbuild.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdcached.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdcached.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdcgi.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdcgi.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdcreate.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdcreate.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrddump.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrddump.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdfetch.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdfetch.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdfirst.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdfirst.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdflushcached.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdflushcached.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_data.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_data.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_examples.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_examples.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_graph.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_graph.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_rpn.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdgraph_rpn.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdinfo.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdinfo.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdlast.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdlast.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdlastupdate.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdlastupdate.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdresize.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdresize.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdrestore.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdrestore.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdthreads.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdthreads.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdtool.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdtool.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdtune.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdtune.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdtutorial.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdtutorial.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdupdate.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdupdate.txt
+#usr/share/doc/rrdtool-1.5.5/txt/rrdxport.pod
+#usr/share/doc/rrdtool-1.5.5/txt/rrdxport.txt
 #usr/share/man/man1/bin_dec_hex.1
 #usr/share/man/man1/cdeftutorial.1
 #usr/share/man/man1/rpntutorial.1
@@ -160,4 +162,5 @@ usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/RRDs/RRDs.so
 #usr/share/rrdtool/examples/rrdcached/rrdcached-size.pl
 #usr/share/rrdtool/examples/shared-demo.pl
 #usr/share/rrdtool/examples/stripes.pl
+#usr/share/rrdtool/examples/stripes.py
 var/log/rrd
index 6e4d351c9d8accb2bfdbe7b4c52802c5ebed2e36..c5bd361a554f7b574620517598ef409a65879daa 100644 (file)
@@ -26,10 +26,12 @@ usr/share/locale/jv/LC_MESSAGES/setup.mo
 usr/share/locale/km_KH/LC_MESSAGES/setup.mo
 usr/share/locale/nl/LC_MESSAGES/setup.mo
 usr/share/locale/pl/LC_MESSAGES/setup.mo
+usr/share/locale/pt/LC_MESSAGES/setup.mo
 usr/share/locale/pt_BR/LC_MESSAGES/setup.mo
 #usr/share/locale/pt_PT
 #usr/share/locale/pt_PT/LC_MESSAGES
 usr/share/locale/pt_PT/LC_MESSAGES/setup.mo
+usr/share/locale/ro/LC_MESSAGES/setup.mo
 #usr/share/locale/ro_RO
 #usr/share/locale/ro_RO/LC_MESSAGES
 usr/share/locale/ro_RO/LC_MESSAGES/setup.mo
index 0ebef78c70cfcd4c3d9b5af57d1176bda54e290f..71802d44362cbf6e6b0c1c119f8b3487c0b38335 100644 (file)
@@ -4,21 +4,26 @@
 #usr/include/slcurses.h
 #usr/lib/libslang.so
 usr/lib/libslang.so.2
-usr/lib/libslang.so.2.2.4
+usr/lib/libslang.so.2.3.0
 #usr/lib/pkgconfig/slang.pc
 #usr/lib/slang
 #usr/lib/slang/v2
 #usr/lib/slang/v2/modules
+usr/lib/slang/v2/modules/base64-module.so
+usr/lib/slang/v2/modules/chksum-module.so
 usr/lib/slang/v2/modules/csv-module.so
 usr/lib/slang/v2/modules/fcntl-module.so
 usr/lib/slang/v2/modules/fork-module.so
+usr/lib/slang/v2/modules/histogram-module.so
 usr/lib/slang/v2/modules/iconv-module.so
+usr/lib/slang/v2/modules/json-module.so
 usr/lib/slang/v2/modules/pcre-module.so
 usr/lib/slang/v2/modules/png-module.so
 usr/lib/slang/v2/modules/rand-module.so
 usr/lib/slang/v2/modules/select-module.so
 usr/lib/slang/v2/modules/slsmg-module.so
 usr/lib/slang/v2/modules/socket-module.so
+usr/lib/slang/v2/modules/stats-module.so
 usr/lib/slang/v2/modules/sysconf-module.so
 usr/lib/slang/v2/modules/termios-module.so
 usr/lib/slang/v2/modules/varray-module.so
@@ -35,6 +40,10 @@ usr/lib/slang/v2/modules/zlib-module.so
 #usr/share/doc/slsh
 #usr/share/doc/slsh/html
 #usr/share/doc/slsh/html/slshfun-1.html
+#usr/share/doc/slsh/html/slshfun-10.html
+#usr/share/doc/slsh/html/slshfun-11.html
+#usr/share/doc/slsh/html/slshfun-12.html
+#usr/share/doc/slsh/html/slshfun-13.html
 #usr/share/doc/slsh/html/slshfun-2.html
 #usr/share/doc/slsh/html/slshfun-3.html
 #usr/share/doc/slsh/html/slshfun-4.html
@@ -48,13 +57,18 @@ usr/lib/slang/v2/modules/zlib-module.so
 #usr/share/slsh
 #usr/share/slsh/arrayfuns.sl
 #usr/share/slsh/autoload.sl
+#usr/share/slsh/base64.sl
+#usr/share/slsh/chksum.sl
 #usr/share/slsh/cmaps
 #usr/share/slsh/cmaps/cool.map
 #usr/share/slsh/cmaps/coolwarm.map
 #usr/share/slsh/cmaps/copper.map
+#usr/share/slsh/cmaps/cubicl.map
+#usr/share/slsh/cmaps/cubicyf.map
 #usr/share/slsh/cmaps/drywet.map
 #usr/share/slsh/cmaps/ds9b.map
 #usr/share/slsh/cmaps/ds9sls.map
+#usr/share/slsh/cmaps/edge.map
 #usr/share/slsh/cmaps/gebco.map
 #usr/share/slsh/cmaps/globe.map
 #usr/share/slsh/cmaps/gray.map
@@ -76,13 +90,20 @@ usr/lib/slang/v2/modules/zlib-module.so
 #usr/share/slsh/csv.sl
 #usr/share/slsh/fcntl.sl
 #usr/share/slsh/fork.sl
+#usr/share/slsh/fswalk.sl
 #usr/share/slsh/glob.sl
 #usr/share/slsh/help
 #usr/share/slsh/help/arrayfuns.hlp
+#usr/share/slsh/help/base64funs.hlp
+#usr/share/slsh/help/chksumfuns.hlp
 #usr/share/slsh/help/cmdopt.hlp
 #usr/share/slsh/help/csvfuns.hlp
 #usr/share/slsh/help/forkfuns.hlp
+#usr/share/slsh/help/fswalk.hlp
 #usr/share/slsh/help/glob.hlp
+#usr/share/slsh/help/histfuns.hlp
+#usr/share/slsh/help/jsonfuns.hlp
+#usr/share/slsh/help/listfuns.hlp
 #usr/share/slsh/help/onigfuns.hlp
 #usr/share/slsh/help/pcrefuns.hlp
 #usr/share/slsh/help/pngfuns.hlp
@@ -95,8 +116,12 @@ usr/lib/slang/v2/modules/zlib-module.so
 #usr/share/slsh/help/setfuns.hlp
 #usr/share/slsh/help/slsmg.hlp
 #usr/share/slsh/help/sockfuns.hlp
+#usr/share/slsh/help/statsfuns.hlp
 #usr/share/slsh/help/structfuns.hlp
+#usr/share/slsh/histogram.sl
 #usr/share/slsh/iconv.sl
+#usr/share/slsh/json.sl
+#usr/share/slsh/listfuns.sl
 #usr/share/slsh/local-packages
 #usr/share/slsh/onig.sl
 #usr/share/slsh/pcre.sl
@@ -132,6 +157,7 @@ usr/lib/slang/v2/modules/zlib-module.so
 #usr/share/slsh/slshrl.sl
 #usr/share/slsh/slsmg.sl
 #usr/share/slsh/socket.sl
+#usr/share/slsh/stats.sl
 #usr/share/slsh/stkcheck.sl
 #usr/share/slsh/structfuns.sl
 #usr/share/slsh/sysconf.sl
index 76abbe8516bf6fdce0e1fe1bcc702e0be92ad719..c8227e372cb63cdb47133f59e058f098dfd3d310 100644 (file)
@@ -34,7 +34,6 @@ usr/lib/squid/basic_smb_auth
 usr/lib/squid/basic_smb_auth.sh
 #usr/lib/squid/cachemgr.cgi
 usr/lib/squid/cert_tool
-usr/lib/squid/cert_valid.pl
 usr/lib/squid/digest_file_auth
 usr/lib/squid/digest_ldap_auth
 usr/lib/squid/diskd
@@ -2174,6 +2173,7 @@ usr/sbin/updxlrator
 #usr/share/man/man8/ext_unix_group_acl.8
 #usr/share/man/man8/ext_wbinfo_group_acl.8
 #usr/share/man/man8/log_db_daemon.8
+#usr/share/man/man8/negotiate_kerberos_auth.8
 #usr/share/man/man8/squid.8
 #usr/share/man/man8/storeid_file_rewrite.8
 #var/cache/squid
index b5a996bc48ca0159c7db5aa5083808c450650f93..07446b73b175ef5d7222af27b5cc2db556f3c4ac 100644 (file)
@@ -41,6 +41,7 @@ etc/profile.d/term256.sh
 etc/profile.d/umask.sh
 etc/resolv.conf
 etc/securetty
+etc/sysconfig/ramdisk
 etc/sysctl.conf
 etc/syslog.conf
 etc/system-release
@@ -74,6 +75,7 @@ run
 #usr/lib
 usr/lib/firewall
 usr/lib/firewall/firewall-lib.pl
+usr/lib/firewall/ipsec-block
 usr/lib/firewall/rules.pl
 #usr/lib/libgcc_s.so
 usr/lib/libgcc_s.so.1
index 7564d38c8b889e63ce9db24c2bf8ba90c5c13acf..f51cc3a9cd55c224189d62acd2b869453de00e26 100644 (file)
@@ -153,6 +153,7 @@ usr/libexec/ipsec/starter
 usr/libexec/ipsec/stroke
 usr/sbin/ipsec
 #usr/share/man/man1/pki---acert.1
+#usr/share/man/man1/pki---dn.1
 #usr/share/man/man1/pki---gen.1
 #usr/share/man/man1/pki---issue.1
 #usr/share/man/man1/pki---keyid.1
index 7654a5b182da3d2ce3ad7e46deca7b55c403805c..b17e527a715e3d0cdbd7f48287cce57c9a25acbf 100644 (file)
@@ -3,6 +3,7 @@ usr/bin/iostat
 usr/bin/mpstat
 usr/bin/sadf
 usr/bin/sar
+#usr/doc
 #usr/doc/sysstat-6.0.2
 #usr/doc/sysstat-6.0.2/CHANGES
 #usr/doc/sysstat-6.0.2/COPYING
index d01c4610158f05d6da4b1febd2f1ac5b1e6ee772..4d519544d96d5e3dde75d5cb73020fd7473ff22f 100644 (file)
@@ -29,6 +29,7 @@ lib/udev
 #lib/udev/init-net-rules.sh
 #lib/udev/mtd_probe
 #lib/udev/network-hotplug-rename
+#lib/udev/network-hotplug-vlan
 #lib/udev/rule_generator.functions
 #lib/udev/rules.d
 #lib/udev/rules.d/25-alsa.rules
diff --git a/config/rootfiles/common/web-user-interface b/config/rootfiles/common/web-user-interface
new file mode 100644 (file)
index 0000000..b9780ea
--- /dev/null
@@ -0,0 +1,359 @@
+srv/web/ipfire/cgi-bin/aliases.cgi
+#srv/web/ipfire/cgi-bin/asterisk
+#srv/web/ipfire/cgi-bin/asterisk/calls.cgi
+#srv/web/ipfire/cgi-bin/asterisk/conf
+#srv/web/ipfire/cgi-bin/asterisk/conf.cgi
+#srv/web/ipfire/cgi-bin/asterisk/conf/telbook.conf
+#srv/web/ipfire/cgi-bin/asterisk/status.cgi
+srv/web/ipfire/cgi-bin/atm-status.cgi
+srv/web/ipfire/cgi-bin/backup.cgi
+srv/web/ipfire/cgi-bin/bluetooth.cgi
+srv/web/ipfire/cgi-bin/chpasswd.cgi
+srv/web/ipfire/cgi-bin/connections.cgi
+srv/web/ipfire/cgi-bin/connscheduler.cgi
+srv/web/ipfire/cgi-bin/country.cgi
+srv/web/ipfire/cgi-bin/credits.cgi
+srv/web/ipfire/cgi-bin/ddns.cgi
+srv/web/ipfire/cgi-bin/dhcp.cgi
+srv/web/ipfire/cgi-bin/dns.cgi
+srv/web/ipfire/cgi-bin/dnsforward.cgi
+srv/web/ipfire/cgi-bin/entropy.cgi
+srv/web/ipfire/cgi-bin/extrahd.cgi
+srv/web/ipfire/cgi-bin/fireinfo.cgi
+srv/web/ipfire/cgi-bin/firewall.cgi
+srv/web/ipfire/cgi-bin/fwhosts.cgi
+srv/web/ipfire/cgi-bin/geoip-block.cgi
+srv/web/ipfire/cgi-bin/gpl.cgi
+srv/web/ipfire/cgi-bin/gui.cgi
+srv/web/ipfire/cgi-bin/hardwaregraphs.cgi
+srv/web/ipfire/cgi-bin/hosts.cgi
+srv/web/ipfire/cgi-bin/ids.cgi
+#srv/web/ipfire/cgi-bin/imspector.cgi
+srv/web/ipfire/cgi-bin/index.cgi
+srv/web/ipfire/cgi-bin/ipinfo.cgi
+srv/web/ipfire/cgi-bin/iptables.cgi
+srv/web/ipfire/cgi-bin/logs.cgi
+srv/web/ipfire/cgi-bin/logs.cgi/calamaris.dat
+srv/web/ipfire/cgi-bin/logs.cgi/config.dat
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllog.dat
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllogcountry.dat
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllogip.dat
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllogport.dat
+srv/web/ipfire/cgi-bin/logs.cgi/ids.dat
+srv/web/ipfire/cgi-bin/logs.cgi/log.dat
+srv/web/ipfire/cgi-bin/logs.cgi/proxylog.dat
+srv/web/ipfire/cgi-bin/logs.cgi/showrequestfromcountry.dat
+srv/web/ipfire/cgi-bin/logs.cgi/showrequestfromip.dat
+srv/web/ipfire/cgi-bin/logs.cgi/showrequestfromport.dat
+srv/web/ipfire/cgi-bin/logs.cgi/summary.dat
+srv/web/ipfire/cgi-bin/logs.cgi/urlfilter.dat
+srv/web/ipfire/cgi-bin/mac.cgi
+srv/web/ipfire/cgi-bin/mail.cgi
+srv/web/ipfire/cgi-bin/mdstat.cgi
+srv/web/ipfire/cgi-bin/media.cgi
+srv/web/ipfire/cgi-bin/memory.cgi
+srv/web/ipfire/cgi-bin/modem-status.cgi
+srv/web/ipfire/cgi-bin/modem.cgi
+#srv/web/ipfire/cgi-bin/mpfire.cgi
+srv/web/ipfire/cgi-bin/netexternal.cgi
+srv/web/ipfire/cgi-bin/netinternal.cgi
+srv/web/ipfire/cgi-bin/netother.cgi
+srv/web/ipfire/cgi-bin/netovpnrw.cgi
+srv/web/ipfire/cgi-bin/netovpnsrv.cgi
+srv/web/ipfire/cgi-bin/optionsfw.cgi
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
+srv/web/ipfire/cgi-bin/p2p-block.cgi
+srv/web/ipfire/cgi-bin/pakfire.cgi
+srv/web/ipfire/cgi-bin/pppsetup.cgi
+srv/web/ipfire/cgi-bin/proxy.cgi
+srv/web/ipfire/cgi-bin/qos.cgi
+srv/web/ipfire/cgi-bin/remote.cgi
+srv/web/ipfire/cgi-bin/routing.cgi
+#srv/web/ipfire/cgi-bin/samba.cgi
+#srv/web/ipfire/cgi-bin/sambahlp.cgi
+srv/web/ipfire/cgi-bin/services.cgi
+srv/web/ipfire/cgi-bin/shutdown.cgi
+srv/web/ipfire/cgi-bin/speed.cgi
+srv/web/ipfire/cgi-bin/system.cgi
+srv/web/ipfire/cgi-bin/time.cgi
+#srv/web/ipfire/cgi-bin/tor.cgi
+srv/web/ipfire/cgi-bin/traffic.cgi
+srv/web/ipfire/cgi-bin/updatexlrator.cgi
+#srv/web/ipfire/cgi-bin/upnp.cgi
+srv/web/ipfire/cgi-bin/urlfilter.cgi
+srv/web/ipfire/cgi-bin/vpnmain.cgi
+srv/web/ipfire/cgi-bin/wakeonlan.cgi
+srv/web/ipfire/cgi-bin/webaccess.cgi
+srv/web/ipfire/cgi-bin/wireless.cgi
+srv/web/ipfire/cgi-bin/wirelessclient.cgi
+srv/web/ipfire/cgi-bin/wlanap.cgi
+#srv/web/ipfire/html
+srv/web/ipfire/html/blob.gif
+srv/web/ipfire/html/clwarn.cgi
+srv/web/ipfire/html/dial.cgi
+srv/web/ipfire/html/favicon.ico
+#srv/web/ipfire/html/images
+srv/web/ipfire/html/images/IPFire.png
+srv/web/ipfire/html/images/add.gif
+srv/web/ipfire/html/images/addblue.gif
+srv/web/ipfire/html/images/addgreen.gif
+srv/web/ipfire/html/images/address-book-new.png
+srv/web/ipfire/html/images/application-certificate.png
+srv/web/ipfire/html/images/application-x-executable.png
+srv/web/ipfire/html/images/applications-accessories.png
+srv/web/ipfire/html/images/applications-development.png
+srv/web/ipfire/html/images/applications-games.png
+srv/web/ipfire/html/images/applications-graphics.png
+srv/web/ipfire/html/images/applications-internet.png
+srv/web/ipfire/html/images/applications-multimedia.png
+srv/web/ipfire/html/images/applications-office.png
+srv/web/ipfire/html/images/applications-other.png
+srv/web/ipfire/html/images/applications-system.png
+srv/web/ipfire/html/images/appointment-new.png
+srv/web/ipfire/html/images/audio-volume-high-red.png
+srv/web/ipfire/html/images/audio-volume-high.png
+srv/web/ipfire/html/images/audio-volume-low-red.png
+srv/web/ipfire/html/images/audio-volume-low.png
+srv/web/ipfire/html/images/audio-x-generic-red.png
+srv/web/ipfire/html/images/audio-x-generic.png
+srv/web/ipfire/html/images/background.gif
+srv/web/ipfire/html/images/bookmark-new.png
+srv/web/ipfire/html/images/clock.gif
+srv/web/ipfire/html/images/computer.png
+srv/web/ipfire/html/images/delete.gif
+srv/web/ipfire/html/images/dialog-error.png
+srv/web/ipfire/html/images/dialog-information.png
+srv/web/ipfire/html/images/dialog-warning.png
+srv/web/ipfire/html/images/dns_link.png
+srv/web/ipfire/html/images/document-new.png
+srv/web/ipfire/html/images/document-open.png
+srv/web/ipfire/html/images/document-print-preview.png
+srv/web/ipfire/html/images/document-print.png
+srv/web/ipfire/html/images/document-properties.png
+srv/web/ipfire/html/images/document-save-as.png
+srv/web/ipfire/html/images/document-save.png
+srv/web/ipfire/html/images/down.gif
+srv/web/ipfire/html/images/drive-harddisk.png
+srv/web/ipfire/html/images/drive-optical.png
+srv/web/ipfire/html/images/drive-removable-media.png
+srv/web/ipfire/html/images/edit-find.png
+srv/web/ipfire/html/images/edit-redo.png
+srv/web/ipfire/html/images/edit.gif
+srv/web/ipfire/html/images/floppy.gif
+srv/web/ipfire/html/images/folder-drag-accept.png
+srv/web/ipfire/html/images/folder-new.png
+srv/web/ipfire/html/images/folder-open.png
+srv/web/ipfire/html/images/folder-remote.png
+srv/web/ipfire/html/images/folder-saved-search.png
+srv/web/ipfire/html/images/folder-visiting.png
+srv/web/ipfire/html/images/folder.png
+srv/web/ipfire/html/images/format-indent-less.png
+srv/web/ipfire/html/images/format-indent-more.png
+srv/web/ipfire/html/images/format-justify-center.png
+srv/web/ipfire/html/images/format-justify-fill.png
+srv/web/ipfire/html/images/format-justify-left.png
+srv/web/ipfire/html/images/format-justify-right.png
+srv/web/ipfire/html/images/forward.gif
+srv/web/ipfire/html/images/go-bottom.png
+srv/web/ipfire/html/images/go-down.png
+srv/web/ipfire/html/images/go-first.png
+srv/web/ipfire/html/images/go-home.png
+srv/web/ipfire/html/images/go-jump.png
+srv/web/ipfire/html/images/go-last.png
+srv/web/ipfire/html/images/go-next.png
+srv/web/ipfire/html/images/go-previous.png
+srv/web/ipfire/html/images/go-top.png
+srv/web/ipfire/html/images/go-up.png
+srv/web/ipfire/html/images/help-browser.png
+srv/web/ipfire/html/images/help.gif
+srv/web/ipfire/html/images/image-loading.png
+srv/web/ipfire/html/images/image-missing.png
+srv/web/ipfire/html/images/image-x-generic.png
+srv/web/ipfire/html/images/indicator.gif
+srv/web/ipfire/html/images/info.gif
+srv/web/ipfire/html/images/input-gaming.png
+srv/web/ipfire/html/images/input-keyboard.png
+srv/web/ipfire/html/images/input-mouse.png
+srv/web/ipfire/html/images/internet-group-chat.png
+srv/web/ipfire/html/images/internet-mail.png
+srv/web/ipfire/html/images/internet-news-reader.png
+srv/web/ipfire/html/images/internet-web-browser.png
+srv/web/ipfire/html/images/list-add.png
+srv/web/ipfire/html/images/list-remove.png
+srv/web/ipfire/html/images/mail-attachment.png
+srv/web/ipfire/html/images/mail-forward.png
+srv/web/ipfire/html/images/mail-mark-junk.png
+srv/web/ipfire/html/images/mail-mark-not-junk.png
+srv/web/ipfire/html/images/mail-message-new.png
+srv/web/ipfire/html/images/mail-reply-all.png
+srv/web/ipfire/html/images/mail-reply-sender.png
+srv/web/ipfire/html/images/mail-send-receive.png
+srv/web/ipfire/html/images/media-flash.png
+srv/web/ipfire/html/images/media-floppy.png
+srv/web/ipfire/html/images/media-optical.png
+srv/web/ipfire/html/images/media-playback-start-all.png
+srv/web/ipfire/html/images/media-playback-start.png
+srv/web/ipfire/html/images/media-playback-stop.png
+srv/web/ipfire/html/images/media-repeat.png
+srv/web/ipfire/html/images/media-resume.png
+srv/web/ipfire/html/images/media-shuffle.png
+srv/web/ipfire/html/images/media-skip-backward.png
+srv/web/ipfire/html/images/media-skip-forward.png
+srv/web/ipfire/html/images/mpfire
+srv/web/ipfire/html/images/mpfire/box.png
+srv/web/ipfire/html/images/network-error.png
+srv/web/ipfire/html/images/network-idle.png
+srv/web/ipfire/html/images/network-offline.png
+srv/web/ipfire/html/images/network-receive.png
+srv/web/ipfire/html/images/network-server.png
+srv/web/ipfire/html/images/network-transmit-receive.png
+srv/web/ipfire/html/images/network-transmit.png
+srv/web/ipfire/html/images/network-wired.png
+srv/web/ipfire/html/images/network-wireless-encrypted.png
+srv/web/ipfire/html/images/network-wireless.png
+srv/web/ipfire/html/images/network-workgroup.png
+srv/web/ipfire/html/images/network.png
+srv/web/ipfire/html/images/null.gif
+srv/web/ipfire/html/images/off.gif
+srv/web/ipfire/html/images/on.gif
+srv/web/ipfire/html/images/openvpn.gif
+srv/web/ipfire/html/images/openvpn.png
+srv/web/ipfire/html/images/package-x-generic.png
+srv/web/ipfire/html/images/printer-error.png
+srv/web/ipfire/html/images/printer.png
+srv/web/ipfire/html/images/process-stop.png
+srv/web/ipfire/html/images/process-working.png
+srv/web/ipfire/html/images/reload.gif
+srv/web/ipfire/html/images/start-here.png
+srv/web/ipfire/html/images/stock_down-16.png
+srv/web/ipfire/html/images/stock_ok.png
+srv/web/ipfire/html/images/stock_stop.png
+srv/web/ipfire/html/images/stock_up-16.png
+srv/web/ipfire/html/images/system-file-manager.png
+srv/web/ipfire/html/images/system-installer.png
+srv/web/ipfire/html/images/system-lock-screen.png
+srv/web/ipfire/html/images/system-log-out.png
+srv/web/ipfire/html/images/system-search.png
+srv/web/ipfire/html/images/system-shutdown.png
+srv/web/ipfire/html/images/system-software-update.png
+srv/web/ipfire/html/images/system-users.png
+srv/web/ipfire/html/images/tab-new.png
+srv/web/ipfire/html/images/table-header.gif
+srv/web/ipfire/html/images/text-html.png
+srv/web/ipfire/html/images/text-x-generic-template.png
+srv/web/ipfire/html/images/text-x-generic.png
+srv/web/ipfire/html/images/text-x-script.png
+srv/web/ipfire/html/images/tux.png
+srv/web/ipfire/html/images/up.gif
+srv/web/ipfire/html/images/updbooster
+srv/web/ipfire/html/images/updbooster/updxl-globe.gif
+srv/web/ipfire/html/images/updbooster/updxl-gr.gif
+srv/web/ipfire/html/images/updbooster/updxl-led-blue.gif
+srv/web/ipfire/html/images/updbooster/updxl-led-gray.gif
+srv/web/ipfire/html/images/updbooster/updxl-led-green.gif
+srv/web/ipfire/html/images/updbooster/updxl-led-red.gif
+srv/web/ipfire/html/images/updbooster/updxl-led-yellow.gif
+srv/web/ipfire/html/images/updbooster/updxl-rd.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-adobe.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-apple.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-avast.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-avg.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-avira.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-kaspersky.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-linux.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-microsoft.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-symantec.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-trendmicro.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-unknown.gif
+srv/web/ipfire/html/images/updbooster/updxl-src-windows.gif
+srv/web/ipfire/html/images/updbooster/updxl-yl.gif
+srv/web/ipfire/html/images/urlfilter
+srv/web/ipfire/html/images/urlfilter/1x1.gif
+srv/web/ipfire/html/images/urlfilter/bg_cool_tux.jpg
+srv/web/ipfire/html/images/urlfilter/bgcool.gif
+srv/web/ipfire/html/images/urlfilter/copy.gif
+srv/web/ipfire/html/images/urlfilter/gmg_tux_ip_fire.gif
+srv/web/ipfire/html/images/urlfilter/led-green.gif
+srv/web/ipfire/html/images/urlfilter/led-red.gif
+srv/web/ipfire/html/images/user-home.png
+srv/web/ipfire/html/images/user-multiple.png
+srv/web/ipfire/html/images/user-option-add.png
+srv/web/ipfire/html/images/user-option-remove.png
+srv/web/ipfire/html/images/user-trash-full.png
+srv/web/ipfire/html/images/user-trash.png
+srv/web/ipfire/html/images/utilities-system-monitor.png
+srv/web/ipfire/html/images/utilities-terminal.png
+srv/web/ipfire/html/images/view-fullscreen.png
+srv/web/ipfire/html/images/view-refresh.png
+srv/web/ipfire/html/images/wakeup.gif
+srv/web/ipfire/html/images/window-new.png
+srv/web/ipfire/html/include
+srv/web/ipfire/html/include/snortupdateutility.js
+srv/web/ipfire/html/index.cgi
+srv/web/ipfire/html/redirect-templates
+srv/web/ipfire/html/redirect-templates/legacy
+srv/web/ipfire/html/redirect-templates/legacy/template.html
+srv/web/ipfire/html/redirect.cgi
+srv/web/ipfire/html/themes
+srv/web/ipfire/html/themes/darkdos
+srv/web/ipfire/html/themes/darkdos/images
+srv/web/ipfire/html/themes/darkdos/images/IPFire.png
+srv/web/ipfire/html/themes/darkdos/images/b1.gif
+srv/web/ipfire/html/themes/darkdos/images/b2.gif
+srv/web/ipfire/html/themes/darkdos/images/b3.gif
+srv/web/ipfire/html/themes/darkdos/images/b4.gif
+srv/web/ipfire/html/themes/darkdos/images/b5.gif
+srv/web/ipfire/html/themes/darkdos/images/b6.gif
+srv/web/ipfire/html/themes/darkdos/images/spacer.gif
+srv/web/ipfire/html/themes/darkdos/include
+srv/web/ipfire/html/themes/darkdos/include/colors.txt
+srv/web/ipfire/html/themes/darkdos/include/functions.pl
+srv/web/ipfire/html/themes/darkdos/include/style.css
+srv/web/ipfire/html/themes/ipfire
+srv/web/ipfire/html/themes/ipfire-legacy
+srv/web/ipfire/html/themes/ipfire-legacy/images
+srv/web/ipfire/html/themes/ipfire-legacy/images/n1.gif
+srv/web/ipfire/html/themes/ipfire-legacy/images/n2.gif
+srv/web/ipfire/html/themes/ipfire-legacy/images/n3.gif
+srv/web/ipfire/html/themes/ipfire-legacy/images/n4.gif
+srv/web/ipfire/html/themes/ipfire-legacy/images/n5.gif
+srv/web/ipfire/html/themes/ipfire-legacy/images/n6.gif
+srv/web/ipfire/html/themes/ipfire-legacy/images/spacer.gif
+srv/web/ipfire/html/themes/ipfire-legacy/include
+srv/web/ipfire/html/themes/ipfire-legacy/include/colors.txt
+srv/web/ipfire/html/themes/ipfire-legacy/include/functions.pl
+srv/web/ipfire/html/themes/ipfire-legacy/include/style.css
+srv/web/ipfire/html/themes/ipfire-rounded
+srv/web/ipfire/html/themes/ipfire/images
+srv/web/ipfire/html/themes/ipfire/images/n2.gif
+srv/web/ipfire/html/themes/ipfire/images/n3.gif
+srv/web/ipfire/html/themes/ipfire/images/n5.gif
+srv/web/ipfire/html/themes/ipfire/images/n6.gif
+srv/web/ipfire/html/themes/ipfire/images/tux2.png
+srv/web/ipfire/html/themes/ipfire/include
+srv/web/ipfire/html/themes/ipfire/include/colors.txt
+srv/web/ipfire/html/themes/ipfire/include/css
+srv/web/ipfire/html/themes/ipfire/include/css/style-rounded.css
+srv/web/ipfire/html/themes/ipfire/include/css/style.css
+srv/web/ipfire/html/themes/ipfire/include/functions.pl
+srv/web/ipfire/html/themes/ipfire/include/js
+srv/web/ipfire/html/themes/ipfire/include/js/refreshInetInfo.js
+srv/web/ipfire/html/themes/maniac
+srv/web/ipfire/html/themes/maniac/images
+srv/web/ipfire/html/themes/maniac/images/IPFire.png
+srv/web/ipfire/html/themes/maniac/images/b1.gif
+srv/web/ipfire/html/themes/maniac/images/b2.gif
+srv/web/ipfire/html/themes/maniac/images/b3.gif
+srv/web/ipfire/html/themes/maniac/images/b4.gif
+srv/web/ipfire/html/themes/maniac/images/b5.gif
+srv/web/ipfire/html/themes/maniac/images/b6.gif
+srv/web/ipfire/html/themes/maniac/images/spacer.gif
+srv/web/ipfire/html/themes/maniac/include
+srv/web/ipfire/html/themes/maniac/include/colors.txt
+srv/web/ipfire/html/themes/maniac/include/functions.pl
+srv/web/ipfire/html/themes/maniac/include/style.css
+var/updatecache
+var/updatecache/download
+var/updatecache/metadata
+srv/web/ipfire/html/accounting
+srv/web/ipfire/html/graphs
diff --git a/config/rootfiles/common/x86_64/acpid b/config/rootfiles/common/x86_64/acpid
new file mode 100644 (file)
index 0000000..535e2bd
--- /dev/null
@@ -0,0 +1,17 @@
+etc/acpi
+etc/acpi/actions
+etc/acpi/actions/power.sh
+etc/acpi/events
+etc/acpi/events/power
+usr/bin/acpi_listen
+usr/sbin/acpid
+#usr/sbin/kacpimon
+#usr/share/doc/acpid
+#usr/share/doc/acpid/COPYING
+#usr/share/doc/acpid/Changelog
+#usr/share/doc/acpid/README
+#usr/share/doc/acpid/TESTPLAN
+#usr/share/doc/acpid/TODO
+#usr/share/man/man8/acpi_listen.8
+#usr/share/man/man8/acpid.8
+#usr/share/man/man8/kacpimon.8
diff --git a/config/rootfiles/common/x86_64/binutils b/config/rootfiles/common/x86_64/binutils
new file mode 100644 (file)
index 0000000..b1f819c
--- /dev/null
@@ -0,0 +1,128 @@
+#usr/bin/addr2line
+#usr/bin/ar
+#usr/bin/as
+#usr/bin/c++filt
+#usr/bin/elfedit
+#usr/bin/gprof
+#usr/bin/ld
+#usr/bin/ld.bfd
+#usr/bin/nm
+#usr/bin/objcopy
+#usr/bin/objdump
+#usr/bin/ranlib
+#usr/bin/readelf
+#usr/bin/size
+#usr/bin/strings
+#usr/bin/strip
+#usr/include/ansidecl.h
+#usr/include/bfd.h
+#usr/include/bfdlink.h
+#usr/include/dis-asm.h
+#usr/include/libiberty.h
+#usr/include/symcat.h
+#usr/lib/ldscripts
+#usr/lib/ldscripts/elf32_x86_64.x
+#usr/lib/ldscripts/elf32_x86_64.xbn
+#usr/lib/ldscripts/elf32_x86_64.xc
+#usr/lib/ldscripts/elf32_x86_64.xd
+#usr/lib/ldscripts/elf32_x86_64.xdc
+#usr/lib/ldscripts/elf32_x86_64.xdw
+#usr/lib/ldscripts/elf32_x86_64.xn
+#usr/lib/ldscripts/elf32_x86_64.xr
+#usr/lib/ldscripts/elf32_x86_64.xs
+#usr/lib/ldscripts/elf32_x86_64.xsc
+#usr/lib/ldscripts/elf32_x86_64.xsw
+#usr/lib/ldscripts/elf32_x86_64.xu
+#usr/lib/ldscripts/elf32_x86_64.xw
+#usr/lib/ldscripts/elf_i386.x
+#usr/lib/ldscripts/elf_i386.xbn
+#usr/lib/ldscripts/elf_i386.xc
+#usr/lib/ldscripts/elf_i386.xd
+#usr/lib/ldscripts/elf_i386.xdc
+#usr/lib/ldscripts/elf_i386.xdw
+#usr/lib/ldscripts/elf_i386.xn
+#usr/lib/ldscripts/elf_i386.xr
+#usr/lib/ldscripts/elf_i386.xs
+#usr/lib/ldscripts/elf_i386.xsc
+#usr/lib/ldscripts/elf_i386.xsw
+#usr/lib/ldscripts/elf_i386.xu
+#usr/lib/ldscripts/elf_i386.xw
+#usr/lib/ldscripts/elf_k1om.x
+#usr/lib/ldscripts/elf_k1om.xbn
+#usr/lib/ldscripts/elf_k1om.xc
+#usr/lib/ldscripts/elf_k1om.xd
+#usr/lib/ldscripts/elf_k1om.xdc
+#usr/lib/ldscripts/elf_k1om.xdw
+#usr/lib/ldscripts/elf_k1om.xn
+#usr/lib/ldscripts/elf_k1om.xr
+#usr/lib/ldscripts/elf_k1om.xs
+#usr/lib/ldscripts/elf_k1om.xsc
+#usr/lib/ldscripts/elf_k1om.xsw
+#usr/lib/ldscripts/elf_k1om.xu
+#usr/lib/ldscripts/elf_k1om.xw
+#usr/lib/ldscripts/elf_l1om.x
+#usr/lib/ldscripts/elf_l1om.xbn
+#usr/lib/ldscripts/elf_l1om.xc
+#usr/lib/ldscripts/elf_l1om.xd
+#usr/lib/ldscripts/elf_l1om.xdc
+#usr/lib/ldscripts/elf_l1om.xdw
+#usr/lib/ldscripts/elf_l1om.xn
+#usr/lib/ldscripts/elf_l1om.xr
+#usr/lib/ldscripts/elf_l1om.xs
+#usr/lib/ldscripts/elf_l1om.xsc
+#usr/lib/ldscripts/elf_l1om.xsw
+#usr/lib/ldscripts/elf_l1om.xu
+#usr/lib/ldscripts/elf_l1om.xw
+#usr/lib/ldscripts/elf_x86_64.x
+#usr/lib/ldscripts/elf_x86_64.xbn
+#usr/lib/ldscripts/elf_x86_64.xc
+#usr/lib/ldscripts/elf_x86_64.xd
+#usr/lib/ldscripts/elf_x86_64.xdc
+#usr/lib/ldscripts/elf_x86_64.xdw
+#usr/lib/ldscripts/elf_x86_64.xn
+#usr/lib/ldscripts/elf_x86_64.xr
+#usr/lib/ldscripts/elf_x86_64.xs
+#usr/lib/ldscripts/elf_x86_64.xsc
+#usr/lib/ldscripts/elf_x86_64.xsw
+#usr/lib/ldscripts/elf_x86_64.xu
+#usr/lib/ldscripts/elf_x86_64.xw
+#usr/lib/ldscripts/i386linux.x
+#usr/lib/ldscripts/i386linux.xbn
+#usr/lib/ldscripts/i386linux.xn
+#usr/lib/ldscripts/i386linux.xr
+#usr/lib/ldscripts/i386linux.xu
+#usr/lib/libbfd-2.24.so
+#usr/lib/libbfd.a
+#usr/lib/libbfd.la
+#usr/lib/libbfd.so
+#usr/lib/libiberty.a
+#usr/lib/libopcodes-2.24.so
+#usr/lib/libopcodes.a
+#usr/lib/libopcodes.la
+#usr/lib/libopcodes.so
+#usr/share/info/as.info
+#usr/share/info/bfd.info
+#usr/share/info/binutils.info
+#usr/share/info/configure.info
+#usr/share/info/gprof.info
+#usr/share/info/ld.info
+#usr/share/info/standards.info
+#usr/share/man/man1/addr2line.1
+#usr/share/man/man1/ar.1
+#usr/share/man/man1/as.1
+#usr/share/man/man1/c++filt.1
+#usr/share/man/man1/dlltool.1
+#usr/share/man/man1/elfedit.1
+#usr/share/man/man1/gprof.1
+#usr/share/man/man1/ld.1
+#usr/share/man/man1/nlmconv.1
+#usr/share/man/man1/nm.1
+#usr/share/man/man1/objcopy.1
+#usr/share/man/man1/objdump.1
+#usr/share/man/man1/ranlib.1
+#usr/share/man/man1/readelf.1
+#usr/share/man/man1/size.1
+#usr/share/man/man1/strings.1
+#usr/share/man/man1/strip.1
+#usr/share/man/man1/windmc.1
+#usr/share/man/man1/windres.1
diff --git a/config/rootfiles/common/x86_64/gcc b/config/rootfiles/common/x86_64/gcc
new file mode 100644 (file)
index 0000000..e378d93
--- /dev/null
@@ -0,0 +1,1186 @@
+#lib/cpp
+#usr/bin/c++
+#usr/bin/cc
+#usr/bin/cpp
+#usr/bin/g++
+#usr/bin/gcc
+#usr/bin/gcc-ar
+#usr/bin/gcc-nm
+#usr/bin/gcc-ranlib
+#usr/bin/gcov
+#usr/bin/x86_64-unknown-linux-gnu-c++
+#usr/bin/x86_64-unknown-linux-gnu-g++
+#usr/bin/x86_64-unknown-linux-gnu-gcc
+#usr/bin/x86_64-unknown-linux-gnu-gcc-4.9.3
+#usr/bin/x86_64-unknown-linux-gnu-gcc-ar
+#usr/bin/x86_64-unknown-linux-gnu-gcc-nm
+#usr/bin/x86_64-unknown-linux-gnu-gcc-ranlib
+#usr/include/c++
+#usr/include/c++/4.9.3
+#usr/include/c++/4.9.3/algorithm
+#usr/include/c++/4.9.3/array
+#usr/include/c++/4.9.3/atomic
+#usr/include/c++/4.9.3/backward
+#usr/include/c++/4.9.3/backward/auto_ptr.h
+#usr/include/c++/4.9.3/backward/backward_warning.h
+#usr/include/c++/4.9.3/backward/binders.h
+#usr/include/c++/4.9.3/backward/hash_fun.h
+#usr/include/c++/4.9.3/backward/hash_map
+#usr/include/c++/4.9.3/backward/hash_set
+#usr/include/c++/4.9.3/backward/hashtable.h
+#usr/include/c++/4.9.3/backward/strstream
+#usr/include/c++/4.9.3/bits
+#usr/include/c++/4.9.3/bits/algorithmfwd.h
+#usr/include/c++/4.9.3/bits/alloc_traits.h
+#usr/include/c++/4.9.3/bits/allocator.h
+#usr/include/c++/4.9.3/bits/atomic_base.h
+#usr/include/c++/4.9.3/bits/atomic_lockfree_defines.h
+#usr/include/c++/4.9.3/bits/basic_ios.h
+#usr/include/c++/4.9.3/bits/basic_ios.tcc
+#usr/include/c++/4.9.3/bits/basic_string.h
+#usr/include/c++/4.9.3/bits/basic_string.tcc
+#usr/include/c++/4.9.3/bits/boost_concept_check.h
+#usr/include/c++/4.9.3/bits/c++0x_warning.h
+#usr/include/c++/4.9.3/bits/c++14_warning.h
+#usr/include/c++/4.9.3/bits/char_traits.h
+#usr/include/c++/4.9.3/bits/codecvt.h
+#usr/include/c++/4.9.3/bits/concept_check.h
+#usr/include/c++/4.9.3/bits/cpp_type_traits.h
+#usr/include/c++/4.9.3/bits/cxxabi_forced.h
+#usr/include/c++/4.9.3/bits/deque.tcc
+#usr/include/c++/4.9.3/bits/enable_special_members.h
+#usr/include/c++/4.9.3/bits/exception_defines.h
+#usr/include/c++/4.9.3/bits/exception_ptr.h
+#usr/include/c++/4.9.3/bits/forward_list.h
+#usr/include/c++/4.9.3/bits/forward_list.tcc
+#usr/include/c++/4.9.3/bits/fstream.tcc
+#usr/include/c++/4.9.3/bits/functexcept.h
+#usr/include/c++/4.9.3/bits/functional_hash.h
+#usr/include/c++/4.9.3/bits/gslice.h
+#usr/include/c++/4.9.3/bits/gslice_array.h
+#usr/include/c++/4.9.3/bits/hash_bytes.h
+#usr/include/c++/4.9.3/bits/hashtable.h
+#usr/include/c++/4.9.3/bits/hashtable_policy.h
+#usr/include/c++/4.9.3/bits/indirect_array.h
+#usr/include/c++/4.9.3/bits/ios_base.h
+#usr/include/c++/4.9.3/bits/istream.tcc
+#usr/include/c++/4.9.3/bits/list.tcc
+#usr/include/c++/4.9.3/bits/locale_classes.h
+#usr/include/c++/4.9.3/bits/locale_classes.tcc
+#usr/include/c++/4.9.3/bits/locale_facets.h
+#usr/include/c++/4.9.3/bits/locale_facets.tcc
+#usr/include/c++/4.9.3/bits/locale_facets_nonio.h
+#usr/include/c++/4.9.3/bits/locale_facets_nonio.tcc
+#usr/include/c++/4.9.3/bits/localefwd.h
+#usr/include/c++/4.9.3/bits/mask_array.h
+#usr/include/c++/4.9.3/bits/memoryfwd.h
+#usr/include/c++/4.9.3/bits/move.h
+#usr/include/c++/4.9.3/bits/nested_exception.h
+#usr/include/c++/4.9.3/bits/ostream.tcc
+#usr/include/c++/4.9.3/bits/ostream_insert.h
+#usr/include/c++/4.9.3/bits/parse_numbers.h
+#usr/include/c++/4.9.3/bits/postypes.h
+#usr/include/c++/4.9.3/bits/predefined_ops.h
+#usr/include/c++/4.9.3/bits/ptr_traits.h
+#usr/include/c++/4.9.3/bits/random.h
+#usr/include/c++/4.9.3/bits/random.tcc
+#usr/include/c++/4.9.3/bits/range_access.h
+#usr/include/c++/4.9.3/bits/regex.h
+#usr/include/c++/4.9.3/bits/regex.tcc
+#usr/include/c++/4.9.3/bits/regex_automaton.h
+#usr/include/c++/4.9.3/bits/regex_automaton.tcc
+#usr/include/c++/4.9.3/bits/regex_compiler.h
+#usr/include/c++/4.9.3/bits/regex_compiler.tcc
+#usr/include/c++/4.9.3/bits/regex_constants.h
+#usr/include/c++/4.9.3/bits/regex_error.h
+#usr/include/c++/4.9.3/bits/regex_executor.h
+#usr/include/c++/4.9.3/bits/regex_executor.tcc
+#usr/include/c++/4.9.3/bits/regex_scanner.h
+#usr/include/c++/4.9.3/bits/regex_scanner.tcc
+#usr/include/c++/4.9.3/bits/shared_ptr.h
+#usr/include/c++/4.9.3/bits/shared_ptr_base.h
+#usr/include/c++/4.9.3/bits/slice_array.h
+#usr/include/c++/4.9.3/bits/sstream.tcc
+#usr/include/c++/4.9.3/bits/stl_algo.h
+#usr/include/c++/4.9.3/bits/stl_algobase.h
+#usr/include/c++/4.9.3/bits/stl_bvector.h
+#usr/include/c++/4.9.3/bits/stl_construct.h
+#usr/include/c++/4.9.3/bits/stl_deque.h
+#usr/include/c++/4.9.3/bits/stl_function.h
+#usr/include/c++/4.9.3/bits/stl_heap.h
+#usr/include/c++/4.9.3/bits/stl_iterator.h
+#usr/include/c++/4.9.3/bits/stl_iterator_base_funcs.h
+#usr/include/c++/4.9.3/bits/stl_iterator_base_types.h
+#usr/include/c++/4.9.3/bits/stl_list.h
+#usr/include/c++/4.9.3/bits/stl_map.h
+#usr/include/c++/4.9.3/bits/stl_multimap.h
+#usr/include/c++/4.9.3/bits/stl_multiset.h
+#usr/include/c++/4.9.3/bits/stl_numeric.h
+#usr/include/c++/4.9.3/bits/stl_pair.h
+#usr/include/c++/4.9.3/bits/stl_queue.h
+#usr/include/c++/4.9.3/bits/stl_raw_storage_iter.h
+#usr/include/c++/4.9.3/bits/stl_relops.h
+#usr/include/c++/4.9.3/bits/stl_set.h
+#usr/include/c++/4.9.3/bits/stl_stack.h
+#usr/include/c++/4.9.3/bits/stl_tempbuf.h
+#usr/include/c++/4.9.3/bits/stl_tree.h
+#usr/include/c++/4.9.3/bits/stl_uninitialized.h
+#usr/include/c++/4.9.3/bits/stl_vector.h
+#usr/include/c++/4.9.3/bits/stream_iterator.h
+#usr/include/c++/4.9.3/bits/streambuf.tcc
+#usr/include/c++/4.9.3/bits/streambuf_iterator.h
+#usr/include/c++/4.9.3/bits/stringfwd.h
+#usr/include/c++/4.9.3/bits/unique_ptr.h
+#usr/include/c++/4.9.3/bits/unordered_map.h
+#usr/include/c++/4.9.3/bits/unordered_set.h
+#usr/include/c++/4.9.3/bits/uses_allocator.h
+#usr/include/c++/4.9.3/bits/valarray_after.h
+#usr/include/c++/4.9.3/bits/valarray_array.h
+#usr/include/c++/4.9.3/bits/valarray_array.tcc
+#usr/include/c++/4.9.3/bits/valarray_before.h
+#usr/include/c++/4.9.3/bits/vector.tcc
+#usr/include/c++/4.9.3/bitset
+#usr/include/c++/4.9.3/cassert
+#usr/include/c++/4.9.3/ccomplex
+#usr/include/c++/4.9.3/cctype
+#usr/include/c++/4.9.3/cerrno
+#usr/include/c++/4.9.3/cfenv
+#usr/include/c++/4.9.3/cfloat
+#usr/include/c++/4.9.3/chrono
+#usr/include/c++/4.9.3/cinttypes
+#usr/include/c++/4.9.3/ciso646
+#usr/include/c++/4.9.3/climits
+#usr/include/c++/4.9.3/clocale
+#usr/include/c++/4.9.3/cmath
+#usr/include/c++/4.9.3/complex
+#usr/include/c++/4.9.3/complex.h
+#usr/include/c++/4.9.3/condition_variable
+#usr/include/c++/4.9.3/csetjmp
+#usr/include/c++/4.9.3/csignal
+#usr/include/c++/4.9.3/cstdalign
+#usr/include/c++/4.9.3/cstdarg
+#usr/include/c++/4.9.3/cstdbool
+#usr/include/c++/4.9.3/cstddef
+#usr/include/c++/4.9.3/cstdint
+#usr/include/c++/4.9.3/cstdio
+#usr/include/c++/4.9.3/cstdlib
+#usr/include/c++/4.9.3/cstring
+#usr/include/c++/4.9.3/ctgmath
+#usr/include/c++/4.9.3/ctime
+#usr/include/c++/4.9.3/cwchar
+#usr/include/c++/4.9.3/cwctype
+#usr/include/c++/4.9.3/cxxabi.h
+#usr/include/c++/4.9.3/debug
+#usr/include/c++/4.9.3/debug/array
+#usr/include/c++/4.9.3/debug/bitset
+#usr/include/c++/4.9.3/debug/debug.h
+#usr/include/c++/4.9.3/debug/deque
+#usr/include/c++/4.9.3/debug/formatter.h
+#usr/include/c++/4.9.3/debug/forward_list
+#usr/include/c++/4.9.3/debug/functions.h
+#usr/include/c++/4.9.3/debug/list
+#usr/include/c++/4.9.3/debug/macros.h
+#usr/include/c++/4.9.3/debug/map
+#usr/include/c++/4.9.3/debug/map.h
+#usr/include/c++/4.9.3/debug/multimap.h
+#usr/include/c++/4.9.3/debug/multiset.h
+#usr/include/c++/4.9.3/debug/safe_base.h
+#usr/include/c++/4.9.3/debug/safe_iterator.h
+#usr/include/c++/4.9.3/debug/safe_iterator.tcc
+#usr/include/c++/4.9.3/debug/safe_local_iterator.h
+#usr/include/c++/4.9.3/debug/safe_local_iterator.tcc
+#usr/include/c++/4.9.3/debug/safe_sequence.h
+#usr/include/c++/4.9.3/debug/safe_sequence.tcc
+#usr/include/c++/4.9.3/debug/safe_unordered_base.h
+#usr/include/c++/4.9.3/debug/safe_unordered_container.h
+#usr/include/c++/4.9.3/debug/safe_unordered_container.tcc
+#usr/include/c++/4.9.3/debug/set
+#usr/include/c++/4.9.3/debug/set.h
+#usr/include/c++/4.9.3/debug/string
+#usr/include/c++/4.9.3/debug/unordered_map
+#usr/include/c++/4.9.3/debug/unordered_set
+#usr/include/c++/4.9.3/debug/vector
+#usr/include/c++/4.9.3/decimal
+#usr/include/c++/4.9.3/decimal/decimal
+#usr/include/c++/4.9.3/decimal/decimal.h
+#usr/include/c++/4.9.3/deque
+#usr/include/c++/4.9.3/exception
+#usr/include/c++/4.9.3/experimental
+#usr/include/c++/4.9.3/experimental/optional
+#usr/include/c++/4.9.3/experimental/string_view
+#usr/include/c++/4.9.3/experimental/string_view.tcc
+#usr/include/c++/4.9.3/ext
+#usr/include/c++/4.9.3/ext/algorithm
+#usr/include/c++/4.9.3/ext/aligned_buffer.h
+#usr/include/c++/4.9.3/ext/alloc_traits.h
+#usr/include/c++/4.9.3/ext/array_allocator.h
+#usr/include/c++/4.9.3/ext/atomicity.h
+#usr/include/c++/4.9.3/ext/bitmap_allocator.h
+#usr/include/c++/4.9.3/ext/cast.h
+#usr/include/c++/4.9.3/ext/cmath
+#usr/include/c++/4.9.3/ext/codecvt_specializations.h
+#usr/include/c++/4.9.3/ext/concurrence.h
+#usr/include/c++/4.9.3/ext/debug_allocator.h
+#usr/include/c++/4.9.3/ext/enc_filebuf.h
+#usr/include/c++/4.9.3/ext/extptr_allocator.h
+#usr/include/c++/4.9.3/ext/functional
+#usr/include/c++/4.9.3/ext/hash_map
+#usr/include/c++/4.9.3/ext/hash_set
+#usr/include/c++/4.9.3/ext/iterator
+#usr/include/c++/4.9.3/ext/malloc_allocator.h
+#usr/include/c++/4.9.3/ext/memory
+#usr/include/c++/4.9.3/ext/mt_allocator.h
+#usr/include/c++/4.9.3/ext/new_allocator.h
+#usr/include/c++/4.9.3/ext/numeric
+#usr/include/c++/4.9.3/ext/numeric_traits.h
+#usr/include/c++/4.9.3/ext/pb_ds
+#usr/include/c++/4.9.3/ext/pb_ds/assoc_container.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/bin_search_tree_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/entry_pred.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/resize_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/branch_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/branch_policy/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/cond_dealtor.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/container_base_dispatch.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/debug_map_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn/eq_by_less.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/lu_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/ov_tree_map_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/priority_queue_base_dispatch.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rb_tree_map_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/node.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/splay_tree_/traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/standard_policies.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/tree_trace_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/type_utils.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/types_traits.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/exception.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/hash_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/list_update_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/priority_queue.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/tag_and_trait.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/tree_policy.hpp
+#usr/include/c++/4.9.3/ext/pb_ds/trie_policy.hpp
+#usr/include/c++/4.9.3/ext/pod_char_traits.h
+#usr/include/c++/4.9.3/ext/pointer.h
+#usr/include/c++/4.9.3/ext/pool_allocator.h
+#usr/include/c++/4.9.3/ext/random
+#usr/include/c++/4.9.3/ext/random.tcc
+#usr/include/c++/4.9.3/ext/rb_tree
+#usr/include/c++/4.9.3/ext/rc_string_base.h
+#usr/include/c++/4.9.3/ext/rope
+#usr/include/c++/4.9.3/ext/ropeimpl.h
+#usr/include/c++/4.9.3/ext/slist
+#usr/include/c++/4.9.3/ext/sso_string_base.h
+#usr/include/c++/4.9.3/ext/stdio_filebuf.h
+#usr/include/c++/4.9.3/ext/stdio_sync_filebuf.h
+#usr/include/c++/4.9.3/ext/string_conversions.h
+#usr/include/c++/4.9.3/ext/throw_allocator.h
+#usr/include/c++/4.9.3/ext/type_traits.h
+#usr/include/c++/4.9.3/ext/typelist.h
+#usr/include/c++/4.9.3/ext/vstring.h
+#usr/include/c++/4.9.3/ext/vstring.tcc
+#usr/include/c++/4.9.3/ext/vstring_fwd.h
+#usr/include/c++/4.9.3/ext/vstring_util.h
+#usr/include/c++/4.9.3/fenv.h
+#usr/include/c++/4.9.3/forward_list
+#usr/include/c++/4.9.3/fstream
+#usr/include/c++/4.9.3/functional
+#usr/include/c++/4.9.3/future
+#usr/include/c++/4.9.3/initializer_list
+#usr/include/c++/4.9.3/iomanip
+#usr/include/c++/4.9.3/ios
+#usr/include/c++/4.9.3/iosfwd
+#usr/include/c++/4.9.3/iostream
+#usr/include/c++/4.9.3/istream
+#usr/include/c++/4.9.3/iterator
+#usr/include/c++/4.9.3/limits
+#usr/include/c++/4.9.3/list
+#usr/include/c++/4.9.3/locale
+#usr/include/c++/4.9.3/map
+#usr/include/c++/4.9.3/memory
+#usr/include/c++/4.9.3/mutex
+#usr/include/c++/4.9.3/new
+#usr/include/c++/4.9.3/numeric
+#usr/include/c++/4.9.3/ostream
+#usr/include/c++/4.9.3/parallel
+#usr/include/c++/4.9.3/parallel/algo.h
+#usr/include/c++/4.9.3/parallel/algobase.h
+#usr/include/c++/4.9.3/parallel/algorithm
+#usr/include/c++/4.9.3/parallel/algorithmfwd.h
+#usr/include/c++/4.9.3/parallel/balanced_quicksort.h
+#usr/include/c++/4.9.3/parallel/base.h
+#usr/include/c++/4.9.3/parallel/basic_iterator.h
+#usr/include/c++/4.9.3/parallel/checkers.h
+#usr/include/c++/4.9.3/parallel/compatibility.h
+#usr/include/c++/4.9.3/parallel/compiletime_settings.h
+#usr/include/c++/4.9.3/parallel/equally_split.h
+#usr/include/c++/4.9.3/parallel/features.h
+#usr/include/c++/4.9.3/parallel/find.h
+#usr/include/c++/4.9.3/parallel/find_selectors.h
+#usr/include/c++/4.9.3/parallel/for_each.h
+#usr/include/c++/4.9.3/parallel/for_each_selectors.h
+#usr/include/c++/4.9.3/parallel/iterator.h
+#usr/include/c++/4.9.3/parallel/list_partition.h
+#usr/include/c++/4.9.3/parallel/losertree.h
+#usr/include/c++/4.9.3/parallel/merge.h
+#usr/include/c++/4.9.3/parallel/multiseq_selection.h
+#usr/include/c++/4.9.3/parallel/multiway_merge.h
+#usr/include/c++/4.9.3/parallel/multiway_mergesort.h
+#usr/include/c++/4.9.3/parallel/numeric
+#usr/include/c++/4.9.3/parallel/numericfwd.h
+#usr/include/c++/4.9.3/parallel/omp_loop.h
+#usr/include/c++/4.9.3/parallel/omp_loop_static.h
+#usr/include/c++/4.9.3/parallel/par_loop.h
+#usr/include/c++/4.9.3/parallel/parallel.h
+#usr/include/c++/4.9.3/parallel/partial_sum.h
+#usr/include/c++/4.9.3/parallel/partition.h
+#usr/include/c++/4.9.3/parallel/queue.h
+#usr/include/c++/4.9.3/parallel/quicksort.h
+#usr/include/c++/4.9.3/parallel/random_number.h
+#usr/include/c++/4.9.3/parallel/random_shuffle.h
+#usr/include/c++/4.9.3/parallel/search.h
+#usr/include/c++/4.9.3/parallel/set_operations.h
+#usr/include/c++/4.9.3/parallel/settings.h
+#usr/include/c++/4.9.3/parallel/sort.h
+#usr/include/c++/4.9.3/parallel/tags.h
+#usr/include/c++/4.9.3/parallel/types.h
+#usr/include/c++/4.9.3/parallel/unique_copy.h
+#usr/include/c++/4.9.3/parallel/workstealing.h
+#usr/include/c++/4.9.3/profile
+#usr/include/c++/4.9.3/profile/array
+#usr/include/c++/4.9.3/profile/base.h
+#usr/include/c++/4.9.3/profile/bitset
+#usr/include/c++/4.9.3/profile/deque
+#usr/include/c++/4.9.3/profile/forward_list
+#usr/include/c++/4.9.3/profile/impl
+#usr/include/c++/4.9.3/profile/impl/profiler.h
+#usr/include/c++/4.9.3/profile/impl/profiler_algos.h
+#usr/include/c++/4.9.3/profile/impl/profiler_container_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_hash_func.h
+#usr/include/c++/4.9.3/profile/impl/profiler_hashtable_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_list_to_slist.h
+#usr/include/c++/4.9.3/profile/impl/profiler_list_to_vector.h
+#usr/include/c++/4.9.3/profile/impl/profiler_map_to_unordered_map.h
+#usr/include/c++/4.9.3/profile/impl/profiler_node.h
+#usr/include/c++/4.9.3/profile/impl/profiler_state.h
+#usr/include/c++/4.9.3/profile/impl/profiler_trace.h
+#usr/include/c++/4.9.3/profile/impl/profiler_vector_size.h
+#usr/include/c++/4.9.3/profile/impl/profiler_vector_to_list.h
+#usr/include/c++/4.9.3/profile/iterator_tracker.h
+#usr/include/c++/4.9.3/profile/list
+#usr/include/c++/4.9.3/profile/map
+#usr/include/c++/4.9.3/profile/map.h
+#usr/include/c++/4.9.3/profile/multimap.h
+#usr/include/c++/4.9.3/profile/multiset.h
+#usr/include/c++/4.9.3/profile/set
+#usr/include/c++/4.9.3/profile/set.h
+#usr/include/c++/4.9.3/profile/unordered_base.h
+#usr/include/c++/4.9.3/profile/unordered_map
+#usr/include/c++/4.9.3/profile/unordered_set
+#usr/include/c++/4.9.3/profile/vector
+#usr/include/c++/4.9.3/queue
+#usr/include/c++/4.9.3/random
+#usr/include/c++/4.9.3/ratio
+#usr/include/c++/4.9.3/regex
+#usr/include/c++/4.9.3/scoped_allocator
+#usr/include/c++/4.9.3/set
+#usr/include/c++/4.9.3/shared_mutex
+#usr/include/c++/4.9.3/sstream
+#usr/include/c++/4.9.3/stack
+#usr/include/c++/4.9.3/stdexcept
+#usr/include/c++/4.9.3/streambuf
+#usr/include/c++/4.9.3/string
+#usr/include/c++/4.9.3/system_error
+#usr/include/c++/4.9.3/tgmath.h
+#usr/include/c++/4.9.3/thread
+#usr/include/c++/4.9.3/tr1
+#usr/include/c++/4.9.3/tr1/array
+#usr/include/c++/4.9.3/tr1/bessel_function.tcc
+#usr/include/c++/4.9.3/tr1/beta_function.tcc
+#usr/include/c++/4.9.3/tr1/ccomplex
+#usr/include/c++/4.9.3/tr1/cctype
+#usr/include/c++/4.9.3/tr1/cfenv
+#usr/include/c++/4.9.3/tr1/cfloat
+#usr/include/c++/4.9.3/tr1/cinttypes
+#usr/include/c++/4.9.3/tr1/climits
+#usr/include/c++/4.9.3/tr1/cmath
+#usr/include/c++/4.9.3/tr1/complex
+#usr/include/c++/4.9.3/tr1/complex.h
+#usr/include/c++/4.9.3/tr1/cstdarg
+#usr/include/c++/4.9.3/tr1/cstdbool
+#usr/include/c++/4.9.3/tr1/cstdint
+#usr/include/c++/4.9.3/tr1/cstdio
+#usr/include/c++/4.9.3/tr1/cstdlib
+#usr/include/c++/4.9.3/tr1/ctgmath
+#usr/include/c++/4.9.3/tr1/ctime
+#usr/include/c++/4.9.3/tr1/ctype.h
+#usr/include/c++/4.9.3/tr1/cwchar
+#usr/include/c++/4.9.3/tr1/cwctype
+#usr/include/c++/4.9.3/tr1/ell_integral.tcc
+#usr/include/c++/4.9.3/tr1/exp_integral.tcc
+#usr/include/c++/4.9.3/tr1/fenv.h
+#usr/include/c++/4.9.3/tr1/float.h
+#usr/include/c++/4.9.3/tr1/functional
+#usr/include/c++/4.9.3/tr1/functional_hash.h
+#usr/include/c++/4.9.3/tr1/gamma.tcc
+#usr/include/c++/4.9.3/tr1/hashtable.h
+#usr/include/c++/4.9.3/tr1/hashtable_policy.h
+#usr/include/c++/4.9.3/tr1/hypergeometric.tcc
+#usr/include/c++/4.9.3/tr1/inttypes.h
+#usr/include/c++/4.9.3/tr1/legendre_function.tcc
+#usr/include/c++/4.9.3/tr1/limits.h
+#usr/include/c++/4.9.3/tr1/math.h
+#usr/include/c++/4.9.3/tr1/memory
+#usr/include/c++/4.9.3/tr1/modified_bessel_func.tcc
+#usr/include/c++/4.9.3/tr1/poly_hermite.tcc
+#usr/include/c++/4.9.3/tr1/poly_laguerre.tcc
+#usr/include/c++/4.9.3/tr1/random
+#usr/include/c++/4.9.3/tr1/random.h
+#usr/include/c++/4.9.3/tr1/random.tcc
+#usr/include/c++/4.9.3/tr1/regex
+#usr/include/c++/4.9.3/tr1/riemann_zeta.tcc
+#usr/include/c++/4.9.3/tr1/shared_ptr.h
+#usr/include/c++/4.9.3/tr1/special_function_util.h
+#usr/include/c++/4.9.3/tr1/stdarg.h
+#usr/include/c++/4.9.3/tr1/stdbool.h
+#usr/include/c++/4.9.3/tr1/stdint.h
+#usr/include/c++/4.9.3/tr1/stdio.h
+#usr/include/c++/4.9.3/tr1/stdlib.h
+#usr/include/c++/4.9.3/tr1/tgmath.h
+#usr/include/c++/4.9.3/tr1/tuple
+#usr/include/c++/4.9.3/tr1/type_traits
+#usr/include/c++/4.9.3/tr1/unordered_map
+#usr/include/c++/4.9.3/tr1/unordered_map.h
+#usr/include/c++/4.9.3/tr1/unordered_set
+#usr/include/c++/4.9.3/tr1/unordered_set.h
+#usr/include/c++/4.9.3/tr1/utility
+#usr/include/c++/4.9.3/tr1/wchar.h
+#usr/include/c++/4.9.3/tr1/wctype.h
+#usr/include/c++/4.9.3/tr2
+#usr/include/c++/4.9.3/tr2/bool_set
+#usr/include/c++/4.9.3/tr2/bool_set.tcc
+#usr/include/c++/4.9.3/tr2/dynamic_bitset
+#usr/include/c++/4.9.3/tr2/dynamic_bitset.tcc
+#usr/include/c++/4.9.3/tr2/ratio
+#usr/include/c++/4.9.3/tr2/type_traits
+#usr/include/c++/4.9.3/tuple
+#usr/include/c++/4.9.3/type_traits
+#usr/include/c++/4.9.3/typeindex
+#usr/include/c++/4.9.3/typeinfo
+#usr/include/c++/4.9.3/unordered_map
+#usr/include/c++/4.9.3/unordered_set
+#usr/include/c++/4.9.3/utility
+#usr/include/c++/4.9.3/valarray
+#usr/include/c++/4.9.3/vector
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/atomic_word.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/basic_file.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/c++allocator.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/c++config.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/c++io.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/c++locale.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/cpu_defines.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/ctype_base.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/ctype_inline.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/cxxabi_tweaks.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/error_constants.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/extc++.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/gthr-default.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/gthr-posix.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/gthr-single.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/gthr.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/messages_members.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/opt_random.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/os_defines.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/stdc++.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/stdtr1c++.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/bits/time_members.h
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/ext
+#usr/include/c++/4.9.3/x86_64-unknown-linux-gnu/ext/opt_random.h
+#usr/lib/gcc
+#usr/lib/gcc/x86_64-unknown-linux-gnu
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/cc1
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/cc1plus
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/collect2
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtbegin.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtbeginS.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtbeginT.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtend.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtendS.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtfastmath.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtprec32.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtprec64.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/crtprec80.o
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/finclude
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include-fixed
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include-fixed/README
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include-fixed/limits.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include-fixed/syslimits.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/adxintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/ammintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/avx2intrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/avx512cdintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/avx512erintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/avx512fintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/avx512pfintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/avxintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/bmi2intrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/bmiintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/bmmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/cilk.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/cilk_api.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/cilk_api_linux.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/cilk_stub.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/cilk_undocumented.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/common.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/holder.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/hyperobject_base.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/metaprogramming.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_file.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_list.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_max.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_min.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_min_max.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_opadd.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_opand.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_opmul.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_opor.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_opxor.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_ostream.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cilk/reducer_string.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cpuid.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/cross-stdarg.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/emmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/f16cintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/float.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/fma4intrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/fmaintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/fxsrintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/ia32intrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/immintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/iso646.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/lwpintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/lzcntintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/mm3dnow.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/mm_malloc.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/mmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/nmmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/omp.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/pmmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/popcntintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/prfchwintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/quadmath.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/quadmath_weak.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/rdseedintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/rtmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/sanitizer
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/sanitizer/asan_interface.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/sanitizer/common_interface_defs.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/sanitizer/lsan_interface.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/shaintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/smmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/ssp
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/ssp/ssp.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/ssp/stdio.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/ssp/string.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/ssp/unistd.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdalign.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdarg.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdatomic.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdbool.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stddef.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdfix.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdint-gcc.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdint.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/stdnoreturn.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/tbmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/tmmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/unwind.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/varargs.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/wmmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/x86intrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/xmmintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/xopintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/xsaveintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/xsaveoptintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/include/xtestintrin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/fixinc.sh
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/fixinc_list
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/fixincl
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/gsyslimits.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/include
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/include/README
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/include/limits.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/macro_list
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/mkheaders
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/mkheaders.conf
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/install-tools/mkinstalldirs
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/libgcc.a
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/libgcc_eh.a
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/libgcov.a
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/liblto_plugin.la
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/liblto_plugin.so
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/liblto_plugin.so.0
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/liblto_plugin.so.0.0.0
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/lto-wrapper
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/lto1
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/gengtype
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/gtype.state
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ada
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ada/gcc-interface
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ada/gcc-interface/ada-tree.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/alias.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/all-tree.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/alloc-pool.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ansidecl.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/attribs.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/auto-host.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/b-header-vars
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/basic-block.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/bitmap.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/builtins.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/bversion.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/c-family
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/c-family/c-common.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/c-family/c-common.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/c-family/c-objc.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/c-family/c-pragma.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/c-family/c-pretty-print.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/c-tree.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/calls.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cfg-flags.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cfgexpand.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cfghooks.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cfgloop.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cgraph.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cif-code.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cilk-builtins.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cilkplus.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/dbxelf.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/elfos.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/glibc-stdint.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/gnu-user.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/att.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/biarch64.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/gnu-user-common.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/gnu-user64.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/i386-opts.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/i386-protos.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/i386.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/linux-common.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/linux64.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/stringop.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/unix.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/x86-64.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/i386/x86-tune.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/initfini-array.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/linux-android.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/linux-protos.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/linux.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/config/vxworks-dummy.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/configargs.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/context.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/coretypes.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cp
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cp/cp-tree.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cp/cp-tree.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cp/cxx-pretty-print.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cp/name-lookup.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cp/type-utils.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cppdefault.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/cpplib.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/debug.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/defaults.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/df.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/diagnostic-color.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/diagnostic-core.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/diagnostic.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/diagnostic.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/double-int.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/dumpfile.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/emit-rtl.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/except.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/filenames.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/fixed-value.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/flag-types.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/flags.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/fold-const.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/function.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gcc-plugin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gcc-symtab.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/genrtl.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ggc.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-builder.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-expr.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-fold.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-iterator.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-low.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-pretty-print.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-ssa.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple-walk.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimple.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimplify-me.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gimplify.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gsstruct.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gtm-builtins.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/gtype-desc.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/hard-reg-set.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/hash-table.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/hashtab.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/highlev-plugin-common.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/hwint.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/incpath.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/input.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/insn-codes.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/insn-constants.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/insn-flags.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/insn-modes.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/insn-notes.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/internal-fn.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/internal-fn.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/intl.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ipa-prop.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ipa-ref-inline.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ipa-ref.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ipa-reference.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ipa-utils.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/is-a.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/java
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/java/java-tree.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/langhooks.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/libiberty.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/line-map.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/machmode.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/md5.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/mode-classes.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/objc
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/objc/objc-tree.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/obstack.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/omp-builtins.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/options.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/opts.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/output.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/params.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/params.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/pass-instances.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/pass_manager.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/plugin-api.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/plugin-version.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/plugin.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/plugin.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/pointer-set.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/predict.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/predict.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/prefix.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/pretty-print.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/print-rtl.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/print-tree.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/real.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/realmpfr.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/reg-notes.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/regset.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/resource.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/rtl.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/rtl.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/safe-ctype.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/sanitizer.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/sbitmap.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/splay-tree.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/ssa-iterators.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/statistics.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/stmt.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/stor-layout.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/stringpool.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/symtab.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/sync-builtins.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/system.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/target-hooks-macros.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/target.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/target.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/timevar.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/timevar.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tm-preds.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tm.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tm_p.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/toplev.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-cfg.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-cfgcleanup.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-check.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-core.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-dfa.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-dump.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-eh.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-hasher.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-inline.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-into-ssa.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-iterator.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-nested.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-object-size.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-outof-ssa.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-parloops.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-pass.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-phinodes.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-pretty-print.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-address.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-alias.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-coalesce.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-dom.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-loop-ivopts.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-loop-manip.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-loop-niter.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-loop.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-operands.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-sccvn.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-ter.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-threadedge.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa-threadupdate.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssa.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree-ssanames.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/tree.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/treestruct.def
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/varasm.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/vec.h
+#usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/plugin/include/version.h
+#usr/lib/libasan.a
+#usr/lib/libasan.la
+#usr/lib/libasan.so
+usr/lib/libasan.so.1
+usr/lib/libasan.so.1.0.0
+#usr/lib/libasan_preinit.o
+#usr/lib/libatomic.a
+#usr/lib/libatomic.la
+#usr/lib/libatomic.so
+usr/lib/libatomic.so.1
+usr/lib/libatomic.so.1.1.0
+#usr/lib/libcilkrts.a
+#usr/lib/libcilkrts.la
+#usr/lib/libcilkrts.so
+usr/lib/libcilkrts.so.5
+usr/lib/libcilkrts.so.5.0.0
+#usr/lib/libcilkrts.spec
+#usr/lib/libgomp.a
+#usr/lib/libgomp.la
+#usr/lib/libgomp.so
+usr/lib/libgomp.so.1
+usr/lib/libgomp.so.1.0.0
+#usr/lib/libgomp.spec
+#usr/lib/libitm.a
+#usr/lib/libitm.la
+#usr/lib/libitm.so
+usr/lib/libitm.so.1
+usr/lib/libitm.so.1.0.0
+#usr/lib/libitm.spec
+#usr/lib/liblsan.a
+#usr/lib/liblsan.la
+#usr/lib/liblsan.so
+usr/lib/liblsan.so.0
+usr/lib/liblsan.so.0.0.0
+#usr/lib/libquadmath.a
+#usr/lib/libquadmath.la
+#usr/lib/libquadmath.so
+usr/lib/libquadmath.so.0
+usr/lib/libquadmath.so.0.0.0
+#usr/lib/libsanitizer.spec
+#usr/lib/libssp.a
+#usr/lib/libssp.la
+#usr/lib/libssp.so
+#usr/lib/libssp.so.0
+#usr/lib/libssp.so.0.0.0
+#usr/lib/libssp_nonshared.a
+#usr/lib/libssp_nonshared.la
+#usr/lib/libstdc++.a
+usr/lib/libstdc++.so.6.0.20
+#usr/lib/libstdc++.so.6.0.20-gdb.py
+#usr/lib/libsupc++.a
+#usr/lib/libsupc++.la
+#usr/lib/libtsan.a
+#usr/lib/libtsan.la
+#usr/lib/libtsan.so
+usr/lib/libtsan.so.0
+usr/lib/libtsan.so.0.0.0
+#usr/lib/libubsan.a
+#usr/lib/libubsan.la
+#usr/lib/libubsan.so
+usr/lib/libubsan.so.0
+usr/lib/libubsan.so.0.0.0
+#usr/lib/libvtv.a
+#usr/lib/libvtv.la
+#usr/lib/libvtv.so
+usr/lib/libvtv.so.0
+usr/lib/libvtv.so.0.0.0
+#usr/share/gcc-4.9.3
+#usr/share/gcc-4.9.3/python
+#usr/share/gcc-4.9.3/python/libstdcxx
+#usr/share/gcc-4.9.3/python/libstdcxx/__init__.py
+#usr/share/gcc-4.9.3/python/libstdcxx/v6
+#usr/share/gcc-4.9.3/python/libstdcxx/v6/__init__.py
+#usr/share/gcc-4.9.3/python/libstdcxx/v6/printers.py
+#usr/share/info/cpp.info
+#usr/share/info/cppinternals.info
+#usr/share/info/gcc.info
+#usr/share/info/gccinstall.info
+#usr/share/info/gccint.info
+#usr/share/info/libgomp.info
+#usr/share/info/libitm.info
+#usr/share/info/libquadmath.info
+#usr/share/man/man1/cpp.1
+#usr/share/man/man1/g++.1
+#usr/share/man/man1/gcc.1
+#usr/share/man/man1/gcov.1
+#usr/share/man/man7/fsf-funding.7
+#usr/share/man/man7/gfdl.7
+#usr/share/man/man7/gpl.7
diff --git a/config/rootfiles/common/x86_64/glibc b/config/rootfiles/common/x86_64/glibc
new file mode 100644 (file)
index 0000000..98845c6
--- /dev/null
@@ -0,0 +1,7342 @@
+#etc/ld.so.cache
+etc/localtime
+etc/rpc
+lib/ld-2.12.so
+lib/ld-linux-x86-64.so.2
+lib/libBrokenLocale-2.12.so
+lib/libBrokenLocale.so.1
+#lib/libSegFault.so
+lib/libanl-2.12.so
+lib/libanl.so.1
+lib/libc-2.12.so
+lib/libc.so.6
+lib/libcidn-2.12.so
+lib/libcidn.so.1
+lib/libcrypt-2.12.so
+lib/libcrypt.so.1
+lib/libdl-2.12.so
+lib/libdl.so.2
+lib/libm-2.12.so
+lib/libm.so.6
+#lib/libmemusage.so
+lib/libnsl-2.12.so
+lib/libnsl.so.1
+lib/libnss_compat-2.12.so
+lib/libnss_compat.so.2
+lib/libnss_dns-2.12.so
+lib/libnss_dns.so.2
+lib/libnss_files-2.12.so
+lib/libnss_files.so.2
+lib/libnss_hesiod-2.12.so
+lib/libnss_hesiod.so.2
+lib/libnss_nis-2.12.so
+lib/libnss_nis.so.2
+lib/libnss_nisplus-2.12.so
+lib/libnss_nisplus.so.2
+#lib/libpcprofile.so
+lib/libpthread-2.12.so
+lib/libpthread.so.0
+lib/libresolv-2.12.so
+lib/libresolv.so.2
+lib/librt-2.12.so
+lib/librt.so.1
+lib/libthread_db-1.0.so
+lib/libthread_db.so.1
+lib/libutil-2.12.so
+lib/libutil.so.1
+sbin/ldconfig
+#sbin/sln
+#usr/bin/catchsegv
+#usr/bin/gencat
+usr/bin/getconf
+usr/bin/getent
+#usr/bin/iconv
+usr/bin/ldd
+usr/bin/locale
+#usr/bin/localedef
+#usr/bin/mtrace
+#usr/bin/pcprofiledump
+#usr/bin/rpcgen
+#usr/bin/sprof
+#usr/bin/tzselect
+#usr/bin/xtrace
+#usr/include/_G_config.h
+#usr/include/a.out.h
+#usr/include/aio.h
+#usr/include/aliases.h
+#usr/include/alloca.h
+#usr/include/ar.h
+#usr/include/argp.h
+#usr/include/argz.h
+#usr/include/arpa
+#usr/include/arpa/ftp.h
+#usr/include/arpa/inet.h
+#usr/include/arpa/nameser.h
+#usr/include/arpa/nameser_compat.h
+#usr/include/arpa/telnet.h
+#usr/include/arpa/tftp.h
+#usr/include/assert.h
+#usr/include/bits
+#usr/include/bits/a.out.h
+#usr/include/bits/byteswap.h
+#usr/include/bits/cmathcalls.h
+#usr/include/bits/confname.h
+#usr/include/bits/dirent.h
+#usr/include/bits/dlfcn.h
+#usr/include/bits/elfclass.h
+#usr/include/bits/endian.h
+#usr/include/bits/environments.h
+#usr/include/bits/errno.h
+#usr/include/bits/error.h
+#usr/include/bits/fcntl.h
+#usr/include/bits/fcntl2.h
+#usr/include/bits/fenv.h
+#usr/include/bits/fenvinline.h
+#usr/include/bits/huge_val.h
+#usr/include/bits/huge_valf.h
+#usr/include/bits/huge_vall.h
+#usr/include/bits/in.h
+#usr/include/bits/inf.h
+#usr/include/bits/initspin.h
+#usr/include/bits/ioctl-types.h
+#usr/include/bits/ioctls.h
+#usr/include/bits/ipc.h
+#usr/include/bits/ipctypes.h
+#usr/include/bits/libc-lock.h
+#usr/include/bits/libio-ldbl.h
+#usr/include/bits/link.h
+#usr/include/bits/local_lim.h
+#usr/include/bits/locale.h
+#usr/include/bits/mathcalls.h
+#usr/include/bits/mathdef.h
+#usr/include/bits/mathinline.h
+#usr/include/bits/mman.h
+#usr/include/bits/monetary-ldbl.h
+#usr/include/bits/mqueue.h
+#usr/include/bits/mqueue2.h
+#usr/include/bits/msq.h
+#usr/include/bits/nan.h
+#usr/include/bits/netdb.h
+#usr/include/bits/poll.h
+#usr/include/bits/posix1_lim.h
+#usr/include/bits/posix2_lim.h
+#usr/include/bits/posix_opt.h
+#usr/include/bits/printf-ldbl.h
+#usr/include/bits/pthreadtypes.h
+#usr/include/bits/resource.h
+#usr/include/bits/sched.h
+#usr/include/bits/select.h
+#usr/include/bits/sem.h
+#usr/include/bits/semaphore.h
+#usr/include/bits/setjmp.h
+#usr/include/bits/setjmp2.h
+#usr/include/bits/shm.h
+#usr/include/bits/sigaction.h
+#usr/include/bits/sigcontext.h
+#usr/include/bits/siginfo.h
+#usr/include/bits/signum.h
+#usr/include/bits/sigset.h
+#usr/include/bits/sigstack.h
+#usr/include/bits/sigthread.h
+#usr/include/bits/sockaddr.h
+#usr/include/bits/socket.h
+#usr/include/bits/socket2.h
+#usr/include/bits/stab.def
+#usr/include/bits/stat.h
+#usr/include/bits/statfs.h
+#usr/include/bits/statvfs.h
+#usr/include/bits/stdio-ldbl.h
+#usr/include/bits/stdio-lock.h
+#usr/include/bits/stdio.h
+#usr/include/bits/stdio2.h
+#usr/include/bits/stdio_lim.h
+#usr/include/bits/stdlib-ldbl.h
+#usr/include/bits/stdlib.h
+#usr/include/bits/string.h
+#usr/include/bits/string2.h
+#usr/include/bits/string3.h
+#usr/include/bits/sys_errlist.h
+#usr/include/bits/syscall.h
+#usr/include/bits/syslog-ldbl.h
+#usr/include/bits/syslog-path.h
+#usr/include/bits/syslog.h
+#usr/include/bits/termios.h
+#usr/include/bits/time.h
+#usr/include/bits/types.h
+#usr/include/bits/typesizes.h
+#usr/include/bits/uio.h
+#usr/include/bits/unistd.h
+#usr/include/bits/ustat.h
+#usr/include/bits/utmp.h
+#usr/include/bits/utmpx.h
+#usr/include/bits/utsname.h
+#usr/include/bits/waitflags.h
+#usr/include/bits/waitstatus.h
+#usr/include/bits/wchar-ldbl.h
+#usr/include/bits/wchar.h
+#usr/include/bits/wchar2.h
+#usr/include/bits/wordsize.h
+#usr/include/bits/xopen_lim.h
+#usr/include/byteswap.h
+#usr/include/complex.h
+#usr/include/cpio.h
+#usr/include/crypt.h
+#usr/include/ctype.h
+#usr/include/dirent.h
+#usr/include/dlfcn.h
+#usr/include/elf.h
+#usr/include/endian.h
+#usr/include/envz.h
+#usr/include/err.h
+#usr/include/errno.h
+#usr/include/error.h
+#usr/include/execinfo.h
+#usr/include/fcntl.h
+#usr/include/features.h
+#usr/include/fenv.h
+#usr/include/fmtmsg.h
+#usr/include/fnmatch.h
+#usr/include/fpu_control.h
+#usr/include/fstab.h
+#usr/include/fts.h
+#usr/include/ftw.h
+#usr/include/gconv.h
+#usr/include/getopt.h
+#usr/include/glob.h
+#usr/include/gnu
+#usr/include/gnu-versions.h
+#usr/include/gnu/lib-names.h
+#usr/include/gnu/libc-version.h
+#usr/include/gnu/stubs-64.h
+#usr/include/gnu/stubs.h
+#usr/include/grp.h
+#usr/include/gshadow.h
+#usr/include/iconv.h
+#usr/include/ieee754.h
+#usr/include/ifaddrs.h
+#usr/include/inttypes.h
+#usr/include/langinfo.h
+#usr/include/lastlog.h
+#usr/include/libgen.h
+#usr/include/libintl.h
+#usr/include/libio.h
+#usr/include/limits.h
+#usr/include/link.h
+#usr/include/locale.h
+#usr/include/malloc.h
+#usr/include/math.h
+#usr/include/mcheck.h
+#usr/include/memory.h
+#usr/include/mntent.h
+#usr/include/monetary.h
+#usr/include/mqueue.h
+#usr/include/net
+#usr/include/net/ethernet.h
+#usr/include/net/if.h
+#usr/include/net/if_arp.h
+#usr/include/net/if_packet.h
+#usr/include/net/if_ppp.h
+#usr/include/net/if_shaper.h
+#usr/include/net/if_slip.h
+#usr/include/net/ppp-comp.h
+#usr/include/net/ppp_defs.h
+#usr/include/net/route.h
+#usr/include/netash
+#usr/include/netash/ash.h
+#usr/include/netatalk
+#usr/include/netatalk/at.h
+#usr/include/netax25
+#usr/include/netax25/ax25.h
+#usr/include/netdb.h
+#usr/include/neteconet
+#usr/include/neteconet/ec.h
+#usr/include/netinet
+#usr/include/netinet/ether.h
+#usr/include/netinet/icmp6.h
+#usr/include/netinet/if_ether.h
+#usr/include/netinet/if_fddi.h
+#usr/include/netinet/if_tr.h
+#usr/include/netinet/igmp.h
+#usr/include/netinet/in.h
+#usr/include/netinet/in_systm.h
+#usr/include/netinet/ip.h
+#usr/include/netinet/ip6.h
+#usr/include/netinet/ip_icmp.h
+#usr/include/netinet/tcp.h
+#usr/include/netinet/udp.h
+#usr/include/netipx
+#usr/include/netipx/ipx.h
+#usr/include/netiucv
+#usr/include/netiucv/iucv.h
+#usr/include/netpacket
+#usr/include/netpacket/packet.h
+#usr/include/netrom
+#usr/include/netrom/netrom.h
+#usr/include/netrose
+#usr/include/netrose/rose.h
+#usr/include/nfs
+#usr/include/nfs/nfs.h
+#usr/include/nl_types.h
+#usr/include/nss.h
+#usr/include/obstack.h
+#usr/include/paths.h
+#usr/include/poll.h
+#usr/include/printf.h
+#usr/include/protocols
+#usr/include/protocols/routed.h
+#usr/include/protocols/rwhod.h
+#usr/include/protocols/talkd.h
+#usr/include/protocols/timed.h
+#usr/include/pthread.h
+#usr/include/pty.h
+#usr/include/pwd.h
+#usr/include/re_comp.h
+#usr/include/regex.h
+#usr/include/regexp.h
+#usr/include/resolv.h
+#usr/include/rpc
+#usr/include/rpc/auth.h
+#usr/include/rpc/auth_des.h
+#usr/include/rpc/auth_unix.h
+#usr/include/rpc/clnt.h
+#usr/include/rpc/des_crypt.h
+#usr/include/rpc/key_prot.h
+#usr/include/rpc/netdb.h
+#usr/include/rpc/pmap_clnt.h
+#usr/include/rpc/pmap_prot.h
+#usr/include/rpc/pmap_rmt.h
+#usr/include/rpc/rpc.h
+#usr/include/rpc/rpc_des.h
+#usr/include/rpc/rpc_msg.h
+#usr/include/rpc/svc.h
+#usr/include/rpc/svc_auth.h
+#usr/include/rpc/types.h
+#usr/include/rpc/xdr.h
+#usr/include/rpcsvc
+#usr/include/rpcsvc/bootparam.h
+#usr/include/rpcsvc/bootparam_prot.h
+#usr/include/rpcsvc/bootparam_prot.x
+#usr/include/rpcsvc/key_prot.h
+#usr/include/rpcsvc/key_prot.x
+#usr/include/rpcsvc/klm_prot.h
+#usr/include/rpcsvc/klm_prot.x
+#usr/include/rpcsvc/mount.h
+#usr/include/rpcsvc/mount.x
+#usr/include/rpcsvc/nfs_prot.h
+#usr/include/rpcsvc/nfs_prot.x
+#usr/include/rpcsvc/nis.h
+#usr/include/rpcsvc/nis.x
+#usr/include/rpcsvc/nis_callback.h
+#usr/include/rpcsvc/nis_callback.x
+#usr/include/rpcsvc/nis_object.x
+#usr/include/rpcsvc/nis_tags.h
+#usr/include/rpcsvc/nislib.h
+#usr/include/rpcsvc/nlm_prot.h
+#usr/include/rpcsvc/nlm_prot.x
+#usr/include/rpcsvc/rex.h
+#usr/include/rpcsvc/rex.x
+#usr/include/rpcsvc/rquota.h
+#usr/include/rpcsvc/rquota.x
+#usr/include/rpcsvc/rstat.h
+#usr/include/rpcsvc/rstat.x
+#usr/include/rpcsvc/rusers.h
+#usr/include/rpcsvc/rusers.x
+#usr/include/rpcsvc/sm_inter.h
+#usr/include/rpcsvc/sm_inter.x
+#usr/include/rpcsvc/spray.h
+#usr/include/rpcsvc/spray.x
+#usr/include/rpcsvc/yp.h
+#usr/include/rpcsvc/yp.x
+#usr/include/rpcsvc/yp_prot.h
+#usr/include/rpcsvc/ypclnt.h
+#usr/include/rpcsvc/yppasswd.h
+#usr/include/rpcsvc/yppasswd.x
+#usr/include/rpcsvc/ypupd.h
+#usr/include/sched.h
+#usr/include/scsi/scsi.h
+#usr/include/scsi/scsi_ioctl.h
+#usr/include/scsi/sg.h
+#usr/include/search.h
+#usr/include/semaphore.h
+#usr/include/setjmp.h
+#usr/include/sgtty.h
+#usr/include/shadow.h
+#usr/include/signal.h
+#usr/include/spawn.h
+#usr/include/stab.h
+#usr/include/stdint.h
+#usr/include/stdio.h
+#usr/include/stdio_ext.h
+#usr/include/stdlib.h
+#usr/include/string.h
+#usr/include/strings.h
+#usr/include/sys
+#usr/include/sys/acct.h
+#usr/include/sys/bitypes.h
+#usr/include/sys/cdefs.h
+#usr/include/sys/debugreg.h
+#usr/include/sys/dir.h
+#usr/include/sys/epoll.h
+#usr/include/sys/errno.h
+#usr/include/sys/eventfd.h
+#usr/include/sys/fcntl.h
+#usr/include/sys/file.h
+#usr/include/sys/fsuid.h
+#usr/include/sys/gmon.h
+#usr/include/sys/gmon_out.h
+#usr/include/sys/inotify.h
+#usr/include/sys/io.h
+#usr/include/sys/ioctl.h
+#usr/include/sys/ipc.h
+#usr/include/sys/kd.h
+#usr/include/sys/kdaemon.h
+#usr/include/sys/klog.h
+#usr/include/sys/mman.h
+#usr/include/sys/mount.h
+#usr/include/sys/msg.h
+#usr/include/sys/mtio.h
+#usr/include/sys/param.h
+#usr/include/sys/pci.h
+#usr/include/sys/perm.h
+#usr/include/sys/personality.h
+#usr/include/sys/poll.h
+#usr/include/sys/prctl.h
+#usr/include/sys/procfs.h
+#usr/include/sys/profil.h
+#usr/include/sys/ptrace.h
+#usr/include/sys/queue.h
+#usr/include/sys/quota.h
+#usr/include/sys/raw.h
+#usr/include/sys/reboot.h
+#usr/include/sys/reg.h
+#usr/include/sys/resource.h
+#usr/include/sys/select.h
+#usr/include/sys/sem.h
+#usr/include/sys/sendfile.h
+#usr/include/sys/shm.h
+#usr/include/sys/signal.h
+#usr/include/sys/signalfd.h
+#usr/include/sys/socket.h
+#usr/include/sys/socketvar.h
+#usr/include/sys/soundcard.h
+#usr/include/sys/stat.h
+#usr/include/sys/statfs.h
+#usr/include/sys/statvfs.h
+#usr/include/sys/swap.h
+#usr/include/sys/syscall.h
+#usr/include/sys/sysctl.h
+#usr/include/sys/sysinfo.h
+#usr/include/sys/syslog.h
+#usr/include/sys/sysmacros.h
+#usr/include/sys/termios.h
+#usr/include/sys/time.h
+#usr/include/sys/timeb.h
+#usr/include/sys/timerfd.h
+#usr/include/sys/times.h
+#usr/include/sys/timex.h
+#usr/include/sys/ttychars.h
+#usr/include/sys/ttydefaults.h
+#usr/include/sys/types.h
+#usr/include/sys/ucontext.h
+#usr/include/sys/uio.h
+#usr/include/sys/ultrasound.h
+#usr/include/sys/un.h
+#usr/include/sys/unistd.h
+#usr/include/sys/user.h
+#usr/include/sys/ustat.h
+#usr/include/sys/utsname.h
+#usr/include/sys/vfs.h
+#usr/include/sys/vlimit.h
+#usr/include/sys/vt.h
+#usr/include/sys/vtimes.h
+#usr/include/sys/wait.h
+#usr/include/sys/xattr.h
+#usr/include/syscall.h
+#usr/include/sysexits.h
+#usr/include/syslog.h
+#usr/include/tar.h
+#usr/include/termio.h
+#usr/include/termios.h
+#usr/include/tgmath.h
+#usr/include/thread_db.h
+#usr/include/time.h
+#usr/include/ttyent.h
+#usr/include/ucontext.h
+#usr/include/ulimit.h
+#usr/include/unistd.h
+#usr/include/ustat.h
+#usr/include/utime.h
+#usr/include/utmp.h
+#usr/include/utmpx.h
+#usr/include/values.h
+#usr/include/wait.h
+#usr/include/wchar.h
+#usr/include/wctype.h
+#usr/include/wordexp.h
+#usr/include/xlocale.h
+#usr/lib/Mcrt1.o
+#usr/lib/Scrt1.o
+#usr/lib/crt1.o
+#usr/lib/crti.o
+#usr/lib/crtn.o
+usr/lib/gconv
+#usr/lib/gconv/ANSI_X3.110.so
+#usr/lib/gconv/ARMSCII-8.so
+#usr/lib/gconv/ASMO_449.so
+#usr/lib/gconv/BIG5.so
+#usr/lib/gconv/BIG5HKSCS.so
+#usr/lib/gconv/BRF.so
+#usr/lib/gconv/CP10007.so
+#usr/lib/gconv/CP1125.so
+#usr/lib/gconv/CP1250.so
+#usr/lib/gconv/CP1251.so
+#usr/lib/gconv/CP1252.so
+#usr/lib/gconv/CP1253.so
+#usr/lib/gconv/CP1254.so
+#usr/lib/gconv/CP1255.so
+#usr/lib/gconv/CP1256.so
+#usr/lib/gconv/CP1257.so
+#usr/lib/gconv/CP1258.so
+#usr/lib/gconv/CP737.so
+#usr/lib/gconv/CP775.so
+#usr/lib/gconv/CP932.so
+#usr/lib/gconv/CSN_369103.so
+#usr/lib/gconv/CWI.so
+#usr/lib/gconv/DEC-MCS.so
+#usr/lib/gconv/EBCDIC-AT-DE-A.so
+#usr/lib/gconv/EBCDIC-AT-DE.so
+#usr/lib/gconv/EBCDIC-CA-FR.so
+#usr/lib/gconv/EBCDIC-DK-NO-A.so
+#usr/lib/gconv/EBCDIC-DK-NO.so
+#usr/lib/gconv/EBCDIC-ES-A.so
+#usr/lib/gconv/EBCDIC-ES-S.so
+#usr/lib/gconv/EBCDIC-ES.so
+#usr/lib/gconv/EBCDIC-FI-SE-A.so
+#usr/lib/gconv/EBCDIC-FI-SE.so
+#usr/lib/gconv/EBCDIC-FR.so
+#usr/lib/gconv/EBCDIC-IS-FRISS.so
+#usr/lib/gconv/EBCDIC-IT.so
+#usr/lib/gconv/EBCDIC-PT.so
+#usr/lib/gconv/EBCDIC-UK.so
+#usr/lib/gconv/EBCDIC-US.so
+#usr/lib/gconv/ECMA-CYRILLIC.so
+#usr/lib/gconv/EUC-CN.so
+#usr/lib/gconv/EUC-JISX0213.so
+#usr/lib/gconv/EUC-JP-MS.so
+#usr/lib/gconv/EUC-JP.so
+#usr/lib/gconv/EUC-KR.so
+#usr/lib/gconv/EUC-TW.so
+#usr/lib/gconv/GB18030.so
+#usr/lib/gconv/GBBIG5.so
+#usr/lib/gconv/GBGBK.so
+#usr/lib/gconv/GBK.so
+#usr/lib/gconv/GEORGIAN-ACADEMY.so
+#usr/lib/gconv/GEORGIAN-PS.so
+#usr/lib/gconv/GOST_19768-74.so
+#usr/lib/gconv/GREEK-CCITT.so
+#usr/lib/gconv/GREEK7-OLD.so
+#usr/lib/gconv/GREEK7.so
+#usr/lib/gconv/HP-GREEK8.so
+#usr/lib/gconv/HP-ROMAN8.so
+#usr/lib/gconv/HP-ROMAN9.so
+#usr/lib/gconv/HP-THAI8.so
+#usr/lib/gconv/HP-TURKISH8.so
+#usr/lib/gconv/IBM037.so
+#usr/lib/gconv/IBM038.so
+#usr/lib/gconv/IBM1004.so
+#usr/lib/gconv/IBM1008.so
+#usr/lib/gconv/IBM1008_420.so
+#usr/lib/gconv/IBM1025.so
+#usr/lib/gconv/IBM1026.so
+#usr/lib/gconv/IBM1046.so
+#usr/lib/gconv/IBM1047.so
+#usr/lib/gconv/IBM1097.so
+#usr/lib/gconv/IBM1112.so
+#usr/lib/gconv/IBM1122.so
+#usr/lib/gconv/IBM1123.so
+#usr/lib/gconv/IBM1124.so
+#usr/lib/gconv/IBM1129.so
+#usr/lib/gconv/IBM1130.so
+#usr/lib/gconv/IBM1132.so
+#usr/lib/gconv/IBM1133.so
+#usr/lib/gconv/IBM1137.so
+#usr/lib/gconv/IBM1140.so
+#usr/lib/gconv/IBM1141.so
+#usr/lib/gconv/IBM1142.so
+#usr/lib/gconv/IBM1143.so
+#usr/lib/gconv/IBM1144.so
+#usr/lib/gconv/IBM1145.so
+#usr/lib/gconv/IBM1146.so
+#usr/lib/gconv/IBM1147.so
+#usr/lib/gconv/IBM1148.so
+#usr/lib/gconv/IBM1149.so
+#usr/lib/gconv/IBM1153.so
+#usr/lib/gconv/IBM1154.so
+#usr/lib/gconv/IBM1155.so
+#usr/lib/gconv/IBM1156.so
+#usr/lib/gconv/IBM1157.so
+#usr/lib/gconv/IBM1158.so
+#usr/lib/gconv/IBM1160.so
+#usr/lib/gconv/IBM1161.so
+#usr/lib/gconv/IBM1162.so
+#usr/lib/gconv/IBM1163.so
+#usr/lib/gconv/IBM1164.so
+#usr/lib/gconv/IBM1166.so
+#usr/lib/gconv/IBM1167.so
+#usr/lib/gconv/IBM12712.so
+#usr/lib/gconv/IBM1364.so
+#usr/lib/gconv/IBM1371.so
+#usr/lib/gconv/IBM1388.so
+#usr/lib/gconv/IBM1390.so
+#usr/lib/gconv/IBM1399.so
+#usr/lib/gconv/IBM16804.so
+#usr/lib/gconv/IBM256.so
+#usr/lib/gconv/IBM273.so
+#usr/lib/gconv/IBM274.so
+#usr/lib/gconv/IBM275.so
+#usr/lib/gconv/IBM277.so
+#usr/lib/gconv/IBM278.so
+#usr/lib/gconv/IBM280.so
+#usr/lib/gconv/IBM281.so
+#usr/lib/gconv/IBM284.so
+#usr/lib/gconv/IBM285.so
+#usr/lib/gconv/IBM290.so
+#usr/lib/gconv/IBM297.so
+#usr/lib/gconv/IBM420.so
+#usr/lib/gconv/IBM423.so
+#usr/lib/gconv/IBM424.so
+#usr/lib/gconv/IBM437.so
+#usr/lib/gconv/IBM4517.so
+#usr/lib/gconv/IBM4899.so
+#usr/lib/gconv/IBM4909.so
+#usr/lib/gconv/IBM4971.so
+#usr/lib/gconv/IBM500.so
+#usr/lib/gconv/IBM5347.so
+#usr/lib/gconv/IBM803.so
+#usr/lib/gconv/IBM850.so
+#usr/lib/gconv/IBM851.so
+#usr/lib/gconv/IBM852.so
+#usr/lib/gconv/IBM855.so
+#usr/lib/gconv/IBM856.so
+#usr/lib/gconv/IBM857.so
+#usr/lib/gconv/IBM860.so
+#usr/lib/gconv/IBM861.so
+#usr/lib/gconv/IBM862.so
+#usr/lib/gconv/IBM863.so
+#usr/lib/gconv/IBM864.so
+#usr/lib/gconv/IBM865.so
+#usr/lib/gconv/IBM866.so
+#usr/lib/gconv/IBM866NAV.so
+#usr/lib/gconv/IBM868.so
+#usr/lib/gconv/IBM869.so
+#usr/lib/gconv/IBM870.so
+#usr/lib/gconv/IBM871.so
+#usr/lib/gconv/IBM874.so
+#usr/lib/gconv/IBM875.so
+#usr/lib/gconv/IBM880.so
+#usr/lib/gconv/IBM891.so
+#usr/lib/gconv/IBM901.so
+#usr/lib/gconv/IBM902.so
+#usr/lib/gconv/IBM903.so
+#usr/lib/gconv/IBM9030.so
+#usr/lib/gconv/IBM904.so
+#usr/lib/gconv/IBM905.so
+#usr/lib/gconv/IBM9066.so
+#usr/lib/gconv/IBM918.so
+#usr/lib/gconv/IBM921.so
+#usr/lib/gconv/IBM922.so
+#usr/lib/gconv/IBM930.so
+#usr/lib/gconv/IBM932.so
+#usr/lib/gconv/IBM933.so
+#usr/lib/gconv/IBM935.so
+#usr/lib/gconv/IBM937.so
+#usr/lib/gconv/IBM939.so
+#usr/lib/gconv/IBM943.so
+#usr/lib/gconv/IBM9448.so
+#usr/lib/gconv/IEC_P27-1.so
+#usr/lib/gconv/INIS-8.so
+#usr/lib/gconv/INIS-CYRILLIC.so
+#usr/lib/gconv/INIS.so
+#usr/lib/gconv/ISIRI-3342.so
+#usr/lib/gconv/ISO-2022-CN-EXT.so
+#usr/lib/gconv/ISO-2022-CN.so
+#usr/lib/gconv/ISO-2022-JP-3.so
+#usr/lib/gconv/ISO-2022-JP.so
+#usr/lib/gconv/ISO-2022-KR.so
+#usr/lib/gconv/ISO-IR-197.so
+#usr/lib/gconv/ISO-IR-209.so
+#usr/lib/gconv/ISO646.so
+#usr/lib/gconv/ISO8859-1.so
+#usr/lib/gconv/ISO8859-10.so
+#usr/lib/gconv/ISO8859-11.so
+#usr/lib/gconv/ISO8859-13.so
+#usr/lib/gconv/ISO8859-14.so
+#usr/lib/gconv/ISO8859-15.so
+#usr/lib/gconv/ISO8859-16.so
+#usr/lib/gconv/ISO8859-2.so
+#usr/lib/gconv/ISO8859-3.so
+#usr/lib/gconv/ISO8859-4.so
+#usr/lib/gconv/ISO8859-5.so
+#usr/lib/gconv/ISO8859-6.so
+#usr/lib/gconv/ISO8859-7.so
+#usr/lib/gconv/ISO8859-8.so
+#usr/lib/gconv/ISO8859-9.so
+#usr/lib/gconv/ISO8859-9E.so
+#usr/lib/gconv/ISO_10367-BOX.so
+#usr/lib/gconv/ISO_11548-1.so
+#usr/lib/gconv/ISO_2033.so
+#usr/lib/gconv/ISO_5427-EXT.so
+#usr/lib/gconv/ISO_5427.so
+#usr/lib/gconv/ISO_5428.so
+#usr/lib/gconv/ISO_6937-2.so
+#usr/lib/gconv/ISO_6937.so
+#usr/lib/gconv/JOHAB.so
+#usr/lib/gconv/KOI-8.so
+#usr/lib/gconv/KOI8-R.so
+#usr/lib/gconv/KOI8-RU.so
+#usr/lib/gconv/KOI8-T.so
+#usr/lib/gconv/KOI8-U.so
+#usr/lib/gconv/LATIN-GREEK-1.so
+#usr/lib/gconv/LATIN-GREEK.so
+#usr/lib/gconv/MAC-CENTRALEUROPE.so
+#usr/lib/gconv/MAC-IS.so
+#usr/lib/gconv/MAC-SAMI.so
+#usr/lib/gconv/MAC-UK.so
+#usr/lib/gconv/MACINTOSH.so
+#usr/lib/gconv/MIK.so
+#usr/lib/gconv/NATS-DANO.so
+#usr/lib/gconv/NATS-SEFI.so
+#usr/lib/gconv/PT154.so
+#usr/lib/gconv/RK1048.so
+#usr/lib/gconv/SAMI-WS2.so
+#usr/lib/gconv/SHIFT_JISX0213.so
+#usr/lib/gconv/SJIS.so
+#usr/lib/gconv/T.61.so
+#usr/lib/gconv/TCVN5712-1.so
+#usr/lib/gconv/TIS-620.so
+#usr/lib/gconv/TSCII.so
+#usr/lib/gconv/UHC.so
+#usr/lib/gconv/UNICODE.so
+#usr/lib/gconv/UTF-16.so
+#usr/lib/gconv/UTF-32.so
+#usr/lib/gconv/UTF-7.so
+#usr/lib/gconv/VISCII.so
+#usr/lib/gconv/gconv-modules
+#usr/lib/gconv/libCNS.so
+#usr/lib/gconv/libGB.so
+#usr/lib/gconv/libISOIR165.so
+#usr/lib/gconv/libJIS.so
+#usr/lib/gconv/libJISX0213.so
+#usr/lib/gconv/libKSC.so
+#usr/lib/gcrt1.o
+#usr/lib/glibc
+#usr/lib/glibc/getconf
+#usr/lib/glibc/getconf/POSIX_V6_LP64_OFF64
+#usr/lib/glibc/getconf/POSIX_V7_LP64_OFF64
+#usr/lib/glibc/pt_chown
+#usr/lib/libBrokenLocale.a
+#usr/lib/libBrokenLocale.so
+#usr/lib/libanl.a
+#usr/lib/libanl.so
+#usr/lib/libbsd-compat.a
+#usr/lib/libc.a
+#usr/lib/libc.so
+#usr/lib/libc_nonshared.a
+#usr/lib/libcidn.so
+#usr/lib/libcrypt.a
+#usr/lib/libcrypt.so
+#usr/lib/libdl.a
+#usr/lib/libdl.so
+#usr/lib/libg.a
+#usr/lib/libieee.a
+#usr/lib/libm.a
+#usr/lib/libm.so
+#usr/lib/libmcheck.a
+#usr/lib/libnsl.a
+#usr/lib/libnsl.so
+#usr/lib/libnss_compat.so
+#usr/lib/libnss_dns.so
+#usr/lib/libnss_files.so
+#usr/lib/libnss_hesiod.so
+#usr/lib/libnss_nis.so
+#usr/lib/libnss_nisplus.so
+#usr/lib/libpthread.a
+#usr/lib/libpthread.so
+#usr/lib/libpthread_nonshared.a
+#usr/lib/libresolv.a
+#usr/lib/libresolv.so
+#usr/lib/librpcsvc.a
+#usr/lib/librt.a
+#usr/lib/librt.so
+#usr/lib/libthread_db.so
+#usr/lib/libutil.a
+#usr/lib/libutil.so
+usr/lib/locale
+#usr/lib/locale/aa_DJ
+#usr/lib/locale/aa_DJ.utf8
+#usr/lib/locale/aa_DJ.utf8/LC_ADDRESS
+#usr/lib/locale/aa_DJ.utf8/LC_COLLATE
+#usr/lib/locale/aa_DJ.utf8/LC_CTYPE
+#usr/lib/locale/aa_DJ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/aa_DJ.utf8/LC_MEASUREMENT
+#usr/lib/locale/aa_DJ.utf8/LC_MESSAGES
+#usr/lib/locale/aa_DJ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/aa_DJ.utf8/LC_MONETARY
+#usr/lib/locale/aa_DJ.utf8/LC_NAME
+#usr/lib/locale/aa_DJ.utf8/LC_NUMERIC
+#usr/lib/locale/aa_DJ.utf8/LC_PAPER
+#usr/lib/locale/aa_DJ.utf8/LC_TELEPHONE
+#usr/lib/locale/aa_DJ.utf8/LC_TIME
+#usr/lib/locale/aa_DJ/LC_ADDRESS
+#usr/lib/locale/aa_DJ/LC_COLLATE
+#usr/lib/locale/aa_DJ/LC_CTYPE
+#usr/lib/locale/aa_DJ/LC_IDENTIFICATION
+#usr/lib/locale/aa_DJ/LC_MEASUREMENT
+#usr/lib/locale/aa_DJ/LC_MESSAGES
+#usr/lib/locale/aa_DJ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/aa_DJ/LC_MONETARY
+#usr/lib/locale/aa_DJ/LC_NAME
+#usr/lib/locale/aa_DJ/LC_NUMERIC
+#usr/lib/locale/aa_DJ/LC_PAPER
+#usr/lib/locale/aa_DJ/LC_TELEPHONE
+#usr/lib/locale/aa_DJ/LC_TIME
+#usr/lib/locale/aa_ER
+#usr/lib/locale/aa_ER/LC_ADDRESS
+#usr/lib/locale/aa_ER/LC_COLLATE
+#usr/lib/locale/aa_ER/LC_CTYPE
+#usr/lib/locale/aa_ER/LC_IDENTIFICATION
+#usr/lib/locale/aa_ER/LC_MEASUREMENT
+#usr/lib/locale/aa_ER/LC_MESSAGES
+#usr/lib/locale/aa_ER/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/aa_ER/LC_MONETARY
+#usr/lib/locale/aa_ER/LC_NAME
+#usr/lib/locale/aa_ER/LC_NUMERIC
+#usr/lib/locale/aa_ER/LC_PAPER
+#usr/lib/locale/aa_ER/LC_TELEPHONE
+#usr/lib/locale/aa_ER/LC_TIME
+#usr/lib/locale/aa_ER@saaho
+#usr/lib/locale/aa_ER@saaho/LC_ADDRESS
+#usr/lib/locale/aa_ER@saaho/LC_COLLATE
+#usr/lib/locale/aa_ER@saaho/LC_CTYPE
+#usr/lib/locale/aa_ER@saaho/LC_IDENTIFICATION
+#usr/lib/locale/aa_ER@saaho/LC_MEASUREMENT
+#usr/lib/locale/aa_ER@saaho/LC_MESSAGES
+#usr/lib/locale/aa_ER@saaho/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/aa_ER@saaho/LC_MONETARY
+#usr/lib/locale/aa_ER@saaho/LC_NAME
+#usr/lib/locale/aa_ER@saaho/LC_NUMERIC
+#usr/lib/locale/aa_ER@saaho/LC_PAPER
+#usr/lib/locale/aa_ER@saaho/LC_TELEPHONE
+#usr/lib/locale/aa_ER@saaho/LC_TIME
+#usr/lib/locale/aa_ET
+#usr/lib/locale/aa_ET/LC_ADDRESS
+#usr/lib/locale/aa_ET/LC_COLLATE
+#usr/lib/locale/aa_ET/LC_CTYPE
+#usr/lib/locale/aa_ET/LC_IDENTIFICATION
+#usr/lib/locale/aa_ET/LC_MEASUREMENT
+#usr/lib/locale/aa_ET/LC_MESSAGES
+#usr/lib/locale/aa_ET/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/aa_ET/LC_MONETARY
+#usr/lib/locale/aa_ET/LC_NAME
+#usr/lib/locale/aa_ET/LC_NUMERIC
+#usr/lib/locale/aa_ET/LC_PAPER
+#usr/lib/locale/aa_ET/LC_TELEPHONE
+#usr/lib/locale/aa_ET/LC_TIME
+#usr/lib/locale/af_ZA
+#usr/lib/locale/af_ZA.utf8
+#usr/lib/locale/af_ZA.utf8/LC_ADDRESS
+#usr/lib/locale/af_ZA.utf8/LC_COLLATE
+#usr/lib/locale/af_ZA.utf8/LC_CTYPE
+#usr/lib/locale/af_ZA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/af_ZA.utf8/LC_MEASUREMENT
+#usr/lib/locale/af_ZA.utf8/LC_MESSAGES
+#usr/lib/locale/af_ZA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/af_ZA.utf8/LC_MONETARY
+#usr/lib/locale/af_ZA.utf8/LC_NAME
+#usr/lib/locale/af_ZA.utf8/LC_NUMERIC
+#usr/lib/locale/af_ZA.utf8/LC_PAPER
+#usr/lib/locale/af_ZA.utf8/LC_TELEPHONE
+#usr/lib/locale/af_ZA.utf8/LC_TIME
+#usr/lib/locale/af_ZA/LC_ADDRESS
+#usr/lib/locale/af_ZA/LC_COLLATE
+#usr/lib/locale/af_ZA/LC_CTYPE
+#usr/lib/locale/af_ZA/LC_IDENTIFICATION
+#usr/lib/locale/af_ZA/LC_MEASUREMENT
+#usr/lib/locale/af_ZA/LC_MESSAGES
+#usr/lib/locale/af_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/af_ZA/LC_MONETARY
+#usr/lib/locale/af_ZA/LC_NAME
+#usr/lib/locale/af_ZA/LC_NUMERIC
+#usr/lib/locale/af_ZA/LC_PAPER
+#usr/lib/locale/af_ZA/LC_TELEPHONE
+#usr/lib/locale/af_ZA/LC_TIME
+#usr/lib/locale/am_ET
+#usr/lib/locale/am_ET/LC_ADDRESS
+#usr/lib/locale/am_ET/LC_COLLATE
+#usr/lib/locale/am_ET/LC_CTYPE
+#usr/lib/locale/am_ET/LC_IDENTIFICATION
+#usr/lib/locale/am_ET/LC_MEASUREMENT
+#usr/lib/locale/am_ET/LC_MESSAGES
+#usr/lib/locale/am_ET/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/am_ET/LC_MONETARY
+#usr/lib/locale/am_ET/LC_NAME
+#usr/lib/locale/am_ET/LC_NUMERIC
+#usr/lib/locale/am_ET/LC_PAPER
+#usr/lib/locale/am_ET/LC_TELEPHONE
+#usr/lib/locale/am_ET/LC_TIME
+#usr/lib/locale/an_ES
+#usr/lib/locale/an_ES.utf8
+#usr/lib/locale/an_ES.utf8/LC_ADDRESS
+#usr/lib/locale/an_ES.utf8/LC_COLLATE
+#usr/lib/locale/an_ES.utf8/LC_CTYPE
+#usr/lib/locale/an_ES.utf8/LC_IDENTIFICATION
+#usr/lib/locale/an_ES.utf8/LC_MEASUREMENT
+#usr/lib/locale/an_ES.utf8/LC_MESSAGES
+#usr/lib/locale/an_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/an_ES.utf8/LC_MONETARY
+#usr/lib/locale/an_ES.utf8/LC_NAME
+#usr/lib/locale/an_ES.utf8/LC_NUMERIC
+#usr/lib/locale/an_ES.utf8/LC_PAPER
+#usr/lib/locale/an_ES.utf8/LC_TELEPHONE
+#usr/lib/locale/an_ES.utf8/LC_TIME
+#usr/lib/locale/an_ES/LC_ADDRESS
+#usr/lib/locale/an_ES/LC_COLLATE
+#usr/lib/locale/an_ES/LC_CTYPE
+#usr/lib/locale/an_ES/LC_IDENTIFICATION
+#usr/lib/locale/an_ES/LC_MEASUREMENT
+#usr/lib/locale/an_ES/LC_MESSAGES
+#usr/lib/locale/an_ES/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/an_ES/LC_MONETARY
+#usr/lib/locale/an_ES/LC_NAME
+#usr/lib/locale/an_ES/LC_NUMERIC
+#usr/lib/locale/an_ES/LC_PAPER
+#usr/lib/locale/an_ES/LC_TELEPHONE
+#usr/lib/locale/an_ES/LC_TIME
+#usr/lib/locale/ar_AE
+#usr/lib/locale/ar_AE.utf8
+#usr/lib/locale/ar_AE.utf8/LC_ADDRESS
+#usr/lib/locale/ar_AE.utf8/LC_COLLATE
+#usr/lib/locale/ar_AE.utf8/LC_CTYPE
+#usr/lib/locale/ar_AE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_AE.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_AE.utf8/LC_MESSAGES
+#usr/lib/locale/ar_AE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_AE.utf8/LC_MONETARY
+#usr/lib/locale/ar_AE.utf8/LC_NAME
+#usr/lib/locale/ar_AE.utf8/LC_NUMERIC
+#usr/lib/locale/ar_AE.utf8/LC_PAPER
+#usr/lib/locale/ar_AE.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_AE.utf8/LC_TIME
+#usr/lib/locale/ar_AE/LC_ADDRESS
+#usr/lib/locale/ar_AE/LC_COLLATE
+#usr/lib/locale/ar_AE/LC_CTYPE
+#usr/lib/locale/ar_AE/LC_IDENTIFICATION
+#usr/lib/locale/ar_AE/LC_MEASUREMENT
+#usr/lib/locale/ar_AE/LC_MESSAGES
+#usr/lib/locale/ar_AE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_AE/LC_MONETARY
+#usr/lib/locale/ar_AE/LC_NAME
+#usr/lib/locale/ar_AE/LC_NUMERIC
+#usr/lib/locale/ar_AE/LC_PAPER
+#usr/lib/locale/ar_AE/LC_TELEPHONE
+#usr/lib/locale/ar_AE/LC_TIME
+#usr/lib/locale/ar_BH
+#usr/lib/locale/ar_BH.utf8
+#usr/lib/locale/ar_BH.utf8/LC_ADDRESS
+#usr/lib/locale/ar_BH.utf8/LC_COLLATE
+#usr/lib/locale/ar_BH.utf8/LC_CTYPE
+#usr/lib/locale/ar_BH.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_BH.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_BH.utf8/LC_MESSAGES
+#usr/lib/locale/ar_BH.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_BH.utf8/LC_MONETARY
+#usr/lib/locale/ar_BH.utf8/LC_NAME
+#usr/lib/locale/ar_BH.utf8/LC_NUMERIC
+#usr/lib/locale/ar_BH.utf8/LC_PAPER
+#usr/lib/locale/ar_BH.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_BH.utf8/LC_TIME
+#usr/lib/locale/ar_BH/LC_ADDRESS
+#usr/lib/locale/ar_BH/LC_COLLATE
+#usr/lib/locale/ar_BH/LC_CTYPE
+#usr/lib/locale/ar_BH/LC_IDENTIFICATION
+#usr/lib/locale/ar_BH/LC_MEASUREMENT
+#usr/lib/locale/ar_BH/LC_MESSAGES
+#usr/lib/locale/ar_BH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_BH/LC_MONETARY
+#usr/lib/locale/ar_BH/LC_NAME
+#usr/lib/locale/ar_BH/LC_NUMERIC
+#usr/lib/locale/ar_BH/LC_PAPER
+#usr/lib/locale/ar_BH/LC_TELEPHONE
+#usr/lib/locale/ar_BH/LC_TIME
+#usr/lib/locale/ar_DZ
+#usr/lib/locale/ar_DZ.utf8
+#usr/lib/locale/ar_DZ.utf8/LC_ADDRESS
+#usr/lib/locale/ar_DZ.utf8/LC_COLLATE
+#usr/lib/locale/ar_DZ.utf8/LC_CTYPE
+#usr/lib/locale/ar_DZ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_DZ.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_DZ.utf8/LC_MESSAGES
+#usr/lib/locale/ar_DZ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_DZ.utf8/LC_MONETARY
+#usr/lib/locale/ar_DZ.utf8/LC_NAME
+#usr/lib/locale/ar_DZ.utf8/LC_NUMERIC
+#usr/lib/locale/ar_DZ.utf8/LC_PAPER
+#usr/lib/locale/ar_DZ.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_DZ.utf8/LC_TIME
+#usr/lib/locale/ar_DZ/LC_ADDRESS
+#usr/lib/locale/ar_DZ/LC_COLLATE
+#usr/lib/locale/ar_DZ/LC_CTYPE
+#usr/lib/locale/ar_DZ/LC_IDENTIFICATION
+#usr/lib/locale/ar_DZ/LC_MEASUREMENT
+#usr/lib/locale/ar_DZ/LC_MESSAGES
+#usr/lib/locale/ar_DZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_DZ/LC_MONETARY
+#usr/lib/locale/ar_DZ/LC_NAME
+#usr/lib/locale/ar_DZ/LC_NUMERIC
+#usr/lib/locale/ar_DZ/LC_PAPER
+#usr/lib/locale/ar_DZ/LC_TELEPHONE
+#usr/lib/locale/ar_DZ/LC_TIME
+#usr/lib/locale/ar_EG
+#usr/lib/locale/ar_EG.utf8
+#usr/lib/locale/ar_EG.utf8/LC_ADDRESS
+#usr/lib/locale/ar_EG.utf8/LC_COLLATE
+#usr/lib/locale/ar_EG.utf8/LC_CTYPE
+#usr/lib/locale/ar_EG.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_EG.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_EG.utf8/LC_MESSAGES
+#usr/lib/locale/ar_EG.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_EG.utf8/LC_MONETARY
+#usr/lib/locale/ar_EG.utf8/LC_NAME
+#usr/lib/locale/ar_EG.utf8/LC_NUMERIC
+#usr/lib/locale/ar_EG.utf8/LC_PAPER
+#usr/lib/locale/ar_EG.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_EG.utf8/LC_TIME
+#usr/lib/locale/ar_EG/LC_ADDRESS
+#usr/lib/locale/ar_EG/LC_COLLATE
+#usr/lib/locale/ar_EG/LC_CTYPE
+#usr/lib/locale/ar_EG/LC_IDENTIFICATION
+#usr/lib/locale/ar_EG/LC_MEASUREMENT
+#usr/lib/locale/ar_EG/LC_MESSAGES
+#usr/lib/locale/ar_EG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_EG/LC_MONETARY
+#usr/lib/locale/ar_EG/LC_NAME
+#usr/lib/locale/ar_EG/LC_NUMERIC
+#usr/lib/locale/ar_EG/LC_PAPER
+#usr/lib/locale/ar_EG/LC_TELEPHONE
+#usr/lib/locale/ar_EG/LC_TIME
+#usr/lib/locale/ar_IN
+#usr/lib/locale/ar_IN/LC_ADDRESS
+#usr/lib/locale/ar_IN/LC_COLLATE
+#usr/lib/locale/ar_IN/LC_CTYPE
+#usr/lib/locale/ar_IN/LC_IDENTIFICATION
+#usr/lib/locale/ar_IN/LC_MEASUREMENT
+#usr/lib/locale/ar_IN/LC_MESSAGES
+#usr/lib/locale/ar_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_IN/LC_MONETARY
+#usr/lib/locale/ar_IN/LC_NAME
+#usr/lib/locale/ar_IN/LC_NUMERIC
+#usr/lib/locale/ar_IN/LC_PAPER
+#usr/lib/locale/ar_IN/LC_TELEPHONE
+#usr/lib/locale/ar_IN/LC_TIME
+#usr/lib/locale/ar_IQ
+#usr/lib/locale/ar_IQ.utf8
+#usr/lib/locale/ar_IQ.utf8/LC_ADDRESS
+#usr/lib/locale/ar_IQ.utf8/LC_COLLATE
+#usr/lib/locale/ar_IQ.utf8/LC_CTYPE
+#usr/lib/locale/ar_IQ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_IQ.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_IQ.utf8/LC_MESSAGES
+#usr/lib/locale/ar_IQ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_IQ.utf8/LC_MONETARY
+#usr/lib/locale/ar_IQ.utf8/LC_NAME
+#usr/lib/locale/ar_IQ.utf8/LC_NUMERIC
+#usr/lib/locale/ar_IQ.utf8/LC_PAPER
+#usr/lib/locale/ar_IQ.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_IQ.utf8/LC_TIME
+#usr/lib/locale/ar_IQ/LC_ADDRESS
+#usr/lib/locale/ar_IQ/LC_COLLATE
+#usr/lib/locale/ar_IQ/LC_CTYPE
+#usr/lib/locale/ar_IQ/LC_IDENTIFICATION
+#usr/lib/locale/ar_IQ/LC_MEASUREMENT
+#usr/lib/locale/ar_IQ/LC_MESSAGES
+#usr/lib/locale/ar_IQ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_IQ/LC_MONETARY
+#usr/lib/locale/ar_IQ/LC_NAME
+#usr/lib/locale/ar_IQ/LC_NUMERIC
+#usr/lib/locale/ar_IQ/LC_PAPER
+#usr/lib/locale/ar_IQ/LC_TELEPHONE
+#usr/lib/locale/ar_IQ/LC_TIME
+#usr/lib/locale/ar_JO
+#usr/lib/locale/ar_JO.utf8
+#usr/lib/locale/ar_JO.utf8/LC_ADDRESS
+#usr/lib/locale/ar_JO.utf8/LC_COLLATE
+#usr/lib/locale/ar_JO.utf8/LC_CTYPE
+#usr/lib/locale/ar_JO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_JO.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_JO.utf8/LC_MESSAGES
+#usr/lib/locale/ar_JO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_JO.utf8/LC_MONETARY
+#usr/lib/locale/ar_JO.utf8/LC_NAME
+#usr/lib/locale/ar_JO.utf8/LC_NUMERIC
+#usr/lib/locale/ar_JO.utf8/LC_PAPER
+#usr/lib/locale/ar_JO.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_JO.utf8/LC_TIME
+#usr/lib/locale/ar_JO/LC_ADDRESS
+#usr/lib/locale/ar_JO/LC_COLLATE
+#usr/lib/locale/ar_JO/LC_CTYPE
+#usr/lib/locale/ar_JO/LC_IDENTIFICATION
+#usr/lib/locale/ar_JO/LC_MEASUREMENT
+#usr/lib/locale/ar_JO/LC_MESSAGES
+#usr/lib/locale/ar_JO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_JO/LC_MONETARY
+#usr/lib/locale/ar_JO/LC_NAME
+#usr/lib/locale/ar_JO/LC_NUMERIC
+#usr/lib/locale/ar_JO/LC_PAPER
+#usr/lib/locale/ar_JO/LC_TELEPHONE
+#usr/lib/locale/ar_JO/LC_TIME
+#usr/lib/locale/ar_KW
+#usr/lib/locale/ar_KW.utf8
+#usr/lib/locale/ar_KW.utf8/LC_ADDRESS
+#usr/lib/locale/ar_KW.utf8/LC_COLLATE
+#usr/lib/locale/ar_KW.utf8/LC_CTYPE
+#usr/lib/locale/ar_KW.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_KW.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_KW.utf8/LC_MESSAGES
+#usr/lib/locale/ar_KW.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_KW.utf8/LC_MONETARY
+#usr/lib/locale/ar_KW.utf8/LC_NAME
+#usr/lib/locale/ar_KW.utf8/LC_NUMERIC
+#usr/lib/locale/ar_KW.utf8/LC_PAPER
+#usr/lib/locale/ar_KW.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_KW.utf8/LC_TIME
+#usr/lib/locale/ar_KW/LC_ADDRESS
+#usr/lib/locale/ar_KW/LC_COLLATE
+#usr/lib/locale/ar_KW/LC_CTYPE
+#usr/lib/locale/ar_KW/LC_IDENTIFICATION
+#usr/lib/locale/ar_KW/LC_MEASUREMENT
+#usr/lib/locale/ar_KW/LC_MESSAGES
+#usr/lib/locale/ar_KW/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_KW/LC_MONETARY
+#usr/lib/locale/ar_KW/LC_NAME
+#usr/lib/locale/ar_KW/LC_NUMERIC
+#usr/lib/locale/ar_KW/LC_PAPER
+#usr/lib/locale/ar_KW/LC_TELEPHONE
+#usr/lib/locale/ar_KW/LC_TIME
+#usr/lib/locale/ar_LB
+#usr/lib/locale/ar_LB.utf8
+#usr/lib/locale/ar_LB.utf8/LC_ADDRESS
+#usr/lib/locale/ar_LB.utf8/LC_COLLATE
+#usr/lib/locale/ar_LB.utf8/LC_CTYPE
+#usr/lib/locale/ar_LB.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_LB.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_LB.utf8/LC_MESSAGES
+#usr/lib/locale/ar_LB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_LB.utf8/LC_MONETARY
+#usr/lib/locale/ar_LB.utf8/LC_NAME
+#usr/lib/locale/ar_LB.utf8/LC_NUMERIC
+#usr/lib/locale/ar_LB.utf8/LC_PAPER
+#usr/lib/locale/ar_LB.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_LB.utf8/LC_TIME
+#usr/lib/locale/ar_LB/LC_ADDRESS
+#usr/lib/locale/ar_LB/LC_COLLATE
+#usr/lib/locale/ar_LB/LC_CTYPE
+#usr/lib/locale/ar_LB/LC_IDENTIFICATION
+#usr/lib/locale/ar_LB/LC_MEASUREMENT
+#usr/lib/locale/ar_LB/LC_MESSAGES
+#usr/lib/locale/ar_LB/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_LB/LC_MONETARY
+#usr/lib/locale/ar_LB/LC_NAME
+#usr/lib/locale/ar_LB/LC_NUMERIC
+#usr/lib/locale/ar_LB/LC_PAPER
+#usr/lib/locale/ar_LB/LC_TELEPHONE
+#usr/lib/locale/ar_LB/LC_TIME
+#usr/lib/locale/ar_LY
+#usr/lib/locale/ar_LY.utf8
+#usr/lib/locale/ar_LY.utf8/LC_ADDRESS
+#usr/lib/locale/ar_LY.utf8/LC_COLLATE
+#usr/lib/locale/ar_LY.utf8/LC_CTYPE
+#usr/lib/locale/ar_LY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_LY.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_LY.utf8/LC_MESSAGES
+#usr/lib/locale/ar_LY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_LY.utf8/LC_MONETARY
+#usr/lib/locale/ar_LY.utf8/LC_NAME
+#usr/lib/locale/ar_LY.utf8/LC_NUMERIC
+#usr/lib/locale/ar_LY.utf8/LC_PAPER
+#usr/lib/locale/ar_LY.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_LY.utf8/LC_TIME
+#usr/lib/locale/ar_LY/LC_ADDRESS
+#usr/lib/locale/ar_LY/LC_COLLATE
+#usr/lib/locale/ar_LY/LC_CTYPE
+#usr/lib/locale/ar_LY/LC_IDENTIFICATION
+#usr/lib/locale/ar_LY/LC_MEASUREMENT
+#usr/lib/locale/ar_LY/LC_MESSAGES
+#usr/lib/locale/ar_LY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_LY/LC_MONETARY
+#usr/lib/locale/ar_LY/LC_NAME
+#usr/lib/locale/ar_LY/LC_NUMERIC
+#usr/lib/locale/ar_LY/LC_PAPER
+#usr/lib/locale/ar_LY/LC_TELEPHONE
+#usr/lib/locale/ar_LY/LC_TIME
+#usr/lib/locale/ar_MA
+#usr/lib/locale/ar_MA.utf8
+#usr/lib/locale/ar_MA.utf8/LC_ADDRESS
+#usr/lib/locale/ar_MA.utf8/LC_COLLATE
+#usr/lib/locale/ar_MA.utf8/LC_CTYPE
+#usr/lib/locale/ar_MA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_MA.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_MA.utf8/LC_MESSAGES
+#usr/lib/locale/ar_MA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_MA.utf8/LC_MONETARY
+#usr/lib/locale/ar_MA.utf8/LC_NAME
+#usr/lib/locale/ar_MA.utf8/LC_NUMERIC
+#usr/lib/locale/ar_MA.utf8/LC_PAPER
+#usr/lib/locale/ar_MA.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_MA.utf8/LC_TIME
+#usr/lib/locale/ar_MA/LC_ADDRESS
+#usr/lib/locale/ar_MA/LC_COLLATE
+#usr/lib/locale/ar_MA/LC_CTYPE
+#usr/lib/locale/ar_MA/LC_IDENTIFICATION
+#usr/lib/locale/ar_MA/LC_MEASUREMENT
+#usr/lib/locale/ar_MA/LC_MESSAGES
+#usr/lib/locale/ar_MA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_MA/LC_MONETARY
+#usr/lib/locale/ar_MA/LC_NAME
+#usr/lib/locale/ar_MA/LC_NUMERIC
+#usr/lib/locale/ar_MA/LC_PAPER
+#usr/lib/locale/ar_MA/LC_TELEPHONE
+#usr/lib/locale/ar_MA/LC_TIME
+#usr/lib/locale/ar_OM
+#usr/lib/locale/ar_OM.utf8
+#usr/lib/locale/ar_OM.utf8/LC_ADDRESS
+#usr/lib/locale/ar_OM.utf8/LC_COLLATE
+#usr/lib/locale/ar_OM.utf8/LC_CTYPE
+#usr/lib/locale/ar_OM.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_OM.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_OM.utf8/LC_MESSAGES
+#usr/lib/locale/ar_OM.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_OM.utf8/LC_MONETARY
+#usr/lib/locale/ar_OM.utf8/LC_NAME
+#usr/lib/locale/ar_OM.utf8/LC_NUMERIC
+#usr/lib/locale/ar_OM.utf8/LC_PAPER
+#usr/lib/locale/ar_OM.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_OM.utf8/LC_TIME
+#usr/lib/locale/ar_OM/LC_ADDRESS
+#usr/lib/locale/ar_OM/LC_COLLATE
+#usr/lib/locale/ar_OM/LC_CTYPE
+#usr/lib/locale/ar_OM/LC_IDENTIFICATION
+#usr/lib/locale/ar_OM/LC_MEASUREMENT
+#usr/lib/locale/ar_OM/LC_MESSAGES
+#usr/lib/locale/ar_OM/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_OM/LC_MONETARY
+#usr/lib/locale/ar_OM/LC_NAME
+#usr/lib/locale/ar_OM/LC_NUMERIC
+#usr/lib/locale/ar_OM/LC_PAPER
+#usr/lib/locale/ar_OM/LC_TELEPHONE
+#usr/lib/locale/ar_OM/LC_TIME
+#usr/lib/locale/ar_QA
+#usr/lib/locale/ar_QA.utf8
+#usr/lib/locale/ar_QA.utf8/LC_ADDRESS
+#usr/lib/locale/ar_QA.utf8/LC_COLLATE
+#usr/lib/locale/ar_QA.utf8/LC_CTYPE
+#usr/lib/locale/ar_QA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_QA.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_QA.utf8/LC_MESSAGES
+#usr/lib/locale/ar_QA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_QA.utf8/LC_MONETARY
+#usr/lib/locale/ar_QA.utf8/LC_NAME
+#usr/lib/locale/ar_QA.utf8/LC_NUMERIC
+#usr/lib/locale/ar_QA.utf8/LC_PAPER
+#usr/lib/locale/ar_QA.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_QA.utf8/LC_TIME
+#usr/lib/locale/ar_QA/LC_ADDRESS
+#usr/lib/locale/ar_QA/LC_COLLATE
+#usr/lib/locale/ar_QA/LC_CTYPE
+#usr/lib/locale/ar_QA/LC_IDENTIFICATION
+#usr/lib/locale/ar_QA/LC_MEASUREMENT
+#usr/lib/locale/ar_QA/LC_MESSAGES
+#usr/lib/locale/ar_QA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_QA/LC_MONETARY
+#usr/lib/locale/ar_QA/LC_NAME
+#usr/lib/locale/ar_QA/LC_NUMERIC
+#usr/lib/locale/ar_QA/LC_PAPER
+#usr/lib/locale/ar_QA/LC_TELEPHONE
+#usr/lib/locale/ar_QA/LC_TIME
+#usr/lib/locale/ar_SA
+#usr/lib/locale/ar_SA.utf8
+#usr/lib/locale/ar_SA.utf8/LC_ADDRESS
+#usr/lib/locale/ar_SA.utf8/LC_COLLATE
+#usr/lib/locale/ar_SA.utf8/LC_CTYPE
+#usr/lib/locale/ar_SA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_SA.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_SA.utf8/LC_MESSAGES
+#usr/lib/locale/ar_SA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_SA.utf8/LC_MONETARY
+#usr/lib/locale/ar_SA.utf8/LC_NAME
+#usr/lib/locale/ar_SA.utf8/LC_NUMERIC
+#usr/lib/locale/ar_SA.utf8/LC_PAPER
+#usr/lib/locale/ar_SA.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_SA.utf8/LC_TIME
+#usr/lib/locale/ar_SA/LC_ADDRESS
+#usr/lib/locale/ar_SA/LC_COLLATE
+#usr/lib/locale/ar_SA/LC_CTYPE
+#usr/lib/locale/ar_SA/LC_IDENTIFICATION
+#usr/lib/locale/ar_SA/LC_MEASUREMENT
+#usr/lib/locale/ar_SA/LC_MESSAGES
+#usr/lib/locale/ar_SA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_SA/LC_MONETARY
+#usr/lib/locale/ar_SA/LC_NAME
+#usr/lib/locale/ar_SA/LC_NUMERIC
+#usr/lib/locale/ar_SA/LC_PAPER
+#usr/lib/locale/ar_SA/LC_TELEPHONE
+#usr/lib/locale/ar_SA/LC_TIME
+#usr/lib/locale/ar_SD
+#usr/lib/locale/ar_SD.utf8
+#usr/lib/locale/ar_SD.utf8/LC_ADDRESS
+#usr/lib/locale/ar_SD.utf8/LC_COLLATE
+#usr/lib/locale/ar_SD.utf8/LC_CTYPE
+#usr/lib/locale/ar_SD.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_SD.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_SD.utf8/LC_MESSAGES
+#usr/lib/locale/ar_SD.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_SD.utf8/LC_MONETARY
+#usr/lib/locale/ar_SD.utf8/LC_NAME
+#usr/lib/locale/ar_SD.utf8/LC_NUMERIC
+#usr/lib/locale/ar_SD.utf8/LC_PAPER
+#usr/lib/locale/ar_SD.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_SD.utf8/LC_TIME
+#usr/lib/locale/ar_SD/LC_ADDRESS
+#usr/lib/locale/ar_SD/LC_COLLATE
+#usr/lib/locale/ar_SD/LC_CTYPE
+#usr/lib/locale/ar_SD/LC_IDENTIFICATION
+#usr/lib/locale/ar_SD/LC_MEASUREMENT
+#usr/lib/locale/ar_SD/LC_MESSAGES
+#usr/lib/locale/ar_SD/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_SD/LC_MONETARY
+#usr/lib/locale/ar_SD/LC_NAME
+#usr/lib/locale/ar_SD/LC_NUMERIC
+#usr/lib/locale/ar_SD/LC_PAPER
+#usr/lib/locale/ar_SD/LC_TELEPHONE
+#usr/lib/locale/ar_SD/LC_TIME
+#usr/lib/locale/ar_SY
+#usr/lib/locale/ar_SY.utf8
+#usr/lib/locale/ar_SY.utf8/LC_ADDRESS
+#usr/lib/locale/ar_SY.utf8/LC_COLLATE
+#usr/lib/locale/ar_SY.utf8/LC_CTYPE
+#usr/lib/locale/ar_SY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_SY.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_SY.utf8/LC_MESSAGES
+#usr/lib/locale/ar_SY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_SY.utf8/LC_MONETARY
+#usr/lib/locale/ar_SY.utf8/LC_NAME
+#usr/lib/locale/ar_SY.utf8/LC_NUMERIC
+#usr/lib/locale/ar_SY.utf8/LC_PAPER
+#usr/lib/locale/ar_SY.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_SY.utf8/LC_TIME
+#usr/lib/locale/ar_SY/LC_ADDRESS
+#usr/lib/locale/ar_SY/LC_COLLATE
+#usr/lib/locale/ar_SY/LC_CTYPE
+#usr/lib/locale/ar_SY/LC_IDENTIFICATION
+#usr/lib/locale/ar_SY/LC_MEASUREMENT
+#usr/lib/locale/ar_SY/LC_MESSAGES
+#usr/lib/locale/ar_SY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_SY/LC_MONETARY
+#usr/lib/locale/ar_SY/LC_NAME
+#usr/lib/locale/ar_SY/LC_NUMERIC
+#usr/lib/locale/ar_SY/LC_PAPER
+#usr/lib/locale/ar_SY/LC_TELEPHONE
+#usr/lib/locale/ar_SY/LC_TIME
+#usr/lib/locale/ar_TN
+#usr/lib/locale/ar_TN.utf8
+#usr/lib/locale/ar_TN.utf8/LC_ADDRESS
+#usr/lib/locale/ar_TN.utf8/LC_COLLATE
+#usr/lib/locale/ar_TN.utf8/LC_CTYPE
+#usr/lib/locale/ar_TN.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_TN.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_TN.utf8/LC_MESSAGES
+#usr/lib/locale/ar_TN.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_TN.utf8/LC_MONETARY
+#usr/lib/locale/ar_TN.utf8/LC_NAME
+#usr/lib/locale/ar_TN.utf8/LC_NUMERIC
+#usr/lib/locale/ar_TN.utf8/LC_PAPER
+#usr/lib/locale/ar_TN.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_TN.utf8/LC_TIME
+#usr/lib/locale/ar_TN/LC_ADDRESS
+#usr/lib/locale/ar_TN/LC_COLLATE
+#usr/lib/locale/ar_TN/LC_CTYPE
+#usr/lib/locale/ar_TN/LC_IDENTIFICATION
+#usr/lib/locale/ar_TN/LC_MEASUREMENT
+#usr/lib/locale/ar_TN/LC_MESSAGES
+#usr/lib/locale/ar_TN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_TN/LC_MONETARY
+#usr/lib/locale/ar_TN/LC_NAME
+#usr/lib/locale/ar_TN/LC_NUMERIC
+#usr/lib/locale/ar_TN/LC_PAPER
+#usr/lib/locale/ar_TN/LC_TELEPHONE
+#usr/lib/locale/ar_TN/LC_TIME
+#usr/lib/locale/ar_YE
+#usr/lib/locale/ar_YE.utf8
+#usr/lib/locale/ar_YE.utf8/LC_ADDRESS
+#usr/lib/locale/ar_YE.utf8/LC_COLLATE
+#usr/lib/locale/ar_YE.utf8/LC_CTYPE
+#usr/lib/locale/ar_YE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ar_YE.utf8/LC_MEASUREMENT
+#usr/lib/locale/ar_YE.utf8/LC_MESSAGES
+#usr/lib/locale/ar_YE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_YE.utf8/LC_MONETARY
+#usr/lib/locale/ar_YE.utf8/LC_NAME
+#usr/lib/locale/ar_YE.utf8/LC_NUMERIC
+#usr/lib/locale/ar_YE.utf8/LC_PAPER
+#usr/lib/locale/ar_YE.utf8/LC_TELEPHONE
+#usr/lib/locale/ar_YE.utf8/LC_TIME
+#usr/lib/locale/ar_YE/LC_ADDRESS
+#usr/lib/locale/ar_YE/LC_COLLATE
+#usr/lib/locale/ar_YE/LC_CTYPE
+#usr/lib/locale/ar_YE/LC_IDENTIFICATION
+#usr/lib/locale/ar_YE/LC_MEASUREMENT
+#usr/lib/locale/ar_YE/LC_MESSAGES
+#usr/lib/locale/ar_YE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ar_YE/LC_MONETARY
+#usr/lib/locale/ar_YE/LC_NAME
+#usr/lib/locale/ar_YE/LC_NUMERIC
+#usr/lib/locale/ar_YE/LC_PAPER
+#usr/lib/locale/ar_YE/LC_TELEPHONE
+#usr/lib/locale/ar_YE/LC_TIME
+#usr/lib/locale/as_IN
+#usr/lib/locale/as_IN/LC_ADDRESS
+#usr/lib/locale/as_IN/LC_COLLATE
+#usr/lib/locale/as_IN/LC_CTYPE
+#usr/lib/locale/as_IN/LC_IDENTIFICATION
+#usr/lib/locale/as_IN/LC_MEASUREMENT
+#usr/lib/locale/as_IN/LC_MESSAGES
+#usr/lib/locale/as_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/as_IN/LC_MONETARY
+#usr/lib/locale/as_IN/LC_NAME
+#usr/lib/locale/as_IN/LC_NUMERIC
+#usr/lib/locale/as_IN/LC_PAPER
+#usr/lib/locale/as_IN/LC_TELEPHONE
+#usr/lib/locale/as_IN/LC_TIME
+#usr/lib/locale/ast_ES
+#usr/lib/locale/ast_ES.utf8
+#usr/lib/locale/ast_ES.utf8/LC_ADDRESS
+#usr/lib/locale/ast_ES.utf8/LC_COLLATE
+#usr/lib/locale/ast_ES.utf8/LC_CTYPE
+#usr/lib/locale/ast_ES.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ast_ES.utf8/LC_MEASUREMENT
+#usr/lib/locale/ast_ES.utf8/LC_MESSAGES
+#usr/lib/locale/ast_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ast_ES.utf8/LC_MONETARY
+#usr/lib/locale/ast_ES.utf8/LC_NAME
+#usr/lib/locale/ast_ES.utf8/LC_NUMERIC
+#usr/lib/locale/ast_ES.utf8/LC_PAPER
+#usr/lib/locale/ast_ES.utf8/LC_TELEPHONE
+#usr/lib/locale/ast_ES.utf8/LC_TIME
+#usr/lib/locale/ast_ES/LC_ADDRESS
+#usr/lib/locale/ast_ES/LC_COLLATE
+#usr/lib/locale/ast_ES/LC_CTYPE
+#usr/lib/locale/ast_ES/LC_IDENTIFICATION
+#usr/lib/locale/ast_ES/LC_MEASUREMENT
+#usr/lib/locale/ast_ES/LC_MESSAGES
+#usr/lib/locale/ast_ES/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ast_ES/LC_MONETARY
+#usr/lib/locale/ast_ES/LC_NAME
+#usr/lib/locale/ast_ES/LC_NUMERIC
+#usr/lib/locale/ast_ES/LC_PAPER
+#usr/lib/locale/ast_ES/LC_TELEPHONE
+#usr/lib/locale/ast_ES/LC_TIME
+#usr/lib/locale/az_AZ
+#usr/lib/locale/az_AZ/LC_ADDRESS
+#usr/lib/locale/az_AZ/LC_COLLATE
+#usr/lib/locale/az_AZ/LC_CTYPE
+#usr/lib/locale/az_AZ/LC_IDENTIFICATION
+#usr/lib/locale/az_AZ/LC_MEASUREMENT
+#usr/lib/locale/az_AZ/LC_MESSAGES
+#usr/lib/locale/az_AZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/az_AZ/LC_MONETARY
+#usr/lib/locale/az_AZ/LC_NAME
+#usr/lib/locale/az_AZ/LC_NUMERIC
+#usr/lib/locale/az_AZ/LC_PAPER
+#usr/lib/locale/az_AZ/LC_TELEPHONE
+#usr/lib/locale/az_AZ/LC_TIME
+#usr/lib/locale/be_BY
+#usr/lib/locale/be_BY.utf8
+#usr/lib/locale/be_BY.utf8/LC_ADDRESS
+#usr/lib/locale/be_BY.utf8/LC_COLLATE
+#usr/lib/locale/be_BY.utf8/LC_CTYPE
+#usr/lib/locale/be_BY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/be_BY.utf8/LC_MEASUREMENT
+#usr/lib/locale/be_BY.utf8/LC_MESSAGES
+#usr/lib/locale/be_BY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/be_BY.utf8/LC_MONETARY
+#usr/lib/locale/be_BY.utf8/LC_NAME
+#usr/lib/locale/be_BY.utf8/LC_NUMERIC
+#usr/lib/locale/be_BY.utf8/LC_PAPER
+#usr/lib/locale/be_BY.utf8/LC_TELEPHONE
+#usr/lib/locale/be_BY.utf8/LC_TIME
+#usr/lib/locale/be_BY/LC_ADDRESS
+#usr/lib/locale/be_BY/LC_COLLATE
+#usr/lib/locale/be_BY/LC_CTYPE
+#usr/lib/locale/be_BY/LC_IDENTIFICATION
+#usr/lib/locale/be_BY/LC_MEASUREMENT
+#usr/lib/locale/be_BY/LC_MESSAGES
+#usr/lib/locale/be_BY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/be_BY/LC_MONETARY
+#usr/lib/locale/be_BY/LC_NAME
+#usr/lib/locale/be_BY/LC_NUMERIC
+#usr/lib/locale/be_BY/LC_PAPER
+#usr/lib/locale/be_BY/LC_TELEPHONE
+#usr/lib/locale/be_BY/LC_TIME
+#usr/lib/locale/be_BY@latin
+#usr/lib/locale/be_BY@latin/LC_ADDRESS
+#usr/lib/locale/be_BY@latin/LC_COLLATE
+#usr/lib/locale/be_BY@latin/LC_CTYPE
+#usr/lib/locale/be_BY@latin/LC_IDENTIFICATION
+#usr/lib/locale/be_BY@latin/LC_MEASUREMENT
+#usr/lib/locale/be_BY@latin/LC_MESSAGES
+#usr/lib/locale/be_BY@latin/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/be_BY@latin/LC_MONETARY
+#usr/lib/locale/be_BY@latin/LC_NAME
+#usr/lib/locale/be_BY@latin/LC_NUMERIC
+#usr/lib/locale/be_BY@latin/LC_PAPER
+#usr/lib/locale/be_BY@latin/LC_TELEPHONE
+#usr/lib/locale/be_BY@latin/LC_TIME
+#usr/lib/locale/ber_DZ
+#usr/lib/locale/ber_DZ/LC_ADDRESS
+#usr/lib/locale/ber_DZ/LC_COLLATE
+#usr/lib/locale/ber_DZ/LC_CTYPE
+#usr/lib/locale/ber_DZ/LC_IDENTIFICATION
+#usr/lib/locale/ber_DZ/LC_MEASUREMENT
+#usr/lib/locale/ber_DZ/LC_MESSAGES
+#usr/lib/locale/ber_DZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ber_DZ/LC_MONETARY
+#usr/lib/locale/ber_DZ/LC_NAME
+#usr/lib/locale/ber_DZ/LC_NUMERIC
+#usr/lib/locale/ber_DZ/LC_PAPER
+#usr/lib/locale/ber_DZ/LC_TELEPHONE
+#usr/lib/locale/ber_DZ/LC_TIME
+#usr/lib/locale/ber_MA
+#usr/lib/locale/ber_MA/LC_ADDRESS
+#usr/lib/locale/ber_MA/LC_COLLATE
+#usr/lib/locale/ber_MA/LC_CTYPE
+#usr/lib/locale/ber_MA/LC_IDENTIFICATION
+#usr/lib/locale/ber_MA/LC_MEASUREMENT
+#usr/lib/locale/ber_MA/LC_MESSAGES
+#usr/lib/locale/ber_MA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ber_MA/LC_MONETARY
+#usr/lib/locale/ber_MA/LC_NAME
+#usr/lib/locale/ber_MA/LC_NUMERIC
+#usr/lib/locale/ber_MA/LC_PAPER
+#usr/lib/locale/ber_MA/LC_TELEPHONE
+#usr/lib/locale/ber_MA/LC_TIME
+#usr/lib/locale/bg_BG
+#usr/lib/locale/bg_BG.utf8
+#usr/lib/locale/bg_BG.utf8/LC_ADDRESS
+#usr/lib/locale/bg_BG.utf8/LC_COLLATE
+#usr/lib/locale/bg_BG.utf8/LC_CTYPE
+#usr/lib/locale/bg_BG.utf8/LC_IDENTIFICATION
+#usr/lib/locale/bg_BG.utf8/LC_MEASUREMENT
+#usr/lib/locale/bg_BG.utf8/LC_MESSAGES
+#usr/lib/locale/bg_BG.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bg_BG.utf8/LC_MONETARY
+#usr/lib/locale/bg_BG.utf8/LC_NAME
+#usr/lib/locale/bg_BG.utf8/LC_NUMERIC
+#usr/lib/locale/bg_BG.utf8/LC_PAPER
+#usr/lib/locale/bg_BG.utf8/LC_TELEPHONE
+#usr/lib/locale/bg_BG.utf8/LC_TIME
+#usr/lib/locale/bg_BG/LC_ADDRESS
+#usr/lib/locale/bg_BG/LC_COLLATE
+#usr/lib/locale/bg_BG/LC_CTYPE
+#usr/lib/locale/bg_BG/LC_IDENTIFICATION
+#usr/lib/locale/bg_BG/LC_MEASUREMENT
+#usr/lib/locale/bg_BG/LC_MESSAGES
+#usr/lib/locale/bg_BG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bg_BG/LC_MONETARY
+#usr/lib/locale/bg_BG/LC_NAME
+#usr/lib/locale/bg_BG/LC_NUMERIC
+#usr/lib/locale/bg_BG/LC_PAPER
+#usr/lib/locale/bg_BG/LC_TELEPHONE
+#usr/lib/locale/bg_BG/LC_TIME
+#usr/lib/locale/bn_BD
+#usr/lib/locale/bn_BD/LC_ADDRESS
+#usr/lib/locale/bn_BD/LC_COLLATE
+#usr/lib/locale/bn_BD/LC_CTYPE
+#usr/lib/locale/bn_BD/LC_IDENTIFICATION
+#usr/lib/locale/bn_BD/LC_MEASUREMENT
+#usr/lib/locale/bn_BD/LC_MESSAGES
+#usr/lib/locale/bn_BD/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bn_BD/LC_MONETARY
+#usr/lib/locale/bn_BD/LC_NAME
+#usr/lib/locale/bn_BD/LC_NUMERIC
+#usr/lib/locale/bn_BD/LC_PAPER
+#usr/lib/locale/bn_BD/LC_TELEPHONE
+#usr/lib/locale/bn_BD/LC_TIME
+#usr/lib/locale/bn_IN
+#usr/lib/locale/bn_IN/LC_ADDRESS
+#usr/lib/locale/bn_IN/LC_COLLATE
+#usr/lib/locale/bn_IN/LC_CTYPE
+#usr/lib/locale/bn_IN/LC_IDENTIFICATION
+#usr/lib/locale/bn_IN/LC_MEASUREMENT
+#usr/lib/locale/bn_IN/LC_MESSAGES
+#usr/lib/locale/bn_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bn_IN/LC_MONETARY
+#usr/lib/locale/bn_IN/LC_NAME
+#usr/lib/locale/bn_IN/LC_NUMERIC
+#usr/lib/locale/bn_IN/LC_PAPER
+#usr/lib/locale/bn_IN/LC_TELEPHONE
+#usr/lib/locale/bn_IN/LC_TIME
+#usr/lib/locale/bo_CN
+#usr/lib/locale/bo_CN/LC_ADDRESS
+#usr/lib/locale/bo_CN/LC_COLLATE
+#usr/lib/locale/bo_CN/LC_CTYPE
+#usr/lib/locale/bo_CN/LC_IDENTIFICATION
+#usr/lib/locale/bo_CN/LC_MEASUREMENT
+#usr/lib/locale/bo_CN/LC_MESSAGES
+#usr/lib/locale/bo_CN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bo_CN/LC_MONETARY
+#usr/lib/locale/bo_CN/LC_NAME
+#usr/lib/locale/bo_CN/LC_NUMERIC
+#usr/lib/locale/bo_CN/LC_PAPER
+#usr/lib/locale/bo_CN/LC_TELEPHONE
+#usr/lib/locale/bo_CN/LC_TIME
+#usr/lib/locale/bo_IN
+#usr/lib/locale/bo_IN/LC_ADDRESS
+#usr/lib/locale/bo_IN/LC_COLLATE
+#usr/lib/locale/bo_IN/LC_CTYPE
+#usr/lib/locale/bo_IN/LC_IDENTIFICATION
+#usr/lib/locale/bo_IN/LC_MEASUREMENT
+#usr/lib/locale/bo_IN/LC_MESSAGES
+#usr/lib/locale/bo_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bo_IN/LC_MONETARY
+#usr/lib/locale/bo_IN/LC_NAME
+#usr/lib/locale/bo_IN/LC_NUMERIC
+#usr/lib/locale/bo_IN/LC_PAPER
+#usr/lib/locale/bo_IN/LC_TELEPHONE
+#usr/lib/locale/bo_IN/LC_TIME
+#usr/lib/locale/br_FR
+#usr/lib/locale/br_FR.utf8
+#usr/lib/locale/br_FR.utf8/LC_ADDRESS
+#usr/lib/locale/br_FR.utf8/LC_COLLATE
+#usr/lib/locale/br_FR.utf8/LC_CTYPE
+#usr/lib/locale/br_FR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/br_FR.utf8/LC_MEASUREMENT
+#usr/lib/locale/br_FR.utf8/LC_MESSAGES
+#usr/lib/locale/br_FR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/br_FR.utf8/LC_MONETARY
+#usr/lib/locale/br_FR.utf8/LC_NAME
+#usr/lib/locale/br_FR.utf8/LC_NUMERIC
+#usr/lib/locale/br_FR.utf8/LC_PAPER
+#usr/lib/locale/br_FR.utf8/LC_TELEPHONE
+#usr/lib/locale/br_FR.utf8/LC_TIME
+#usr/lib/locale/br_FR/LC_ADDRESS
+#usr/lib/locale/br_FR/LC_COLLATE
+#usr/lib/locale/br_FR/LC_CTYPE
+#usr/lib/locale/br_FR/LC_IDENTIFICATION
+#usr/lib/locale/br_FR/LC_MEASUREMENT
+#usr/lib/locale/br_FR/LC_MESSAGES
+#usr/lib/locale/br_FR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/br_FR/LC_MONETARY
+#usr/lib/locale/br_FR/LC_NAME
+#usr/lib/locale/br_FR/LC_NUMERIC
+#usr/lib/locale/br_FR/LC_PAPER
+#usr/lib/locale/br_FR/LC_TELEPHONE
+#usr/lib/locale/br_FR/LC_TIME
+#usr/lib/locale/br_FR@euro
+#usr/lib/locale/br_FR@euro/LC_ADDRESS
+#usr/lib/locale/br_FR@euro/LC_COLLATE
+#usr/lib/locale/br_FR@euro/LC_CTYPE
+#usr/lib/locale/br_FR@euro/LC_IDENTIFICATION
+#usr/lib/locale/br_FR@euro/LC_MEASUREMENT
+#usr/lib/locale/br_FR@euro/LC_MESSAGES
+#usr/lib/locale/br_FR@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/br_FR@euro/LC_MONETARY
+#usr/lib/locale/br_FR@euro/LC_NAME
+#usr/lib/locale/br_FR@euro/LC_NUMERIC
+#usr/lib/locale/br_FR@euro/LC_PAPER
+#usr/lib/locale/br_FR@euro/LC_TELEPHONE
+#usr/lib/locale/br_FR@euro/LC_TIME
+#usr/lib/locale/bs_BA
+#usr/lib/locale/bs_BA.utf8
+#usr/lib/locale/bs_BA.utf8/LC_ADDRESS
+#usr/lib/locale/bs_BA.utf8/LC_COLLATE
+#usr/lib/locale/bs_BA.utf8/LC_CTYPE
+#usr/lib/locale/bs_BA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/bs_BA.utf8/LC_MEASUREMENT
+#usr/lib/locale/bs_BA.utf8/LC_MESSAGES
+#usr/lib/locale/bs_BA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bs_BA.utf8/LC_MONETARY
+#usr/lib/locale/bs_BA.utf8/LC_NAME
+#usr/lib/locale/bs_BA.utf8/LC_NUMERIC
+#usr/lib/locale/bs_BA.utf8/LC_PAPER
+#usr/lib/locale/bs_BA.utf8/LC_TELEPHONE
+#usr/lib/locale/bs_BA.utf8/LC_TIME
+#usr/lib/locale/bs_BA/LC_ADDRESS
+#usr/lib/locale/bs_BA/LC_COLLATE
+#usr/lib/locale/bs_BA/LC_CTYPE
+#usr/lib/locale/bs_BA/LC_IDENTIFICATION
+#usr/lib/locale/bs_BA/LC_MEASUREMENT
+#usr/lib/locale/bs_BA/LC_MESSAGES
+#usr/lib/locale/bs_BA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/bs_BA/LC_MONETARY
+#usr/lib/locale/bs_BA/LC_NAME
+#usr/lib/locale/bs_BA/LC_NUMERIC
+#usr/lib/locale/bs_BA/LC_PAPER
+#usr/lib/locale/bs_BA/LC_TELEPHONE
+#usr/lib/locale/bs_BA/LC_TIME
+#usr/lib/locale/byn_ER
+#usr/lib/locale/byn_ER/LC_ADDRESS
+#usr/lib/locale/byn_ER/LC_COLLATE
+#usr/lib/locale/byn_ER/LC_CTYPE
+#usr/lib/locale/byn_ER/LC_IDENTIFICATION
+#usr/lib/locale/byn_ER/LC_MEASUREMENT
+#usr/lib/locale/byn_ER/LC_MESSAGES
+#usr/lib/locale/byn_ER/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/byn_ER/LC_MONETARY
+#usr/lib/locale/byn_ER/LC_NAME
+#usr/lib/locale/byn_ER/LC_NUMERIC
+#usr/lib/locale/byn_ER/LC_PAPER
+#usr/lib/locale/byn_ER/LC_TELEPHONE
+#usr/lib/locale/byn_ER/LC_TIME
+#usr/lib/locale/ca_AD
+#usr/lib/locale/ca_AD.utf8
+#usr/lib/locale/ca_AD.utf8/LC_ADDRESS
+#usr/lib/locale/ca_AD.utf8/LC_COLLATE
+#usr/lib/locale/ca_AD.utf8/LC_CTYPE
+#usr/lib/locale/ca_AD.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ca_AD.utf8/LC_MEASUREMENT
+#usr/lib/locale/ca_AD.utf8/LC_MESSAGES
+#usr/lib/locale/ca_AD.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_AD.utf8/LC_MONETARY
+#usr/lib/locale/ca_AD.utf8/LC_NAME
+#usr/lib/locale/ca_AD.utf8/LC_NUMERIC
+#usr/lib/locale/ca_AD.utf8/LC_PAPER
+#usr/lib/locale/ca_AD.utf8/LC_TELEPHONE
+#usr/lib/locale/ca_AD.utf8/LC_TIME
+#usr/lib/locale/ca_AD/LC_ADDRESS
+#usr/lib/locale/ca_AD/LC_COLLATE
+#usr/lib/locale/ca_AD/LC_CTYPE
+#usr/lib/locale/ca_AD/LC_IDENTIFICATION
+#usr/lib/locale/ca_AD/LC_MEASUREMENT
+#usr/lib/locale/ca_AD/LC_MESSAGES
+#usr/lib/locale/ca_AD/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_AD/LC_MONETARY
+#usr/lib/locale/ca_AD/LC_NAME
+#usr/lib/locale/ca_AD/LC_NUMERIC
+#usr/lib/locale/ca_AD/LC_PAPER
+#usr/lib/locale/ca_AD/LC_TELEPHONE
+#usr/lib/locale/ca_AD/LC_TIME
+#usr/lib/locale/ca_ES
+#usr/lib/locale/ca_ES.utf8
+#usr/lib/locale/ca_ES.utf8/LC_ADDRESS
+#usr/lib/locale/ca_ES.utf8/LC_COLLATE
+#usr/lib/locale/ca_ES.utf8/LC_CTYPE
+#usr/lib/locale/ca_ES.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ca_ES.utf8/LC_MEASUREMENT
+#usr/lib/locale/ca_ES.utf8/LC_MESSAGES
+#usr/lib/locale/ca_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_ES.utf8/LC_MONETARY
+#usr/lib/locale/ca_ES.utf8/LC_NAME
+#usr/lib/locale/ca_ES.utf8/LC_NUMERIC
+#usr/lib/locale/ca_ES.utf8/LC_PAPER
+#usr/lib/locale/ca_ES.utf8/LC_TELEPHONE
+#usr/lib/locale/ca_ES.utf8/LC_TIME
+#usr/lib/locale/ca_ES/LC_ADDRESS
+#usr/lib/locale/ca_ES/LC_COLLATE
+#usr/lib/locale/ca_ES/LC_CTYPE
+#usr/lib/locale/ca_ES/LC_IDENTIFICATION
+#usr/lib/locale/ca_ES/LC_MEASUREMENT
+#usr/lib/locale/ca_ES/LC_MESSAGES
+#usr/lib/locale/ca_ES/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_ES/LC_MONETARY
+#usr/lib/locale/ca_ES/LC_NAME
+#usr/lib/locale/ca_ES/LC_NUMERIC
+#usr/lib/locale/ca_ES/LC_PAPER
+#usr/lib/locale/ca_ES/LC_TELEPHONE
+#usr/lib/locale/ca_ES/LC_TIME
+#usr/lib/locale/ca_ES@euro
+#usr/lib/locale/ca_ES@euro/LC_ADDRESS
+#usr/lib/locale/ca_ES@euro/LC_COLLATE
+#usr/lib/locale/ca_ES@euro/LC_CTYPE
+#usr/lib/locale/ca_ES@euro/LC_IDENTIFICATION
+#usr/lib/locale/ca_ES@euro/LC_MEASUREMENT
+#usr/lib/locale/ca_ES@euro/LC_MESSAGES
+#usr/lib/locale/ca_ES@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_ES@euro/LC_MONETARY
+#usr/lib/locale/ca_ES@euro/LC_NAME
+#usr/lib/locale/ca_ES@euro/LC_NUMERIC
+#usr/lib/locale/ca_ES@euro/LC_PAPER
+#usr/lib/locale/ca_ES@euro/LC_TELEPHONE
+#usr/lib/locale/ca_ES@euro/LC_TIME
+#usr/lib/locale/ca_FR
+#usr/lib/locale/ca_FR.utf8
+#usr/lib/locale/ca_FR.utf8/LC_ADDRESS
+#usr/lib/locale/ca_FR.utf8/LC_COLLATE
+#usr/lib/locale/ca_FR.utf8/LC_CTYPE
+#usr/lib/locale/ca_FR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ca_FR.utf8/LC_MEASUREMENT
+#usr/lib/locale/ca_FR.utf8/LC_MESSAGES
+#usr/lib/locale/ca_FR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_FR.utf8/LC_MONETARY
+#usr/lib/locale/ca_FR.utf8/LC_NAME
+#usr/lib/locale/ca_FR.utf8/LC_NUMERIC
+#usr/lib/locale/ca_FR.utf8/LC_PAPER
+#usr/lib/locale/ca_FR.utf8/LC_TELEPHONE
+#usr/lib/locale/ca_FR.utf8/LC_TIME
+#usr/lib/locale/ca_FR/LC_ADDRESS
+#usr/lib/locale/ca_FR/LC_COLLATE
+#usr/lib/locale/ca_FR/LC_CTYPE
+#usr/lib/locale/ca_FR/LC_IDENTIFICATION
+#usr/lib/locale/ca_FR/LC_MEASUREMENT
+#usr/lib/locale/ca_FR/LC_MESSAGES
+#usr/lib/locale/ca_FR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_FR/LC_MONETARY
+#usr/lib/locale/ca_FR/LC_NAME
+#usr/lib/locale/ca_FR/LC_NUMERIC
+#usr/lib/locale/ca_FR/LC_PAPER
+#usr/lib/locale/ca_FR/LC_TELEPHONE
+#usr/lib/locale/ca_FR/LC_TIME
+#usr/lib/locale/ca_IT
+#usr/lib/locale/ca_IT.utf8
+#usr/lib/locale/ca_IT.utf8/LC_ADDRESS
+#usr/lib/locale/ca_IT.utf8/LC_COLLATE
+#usr/lib/locale/ca_IT.utf8/LC_CTYPE
+#usr/lib/locale/ca_IT.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ca_IT.utf8/LC_MEASUREMENT
+#usr/lib/locale/ca_IT.utf8/LC_MESSAGES
+#usr/lib/locale/ca_IT.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_IT.utf8/LC_MONETARY
+#usr/lib/locale/ca_IT.utf8/LC_NAME
+#usr/lib/locale/ca_IT.utf8/LC_NUMERIC
+#usr/lib/locale/ca_IT.utf8/LC_PAPER
+#usr/lib/locale/ca_IT.utf8/LC_TELEPHONE
+#usr/lib/locale/ca_IT.utf8/LC_TIME
+#usr/lib/locale/ca_IT/LC_ADDRESS
+#usr/lib/locale/ca_IT/LC_COLLATE
+#usr/lib/locale/ca_IT/LC_CTYPE
+#usr/lib/locale/ca_IT/LC_IDENTIFICATION
+#usr/lib/locale/ca_IT/LC_MEASUREMENT
+#usr/lib/locale/ca_IT/LC_MESSAGES
+#usr/lib/locale/ca_IT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ca_IT/LC_MONETARY
+#usr/lib/locale/ca_IT/LC_NAME
+#usr/lib/locale/ca_IT/LC_NUMERIC
+#usr/lib/locale/ca_IT/LC_PAPER
+#usr/lib/locale/ca_IT/LC_TELEPHONE
+#usr/lib/locale/ca_IT/LC_TIME
+#usr/lib/locale/crh_UA
+#usr/lib/locale/crh_UA/LC_ADDRESS
+#usr/lib/locale/crh_UA/LC_COLLATE
+#usr/lib/locale/crh_UA/LC_CTYPE
+#usr/lib/locale/crh_UA/LC_IDENTIFICATION
+#usr/lib/locale/crh_UA/LC_MEASUREMENT
+#usr/lib/locale/crh_UA/LC_MESSAGES
+#usr/lib/locale/crh_UA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/crh_UA/LC_MONETARY
+#usr/lib/locale/crh_UA/LC_NAME
+#usr/lib/locale/crh_UA/LC_NUMERIC
+#usr/lib/locale/crh_UA/LC_PAPER
+#usr/lib/locale/crh_UA/LC_TELEPHONE
+#usr/lib/locale/crh_UA/LC_TIME
+#usr/lib/locale/cs_CZ
+#usr/lib/locale/cs_CZ.utf8
+#usr/lib/locale/cs_CZ.utf8/LC_ADDRESS
+#usr/lib/locale/cs_CZ.utf8/LC_COLLATE
+#usr/lib/locale/cs_CZ.utf8/LC_CTYPE
+#usr/lib/locale/cs_CZ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/cs_CZ.utf8/LC_MEASUREMENT
+#usr/lib/locale/cs_CZ.utf8/LC_MESSAGES
+#usr/lib/locale/cs_CZ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/cs_CZ.utf8/LC_MONETARY
+#usr/lib/locale/cs_CZ.utf8/LC_NAME
+#usr/lib/locale/cs_CZ.utf8/LC_NUMERIC
+#usr/lib/locale/cs_CZ.utf8/LC_PAPER
+#usr/lib/locale/cs_CZ.utf8/LC_TELEPHONE
+#usr/lib/locale/cs_CZ.utf8/LC_TIME
+#usr/lib/locale/cs_CZ/LC_ADDRESS
+#usr/lib/locale/cs_CZ/LC_COLLATE
+#usr/lib/locale/cs_CZ/LC_CTYPE
+#usr/lib/locale/cs_CZ/LC_IDENTIFICATION
+#usr/lib/locale/cs_CZ/LC_MEASUREMENT
+#usr/lib/locale/cs_CZ/LC_MESSAGES
+#usr/lib/locale/cs_CZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/cs_CZ/LC_MONETARY
+#usr/lib/locale/cs_CZ/LC_NAME
+#usr/lib/locale/cs_CZ/LC_NUMERIC
+#usr/lib/locale/cs_CZ/LC_PAPER
+#usr/lib/locale/cs_CZ/LC_TELEPHONE
+#usr/lib/locale/cs_CZ/LC_TIME
+#usr/lib/locale/csb_PL
+#usr/lib/locale/csb_PL/LC_ADDRESS
+#usr/lib/locale/csb_PL/LC_COLLATE
+#usr/lib/locale/csb_PL/LC_CTYPE
+#usr/lib/locale/csb_PL/LC_IDENTIFICATION
+#usr/lib/locale/csb_PL/LC_MEASUREMENT
+#usr/lib/locale/csb_PL/LC_MESSAGES
+#usr/lib/locale/csb_PL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/csb_PL/LC_MONETARY
+#usr/lib/locale/csb_PL/LC_NAME
+#usr/lib/locale/csb_PL/LC_NUMERIC
+#usr/lib/locale/csb_PL/LC_PAPER
+#usr/lib/locale/csb_PL/LC_TELEPHONE
+#usr/lib/locale/csb_PL/LC_TIME
+#usr/lib/locale/cv_RU
+#usr/lib/locale/cv_RU/LC_ADDRESS
+#usr/lib/locale/cv_RU/LC_COLLATE
+#usr/lib/locale/cv_RU/LC_CTYPE
+#usr/lib/locale/cv_RU/LC_IDENTIFICATION
+#usr/lib/locale/cv_RU/LC_MEASUREMENT
+#usr/lib/locale/cv_RU/LC_MESSAGES
+#usr/lib/locale/cv_RU/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/cv_RU/LC_MONETARY
+#usr/lib/locale/cv_RU/LC_NAME
+#usr/lib/locale/cv_RU/LC_NUMERIC
+#usr/lib/locale/cv_RU/LC_PAPER
+#usr/lib/locale/cv_RU/LC_TELEPHONE
+#usr/lib/locale/cv_RU/LC_TIME
+#usr/lib/locale/cy_GB
+#usr/lib/locale/cy_GB.utf8
+#usr/lib/locale/cy_GB.utf8/LC_ADDRESS
+#usr/lib/locale/cy_GB.utf8/LC_COLLATE
+#usr/lib/locale/cy_GB.utf8/LC_CTYPE
+#usr/lib/locale/cy_GB.utf8/LC_IDENTIFICATION
+#usr/lib/locale/cy_GB.utf8/LC_MEASUREMENT
+#usr/lib/locale/cy_GB.utf8/LC_MESSAGES
+#usr/lib/locale/cy_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/cy_GB.utf8/LC_MONETARY
+#usr/lib/locale/cy_GB.utf8/LC_NAME
+#usr/lib/locale/cy_GB.utf8/LC_NUMERIC
+#usr/lib/locale/cy_GB.utf8/LC_PAPER
+#usr/lib/locale/cy_GB.utf8/LC_TELEPHONE
+#usr/lib/locale/cy_GB.utf8/LC_TIME
+#usr/lib/locale/cy_GB/LC_ADDRESS
+#usr/lib/locale/cy_GB/LC_COLLATE
+#usr/lib/locale/cy_GB/LC_CTYPE
+#usr/lib/locale/cy_GB/LC_IDENTIFICATION
+#usr/lib/locale/cy_GB/LC_MEASUREMENT
+#usr/lib/locale/cy_GB/LC_MESSAGES
+#usr/lib/locale/cy_GB/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/cy_GB/LC_MONETARY
+#usr/lib/locale/cy_GB/LC_NAME
+#usr/lib/locale/cy_GB/LC_NUMERIC
+#usr/lib/locale/cy_GB/LC_PAPER
+#usr/lib/locale/cy_GB/LC_TELEPHONE
+#usr/lib/locale/cy_GB/LC_TIME
+#usr/lib/locale/da_DK
+#usr/lib/locale/da_DK.iso885915
+#usr/lib/locale/da_DK.iso885915/LC_ADDRESS
+#usr/lib/locale/da_DK.iso885915/LC_COLLATE
+#usr/lib/locale/da_DK.iso885915/LC_CTYPE
+#usr/lib/locale/da_DK.iso885915/LC_IDENTIFICATION
+#usr/lib/locale/da_DK.iso885915/LC_MEASUREMENT
+#usr/lib/locale/da_DK.iso885915/LC_MESSAGES
+#usr/lib/locale/da_DK.iso885915/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/da_DK.iso885915/LC_MONETARY
+#usr/lib/locale/da_DK.iso885915/LC_NAME
+#usr/lib/locale/da_DK.iso885915/LC_NUMERIC
+#usr/lib/locale/da_DK.iso885915/LC_PAPER
+#usr/lib/locale/da_DK.iso885915/LC_TELEPHONE
+#usr/lib/locale/da_DK.iso885915/LC_TIME
+#usr/lib/locale/da_DK.utf8
+#usr/lib/locale/da_DK.utf8/LC_ADDRESS
+#usr/lib/locale/da_DK.utf8/LC_COLLATE
+#usr/lib/locale/da_DK.utf8/LC_CTYPE
+#usr/lib/locale/da_DK.utf8/LC_IDENTIFICATION
+#usr/lib/locale/da_DK.utf8/LC_MEASUREMENT
+#usr/lib/locale/da_DK.utf8/LC_MESSAGES
+#usr/lib/locale/da_DK.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/da_DK.utf8/LC_MONETARY
+#usr/lib/locale/da_DK.utf8/LC_NAME
+#usr/lib/locale/da_DK.utf8/LC_NUMERIC
+#usr/lib/locale/da_DK.utf8/LC_PAPER
+#usr/lib/locale/da_DK.utf8/LC_TELEPHONE
+#usr/lib/locale/da_DK.utf8/LC_TIME
+#usr/lib/locale/da_DK/LC_ADDRESS
+#usr/lib/locale/da_DK/LC_COLLATE
+#usr/lib/locale/da_DK/LC_CTYPE
+#usr/lib/locale/da_DK/LC_IDENTIFICATION
+#usr/lib/locale/da_DK/LC_MEASUREMENT
+#usr/lib/locale/da_DK/LC_MESSAGES
+#usr/lib/locale/da_DK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/da_DK/LC_MONETARY
+#usr/lib/locale/da_DK/LC_NAME
+#usr/lib/locale/da_DK/LC_NUMERIC
+#usr/lib/locale/da_DK/LC_PAPER
+#usr/lib/locale/da_DK/LC_TELEPHONE
+#usr/lib/locale/da_DK/LC_TIME
+#usr/lib/locale/de_AT
+#usr/lib/locale/de_AT.utf8
+#usr/lib/locale/de_AT.utf8/LC_ADDRESS
+#usr/lib/locale/de_AT.utf8/LC_COLLATE
+#usr/lib/locale/de_AT.utf8/LC_CTYPE
+#usr/lib/locale/de_AT.utf8/LC_IDENTIFICATION
+#usr/lib/locale/de_AT.utf8/LC_MEASUREMENT
+#usr/lib/locale/de_AT.utf8/LC_MESSAGES
+#usr/lib/locale/de_AT.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_AT.utf8/LC_MONETARY
+#usr/lib/locale/de_AT.utf8/LC_NAME
+#usr/lib/locale/de_AT.utf8/LC_NUMERIC
+#usr/lib/locale/de_AT.utf8/LC_PAPER
+#usr/lib/locale/de_AT.utf8/LC_TELEPHONE
+#usr/lib/locale/de_AT.utf8/LC_TIME
+#usr/lib/locale/de_AT/LC_ADDRESS
+#usr/lib/locale/de_AT/LC_COLLATE
+#usr/lib/locale/de_AT/LC_CTYPE
+#usr/lib/locale/de_AT/LC_IDENTIFICATION
+#usr/lib/locale/de_AT/LC_MEASUREMENT
+#usr/lib/locale/de_AT/LC_MESSAGES
+#usr/lib/locale/de_AT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_AT/LC_MONETARY
+#usr/lib/locale/de_AT/LC_NAME
+#usr/lib/locale/de_AT/LC_NUMERIC
+#usr/lib/locale/de_AT/LC_PAPER
+#usr/lib/locale/de_AT/LC_TELEPHONE
+#usr/lib/locale/de_AT/LC_TIME
+#usr/lib/locale/de_AT@euro
+#usr/lib/locale/de_AT@euro/LC_ADDRESS
+#usr/lib/locale/de_AT@euro/LC_COLLATE
+#usr/lib/locale/de_AT@euro/LC_CTYPE
+#usr/lib/locale/de_AT@euro/LC_IDENTIFICATION
+#usr/lib/locale/de_AT@euro/LC_MEASUREMENT
+#usr/lib/locale/de_AT@euro/LC_MESSAGES
+#usr/lib/locale/de_AT@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_AT@euro/LC_MONETARY
+#usr/lib/locale/de_AT@euro/LC_NAME
+#usr/lib/locale/de_AT@euro/LC_NUMERIC
+#usr/lib/locale/de_AT@euro/LC_PAPER
+#usr/lib/locale/de_AT@euro/LC_TELEPHONE
+#usr/lib/locale/de_AT@euro/LC_TIME
+#usr/lib/locale/de_BE
+#usr/lib/locale/de_BE.utf8
+#usr/lib/locale/de_BE.utf8/LC_ADDRESS
+#usr/lib/locale/de_BE.utf8/LC_COLLATE
+#usr/lib/locale/de_BE.utf8/LC_CTYPE
+#usr/lib/locale/de_BE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/de_BE.utf8/LC_MEASUREMENT
+#usr/lib/locale/de_BE.utf8/LC_MESSAGES
+#usr/lib/locale/de_BE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_BE.utf8/LC_MONETARY
+#usr/lib/locale/de_BE.utf8/LC_NAME
+#usr/lib/locale/de_BE.utf8/LC_NUMERIC
+#usr/lib/locale/de_BE.utf8/LC_PAPER
+#usr/lib/locale/de_BE.utf8/LC_TELEPHONE
+#usr/lib/locale/de_BE.utf8/LC_TIME
+#usr/lib/locale/de_BE/LC_ADDRESS
+#usr/lib/locale/de_BE/LC_COLLATE
+#usr/lib/locale/de_BE/LC_CTYPE
+#usr/lib/locale/de_BE/LC_IDENTIFICATION
+#usr/lib/locale/de_BE/LC_MEASUREMENT
+#usr/lib/locale/de_BE/LC_MESSAGES
+#usr/lib/locale/de_BE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_BE/LC_MONETARY
+#usr/lib/locale/de_BE/LC_NAME
+#usr/lib/locale/de_BE/LC_NUMERIC
+#usr/lib/locale/de_BE/LC_PAPER
+#usr/lib/locale/de_BE/LC_TELEPHONE
+#usr/lib/locale/de_BE/LC_TIME
+#usr/lib/locale/de_BE@euro
+#usr/lib/locale/de_BE@euro/LC_ADDRESS
+#usr/lib/locale/de_BE@euro/LC_COLLATE
+#usr/lib/locale/de_BE@euro/LC_CTYPE
+#usr/lib/locale/de_BE@euro/LC_IDENTIFICATION
+#usr/lib/locale/de_BE@euro/LC_MEASUREMENT
+#usr/lib/locale/de_BE@euro/LC_MESSAGES
+#usr/lib/locale/de_BE@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_BE@euro/LC_MONETARY
+#usr/lib/locale/de_BE@euro/LC_NAME
+#usr/lib/locale/de_BE@euro/LC_NUMERIC
+#usr/lib/locale/de_BE@euro/LC_PAPER
+#usr/lib/locale/de_BE@euro/LC_TELEPHONE
+#usr/lib/locale/de_BE@euro/LC_TIME
+#usr/lib/locale/de_CH
+#usr/lib/locale/de_CH.utf8
+#usr/lib/locale/de_CH.utf8/LC_ADDRESS
+#usr/lib/locale/de_CH.utf8/LC_COLLATE
+#usr/lib/locale/de_CH.utf8/LC_CTYPE
+#usr/lib/locale/de_CH.utf8/LC_IDENTIFICATION
+#usr/lib/locale/de_CH.utf8/LC_MEASUREMENT
+#usr/lib/locale/de_CH.utf8/LC_MESSAGES
+#usr/lib/locale/de_CH.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_CH.utf8/LC_MONETARY
+#usr/lib/locale/de_CH.utf8/LC_NAME
+#usr/lib/locale/de_CH.utf8/LC_NUMERIC
+#usr/lib/locale/de_CH.utf8/LC_PAPER
+#usr/lib/locale/de_CH.utf8/LC_TELEPHONE
+#usr/lib/locale/de_CH.utf8/LC_TIME
+#usr/lib/locale/de_CH/LC_ADDRESS
+#usr/lib/locale/de_CH/LC_COLLATE
+#usr/lib/locale/de_CH/LC_CTYPE
+#usr/lib/locale/de_CH/LC_IDENTIFICATION
+#usr/lib/locale/de_CH/LC_MEASUREMENT
+#usr/lib/locale/de_CH/LC_MESSAGES
+#usr/lib/locale/de_CH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_CH/LC_MONETARY
+#usr/lib/locale/de_CH/LC_NAME
+#usr/lib/locale/de_CH/LC_NUMERIC
+#usr/lib/locale/de_CH/LC_PAPER
+#usr/lib/locale/de_CH/LC_TELEPHONE
+#usr/lib/locale/de_CH/LC_TIME
+#usr/lib/locale/de_DE
+#usr/lib/locale/de_DE.utf8
+#usr/lib/locale/de_DE.utf8/LC_ADDRESS
+#usr/lib/locale/de_DE.utf8/LC_COLLATE
+#usr/lib/locale/de_DE.utf8/LC_CTYPE
+#usr/lib/locale/de_DE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/de_DE.utf8/LC_MEASUREMENT
+#usr/lib/locale/de_DE.utf8/LC_MESSAGES
+#usr/lib/locale/de_DE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_DE.utf8/LC_MONETARY
+#usr/lib/locale/de_DE.utf8/LC_NAME
+#usr/lib/locale/de_DE.utf8/LC_NUMERIC
+#usr/lib/locale/de_DE.utf8/LC_PAPER
+#usr/lib/locale/de_DE.utf8/LC_TELEPHONE
+#usr/lib/locale/de_DE.utf8/LC_TIME
+#usr/lib/locale/de_DE/LC_ADDRESS
+#usr/lib/locale/de_DE/LC_COLLATE
+#usr/lib/locale/de_DE/LC_CTYPE
+#usr/lib/locale/de_DE/LC_IDENTIFICATION
+#usr/lib/locale/de_DE/LC_MEASUREMENT
+#usr/lib/locale/de_DE/LC_MESSAGES
+#usr/lib/locale/de_DE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_DE/LC_MONETARY
+#usr/lib/locale/de_DE/LC_NAME
+#usr/lib/locale/de_DE/LC_NUMERIC
+#usr/lib/locale/de_DE/LC_PAPER
+#usr/lib/locale/de_DE/LC_TELEPHONE
+#usr/lib/locale/de_DE/LC_TIME
+#usr/lib/locale/de_DE@euro
+#usr/lib/locale/de_DE@euro/LC_ADDRESS
+#usr/lib/locale/de_DE@euro/LC_COLLATE
+#usr/lib/locale/de_DE@euro/LC_CTYPE
+#usr/lib/locale/de_DE@euro/LC_IDENTIFICATION
+#usr/lib/locale/de_DE@euro/LC_MEASUREMENT
+#usr/lib/locale/de_DE@euro/LC_MESSAGES
+#usr/lib/locale/de_DE@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_DE@euro/LC_MONETARY
+#usr/lib/locale/de_DE@euro/LC_NAME
+#usr/lib/locale/de_DE@euro/LC_NUMERIC
+#usr/lib/locale/de_DE@euro/LC_PAPER
+#usr/lib/locale/de_DE@euro/LC_TELEPHONE
+#usr/lib/locale/de_DE@euro/LC_TIME
+#usr/lib/locale/de_LU
+#usr/lib/locale/de_LU.utf8
+#usr/lib/locale/de_LU.utf8/LC_ADDRESS
+#usr/lib/locale/de_LU.utf8/LC_COLLATE
+#usr/lib/locale/de_LU.utf8/LC_CTYPE
+#usr/lib/locale/de_LU.utf8/LC_IDENTIFICATION
+#usr/lib/locale/de_LU.utf8/LC_MEASUREMENT
+#usr/lib/locale/de_LU.utf8/LC_MESSAGES
+#usr/lib/locale/de_LU.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_LU.utf8/LC_MONETARY
+#usr/lib/locale/de_LU.utf8/LC_NAME
+#usr/lib/locale/de_LU.utf8/LC_NUMERIC
+#usr/lib/locale/de_LU.utf8/LC_PAPER
+#usr/lib/locale/de_LU.utf8/LC_TELEPHONE
+#usr/lib/locale/de_LU.utf8/LC_TIME
+#usr/lib/locale/de_LU/LC_ADDRESS
+#usr/lib/locale/de_LU/LC_COLLATE
+#usr/lib/locale/de_LU/LC_CTYPE
+#usr/lib/locale/de_LU/LC_IDENTIFICATION
+#usr/lib/locale/de_LU/LC_MEASUREMENT
+#usr/lib/locale/de_LU/LC_MESSAGES
+#usr/lib/locale/de_LU/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_LU/LC_MONETARY
+#usr/lib/locale/de_LU/LC_NAME
+#usr/lib/locale/de_LU/LC_NUMERIC
+#usr/lib/locale/de_LU/LC_PAPER
+#usr/lib/locale/de_LU/LC_TELEPHONE
+#usr/lib/locale/de_LU/LC_TIME
+#usr/lib/locale/de_LU@euro
+#usr/lib/locale/de_LU@euro/LC_ADDRESS
+#usr/lib/locale/de_LU@euro/LC_COLLATE
+#usr/lib/locale/de_LU@euro/LC_CTYPE
+#usr/lib/locale/de_LU@euro/LC_IDENTIFICATION
+#usr/lib/locale/de_LU@euro/LC_MEASUREMENT
+#usr/lib/locale/de_LU@euro/LC_MESSAGES
+#usr/lib/locale/de_LU@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/de_LU@euro/LC_MONETARY
+#usr/lib/locale/de_LU@euro/LC_NAME
+#usr/lib/locale/de_LU@euro/LC_NUMERIC
+#usr/lib/locale/de_LU@euro/LC_PAPER
+#usr/lib/locale/de_LU@euro/LC_TELEPHONE
+#usr/lib/locale/de_LU@euro/LC_TIME
+#usr/lib/locale/dv_MV
+#usr/lib/locale/dv_MV/LC_ADDRESS
+#usr/lib/locale/dv_MV/LC_COLLATE
+#usr/lib/locale/dv_MV/LC_CTYPE
+#usr/lib/locale/dv_MV/LC_IDENTIFICATION
+#usr/lib/locale/dv_MV/LC_MEASUREMENT
+#usr/lib/locale/dv_MV/LC_MESSAGES
+#usr/lib/locale/dv_MV/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/dv_MV/LC_MONETARY
+#usr/lib/locale/dv_MV/LC_NAME
+#usr/lib/locale/dv_MV/LC_NUMERIC
+#usr/lib/locale/dv_MV/LC_PAPER
+#usr/lib/locale/dv_MV/LC_TELEPHONE
+#usr/lib/locale/dv_MV/LC_TIME
+#usr/lib/locale/dz_BT
+#usr/lib/locale/dz_BT/LC_ADDRESS
+#usr/lib/locale/dz_BT/LC_COLLATE
+#usr/lib/locale/dz_BT/LC_CTYPE
+#usr/lib/locale/dz_BT/LC_IDENTIFICATION
+#usr/lib/locale/dz_BT/LC_MEASUREMENT
+#usr/lib/locale/dz_BT/LC_MESSAGES
+#usr/lib/locale/dz_BT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/dz_BT/LC_MONETARY
+#usr/lib/locale/dz_BT/LC_NAME
+#usr/lib/locale/dz_BT/LC_NUMERIC
+#usr/lib/locale/dz_BT/LC_PAPER
+#usr/lib/locale/dz_BT/LC_TELEPHONE
+#usr/lib/locale/dz_BT/LC_TIME
+#usr/lib/locale/el_CY
+#usr/lib/locale/el_CY.utf8
+#usr/lib/locale/el_CY.utf8/LC_ADDRESS
+#usr/lib/locale/el_CY.utf8/LC_COLLATE
+#usr/lib/locale/el_CY.utf8/LC_CTYPE
+#usr/lib/locale/el_CY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/el_CY.utf8/LC_MEASUREMENT
+#usr/lib/locale/el_CY.utf8/LC_MESSAGES
+#usr/lib/locale/el_CY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/el_CY.utf8/LC_MONETARY
+#usr/lib/locale/el_CY.utf8/LC_NAME
+#usr/lib/locale/el_CY.utf8/LC_NUMERIC
+#usr/lib/locale/el_CY.utf8/LC_PAPER
+#usr/lib/locale/el_CY.utf8/LC_TELEPHONE
+#usr/lib/locale/el_CY.utf8/LC_TIME
+#usr/lib/locale/el_CY/LC_ADDRESS
+#usr/lib/locale/el_CY/LC_COLLATE
+#usr/lib/locale/el_CY/LC_CTYPE
+#usr/lib/locale/el_CY/LC_IDENTIFICATION
+#usr/lib/locale/el_CY/LC_MEASUREMENT
+#usr/lib/locale/el_CY/LC_MESSAGES
+#usr/lib/locale/el_CY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/el_CY/LC_MONETARY
+#usr/lib/locale/el_CY/LC_NAME
+#usr/lib/locale/el_CY/LC_NUMERIC
+#usr/lib/locale/el_CY/LC_PAPER
+#usr/lib/locale/el_CY/LC_TELEPHONE
+#usr/lib/locale/el_CY/LC_TIME
+#usr/lib/locale/el_GR
+#usr/lib/locale/el_GR.utf8
+#usr/lib/locale/el_GR.utf8/LC_ADDRESS
+#usr/lib/locale/el_GR.utf8/LC_COLLATE
+#usr/lib/locale/el_GR.utf8/LC_CTYPE
+#usr/lib/locale/el_GR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/el_GR.utf8/LC_MEASUREMENT
+#usr/lib/locale/el_GR.utf8/LC_MESSAGES
+#usr/lib/locale/el_GR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/el_GR.utf8/LC_MONETARY
+#usr/lib/locale/el_GR.utf8/LC_NAME
+#usr/lib/locale/el_GR.utf8/LC_NUMERIC
+#usr/lib/locale/el_GR.utf8/LC_PAPER
+#usr/lib/locale/el_GR.utf8/LC_TELEPHONE
+#usr/lib/locale/el_GR.utf8/LC_TIME
+#usr/lib/locale/el_GR/LC_ADDRESS
+#usr/lib/locale/el_GR/LC_COLLATE
+#usr/lib/locale/el_GR/LC_CTYPE
+#usr/lib/locale/el_GR/LC_IDENTIFICATION
+#usr/lib/locale/el_GR/LC_MEASUREMENT
+#usr/lib/locale/el_GR/LC_MESSAGES
+#usr/lib/locale/el_GR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/el_GR/LC_MONETARY
+#usr/lib/locale/el_GR/LC_NAME
+#usr/lib/locale/el_GR/LC_NUMERIC
+#usr/lib/locale/el_GR/LC_PAPER
+#usr/lib/locale/el_GR/LC_TELEPHONE
+#usr/lib/locale/el_GR/LC_TIME
+#usr/lib/locale/en_AG
+#usr/lib/locale/en_AG/LC_ADDRESS
+#usr/lib/locale/en_AG/LC_COLLATE
+#usr/lib/locale/en_AG/LC_CTYPE
+#usr/lib/locale/en_AG/LC_IDENTIFICATION
+#usr/lib/locale/en_AG/LC_MEASUREMENT
+#usr/lib/locale/en_AG/LC_MESSAGES
+#usr/lib/locale/en_AG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_AG/LC_MONETARY
+#usr/lib/locale/en_AG/LC_NAME
+#usr/lib/locale/en_AG/LC_NUMERIC
+#usr/lib/locale/en_AG/LC_PAPER
+#usr/lib/locale/en_AG/LC_TELEPHONE
+#usr/lib/locale/en_AG/LC_TIME
+#usr/lib/locale/en_AU
+#usr/lib/locale/en_AU.utf8
+#usr/lib/locale/en_AU.utf8/LC_ADDRESS
+#usr/lib/locale/en_AU.utf8/LC_COLLATE
+#usr/lib/locale/en_AU.utf8/LC_CTYPE
+#usr/lib/locale/en_AU.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_AU.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_AU.utf8/LC_MESSAGES
+#usr/lib/locale/en_AU.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_AU.utf8/LC_MONETARY
+#usr/lib/locale/en_AU.utf8/LC_NAME
+#usr/lib/locale/en_AU.utf8/LC_NUMERIC
+#usr/lib/locale/en_AU.utf8/LC_PAPER
+#usr/lib/locale/en_AU.utf8/LC_TELEPHONE
+#usr/lib/locale/en_AU.utf8/LC_TIME
+#usr/lib/locale/en_AU/LC_ADDRESS
+#usr/lib/locale/en_AU/LC_COLLATE
+#usr/lib/locale/en_AU/LC_CTYPE
+#usr/lib/locale/en_AU/LC_IDENTIFICATION
+#usr/lib/locale/en_AU/LC_MEASUREMENT
+#usr/lib/locale/en_AU/LC_MESSAGES
+#usr/lib/locale/en_AU/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_AU/LC_MONETARY
+#usr/lib/locale/en_AU/LC_NAME
+#usr/lib/locale/en_AU/LC_NUMERIC
+#usr/lib/locale/en_AU/LC_PAPER
+#usr/lib/locale/en_AU/LC_TELEPHONE
+#usr/lib/locale/en_AU/LC_TIME
+#usr/lib/locale/en_BW
+#usr/lib/locale/en_BW.utf8
+#usr/lib/locale/en_BW.utf8/LC_ADDRESS
+#usr/lib/locale/en_BW.utf8/LC_COLLATE
+#usr/lib/locale/en_BW.utf8/LC_CTYPE
+#usr/lib/locale/en_BW.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_BW.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_BW.utf8/LC_MESSAGES
+#usr/lib/locale/en_BW.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_BW.utf8/LC_MONETARY
+#usr/lib/locale/en_BW.utf8/LC_NAME
+#usr/lib/locale/en_BW.utf8/LC_NUMERIC
+#usr/lib/locale/en_BW.utf8/LC_PAPER
+#usr/lib/locale/en_BW.utf8/LC_TELEPHONE
+#usr/lib/locale/en_BW.utf8/LC_TIME
+#usr/lib/locale/en_BW/LC_ADDRESS
+#usr/lib/locale/en_BW/LC_COLLATE
+#usr/lib/locale/en_BW/LC_CTYPE
+#usr/lib/locale/en_BW/LC_IDENTIFICATION
+#usr/lib/locale/en_BW/LC_MEASUREMENT
+#usr/lib/locale/en_BW/LC_MESSAGES
+#usr/lib/locale/en_BW/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_BW/LC_MONETARY
+#usr/lib/locale/en_BW/LC_NAME
+#usr/lib/locale/en_BW/LC_NUMERIC
+#usr/lib/locale/en_BW/LC_PAPER
+#usr/lib/locale/en_BW/LC_TELEPHONE
+#usr/lib/locale/en_BW/LC_TIME
+#usr/lib/locale/en_CA
+#usr/lib/locale/en_CA.utf8
+#usr/lib/locale/en_CA.utf8/LC_ADDRESS
+#usr/lib/locale/en_CA.utf8/LC_COLLATE
+#usr/lib/locale/en_CA.utf8/LC_CTYPE
+#usr/lib/locale/en_CA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_CA.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_CA.utf8/LC_MESSAGES
+#usr/lib/locale/en_CA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_CA.utf8/LC_MONETARY
+#usr/lib/locale/en_CA.utf8/LC_NAME
+#usr/lib/locale/en_CA.utf8/LC_NUMERIC
+#usr/lib/locale/en_CA.utf8/LC_PAPER
+#usr/lib/locale/en_CA.utf8/LC_TELEPHONE
+#usr/lib/locale/en_CA.utf8/LC_TIME
+#usr/lib/locale/en_CA/LC_ADDRESS
+#usr/lib/locale/en_CA/LC_COLLATE
+#usr/lib/locale/en_CA/LC_CTYPE
+#usr/lib/locale/en_CA/LC_IDENTIFICATION
+#usr/lib/locale/en_CA/LC_MEASUREMENT
+#usr/lib/locale/en_CA/LC_MESSAGES
+#usr/lib/locale/en_CA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_CA/LC_MONETARY
+#usr/lib/locale/en_CA/LC_NAME
+#usr/lib/locale/en_CA/LC_NUMERIC
+#usr/lib/locale/en_CA/LC_PAPER
+#usr/lib/locale/en_CA/LC_TELEPHONE
+#usr/lib/locale/en_CA/LC_TIME
+#usr/lib/locale/en_DK
+#usr/lib/locale/en_DK.utf8
+#usr/lib/locale/en_DK.utf8/LC_ADDRESS
+#usr/lib/locale/en_DK.utf8/LC_COLLATE
+#usr/lib/locale/en_DK.utf8/LC_CTYPE
+#usr/lib/locale/en_DK.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_DK.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_DK.utf8/LC_MESSAGES
+#usr/lib/locale/en_DK.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_DK.utf8/LC_MONETARY
+#usr/lib/locale/en_DK.utf8/LC_NAME
+#usr/lib/locale/en_DK.utf8/LC_NUMERIC
+#usr/lib/locale/en_DK.utf8/LC_PAPER
+#usr/lib/locale/en_DK.utf8/LC_TELEPHONE
+#usr/lib/locale/en_DK.utf8/LC_TIME
+#usr/lib/locale/en_DK/LC_ADDRESS
+#usr/lib/locale/en_DK/LC_COLLATE
+#usr/lib/locale/en_DK/LC_CTYPE
+#usr/lib/locale/en_DK/LC_IDENTIFICATION
+#usr/lib/locale/en_DK/LC_MEASUREMENT
+#usr/lib/locale/en_DK/LC_MESSAGES
+#usr/lib/locale/en_DK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_DK/LC_MONETARY
+#usr/lib/locale/en_DK/LC_NAME
+#usr/lib/locale/en_DK/LC_NUMERIC
+#usr/lib/locale/en_DK/LC_PAPER
+#usr/lib/locale/en_DK/LC_TELEPHONE
+#usr/lib/locale/en_DK/LC_TIME
+#usr/lib/locale/en_GB
+#usr/lib/locale/en_GB.iso885915
+#usr/lib/locale/en_GB.iso885915/LC_ADDRESS
+#usr/lib/locale/en_GB.iso885915/LC_COLLATE
+#usr/lib/locale/en_GB.iso885915/LC_CTYPE
+#usr/lib/locale/en_GB.iso885915/LC_IDENTIFICATION
+#usr/lib/locale/en_GB.iso885915/LC_MEASUREMENT
+#usr/lib/locale/en_GB.iso885915/LC_MESSAGES
+#usr/lib/locale/en_GB.iso885915/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_GB.iso885915/LC_MONETARY
+#usr/lib/locale/en_GB.iso885915/LC_NAME
+#usr/lib/locale/en_GB.iso885915/LC_NUMERIC
+#usr/lib/locale/en_GB.iso885915/LC_PAPER
+#usr/lib/locale/en_GB.iso885915/LC_TELEPHONE
+#usr/lib/locale/en_GB.iso885915/LC_TIME
+#usr/lib/locale/en_GB.utf8
+#usr/lib/locale/en_GB.utf8/LC_ADDRESS
+#usr/lib/locale/en_GB.utf8/LC_COLLATE
+#usr/lib/locale/en_GB.utf8/LC_CTYPE
+#usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_GB.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_GB.utf8/LC_MESSAGES
+#usr/lib/locale/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_GB.utf8/LC_MONETARY
+#usr/lib/locale/en_GB.utf8/LC_NAME
+#usr/lib/locale/en_GB.utf8/LC_NUMERIC
+#usr/lib/locale/en_GB.utf8/LC_PAPER
+#usr/lib/locale/en_GB.utf8/LC_TELEPHONE
+#usr/lib/locale/en_GB.utf8/LC_TIME
+#usr/lib/locale/en_GB/LC_ADDRESS
+#usr/lib/locale/en_GB/LC_COLLATE
+#usr/lib/locale/en_GB/LC_CTYPE
+#usr/lib/locale/en_GB/LC_IDENTIFICATION
+#usr/lib/locale/en_GB/LC_MEASUREMENT
+#usr/lib/locale/en_GB/LC_MESSAGES
+#usr/lib/locale/en_GB/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_GB/LC_MONETARY
+#usr/lib/locale/en_GB/LC_NAME
+#usr/lib/locale/en_GB/LC_NUMERIC
+#usr/lib/locale/en_GB/LC_PAPER
+#usr/lib/locale/en_GB/LC_TELEPHONE
+#usr/lib/locale/en_GB/LC_TIME
+#usr/lib/locale/en_HK
+#usr/lib/locale/en_HK.utf8
+#usr/lib/locale/en_HK.utf8/LC_ADDRESS
+#usr/lib/locale/en_HK.utf8/LC_COLLATE
+#usr/lib/locale/en_HK.utf8/LC_CTYPE
+#usr/lib/locale/en_HK.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_HK.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_HK.utf8/LC_MESSAGES
+#usr/lib/locale/en_HK.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_HK.utf8/LC_MONETARY
+#usr/lib/locale/en_HK.utf8/LC_NAME
+#usr/lib/locale/en_HK.utf8/LC_NUMERIC
+#usr/lib/locale/en_HK.utf8/LC_PAPER
+#usr/lib/locale/en_HK.utf8/LC_TELEPHONE
+#usr/lib/locale/en_HK.utf8/LC_TIME
+#usr/lib/locale/en_HK/LC_ADDRESS
+#usr/lib/locale/en_HK/LC_COLLATE
+#usr/lib/locale/en_HK/LC_CTYPE
+#usr/lib/locale/en_HK/LC_IDENTIFICATION
+#usr/lib/locale/en_HK/LC_MEASUREMENT
+#usr/lib/locale/en_HK/LC_MESSAGES
+#usr/lib/locale/en_HK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_HK/LC_MONETARY
+#usr/lib/locale/en_HK/LC_NAME
+#usr/lib/locale/en_HK/LC_NUMERIC
+#usr/lib/locale/en_HK/LC_PAPER
+#usr/lib/locale/en_HK/LC_TELEPHONE
+#usr/lib/locale/en_HK/LC_TIME
+#usr/lib/locale/en_IE
+#usr/lib/locale/en_IE.utf8
+#usr/lib/locale/en_IE.utf8/LC_ADDRESS
+#usr/lib/locale/en_IE.utf8/LC_COLLATE
+#usr/lib/locale/en_IE.utf8/LC_CTYPE
+#usr/lib/locale/en_IE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_IE.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_IE.utf8/LC_MESSAGES
+#usr/lib/locale/en_IE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_IE.utf8/LC_MONETARY
+#usr/lib/locale/en_IE.utf8/LC_NAME
+#usr/lib/locale/en_IE.utf8/LC_NUMERIC
+#usr/lib/locale/en_IE.utf8/LC_PAPER
+#usr/lib/locale/en_IE.utf8/LC_TELEPHONE
+#usr/lib/locale/en_IE.utf8/LC_TIME
+#usr/lib/locale/en_IE/LC_ADDRESS
+#usr/lib/locale/en_IE/LC_COLLATE
+#usr/lib/locale/en_IE/LC_CTYPE
+#usr/lib/locale/en_IE/LC_IDENTIFICATION
+#usr/lib/locale/en_IE/LC_MEASUREMENT
+#usr/lib/locale/en_IE/LC_MESSAGES
+#usr/lib/locale/en_IE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_IE/LC_MONETARY
+#usr/lib/locale/en_IE/LC_NAME
+#usr/lib/locale/en_IE/LC_NUMERIC
+#usr/lib/locale/en_IE/LC_PAPER
+#usr/lib/locale/en_IE/LC_TELEPHONE
+#usr/lib/locale/en_IE/LC_TIME
+#usr/lib/locale/en_IE@euro
+#usr/lib/locale/en_IE@euro/LC_ADDRESS
+#usr/lib/locale/en_IE@euro/LC_COLLATE
+#usr/lib/locale/en_IE@euro/LC_CTYPE
+#usr/lib/locale/en_IE@euro/LC_IDENTIFICATION
+#usr/lib/locale/en_IE@euro/LC_MEASUREMENT
+#usr/lib/locale/en_IE@euro/LC_MESSAGES
+#usr/lib/locale/en_IE@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_IE@euro/LC_MONETARY
+#usr/lib/locale/en_IE@euro/LC_NAME
+#usr/lib/locale/en_IE@euro/LC_NUMERIC
+#usr/lib/locale/en_IE@euro/LC_PAPER
+#usr/lib/locale/en_IE@euro/LC_TELEPHONE
+#usr/lib/locale/en_IE@euro/LC_TIME
+#usr/lib/locale/en_IN
+#usr/lib/locale/en_IN/LC_ADDRESS
+#usr/lib/locale/en_IN/LC_COLLATE
+#usr/lib/locale/en_IN/LC_CTYPE
+#usr/lib/locale/en_IN/LC_IDENTIFICATION
+#usr/lib/locale/en_IN/LC_MEASUREMENT
+#usr/lib/locale/en_IN/LC_MESSAGES
+#usr/lib/locale/en_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_IN/LC_MONETARY
+#usr/lib/locale/en_IN/LC_NAME
+#usr/lib/locale/en_IN/LC_NUMERIC
+#usr/lib/locale/en_IN/LC_PAPER
+#usr/lib/locale/en_IN/LC_TELEPHONE
+#usr/lib/locale/en_IN/LC_TIME
+#usr/lib/locale/en_NG
+#usr/lib/locale/en_NG/LC_ADDRESS
+#usr/lib/locale/en_NG/LC_COLLATE
+#usr/lib/locale/en_NG/LC_CTYPE
+#usr/lib/locale/en_NG/LC_IDENTIFICATION
+#usr/lib/locale/en_NG/LC_MEASUREMENT
+#usr/lib/locale/en_NG/LC_MESSAGES
+#usr/lib/locale/en_NG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_NG/LC_MONETARY
+#usr/lib/locale/en_NG/LC_NAME
+#usr/lib/locale/en_NG/LC_NUMERIC
+#usr/lib/locale/en_NG/LC_PAPER
+#usr/lib/locale/en_NG/LC_TELEPHONE
+#usr/lib/locale/en_NG/LC_TIME
+#usr/lib/locale/en_NZ
+#usr/lib/locale/en_NZ.utf8
+#usr/lib/locale/en_NZ.utf8/LC_ADDRESS
+#usr/lib/locale/en_NZ.utf8/LC_COLLATE
+#usr/lib/locale/en_NZ.utf8/LC_CTYPE
+#usr/lib/locale/en_NZ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_NZ.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_NZ.utf8/LC_MESSAGES
+#usr/lib/locale/en_NZ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_NZ.utf8/LC_MONETARY
+#usr/lib/locale/en_NZ.utf8/LC_NAME
+#usr/lib/locale/en_NZ.utf8/LC_NUMERIC
+#usr/lib/locale/en_NZ.utf8/LC_PAPER
+#usr/lib/locale/en_NZ.utf8/LC_TELEPHONE
+#usr/lib/locale/en_NZ.utf8/LC_TIME
+#usr/lib/locale/en_NZ/LC_ADDRESS
+#usr/lib/locale/en_NZ/LC_COLLATE
+#usr/lib/locale/en_NZ/LC_CTYPE
+#usr/lib/locale/en_NZ/LC_IDENTIFICATION
+#usr/lib/locale/en_NZ/LC_MEASUREMENT
+#usr/lib/locale/en_NZ/LC_MESSAGES
+#usr/lib/locale/en_NZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_NZ/LC_MONETARY
+#usr/lib/locale/en_NZ/LC_NAME
+#usr/lib/locale/en_NZ/LC_NUMERIC
+#usr/lib/locale/en_NZ/LC_PAPER
+#usr/lib/locale/en_NZ/LC_TELEPHONE
+#usr/lib/locale/en_NZ/LC_TIME
+#usr/lib/locale/en_PH
+#usr/lib/locale/en_PH.utf8
+#usr/lib/locale/en_PH.utf8/LC_ADDRESS
+#usr/lib/locale/en_PH.utf8/LC_COLLATE
+#usr/lib/locale/en_PH.utf8/LC_CTYPE
+#usr/lib/locale/en_PH.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_PH.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_PH.utf8/LC_MESSAGES
+#usr/lib/locale/en_PH.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_PH.utf8/LC_MONETARY
+#usr/lib/locale/en_PH.utf8/LC_NAME
+#usr/lib/locale/en_PH.utf8/LC_NUMERIC
+#usr/lib/locale/en_PH.utf8/LC_PAPER
+#usr/lib/locale/en_PH.utf8/LC_TELEPHONE
+#usr/lib/locale/en_PH.utf8/LC_TIME
+#usr/lib/locale/en_PH/LC_ADDRESS
+#usr/lib/locale/en_PH/LC_COLLATE
+#usr/lib/locale/en_PH/LC_CTYPE
+#usr/lib/locale/en_PH/LC_IDENTIFICATION
+#usr/lib/locale/en_PH/LC_MEASUREMENT
+#usr/lib/locale/en_PH/LC_MESSAGES
+#usr/lib/locale/en_PH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_PH/LC_MONETARY
+#usr/lib/locale/en_PH/LC_NAME
+#usr/lib/locale/en_PH/LC_NUMERIC
+#usr/lib/locale/en_PH/LC_PAPER
+#usr/lib/locale/en_PH/LC_TELEPHONE
+#usr/lib/locale/en_PH/LC_TIME
+#usr/lib/locale/en_SG
+#usr/lib/locale/en_SG.utf8
+#usr/lib/locale/en_SG.utf8/LC_ADDRESS
+#usr/lib/locale/en_SG.utf8/LC_COLLATE
+#usr/lib/locale/en_SG.utf8/LC_CTYPE
+#usr/lib/locale/en_SG.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_SG.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_SG.utf8/LC_MESSAGES
+#usr/lib/locale/en_SG.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_SG.utf8/LC_MONETARY
+#usr/lib/locale/en_SG.utf8/LC_NAME
+#usr/lib/locale/en_SG.utf8/LC_NUMERIC
+#usr/lib/locale/en_SG.utf8/LC_PAPER
+#usr/lib/locale/en_SG.utf8/LC_TELEPHONE
+#usr/lib/locale/en_SG.utf8/LC_TIME
+#usr/lib/locale/en_SG/LC_ADDRESS
+#usr/lib/locale/en_SG/LC_COLLATE
+#usr/lib/locale/en_SG/LC_CTYPE
+#usr/lib/locale/en_SG/LC_IDENTIFICATION
+#usr/lib/locale/en_SG/LC_MEASUREMENT
+#usr/lib/locale/en_SG/LC_MESSAGES
+#usr/lib/locale/en_SG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_SG/LC_MONETARY
+#usr/lib/locale/en_SG/LC_NAME
+#usr/lib/locale/en_SG/LC_NUMERIC
+#usr/lib/locale/en_SG/LC_PAPER
+#usr/lib/locale/en_SG/LC_TELEPHONE
+#usr/lib/locale/en_SG/LC_TIME
+#usr/lib/locale/en_US
+#usr/lib/locale/en_US.iso885915
+#usr/lib/locale/en_US.iso885915/LC_ADDRESS
+#usr/lib/locale/en_US.iso885915/LC_COLLATE
+#usr/lib/locale/en_US.iso885915/LC_CTYPE
+#usr/lib/locale/en_US.iso885915/LC_IDENTIFICATION
+#usr/lib/locale/en_US.iso885915/LC_MEASUREMENT
+#usr/lib/locale/en_US.iso885915/LC_MESSAGES
+#usr/lib/locale/en_US.iso885915/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_US.iso885915/LC_MONETARY
+#usr/lib/locale/en_US.iso885915/LC_NAME
+#usr/lib/locale/en_US.iso885915/LC_NUMERIC
+#usr/lib/locale/en_US.iso885915/LC_PAPER
+#usr/lib/locale/en_US.iso885915/LC_TELEPHONE
+#usr/lib/locale/en_US.iso885915/LC_TIME
+#usr/lib/locale/en_US.utf8
+#usr/lib/locale/en_US.utf8/LC_ADDRESS
+#usr/lib/locale/en_US.utf8/LC_COLLATE
+#usr/lib/locale/en_US.utf8/LC_CTYPE
+#usr/lib/locale/en_US.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_US.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_US.utf8/LC_MESSAGES
+#usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_US.utf8/LC_MONETARY
+#usr/lib/locale/en_US.utf8/LC_NAME
+#usr/lib/locale/en_US.utf8/LC_NUMERIC
+#usr/lib/locale/en_US.utf8/LC_PAPER
+#usr/lib/locale/en_US.utf8/LC_TELEPHONE
+#usr/lib/locale/en_US.utf8/LC_TIME
+#usr/lib/locale/en_US/LC_ADDRESS
+#usr/lib/locale/en_US/LC_COLLATE
+#usr/lib/locale/en_US/LC_CTYPE
+#usr/lib/locale/en_US/LC_IDENTIFICATION
+#usr/lib/locale/en_US/LC_MEASUREMENT
+#usr/lib/locale/en_US/LC_MESSAGES
+#usr/lib/locale/en_US/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_US/LC_MONETARY
+#usr/lib/locale/en_US/LC_NAME
+#usr/lib/locale/en_US/LC_NUMERIC
+#usr/lib/locale/en_US/LC_PAPER
+#usr/lib/locale/en_US/LC_TELEPHONE
+#usr/lib/locale/en_US/LC_TIME
+#usr/lib/locale/en_ZA
+#usr/lib/locale/en_ZA.utf8
+#usr/lib/locale/en_ZA.utf8/LC_ADDRESS
+#usr/lib/locale/en_ZA.utf8/LC_COLLATE
+#usr/lib/locale/en_ZA.utf8/LC_CTYPE
+#usr/lib/locale/en_ZA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_ZA.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_ZA.utf8/LC_MESSAGES
+#usr/lib/locale/en_ZA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_ZA.utf8/LC_MONETARY
+#usr/lib/locale/en_ZA.utf8/LC_NAME
+#usr/lib/locale/en_ZA.utf8/LC_NUMERIC
+#usr/lib/locale/en_ZA.utf8/LC_PAPER
+#usr/lib/locale/en_ZA.utf8/LC_TELEPHONE
+#usr/lib/locale/en_ZA.utf8/LC_TIME
+#usr/lib/locale/en_ZA/LC_ADDRESS
+#usr/lib/locale/en_ZA/LC_COLLATE
+#usr/lib/locale/en_ZA/LC_CTYPE
+#usr/lib/locale/en_ZA/LC_IDENTIFICATION
+#usr/lib/locale/en_ZA/LC_MEASUREMENT
+#usr/lib/locale/en_ZA/LC_MESSAGES
+#usr/lib/locale/en_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_ZA/LC_MONETARY
+#usr/lib/locale/en_ZA/LC_NAME
+#usr/lib/locale/en_ZA/LC_NUMERIC
+#usr/lib/locale/en_ZA/LC_PAPER
+#usr/lib/locale/en_ZA/LC_TELEPHONE
+#usr/lib/locale/en_ZA/LC_TIME
+#usr/lib/locale/en_ZW
+#usr/lib/locale/en_ZW.utf8
+#usr/lib/locale/en_ZW.utf8/LC_ADDRESS
+#usr/lib/locale/en_ZW.utf8/LC_COLLATE
+#usr/lib/locale/en_ZW.utf8/LC_CTYPE
+#usr/lib/locale/en_ZW.utf8/LC_IDENTIFICATION
+#usr/lib/locale/en_ZW.utf8/LC_MEASUREMENT
+#usr/lib/locale/en_ZW.utf8/LC_MESSAGES
+#usr/lib/locale/en_ZW.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_ZW.utf8/LC_MONETARY
+#usr/lib/locale/en_ZW.utf8/LC_NAME
+#usr/lib/locale/en_ZW.utf8/LC_NUMERIC
+#usr/lib/locale/en_ZW.utf8/LC_PAPER
+#usr/lib/locale/en_ZW.utf8/LC_TELEPHONE
+#usr/lib/locale/en_ZW.utf8/LC_TIME
+#usr/lib/locale/en_ZW/LC_ADDRESS
+#usr/lib/locale/en_ZW/LC_COLLATE
+#usr/lib/locale/en_ZW/LC_CTYPE
+#usr/lib/locale/en_ZW/LC_IDENTIFICATION
+#usr/lib/locale/en_ZW/LC_MEASUREMENT
+#usr/lib/locale/en_ZW/LC_MESSAGES
+#usr/lib/locale/en_ZW/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/en_ZW/LC_MONETARY
+#usr/lib/locale/en_ZW/LC_NAME
+#usr/lib/locale/en_ZW/LC_NUMERIC
+#usr/lib/locale/en_ZW/LC_PAPER
+#usr/lib/locale/en_ZW/LC_TELEPHONE
+#usr/lib/locale/en_ZW/LC_TIME
+#usr/lib/locale/es_AR
+#usr/lib/locale/es_AR.utf8
+#usr/lib/locale/es_AR.utf8/LC_ADDRESS
+#usr/lib/locale/es_AR.utf8/LC_COLLATE
+#usr/lib/locale/es_AR.utf8/LC_CTYPE
+#usr/lib/locale/es_AR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_AR.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_AR.utf8/LC_MESSAGES
+#usr/lib/locale/es_AR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_AR.utf8/LC_MONETARY
+#usr/lib/locale/es_AR.utf8/LC_NAME
+#usr/lib/locale/es_AR.utf8/LC_NUMERIC
+#usr/lib/locale/es_AR.utf8/LC_PAPER
+#usr/lib/locale/es_AR.utf8/LC_TELEPHONE
+#usr/lib/locale/es_AR.utf8/LC_TIME
+#usr/lib/locale/es_AR/LC_ADDRESS
+#usr/lib/locale/es_AR/LC_COLLATE
+#usr/lib/locale/es_AR/LC_CTYPE
+#usr/lib/locale/es_AR/LC_IDENTIFICATION
+#usr/lib/locale/es_AR/LC_MEASUREMENT
+#usr/lib/locale/es_AR/LC_MESSAGES
+#usr/lib/locale/es_AR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_AR/LC_MONETARY
+#usr/lib/locale/es_AR/LC_NAME
+#usr/lib/locale/es_AR/LC_NUMERIC
+#usr/lib/locale/es_AR/LC_PAPER
+#usr/lib/locale/es_AR/LC_TELEPHONE
+#usr/lib/locale/es_AR/LC_TIME
+#usr/lib/locale/es_BO
+#usr/lib/locale/es_BO.utf8
+#usr/lib/locale/es_BO.utf8/LC_ADDRESS
+#usr/lib/locale/es_BO.utf8/LC_COLLATE
+#usr/lib/locale/es_BO.utf8/LC_CTYPE
+#usr/lib/locale/es_BO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_BO.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_BO.utf8/LC_MESSAGES
+#usr/lib/locale/es_BO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_BO.utf8/LC_MONETARY
+#usr/lib/locale/es_BO.utf8/LC_NAME
+#usr/lib/locale/es_BO.utf8/LC_NUMERIC
+#usr/lib/locale/es_BO.utf8/LC_PAPER
+#usr/lib/locale/es_BO.utf8/LC_TELEPHONE
+#usr/lib/locale/es_BO.utf8/LC_TIME
+#usr/lib/locale/es_BO/LC_ADDRESS
+#usr/lib/locale/es_BO/LC_COLLATE
+#usr/lib/locale/es_BO/LC_CTYPE
+#usr/lib/locale/es_BO/LC_IDENTIFICATION
+#usr/lib/locale/es_BO/LC_MEASUREMENT
+#usr/lib/locale/es_BO/LC_MESSAGES
+#usr/lib/locale/es_BO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_BO/LC_MONETARY
+#usr/lib/locale/es_BO/LC_NAME
+#usr/lib/locale/es_BO/LC_NUMERIC
+#usr/lib/locale/es_BO/LC_PAPER
+#usr/lib/locale/es_BO/LC_TELEPHONE
+#usr/lib/locale/es_BO/LC_TIME
+#usr/lib/locale/es_CL
+#usr/lib/locale/es_CL.utf8
+#usr/lib/locale/es_CL.utf8/LC_ADDRESS
+#usr/lib/locale/es_CL.utf8/LC_COLLATE
+#usr/lib/locale/es_CL.utf8/LC_CTYPE
+#usr/lib/locale/es_CL.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_CL.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_CL.utf8/LC_MESSAGES
+#usr/lib/locale/es_CL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_CL.utf8/LC_MONETARY
+#usr/lib/locale/es_CL.utf8/LC_NAME
+#usr/lib/locale/es_CL.utf8/LC_NUMERIC
+#usr/lib/locale/es_CL.utf8/LC_PAPER
+#usr/lib/locale/es_CL.utf8/LC_TELEPHONE
+#usr/lib/locale/es_CL.utf8/LC_TIME
+#usr/lib/locale/es_CL/LC_ADDRESS
+#usr/lib/locale/es_CL/LC_COLLATE
+#usr/lib/locale/es_CL/LC_CTYPE
+#usr/lib/locale/es_CL/LC_IDENTIFICATION
+#usr/lib/locale/es_CL/LC_MEASUREMENT
+#usr/lib/locale/es_CL/LC_MESSAGES
+#usr/lib/locale/es_CL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_CL/LC_MONETARY
+#usr/lib/locale/es_CL/LC_NAME
+#usr/lib/locale/es_CL/LC_NUMERIC
+#usr/lib/locale/es_CL/LC_PAPER
+#usr/lib/locale/es_CL/LC_TELEPHONE
+#usr/lib/locale/es_CL/LC_TIME
+#usr/lib/locale/es_CO
+#usr/lib/locale/es_CO.utf8
+#usr/lib/locale/es_CO.utf8/LC_ADDRESS
+#usr/lib/locale/es_CO.utf8/LC_COLLATE
+#usr/lib/locale/es_CO.utf8/LC_CTYPE
+#usr/lib/locale/es_CO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_CO.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_CO.utf8/LC_MESSAGES
+#usr/lib/locale/es_CO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_CO.utf8/LC_MONETARY
+#usr/lib/locale/es_CO.utf8/LC_NAME
+#usr/lib/locale/es_CO.utf8/LC_NUMERIC
+#usr/lib/locale/es_CO.utf8/LC_PAPER
+#usr/lib/locale/es_CO.utf8/LC_TELEPHONE
+#usr/lib/locale/es_CO.utf8/LC_TIME
+#usr/lib/locale/es_CO/LC_ADDRESS
+#usr/lib/locale/es_CO/LC_COLLATE
+#usr/lib/locale/es_CO/LC_CTYPE
+#usr/lib/locale/es_CO/LC_IDENTIFICATION
+#usr/lib/locale/es_CO/LC_MEASUREMENT
+#usr/lib/locale/es_CO/LC_MESSAGES
+#usr/lib/locale/es_CO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_CO/LC_MONETARY
+#usr/lib/locale/es_CO/LC_NAME
+#usr/lib/locale/es_CO/LC_NUMERIC
+#usr/lib/locale/es_CO/LC_PAPER
+#usr/lib/locale/es_CO/LC_TELEPHONE
+#usr/lib/locale/es_CO/LC_TIME
+#usr/lib/locale/es_CR
+#usr/lib/locale/es_CR.utf8
+#usr/lib/locale/es_CR.utf8/LC_ADDRESS
+#usr/lib/locale/es_CR.utf8/LC_COLLATE
+#usr/lib/locale/es_CR.utf8/LC_CTYPE
+#usr/lib/locale/es_CR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_CR.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_CR.utf8/LC_MESSAGES
+#usr/lib/locale/es_CR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_CR.utf8/LC_MONETARY
+#usr/lib/locale/es_CR.utf8/LC_NAME
+#usr/lib/locale/es_CR.utf8/LC_NUMERIC
+#usr/lib/locale/es_CR.utf8/LC_PAPER
+#usr/lib/locale/es_CR.utf8/LC_TELEPHONE
+#usr/lib/locale/es_CR.utf8/LC_TIME
+#usr/lib/locale/es_CR/LC_ADDRESS
+#usr/lib/locale/es_CR/LC_COLLATE
+#usr/lib/locale/es_CR/LC_CTYPE
+#usr/lib/locale/es_CR/LC_IDENTIFICATION
+#usr/lib/locale/es_CR/LC_MEASUREMENT
+#usr/lib/locale/es_CR/LC_MESSAGES
+#usr/lib/locale/es_CR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_CR/LC_MONETARY
+#usr/lib/locale/es_CR/LC_NAME
+#usr/lib/locale/es_CR/LC_NUMERIC
+#usr/lib/locale/es_CR/LC_PAPER
+#usr/lib/locale/es_CR/LC_TELEPHONE
+#usr/lib/locale/es_CR/LC_TIME
+#usr/lib/locale/es_DO
+#usr/lib/locale/es_DO.utf8
+#usr/lib/locale/es_DO.utf8/LC_ADDRESS
+#usr/lib/locale/es_DO.utf8/LC_COLLATE
+#usr/lib/locale/es_DO.utf8/LC_CTYPE
+#usr/lib/locale/es_DO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_DO.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_DO.utf8/LC_MESSAGES
+#usr/lib/locale/es_DO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_DO.utf8/LC_MONETARY
+#usr/lib/locale/es_DO.utf8/LC_NAME
+#usr/lib/locale/es_DO.utf8/LC_NUMERIC
+#usr/lib/locale/es_DO.utf8/LC_PAPER
+#usr/lib/locale/es_DO.utf8/LC_TELEPHONE
+#usr/lib/locale/es_DO.utf8/LC_TIME
+#usr/lib/locale/es_DO/LC_ADDRESS
+#usr/lib/locale/es_DO/LC_COLLATE
+#usr/lib/locale/es_DO/LC_CTYPE
+#usr/lib/locale/es_DO/LC_IDENTIFICATION
+#usr/lib/locale/es_DO/LC_MEASUREMENT
+#usr/lib/locale/es_DO/LC_MESSAGES
+#usr/lib/locale/es_DO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_DO/LC_MONETARY
+#usr/lib/locale/es_DO/LC_NAME
+#usr/lib/locale/es_DO/LC_NUMERIC
+#usr/lib/locale/es_DO/LC_PAPER
+#usr/lib/locale/es_DO/LC_TELEPHONE
+#usr/lib/locale/es_DO/LC_TIME
+#usr/lib/locale/es_EC
+#usr/lib/locale/es_EC.utf8
+#usr/lib/locale/es_EC.utf8/LC_ADDRESS
+#usr/lib/locale/es_EC.utf8/LC_COLLATE
+#usr/lib/locale/es_EC.utf8/LC_CTYPE
+#usr/lib/locale/es_EC.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_EC.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_EC.utf8/LC_MESSAGES
+#usr/lib/locale/es_EC.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_EC.utf8/LC_MONETARY
+#usr/lib/locale/es_EC.utf8/LC_NAME
+#usr/lib/locale/es_EC.utf8/LC_NUMERIC
+#usr/lib/locale/es_EC.utf8/LC_PAPER
+#usr/lib/locale/es_EC.utf8/LC_TELEPHONE
+#usr/lib/locale/es_EC.utf8/LC_TIME
+#usr/lib/locale/es_EC/LC_ADDRESS
+#usr/lib/locale/es_EC/LC_COLLATE
+#usr/lib/locale/es_EC/LC_CTYPE
+#usr/lib/locale/es_EC/LC_IDENTIFICATION
+#usr/lib/locale/es_EC/LC_MEASUREMENT
+#usr/lib/locale/es_EC/LC_MESSAGES
+#usr/lib/locale/es_EC/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_EC/LC_MONETARY
+#usr/lib/locale/es_EC/LC_NAME
+#usr/lib/locale/es_EC/LC_NUMERIC
+#usr/lib/locale/es_EC/LC_PAPER
+#usr/lib/locale/es_EC/LC_TELEPHONE
+#usr/lib/locale/es_EC/LC_TIME
+#usr/lib/locale/es_ES
+#usr/lib/locale/es_ES.utf8
+#usr/lib/locale/es_ES.utf8/LC_ADDRESS
+#usr/lib/locale/es_ES.utf8/LC_COLLATE
+#usr/lib/locale/es_ES.utf8/LC_CTYPE
+#usr/lib/locale/es_ES.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_ES.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_ES.utf8/LC_MESSAGES
+#usr/lib/locale/es_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_ES.utf8/LC_MONETARY
+#usr/lib/locale/es_ES.utf8/LC_NAME
+#usr/lib/locale/es_ES.utf8/LC_NUMERIC
+#usr/lib/locale/es_ES.utf8/LC_PAPER
+#usr/lib/locale/es_ES.utf8/LC_TELEPHONE
+#usr/lib/locale/es_ES.utf8/LC_TIME
+#usr/lib/locale/es_ES/LC_ADDRESS
+#usr/lib/locale/es_ES/LC_COLLATE
+#usr/lib/locale/es_ES/LC_CTYPE
+#usr/lib/locale/es_ES/LC_IDENTIFICATION
+#usr/lib/locale/es_ES/LC_MEASUREMENT
+#usr/lib/locale/es_ES/LC_MESSAGES
+#usr/lib/locale/es_ES/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_ES/LC_MONETARY
+#usr/lib/locale/es_ES/LC_NAME
+#usr/lib/locale/es_ES/LC_NUMERIC
+#usr/lib/locale/es_ES/LC_PAPER
+#usr/lib/locale/es_ES/LC_TELEPHONE
+#usr/lib/locale/es_ES/LC_TIME
+#usr/lib/locale/es_ES@euro
+#usr/lib/locale/es_ES@euro/LC_ADDRESS
+#usr/lib/locale/es_ES@euro/LC_COLLATE
+#usr/lib/locale/es_ES@euro/LC_CTYPE
+#usr/lib/locale/es_ES@euro/LC_IDENTIFICATION
+#usr/lib/locale/es_ES@euro/LC_MEASUREMENT
+#usr/lib/locale/es_ES@euro/LC_MESSAGES
+#usr/lib/locale/es_ES@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_ES@euro/LC_MONETARY
+#usr/lib/locale/es_ES@euro/LC_NAME
+#usr/lib/locale/es_ES@euro/LC_NUMERIC
+#usr/lib/locale/es_ES@euro/LC_PAPER
+#usr/lib/locale/es_ES@euro/LC_TELEPHONE
+#usr/lib/locale/es_ES@euro/LC_TIME
+#usr/lib/locale/es_GT
+#usr/lib/locale/es_GT.utf8
+#usr/lib/locale/es_GT.utf8/LC_ADDRESS
+#usr/lib/locale/es_GT.utf8/LC_COLLATE
+#usr/lib/locale/es_GT.utf8/LC_CTYPE
+#usr/lib/locale/es_GT.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_GT.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_GT.utf8/LC_MESSAGES
+#usr/lib/locale/es_GT.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_GT.utf8/LC_MONETARY
+#usr/lib/locale/es_GT.utf8/LC_NAME
+#usr/lib/locale/es_GT.utf8/LC_NUMERIC
+#usr/lib/locale/es_GT.utf8/LC_PAPER
+#usr/lib/locale/es_GT.utf8/LC_TELEPHONE
+#usr/lib/locale/es_GT.utf8/LC_TIME
+#usr/lib/locale/es_GT/LC_ADDRESS
+#usr/lib/locale/es_GT/LC_COLLATE
+#usr/lib/locale/es_GT/LC_CTYPE
+#usr/lib/locale/es_GT/LC_IDENTIFICATION
+#usr/lib/locale/es_GT/LC_MEASUREMENT
+#usr/lib/locale/es_GT/LC_MESSAGES
+#usr/lib/locale/es_GT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_GT/LC_MONETARY
+#usr/lib/locale/es_GT/LC_NAME
+#usr/lib/locale/es_GT/LC_NUMERIC
+#usr/lib/locale/es_GT/LC_PAPER
+#usr/lib/locale/es_GT/LC_TELEPHONE
+#usr/lib/locale/es_GT/LC_TIME
+#usr/lib/locale/es_HN
+#usr/lib/locale/es_HN.utf8
+#usr/lib/locale/es_HN.utf8/LC_ADDRESS
+#usr/lib/locale/es_HN.utf8/LC_COLLATE
+#usr/lib/locale/es_HN.utf8/LC_CTYPE
+#usr/lib/locale/es_HN.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_HN.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_HN.utf8/LC_MESSAGES
+#usr/lib/locale/es_HN.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_HN.utf8/LC_MONETARY
+#usr/lib/locale/es_HN.utf8/LC_NAME
+#usr/lib/locale/es_HN.utf8/LC_NUMERIC
+#usr/lib/locale/es_HN.utf8/LC_PAPER
+#usr/lib/locale/es_HN.utf8/LC_TELEPHONE
+#usr/lib/locale/es_HN.utf8/LC_TIME
+#usr/lib/locale/es_HN/LC_ADDRESS
+#usr/lib/locale/es_HN/LC_COLLATE
+#usr/lib/locale/es_HN/LC_CTYPE
+#usr/lib/locale/es_HN/LC_IDENTIFICATION
+#usr/lib/locale/es_HN/LC_MEASUREMENT
+#usr/lib/locale/es_HN/LC_MESSAGES
+#usr/lib/locale/es_HN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_HN/LC_MONETARY
+#usr/lib/locale/es_HN/LC_NAME
+#usr/lib/locale/es_HN/LC_NUMERIC
+#usr/lib/locale/es_HN/LC_PAPER
+#usr/lib/locale/es_HN/LC_TELEPHONE
+#usr/lib/locale/es_HN/LC_TIME
+#usr/lib/locale/es_MX
+#usr/lib/locale/es_MX.utf8
+#usr/lib/locale/es_MX.utf8/LC_ADDRESS
+#usr/lib/locale/es_MX.utf8/LC_COLLATE
+#usr/lib/locale/es_MX.utf8/LC_CTYPE
+#usr/lib/locale/es_MX.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_MX.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_MX.utf8/LC_MESSAGES
+#usr/lib/locale/es_MX.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_MX.utf8/LC_MONETARY
+#usr/lib/locale/es_MX.utf8/LC_NAME
+#usr/lib/locale/es_MX.utf8/LC_NUMERIC
+#usr/lib/locale/es_MX.utf8/LC_PAPER
+#usr/lib/locale/es_MX.utf8/LC_TELEPHONE
+#usr/lib/locale/es_MX.utf8/LC_TIME
+#usr/lib/locale/es_MX/LC_ADDRESS
+#usr/lib/locale/es_MX/LC_COLLATE
+#usr/lib/locale/es_MX/LC_CTYPE
+#usr/lib/locale/es_MX/LC_IDENTIFICATION
+#usr/lib/locale/es_MX/LC_MEASUREMENT
+#usr/lib/locale/es_MX/LC_MESSAGES
+#usr/lib/locale/es_MX/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_MX/LC_MONETARY
+#usr/lib/locale/es_MX/LC_NAME
+#usr/lib/locale/es_MX/LC_NUMERIC
+#usr/lib/locale/es_MX/LC_PAPER
+#usr/lib/locale/es_MX/LC_TELEPHONE
+#usr/lib/locale/es_MX/LC_TIME
+#usr/lib/locale/es_NI
+#usr/lib/locale/es_NI.utf8
+#usr/lib/locale/es_NI.utf8/LC_ADDRESS
+#usr/lib/locale/es_NI.utf8/LC_COLLATE
+#usr/lib/locale/es_NI.utf8/LC_CTYPE
+#usr/lib/locale/es_NI.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_NI.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_NI.utf8/LC_MESSAGES
+#usr/lib/locale/es_NI.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_NI.utf8/LC_MONETARY
+#usr/lib/locale/es_NI.utf8/LC_NAME
+#usr/lib/locale/es_NI.utf8/LC_NUMERIC
+#usr/lib/locale/es_NI.utf8/LC_PAPER
+#usr/lib/locale/es_NI.utf8/LC_TELEPHONE
+#usr/lib/locale/es_NI.utf8/LC_TIME
+#usr/lib/locale/es_NI/LC_ADDRESS
+#usr/lib/locale/es_NI/LC_COLLATE
+#usr/lib/locale/es_NI/LC_CTYPE
+#usr/lib/locale/es_NI/LC_IDENTIFICATION
+#usr/lib/locale/es_NI/LC_MEASUREMENT
+#usr/lib/locale/es_NI/LC_MESSAGES
+#usr/lib/locale/es_NI/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_NI/LC_MONETARY
+#usr/lib/locale/es_NI/LC_NAME
+#usr/lib/locale/es_NI/LC_NUMERIC
+#usr/lib/locale/es_NI/LC_PAPER
+#usr/lib/locale/es_NI/LC_TELEPHONE
+#usr/lib/locale/es_NI/LC_TIME
+#usr/lib/locale/es_PA
+#usr/lib/locale/es_PA.utf8
+#usr/lib/locale/es_PA.utf8/LC_ADDRESS
+#usr/lib/locale/es_PA.utf8/LC_COLLATE
+#usr/lib/locale/es_PA.utf8/LC_CTYPE
+#usr/lib/locale/es_PA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_PA.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_PA.utf8/LC_MESSAGES
+#usr/lib/locale/es_PA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PA.utf8/LC_MONETARY
+#usr/lib/locale/es_PA.utf8/LC_NAME
+#usr/lib/locale/es_PA.utf8/LC_NUMERIC
+#usr/lib/locale/es_PA.utf8/LC_PAPER
+#usr/lib/locale/es_PA.utf8/LC_TELEPHONE
+#usr/lib/locale/es_PA.utf8/LC_TIME
+#usr/lib/locale/es_PA/LC_ADDRESS
+#usr/lib/locale/es_PA/LC_COLLATE
+#usr/lib/locale/es_PA/LC_CTYPE
+#usr/lib/locale/es_PA/LC_IDENTIFICATION
+#usr/lib/locale/es_PA/LC_MEASUREMENT
+#usr/lib/locale/es_PA/LC_MESSAGES
+#usr/lib/locale/es_PA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PA/LC_MONETARY
+#usr/lib/locale/es_PA/LC_NAME
+#usr/lib/locale/es_PA/LC_NUMERIC
+#usr/lib/locale/es_PA/LC_PAPER
+#usr/lib/locale/es_PA/LC_TELEPHONE
+#usr/lib/locale/es_PA/LC_TIME
+#usr/lib/locale/es_PE
+#usr/lib/locale/es_PE.utf8
+#usr/lib/locale/es_PE.utf8/LC_ADDRESS
+#usr/lib/locale/es_PE.utf8/LC_COLLATE
+#usr/lib/locale/es_PE.utf8/LC_CTYPE
+#usr/lib/locale/es_PE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_PE.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_PE.utf8/LC_MESSAGES
+#usr/lib/locale/es_PE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PE.utf8/LC_MONETARY
+#usr/lib/locale/es_PE.utf8/LC_NAME
+#usr/lib/locale/es_PE.utf8/LC_NUMERIC
+#usr/lib/locale/es_PE.utf8/LC_PAPER
+#usr/lib/locale/es_PE.utf8/LC_TELEPHONE
+#usr/lib/locale/es_PE.utf8/LC_TIME
+#usr/lib/locale/es_PE/LC_ADDRESS
+#usr/lib/locale/es_PE/LC_COLLATE
+#usr/lib/locale/es_PE/LC_CTYPE
+#usr/lib/locale/es_PE/LC_IDENTIFICATION
+#usr/lib/locale/es_PE/LC_MEASUREMENT
+#usr/lib/locale/es_PE/LC_MESSAGES
+#usr/lib/locale/es_PE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PE/LC_MONETARY
+#usr/lib/locale/es_PE/LC_NAME
+#usr/lib/locale/es_PE/LC_NUMERIC
+#usr/lib/locale/es_PE/LC_PAPER
+#usr/lib/locale/es_PE/LC_TELEPHONE
+#usr/lib/locale/es_PE/LC_TIME
+#usr/lib/locale/es_PR
+#usr/lib/locale/es_PR.utf8
+#usr/lib/locale/es_PR.utf8/LC_ADDRESS
+#usr/lib/locale/es_PR.utf8/LC_COLLATE
+#usr/lib/locale/es_PR.utf8/LC_CTYPE
+#usr/lib/locale/es_PR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_PR.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_PR.utf8/LC_MESSAGES
+#usr/lib/locale/es_PR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PR.utf8/LC_MONETARY
+#usr/lib/locale/es_PR.utf8/LC_NAME
+#usr/lib/locale/es_PR.utf8/LC_NUMERIC
+#usr/lib/locale/es_PR.utf8/LC_PAPER
+#usr/lib/locale/es_PR.utf8/LC_TELEPHONE
+#usr/lib/locale/es_PR.utf8/LC_TIME
+#usr/lib/locale/es_PR/LC_ADDRESS
+#usr/lib/locale/es_PR/LC_COLLATE
+#usr/lib/locale/es_PR/LC_CTYPE
+#usr/lib/locale/es_PR/LC_IDENTIFICATION
+#usr/lib/locale/es_PR/LC_MEASUREMENT
+#usr/lib/locale/es_PR/LC_MESSAGES
+#usr/lib/locale/es_PR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PR/LC_MONETARY
+#usr/lib/locale/es_PR/LC_NAME
+#usr/lib/locale/es_PR/LC_NUMERIC
+#usr/lib/locale/es_PR/LC_PAPER
+#usr/lib/locale/es_PR/LC_TELEPHONE
+#usr/lib/locale/es_PR/LC_TIME
+#usr/lib/locale/es_PY
+#usr/lib/locale/es_PY.utf8
+#usr/lib/locale/es_PY.utf8/LC_ADDRESS
+#usr/lib/locale/es_PY.utf8/LC_COLLATE
+#usr/lib/locale/es_PY.utf8/LC_CTYPE
+#usr/lib/locale/es_PY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_PY.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_PY.utf8/LC_MESSAGES
+#usr/lib/locale/es_PY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PY.utf8/LC_MONETARY
+#usr/lib/locale/es_PY.utf8/LC_NAME
+#usr/lib/locale/es_PY.utf8/LC_NUMERIC
+#usr/lib/locale/es_PY.utf8/LC_PAPER
+#usr/lib/locale/es_PY.utf8/LC_TELEPHONE
+#usr/lib/locale/es_PY.utf8/LC_TIME
+#usr/lib/locale/es_PY/LC_ADDRESS
+#usr/lib/locale/es_PY/LC_COLLATE
+#usr/lib/locale/es_PY/LC_CTYPE
+#usr/lib/locale/es_PY/LC_IDENTIFICATION
+#usr/lib/locale/es_PY/LC_MEASUREMENT
+#usr/lib/locale/es_PY/LC_MESSAGES
+#usr/lib/locale/es_PY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_PY/LC_MONETARY
+#usr/lib/locale/es_PY/LC_NAME
+#usr/lib/locale/es_PY/LC_NUMERIC
+#usr/lib/locale/es_PY/LC_PAPER
+#usr/lib/locale/es_PY/LC_TELEPHONE
+#usr/lib/locale/es_PY/LC_TIME
+#usr/lib/locale/es_SV
+#usr/lib/locale/es_SV.utf8
+#usr/lib/locale/es_SV.utf8/LC_ADDRESS
+#usr/lib/locale/es_SV.utf8/LC_COLLATE
+#usr/lib/locale/es_SV.utf8/LC_CTYPE
+#usr/lib/locale/es_SV.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_SV.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_SV.utf8/LC_MESSAGES
+#usr/lib/locale/es_SV.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_SV.utf8/LC_MONETARY
+#usr/lib/locale/es_SV.utf8/LC_NAME
+#usr/lib/locale/es_SV.utf8/LC_NUMERIC
+#usr/lib/locale/es_SV.utf8/LC_PAPER
+#usr/lib/locale/es_SV.utf8/LC_TELEPHONE
+#usr/lib/locale/es_SV.utf8/LC_TIME
+#usr/lib/locale/es_SV/LC_ADDRESS
+#usr/lib/locale/es_SV/LC_COLLATE
+#usr/lib/locale/es_SV/LC_CTYPE
+#usr/lib/locale/es_SV/LC_IDENTIFICATION
+#usr/lib/locale/es_SV/LC_MEASUREMENT
+#usr/lib/locale/es_SV/LC_MESSAGES
+#usr/lib/locale/es_SV/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_SV/LC_MONETARY
+#usr/lib/locale/es_SV/LC_NAME
+#usr/lib/locale/es_SV/LC_NUMERIC
+#usr/lib/locale/es_SV/LC_PAPER
+#usr/lib/locale/es_SV/LC_TELEPHONE
+#usr/lib/locale/es_SV/LC_TIME
+#usr/lib/locale/es_US
+#usr/lib/locale/es_US.utf8
+#usr/lib/locale/es_US.utf8/LC_ADDRESS
+#usr/lib/locale/es_US.utf8/LC_COLLATE
+#usr/lib/locale/es_US.utf8/LC_CTYPE
+#usr/lib/locale/es_US.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_US.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_US.utf8/LC_MESSAGES
+#usr/lib/locale/es_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_US.utf8/LC_MONETARY
+#usr/lib/locale/es_US.utf8/LC_NAME
+#usr/lib/locale/es_US.utf8/LC_NUMERIC
+#usr/lib/locale/es_US.utf8/LC_PAPER
+#usr/lib/locale/es_US.utf8/LC_TELEPHONE
+#usr/lib/locale/es_US.utf8/LC_TIME
+#usr/lib/locale/es_US/LC_ADDRESS
+#usr/lib/locale/es_US/LC_COLLATE
+#usr/lib/locale/es_US/LC_CTYPE
+#usr/lib/locale/es_US/LC_IDENTIFICATION
+#usr/lib/locale/es_US/LC_MEASUREMENT
+#usr/lib/locale/es_US/LC_MESSAGES
+#usr/lib/locale/es_US/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_US/LC_MONETARY
+#usr/lib/locale/es_US/LC_NAME
+#usr/lib/locale/es_US/LC_NUMERIC
+#usr/lib/locale/es_US/LC_PAPER
+#usr/lib/locale/es_US/LC_TELEPHONE
+#usr/lib/locale/es_US/LC_TIME
+#usr/lib/locale/es_UY
+#usr/lib/locale/es_UY.utf8
+#usr/lib/locale/es_UY.utf8/LC_ADDRESS
+#usr/lib/locale/es_UY.utf8/LC_COLLATE
+#usr/lib/locale/es_UY.utf8/LC_CTYPE
+#usr/lib/locale/es_UY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_UY.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_UY.utf8/LC_MESSAGES
+#usr/lib/locale/es_UY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_UY.utf8/LC_MONETARY
+#usr/lib/locale/es_UY.utf8/LC_NAME
+#usr/lib/locale/es_UY.utf8/LC_NUMERIC
+#usr/lib/locale/es_UY.utf8/LC_PAPER
+#usr/lib/locale/es_UY.utf8/LC_TELEPHONE
+#usr/lib/locale/es_UY.utf8/LC_TIME
+#usr/lib/locale/es_UY/LC_ADDRESS
+#usr/lib/locale/es_UY/LC_COLLATE
+#usr/lib/locale/es_UY/LC_CTYPE
+#usr/lib/locale/es_UY/LC_IDENTIFICATION
+#usr/lib/locale/es_UY/LC_MEASUREMENT
+#usr/lib/locale/es_UY/LC_MESSAGES
+#usr/lib/locale/es_UY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_UY/LC_MONETARY
+#usr/lib/locale/es_UY/LC_NAME
+#usr/lib/locale/es_UY/LC_NUMERIC
+#usr/lib/locale/es_UY/LC_PAPER
+#usr/lib/locale/es_UY/LC_TELEPHONE
+#usr/lib/locale/es_UY/LC_TIME
+#usr/lib/locale/es_VE
+#usr/lib/locale/es_VE.utf8
+#usr/lib/locale/es_VE.utf8/LC_ADDRESS
+#usr/lib/locale/es_VE.utf8/LC_COLLATE
+#usr/lib/locale/es_VE.utf8/LC_CTYPE
+#usr/lib/locale/es_VE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/es_VE.utf8/LC_MEASUREMENT
+#usr/lib/locale/es_VE.utf8/LC_MESSAGES
+#usr/lib/locale/es_VE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_VE.utf8/LC_MONETARY
+#usr/lib/locale/es_VE.utf8/LC_NAME
+#usr/lib/locale/es_VE.utf8/LC_NUMERIC
+#usr/lib/locale/es_VE.utf8/LC_PAPER
+#usr/lib/locale/es_VE.utf8/LC_TELEPHONE
+#usr/lib/locale/es_VE.utf8/LC_TIME
+#usr/lib/locale/es_VE/LC_ADDRESS
+#usr/lib/locale/es_VE/LC_COLLATE
+#usr/lib/locale/es_VE/LC_CTYPE
+#usr/lib/locale/es_VE/LC_IDENTIFICATION
+#usr/lib/locale/es_VE/LC_MEASUREMENT
+#usr/lib/locale/es_VE/LC_MESSAGES
+#usr/lib/locale/es_VE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/es_VE/LC_MONETARY
+#usr/lib/locale/es_VE/LC_NAME
+#usr/lib/locale/es_VE/LC_NUMERIC
+#usr/lib/locale/es_VE/LC_PAPER
+#usr/lib/locale/es_VE/LC_TELEPHONE
+#usr/lib/locale/es_VE/LC_TIME
+#usr/lib/locale/et_EE
+#usr/lib/locale/et_EE.iso885915
+#usr/lib/locale/et_EE.iso885915/LC_ADDRESS
+#usr/lib/locale/et_EE.iso885915/LC_COLLATE
+#usr/lib/locale/et_EE.iso885915/LC_CTYPE
+#usr/lib/locale/et_EE.iso885915/LC_IDENTIFICATION
+#usr/lib/locale/et_EE.iso885915/LC_MEASUREMENT
+#usr/lib/locale/et_EE.iso885915/LC_MESSAGES
+#usr/lib/locale/et_EE.iso885915/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/et_EE.iso885915/LC_MONETARY
+#usr/lib/locale/et_EE.iso885915/LC_NAME
+#usr/lib/locale/et_EE.iso885915/LC_NUMERIC
+#usr/lib/locale/et_EE.iso885915/LC_PAPER
+#usr/lib/locale/et_EE.iso885915/LC_TELEPHONE
+#usr/lib/locale/et_EE.iso885915/LC_TIME
+#usr/lib/locale/et_EE.utf8
+#usr/lib/locale/et_EE.utf8/LC_ADDRESS
+#usr/lib/locale/et_EE.utf8/LC_COLLATE
+#usr/lib/locale/et_EE.utf8/LC_CTYPE
+#usr/lib/locale/et_EE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/et_EE.utf8/LC_MEASUREMENT
+#usr/lib/locale/et_EE.utf8/LC_MESSAGES
+#usr/lib/locale/et_EE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/et_EE.utf8/LC_MONETARY
+#usr/lib/locale/et_EE.utf8/LC_NAME
+#usr/lib/locale/et_EE.utf8/LC_NUMERIC
+#usr/lib/locale/et_EE.utf8/LC_PAPER
+#usr/lib/locale/et_EE.utf8/LC_TELEPHONE
+#usr/lib/locale/et_EE.utf8/LC_TIME
+#usr/lib/locale/et_EE/LC_ADDRESS
+#usr/lib/locale/et_EE/LC_COLLATE
+#usr/lib/locale/et_EE/LC_CTYPE
+#usr/lib/locale/et_EE/LC_IDENTIFICATION
+#usr/lib/locale/et_EE/LC_MEASUREMENT
+#usr/lib/locale/et_EE/LC_MESSAGES
+#usr/lib/locale/et_EE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/et_EE/LC_MONETARY
+#usr/lib/locale/et_EE/LC_NAME
+#usr/lib/locale/et_EE/LC_NUMERIC
+#usr/lib/locale/et_EE/LC_PAPER
+#usr/lib/locale/et_EE/LC_TELEPHONE
+#usr/lib/locale/et_EE/LC_TIME
+#usr/lib/locale/eu_ES
+#usr/lib/locale/eu_ES.utf8
+#usr/lib/locale/eu_ES.utf8/LC_ADDRESS
+#usr/lib/locale/eu_ES.utf8/LC_COLLATE
+#usr/lib/locale/eu_ES.utf8/LC_CTYPE
+#usr/lib/locale/eu_ES.utf8/LC_IDENTIFICATION
+#usr/lib/locale/eu_ES.utf8/LC_MEASUREMENT
+#usr/lib/locale/eu_ES.utf8/LC_MESSAGES
+#usr/lib/locale/eu_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/eu_ES.utf8/LC_MONETARY
+#usr/lib/locale/eu_ES.utf8/LC_NAME
+#usr/lib/locale/eu_ES.utf8/LC_NUMERIC
+#usr/lib/locale/eu_ES.utf8/LC_PAPER
+#usr/lib/locale/eu_ES.utf8/LC_TELEPHONE
+#usr/lib/locale/eu_ES.utf8/LC_TIME
+#usr/lib/locale/eu_ES/LC_ADDRESS
+#usr/lib/locale/eu_ES/LC_COLLATE
+#usr/lib/locale/eu_ES/LC_CTYPE
+#usr/lib/locale/eu_ES/LC_IDENTIFICATION
+#usr/lib/locale/eu_ES/LC_MEASUREMENT
+#usr/lib/locale/eu_ES/LC_MESSAGES
+#usr/lib/locale/eu_ES/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/eu_ES/LC_MONETARY
+#usr/lib/locale/eu_ES/LC_NAME
+#usr/lib/locale/eu_ES/LC_NUMERIC
+#usr/lib/locale/eu_ES/LC_PAPER
+#usr/lib/locale/eu_ES/LC_TELEPHONE
+#usr/lib/locale/eu_ES/LC_TIME
+#usr/lib/locale/eu_ES@euro
+#usr/lib/locale/eu_ES@euro/LC_ADDRESS
+#usr/lib/locale/eu_ES@euro/LC_COLLATE
+#usr/lib/locale/eu_ES@euro/LC_CTYPE
+#usr/lib/locale/eu_ES@euro/LC_IDENTIFICATION
+#usr/lib/locale/eu_ES@euro/LC_MEASUREMENT
+#usr/lib/locale/eu_ES@euro/LC_MESSAGES
+#usr/lib/locale/eu_ES@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/eu_ES@euro/LC_MONETARY
+#usr/lib/locale/eu_ES@euro/LC_NAME
+#usr/lib/locale/eu_ES@euro/LC_NUMERIC
+#usr/lib/locale/eu_ES@euro/LC_PAPER
+#usr/lib/locale/eu_ES@euro/LC_TELEPHONE
+#usr/lib/locale/eu_ES@euro/LC_TIME
+#usr/lib/locale/fa_IR
+#usr/lib/locale/fa_IR/LC_ADDRESS
+#usr/lib/locale/fa_IR/LC_COLLATE
+#usr/lib/locale/fa_IR/LC_CTYPE
+#usr/lib/locale/fa_IR/LC_IDENTIFICATION
+#usr/lib/locale/fa_IR/LC_MEASUREMENT
+#usr/lib/locale/fa_IR/LC_MESSAGES
+#usr/lib/locale/fa_IR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fa_IR/LC_MONETARY
+#usr/lib/locale/fa_IR/LC_NAME
+#usr/lib/locale/fa_IR/LC_NUMERIC
+#usr/lib/locale/fa_IR/LC_PAPER
+#usr/lib/locale/fa_IR/LC_TELEPHONE
+#usr/lib/locale/fa_IR/LC_TIME
+#usr/lib/locale/fi_FI
+#usr/lib/locale/fi_FI.utf8
+#usr/lib/locale/fi_FI.utf8/LC_ADDRESS
+#usr/lib/locale/fi_FI.utf8/LC_COLLATE
+#usr/lib/locale/fi_FI.utf8/LC_CTYPE
+#usr/lib/locale/fi_FI.utf8/LC_IDENTIFICATION
+#usr/lib/locale/fi_FI.utf8/LC_MEASUREMENT
+#usr/lib/locale/fi_FI.utf8/LC_MESSAGES
+#usr/lib/locale/fi_FI.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fi_FI.utf8/LC_MONETARY
+#usr/lib/locale/fi_FI.utf8/LC_NAME
+#usr/lib/locale/fi_FI.utf8/LC_NUMERIC
+#usr/lib/locale/fi_FI.utf8/LC_PAPER
+#usr/lib/locale/fi_FI.utf8/LC_TELEPHONE
+#usr/lib/locale/fi_FI.utf8/LC_TIME
+#usr/lib/locale/fi_FI/LC_ADDRESS
+#usr/lib/locale/fi_FI/LC_COLLATE
+#usr/lib/locale/fi_FI/LC_CTYPE
+#usr/lib/locale/fi_FI/LC_IDENTIFICATION
+#usr/lib/locale/fi_FI/LC_MEASUREMENT
+#usr/lib/locale/fi_FI/LC_MESSAGES
+#usr/lib/locale/fi_FI/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fi_FI/LC_MONETARY
+#usr/lib/locale/fi_FI/LC_NAME
+#usr/lib/locale/fi_FI/LC_NUMERIC
+#usr/lib/locale/fi_FI/LC_PAPER
+#usr/lib/locale/fi_FI/LC_TELEPHONE
+#usr/lib/locale/fi_FI/LC_TIME
+#usr/lib/locale/fi_FI@euro
+#usr/lib/locale/fi_FI@euro/LC_ADDRESS
+#usr/lib/locale/fi_FI@euro/LC_COLLATE
+#usr/lib/locale/fi_FI@euro/LC_CTYPE
+#usr/lib/locale/fi_FI@euro/LC_IDENTIFICATION
+#usr/lib/locale/fi_FI@euro/LC_MEASUREMENT
+#usr/lib/locale/fi_FI@euro/LC_MESSAGES
+#usr/lib/locale/fi_FI@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fi_FI@euro/LC_MONETARY
+#usr/lib/locale/fi_FI@euro/LC_NAME
+#usr/lib/locale/fi_FI@euro/LC_NUMERIC
+#usr/lib/locale/fi_FI@euro/LC_PAPER
+#usr/lib/locale/fi_FI@euro/LC_TELEPHONE
+#usr/lib/locale/fi_FI@euro/LC_TIME
+#usr/lib/locale/fil_PH
+#usr/lib/locale/fil_PH/LC_ADDRESS
+#usr/lib/locale/fil_PH/LC_COLLATE
+#usr/lib/locale/fil_PH/LC_CTYPE
+#usr/lib/locale/fil_PH/LC_IDENTIFICATION
+#usr/lib/locale/fil_PH/LC_MEASUREMENT
+#usr/lib/locale/fil_PH/LC_MESSAGES
+#usr/lib/locale/fil_PH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fil_PH/LC_MONETARY
+#usr/lib/locale/fil_PH/LC_NAME
+#usr/lib/locale/fil_PH/LC_NUMERIC
+#usr/lib/locale/fil_PH/LC_PAPER
+#usr/lib/locale/fil_PH/LC_TELEPHONE
+#usr/lib/locale/fil_PH/LC_TIME
+#usr/lib/locale/fo_FO
+#usr/lib/locale/fo_FO.utf8
+#usr/lib/locale/fo_FO.utf8/LC_ADDRESS
+#usr/lib/locale/fo_FO.utf8/LC_COLLATE
+#usr/lib/locale/fo_FO.utf8/LC_CTYPE
+#usr/lib/locale/fo_FO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/fo_FO.utf8/LC_MEASUREMENT
+#usr/lib/locale/fo_FO.utf8/LC_MESSAGES
+#usr/lib/locale/fo_FO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fo_FO.utf8/LC_MONETARY
+#usr/lib/locale/fo_FO.utf8/LC_NAME
+#usr/lib/locale/fo_FO.utf8/LC_NUMERIC
+#usr/lib/locale/fo_FO.utf8/LC_PAPER
+#usr/lib/locale/fo_FO.utf8/LC_TELEPHONE
+#usr/lib/locale/fo_FO.utf8/LC_TIME
+#usr/lib/locale/fo_FO/LC_ADDRESS
+#usr/lib/locale/fo_FO/LC_COLLATE
+#usr/lib/locale/fo_FO/LC_CTYPE
+#usr/lib/locale/fo_FO/LC_IDENTIFICATION
+#usr/lib/locale/fo_FO/LC_MEASUREMENT
+#usr/lib/locale/fo_FO/LC_MESSAGES
+#usr/lib/locale/fo_FO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fo_FO/LC_MONETARY
+#usr/lib/locale/fo_FO/LC_NAME
+#usr/lib/locale/fo_FO/LC_NUMERIC
+#usr/lib/locale/fo_FO/LC_PAPER
+#usr/lib/locale/fo_FO/LC_TELEPHONE
+#usr/lib/locale/fo_FO/LC_TIME
+#usr/lib/locale/fr_BE
+#usr/lib/locale/fr_BE.utf8
+#usr/lib/locale/fr_BE.utf8/LC_ADDRESS
+#usr/lib/locale/fr_BE.utf8/LC_COLLATE
+#usr/lib/locale/fr_BE.utf8/LC_CTYPE
+#usr/lib/locale/fr_BE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/fr_BE.utf8/LC_MEASUREMENT
+#usr/lib/locale/fr_BE.utf8/LC_MESSAGES
+#usr/lib/locale/fr_BE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_BE.utf8/LC_MONETARY
+#usr/lib/locale/fr_BE.utf8/LC_NAME
+#usr/lib/locale/fr_BE.utf8/LC_NUMERIC
+#usr/lib/locale/fr_BE.utf8/LC_PAPER
+#usr/lib/locale/fr_BE.utf8/LC_TELEPHONE
+#usr/lib/locale/fr_BE.utf8/LC_TIME
+#usr/lib/locale/fr_BE/LC_ADDRESS
+#usr/lib/locale/fr_BE/LC_COLLATE
+#usr/lib/locale/fr_BE/LC_CTYPE
+#usr/lib/locale/fr_BE/LC_IDENTIFICATION
+#usr/lib/locale/fr_BE/LC_MEASUREMENT
+#usr/lib/locale/fr_BE/LC_MESSAGES
+#usr/lib/locale/fr_BE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_BE/LC_MONETARY
+#usr/lib/locale/fr_BE/LC_NAME
+#usr/lib/locale/fr_BE/LC_NUMERIC
+#usr/lib/locale/fr_BE/LC_PAPER
+#usr/lib/locale/fr_BE/LC_TELEPHONE
+#usr/lib/locale/fr_BE/LC_TIME
+#usr/lib/locale/fr_BE@euro
+#usr/lib/locale/fr_BE@euro/LC_ADDRESS
+#usr/lib/locale/fr_BE@euro/LC_COLLATE
+#usr/lib/locale/fr_BE@euro/LC_CTYPE
+#usr/lib/locale/fr_BE@euro/LC_IDENTIFICATION
+#usr/lib/locale/fr_BE@euro/LC_MEASUREMENT
+#usr/lib/locale/fr_BE@euro/LC_MESSAGES
+#usr/lib/locale/fr_BE@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_BE@euro/LC_MONETARY
+#usr/lib/locale/fr_BE@euro/LC_NAME
+#usr/lib/locale/fr_BE@euro/LC_NUMERIC
+#usr/lib/locale/fr_BE@euro/LC_PAPER
+#usr/lib/locale/fr_BE@euro/LC_TELEPHONE
+#usr/lib/locale/fr_BE@euro/LC_TIME
+#usr/lib/locale/fr_CA
+#usr/lib/locale/fr_CA.utf8
+#usr/lib/locale/fr_CA.utf8/LC_ADDRESS
+#usr/lib/locale/fr_CA.utf8/LC_COLLATE
+#usr/lib/locale/fr_CA.utf8/LC_CTYPE
+#usr/lib/locale/fr_CA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/fr_CA.utf8/LC_MEASUREMENT
+#usr/lib/locale/fr_CA.utf8/LC_MESSAGES
+#usr/lib/locale/fr_CA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_CA.utf8/LC_MONETARY
+#usr/lib/locale/fr_CA.utf8/LC_NAME
+#usr/lib/locale/fr_CA.utf8/LC_NUMERIC
+#usr/lib/locale/fr_CA.utf8/LC_PAPER
+#usr/lib/locale/fr_CA.utf8/LC_TELEPHONE
+#usr/lib/locale/fr_CA.utf8/LC_TIME
+#usr/lib/locale/fr_CA/LC_ADDRESS
+#usr/lib/locale/fr_CA/LC_COLLATE
+#usr/lib/locale/fr_CA/LC_CTYPE
+#usr/lib/locale/fr_CA/LC_IDENTIFICATION
+#usr/lib/locale/fr_CA/LC_MEASUREMENT
+#usr/lib/locale/fr_CA/LC_MESSAGES
+#usr/lib/locale/fr_CA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_CA/LC_MONETARY
+#usr/lib/locale/fr_CA/LC_NAME
+#usr/lib/locale/fr_CA/LC_NUMERIC
+#usr/lib/locale/fr_CA/LC_PAPER
+#usr/lib/locale/fr_CA/LC_TELEPHONE
+#usr/lib/locale/fr_CA/LC_TIME
+#usr/lib/locale/fr_CH
+#usr/lib/locale/fr_CH.utf8
+#usr/lib/locale/fr_CH.utf8/LC_ADDRESS
+#usr/lib/locale/fr_CH.utf8/LC_COLLATE
+#usr/lib/locale/fr_CH.utf8/LC_CTYPE
+#usr/lib/locale/fr_CH.utf8/LC_IDENTIFICATION
+#usr/lib/locale/fr_CH.utf8/LC_MEASUREMENT
+#usr/lib/locale/fr_CH.utf8/LC_MESSAGES
+#usr/lib/locale/fr_CH.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_CH.utf8/LC_MONETARY
+#usr/lib/locale/fr_CH.utf8/LC_NAME
+#usr/lib/locale/fr_CH.utf8/LC_NUMERIC
+#usr/lib/locale/fr_CH.utf8/LC_PAPER
+#usr/lib/locale/fr_CH.utf8/LC_TELEPHONE
+#usr/lib/locale/fr_CH.utf8/LC_TIME
+#usr/lib/locale/fr_CH/LC_ADDRESS
+#usr/lib/locale/fr_CH/LC_COLLATE
+#usr/lib/locale/fr_CH/LC_CTYPE
+#usr/lib/locale/fr_CH/LC_IDENTIFICATION
+#usr/lib/locale/fr_CH/LC_MEASUREMENT
+#usr/lib/locale/fr_CH/LC_MESSAGES
+#usr/lib/locale/fr_CH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_CH/LC_MONETARY
+#usr/lib/locale/fr_CH/LC_NAME
+#usr/lib/locale/fr_CH/LC_NUMERIC
+#usr/lib/locale/fr_CH/LC_PAPER
+#usr/lib/locale/fr_CH/LC_TELEPHONE
+#usr/lib/locale/fr_CH/LC_TIME
+#usr/lib/locale/fr_FR
+#usr/lib/locale/fr_FR.utf8
+#usr/lib/locale/fr_FR.utf8/LC_ADDRESS
+#usr/lib/locale/fr_FR.utf8/LC_COLLATE
+#usr/lib/locale/fr_FR.utf8/LC_CTYPE
+#usr/lib/locale/fr_FR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/fr_FR.utf8/LC_MEASUREMENT
+#usr/lib/locale/fr_FR.utf8/LC_MESSAGES
+#usr/lib/locale/fr_FR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_FR.utf8/LC_MONETARY
+#usr/lib/locale/fr_FR.utf8/LC_NAME
+#usr/lib/locale/fr_FR.utf8/LC_NUMERIC
+#usr/lib/locale/fr_FR.utf8/LC_PAPER
+#usr/lib/locale/fr_FR.utf8/LC_TELEPHONE
+#usr/lib/locale/fr_FR.utf8/LC_TIME
+#usr/lib/locale/fr_FR/LC_ADDRESS
+#usr/lib/locale/fr_FR/LC_COLLATE
+#usr/lib/locale/fr_FR/LC_CTYPE
+#usr/lib/locale/fr_FR/LC_IDENTIFICATION
+#usr/lib/locale/fr_FR/LC_MEASUREMENT
+#usr/lib/locale/fr_FR/LC_MESSAGES
+#usr/lib/locale/fr_FR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_FR/LC_MONETARY
+#usr/lib/locale/fr_FR/LC_NAME
+#usr/lib/locale/fr_FR/LC_NUMERIC
+#usr/lib/locale/fr_FR/LC_PAPER
+#usr/lib/locale/fr_FR/LC_TELEPHONE
+#usr/lib/locale/fr_FR/LC_TIME
+#usr/lib/locale/fr_FR@euro
+#usr/lib/locale/fr_FR@euro/LC_ADDRESS
+#usr/lib/locale/fr_FR@euro/LC_COLLATE
+#usr/lib/locale/fr_FR@euro/LC_CTYPE
+#usr/lib/locale/fr_FR@euro/LC_IDENTIFICATION
+#usr/lib/locale/fr_FR@euro/LC_MEASUREMENT
+#usr/lib/locale/fr_FR@euro/LC_MESSAGES
+#usr/lib/locale/fr_FR@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_FR@euro/LC_MONETARY
+#usr/lib/locale/fr_FR@euro/LC_NAME
+#usr/lib/locale/fr_FR@euro/LC_NUMERIC
+#usr/lib/locale/fr_FR@euro/LC_PAPER
+#usr/lib/locale/fr_FR@euro/LC_TELEPHONE
+#usr/lib/locale/fr_FR@euro/LC_TIME
+#usr/lib/locale/fr_LU
+#usr/lib/locale/fr_LU.utf8
+#usr/lib/locale/fr_LU.utf8/LC_ADDRESS
+#usr/lib/locale/fr_LU.utf8/LC_COLLATE
+#usr/lib/locale/fr_LU.utf8/LC_CTYPE
+#usr/lib/locale/fr_LU.utf8/LC_IDENTIFICATION
+#usr/lib/locale/fr_LU.utf8/LC_MEASUREMENT
+#usr/lib/locale/fr_LU.utf8/LC_MESSAGES
+#usr/lib/locale/fr_LU.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_LU.utf8/LC_MONETARY
+#usr/lib/locale/fr_LU.utf8/LC_NAME
+#usr/lib/locale/fr_LU.utf8/LC_NUMERIC
+#usr/lib/locale/fr_LU.utf8/LC_PAPER
+#usr/lib/locale/fr_LU.utf8/LC_TELEPHONE
+#usr/lib/locale/fr_LU.utf8/LC_TIME
+#usr/lib/locale/fr_LU/LC_ADDRESS
+#usr/lib/locale/fr_LU/LC_COLLATE
+#usr/lib/locale/fr_LU/LC_CTYPE
+#usr/lib/locale/fr_LU/LC_IDENTIFICATION
+#usr/lib/locale/fr_LU/LC_MEASUREMENT
+#usr/lib/locale/fr_LU/LC_MESSAGES
+#usr/lib/locale/fr_LU/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_LU/LC_MONETARY
+#usr/lib/locale/fr_LU/LC_NAME
+#usr/lib/locale/fr_LU/LC_NUMERIC
+#usr/lib/locale/fr_LU/LC_PAPER
+#usr/lib/locale/fr_LU/LC_TELEPHONE
+#usr/lib/locale/fr_LU/LC_TIME
+#usr/lib/locale/fr_LU@euro
+#usr/lib/locale/fr_LU@euro/LC_ADDRESS
+#usr/lib/locale/fr_LU@euro/LC_COLLATE
+#usr/lib/locale/fr_LU@euro/LC_CTYPE
+#usr/lib/locale/fr_LU@euro/LC_IDENTIFICATION
+#usr/lib/locale/fr_LU@euro/LC_MEASUREMENT
+#usr/lib/locale/fr_LU@euro/LC_MESSAGES
+#usr/lib/locale/fr_LU@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fr_LU@euro/LC_MONETARY
+#usr/lib/locale/fr_LU@euro/LC_NAME
+#usr/lib/locale/fr_LU@euro/LC_NUMERIC
+#usr/lib/locale/fr_LU@euro/LC_PAPER
+#usr/lib/locale/fr_LU@euro/LC_TELEPHONE
+#usr/lib/locale/fr_LU@euro/LC_TIME
+#usr/lib/locale/fur_IT
+#usr/lib/locale/fur_IT/LC_ADDRESS
+#usr/lib/locale/fur_IT/LC_COLLATE
+#usr/lib/locale/fur_IT/LC_CTYPE
+#usr/lib/locale/fur_IT/LC_IDENTIFICATION
+#usr/lib/locale/fur_IT/LC_MEASUREMENT
+#usr/lib/locale/fur_IT/LC_MESSAGES
+#usr/lib/locale/fur_IT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fur_IT/LC_MONETARY
+#usr/lib/locale/fur_IT/LC_NAME
+#usr/lib/locale/fur_IT/LC_NUMERIC
+#usr/lib/locale/fur_IT/LC_PAPER
+#usr/lib/locale/fur_IT/LC_TELEPHONE
+#usr/lib/locale/fur_IT/LC_TIME
+#usr/lib/locale/fy_DE
+#usr/lib/locale/fy_DE/LC_ADDRESS
+#usr/lib/locale/fy_DE/LC_COLLATE
+#usr/lib/locale/fy_DE/LC_CTYPE
+#usr/lib/locale/fy_DE/LC_IDENTIFICATION
+#usr/lib/locale/fy_DE/LC_MEASUREMENT
+#usr/lib/locale/fy_DE/LC_MESSAGES
+#usr/lib/locale/fy_DE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fy_DE/LC_MONETARY
+#usr/lib/locale/fy_DE/LC_NAME
+#usr/lib/locale/fy_DE/LC_NUMERIC
+#usr/lib/locale/fy_DE/LC_PAPER
+#usr/lib/locale/fy_DE/LC_TELEPHONE
+#usr/lib/locale/fy_DE/LC_TIME
+#usr/lib/locale/fy_NL
+#usr/lib/locale/fy_NL/LC_ADDRESS
+#usr/lib/locale/fy_NL/LC_COLLATE
+#usr/lib/locale/fy_NL/LC_CTYPE
+#usr/lib/locale/fy_NL/LC_IDENTIFICATION
+#usr/lib/locale/fy_NL/LC_MEASUREMENT
+#usr/lib/locale/fy_NL/LC_MESSAGES
+#usr/lib/locale/fy_NL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/fy_NL/LC_MONETARY
+#usr/lib/locale/fy_NL/LC_NAME
+#usr/lib/locale/fy_NL/LC_NUMERIC
+#usr/lib/locale/fy_NL/LC_PAPER
+#usr/lib/locale/fy_NL/LC_TELEPHONE
+#usr/lib/locale/fy_NL/LC_TIME
+#usr/lib/locale/ga_IE
+#usr/lib/locale/ga_IE.utf8
+#usr/lib/locale/ga_IE.utf8/LC_ADDRESS
+#usr/lib/locale/ga_IE.utf8/LC_COLLATE
+#usr/lib/locale/ga_IE.utf8/LC_CTYPE
+#usr/lib/locale/ga_IE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ga_IE.utf8/LC_MEASUREMENT
+#usr/lib/locale/ga_IE.utf8/LC_MESSAGES
+#usr/lib/locale/ga_IE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ga_IE.utf8/LC_MONETARY
+#usr/lib/locale/ga_IE.utf8/LC_NAME
+#usr/lib/locale/ga_IE.utf8/LC_NUMERIC
+#usr/lib/locale/ga_IE.utf8/LC_PAPER
+#usr/lib/locale/ga_IE.utf8/LC_TELEPHONE
+#usr/lib/locale/ga_IE.utf8/LC_TIME
+#usr/lib/locale/ga_IE/LC_ADDRESS
+#usr/lib/locale/ga_IE/LC_COLLATE
+#usr/lib/locale/ga_IE/LC_CTYPE
+#usr/lib/locale/ga_IE/LC_IDENTIFICATION
+#usr/lib/locale/ga_IE/LC_MEASUREMENT
+#usr/lib/locale/ga_IE/LC_MESSAGES
+#usr/lib/locale/ga_IE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ga_IE/LC_MONETARY
+#usr/lib/locale/ga_IE/LC_NAME
+#usr/lib/locale/ga_IE/LC_NUMERIC
+#usr/lib/locale/ga_IE/LC_PAPER
+#usr/lib/locale/ga_IE/LC_TELEPHONE
+#usr/lib/locale/ga_IE/LC_TIME
+#usr/lib/locale/ga_IE@euro
+#usr/lib/locale/ga_IE@euro/LC_ADDRESS
+#usr/lib/locale/ga_IE@euro/LC_COLLATE
+#usr/lib/locale/ga_IE@euro/LC_CTYPE
+#usr/lib/locale/ga_IE@euro/LC_IDENTIFICATION
+#usr/lib/locale/ga_IE@euro/LC_MEASUREMENT
+#usr/lib/locale/ga_IE@euro/LC_MESSAGES
+#usr/lib/locale/ga_IE@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ga_IE@euro/LC_MONETARY
+#usr/lib/locale/ga_IE@euro/LC_NAME
+#usr/lib/locale/ga_IE@euro/LC_NUMERIC
+#usr/lib/locale/ga_IE@euro/LC_PAPER
+#usr/lib/locale/ga_IE@euro/LC_TELEPHONE
+#usr/lib/locale/ga_IE@euro/LC_TIME
+#usr/lib/locale/gd_GB
+#usr/lib/locale/gd_GB.utf8
+#usr/lib/locale/gd_GB.utf8/LC_ADDRESS
+#usr/lib/locale/gd_GB.utf8/LC_COLLATE
+#usr/lib/locale/gd_GB.utf8/LC_CTYPE
+#usr/lib/locale/gd_GB.utf8/LC_IDENTIFICATION
+#usr/lib/locale/gd_GB.utf8/LC_MEASUREMENT
+#usr/lib/locale/gd_GB.utf8/LC_MESSAGES
+#usr/lib/locale/gd_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gd_GB.utf8/LC_MONETARY
+#usr/lib/locale/gd_GB.utf8/LC_NAME
+#usr/lib/locale/gd_GB.utf8/LC_NUMERIC
+#usr/lib/locale/gd_GB.utf8/LC_PAPER
+#usr/lib/locale/gd_GB.utf8/LC_TELEPHONE
+#usr/lib/locale/gd_GB.utf8/LC_TIME
+#usr/lib/locale/gd_GB/LC_ADDRESS
+#usr/lib/locale/gd_GB/LC_COLLATE
+#usr/lib/locale/gd_GB/LC_CTYPE
+#usr/lib/locale/gd_GB/LC_IDENTIFICATION
+#usr/lib/locale/gd_GB/LC_MEASUREMENT
+#usr/lib/locale/gd_GB/LC_MESSAGES
+#usr/lib/locale/gd_GB/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gd_GB/LC_MONETARY
+#usr/lib/locale/gd_GB/LC_NAME
+#usr/lib/locale/gd_GB/LC_NUMERIC
+#usr/lib/locale/gd_GB/LC_PAPER
+#usr/lib/locale/gd_GB/LC_TELEPHONE
+#usr/lib/locale/gd_GB/LC_TIME
+#usr/lib/locale/gez_ER
+#usr/lib/locale/gez_ER/LC_ADDRESS
+#usr/lib/locale/gez_ER/LC_COLLATE
+#usr/lib/locale/gez_ER/LC_CTYPE
+#usr/lib/locale/gez_ER/LC_IDENTIFICATION
+#usr/lib/locale/gez_ER/LC_MEASUREMENT
+#usr/lib/locale/gez_ER/LC_MESSAGES
+#usr/lib/locale/gez_ER/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gez_ER/LC_MONETARY
+#usr/lib/locale/gez_ER/LC_NAME
+#usr/lib/locale/gez_ER/LC_NUMERIC
+#usr/lib/locale/gez_ER/LC_PAPER
+#usr/lib/locale/gez_ER/LC_TELEPHONE
+#usr/lib/locale/gez_ER/LC_TIME
+#usr/lib/locale/gez_ER@abegede
+#usr/lib/locale/gez_ER@abegede/LC_ADDRESS
+#usr/lib/locale/gez_ER@abegede/LC_COLLATE
+#usr/lib/locale/gez_ER@abegede/LC_CTYPE
+#usr/lib/locale/gez_ER@abegede/LC_IDENTIFICATION
+#usr/lib/locale/gez_ER@abegede/LC_MEASUREMENT
+#usr/lib/locale/gez_ER@abegede/LC_MESSAGES
+#usr/lib/locale/gez_ER@abegede/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gez_ER@abegede/LC_MONETARY
+#usr/lib/locale/gez_ER@abegede/LC_NAME
+#usr/lib/locale/gez_ER@abegede/LC_NUMERIC
+#usr/lib/locale/gez_ER@abegede/LC_PAPER
+#usr/lib/locale/gez_ER@abegede/LC_TELEPHONE
+#usr/lib/locale/gez_ER@abegede/LC_TIME
+#usr/lib/locale/gez_ET
+#usr/lib/locale/gez_ET/LC_ADDRESS
+#usr/lib/locale/gez_ET/LC_COLLATE
+#usr/lib/locale/gez_ET/LC_CTYPE
+#usr/lib/locale/gez_ET/LC_IDENTIFICATION
+#usr/lib/locale/gez_ET/LC_MEASUREMENT
+#usr/lib/locale/gez_ET/LC_MESSAGES
+#usr/lib/locale/gez_ET/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gez_ET/LC_MONETARY
+#usr/lib/locale/gez_ET/LC_NAME
+#usr/lib/locale/gez_ET/LC_NUMERIC
+#usr/lib/locale/gez_ET/LC_PAPER
+#usr/lib/locale/gez_ET/LC_TELEPHONE
+#usr/lib/locale/gez_ET/LC_TIME
+#usr/lib/locale/gez_ET@abegede
+#usr/lib/locale/gez_ET@abegede/LC_ADDRESS
+#usr/lib/locale/gez_ET@abegede/LC_COLLATE
+#usr/lib/locale/gez_ET@abegede/LC_CTYPE
+#usr/lib/locale/gez_ET@abegede/LC_IDENTIFICATION
+#usr/lib/locale/gez_ET@abegede/LC_MEASUREMENT
+#usr/lib/locale/gez_ET@abegede/LC_MESSAGES
+#usr/lib/locale/gez_ET@abegede/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gez_ET@abegede/LC_MONETARY
+#usr/lib/locale/gez_ET@abegede/LC_NAME
+#usr/lib/locale/gez_ET@abegede/LC_NUMERIC
+#usr/lib/locale/gez_ET@abegede/LC_PAPER
+#usr/lib/locale/gez_ET@abegede/LC_TELEPHONE
+#usr/lib/locale/gez_ET@abegede/LC_TIME
+#usr/lib/locale/gl_ES
+#usr/lib/locale/gl_ES.utf8
+#usr/lib/locale/gl_ES.utf8/LC_ADDRESS
+#usr/lib/locale/gl_ES.utf8/LC_COLLATE
+#usr/lib/locale/gl_ES.utf8/LC_CTYPE
+#usr/lib/locale/gl_ES.utf8/LC_IDENTIFICATION
+#usr/lib/locale/gl_ES.utf8/LC_MEASUREMENT
+#usr/lib/locale/gl_ES.utf8/LC_MESSAGES
+#usr/lib/locale/gl_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gl_ES.utf8/LC_MONETARY
+#usr/lib/locale/gl_ES.utf8/LC_NAME
+#usr/lib/locale/gl_ES.utf8/LC_NUMERIC
+#usr/lib/locale/gl_ES.utf8/LC_PAPER
+#usr/lib/locale/gl_ES.utf8/LC_TELEPHONE
+#usr/lib/locale/gl_ES.utf8/LC_TIME
+#usr/lib/locale/gl_ES/LC_ADDRESS
+#usr/lib/locale/gl_ES/LC_COLLATE
+#usr/lib/locale/gl_ES/LC_CTYPE
+#usr/lib/locale/gl_ES/LC_IDENTIFICATION
+#usr/lib/locale/gl_ES/LC_MEASUREMENT
+#usr/lib/locale/gl_ES/LC_MESSAGES
+#usr/lib/locale/gl_ES/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gl_ES/LC_MONETARY
+#usr/lib/locale/gl_ES/LC_NAME
+#usr/lib/locale/gl_ES/LC_NUMERIC
+#usr/lib/locale/gl_ES/LC_PAPER
+#usr/lib/locale/gl_ES/LC_TELEPHONE
+#usr/lib/locale/gl_ES/LC_TIME
+#usr/lib/locale/gl_ES@euro
+#usr/lib/locale/gl_ES@euro/LC_ADDRESS
+#usr/lib/locale/gl_ES@euro/LC_COLLATE
+#usr/lib/locale/gl_ES@euro/LC_CTYPE
+#usr/lib/locale/gl_ES@euro/LC_IDENTIFICATION
+#usr/lib/locale/gl_ES@euro/LC_MEASUREMENT
+#usr/lib/locale/gl_ES@euro/LC_MESSAGES
+#usr/lib/locale/gl_ES@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gl_ES@euro/LC_MONETARY
+#usr/lib/locale/gl_ES@euro/LC_NAME
+#usr/lib/locale/gl_ES@euro/LC_NUMERIC
+#usr/lib/locale/gl_ES@euro/LC_PAPER
+#usr/lib/locale/gl_ES@euro/LC_TELEPHONE
+#usr/lib/locale/gl_ES@euro/LC_TIME
+#usr/lib/locale/gu_IN
+#usr/lib/locale/gu_IN/LC_ADDRESS
+#usr/lib/locale/gu_IN/LC_COLLATE
+#usr/lib/locale/gu_IN/LC_CTYPE
+#usr/lib/locale/gu_IN/LC_IDENTIFICATION
+#usr/lib/locale/gu_IN/LC_MEASUREMENT
+#usr/lib/locale/gu_IN/LC_MESSAGES
+#usr/lib/locale/gu_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gu_IN/LC_MONETARY
+#usr/lib/locale/gu_IN/LC_NAME
+#usr/lib/locale/gu_IN/LC_NUMERIC
+#usr/lib/locale/gu_IN/LC_PAPER
+#usr/lib/locale/gu_IN/LC_TELEPHONE
+#usr/lib/locale/gu_IN/LC_TIME
+#usr/lib/locale/gv_GB
+#usr/lib/locale/gv_GB.utf8
+#usr/lib/locale/gv_GB.utf8/LC_ADDRESS
+#usr/lib/locale/gv_GB.utf8/LC_COLLATE
+#usr/lib/locale/gv_GB.utf8/LC_CTYPE
+#usr/lib/locale/gv_GB.utf8/LC_IDENTIFICATION
+#usr/lib/locale/gv_GB.utf8/LC_MEASUREMENT
+#usr/lib/locale/gv_GB.utf8/LC_MESSAGES
+#usr/lib/locale/gv_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gv_GB.utf8/LC_MONETARY
+#usr/lib/locale/gv_GB.utf8/LC_NAME
+#usr/lib/locale/gv_GB.utf8/LC_NUMERIC
+#usr/lib/locale/gv_GB.utf8/LC_PAPER
+#usr/lib/locale/gv_GB.utf8/LC_TELEPHONE
+#usr/lib/locale/gv_GB.utf8/LC_TIME
+#usr/lib/locale/gv_GB/LC_ADDRESS
+#usr/lib/locale/gv_GB/LC_COLLATE
+#usr/lib/locale/gv_GB/LC_CTYPE
+#usr/lib/locale/gv_GB/LC_IDENTIFICATION
+#usr/lib/locale/gv_GB/LC_MEASUREMENT
+#usr/lib/locale/gv_GB/LC_MESSAGES
+#usr/lib/locale/gv_GB/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/gv_GB/LC_MONETARY
+#usr/lib/locale/gv_GB/LC_NAME
+#usr/lib/locale/gv_GB/LC_NUMERIC
+#usr/lib/locale/gv_GB/LC_PAPER
+#usr/lib/locale/gv_GB/LC_TELEPHONE
+#usr/lib/locale/gv_GB/LC_TIME
+#usr/lib/locale/ha_NG
+#usr/lib/locale/ha_NG/LC_ADDRESS
+#usr/lib/locale/ha_NG/LC_COLLATE
+#usr/lib/locale/ha_NG/LC_CTYPE
+#usr/lib/locale/ha_NG/LC_IDENTIFICATION
+#usr/lib/locale/ha_NG/LC_MEASUREMENT
+#usr/lib/locale/ha_NG/LC_MESSAGES
+#usr/lib/locale/ha_NG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ha_NG/LC_MONETARY
+#usr/lib/locale/ha_NG/LC_NAME
+#usr/lib/locale/ha_NG/LC_NUMERIC
+#usr/lib/locale/ha_NG/LC_PAPER
+#usr/lib/locale/ha_NG/LC_TELEPHONE
+#usr/lib/locale/ha_NG/LC_TIME
+#usr/lib/locale/he_IL
+#usr/lib/locale/he_IL.utf8
+#usr/lib/locale/he_IL.utf8/LC_ADDRESS
+#usr/lib/locale/he_IL.utf8/LC_COLLATE
+#usr/lib/locale/he_IL.utf8/LC_CTYPE
+#usr/lib/locale/he_IL.utf8/LC_IDENTIFICATION
+#usr/lib/locale/he_IL.utf8/LC_MEASUREMENT
+#usr/lib/locale/he_IL.utf8/LC_MESSAGES
+#usr/lib/locale/he_IL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/he_IL.utf8/LC_MONETARY
+#usr/lib/locale/he_IL.utf8/LC_NAME
+#usr/lib/locale/he_IL.utf8/LC_NUMERIC
+#usr/lib/locale/he_IL.utf8/LC_PAPER
+#usr/lib/locale/he_IL.utf8/LC_TELEPHONE
+#usr/lib/locale/he_IL.utf8/LC_TIME
+#usr/lib/locale/he_IL/LC_ADDRESS
+#usr/lib/locale/he_IL/LC_COLLATE
+#usr/lib/locale/he_IL/LC_CTYPE
+#usr/lib/locale/he_IL/LC_IDENTIFICATION
+#usr/lib/locale/he_IL/LC_MEASUREMENT
+#usr/lib/locale/he_IL/LC_MESSAGES
+#usr/lib/locale/he_IL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/he_IL/LC_MONETARY
+#usr/lib/locale/he_IL/LC_NAME
+#usr/lib/locale/he_IL/LC_NUMERIC
+#usr/lib/locale/he_IL/LC_PAPER
+#usr/lib/locale/he_IL/LC_TELEPHONE
+#usr/lib/locale/he_IL/LC_TIME
+#usr/lib/locale/hi_IN
+#usr/lib/locale/hi_IN/LC_ADDRESS
+#usr/lib/locale/hi_IN/LC_COLLATE
+#usr/lib/locale/hi_IN/LC_CTYPE
+#usr/lib/locale/hi_IN/LC_IDENTIFICATION
+#usr/lib/locale/hi_IN/LC_MEASUREMENT
+#usr/lib/locale/hi_IN/LC_MESSAGES
+#usr/lib/locale/hi_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hi_IN/LC_MONETARY
+#usr/lib/locale/hi_IN/LC_NAME
+#usr/lib/locale/hi_IN/LC_NUMERIC
+#usr/lib/locale/hi_IN/LC_PAPER
+#usr/lib/locale/hi_IN/LC_TELEPHONE
+#usr/lib/locale/hi_IN/LC_TIME
+#usr/lib/locale/hne_IN
+#usr/lib/locale/hne_IN/LC_ADDRESS
+#usr/lib/locale/hne_IN/LC_COLLATE
+#usr/lib/locale/hne_IN/LC_CTYPE
+#usr/lib/locale/hne_IN/LC_IDENTIFICATION
+#usr/lib/locale/hne_IN/LC_MEASUREMENT
+#usr/lib/locale/hne_IN/LC_MESSAGES
+#usr/lib/locale/hne_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hne_IN/LC_MONETARY
+#usr/lib/locale/hne_IN/LC_NAME
+#usr/lib/locale/hne_IN/LC_NUMERIC
+#usr/lib/locale/hne_IN/LC_PAPER
+#usr/lib/locale/hne_IN/LC_TELEPHONE
+#usr/lib/locale/hne_IN/LC_TIME
+#usr/lib/locale/hr_HR
+#usr/lib/locale/hr_HR.utf8
+#usr/lib/locale/hr_HR.utf8/LC_ADDRESS
+#usr/lib/locale/hr_HR.utf8/LC_COLLATE
+#usr/lib/locale/hr_HR.utf8/LC_CTYPE
+#usr/lib/locale/hr_HR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/hr_HR.utf8/LC_MEASUREMENT
+#usr/lib/locale/hr_HR.utf8/LC_MESSAGES
+#usr/lib/locale/hr_HR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hr_HR.utf8/LC_MONETARY
+#usr/lib/locale/hr_HR.utf8/LC_NAME
+#usr/lib/locale/hr_HR.utf8/LC_NUMERIC
+#usr/lib/locale/hr_HR.utf8/LC_PAPER
+#usr/lib/locale/hr_HR.utf8/LC_TELEPHONE
+#usr/lib/locale/hr_HR.utf8/LC_TIME
+#usr/lib/locale/hr_HR/LC_ADDRESS
+#usr/lib/locale/hr_HR/LC_COLLATE
+#usr/lib/locale/hr_HR/LC_CTYPE
+#usr/lib/locale/hr_HR/LC_IDENTIFICATION
+#usr/lib/locale/hr_HR/LC_MEASUREMENT
+#usr/lib/locale/hr_HR/LC_MESSAGES
+#usr/lib/locale/hr_HR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hr_HR/LC_MONETARY
+#usr/lib/locale/hr_HR/LC_NAME
+#usr/lib/locale/hr_HR/LC_NUMERIC
+#usr/lib/locale/hr_HR/LC_PAPER
+#usr/lib/locale/hr_HR/LC_TELEPHONE
+#usr/lib/locale/hr_HR/LC_TIME
+#usr/lib/locale/hsb_DE
+#usr/lib/locale/hsb_DE.utf8
+#usr/lib/locale/hsb_DE.utf8/LC_ADDRESS
+#usr/lib/locale/hsb_DE.utf8/LC_COLLATE
+#usr/lib/locale/hsb_DE.utf8/LC_CTYPE
+#usr/lib/locale/hsb_DE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/hsb_DE.utf8/LC_MEASUREMENT
+#usr/lib/locale/hsb_DE.utf8/LC_MESSAGES
+#usr/lib/locale/hsb_DE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hsb_DE.utf8/LC_MONETARY
+#usr/lib/locale/hsb_DE.utf8/LC_NAME
+#usr/lib/locale/hsb_DE.utf8/LC_NUMERIC
+#usr/lib/locale/hsb_DE.utf8/LC_PAPER
+#usr/lib/locale/hsb_DE.utf8/LC_TELEPHONE
+#usr/lib/locale/hsb_DE.utf8/LC_TIME
+#usr/lib/locale/hsb_DE/LC_ADDRESS
+#usr/lib/locale/hsb_DE/LC_COLLATE
+#usr/lib/locale/hsb_DE/LC_CTYPE
+#usr/lib/locale/hsb_DE/LC_IDENTIFICATION
+#usr/lib/locale/hsb_DE/LC_MEASUREMENT
+#usr/lib/locale/hsb_DE/LC_MESSAGES
+#usr/lib/locale/hsb_DE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hsb_DE/LC_MONETARY
+#usr/lib/locale/hsb_DE/LC_NAME
+#usr/lib/locale/hsb_DE/LC_NUMERIC
+#usr/lib/locale/hsb_DE/LC_PAPER
+#usr/lib/locale/hsb_DE/LC_TELEPHONE
+#usr/lib/locale/hsb_DE/LC_TIME
+#usr/lib/locale/ht_HT
+#usr/lib/locale/ht_HT/LC_ADDRESS
+#usr/lib/locale/ht_HT/LC_COLLATE
+#usr/lib/locale/ht_HT/LC_CTYPE
+#usr/lib/locale/ht_HT/LC_IDENTIFICATION
+#usr/lib/locale/ht_HT/LC_MEASUREMENT
+#usr/lib/locale/ht_HT/LC_MESSAGES
+#usr/lib/locale/ht_HT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ht_HT/LC_MONETARY
+#usr/lib/locale/ht_HT/LC_NAME
+#usr/lib/locale/ht_HT/LC_NUMERIC
+#usr/lib/locale/ht_HT/LC_PAPER
+#usr/lib/locale/ht_HT/LC_TELEPHONE
+#usr/lib/locale/ht_HT/LC_TIME
+#usr/lib/locale/hu_HU
+#usr/lib/locale/hu_HU.utf8
+#usr/lib/locale/hu_HU.utf8/LC_ADDRESS
+#usr/lib/locale/hu_HU.utf8/LC_COLLATE
+#usr/lib/locale/hu_HU.utf8/LC_CTYPE
+#usr/lib/locale/hu_HU.utf8/LC_IDENTIFICATION
+#usr/lib/locale/hu_HU.utf8/LC_MEASUREMENT
+#usr/lib/locale/hu_HU.utf8/LC_MESSAGES
+#usr/lib/locale/hu_HU.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hu_HU.utf8/LC_MONETARY
+#usr/lib/locale/hu_HU.utf8/LC_NAME
+#usr/lib/locale/hu_HU.utf8/LC_NUMERIC
+#usr/lib/locale/hu_HU.utf8/LC_PAPER
+#usr/lib/locale/hu_HU.utf8/LC_TELEPHONE
+#usr/lib/locale/hu_HU.utf8/LC_TIME
+#usr/lib/locale/hu_HU/LC_ADDRESS
+#usr/lib/locale/hu_HU/LC_COLLATE
+#usr/lib/locale/hu_HU/LC_CTYPE
+#usr/lib/locale/hu_HU/LC_IDENTIFICATION
+#usr/lib/locale/hu_HU/LC_MEASUREMENT
+#usr/lib/locale/hu_HU/LC_MESSAGES
+#usr/lib/locale/hu_HU/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hu_HU/LC_MONETARY
+#usr/lib/locale/hu_HU/LC_NAME
+#usr/lib/locale/hu_HU/LC_NUMERIC
+#usr/lib/locale/hu_HU/LC_PAPER
+#usr/lib/locale/hu_HU/LC_TELEPHONE
+#usr/lib/locale/hu_HU/LC_TIME
+#usr/lib/locale/hy_AM
+#usr/lib/locale/hy_AM.armscii8
+#usr/lib/locale/hy_AM.armscii8/LC_ADDRESS
+#usr/lib/locale/hy_AM.armscii8/LC_COLLATE
+#usr/lib/locale/hy_AM.armscii8/LC_CTYPE
+#usr/lib/locale/hy_AM.armscii8/LC_IDENTIFICATION
+#usr/lib/locale/hy_AM.armscii8/LC_MEASUREMENT
+#usr/lib/locale/hy_AM.armscii8/LC_MESSAGES
+#usr/lib/locale/hy_AM.armscii8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hy_AM.armscii8/LC_MONETARY
+#usr/lib/locale/hy_AM.armscii8/LC_NAME
+#usr/lib/locale/hy_AM.armscii8/LC_NUMERIC
+#usr/lib/locale/hy_AM.armscii8/LC_PAPER
+#usr/lib/locale/hy_AM.armscii8/LC_TELEPHONE
+#usr/lib/locale/hy_AM.armscii8/LC_TIME
+#usr/lib/locale/hy_AM/LC_ADDRESS
+#usr/lib/locale/hy_AM/LC_COLLATE
+#usr/lib/locale/hy_AM/LC_CTYPE
+#usr/lib/locale/hy_AM/LC_IDENTIFICATION
+#usr/lib/locale/hy_AM/LC_MEASUREMENT
+#usr/lib/locale/hy_AM/LC_MESSAGES
+#usr/lib/locale/hy_AM/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/hy_AM/LC_MONETARY
+#usr/lib/locale/hy_AM/LC_NAME
+#usr/lib/locale/hy_AM/LC_NUMERIC
+#usr/lib/locale/hy_AM/LC_PAPER
+#usr/lib/locale/hy_AM/LC_TELEPHONE
+#usr/lib/locale/hy_AM/LC_TIME
+#usr/lib/locale/id_ID
+#usr/lib/locale/id_ID.utf8
+#usr/lib/locale/id_ID.utf8/LC_ADDRESS
+#usr/lib/locale/id_ID.utf8/LC_COLLATE
+#usr/lib/locale/id_ID.utf8/LC_CTYPE
+#usr/lib/locale/id_ID.utf8/LC_IDENTIFICATION
+#usr/lib/locale/id_ID.utf8/LC_MEASUREMENT
+#usr/lib/locale/id_ID.utf8/LC_MESSAGES
+#usr/lib/locale/id_ID.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/id_ID.utf8/LC_MONETARY
+#usr/lib/locale/id_ID.utf8/LC_NAME
+#usr/lib/locale/id_ID.utf8/LC_NUMERIC
+#usr/lib/locale/id_ID.utf8/LC_PAPER
+#usr/lib/locale/id_ID.utf8/LC_TELEPHONE
+#usr/lib/locale/id_ID.utf8/LC_TIME
+#usr/lib/locale/id_ID/LC_ADDRESS
+#usr/lib/locale/id_ID/LC_COLLATE
+#usr/lib/locale/id_ID/LC_CTYPE
+#usr/lib/locale/id_ID/LC_IDENTIFICATION
+#usr/lib/locale/id_ID/LC_MEASUREMENT
+#usr/lib/locale/id_ID/LC_MESSAGES
+#usr/lib/locale/id_ID/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/id_ID/LC_MONETARY
+#usr/lib/locale/id_ID/LC_NAME
+#usr/lib/locale/id_ID/LC_NUMERIC
+#usr/lib/locale/id_ID/LC_PAPER
+#usr/lib/locale/id_ID/LC_TELEPHONE
+#usr/lib/locale/id_ID/LC_TIME
+#usr/lib/locale/ig_NG
+#usr/lib/locale/ig_NG/LC_ADDRESS
+#usr/lib/locale/ig_NG/LC_COLLATE
+#usr/lib/locale/ig_NG/LC_CTYPE
+#usr/lib/locale/ig_NG/LC_IDENTIFICATION
+#usr/lib/locale/ig_NG/LC_MEASUREMENT
+#usr/lib/locale/ig_NG/LC_MESSAGES
+#usr/lib/locale/ig_NG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ig_NG/LC_MONETARY
+#usr/lib/locale/ig_NG/LC_NAME
+#usr/lib/locale/ig_NG/LC_NUMERIC
+#usr/lib/locale/ig_NG/LC_PAPER
+#usr/lib/locale/ig_NG/LC_TELEPHONE
+#usr/lib/locale/ig_NG/LC_TIME
+#usr/lib/locale/ik_CA
+#usr/lib/locale/ik_CA/LC_ADDRESS
+#usr/lib/locale/ik_CA/LC_COLLATE
+#usr/lib/locale/ik_CA/LC_CTYPE
+#usr/lib/locale/ik_CA/LC_IDENTIFICATION
+#usr/lib/locale/ik_CA/LC_MEASUREMENT
+#usr/lib/locale/ik_CA/LC_MESSAGES
+#usr/lib/locale/ik_CA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ik_CA/LC_MONETARY
+#usr/lib/locale/ik_CA/LC_NAME
+#usr/lib/locale/ik_CA/LC_NUMERIC
+#usr/lib/locale/ik_CA/LC_PAPER
+#usr/lib/locale/ik_CA/LC_TELEPHONE
+#usr/lib/locale/ik_CA/LC_TIME
+#usr/lib/locale/is_IS
+#usr/lib/locale/is_IS.utf8
+#usr/lib/locale/is_IS.utf8/LC_ADDRESS
+#usr/lib/locale/is_IS.utf8/LC_COLLATE
+#usr/lib/locale/is_IS.utf8/LC_CTYPE
+#usr/lib/locale/is_IS.utf8/LC_IDENTIFICATION
+#usr/lib/locale/is_IS.utf8/LC_MEASUREMENT
+#usr/lib/locale/is_IS.utf8/LC_MESSAGES
+#usr/lib/locale/is_IS.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/is_IS.utf8/LC_MONETARY
+#usr/lib/locale/is_IS.utf8/LC_NAME
+#usr/lib/locale/is_IS.utf8/LC_NUMERIC
+#usr/lib/locale/is_IS.utf8/LC_PAPER
+#usr/lib/locale/is_IS.utf8/LC_TELEPHONE
+#usr/lib/locale/is_IS.utf8/LC_TIME
+#usr/lib/locale/is_IS/LC_ADDRESS
+#usr/lib/locale/is_IS/LC_COLLATE
+#usr/lib/locale/is_IS/LC_CTYPE
+#usr/lib/locale/is_IS/LC_IDENTIFICATION
+#usr/lib/locale/is_IS/LC_MEASUREMENT
+#usr/lib/locale/is_IS/LC_MESSAGES
+#usr/lib/locale/is_IS/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/is_IS/LC_MONETARY
+#usr/lib/locale/is_IS/LC_NAME
+#usr/lib/locale/is_IS/LC_NUMERIC
+#usr/lib/locale/is_IS/LC_PAPER
+#usr/lib/locale/is_IS/LC_TELEPHONE
+#usr/lib/locale/is_IS/LC_TIME
+#usr/lib/locale/it_CH
+#usr/lib/locale/it_CH.utf8
+#usr/lib/locale/it_CH.utf8/LC_ADDRESS
+#usr/lib/locale/it_CH.utf8/LC_COLLATE
+#usr/lib/locale/it_CH.utf8/LC_CTYPE
+#usr/lib/locale/it_CH.utf8/LC_IDENTIFICATION
+#usr/lib/locale/it_CH.utf8/LC_MEASUREMENT
+#usr/lib/locale/it_CH.utf8/LC_MESSAGES
+#usr/lib/locale/it_CH.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/it_CH.utf8/LC_MONETARY
+#usr/lib/locale/it_CH.utf8/LC_NAME
+#usr/lib/locale/it_CH.utf8/LC_NUMERIC
+#usr/lib/locale/it_CH.utf8/LC_PAPER
+#usr/lib/locale/it_CH.utf8/LC_TELEPHONE
+#usr/lib/locale/it_CH.utf8/LC_TIME
+#usr/lib/locale/it_CH/LC_ADDRESS
+#usr/lib/locale/it_CH/LC_COLLATE
+#usr/lib/locale/it_CH/LC_CTYPE
+#usr/lib/locale/it_CH/LC_IDENTIFICATION
+#usr/lib/locale/it_CH/LC_MEASUREMENT
+#usr/lib/locale/it_CH/LC_MESSAGES
+#usr/lib/locale/it_CH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/it_CH/LC_MONETARY
+#usr/lib/locale/it_CH/LC_NAME
+#usr/lib/locale/it_CH/LC_NUMERIC
+#usr/lib/locale/it_CH/LC_PAPER
+#usr/lib/locale/it_CH/LC_TELEPHONE
+#usr/lib/locale/it_CH/LC_TIME
+#usr/lib/locale/it_IT
+#usr/lib/locale/it_IT.utf8
+#usr/lib/locale/it_IT.utf8/LC_ADDRESS
+#usr/lib/locale/it_IT.utf8/LC_COLLATE
+#usr/lib/locale/it_IT.utf8/LC_CTYPE
+#usr/lib/locale/it_IT.utf8/LC_IDENTIFICATION
+#usr/lib/locale/it_IT.utf8/LC_MEASUREMENT
+#usr/lib/locale/it_IT.utf8/LC_MESSAGES
+#usr/lib/locale/it_IT.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/it_IT.utf8/LC_MONETARY
+#usr/lib/locale/it_IT.utf8/LC_NAME
+#usr/lib/locale/it_IT.utf8/LC_NUMERIC
+#usr/lib/locale/it_IT.utf8/LC_PAPER
+#usr/lib/locale/it_IT.utf8/LC_TELEPHONE
+#usr/lib/locale/it_IT.utf8/LC_TIME
+#usr/lib/locale/it_IT/LC_ADDRESS
+#usr/lib/locale/it_IT/LC_COLLATE
+#usr/lib/locale/it_IT/LC_CTYPE
+#usr/lib/locale/it_IT/LC_IDENTIFICATION
+#usr/lib/locale/it_IT/LC_MEASUREMENT
+#usr/lib/locale/it_IT/LC_MESSAGES
+#usr/lib/locale/it_IT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/it_IT/LC_MONETARY
+#usr/lib/locale/it_IT/LC_NAME
+#usr/lib/locale/it_IT/LC_NUMERIC
+#usr/lib/locale/it_IT/LC_PAPER
+#usr/lib/locale/it_IT/LC_TELEPHONE
+#usr/lib/locale/it_IT/LC_TIME
+#usr/lib/locale/it_IT@euro
+#usr/lib/locale/it_IT@euro/LC_ADDRESS
+#usr/lib/locale/it_IT@euro/LC_COLLATE
+#usr/lib/locale/it_IT@euro/LC_CTYPE
+#usr/lib/locale/it_IT@euro/LC_IDENTIFICATION
+#usr/lib/locale/it_IT@euro/LC_MEASUREMENT
+#usr/lib/locale/it_IT@euro/LC_MESSAGES
+#usr/lib/locale/it_IT@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/it_IT@euro/LC_MONETARY
+#usr/lib/locale/it_IT@euro/LC_NAME
+#usr/lib/locale/it_IT@euro/LC_NUMERIC
+#usr/lib/locale/it_IT@euro/LC_PAPER
+#usr/lib/locale/it_IT@euro/LC_TELEPHONE
+#usr/lib/locale/it_IT@euro/LC_TIME
+#usr/lib/locale/iu_CA
+#usr/lib/locale/iu_CA/LC_ADDRESS
+#usr/lib/locale/iu_CA/LC_COLLATE
+#usr/lib/locale/iu_CA/LC_CTYPE
+#usr/lib/locale/iu_CA/LC_IDENTIFICATION
+#usr/lib/locale/iu_CA/LC_MEASUREMENT
+#usr/lib/locale/iu_CA/LC_MESSAGES
+#usr/lib/locale/iu_CA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/iu_CA/LC_MONETARY
+#usr/lib/locale/iu_CA/LC_NAME
+#usr/lib/locale/iu_CA/LC_NUMERIC
+#usr/lib/locale/iu_CA/LC_PAPER
+#usr/lib/locale/iu_CA/LC_TELEPHONE
+#usr/lib/locale/iu_CA/LC_TIME
+#usr/lib/locale/iw_IL
+#usr/lib/locale/iw_IL.utf8
+#usr/lib/locale/iw_IL.utf8/LC_ADDRESS
+#usr/lib/locale/iw_IL.utf8/LC_COLLATE
+#usr/lib/locale/iw_IL.utf8/LC_CTYPE
+#usr/lib/locale/iw_IL.utf8/LC_IDENTIFICATION
+#usr/lib/locale/iw_IL.utf8/LC_MEASUREMENT
+#usr/lib/locale/iw_IL.utf8/LC_MESSAGES
+#usr/lib/locale/iw_IL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/iw_IL.utf8/LC_MONETARY
+#usr/lib/locale/iw_IL.utf8/LC_NAME
+#usr/lib/locale/iw_IL.utf8/LC_NUMERIC
+#usr/lib/locale/iw_IL.utf8/LC_PAPER
+#usr/lib/locale/iw_IL.utf8/LC_TELEPHONE
+#usr/lib/locale/iw_IL.utf8/LC_TIME
+#usr/lib/locale/iw_IL/LC_ADDRESS
+#usr/lib/locale/iw_IL/LC_COLLATE
+#usr/lib/locale/iw_IL/LC_CTYPE
+#usr/lib/locale/iw_IL/LC_IDENTIFICATION
+#usr/lib/locale/iw_IL/LC_MEASUREMENT
+#usr/lib/locale/iw_IL/LC_MESSAGES
+#usr/lib/locale/iw_IL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/iw_IL/LC_MONETARY
+#usr/lib/locale/iw_IL/LC_NAME
+#usr/lib/locale/iw_IL/LC_NUMERIC
+#usr/lib/locale/iw_IL/LC_PAPER
+#usr/lib/locale/iw_IL/LC_TELEPHONE
+#usr/lib/locale/iw_IL/LC_TIME
+#usr/lib/locale/ja_JP.eucjp
+#usr/lib/locale/ja_JP.eucjp/LC_ADDRESS
+#usr/lib/locale/ja_JP.eucjp/LC_COLLATE
+#usr/lib/locale/ja_JP.eucjp/LC_CTYPE
+#usr/lib/locale/ja_JP.eucjp/LC_IDENTIFICATION
+#usr/lib/locale/ja_JP.eucjp/LC_MEASUREMENT
+#usr/lib/locale/ja_JP.eucjp/LC_MESSAGES
+#usr/lib/locale/ja_JP.eucjp/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ja_JP.eucjp/LC_MONETARY
+#usr/lib/locale/ja_JP.eucjp/LC_NAME
+#usr/lib/locale/ja_JP.eucjp/LC_NUMERIC
+#usr/lib/locale/ja_JP.eucjp/LC_PAPER
+#usr/lib/locale/ja_JP.eucjp/LC_TELEPHONE
+#usr/lib/locale/ja_JP.eucjp/LC_TIME
+#usr/lib/locale/ja_JP.utf8
+#usr/lib/locale/ja_JP.utf8/LC_ADDRESS
+#usr/lib/locale/ja_JP.utf8/LC_COLLATE
+#usr/lib/locale/ja_JP.utf8/LC_CTYPE
+#usr/lib/locale/ja_JP.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ja_JP.utf8/LC_MEASUREMENT
+#usr/lib/locale/ja_JP.utf8/LC_MESSAGES
+#usr/lib/locale/ja_JP.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ja_JP.utf8/LC_MONETARY
+#usr/lib/locale/ja_JP.utf8/LC_NAME
+#usr/lib/locale/ja_JP.utf8/LC_NUMERIC
+#usr/lib/locale/ja_JP.utf8/LC_PAPER
+#usr/lib/locale/ja_JP.utf8/LC_TELEPHONE
+#usr/lib/locale/ja_JP.utf8/LC_TIME
+#usr/lib/locale/ka_GE
+#usr/lib/locale/ka_GE.utf8
+#usr/lib/locale/ka_GE.utf8/LC_ADDRESS
+#usr/lib/locale/ka_GE.utf8/LC_COLLATE
+#usr/lib/locale/ka_GE.utf8/LC_CTYPE
+#usr/lib/locale/ka_GE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ka_GE.utf8/LC_MEASUREMENT
+#usr/lib/locale/ka_GE.utf8/LC_MESSAGES
+#usr/lib/locale/ka_GE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ka_GE.utf8/LC_MONETARY
+#usr/lib/locale/ka_GE.utf8/LC_NAME
+#usr/lib/locale/ka_GE.utf8/LC_NUMERIC
+#usr/lib/locale/ka_GE.utf8/LC_PAPER
+#usr/lib/locale/ka_GE.utf8/LC_TELEPHONE
+#usr/lib/locale/ka_GE.utf8/LC_TIME
+#usr/lib/locale/ka_GE/LC_ADDRESS
+#usr/lib/locale/ka_GE/LC_COLLATE
+#usr/lib/locale/ka_GE/LC_CTYPE
+#usr/lib/locale/ka_GE/LC_IDENTIFICATION
+#usr/lib/locale/ka_GE/LC_MEASUREMENT
+#usr/lib/locale/ka_GE/LC_MESSAGES
+#usr/lib/locale/ka_GE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ka_GE/LC_MONETARY
+#usr/lib/locale/ka_GE/LC_NAME
+#usr/lib/locale/ka_GE/LC_NUMERIC
+#usr/lib/locale/ka_GE/LC_PAPER
+#usr/lib/locale/ka_GE/LC_TELEPHONE
+#usr/lib/locale/ka_GE/LC_TIME
+#usr/lib/locale/kk_KZ
+#usr/lib/locale/kk_KZ.utf8
+#usr/lib/locale/kk_KZ.utf8/LC_ADDRESS
+#usr/lib/locale/kk_KZ.utf8/LC_COLLATE
+#usr/lib/locale/kk_KZ.utf8/LC_CTYPE
+#usr/lib/locale/kk_KZ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/kk_KZ.utf8/LC_MEASUREMENT
+#usr/lib/locale/kk_KZ.utf8/LC_MESSAGES
+#usr/lib/locale/kk_KZ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kk_KZ.utf8/LC_MONETARY
+#usr/lib/locale/kk_KZ.utf8/LC_NAME
+#usr/lib/locale/kk_KZ.utf8/LC_NUMERIC
+#usr/lib/locale/kk_KZ.utf8/LC_PAPER
+#usr/lib/locale/kk_KZ.utf8/LC_TELEPHONE
+#usr/lib/locale/kk_KZ.utf8/LC_TIME
+#usr/lib/locale/kk_KZ/LC_ADDRESS
+#usr/lib/locale/kk_KZ/LC_COLLATE
+#usr/lib/locale/kk_KZ/LC_CTYPE
+#usr/lib/locale/kk_KZ/LC_IDENTIFICATION
+#usr/lib/locale/kk_KZ/LC_MEASUREMENT
+#usr/lib/locale/kk_KZ/LC_MESSAGES
+#usr/lib/locale/kk_KZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kk_KZ/LC_MONETARY
+#usr/lib/locale/kk_KZ/LC_NAME
+#usr/lib/locale/kk_KZ/LC_NUMERIC
+#usr/lib/locale/kk_KZ/LC_PAPER
+#usr/lib/locale/kk_KZ/LC_TELEPHONE
+#usr/lib/locale/kk_KZ/LC_TIME
+#usr/lib/locale/kl_GL
+#usr/lib/locale/kl_GL.utf8
+#usr/lib/locale/kl_GL.utf8/LC_ADDRESS
+#usr/lib/locale/kl_GL.utf8/LC_COLLATE
+#usr/lib/locale/kl_GL.utf8/LC_CTYPE
+#usr/lib/locale/kl_GL.utf8/LC_IDENTIFICATION
+#usr/lib/locale/kl_GL.utf8/LC_MEASUREMENT
+#usr/lib/locale/kl_GL.utf8/LC_MESSAGES
+#usr/lib/locale/kl_GL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kl_GL.utf8/LC_MONETARY
+#usr/lib/locale/kl_GL.utf8/LC_NAME
+#usr/lib/locale/kl_GL.utf8/LC_NUMERIC
+#usr/lib/locale/kl_GL.utf8/LC_PAPER
+#usr/lib/locale/kl_GL.utf8/LC_TELEPHONE
+#usr/lib/locale/kl_GL.utf8/LC_TIME
+#usr/lib/locale/kl_GL/LC_ADDRESS
+#usr/lib/locale/kl_GL/LC_COLLATE
+#usr/lib/locale/kl_GL/LC_CTYPE
+#usr/lib/locale/kl_GL/LC_IDENTIFICATION
+#usr/lib/locale/kl_GL/LC_MEASUREMENT
+#usr/lib/locale/kl_GL/LC_MESSAGES
+#usr/lib/locale/kl_GL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kl_GL/LC_MONETARY
+#usr/lib/locale/kl_GL/LC_NAME
+#usr/lib/locale/kl_GL/LC_NUMERIC
+#usr/lib/locale/kl_GL/LC_PAPER
+#usr/lib/locale/kl_GL/LC_TELEPHONE
+#usr/lib/locale/kl_GL/LC_TIME
+#usr/lib/locale/km_KH
+#usr/lib/locale/km_KH/LC_ADDRESS
+#usr/lib/locale/km_KH/LC_COLLATE
+#usr/lib/locale/km_KH/LC_CTYPE
+#usr/lib/locale/km_KH/LC_IDENTIFICATION
+#usr/lib/locale/km_KH/LC_MEASUREMENT
+#usr/lib/locale/km_KH/LC_MESSAGES
+#usr/lib/locale/km_KH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/km_KH/LC_MONETARY
+#usr/lib/locale/km_KH/LC_NAME
+#usr/lib/locale/km_KH/LC_NUMERIC
+#usr/lib/locale/km_KH/LC_PAPER
+#usr/lib/locale/km_KH/LC_TELEPHONE
+#usr/lib/locale/km_KH/LC_TIME
+#usr/lib/locale/kn_IN
+#usr/lib/locale/kn_IN/LC_ADDRESS
+#usr/lib/locale/kn_IN/LC_COLLATE
+#usr/lib/locale/kn_IN/LC_CTYPE
+#usr/lib/locale/kn_IN/LC_IDENTIFICATION
+#usr/lib/locale/kn_IN/LC_MEASUREMENT
+#usr/lib/locale/kn_IN/LC_MESSAGES
+#usr/lib/locale/kn_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kn_IN/LC_MONETARY
+#usr/lib/locale/kn_IN/LC_NAME
+#usr/lib/locale/kn_IN/LC_NUMERIC
+#usr/lib/locale/kn_IN/LC_PAPER
+#usr/lib/locale/kn_IN/LC_TELEPHONE
+#usr/lib/locale/kn_IN/LC_TIME
+#usr/lib/locale/ko_KR.euckr
+#usr/lib/locale/ko_KR.euckr/LC_ADDRESS
+#usr/lib/locale/ko_KR.euckr/LC_COLLATE
+#usr/lib/locale/ko_KR.euckr/LC_CTYPE
+#usr/lib/locale/ko_KR.euckr/LC_IDENTIFICATION
+#usr/lib/locale/ko_KR.euckr/LC_MEASUREMENT
+#usr/lib/locale/ko_KR.euckr/LC_MESSAGES
+#usr/lib/locale/ko_KR.euckr/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ko_KR.euckr/LC_MONETARY
+#usr/lib/locale/ko_KR.euckr/LC_NAME
+#usr/lib/locale/ko_KR.euckr/LC_NUMERIC
+#usr/lib/locale/ko_KR.euckr/LC_PAPER
+#usr/lib/locale/ko_KR.euckr/LC_TELEPHONE
+#usr/lib/locale/ko_KR.euckr/LC_TIME
+#usr/lib/locale/ko_KR.utf8
+#usr/lib/locale/ko_KR.utf8/LC_ADDRESS
+#usr/lib/locale/ko_KR.utf8/LC_COLLATE
+#usr/lib/locale/ko_KR.utf8/LC_CTYPE
+#usr/lib/locale/ko_KR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ko_KR.utf8/LC_MEASUREMENT
+#usr/lib/locale/ko_KR.utf8/LC_MESSAGES
+#usr/lib/locale/ko_KR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ko_KR.utf8/LC_MONETARY
+#usr/lib/locale/ko_KR.utf8/LC_NAME
+#usr/lib/locale/ko_KR.utf8/LC_NUMERIC
+#usr/lib/locale/ko_KR.utf8/LC_PAPER
+#usr/lib/locale/ko_KR.utf8/LC_TELEPHONE
+#usr/lib/locale/ko_KR.utf8/LC_TIME
+#usr/lib/locale/kok_IN
+#usr/lib/locale/kok_IN/LC_ADDRESS
+#usr/lib/locale/kok_IN/LC_COLLATE
+#usr/lib/locale/kok_IN/LC_CTYPE
+#usr/lib/locale/kok_IN/LC_IDENTIFICATION
+#usr/lib/locale/kok_IN/LC_MEASUREMENT
+#usr/lib/locale/kok_IN/LC_MESSAGES
+#usr/lib/locale/kok_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kok_IN/LC_MONETARY
+#usr/lib/locale/kok_IN/LC_NAME
+#usr/lib/locale/kok_IN/LC_NUMERIC
+#usr/lib/locale/kok_IN/LC_PAPER
+#usr/lib/locale/kok_IN/LC_TELEPHONE
+#usr/lib/locale/kok_IN/LC_TIME
+#usr/lib/locale/ks_IN
+#usr/lib/locale/ks_IN/LC_ADDRESS
+#usr/lib/locale/ks_IN/LC_COLLATE
+#usr/lib/locale/ks_IN/LC_CTYPE
+#usr/lib/locale/ks_IN/LC_IDENTIFICATION
+#usr/lib/locale/ks_IN/LC_MEASUREMENT
+#usr/lib/locale/ks_IN/LC_MESSAGES
+#usr/lib/locale/ks_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ks_IN/LC_MONETARY
+#usr/lib/locale/ks_IN/LC_NAME
+#usr/lib/locale/ks_IN/LC_NUMERIC
+#usr/lib/locale/ks_IN/LC_PAPER
+#usr/lib/locale/ks_IN/LC_TELEPHONE
+#usr/lib/locale/ks_IN/LC_TIME
+#usr/lib/locale/ks_IN@devanagari
+#usr/lib/locale/ks_IN@devanagari/LC_ADDRESS
+#usr/lib/locale/ks_IN@devanagari/LC_COLLATE
+#usr/lib/locale/ks_IN@devanagari/LC_CTYPE
+#usr/lib/locale/ks_IN@devanagari/LC_IDENTIFICATION
+#usr/lib/locale/ks_IN@devanagari/LC_MEASUREMENT
+#usr/lib/locale/ks_IN@devanagari/LC_MESSAGES
+#usr/lib/locale/ks_IN@devanagari/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ks_IN@devanagari/LC_MONETARY
+#usr/lib/locale/ks_IN@devanagari/LC_NAME
+#usr/lib/locale/ks_IN@devanagari/LC_NUMERIC
+#usr/lib/locale/ks_IN@devanagari/LC_PAPER
+#usr/lib/locale/ks_IN@devanagari/LC_TELEPHONE
+#usr/lib/locale/ks_IN@devanagari/LC_TIME
+#usr/lib/locale/ku_TR
+#usr/lib/locale/ku_TR.utf8
+#usr/lib/locale/ku_TR.utf8/LC_ADDRESS
+#usr/lib/locale/ku_TR.utf8/LC_COLLATE
+#usr/lib/locale/ku_TR.utf8/LC_CTYPE
+#usr/lib/locale/ku_TR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ku_TR.utf8/LC_MEASUREMENT
+#usr/lib/locale/ku_TR.utf8/LC_MESSAGES
+#usr/lib/locale/ku_TR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ku_TR.utf8/LC_MONETARY
+#usr/lib/locale/ku_TR.utf8/LC_NAME
+#usr/lib/locale/ku_TR.utf8/LC_NUMERIC
+#usr/lib/locale/ku_TR.utf8/LC_PAPER
+#usr/lib/locale/ku_TR.utf8/LC_TELEPHONE
+#usr/lib/locale/ku_TR.utf8/LC_TIME
+#usr/lib/locale/ku_TR/LC_ADDRESS
+#usr/lib/locale/ku_TR/LC_COLLATE
+#usr/lib/locale/ku_TR/LC_CTYPE
+#usr/lib/locale/ku_TR/LC_IDENTIFICATION
+#usr/lib/locale/ku_TR/LC_MEASUREMENT
+#usr/lib/locale/ku_TR/LC_MESSAGES
+#usr/lib/locale/ku_TR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ku_TR/LC_MONETARY
+#usr/lib/locale/ku_TR/LC_NAME
+#usr/lib/locale/ku_TR/LC_NUMERIC
+#usr/lib/locale/ku_TR/LC_PAPER
+#usr/lib/locale/ku_TR/LC_TELEPHONE
+#usr/lib/locale/ku_TR/LC_TIME
+#usr/lib/locale/kw_GB
+#usr/lib/locale/kw_GB.utf8
+#usr/lib/locale/kw_GB.utf8/LC_ADDRESS
+#usr/lib/locale/kw_GB.utf8/LC_COLLATE
+#usr/lib/locale/kw_GB.utf8/LC_CTYPE
+#usr/lib/locale/kw_GB.utf8/LC_IDENTIFICATION
+#usr/lib/locale/kw_GB.utf8/LC_MEASUREMENT
+#usr/lib/locale/kw_GB.utf8/LC_MESSAGES
+#usr/lib/locale/kw_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kw_GB.utf8/LC_MONETARY
+#usr/lib/locale/kw_GB.utf8/LC_NAME
+#usr/lib/locale/kw_GB.utf8/LC_NUMERIC
+#usr/lib/locale/kw_GB.utf8/LC_PAPER
+#usr/lib/locale/kw_GB.utf8/LC_TELEPHONE
+#usr/lib/locale/kw_GB.utf8/LC_TIME
+#usr/lib/locale/kw_GB/LC_ADDRESS
+#usr/lib/locale/kw_GB/LC_COLLATE
+#usr/lib/locale/kw_GB/LC_CTYPE
+#usr/lib/locale/kw_GB/LC_IDENTIFICATION
+#usr/lib/locale/kw_GB/LC_MEASUREMENT
+#usr/lib/locale/kw_GB/LC_MESSAGES
+#usr/lib/locale/kw_GB/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/kw_GB/LC_MONETARY
+#usr/lib/locale/kw_GB/LC_NAME
+#usr/lib/locale/kw_GB/LC_NUMERIC
+#usr/lib/locale/kw_GB/LC_PAPER
+#usr/lib/locale/kw_GB/LC_TELEPHONE
+#usr/lib/locale/kw_GB/LC_TIME
+#usr/lib/locale/ky_KG
+#usr/lib/locale/ky_KG/LC_ADDRESS
+#usr/lib/locale/ky_KG/LC_COLLATE
+#usr/lib/locale/ky_KG/LC_CTYPE
+#usr/lib/locale/ky_KG/LC_IDENTIFICATION
+#usr/lib/locale/ky_KG/LC_MEASUREMENT
+#usr/lib/locale/ky_KG/LC_MESSAGES
+#usr/lib/locale/ky_KG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ky_KG/LC_MONETARY
+#usr/lib/locale/ky_KG/LC_NAME
+#usr/lib/locale/ky_KG/LC_NUMERIC
+#usr/lib/locale/ky_KG/LC_PAPER
+#usr/lib/locale/ky_KG/LC_TELEPHONE
+#usr/lib/locale/ky_KG/LC_TIME
+#usr/lib/locale/lg_UG
+#usr/lib/locale/lg_UG.utf8
+#usr/lib/locale/lg_UG.utf8/LC_ADDRESS
+#usr/lib/locale/lg_UG.utf8/LC_COLLATE
+#usr/lib/locale/lg_UG.utf8/LC_CTYPE
+#usr/lib/locale/lg_UG.utf8/LC_IDENTIFICATION
+#usr/lib/locale/lg_UG.utf8/LC_MEASUREMENT
+#usr/lib/locale/lg_UG.utf8/LC_MESSAGES
+#usr/lib/locale/lg_UG.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/lg_UG.utf8/LC_MONETARY
+#usr/lib/locale/lg_UG.utf8/LC_NAME
+#usr/lib/locale/lg_UG.utf8/LC_NUMERIC
+#usr/lib/locale/lg_UG.utf8/LC_PAPER
+#usr/lib/locale/lg_UG.utf8/LC_TELEPHONE
+#usr/lib/locale/lg_UG.utf8/LC_TIME
+#usr/lib/locale/lg_UG/LC_ADDRESS
+#usr/lib/locale/lg_UG/LC_COLLATE
+#usr/lib/locale/lg_UG/LC_CTYPE
+#usr/lib/locale/lg_UG/LC_IDENTIFICATION
+#usr/lib/locale/lg_UG/LC_MEASUREMENT
+#usr/lib/locale/lg_UG/LC_MESSAGES
+#usr/lib/locale/lg_UG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/lg_UG/LC_MONETARY
+#usr/lib/locale/lg_UG/LC_NAME
+#usr/lib/locale/lg_UG/LC_NUMERIC
+#usr/lib/locale/lg_UG/LC_PAPER
+#usr/lib/locale/lg_UG/LC_TELEPHONE
+#usr/lib/locale/lg_UG/LC_TIME
+#usr/lib/locale/li_BE
+#usr/lib/locale/li_BE/LC_ADDRESS
+#usr/lib/locale/li_BE/LC_COLLATE
+#usr/lib/locale/li_BE/LC_CTYPE
+#usr/lib/locale/li_BE/LC_IDENTIFICATION
+#usr/lib/locale/li_BE/LC_MEASUREMENT
+#usr/lib/locale/li_BE/LC_MESSAGES
+#usr/lib/locale/li_BE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/li_BE/LC_MONETARY
+#usr/lib/locale/li_BE/LC_NAME
+#usr/lib/locale/li_BE/LC_NUMERIC
+#usr/lib/locale/li_BE/LC_PAPER
+#usr/lib/locale/li_BE/LC_TELEPHONE
+#usr/lib/locale/li_BE/LC_TIME
+#usr/lib/locale/li_NL
+#usr/lib/locale/li_NL/LC_ADDRESS
+#usr/lib/locale/li_NL/LC_COLLATE
+#usr/lib/locale/li_NL/LC_CTYPE
+#usr/lib/locale/li_NL/LC_IDENTIFICATION
+#usr/lib/locale/li_NL/LC_MEASUREMENT
+#usr/lib/locale/li_NL/LC_MESSAGES
+#usr/lib/locale/li_NL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/li_NL/LC_MONETARY
+#usr/lib/locale/li_NL/LC_NAME
+#usr/lib/locale/li_NL/LC_NUMERIC
+#usr/lib/locale/li_NL/LC_PAPER
+#usr/lib/locale/li_NL/LC_TELEPHONE
+#usr/lib/locale/li_NL/LC_TIME
+#usr/lib/locale/lo_LA
+#usr/lib/locale/lo_LA/LC_ADDRESS
+#usr/lib/locale/lo_LA/LC_COLLATE
+#usr/lib/locale/lo_LA/LC_CTYPE
+#usr/lib/locale/lo_LA/LC_IDENTIFICATION
+#usr/lib/locale/lo_LA/LC_MEASUREMENT
+#usr/lib/locale/lo_LA/LC_MESSAGES
+#usr/lib/locale/lo_LA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/lo_LA/LC_MONETARY
+#usr/lib/locale/lo_LA/LC_NAME
+#usr/lib/locale/lo_LA/LC_NUMERIC
+#usr/lib/locale/lo_LA/LC_PAPER
+#usr/lib/locale/lo_LA/LC_TELEPHONE
+#usr/lib/locale/lo_LA/LC_TIME
+#usr/lib/locale/lt_LT
+#usr/lib/locale/lt_LT.utf8
+#usr/lib/locale/lt_LT.utf8/LC_ADDRESS
+#usr/lib/locale/lt_LT.utf8/LC_COLLATE
+#usr/lib/locale/lt_LT.utf8/LC_CTYPE
+#usr/lib/locale/lt_LT.utf8/LC_IDENTIFICATION
+#usr/lib/locale/lt_LT.utf8/LC_MEASUREMENT
+#usr/lib/locale/lt_LT.utf8/LC_MESSAGES
+#usr/lib/locale/lt_LT.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/lt_LT.utf8/LC_MONETARY
+#usr/lib/locale/lt_LT.utf8/LC_NAME
+#usr/lib/locale/lt_LT.utf8/LC_NUMERIC
+#usr/lib/locale/lt_LT.utf8/LC_PAPER
+#usr/lib/locale/lt_LT.utf8/LC_TELEPHONE
+#usr/lib/locale/lt_LT.utf8/LC_TIME
+#usr/lib/locale/lt_LT/LC_ADDRESS
+#usr/lib/locale/lt_LT/LC_COLLATE
+#usr/lib/locale/lt_LT/LC_CTYPE
+#usr/lib/locale/lt_LT/LC_IDENTIFICATION
+#usr/lib/locale/lt_LT/LC_MEASUREMENT
+#usr/lib/locale/lt_LT/LC_MESSAGES
+#usr/lib/locale/lt_LT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/lt_LT/LC_MONETARY
+#usr/lib/locale/lt_LT/LC_NAME
+#usr/lib/locale/lt_LT/LC_NUMERIC
+#usr/lib/locale/lt_LT/LC_PAPER
+#usr/lib/locale/lt_LT/LC_TELEPHONE
+#usr/lib/locale/lt_LT/LC_TIME
+#usr/lib/locale/lv_LV
+#usr/lib/locale/lv_LV.utf8
+#usr/lib/locale/lv_LV.utf8/LC_ADDRESS
+#usr/lib/locale/lv_LV.utf8/LC_COLLATE
+#usr/lib/locale/lv_LV.utf8/LC_CTYPE
+#usr/lib/locale/lv_LV.utf8/LC_IDENTIFICATION
+#usr/lib/locale/lv_LV.utf8/LC_MEASUREMENT
+#usr/lib/locale/lv_LV.utf8/LC_MESSAGES
+#usr/lib/locale/lv_LV.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/lv_LV.utf8/LC_MONETARY
+#usr/lib/locale/lv_LV.utf8/LC_NAME
+#usr/lib/locale/lv_LV.utf8/LC_NUMERIC
+#usr/lib/locale/lv_LV.utf8/LC_PAPER
+#usr/lib/locale/lv_LV.utf8/LC_TELEPHONE
+#usr/lib/locale/lv_LV.utf8/LC_TIME
+#usr/lib/locale/lv_LV/LC_ADDRESS
+#usr/lib/locale/lv_LV/LC_COLLATE
+#usr/lib/locale/lv_LV/LC_CTYPE
+#usr/lib/locale/lv_LV/LC_IDENTIFICATION
+#usr/lib/locale/lv_LV/LC_MEASUREMENT
+#usr/lib/locale/lv_LV/LC_MESSAGES
+#usr/lib/locale/lv_LV/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/lv_LV/LC_MONETARY
+#usr/lib/locale/lv_LV/LC_NAME
+#usr/lib/locale/lv_LV/LC_NUMERIC
+#usr/lib/locale/lv_LV/LC_PAPER
+#usr/lib/locale/lv_LV/LC_TELEPHONE
+#usr/lib/locale/lv_LV/LC_TIME
+#usr/lib/locale/mai_IN
+#usr/lib/locale/mai_IN/LC_ADDRESS
+#usr/lib/locale/mai_IN/LC_COLLATE
+#usr/lib/locale/mai_IN/LC_CTYPE
+#usr/lib/locale/mai_IN/LC_IDENTIFICATION
+#usr/lib/locale/mai_IN/LC_MEASUREMENT
+#usr/lib/locale/mai_IN/LC_MESSAGES
+#usr/lib/locale/mai_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mai_IN/LC_MONETARY
+#usr/lib/locale/mai_IN/LC_NAME
+#usr/lib/locale/mai_IN/LC_NUMERIC
+#usr/lib/locale/mai_IN/LC_PAPER
+#usr/lib/locale/mai_IN/LC_TELEPHONE
+#usr/lib/locale/mai_IN/LC_TIME
+#usr/lib/locale/mg_MG
+#usr/lib/locale/mg_MG.utf8
+#usr/lib/locale/mg_MG.utf8/LC_ADDRESS
+#usr/lib/locale/mg_MG.utf8/LC_COLLATE
+#usr/lib/locale/mg_MG.utf8/LC_CTYPE
+#usr/lib/locale/mg_MG.utf8/LC_IDENTIFICATION
+#usr/lib/locale/mg_MG.utf8/LC_MEASUREMENT
+#usr/lib/locale/mg_MG.utf8/LC_MESSAGES
+#usr/lib/locale/mg_MG.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mg_MG.utf8/LC_MONETARY
+#usr/lib/locale/mg_MG.utf8/LC_NAME
+#usr/lib/locale/mg_MG.utf8/LC_NUMERIC
+#usr/lib/locale/mg_MG.utf8/LC_PAPER
+#usr/lib/locale/mg_MG.utf8/LC_TELEPHONE
+#usr/lib/locale/mg_MG.utf8/LC_TIME
+#usr/lib/locale/mg_MG/LC_ADDRESS
+#usr/lib/locale/mg_MG/LC_COLLATE
+#usr/lib/locale/mg_MG/LC_CTYPE
+#usr/lib/locale/mg_MG/LC_IDENTIFICATION
+#usr/lib/locale/mg_MG/LC_MEASUREMENT
+#usr/lib/locale/mg_MG/LC_MESSAGES
+#usr/lib/locale/mg_MG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mg_MG/LC_MONETARY
+#usr/lib/locale/mg_MG/LC_NAME
+#usr/lib/locale/mg_MG/LC_NUMERIC
+#usr/lib/locale/mg_MG/LC_PAPER
+#usr/lib/locale/mg_MG/LC_TELEPHONE
+#usr/lib/locale/mg_MG/LC_TIME
+#usr/lib/locale/mi_NZ
+#usr/lib/locale/mi_NZ.utf8
+#usr/lib/locale/mi_NZ.utf8/LC_ADDRESS
+#usr/lib/locale/mi_NZ.utf8/LC_COLLATE
+#usr/lib/locale/mi_NZ.utf8/LC_CTYPE
+#usr/lib/locale/mi_NZ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/mi_NZ.utf8/LC_MEASUREMENT
+#usr/lib/locale/mi_NZ.utf8/LC_MESSAGES
+#usr/lib/locale/mi_NZ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mi_NZ.utf8/LC_MONETARY
+#usr/lib/locale/mi_NZ.utf8/LC_NAME
+#usr/lib/locale/mi_NZ.utf8/LC_NUMERIC
+#usr/lib/locale/mi_NZ.utf8/LC_PAPER
+#usr/lib/locale/mi_NZ.utf8/LC_TELEPHONE
+#usr/lib/locale/mi_NZ.utf8/LC_TIME
+#usr/lib/locale/mi_NZ/LC_ADDRESS
+#usr/lib/locale/mi_NZ/LC_COLLATE
+#usr/lib/locale/mi_NZ/LC_CTYPE
+#usr/lib/locale/mi_NZ/LC_IDENTIFICATION
+#usr/lib/locale/mi_NZ/LC_MEASUREMENT
+#usr/lib/locale/mi_NZ/LC_MESSAGES
+#usr/lib/locale/mi_NZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mi_NZ/LC_MONETARY
+#usr/lib/locale/mi_NZ/LC_NAME
+#usr/lib/locale/mi_NZ/LC_NUMERIC
+#usr/lib/locale/mi_NZ/LC_PAPER
+#usr/lib/locale/mi_NZ/LC_TELEPHONE
+#usr/lib/locale/mi_NZ/LC_TIME
+#usr/lib/locale/mk_MK
+#usr/lib/locale/mk_MK.utf8
+#usr/lib/locale/mk_MK.utf8/LC_ADDRESS
+#usr/lib/locale/mk_MK.utf8/LC_COLLATE
+#usr/lib/locale/mk_MK.utf8/LC_CTYPE
+#usr/lib/locale/mk_MK.utf8/LC_IDENTIFICATION
+#usr/lib/locale/mk_MK.utf8/LC_MEASUREMENT
+#usr/lib/locale/mk_MK.utf8/LC_MESSAGES
+#usr/lib/locale/mk_MK.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mk_MK.utf8/LC_MONETARY
+#usr/lib/locale/mk_MK.utf8/LC_NAME
+#usr/lib/locale/mk_MK.utf8/LC_NUMERIC
+#usr/lib/locale/mk_MK.utf8/LC_PAPER
+#usr/lib/locale/mk_MK.utf8/LC_TELEPHONE
+#usr/lib/locale/mk_MK.utf8/LC_TIME
+#usr/lib/locale/mk_MK/LC_ADDRESS
+#usr/lib/locale/mk_MK/LC_COLLATE
+#usr/lib/locale/mk_MK/LC_CTYPE
+#usr/lib/locale/mk_MK/LC_IDENTIFICATION
+#usr/lib/locale/mk_MK/LC_MEASUREMENT
+#usr/lib/locale/mk_MK/LC_MESSAGES
+#usr/lib/locale/mk_MK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mk_MK/LC_MONETARY
+#usr/lib/locale/mk_MK/LC_NAME
+#usr/lib/locale/mk_MK/LC_NUMERIC
+#usr/lib/locale/mk_MK/LC_PAPER
+#usr/lib/locale/mk_MK/LC_TELEPHONE
+#usr/lib/locale/mk_MK/LC_TIME
+#usr/lib/locale/ml_IN
+#usr/lib/locale/ml_IN/LC_ADDRESS
+#usr/lib/locale/ml_IN/LC_COLLATE
+#usr/lib/locale/ml_IN/LC_CTYPE
+#usr/lib/locale/ml_IN/LC_IDENTIFICATION
+#usr/lib/locale/ml_IN/LC_MEASUREMENT
+#usr/lib/locale/ml_IN/LC_MESSAGES
+#usr/lib/locale/ml_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ml_IN/LC_MONETARY
+#usr/lib/locale/ml_IN/LC_NAME
+#usr/lib/locale/ml_IN/LC_NUMERIC
+#usr/lib/locale/ml_IN/LC_PAPER
+#usr/lib/locale/ml_IN/LC_TELEPHONE
+#usr/lib/locale/ml_IN/LC_TIME
+#usr/lib/locale/mn_MN
+#usr/lib/locale/mn_MN/LC_ADDRESS
+#usr/lib/locale/mn_MN/LC_COLLATE
+#usr/lib/locale/mn_MN/LC_CTYPE
+#usr/lib/locale/mn_MN/LC_IDENTIFICATION
+#usr/lib/locale/mn_MN/LC_MEASUREMENT
+#usr/lib/locale/mn_MN/LC_MESSAGES
+#usr/lib/locale/mn_MN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mn_MN/LC_MONETARY
+#usr/lib/locale/mn_MN/LC_NAME
+#usr/lib/locale/mn_MN/LC_NUMERIC
+#usr/lib/locale/mn_MN/LC_PAPER
+#usr/lib/locale/mn_MN/LC_TELEPHONE
+#usr/lib/locale/mn_MN/LC_TIME
+#usr/lib/locale/mr_IN
+#usr/lib/locale/mr_IN/LC_ADDRESS
+#usr/lib/locale/mr_IN/LC_COLLATE
+#usr/lib/locale/mr_IN/LC_CTYPE
+#usr/lib/locale/mr_IN/LC_IDENTIFICATION
+#usr/lib/locale/mr_IN/LC_MEASUREMENT
+#usr/lib/locale/mr_IN/LC_MESSAGES
+#usr/lib/locale/mr_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mr_IN/LC_MONETARY
+#usr/lib/locale/mr_IN/LC_NAME
+#usr/lib/locale/mr_IN/LC_NUMERIC
+#usr/lib/locale/mr_IN/LC_PAPER
+#usr/lib/locale/mr_IN/LC_TELEPHONE
+#usr/lib/locale/mr_IN/LC_TIME
+#usr/lib/locale/ms_MY
+#usr/lib/locale/ms_MY.utf8
+#usr/lib/locale/ms_MY.utf8/LC_ADDRESS
+#usr/lib/locale/ms_MY.utf8/LC_COLLATE
+#usr/lib/locale/ms_MY.utf8/LC_CTYPE
+#usr/lib/locale/ms_MY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ms_MY.utf8/LC_MEASUREMENT
+#usr/lib/locale/ms_MY.utf8/LC_MESSAGES
+#usr/lib/locale/ms_MY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ms_MY.utf8/LC_MONETARY
+#usr/lib/locale/ms_MY.utf8/LC_NAME
+#usr/lib/locale/ms_MY.utf8/LC_NUMERIC
+#usr/lib/locale/ms_MY.utf8/LC_PAPER
+#usr/lib/locale/ms_MY.utf8/LC_TELEPHONE
+#usr/lib/locale/ms_MY.utf8/LC_TIME
+#usr/lib/locale/ms_MY/LC_ADDRESS
+#usr/lib/locale/ms_MY/LC_COLLATE
+#usr/lib/locale/ms_MY/LC_CTYPE
+#usr/lib/locale/ms_MY/LC_IDENTIFICATION
+#usr/lib/locale/ms_MY/LC_MEASUREMENT
+#usr/lib/locale/ms_MY/LC_MESSAGES
+#usr/lib/locale/ms_MY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ms_MY/LC_MONETARY
+#usr/lib/locale/ms_MY/LC_NAME
+#usr/lib/locale/ms_MY/LC_NUMERIC
+#usr/lib/locale/ms_MY/LC_PAPER
+#usr/lib/locale/ms_MY/LC_TELEPHONE
+#usr/lib/locale/ms_MY/LC_TIME
+#usr/lib/locale/mt_MT
+#usr/lib/locale/mt_MT.utf8
+#usr/lib/locale/mt_MT.utf8/LC_ADDRESS
+#usr/lib/locale/mt_MT.utf8/LC_COLLATE
+#usr/lib/locale/mt_MT.utf8/LC_CTYPE
+#usr/lib/locale/mt_MT.utf8/LC_IDENTIFICATION
+#usr/lib/locale/mt_MT.utf8/LC_MEASUREMENT
+#usr/lib/locale/mt_MT.utf8/LC_MESSAGES
+#usr/lib/locale/mt_MT.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mt_MT.utf8/LC_MONETARY
+#usr/lib/locale/mt_MT.utf8/LC_NAME
+#usr/lib/locale/mt_MT.utf8/LC_NUMERIC
+#usr/lib/locale/mt_MT.utf8/LC_PAPER
+#usr/lib/locale/mt_MT.utf8/LC_TELEPHONE
+#usr/lib/locale/mt_MT.utf8/LC_TIME
+#usr/lib/locale/mt_MT/LC_ADDRESS
+#usr/lib/locale/mt_MT/LC_COLLATE
+#usr/lib/locale/mt_MT/LC_CTYPE
+#usr/lib/locale/mt_MT/LC_IDENTIFICATION
+#usr/lib/locale/mt_MT/LC_MEASUREMENT
+#usr/lib/locale/mt_MT/LC_MESSAGES
+#usr/lib/locale/mt_MT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/mt_MT/LC_MONETARY
+#usr/lib/locale/mt_MT/LC_NAME
+#usr/lib/locale/mt_MT/LC_NUMERIC
+#usr/lib/locale/mt_MT/LC_PAPER
+#usr/lib/locale/mt_MT/LC_TELEPHONE
+#usr/lib/locale/mt_MT/LC_TIME
+#usr/lib/locale/my_MM
+#usr/lib/locale/my_MM/LC_ADDRESS
+#usr/lib/locale/my_MM/LC_COLLATE
+#usr/lib/locale/my_MM/LC_CTYPE
+#usr/lib/locale/my_MM/LC_IDENTIFICATION
+#usr/lib/locale/my_MM/LC_MEASUREMENT
+#usr/lib/locale/my_MM/LC_MESSAGES
+#usr/lib/locale/my_MM/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/my_MM/LC_MONETARY
+#usr/lib/locale/my_MM/LC_NAME
+#usr/lib/locale/my_MM/LC_NUMERIC
+#usr/lib/locale/my_MM/LC_PAPER
+#usr/lib/locale/my_MM/LC_TELEPHONE
+#usr/lib/locale/my_MM/LC_TIME
+#usr/lib/locale/nan_TW@latin
+#usr/lib/locale/nan_TW@latin/LC_ADDRESS
+#usr/lib/locale/nan_TW@latin/LC_COLLATE
+#usr/lib/locale/nan_TW@latin/LC_CTYPE
+#usr/lib/locale/nan_TW@latin/LC_IDENTIFICATION
+#usr/lib/locale/nan_TW@latin/LC_MEASUREMENT
+#usr/lib/locale/nan_TW@latin/LC_MESSAGES
+#usr/lib/locale/nan_TW@latin/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nan_TW@latin/LC_MONETARY
+#usr/lib/locale/nan_TW@latin/LC_NAME
+#usr/lib/locale/nan_TW@latin/LC_NUMERIC
+#usr/lib/locale/nan_TW@latin/LC_PAPER
+#usr/lib/locale/nan_TW@latin/LC_TELEPHONE
+#usr/lib/locale/nan_TW@latin/LC_TIME
+#usr/lib/locale/nb_NO
+#usr/lib/locale/nb_NO.utf8
+#usr/lib/locale/nb_NO.utf8/LC_ADDRESS
+#usr/lib/locale/nb_NO.utf8/LC_COLLATE
+#usr/lib/locale/nb_NO.utf8/LC_CTYPE
+#usr/lib/locale/nb_NO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/nb_NO.utf8/LC_MEASUREMENT
+#usr/lib/locale/nb_NO.utf8/LC_MESSAGES
+#usr/lib/locale/nb_NO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nb_NO.utf8/LC_MONETARY
+#usr/lib/locale/nb_NO.utf8/LC_NAME
+#usr/lib/locale/nb_NO.utf8/LC_NUMERIC
+#usr/lib/locale/nb_NO.utf8/LC_PAPER
+#usr/lib/locale/nb_NO.utf8/LC_TELEPHONE
+#usr/lib/locale/nb_NO.utf8/LC_TIME
+#usr/lib/locale/nb_NO/LC_ADDRESS
+#usr/lib/locale/nb_NO/LC_COLLATE
+#usr/lib/locale/nb_NO/LC_CTYPE
+#usr/lib/locale/nb_NO/LC_IDENTIFICATION
+#usr/lib/locale/nb_NO/LC_MEASUREMENT
+#usr/lib/locale/nb_NO/LC_MESSAGES
+#usr/lib/locale/nb_NO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nb_NO/LC_MONETARY
+#usr/lib/locale/nb_NO/LC_NAME
+#usr/lib/locale/nb_NO/LC_NUMERIC
+#usr/lib/locale/nb_NO/LC_PAPER
+#usr/lib/locale/nb_NO/LC_TELEPHONE
+#usr/lib/locale/nb_NO/LC_TIME
+#usr/lib/locale/nds_DE
+#usr/lib/locale/nds_DE/LC_ADDRESS
+#usr/lib/locale/nds_DE/LC_COLLATE
+#usr/lib/locale/nds_DE/LC_CTYPE
+#usr/lib/locale/nds_DE/LC_IDENTIFICATION
+#usr/lib/locale/nds_DE/LC_MEASUREMENT
+#usr/lib/locale/nds_DE/LC_MESSAGES
+#usr/lib/locale/nds_DE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nds_DE/LC_MONETARY
+#usr/lib/locale/nds_DE/LC_NAME
+#usr/lib/locale/nds_DE/LC_NUMERIC
+#usr/lib/locale/nds_DE/LC_PAPER
+#usr/lib/locale/nds_DE/LC_TELEPHONE
+#usr/lib/locale/nds_DE/LC_TIME
+#usr/lib/locale/nds_NL
+#usr/lib/locale/nds_NL/LC_ADDRESS
+#usr/lib/locale/nds_NL/LC_COLLATE
+#usr/lib/locale/nds_NL/LC_CTYPE
+#usr/lib/locale/nds_NL/LC_IDENTIFICATION
+#usr/lib/locale/nds_NL/LC_MEASUREMENT
+#usr/lib/locale/nds_NL/LC_MESSAGES
+#usr/lib/locale/nds_NL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nds_NL/LC_MONETARY
+#usr/lib/locale/nds_NL/LC_NAME
+#usr/lib/locale/nds_NL/LC_NUMERIC
+#usr/lib/locale/nds_NL/LC_PAPER
+#usr/lib/locale/nds_NL/LC_TELEPHONE
+#usr/lib/locale/nds_NL/LC_TIME
+#usr/lib/locale/ne_NP
+#usr/lib/locale/ne_NP/LC_ADDRESS
+#usr/lib/locale/ne_NP/LC_COLLATE
+#usr/lib/locale/ne_NP/LC_CTYPE
+#usr/lib/locale/ne_NP/LC_IDENTIFICATION
+#usr/lib/locale/ne_NP/LC_MEASUREMENT
+#usr/lib/locale/ne_NP/LC_MESSAGES
+#usr/lib/locale/ne_NP/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ne_NP/LC_MONETARY
+#usr/lib/locale/ne_NP/LC_NAME
+#usr/lib/locale/ne_NP/LC_NUMERIC
+#usr/lib/locale/ne_NP/LC_PAPER
+#usr/lib/locale/ne_NP/LC_TELEPHONE
+#usr/lib/locale/ne_NP/LC_TIME
+#usr/lib/locale/nl_AW
+#usr/lib/locale/nl_AW/LC_ADDRESS
+#usr/lib/locale/nl_AW/LC_COLLATE
+#usr/lib/locale/nl_AW/LC_CTYPE
+#usr/lib/locale/nl_AW/LC_IDENTIFICATION
+#usr/lib/locale/nl_AW/LC_MEASUREMENT
+#usr/lib/locale/nl_AW/LC_MESSAGES
+#usr/lib/locale/nl_AW/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nl_AW/LC_MONETARY
+#usr/lib/locale/nl_AW/LC_NAME
+#usr/lib/locale/nl_AW/LC_NUMERIC
+#usr/lib/locale/nl_AW/LC_PAPER
+#usr/lib/locale/nl_AW/LC_TELEPHONE
+#usr/lib/locale/nl_AW/LC_TIME
+#usr/lib/locale/nl_BE
+#usr/lib/locale/nl_BE.utf8
+#usr/lib/locale/nl_BE.utf8/LC_ADDRESS
+#usr/lib/locale/nl_BE.utf8/LC_COLLATE
+#usr/lib/locale/nl_BE.utf8/LC_CTYPE
+#usr/lib/locale/nl_BE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/nl_BE.utf8/LC_MEASUREMENT
+#usr/lib/locale/nl_BE.utf8/LC_MESSAGES
+#usr/lib/locale/nl_BE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nl_BE.utf8/LC_MONETARY
+#usr/lib/locale/nl_BE.utf8/LC_NAME
+#usr/lib/locale/nl_BE.utf8/LC_NUMERIC
+#usr/lib/locale/nl_BE.utf8/LC_PAPER
+#usr/lib/locale/nl_BE.utf8/LC_TELEPHONE
+#usr/lib/locale/nl_BE.utf8/LC_TIME
+#usr/lib/locale/nl_BE/LC_ADDRESS
+#usr/lib/locale/nl_BE/LC_COLLATE
+#usr/lib/locale/nl_BE/LC_CTYPE
+#usr/lib/locale/nl_BE/LC_IDENTIFICATION
+#usr/lib/locale/nl_BE/LC_MEASUREMENT
+#usr/lib/locale/nl_BE/LC_MESSAGES
+#usr/lib/locale/nl_BE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nl_BE/LC_MONETARY
+#usr/lib/locale/nl_BE/LC_NAME
+#usr/lib/locale/nl_BE/LC_NUMERIC
+#usr/lib/locale/nl_BE/LC_PAPER
+#usr/lib/locale/nl_BE/LC_TELEPHONE
+#usr/lib/locale/nl_BE/LC_TIME
+#usr/lib/locale/nl_BE@euro
+#usr/lib/locale/nl_BE@euro/LC_ADDRESS
+#usr/lib/locale/nl_BE@euro/LC_COLLATE
+#usr/lib/locale/nl_BE@euro/LC_CTYPE
+#usr/lib/locale/nl_BE@euro/LC_IDENTIFICATION
+#usr/lib/locale/nl_BE@euro/LC_MEASUREMENT
+#usr/lib/locale/nl_BE@euro/LC_MESSAGES
+#usr/lib/locale/nl_BE@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nl_BE@euro/LC_MONETARY
+#usr/lib/locale/nl_BE@euro/LC_NAME
+#usr/lib/locale/nl_BE@euro/LC_NUMERIC
+#usr/lib/locale/nl_BE@euro/LC_PAPER
+#usr/lib/locale/nl_BE@euro/LC_TELEPHONE
+#usr/lib/locale/nl_BE@euro/LC_TIME
+#usr/lib/locale/nl_NL
+#usr/lib/locale/nl_NL.utf8
+#usr/lib/locale/nl_NL.utf8/LC_ADDRESS
+#usr/lib/locale/nl_NL.utf8/LC_COLLATE
+#usr/lib/locale/nl_NL.utf8/LC_CTYPE
+#usr/lib/locale/nl_NL.utf8/LC_IDENTIFICATION
+#usr/lib/locale/nl_NL.utf8/LC_MEASUREMENT
+#usr/lib/locale/nl_NL.utf8/LC_MESSAGES
+#usr/lib/locale/nl_NL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nl_NL.utf8/LC_MONETARY
+#usr/lib/locale/nl_NL.utf8/LC_NAME
+#usr/lib/locale/nl_NL.utf8/LC_NUMERIC
+#usr/lib/locale/nl_NL.utf8/LC_PAPER
+#usr/lib/locale/nl_NL.utf8/LC_TELEPHONE
+#usr/lib/locale/nl_NL.utf8/LC_TIME
+#usr/lib/locale/nl_NL/LC_ADDRESS
+#usr/lib/locale/nl_NL/LC_COLLATE
+#usr/lib/locale/nl_NL/LC_CTYPE
+#usr/lib/locale/nl_NL/LC_IDENTIFICATION
+#usr/lib/locale/nl_NL/LC_MEASUREMENT
+#usr/lib/locale/nl_NL/LC_MESSAGES
+#usr/lib/locale/nl_NL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nl_NL/LC_MONETARY
+#usr/lib/locale/nl_NL/LC_NAME
+#usr/lib/locale/nl_NL/LC_NUMERIC
+#usr/lib/locale/nl_NL/LC_PAPER
+#usr/lib/locale/nl_NL/LC_TELEPHONE
+#usr/lib/locale/nl_NL/LC_TIME
+#usr/lib/locale/nl_NL@euro
+#usr/lib/locale/nl_NL@euro/LC_ADDRESS
+#usr/lib/locale/nl_NL@euro/LC_COLLATE
+#usr/lib/locale/nl_NL@euro/LC_CTYPE
+#usr/lib/locale/nl_NL@euro/LC_IDENTIFICATION
+#usr/lib/locale/nl_NL@euro/LC_MEASUREMENT
+#usr/lib/locale/nl_NL@euro/LC_MESSAGES
+#usr/lib/locale/nl_NL@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nl_NL@euro/LC_MONETARY
+#usr/lib/locale/nl_NL@euro/LC_NAME
+#usr/lib/locale/nl_NL@euro/LC_NUMERIC
+#usr/lib/locale/nl_NL@euro/LC_PAPER
+#usr/lib/locale/nl_NL@euro/LC_TELEPHONE
+#usr/lib/locale/nl_NL@euro/LC_TIME
+#usr/lib/locale/nn_NO
+#usr/lib/locale/nn_NO.utf8
+#usr/lib/locale/nn_NO.utf8/LC_ADDRESS
+#usr/lib/locale/nn_NO.utf8/LC_COLLATE
+#usr/lib/locale/nn_NO.utf8/LC_CTYPE
+#usr/lib/locale/nn_NO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/nn_NO.utf8/LC_MEASUREMENT
+#usr/lib/locale/nn_NO.utf8/LC_MESSAGES
+#usr/lib/locale/nn_NO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nn_NO.utf8/LC_MONETARY
+#usr/lib/locale/nn_NO.utf8/LC_NAME
+#usr/lib/locale/nn_NO.utf8/LC_NUMERIC
+#usr/lib/locale/nn_NO.utf8/LC_PAPER
+#usr/lib/locale/nn_NO.utf8/LC_TELEPHONE
+#usr/lib/locale/nn_NO.utf8/LC_TIME
+#usr/lib/locale/nn_NO/LC_ADDRESS
+#usr/lib/locale/nn_NO/LC_COLLATE
+#usr/lib/locale/nn_NO/LC_CTYPE
+#usr/lib/locale/nn_NO/LC_IDENTIFICATION
+#usr/lib/locale/nn_NO/LC_MEASUREMENT
+#usr/lib/locale/nn_NO/LC_MESSAGES
+#usr/lib/locale/nn_NO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nn_NO/LC_MONETARY
+#usr/lib/locale/nn_NO/LC_NAME
+#usr/lib/locale/nn_NO/LC_NUMERIC
+#usr/lib/locale/nn_NO/LC_PAPER
+#usr/lib/locale/nn_NO/LC_TELEPHONE
+#usr/lib/locale/nn_NO/LC_TIME
+#usr/lib/locale/no_NO
+#usr/lib/locale/no_NO.utf8
+#usr/lib/locale/no_NO.utf8/LC_ADDRESS
+#usr/lib/locale/no_NO.utf8/LC_COLLATE
+#usr/lib/locale/no_NO.utf8/LC_CTYPE
+#usr/lib/locale/no_NO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/no_NO.utf8/LC_MEASUREMENT
+#usr/lib/locale/no_NO.utf8/LC_MESSAGES
+#usr/lib/locale/no_NO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/no_NO.utf8/LC_MONETARY
+#usr/lib/locale/no_NO.utf8/LC_NAME
+#usr/lib/locale/no_NO.utf8/LC_NUMERIC
+#usr/lib/locale/no_NO.utf8/LC_PAPER
+#usr/lib/locale/no_NO.utf8/LC_TELEPHONE
+#usr/lib/locale/no_NO.utf8/LC_TIME
+#usr/lib/locale/no_NO/LC_ADDRESS
+#usr/lib/locale/no_NO/LC_COLLATE
+#usr/lib/locale/no_NO/LC_CTYPE
+#usr/lib/locale/no_NO/LC_IDENTIFICATION
+#usr/lib/locale/no_NO/LC_MEASUREMENT
+#usr/lib/locale/no_NO/LC_MESSAGES
+#usr/lib/locale/no_NO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/no_NO/LC_MONETARY
+#usr/lib/locale/no_NO/LC_NAME
+#usr/lib/locale/no_NO/LC_NUMERIC
+#usr/lib/locale/no_NO/LC_PAPER
+#usr/lib/locale/no_NO/LC_TELEPHONE
+#usr/lib/locale/no_NO/LC_TIME
+#usr/lib/locale/nr_ZA
+#usr/lib/locale/nr_ZA/LC_ADDRESS
+#usr/lib/locale/nr_ZA/LC_COLLATE
+#usr/lib/locale/nr_ZA/LC_CTYPE
+#usr/lib/locale/nr_ZA/LC_IDENTIFICATION
+#usr/lib/locale/nr_ZA/LC_MEASUREMENT
+#usr/lib/locale/nr_ZA/LC_MESSAGES
+#usr/lib/locale/nr_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nr_ZA/LC_MONETARY
+#usr/lib/locale/nr_ZA/LC_NAME
+#usr/lib/locale/nr_ZA/LC_NUMERIC
+#usr/lib/locale/nr_ZA/LC_PAPER
+#usr/lib/locale/nr_ZA/LC_TELEPHONE
+#usr/lib/locale/nr_ZA/LC_TIME
+#usr/lib/locale/nso_ZA
+#usr/lib/locale/nso_ZA/LC_ADDRESS
+#usr/lib/locale/nso_ZA/LC_COLLATE
+#usr/lib/locale/nso_ZA/LC_CTYPE
+#usr/lib/locale/nso_ZA/LC_IDENTIFICATION
+#usr/lib/locale/nso_ZA/LC_MEASUREMENT
+#usr/lib/locale/nso_ZA/LC_MESSAGES
+#usr/lib/locale/nso_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/nso_ZA/LC_MONETARY
+#usr/lib/locale/nso_ZA/LC_NAME
+#usr/lib/locale/nso_ZA/LC_NUMERIC
+#usr/lib/locale/nso_ZA/LC_PAPER
+#usr/lib/locale/nso_ZA/LC_TELEPHONE
+#usr/lib/locale/nso_ZA/LC_TIME
+#usr/lib/locale/oc_FR
+#usr/lib/locale/oc_FR.utf8
+#usr/lib/locale/oc_FR.utf8/LC_ADDRESS
+#usr/lib/locale/oc_FR.utf8/LC_COLLATE
+#usr/lib/locale/oc_FR.utf8/LC_CTYPE
+#usr/lib/locale/oc_FR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/oc_FR.utf8/LC_MEASUREMENT
+#usr/lib/locale/oc_FR.utf8/LC_MESSAGES
+#usr/lib/locale/oc_FR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/oc_FR.utf8/LC_MONETARY
+#usr/lib/locale/oc_FR.utf8/LC_NAME
+#usr/lib/locale/oc_FR.utf8/LC_NUMERIC
+#usr/lib/locale/oc_FR.utf8/LC_PAPER
+#usr/lib/locale/oc_FR.utf8/LC_TELEPHONE
+#usr/lib/locale/oc_FR.utf8/LC_TIME
+#usr/lib/locale/oc_FR/LC_ADDRESS
+#usr/lib/locale/oc_FR/LC_COLLATE
+#usr/lib/locale/oc_FR/LC_CTYPE
+#usr/lib/locale/oc_FR/LC_IDENTIFICATION
+#usr/lib/locale/oc_FR/LC_MEASUREMENT
+#usr/lib/locale/oc_FR/LC_MESSAGES
+#usr/lib/locale/oc_FR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/oc_FR/LC_MONETARY
+#usr/lib/locale/oc_FR/LC_NAME
+#usr/lib/locale/oc_FR/LC_NUMERIC
+#usr/lib/locale/oc_FR/LC_PAPER
+#usr/lib/locale/oc_FR/LC_TELEPHONE
+#usr/lib/locale/oc_FR/LC_TIME
+#usr/lib/locale/om_ET
+#usr/lib/locale/om_ET/LC_ADDRESS
+#usr/lib/locale/om_ET/LC_COLLATE
+#usr/lib/locale/om_ET/LC_CTYPE
+#usr/lib/locale/om_ET/LC_IDENTIFICATION
+#usr/lib/locale/om_ET/LC_MEASUREMENT
+#usr/lib/locale/om_ET/LC_MESSAGES
+#usr/lib/locale/om_ET/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/om_ET/LC_MONETARY
+#usr/lib/locale/om_ET/LC_NAME
+#usr/lib/locale/om_ET/LC_NUMERIC
+#usr/lib/locale/om_ET/LC_PAPER
+#usr/lib/locale/om_ET/LC_TELEPHONE
+#usr/lib/locale/om_ET/LC_TIME
+#usr/lib/locale/om_KE
+#usr/lib/locale/om_KE.utf8
+#usr/lib/locale/om_KE.utf8/LC_ADDRESS
+#usr/lib/locale/om_KE.utf8/LC_COLLATE
+#usr/lib/locale/om_KE.utf8/LC_CTYPE
+#usr/lib/locale/om_KE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/om_KE.utf8/LC_MEASUREMENT
+#usr/lib/locale/om_KE.utf8/LC_MESSAGES
+#usr/lib/locale/om_KE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/om_KE.utf8/LC_MONETARY
+#usr/lib/locale/om_KE.utf8/LC_NAME
+#usr/lib/locale/om_KE.utf8/LC_NUMERIC
+#usr/lib/locale/om_KE.utf8/LC_PAPER
+#usr/lib/locale/om_KE.utf8/LC_TELEPHONE
+#usr/lib/locale/om_KE.utf8/LC_TIME
+#usr/lib/locale/om_KE/LC_ADDRESS
+#usr/lib/locale/om_KE/LC_COLLATE
+#usr/lib/locale/om_KE/LC_CTYPE
+#usr/lib/locale/om_KE/LC_IDENTIFICATION
+#usr/lib/locale/om_KE/LC_MEASUREMENT
+#usr/lib/locale/om_KE/LC_MESSAGES
+#usr/lib/locale/om_KE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/om_KE/LC_MONETARY
+#usr/lib/locale/om_KE/LC_NAME
+#usr/lib/locale/om_KE/LC_NUMERIC
+#usr/lib/locale/om_KE/LC_PAPER
+#usr/lib/locale/om_KE/LC_TELEPHONE
+#usr/lib/locale/om_KE/LC_TIME
+#usr/lib/locale/or_IN
+#usr/lib/locale/or_IN/LC_ADDRESS
+#usr/lib/locale/or_IN/LC_COLLATE
+#usr/lib/locale/or_IN/LC_CTYPE
+#usr/lib/locale/or_IN/LC_IDENTIFICATION
+#usr/lib/locale/or_IN/LC_MEASUREMENT
+#usr/lib/locale/or_IN/LC_MESSAGES
+#usr/lib/locale/or_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/or_IN/LC_MONETARY
+#usr/lib/locale/or_IN/LC_NAME
+#usr/lib/locale/or_IN/LC_NUMERIC
+#usr/lib/locale/or_IN/LC_PAPER
+#usr/lib/locale/or_IN/LC_TELEPHONE
+#usr/lib/locale/or_IN/LC_TIME
+#usr/lib/locale/pa_IN
+#usr/lib/locale/pa_IN/LC_ADDRESS
+#usr/lib/locale/pa_IN/LC_COLLATE
+#usr/lib/locale/pa_IN/LC_CTYPE
+#usr/lib/locale/pa_IN/LC_IDENTIFICATION
+#usr/lib/locale/pa_IN/LC_MEASUREMENT
+#usr/lib/locale/pa_IN/LC_MESSAGES
+#usr/lib/locale/pa_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pa_IN/LC_MONETARY
+#usr/lib/locale/pa_IN/LC_NAME
+#usr/lib/locale/pa_IN/LC_NUMERIC
+#usr/lib/locale/pa_IN/LC_PAPER
+#usr/lib/locale/pa_IN/LC_TELEPHONE
+#usr/lib/locale/pa_IN/LC_TIME
+#usr/lib/locale/pa_PK
+#usr/lib/locale/pa_PK/LC_ADDRESS
+#usr/lib/locale/pa_PK/LC_COLLATE
+#usr/lib/locale/pa_PK/LC_CTYPE
+#usr/lib/locale/pa_PK/LC_IDENTIFICATION
+#usr/lib/locale/pa_PK/LC_MEASUREMENT
+#usr/lib/locale/pa_PK/LC_MESSAGES
+#usr/lib/locale/pa_PK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pa_PK/LC_MONETARY
+#usr/lib/locale/pa_PK/LC_NAME
+#usr/lib/locale/pa_PK/LC_NUMERIC
+#usr/lib/locale/pa_PK/LC_PAPER
+#usr/lib/locale/pa_PK/LC_TELEPHONE
+#usr/lib/locale/pa_PK/LC_TIME
+#usr/lib/locale/pap_AN
+#usr/lib/locale/pap_AN/LC_ADDRESS
+#usr/lib/locale/pap_AN/LC_COLLATE
+#usr/lib/locale/pap_AN/LC_CTYPE
+#usr/lib/locale/pap_AN/LC_IDENTIFICATION
+#usr/lib/locale/pap_AN/LC_MEASUREMENT
+#usr/lib/locale/pap_AN/LC_MESSAGES
+#usr/lib/locale/pap_AN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pap_AN/LC_MONETARY
+#usr/lib/locale/pap_AN/LC_NAME
+#usr/lib/locale/pap_AN/LC_NUMERIC
+#usr/lib/locale/pap_AN/LC_PAPER
+#usr/lib/locale/pap_AN/LC_TELEPHONE
+#usr/lib/locale/pap_AN/LC_TIME
+#usr/lib/locale/pl_PL
+#usr/lib/locale/pl_PL.utf8
+#usr/lib/locale/pl_PL.utf8/LC_ADDRESS
+#usr/lib/locale/pl_PL.utf8/LC_COLLATE
+#usr/lib/locale/pl_PL.utf8/LC_CTYPE
+#usr/lib/locale/pl_PL.utf8/LC_IDENTIFICATION
+#usr/lib/locale/pl_PL.utf8/LC_MEASUREMENT
+#usr/lib/locale/pl_PL.utf8/LC_MESSAGES
+#usr/lib/locale/pl_PL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pl_PL.utf8/LC_MONETARY
+#usr/lib/locale/pl_PL.utf8/LC_NAME
+#usr/lib/locale/pl_PL.utf8/LC_NUMERIC
+#usr/lib/locale/pl_PL.utf8/LC_PAPER
+#usr/lib/locale/pl_PL.utf8/LC_TELEPHONE
+#usr/lib/locale/pl_PL.utf8/LC_TIME
+#usr/lib/locale/pl_PL/LC_ADDRESS
+#usr/lib/locale/pl_PL/LC_COLLATE
+#usr/lib/locale/pl_PL/LC_CTYPE
+#usr/lib/locale/pl_PL/LC_IDENTIFICATION
+#usr/lib/locale/pl_PL/LC_MEASUREMENT
+#usr/lib/locale/pl_PL/LC_MESSAGES
+#usr/lib/locale/pl_PL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pl_PL/LC_MONETARY
+#usr/lib/locale/pl_PL/LC_NAME
+#usr/lib/locale/pl_PL/LC_NUMERIC
+#usr/lib/locale/pl_PL/LC_PAPER
+#usr/lib/locale/pl_PL/LC_TELEPHONE
+#usr/lib/locale/pl_PL/LC_TIME
+#usr/lib/locale/ps_AF
+#usr/lib/locale/ps_AF/LC_ADDRESS
+#usr/lib/locale/ps_AF/LC_COLLATE
+#usr/lib/locale/ps_AF/LC_CTYPE
+#usr/lib/locale/ps_AF/LC_IDENTIFICATION
+#usr/lib/locale/ps_AF/LC_MEASUREMENT
+#usr/lib/locale/ps_AF/LC_MESSAGES
+#usr/lib/locale/ps_AF/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ps_AF/LC_MONETARY
+#usr/lib/locale/ps_AF/LC_NAME
+#usr/lib/locale/ps_AF/LC_NUMERIC
+#usr/lib/locale/ps_AF/LC_PAPER
+#usr/lib/locale/ps_AF/LC_TELEPHONE
+#usr/lib/locale/ps_AF/LC_TIME
+#usr/lib/locale/pt_BR
+#usr/lib/locale/pt_BR.utf8
+#usr/lib/locale/pt_BR.utf8/LC_ADDRESS
+#usr/lib/locale/pt_BR.utf8/LC_COLLATE
+#usr/lib/locale/pt_BR.utf8/LC_CTYPE
+#usr/lib/locale/pt_BR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/pt_BR.utf8/LC_MEASUREMENT
+#usr/lib/locale/pt_BR.utf8/LC_MESSAGES
+#usr/lib/locale/pt_BR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pt_BR.utf8/LC_MONETARY
+#usr/lib/locale/pt_BR.utf8/LC_NAME
+#usr/lib/locale/pt_BR.utf8/LC_NUMERIC
+#usr/lib/locale/pt_BR.utf8/LC_PAPER
+#usr/lib/locale/pt_BR.utf8/LC_TELEPHONE
+#usr/lib/locale/pt_BR.utf8/LC_TIME
+#usr/lib/locale/pt_BR/LC_ADDRESS
+#usr/lib/locale/pt_BR/LC_COLLATE
+#usr/lib/locale/pt_BR/LC_CTYPE
+#usr/lib/locale/pt_BR/LC_IDENTIFICATION
+#usr/lib/locale/pt_BR/LC_MEASUREMENT
+#usr/lib/locale/pt_BR/LC_MESSAGES
+#usr/lib/locale/pt_BR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pt_BR/LC_MONETARY
+#usr/lib/locale/pt_BR/LC_NAME
+#usr/lib/locale/pt_BR/LC_NUMERIC
+#usr/lib/locale/pt_BR/LC_PAPER
+#usr/lib/locale/pt_BR/LC_TELEPHONE
+#usr/lib/locale/pt_BR/LC_TIME
+#usr/lib/locale/pt_PT
+#usr/lib/locale/pt_PT.utf8
+#usr/lib/locale/pt_PT.utf8/LC_ADDRESS
+#usr/lib/locale/pt_PT.utf8/LC_COLLATE
+#usr/lib/locale/pt_PT.utf8/LC_CTYPE
+#usr/lib/locale/pt_PT.utf8/LC_IDENTIFICATION
+#usr/lib/locale/pt_PT.utf8/LC_MEASUREMENT
+#usr/lib/locale/pt_PT.utf8/LC_MESSAGES
+#usr/lib/locale/pt_PT.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pt_PT.utf8/LC_MONETARY
+#usr/lib/locale/pt_PT.utf8/LC_NAME
+#usr/lib/locale/pt_PT.utf8/LC_NUMERIC
+#usr/lib/locale/pt_PT.utf8/LC_PAPER
+#usr/lib/locale/pt_PT.utf8/LC_TELEPHONE
+#usr/lib/locale/pt_PT.utf8/LC_TIME
+#usr/lib/locale/pt_PT/LC_ADDRESS
+#usr/lib/locale/pt_PT/LC_COLLATE
+#usr/lib/locale/pt_PT/LC_CTYPE
+#usr/lib/locale/pt_PT/LC_IDENTIFICATION
+#usr/lib/locale/pt_PT/LC_MEASUREMENT
+#usr/lib/locale/pt_PT/LC_MESSAGES
+#usr/lib/locale/pt_PT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pt_PT/LC_MONETARY
+#usr/lib/locale/pt_PT/LC_NAME
+#usr/lib/locale/pt_PT/LC_NUMERIC
+#usr/lib/locale/pt_PT/LC_PAPER
+#usr/lib/locale/pt_PT/LC_TELEPHONE
+#usr/lib/locale/pt_PT/LC_TIME
+#usr/lib/locale/pt_PT@euro
+#usr/lib/locale/pt_PT@euro/LC_ADDRESS
+#usr/lib/locale/pt_PT@euro/LC_COLLATE
+#usr/lib/locale/pt_PT@euro/LC_CTYPE
+#usr/lib/locale/pt_PT@euro/LC_IDENTIFICATION
+#usr/lib/locale/pt_PT@euro/LC_MEASUREMENT
+#usr/lib/locale/pt_PT@euro/LC_MESSAGES
+#usr/lib/locale/pt_PT@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/pt_PT@euro/LC_MONETARY
+#usr/lib/locale/pt_PT@euro/LC_NAME
+#usr/lib/locale/pt_PT@euro/LC_NUMERIC
+#usr/lib/locale/pt_PT@euro/LC_PAPER
+#usr/lib/locale/pt_PT@euro/LC_TELEPHONE
+#usr/lib/locale/pt_PT@euro/LC_TIME
+#usr/lib/locale/ro_RO
+#usr/lib/locale/ro_RO.utf8
+#usr/lib/locale/ro_RO.utf8/LC_ADDRESS
+#usr/lib/locale/ro_RO.utf8/LC_COLLATE
+#usr/lib/locale/ro_RO.utf8/LC_CTYPE
+#usr/lib/locale/ro_RO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ro_RO.utf8/LC_MEASUREMENT
+#usr/lib/locale/ro_RO.utf8/LC_MESSAGES
+#usr/lib/locale/ro_RO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ro_RO.utf8/LC_MONETARY
+#usr/lib/locale/ro_RO.utf8/LC_NAME
+#usr/lib/locale/ro_RO.utf8/LC_NUMERIC
+#usr/lib/locale/ro_RO.utf8/LC_PAPER
+#usr/lib/locale/ro_RO.utf8/LC_TELEPHONE
+#usr/lib/locale/ro_RO.utf8/LC_TIME
+#usr/lib/locale/ro_RO/LC_ADDRESS
+#usr/lib/locale/ro_RO/LC_COLLATE
+#usr/lib/locale/ro_RO/LC_CTYPE
+#usr/lib/locale/ro_RO/LC_IDENTIFICATION
+#usr/lib/locale/ro_RO/LC_MEASUREMENT
+#usr/lib/locale/ro_RO/LC_MESSAGES
+#usr/lib/locale/ro_RO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ro_RO/LC_MONETARY
+#usr/lib/locale/ro_RO/LC_NAME
+#usr/lib/locale/ro_RO/LC_NUMERIC
+#usr/lib/locale/ro_RO/LC_PAPER
+#usr/lib/locale/ro_RO/LC_TELEPHONE
+#usr/lib/locale/ro_RO/LC_TIME
+#usr/lib/locale/ru_RU
+#usr/lib/locale/ru_RU.koi8r
+#usr/lib/locale/ru_RU.koi8r/LC_ADDRESS
+#usr/lib/locale/ru_RU.koi8r/LC_COLLATE
+#usr/lib/locale/ru_RU.koi8r/LC_CTYPE
+#usr/lib/locale/ru_RU.koi8r/LC_IDENTIFICATION
+#usr/lib/locale/ru_RU.koi8r/LC_MEASUREMENT
+#usr/lib/locale/ru_RU.koi8r/LC_MESSAGES
+#usr/lib/locale/ru_RU.koi8r/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ru_RU.koi8r/LC_MONETARY
+#usr/lib/locale/ru_RU.koi8r/LC_NAME
+#usr/lib/locale/ru_RU.koi8r/LC_NUMERIC
+#usr/lib/locale/ru_RU.koi8r/LC_PAPER
+#usr/lib/locale/ru_RU.koi8r/LC_TELEPHONE
+#usr/lib/locale/ru_RU.koi8r/LC_TIME
+#usr/lib/locale/ru_RU.utf8
+#usr/lib/locale/ru_RU.utf8/LC_ADDRESS
+#usr/lib/locale/ru_RU.utf8/LC_COLLATE
+#usr/lib/locale/ru_RU.utf8/LC_CTYPE
+#usr/lib/locale/ru_RU.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ru_RU.utf8/LC_MEASUREMENT
+#usr/lib/locale/ru_RU.utf8/LC_MESSAGES
+#usr/lib/locale/ru_RU.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ru_RU.utf8/LC_MONETARY
+#usr/lib/locale/ru_RU.utf8/LC_NAME
+#usr/lib/locale/ru_RU.utf8/LC_NUMERIC
+#usr/lib/locale/ru_RU.utf8/LC_PAPER
+#usr/lib/locale/ru_RU.utf8/LC_TELEPHONE
+#usr/lib/locale/ru_RU.utf8/LC_TIME
+#usr/lib/locale/ru_RU/LC_ADDRESS
+#usr/lib/locale/ru_RU/LC_COLLATE
+#usr/lib/locale/ru_RU/LC_CTYPE
+#usr/lib/locale/ru_RU/LC_IDENTIFICATION
+#usr/lib/locale/ru_RU/LC_MEASUREMENT
+#usr/lib/locale/ru_RU/LC_MESSAGES
+#usr/lib/locale/ru_RU/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ru_RU/LC_MONETARY
+#usr/lib/locale/ru_RU/LC_NAME
+#usr/lib/locale/ru_RU/LC_NUMERIC
+#usr/lib/locale/ru_RU/LC_PAPER
+#usr/lib/locale/ru_RU/LC_TELEPHONE
+#usr/lib/locale/ru_RU/LC_TIME
+#usr/lib/locale/ru_UA
+#usr/lib/locale/ru_UA.utf8
+#usr/lib/locale/ru_UA.utf8/LC_ADDRESS
+#usr/lib/locale/ru_UA.utf8/LC_COLLATE
+#usr/lib/locale/ru_UA.utf8/LC_CTYPE
+#usr/lib/locale/ru_UA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/ru_UA.utf8/LC_MEASUREMENT
+#usr/lib/locale/ru_UA.utf8/LC_MESSAGES
+#usr/lib/locale/ru_UA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ru_UA.utf8/LC_MONETARY
+#usr/lib/locale/ru_UA.utf8/LC_NAME
+#usr/lib/locale/ru_UA.utf8/LC_NUMERIC
+#usr/lib/locale/ru_UA.utf8/LC_PAPER
+#usr/lib/locale/ru_UA.utf8/LC_TELEPHONE
+#usr/lib/locale/ru_UA.utf8/LC_TIME
+#usr/lib/locale/ru_UA/LC_ADDRESS
+#usr/lib/locale/ru_UA/LC_COLLATE
+#usr/lib/locale/ru_UA/LC_CTYPE
+#usr/lib/locale/ru_UA/LC_IDENTIFICATION
+#usr/lib/locale/ru_UA/LC_MEASUREMENT
+#usr/lib/locale/ru_UA/LC_MESSAGES
+#usr/lib/locale/ru_UA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ru_UA/LC_MONETARY
+#usr/lib/locale/ru_UA/LC_NAME
+#usr/lib/locale/ru_UA/LC_NUMERIC
+#usr/lib/locale/ru_UA/LC_PAPER
+#usr/lib/locale/ru_UA/LC_TELEPHONE
+#usr/lib/locale/ru_UA/LC_TIME
+#usr/lib/locale/rw_RW
+#usr/lib/locale/rw_RW/LC_ADDRESS
+#usr/lib/locale/rw_RW/LC_COLLATE
+#usr/lib/locale/rw_RW/LC_CTYPE
+#usr/lib/locale/rw_RW/LC_IDENTIFICATION
+#usr/lib/locale/rw_RW/LC_MEASUREMENT
+#usr/lib/locale/rw_RW/LC_MESSAGES
+#usr/lib/locale/rw_RW/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/rw_RW/LC_MONETARY
+#usr/lib/locale/rw_RW/LC_NAME
+#usr/lib/locale/rw_RW/LC_NUMERIC
+#usr/lib/locale/rw_RW/LC_PAPER
+#usr/lib/locale/rw_RW/LC_TELEPHONE
+#usr/lib/locale/rw_RW/LC_TIME
+#usr/lib/locale/sa_IN
+#usr/lib/locale/sa_IN/LC_ADDRESS
+#usr/lib/locale/sa_IN/LC_COLLATE
+#usr/lib/locale/sa_IN/LC_CTYPE
+#usr/lib/locale/sa_IN/LC_IDENTIFICATION
+#usr/lib/locale/sa_IN/LC_MEASUREMENT
+#usr/lib/locale/sa_IN/LC_MESSAGES
+#usr/lib/locale/sa_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sa_IN/LC_MONETARY
+#usr/lib/locale/sa_IN/LC_NAME
+#usr/lib/locale/sa_IN/LC_NUMERIC
+#usr/lib/locale/sa_IN/LC_PAPER
+#usr/lib/locale/sa_IN/LC_TELEPHONE
+#usr/lib/locale/sa_IN/LC_TIME
+#usr/lib/locale/sc_IT
+#usr/lib/locale/sc_IT/LC_ADDRESS
+#usr/lib/locale/sc_IT/LC_COLLATE
+#usr/lib/locale/sc_IT/LC_CTYPE
+#usr/lib/locale/sc_IT/LC_IDENTIFICATION
+#usr/lib/locale/sc_IT/LC_MEASUREMENT
+#usr/lib/locale/sc_IT/LC_MESSAGES
+#usr/lib/locale/sc_IT/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sc_IT/LC_MONETARY
+#usr/lib/locale/sc_IT/LC_NAME
+#usr/lib/locale/sc_IT/LC_NUMERIC
+#usr/lib/locale/sc_IT/LC_PAPER
+#usr/lib/locale/sc_IT/LC_TELEPHONE
+#usr/lib/locale/sc_IT/LC_TIME
+#usr/lib/locale/sd_IN
+#usr/lib/locale/sd_IN/LC_ADDRESS
+#usr/lib/locale/sd_IN/LC_COLLATE
+#usr/lib/locale/sd_IN/LC_CTYPE
+#usr/lib/locale/sd_IN/LC_IDENTIFICATION
+#usr/lib/locale/sd_IN/LC_MEASUREMENT
+#usr/lib/locale/sd_IN/LC_MESSAGES
+#usr/lib/locale/sd_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sd_IN/LC_MONETARY
+#usr/lib/locale/sd_IN/LC_NAME
+#usr/lib/locale/sd_IN/LC_NUMERIC
+#usr/lib/locale/sd_IN/LC_PAPER
+#usr/lib/locale/sd_IN/LC_TELEPHONE
+#usr/lib/locale/sd_IN/LC_TIME
+#usr/lib/locale/sd_IN@devanagari
+#usr/lib/locale/sd_IN@devanagari/LC_ADDRESS
+#usr/lib/locale/sd_IN@devanagari/LC_COLLATE
+#usr/lib/locale/sd_IN@devanagari/LC_CTYPE
+#usr/lib/locale/sd_IN@devanagari/LC_IDENTIFICATION
+#usr/lib/locale/sd_IN@devanagari/LC_MEASUREMENT
+#usr/lib/locale/sd_IN@devanagari/LC_MESSAGES
+#usr/lib/locale/sd_IN@devanagari/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sd_IN@devanagari/LC_MONETARY
+#usr/lib/locale/sd_IN@devanagari/LC_NAME
+#usr/lib/locale/sd_IN@devanagari/LC_NUMERIC
+#usr/lib/locale/sd_IN@devanagari/LC_PAPER
+#usr/lib/locale/sd_IN@devanagari/LC_TELEPHONE
+#usr/lib/locale/sd_IN@devanagari/LC_TIME
+#usr/lib/locale/se_NO
+#usr/lib/locale/se_NO/LC_ADDRESS
+#usr/lib/locale/se_NO/LC_COLLATE
+#usr/lib/locale/se_NO/LC_CTYPE
+#usr/lib/locale/se_NO/LC_IDENTIFICATION
+#usr/lib/locale/se_NO/LC_MEASUREMENT
+#usr/lib/locale/se_NO/LC_MESSAGES
+#usr/lib/locale/se_NO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/se_NO/LC_MONETARY
+#usr/lib/locale/se_NO/LC_NAME
+#usr/lib/locale/se_NO/LC_NUMERIC
+#usr/lib/locale/se_NO/LC_PAPER
+#usr/lib/locale/se_NO/LC_TELEPHONE
+#usr/lib/locale/se_NO/LC_TIME
+#usr/lib/locale/shs_CA
+#usr/lib/locale/shs_CA/LC_ADDRESS
+#usr/lib/locale/shs_CA/LC_COLLATE
+#usr/lib/locale/shs_CA/LC_CTYPE
+#usr/lib/locale/shs_CA/LC_IDENTIFICATION
+#usr/lib/locale/shs_CA/LC_MEASUREMENT
+#usr/lib/locale/shs_CA/LC_MESSAGES
+#usr/lib/locale/shs_CA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/shs_CA/LC_MONETARY
+#usr/lib/locale/shs_CA/LC_NAME
+#usr/lib/locale/shs_CA/LC_NUMERIC
+#usr/lib/locale/shs_CA/LC_PAPER
+#usr/lib/locale/shs_CA/LC_TELEPHONE
+#usr/lib/locale/shs_CA/LC_TIME
+#usr/lib/locale/si_LK
+#usr/lib/locale/si_LK/LC_ADDRESS
+#usr/lib/locale/si_LK/LC_COLLATE
+#usr/lib/locale/si_LK/LC_CTYPE
+#usr/lib/locale/si_LK/LC_IDENTIFICATION
+#usr/lib/locale/si_LK/LC_MEASUREMENT
+#usr/lib/locale/si_LK/LC_MESSAGES
+#usr/lib/locale/si_LK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/si_LK/LC_MONETARY
+#usr/lib/locale/si_LK/LC_NAME
+#usr/lib/locale/si_LK/LC_NUMERIC
+#usr/lib/locale/si_LK/LC_PAPER
+#usr/lib/locale/si_LK/LC_TELEPHONE
+#usr/lib/locale/si_LK/LC_TIME
+#usr/lib/locale/sid_ET
+#usr/lib/locale/sid_ET/LC_ADDRESS
+#usr/lib/locale/sid_ET/LC_COLLATE
+#usr/lib/locale/sid_ET/LC_CTYPE
+#usr/lib/locale/sid_ET/LC_IDENTIFICATION
+#usr/lib/locale/sid_ET/LC_MEASUREMENT
+#usr/lib/locale/sid_ET/LC_MESSAGES
+#usr/lib/locale/sid_ET/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sid_ET/LC_MONETARY
+#usr/lib/locale/sid_ET/LC_NAME
+#usr/lib/locale/sid_ET/LC_NUMERIC
+#usr/lib/locale/sid_ET/LC_PAPER
+#usr/lib/locale/sid_ET/LC_TELEPHONE
+#usr/lib/locale/sid_ET/LC_TIME
+#usr/lib/locale/sk_SK
+#usr/lib/locale/sk_SK.utf8
+#usr/lib/locale/sk_SK.utf8/LC_ADDRESS
+#usr/lib/locale/sk_SK.utf8/LC_COLLATE
+#usr/lib/locale/sk_SK.utf8/LC_CTYPE
+#usr/lib/locale/sk_SK.utf8/LC_IDENTIFICATION
+#usr/lib/locale/sk_SK.utf8/LC_MEASUREMENT
+#usr/lib/locale/sk_SK.utf8/LC_MESSAGES
+#usr/lib/locale/sk_SK.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sk_SK.utf8/LC_MONETARY
+#usr/lib/locale/sk_SK.utf8/LC_NAME
+#usr/lib/locale/sk_SK.utf8/LC_NUMERIC
+#usr/lib/locale/sk_SK.utf8/LC_PAPER
+#usr/lib/locale/sk_SK.utf8/LC_TELEPHONE
+#usr/lib/locale/sk_SK.utf8/LC_TIME
+#usr/lib/locale/sk_SK/LC_ADDRESS
+#usr/lib/locale/sk_SK/LC_COLLATE
+#usr/lib/locale/sk_SK/LC_CTYPE
+#usr/lib/locale/sk_SK/LC_IDENTIFICATION
+#usr/lib/locale/sk_SK/LC_MEASUREMENT
+#usr/lib/locale/sk_SK/LC_MESSAGES
+#usr/lib/locale/sk_SK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sk_SK/LC_MONETARY
+#usr/lib/locale/sk_SK/LC_NAME
+#usr/lib/locale/sk_SK/LC_NUMERIC
+#usr/lib/locale/sk_SK/LC_PAPER
+#usr/lib/locale/sk_SK/LC_TELEPHONE
+#usr/lib/locale/sk_SK/LC_TIME
+#usr/lib/locale/sl_SI
+#usr/lib/locale/sl_SI.utf8
+#usr/lib/locale/sl_SI.utf8/LC_ADDRESS
+#usr/lib/locale/sl_SI.utf8/LC_COLLATE
+#usr/lib/locale/sl_SI.utf8/LC_CTYPE
+#usr/lib/locale/sl_SI.utf8/LC_IDENTIFICATION
+#usr/lib/locale/sl_SI.utf8/LC_MEASUREMENT
+#usr/lib/locale/sl_SI.utf8/LC_MESSAGES
+#usr/lib/locale/sl_SI.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sl_SI.utf8/LC_MONETARY
+#usr/lib/locale/sl_SI.utf8/LC_NAME
+#usr/lib/locale/sl_SI.utf8/LC_NUMERIC
+#usr/lib/locale/sl_SI.utf8/LC_PAPER
+#usr/lib/locale/sl_SI.utf8/LC_TELEPHONE
+#usr/lib/locale/sl_SI.utf8/LC_TIME
+#usr/lib/locale/sl_SI/LC_ADDRESS
+#usr/lib/locale/sl_SI/LC_COLLATE
+#usr/lib/locale/sl_SI/LC_CTYPE
+#usr/lib/locale/sl_SI/LC_IDENTIFICATION
+#usr/lib/locale/sl_SI/LC_MEASUREMENT
+#usr/lib/locale/sl_SI/LC_MESSAGES
+#usr/lib/locale/sl_SI/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sl_SI/LC_MONETARY
+#usr/lib/locale/sl_SI/LC_NAME
+#usr/lib/locale/sl_SI/LC_NUMERIC
+#usr/lib/locale/sl_SI/LC_PAPER
+#usr/lib/locale/sl_SI/LC_TELEPHONE
+#usr/lib/locale/sl_SI/LC_TIME
+#usr/lib/locale/so_DJ
+#usr/lib/locale/so_DJ.utf8
+#usr/lib/locale/so_DJ.utf8/LC_ADDRESS
+#usr/lib/locale/so_DJ.utf8/LC_COLLATE
+#usr/lib/locale/so_DJ.utf8/LC_CTYPE
+#usr/lib/locale/so_DJ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/so_DJ.utf8/LC_MEASUREMENT
+#usr/lib/locale/so_DJ.utf8/LC_MESSAGES
+#usr/lib/locale/so_DJ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/so_DJ.utf8/LC_MONETARY
+#usr/lib/locale/so_DJ.utf8/LC_NAME
+#usr/lib/locale/so_DJ.utf8/LC_NUMERIC
+#usr/lib/locale/so_DJ.utf8/LC_PAPER
+#usr/lib/locale/so_DJ.utf8/LC_TELEPHONE
+#usr/lib/locale/so_DJ.utf8/LC_TIME
+#usr/lib/locale/so_DJ/LC_ADDRESS
+#usr/lib/locale/so_DJ/LC_COLLATE
+#usr/lib/locale/so_DJ/LC_CTYPE
+#usr/lib/locale/so_DJ/LC_IDENTIFICATION
+#usr/lib/locale/so_DJ/LC_MEASUREMENT
+#usr/lib/locale/so_DJ/LC_MESSAGES
+#usr/lib/locale/so_DJ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/so_DJ/LC_MONETARY
+#usr/lib/locale/so_DJ/LC_NAME
+#usr/lib/locale/so_DJ/LC_NUMERIC
+#usr/lib/locale/so_DJ/LC_PAPER
+#usr/lib/locale/so_DJ/LC_TELEPHONE
+#usr/lib/locale/so_DJ/LC_TIME
+#usr/lib/locale/so_ET
+#usr/lib/locale/so_ET/LC_ADDRESS
+#usr/lib/locale/so_ET/LC_COLLATE
+#usr/lib/locale/so_ET/LC_CTYPE
+#usr/lib/locale/so_ET/LC_IDENTIFICATION
+#usr/lib/locale/so_ET/LC_MEASUREMENT
+#usr/lib/locale/so_ET/LC_MESSAGES
+#usr/lib/locale/so_ET/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/so_ET/LC_MONETARY
+#usr/lib/locale/so_ET/LC_NAME
+#usr/lib/locale/so_ET/LC_NUMERIC
+#usr/lib/locale/so_ET/LC_PAPER
+#usr/lib/locale/so_ET/LC_TELEPHONE
+#usr/lib/locale/so_ET/LC_TIME
+#usr/lib/locale/so_KE
+#usr/lib/locale/so_KE.utf8
+#usr/lib/locale/so_KE.utf8/LC_ADDRESS
+#usr/lib/locale/so_KE.utf8/LC_COLLATE
+#usr/lib/locale/so_KE.utf8/LC_CTYPE
+#usr/lib/locale/so_KE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/so_KE.utf8/LC_MEASUREMENT
+#usr/lib/locale/so_KE.utf8/LC_MESSAGES
+#usr/lib/locale/so_KE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/so_KE.utf8/LC_MONETARY
+#usr/lib/locale/so_KE.utf8/LC_NAME
+#usr/lib/locale/so_KE.utf8/LC_NUMERIC
+#usr/lib/locale/so_KE.utf8/LC_PAPER
+#usr/lib/locale/so_KE.utf8/LC_TELEPHONE
+#usr/lib/locale/so_KE.utf8/LC_TIME
+#usr/lib/locale/so_KE/LC_ADDRESS
+#usr/lib/locale/so_KE/LC_COLLATE
+#usr/lib/locale/so_KE/LC_CTYPE
+#usr/lib/locale/so_KE/LC_IDENTIFICATION
+#usr/lib/locale/so_KE/LC_MEASUREMENT
+#usr/lib/locale/so_KE/LC_MESSAGES
+#usr/lib/locale/so_KE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/so_KE/LC_MONETARY
+#usr/lib/locale/so_KE/LC_NAME
+#usr/lib/locale/so_KE/LC_NUMERIC
+#usr/lib/locale/so_KE/LC_PAPER
+#usr/lib/locale/so_KE/LC_TELEPHONE
+#usr/lib/locale/so_KE/LC_TIME
+#usr/lib/locale/so_SO
+#usr/lib/locale/so_SO.utf8
+#usr/lib/locale/so_SO.utf8/LC_ADDRESS
+#usr/lib/locale/so_SO.utf8/LC_COLLATE
+#usr/lib/locale/so_SO.utf8/LC_CTYPE
+#usr/lib/locale/so_SO.utf8/LC_IDENTIFICATION
+#usr/lib/locale/so_SO.utf8/LC_MEASUREMENT
+#usr/lib/locale/so_SO.utf8/LC_MESSAGES
+#usr/lib/locale/so_SO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/so_SO.utf8/LC_MONETARY
+#usr/lib/locale/so_SO.utf8/LC_NAME
+#usr/lib/locale/so_SO.utf8/LC_NUMERIC
+#usr/lib/locale/so_SO.utf8/LC_PAPER
+#usr/lib/locale/so_SO.utf8/LC_TELEPHONE
+#usr/lib/locale/so_SO.utf8/LC_TIME
+#usr/lib/locale/so_SO/LC_ADDRESS
+#usr/lib/locale/so_SO/LC_COLLATE
+#usr/lib/locale/so_SO/LC_CTYPE
+#usr/lib/locale/so_SO/LC_IDENTIFICATION
+#usr/lib/locale/so_SO/LC_MEASUREMENT
+#usr/lib/locale/so_SO/LC_MESSAGES
+#usr/lib/locale/so_SO/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/so_SO/LC_MONETARY
+#usr/lib/locale/so_SO/LC_NAME
+#usr/lib/locale/so_SO/LC_NUMERIC
+#usr/lib/locale/so_SO/LC_PAPER
+#usr/lib/locale/so_SO/LC_TELEPHONE
+#usr/lib/locale/so_SO/LC_TIME
+#usr/lib/locale/sq_AL
+#usr/lib/locale/sq_AL.utf8
+#usr/lib/locale/sq_AL.utf8/LC_ADDRESS
+#usr/lib/locale/sq_AL.utf8/LC_COLLATE
+#usr/lib/locale/sq_AL.utf8/LC_CTYPE
+#usr/lib/locale/sq_AL.utf8/LC_IDENTIFICATION
+#usr/lib/locale/sq_AL.utf8/LC_MEASUREMENT
+#usr/lib/locale/sq_AL.utf8/LC_MESSAGES
+#usr/lib/locale/sq_AL.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sq_AL.utf8/LC_MONETARY
+#usr/lib/locale/sq_AL.utf8/LC_NAME
+#usr/lib/locale/sq_AL.utf8/LC_NUMERIC
+#usr/lib/locale/sq_AL.utf8/LC_PAPER
+#usr/lib/locale/sq_AL.utf8/LC_TELEPHONE
+#usr/lib/locale/sq_AL.utf8/LC_TIME
+#usr/lib/locale/sq_AL/LC_ADDRESS
+#usr/lib/locale/sq_AL/LC_COLLATE
+#usr/lib/locale/sq_AL/LC_CTYPE
+#usr/lib/locale/sq_AL/LC_IDENTIFICATION
+#usr/lib/locale/sq_AL/LC_MEASUREMENT
+#usr/lib/locale/sq_AL/LC_MESSAGES
+#usr/lib/locale/sq_AL/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sq_AL/LC_MONETARY
+#usr/lib/locale/sq_AL/LC_NAME
+#usr/lib/locale/sq_AL/LC_NUMERIC
+#usr/lib/locale/sq_AL/LC_PAPER
+#usr/lib/locale/sq_AL/LC_TELEPHONE
+#usr/lib/locale/sq_AL/LC_TIME
+#usr/lib/locale/sq_MK
+#usr/lib/locale/sq_MK/LC_ADDRESS
+#usr/lib/locale/sq_MK/LC_COLLATE
+#usr/lib/locale/sq_MK/LC_CTYPE
+#usr/lib/locale/sq_MK/LC_IDENTIFICATION
+#usr/lib/locale/sq_MK/LC_MEASUREMENT
+#usr/lib/locale/sq_MK/LC_MESSAGES
+#usr/lib/locale/sq_MK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sq_MK/LC_MONETARY
+#usr/lib/locale/sq_MK/LC_NAME
+#usr/lib/locale/sq_MK/LC_NUMERIC
+#usr/lib/locale/sq_MK/LC_PAPER
+#usr/lib/locale/sq_MK/LC_TELEPHONE
+#usr/lib/locale/sq_MK/LC_TIME
+#usr/lib/locale/sr_ME
+#usr/lib/locale/sr_ME/LC_ADDRESS
+#usr/lib/locale/sr_ME/LC_COLLATE
+#usr/lib/locale/sr_ME/LC_CTYPE
+#usr/lib/locale/sr_ME/LC_IDENTIFICATION
+#usr/lib/locale/sr_ME/LC_MEASUREMENT
+#usr/lib/locale/sr_ME/LC_MESSAGES
+#usr/lib/locale/sr_ME/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sr_ME/LC_MONETARY
+#usr/lib/locale/sr_ME/LC_NAME
+#usr/lib/locale/sr_ME/LC_NUMERIC
+#usr/lib/locale/sr_ME/LC_PAPER
+#usr/lib/locale/sr_ME/LC_TELEPHONE
+#usr/lib/locale/sr_ME/LC_TIME
+#usr/lib/locale/sr_RS
+#usr/lib/locale/sr_RS/LC_ADDRESS
+#usr/lib/locale/sr_RS/LC_COLLATE
+#usr/lib/locale/sr_RS/LC_CTYPE
+#usr/lib/locale/sr_RS/LC_IDENTIFICATION
+#usr/lib/locale/sr_RS/LC_MEASUREMENT
+#usr/lib/locale/sr_RS/LC_MESSAGES
+#usr/lib/locale/sr_RS/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sr_RS/LC_MONETARY
+#usr/lib/locale/sr_RS/LC_NAME
+#usr/lib/locale/sr_RS/LC_NUMERIC
+#usr/lib/locale/sr_RS/LC_PAPER
+#usr/lib/locale/sr_RS/LC_TELEPHONE
+#usr/lib/locale/sr_RS/LC_TIME
+#usr/lib/locale/sr_RS@latin
+#usr/lib/locale/sr_RS@latin/LC_ADDRESS
+#usr/lib/locale/sr_RS@latin/LC_COLLATE
+#usr/lib/locale/sr_RS@latin/LC_CTYPE
+#usr/lib/locale/sr_RS@latin/LC_IDENTIFICATION
+#usr/lib/locale/sr_RS@latin/LC_MEASUREMENT
+#usr/lib/locale/sr_RS@latin/LC_MESSAGES
+#usr/lib/locale/sr_RS@latin/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sr_RS@latin/LC_MONETARY
+#usr/lib/locale/sr_RS@latin/LC_NAME
+#usr/lib/locale/sr_RS@latin/LC_NUMERIC
+#usr/lib/locale/sr_RS@latin/LC_PAPER
+#usr/lib/locale/sr_RS@latin/LC_TELEPHONE
+#usr/lib/locale/sr_RS@latin/LC_TIME
+#usr/lib/locale/ss_ZA
+#usr/lib/locale/ss_ZA/LC_ADDRESS
+#usr/lib/locale/ss_ZA/LC_COLLATE
+#usr/lib/locale/ss_ZA/LC_CTYPE
+#usr/lib/locale/ss_ZA/LC_IDENTIFICATION
+#usr/lib/locale/ss_ZA/LC_MEASUREMENT
+#usr/lib/locale/ss_ZA/LC_MESSAGES
+#usr/lib/locale/ss_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ss_ZA/LC_MONETARY
+#usr/lib/locale/ss_ZA/LC_NAME
+#usr/lib/locale/ss_ZA/LC_NUMERIC
+#usr/lib/locale/ss_ZA/LC_PAPER
+#usr/lib/locale/ss_ZA/LC_TELEPHONE
+#usr/lib/locale/ss_ZA/LC_TIME
+#usr/lib/locale/st_ZA
+#usr/lib/locale/st_ZA.utf8
+#usr/lib/locale/st_ZA.utf8/LC_ADDRESS
+#usr/lib/locale/st_ZA.utf8/LC_COLLATE
+#usr/lib/locale/st_ZA.utf8/LC_CTYPE
+#usr/lib/locale/st_ZA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/st_ZA.utf8/LC_MEASUREMENT
+#usr/lib/locale/st_ZA.utf8/LC_MESSAGES
+#usr/lib/locale/st_ZA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/st_ZA.utf8/LC_MONETARY
+#usr/lib/locale/st_ZA.utf8/LC_NAME
+#usr/lib/locale/st_ZA.utf8/LC_NUMERIC
+#usr/lib/locale/st_ZA.utf8/LC_PAPER
+#usr/lib/locale/st_ZA.utf8/LC_TELEPHONE
+#usr/lib/locale/st_ZA.utf8/LC_TIME
+#usr/lib/locale/st_ZA/LC_ADDRESS
+#usr/lib/locale/st_ZA/LC_COLLATE
+#usr/lib/locale/st_ZA/LC_CTYPE
+#usr/lib/locale/st_ZA/LC_IDENTIFICATION
+#usr/lib/locale/st_ZA/LC_MEASUREMENT
+#usr/lib/locale/st_ZA/LC_MESSAGES
+#usr/lib/locale/st_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/st_ZA/LC_MONETARY
+#usr/lib/locale/st_ZA/LC_NAME
+#usr/lib/locale/st_ZA/LC_NUMERIC
+#usr/lib/locale/st_ZA/LC_PAPER
+#usr/lib/locale/st_ZA/LC_TELEPHONE
+#usr/lib/locale/st_ZA/LC_TIME
+#usr/lib/locale/sv_FI
+#usr/lib/locale/sv_FI.utf8
+#usr/lib/locale/sv_FI.utf8/LC_ADDRESS
+#usr/lib/locale/sv_FI.utf8/LC_COLLATE
+#usr/lib/locale/sv_FI.utf8/LC_CTYPE
+#usr/lib/locale/sv_FI.utf8/LC_IDENTIFICATION
+#usr/lib/locale/sv_FI.utf8/LC_MEASUREMENT
+#usr/lib/locale/sv_FI.utf8/LC_MESSAGES
+#usr/lib/locale/sv_FI.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sv_FI.utf8/LC_MONETARY
+#usr/lib/locale/sv_FI.utf8/LC_NAME
+#usr/lib/locale/sv_FI.utf8/LC_NUMERIC
+#usr/lib/locale/sv_FI.utf8/LC_PAPER
+#usr/lib/locale/sv_FI.utf8/LC_TELEPHONE
+#usr/lib/locale/sv_FI.utf8/LC_TIME
+#usr/lib/locale/sv_FI/LC_ADDRESS
+#usr/lib/locale/sv_FI/LC_COLLATE
+#usr/lib/locale/sv_FI/LC_CTYPE
+#usr/lib/locale/sv_FI/LC_IDENTIFICATION
+#usr/lib/locale/sv_FI/LC_MEASUREMENT
+#usr/lib/locale/sv_FI/LC_MESSAGES
+#usr/lib/locale/sv_FI/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sv_FI/LC_MONETARY
+#usr/lib/locale/sv_FI/LC_NAME
+#usr/lib/locale/sv_FI/LC_NUMERIC
+#usr/lib/locale/sv_FI/LC_PAPER
+#usr/lib/locale/sv_FI/LC_TELEPHONE
+#usr/lib/locale/sv_FI/LC_TIME
+#usr/lib/locale/sv_FI@euro
+#usr/lib/locale/sv_FI@euro/LC_ADDRESS
+#usr/lib/locale/sv_FI@euro/LC_COLLATE
+#usr/lib/locale/sv_FI@euro/LC_CTYPE
+#usr/lib/locale/sv_FI@euro/LC_IDENTIFICATION
+#usr/lib/locale/sv_FI@euro/LC_MEASUREMENT
+#usr/lib/locale/sv_FI@euro/LC_MESSAGES
+#usr/lib/locale/sv_FI@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sv_FI@euro/LC_MONETARY
+#usr/lib/locale/sv_FI@euro/LC_NAME
+#usr/lib/locale/sv_FI@euro/LC_NUMERIC
+#usr/lib/locale/sv_FI@euro/LC_PAPER
+#usr/lib/locale/sv_FI@euro/LC_TELEPHONE
+#usr/lib/locale/sv_FI@euro/LC_TIME
+#usr/lib/locale/sv_SE
+#usr/lib/locale/sv_SE.iso885915
+#usr/lib/locale/sv_SE.iso885915/LC_ADDRESS
+#usr/lib/locale/sv_SE.iso885915/LC_COLLATE
+#usr/lib/locale/sv_SE.iso885915/LC_CTYPE
+#usr/lib/locale/sv_SE.iso885915/LC_IDENTIFICATION
+#usr/lib/locale/sv_SE.iso885915/LC_MEASUREMENT
+#usr/lib/locale/sv_SE.iso885915/LC_MESSAGES
+#usr/lib/locale/sv_SE.iso885915/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sv_SE.iso885915/LC_MONETARY
+#usr/lib/locale/sv_SE.iso885915/LC_NAME
+#usr/lib/locale/sv_SE.iso885915/LC_NUMERIC
+#usr/lib/locale/sv_SE.iso885915/LC_PAPER
+#usr/lib/locale/sv_SE.iso885915/LC_TELEPHONE
+#usr/lib/locale/sv_SE.iso885915/LC_TIME
+#usr/lib/locale/sv_SE.utf8
+#usr/lib/locale/sv_SE.utf8/LC_ADDRESS
+#usr/lib/locale/sv_SE.utf8/LC_COLLATE
+#usr/lib/locale/sv_SE.utf8/LC_CTYPE
+#usr/lib/locale/sv_SE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/sv_SE.utf8/LC_MEASUREMENT
+#usr/lib/locale/sv_SE.utf8/LC_MESSAGES
+#usr/lib/locale/sv_SE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sv_SE.utf8/LC_MONETARY
+#usr/lib/locale/sv_SE.utf8/LC_NAME
+#usr/lib/locale/sv_SE.utf8/LC_NUMERIC
+#usr/lib/locale/sv_SE.utf8/LC_PAPER
+#usr/lib/locale/sv_SE.utf8/LC_TELEPHONE
+#usr/lib/locale/sv_SE.utf8/LC_TIME
+#usr/lib/locale/sv_SE/LC_ADDRESS
+#usr/lib/locale/sv_SE/LC_COLLATE
+#usr/lib/locale/sv_SE/LC_CTYPE
+#usr/lib/locale/sv_SE/LC_IDENTIFICATION
+#usr/lib/locale/sv_SE/LC_MEASUREMENT
+#usr/lib/locale/sv_SE/LC_MESSAGES
+#usr/lib/locale/sv_SE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/sv_SE/LC_MONETARY
+#usr/lib/locale/sv_SE/LC_NAME
+#usr/lib/locale/sv_SE/LC_NUMERIC
+#usr/lib/locale/sv_SE/LC_PAPER
+#usr/lib/locale/sv_SE/LC_TELEPHONE
+#usr/lib/locale/sv_SE/LC_TIME
+#usr/lib/locale/ta_IN
+#usr/lib/locale/ta_IN/LC_ADDRESS
+#usr/lib/locale/ta_IN/LC_COLLATE
+#usr/lib/locale/ta_IN/LC_CTYPE
+#usr/lib/locale/ta_IN/LC_IDENTIFICATION
+#usr/lib/locale/ta_IN/LC_MEASUREMENT
+#usr/lib/locale/ta_IN/LC_MESSAGES
+#usr/lib/locale/ta_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ta_IN/LC_MONETARY
+#usr/lib/locale/ta_IN/LC_NAME
+#usr/lib/locale/ta_IN/LC_NUMERIC
+#usr/lib/locale/ta_IN/LC_PAPER
+#usr/lib/locale/ta_IN/LC_TELEPHONE
+#usr/lib/locale/ta_IN/LC_TIME
+#usr/lib/locale/te_IN
+#usr/lib/locale/te_IN/LC_ADDRESS
+#usr/lib/locale/te_IN/LC_COLLATE
+#usr/lib/locale/te_IN/LC_CTYPE
+#usr/lib/locale/te_IN/LC_IDENTIFICATION
+#usr/lib/locale/te_IN/LC_MEASUREMENT
+#usr/lib/locale/te_IN/LC_MESSAGES
+#usr/lib/locale/te_IN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/te_IN/LC_MONETARY
+#usr/lib/locale/te_IN/LC_NAME
+#usr/lib/locale/te_IN/LC_NUMERIC
+#usr/lib/locale/te_IN/LC_PAPER
+#usr/lib/locale/te_IN/LC_TELEPHONE
+#usr/lib/locale/te_IN/LC_TIME
+#usr/lib/locale/tg_TJ
+#usr/lib/locale/tg_TJ.utf8
+#usr/lib/locale/tg_TJ.utf8/LC_ADDRESS
+#usr/lib/locale/tg_TJ.utf8/LC_COLLATE
+#usr/lib/locale/tg_TJ.utf8/LC_CTYPE
+#usr/lib/locale/tg_TJ.utf8/LC_IDENTIFICATION
+#usr/lib/locale/tg_TJ.utf8/LC_MEASUREMENT
+#usr/lib/locale/tg_TJ.utf8/LC_MESSAGES
+#usr/lib/locale/tg_TJ.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tg_TJ.utf8/LC_MONETARY
+#usr/lib/locale/tg_TJ.utf8/LC_NAME
+#usr/lib/locale/tg_TJ.utf8/LC_NUMERIC
+#usr/lib/locale/tg_TJ.utf8/LC_PAPER
+#usr/lib/locale/tg_TJ.utf8/LC_TELEPHONE
+#usr/lib/locale/tg_TJ.utf8/LC_TIME
+#usr/lib/locale/tg_TJ/LC_ADDRESS
+#usr/lib/locale/tg_TJ/LC_COLLATE
+#usr/lib/locale/tg_TJ/LC_CTYPE
+#usr/lib/locale/tg_TJ/LC_IDENTIFICATION
+#usr/lib/locale/tg_TJ/LC_MEASUREMENT
+#usr/lib/locale/tg_TJ/LC_MESSAGES
+#usr/lib/locale/tg_TJ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tg_TJ/LC_MONETARY
+#usr/lib/locale/tg_TJ/LC_NAME
+#usr/lib/locale/tg_TJ/LC_NUMERIC
+#usr/lib/locale/tg_TJ/LC_PAPER
+#usr/lib/locale/tg_TJ/LC_TELEPHONE
+#usr/lib/locale/tg_TJ/LC_TIME
+#usr/lib/locale/th_TH
+#usr/lib/locale/th_TH.utf8
+#usr/lib/locale/th_TH.utf8/LC_ADDRESS
+#usr/lib/locale/th_TH.utf8/LC_COLLATE
+#usr/lib/locale/th_TH.utf8/LC_CTYPE
+#usr/lib/locale/th_TH.utf8/LC_IDENTIFICATION
+#usr/lib/locale/th_TH.utf8/LC_MEASUREMENT
+#usr/lib/locale/th_TH.utf8/LC_MESSAGES
+#usr/lib/locale/th_TH.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/th_TH.utf8/LC_MONETARY
+#usr/lib/locale/th_TH.utf8/LC_NAME
+#usr/lib/locale/th_TH.utf8/LC_NUMERIC
+#usr/lib/locale/th_TH.utf8/LC_PAPER
+#usr/lib/locale/th_TH.utf8/LC_TELEPHONE
+#usr/lib/locale/th_TH.utf8/LC_TIME
+#usr/lib/locale/th_TH/LC_ADDRESS
+#usr/lib/locale/th_TH/LC_COLLATE
+#usr/lib/locale/th_TH/LC_CTYPE
+#usr/lib/locale/th_TH/LC_IDENTIFICATION
+#usr/lib/locale/th_TH/LC_MEASUREMENT
+#usr/lib/locale/th_TH/LC_MESSAGES
+#usr/lib/locale/th_TH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/th_TH/LC_MONETARY
+#usr/lib/locale/th_TH/LC_NAME
+#usr/lib/locale/th_TH/LC_NUMERIC
+#usr/lib/locale/th_TH/LC_PAPER
+#usr/lib/locale/th_TH/LC_TELEPHONE
+#usr/lib/locale/th_TH/LC_TIME
+#usr/lib/locale/ti_ER
+#usr/lib/locale/ti_ER/LC_ADDRESS
+#usr/lib/locale/ti_ER/LC_COLLATE
+#usr/lib/locale/ti_ER/LC_CTYPE
+#usr/lib/locale/ti_ER/LC_IDENTIFICATION
+#usr/lib/locale/ti_ER/LC_MEASUREMENT
+#usr/lib/locale/ti_ER/LC_MESSAGES
+#usr/lib/locale/ti_ER/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ti_ER/LC_MONETARY
+#usr/lib/locale/ti_ER/LC_NAME
+#usr/lib/locale/ti_ER/LC_NUMERIC
+#usr/lib/locale/ti_ER/LC_PAPER
+#usr/lib/locale/ti_ER/LC_TELEPHONE
+#usr/lib/locale/ti_ER/LC_TIME
+#usr/lib/locale/ti_ET
+#usr/lib/locale/ti_ET/LC_ADDRESS
+#usr/lib/locale/ti_ET/LC_COLLATE
+#usr/lib/locale/ti_ET/LC_CTYPE
+#usr/lib/locale/ti_ET/LC_IDENTIFICATION
+#usr/lib/locale/ti_ET/LC_MEASUREMENT
+#usr/lib/locale/ti_ET/LC_MESSAGES
+#usr/lib/locale/ti_ET/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ti_ET/LC_MONETARY
+#usr/lib/locale/ti_ET/LC_NAME
+#usr/lib/locale/ti_ET/LC_NUMERIC
+#usr/lib/locale/ti_ET/LC_PAPER
+#usr/lib/locale/ti_ET/LC_TELEPHONE
+#usr/lib/locale/ti_ET/LC_TIME
+#usr/lib/locale/tig_ER
+#usr/lib/locale/tig_ER/LC_ADDRESS
+#usr/lib/locale/tig_ER/LC_COLLATE
+#usr/lib/locale/tig_ER/LC_CTYPE
+#usr/lib/locale/tig_ER/LC_IDENTIFICATION
+#usr/lib/locale/tig_ER/LC_MEASUREMENT
+#usr/lib/locale/tig_ER/LC_MESSAGES
+#usr/lib/locale/tig_ER/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tig_ER/LC_MONETARY
+#usr/lib/locale/tig_ER/LC_NAME
+#usr/lib/locale/tig_ER/LC_NUMERIC
+#usr/lib/locale/tig_ER/LC_PAPER
+#usr/lib/locale/tig_ER/LC_TELEPHONE
+#usr/lib/locale/tig_ER/LC_TIME
+#usr/lib/locale/tk_TM
+#usr/lib/locale/tk_TM/LC_ADDRESS
+#usr/lib/locale/tk_TM/LC_COLLATE
+#usr/lib/locale/tk_TM/LC_CTYPE
+#usr/lib/locale/tk_TM/LC_IDENTIFICATION
+#usr/lib/locale/tk_TM/LC_MEASUREMENT
+#usr/lib/locale/tk_TM/LC_MESSAGES
+#usr/lib/locale/tk_TM/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tk_TM/LC_MONETARY
+#usr/lib/locale/tk_TM/LC_NAME
+#usr/lib/locale/tk_TM/LC_NUMERIC
+#usr/lib/locale/tk_TM/LC_PAPER
+#usr/lib/locale/tk_TM/LC_TELEPHONE
+#usr/lib/locale/tk_TM/LC_TIME
+#usr/lib/locale/tl_PH
+#usr/lib/locale/tl_PH.utf8
+#usr/lib/locale/tl_PH.utf8/LC_ADDRESS
+#usr/lib/locale/tl_PH.utf8/LC_COLLATE
+#usr/lib/locale/tl_PH.utf8/LC_CTYPE
+#usr/lib/locale/tl_PH.utf8/LC_IDENTIFICATION
+#usr/lib/locale/tl_PH.utf8/LC_MEASUREMENT
+#usr/lib/locale/tl_PH.utf8/LC_MESSAGES
+#usr/lib/locale/tl_PH.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tl_PH.utf8/LC_MONETARY
+#usr/lib/locale/tl_PH.utf8/LC_NAME
+#usr/lib/locale/tl_PH.utf8/LC_NUMERIC
+#usr/lib/locale/tl_PH.utf8/LC_PAPER
+#usr/lib/locale/tl_PH.utf8/LC_TELEPHONE
+#usr/lib/locale/tl_PH.utf8/LC_TIME
+#usr/lib/locale/tl_PH/LC_ADDRESS
+#usr/lib/locale/tl_PH/LC_COLLATE
+#usr/lib/locale/tl_PH/LC_CTYPE
+#usr/lib/locale/tl_PH/LC_IDENTIFICATION
+#usr/lib/locale/tl_PH/LC_MEASUREMENT
+#usr/lib/locale/tl_PH/LC_MESSAGES
+#usr/lib/locale/tl_PH/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tl_PH/LC_MONETARY
+#usr/lib/locale/tl_PH/LC_NAME
+#usr/lib/locale/tl_PH/LC_NUMERIC
+#usr/lib/locale/tl_PH/LC_PAPER
+#usr/lib/locale/tl_PH/LC_TELEPHONE
+#usr/lib/locale/tl_PH/LC_TIME
+#usr/lib/locale/tn_ZA
+#usr/lib/locale/tn_ZA/LC_ADDRESS
+#usr/lib/locale/tn_ZA/LC_COLLATE
+#usr/lib/locale/tn_ZA/LC_CTYPE
+#usr/lib/locale/tn_ZA/LC_IDENTIFICATION
+#usr/lib/locale/tn_ZA/LC_MEASUREMENT
+#usr/lib/locale/tn_ZA/LC_MESSAGES
+#usr/lib/locale/tn_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tn_ZA/LC_MONETARY
+#usr/lib/locale/tn_ZA/LC_NAME
+#usr/lib/locale/tn_ZA/LC_NUMERIC
+#usr/lib/locale/tn_ZA/LC_PAPER
+#usr/lib/locale/tn_ZA/LC_TELEPHONE
+#usr/lib/locale/tn_ZA/LC_TIME
+#usr/lib/locale/tr_CY
+#usr/lib/locale/tr_CY.utf8
+#usr/lib/locale/tr_CY.utf8/LC_ADDRESS
+#usr/lib/locale/tr_CY.utf8/LC_COLLATE
+#usr/lib/locale/tr_CY.utf8/LC_CTYPE
+#usr/lib/locale/tr_CY.utf8/LC_IDENTIFICATION
+#usr/lib/locale/tr_CY.utf8/LC_MEASUREMENT
+#usr/lib/locale/tr_CY.utf8/LC_MESSAGES
+#usr/lib/locale/tr_CY.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tr_CY.utf8/LC_MONETARY
+#usr/lib/locale/tr_CY.utf8/LC_NAME
+#usr/lib/locale/tr_CY.utf8/LC_NUMERIC
+#usr/lib/locale/tr_CY.utf8/LC_PAPER
+#usr/lib/locale/tr_CY.utf8/LC_TELEPHONE
+#usr/lib/locale/tr_CY.utf8/LC_TIME
+#usr/lib/locale/tr_CY/LC_ADDRESS
+#usr/lib/locale/tr_CY/LC_COLLATE
+#usr/lib/locale/tr_CY/LC_CTYPE
+#usr/lib/locale/tr_CY/LC_IDENTIFICATION
+#usr/lib/locale/tr_CY/LC_MEASUREMENT
+#usr/lib/locale/tr_CY/LC_MESSAGES
+#usr/lib/locale/tr_CY/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tr_CY/LC_MONETARY
+#usr/lib/locale/tr_CY/LC_NAME
+#usr/lib/locale/tr_CY/LC_NUMERIC
+#usr/lib/locale/tr_CY/LC_PAPER
+#usr/lib/locale/tr_CY/LC_TELEPHONE
+#usr/lib/locale/tr_CY/LC_TIME
+#usr/lib/locale/tr_TR
+#usr/lib/locale/tr_TR.utf8
+#usr/lib/locale/tr_TR.utf8/LC_ADDRESS
+#usr/lib/locale/tr_TR.utf8/LC_COLLATE
+#usr/lib/locale/tr_TR.utf8/LC_CTYPE
+#usr/lib/locale/tr_TR.utf8/LC_IDENTIFICATION
+#usr/lib/locale/tr_TR.utf8/LC_MEASUREMENT
+#usr/lib/locale/tr_TR.utf8/LC_MESSAGES
+#usr/lib/locale/tr_TR.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tr_TR.utf8/LC_MONETARY
+#usr/lib/locale/tr_TR.utf8/LC_NAME
+#usr/lib/locale/tr_TR.utf8/LC_NUMERIC
+#usr/lib/locale/tr_TR.utf8/LC_PAPER
+#usr/lib/locale/tr_TR.utf8/LC_TELEPHONE
+#usr/lib/locale/tr_TR.utf8/LC_TIME
+#usr/lib/locale/tr_TR/LC_ADDRESS
+#usr/lib/locale/tr_TR/LC_COLLATE
+#usr/lib/locale/tr_TR/LC_CTYPE
+#usr/lib/locale/tr_TR/LC_IDENTIFICATION
+#usr/lib/locale/tr_TR/LC_MEASUREMENT
+#usr/lib/locale/tr_TR/LC_MESSAGES
+#usr/lib/locale/tr_TR/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tr_TR/LC_MONETARY
+#usr/lib/locale/tr_TR/LC_NAME
+#usr/lib/locale/tr_TR/LC_NUMERIC
+#usr/lib/locale/tr_TR/LC_PAPER
+#usr/lib/locale/tr_TR/LC_TELEPHONE
+#usr/lib/locale/tr_TR/LC_TIME
+#usr/lib/locale/ts_ZA
+#usr/lib/locale/ts_ZA/LC_ADDRESS
+#usr/lib/locale/ts_ZA/LC_COLLATE
+#usr/lib/locale/ts_ZA/LC_CTYPE
+#usr/lib/locale/ts_ZA/LC_IDENTIFICATION
+#usr/lib/locale/ts_ZA/LC_MEASUREMENT
+#usr/lib/locale/ts_ZA/LC_MESSAGES
+#usr/lib/locale/ts_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ts_ZA/LC_MONETARY
+#usr/lib/locale/ts_ZA/LC_NAME
+#usr/lib/locale/ts_ZA/LC_NUMERIC
+#usr/lib/locale/ts_ZA/LC_PAPER
+#usr/lib/locale/ts_ZA/LC_TELEPHONE
+#usr/lib/locale/ts_ZA/LC_TIME
+#usr/lib/locale/tt_RU
+#usr/lib/locale/tt_RU/LC_ADDRESS
+#usr/lib/locale/tt_RU/LC_COLLATE
+#usr/lib/locale/tt_RU/LC_CTYPE
+#usr/lib/locale/tt_RU/LC_IDENTIFICATION
+#usr/lib/locale/tt_RU/LC_MEASUREMENT
+#usr/lib/locale/tt_RU/LC_MESSAGES
+#usr/lib/locale/tt_RU/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tt_RU/LC_MONETARY
+#usr/lib/locale/tt_RU/LC_NAME
+#usr/lib/locale/tt_RU/LC_NUMERIC
+#usr/lib/locale/tt_RU/LC_PAPER
+#usr/lib/locale/tt_RU/LC_TELEPHONE
+#usr/lib/locale/tt_RU/LC_TIME
+#usr/lib/locale/tt_RU@iqtelif
+#usr/lib/locale/tt_RU@iqtelif/LC_ADDRESS
+#usr/lib/locale/tt_RU@iqtelif/LC_COLLATE
+#usr/lib/locale/tt_RU@iqtelif/LC_CTYPE
+#usr/lib/locale/tt_RU@iqtelif/LC_IDENTIFICATION
+#usr/lib/locale/tt_RU@iqtelif/LC_MEASUREMENT
+#usr/lib/locale/tt_RU@iqtelif/LC_MESSAGES
+#usr/lib/locale/tt_RU@iqtelif/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/tt_RU@iqtelif/LC_MONETARY
+#usr/lib/locale/tt_RU@iqtelif/LC_NAME
+#usr/lib/locale/tt_RU@iqtelif/LC_NUMERIC
+#usr/lib/locale/tt_RU@iqtelif/LC_PAPER
+#usr/lib/locale/tt_RU@iqtelif/LC_TELEPHONE
+#usr/lib/locale/tt_RU@iqtelif/LC_TIME
+#usr/lib/locale/ug_CN
+#usr/lib/locale/ug_CN/LC_ADDRESS
+#usr/lib/locale/ug_CN/LC_COLLATE
+#usr/lib/locale/ug_CN/LC_CTYPE
+#usr/lib/locale/ug_CN/LC_IDENTIFICATION
+#usr/lib/locale/ug_CN/LC_MEASUREMENT
+#usr/lib/locale/ug_CN/LC_MESSAGES
+#usr/lib/locale/ug_CN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ug_CN/LC_MONETARY
+#usr/lib/locale/ug_CN/LC_NAME
+#usr/lib/locale/ug_CN/LC_NUMERIC
+#usr/lib/locale/ug_CN/LC_PAPER
+#usr/lib/locale/ug_CN/LC_TELEPHONE
+#usr/lib/locale/ug_CN/LC_TIME
+#usr/lib/locale/uk_UA
+#usr/lib/locale/uk_UA.utf8
+#usr/lib/locale/uk_UA.utf8/LC_ADDRESS
+#usr/lib/locale/uk_UA.utf8/LC_COLLATE
+#usr/lib/locale/uk_UA.utf8/LC_CTYPE
+#usr/lib/locale/uk_UA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/uk_UA.utf8/LC_MEASUREMENT
+#usr/lib/locale/uk_UA.utf8/LC_MESSAGES
+#usr/lib/locale/uk_UA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/uk_UA.utf8/LC_MONETARY
+#usr/lib/locale/uk_UA.utf8/LC_NAME
+#usr/lib/locale/uk_UA.utf8/LC_NUMERIC
+#usr/lib/locale/uk_UA.utf8/LC_PAPER
+#usr/lib/locale/uk_UA.utf8/LC_TELEPHONE
+#usr/lib/locale/uk_UA.utf8/LC_TIME
+#usr/lib/locale/uk_UA/LC_ADDRESS
+#usr/lib/locale/uk_UA/LC_COLLATE
+#usr/lib/locale/uk_UA/LC_CTYPE
+#usr/lib/locale/uk_UA/LC_IDENTIFICATION
+#usr/lib/locale/uk_UA/LC_MEASUREMENT
+#usr/lib/locale/uk_UA/LC_MESSAGES
+#usr/lib/locale/uk_UA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/uk_UA/LC_MONETARY
+#usr/lib/locale/uk_UA/LC_NAME
+#usr/lib/locale/uk_UA/LC_NUMERIC
+#usr/lib/locale/uk_UA/LC_PAPER
+#usr/lib/locale/uk_UA/LC_TELEPHONE
+#usr/lib/locale/uk_UA/LC_TIME
+#usr/lib/locale/ur_PK
+#usr/lib/locale/ur_PK/LC_ADDRESS
+#usr/lib/locale/ur_PK/LC_COLLATE
+#usr/lib/locale/ur_PK/LC_CTYPE
+#usr/lib/locale/ur_PK/LC_IDENTIFICATION
+#usr/lib/locale/ur_PK/LC_MEASUREMENT
+#usr/lib/locale/ur_PK/LC_MESSAGES
+#usr/lib/locale/ur_PK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ur_PK/LC_MONETARY
+#usr/lib/locale/ur_PK/LC_NAME
+#usr/lib/locale/ur_PK/LC_NUMERIC
+#usr/lib/locale/ur_PK/LC_PAPER
+#usr/lib/locale/ur_PK/LC_TELEPHONE
+#usr/lib/locale/ur_PK/LC_TIME
+#usr/lib/locale/uz_UZ
+#usr/lib/locale/uz_UZ/LC_ADDRESS
+#usr/lib/locale/uz_UZ/LC_COLLATE
+#usr/lib/locale/uz_UZ/LC_CTYPE
+#usr/lib/locale/uz_UZ/LC_IDENTIFICATION
+#usr/lib/locale/uz_UZ/LC_MEASUREMENT
+#usr/lib/locale/uz_UZ/LC_MESSAGES
+#usr/lib/locale/uz_UZ/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/uz_UZ/LC_MONETARY
+#usr/lib/locale/uz_UZ/LC_NAME
+#usr/lib/locale/uz_UZ/LC_NUMERIC
+#usr/lib/locale/uz_UZ/LC_PAPER
+#usr/lib/locale/uz_UZ/LC_TELEPHONE
+#usr/lib/locale/uz_UZ/LC_TIME
+#usr/lib/locale/uz_UZ@cyrillic
+#usr/lib/locale/uz_UZ@cyrillic/LC_ADDRESS
+#usr/lib/locale/uz_UZ@cyrillic/LC_COLLATE
+#usr/lib/locale/uz_UZ@cyrillic/LC_CTYPE
+#usr/lib/locale/uz_UZ@cyrillic/LC_IDENTIFICATION
+#usr/lib/locale/uz_UZ@cyrillic/LC_MEASUREMENT
+#usr/lib/locale/uz_UZ@cyrillic/LC_MESSAGES
+#usr/lib/locale/uz_UZ@cyrillic/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/uz_UZ@cyrillic/LC_MONETARY
+#usr/lib/locale/uz_UZ@cyrillic/LC_NAME
+#usr/lib/locale/uz_UZ@cyrillic/LC_NUMERIC
+#usr/lib/locale/uz_UZ@cyrillic/LC_PAPER
+#usr/lib/locale/uz_UZ@cyrillic/LC_TELEPHONE
+#usr/lib/locale/uz_UZ@cyrillic/LC_TIME
+#usr/lib/locale/ve_ZA
+#usr/lib/locale/ve_ZA/LC_ADDRESS
+#usr/lib/locale/ve_ZA/LC_COLLATE
+#usr/lib/locale/ve_ZA/LC_CTYPE
+#usr/lib/locale/ve_ZA/LC_IDENTIFICATION
+#usr/lib/locale/ve_ZA/LC_MEASUREMENT
+#usr/lib/locale/ve_ZA/LC_MESSAGES
+#usr/lib/locale/ve_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/ve_ZA/LC_MONETARY
+#usr/lib/locale/ve_ZA/LC_NAME
+#usr/lib/locale/ve_ZA/LC_NUMERIC
+#usr/lib/locale/ve_ZA/LC_PAPER
+#usr/lib/locale/ve_ZA/LC_TELEPHONE
+#usr/lib/locale/ve_ZA/LC_TIME
+#usr/lib/locale/vi_VN
+#usr/lib/locale/vi_VN.tcvn
+#usr/lib/locale/vi_VN.tcvn/LC_ADDRESS
+#usr/lib/locale/vi_VN.tcvn/LC_COLLATE
+#usr/lib/locale/vi_VN.tcvn/LC_CTYPE
+#usr/lib/locale/vi_VN.tcvn/LC_IDENTIFICATION
+#usr/lib/locale/vi_VN.tcvn/LC_MEASUREMENT
+#usr/lib/locale/vi_VN.tcvn/LC_MESSAGES
+#usr/lib/locale/vi_VN.tcvn/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/vi_VN.tcvn/LC_MONETARY
+#usr/lib/locale/vi_VN.tcvn/LC_NAME
+#usr/lib/locale/vi_VN.tcvn/LC_NUMERIC
+#usr/lib/locale/vi_VN.tcvn/LC_PAPER
+#usr/lib/locale/vi_VN.tcvn/LC_TELEPHONE
+#usr/lib/locale/vi_VN.tcvn/LC_TIME
+#usr/lib/locale/vi_VN/LC_ADDRESS
+#usr/lib/locale/vi_VN/LC_COLLATE
+#usr/lib/locale/vi_VN/LC_CTYPE
+#usr/lib/locale/vi_VN/LC_IDENTIFICATION
+#usr/lib/locale/vi_VN/LC_MEASUREMENT
+#usr/lib/locale/vi_VN/LC_MESSAGES
+#usr/lib/locale/vi_VN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/vi_VN/LC_MONETARY
+#usr/lib/locale/vi_VN/LC_NAME
+#usr/lib/locale/vi_VN/LC_NUMERIC
+#usr/lib/locale/vi_VN/LC_PAPER
+#usr/lib/locale/vi_VN/LC_TELEPHONE
+#usr/lib/locale/vi_VN/LC_TIME
+#usr/lib/locale/wa_BE
+#usr/lib/locale/wa_BE.utf8
+#usr/lib/locale/wa_BE.utf8/LC_ADDRESS
+#usr/lib/locale/wa_BE.utf8/LC_COLLATE
+#usr/lib/locale/wa_BE.utf8/LC_CTYPE
+#usr/lib/locale/wa_BE.utf8/LC_IDENTIFICATION
+#usr/lib/locale/wa_BE.utf8/LC_MEASUREMENT
+#usr/lib/locale/wa_BE.utf8/LC_MESSAGES
+#usr/lib/locale/wa_BE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/wa_BE.utf8/LC_MONETARY
+#usr/lib/locale/wa_BE.utf8/LC_NAME
+#usr/lib/locale/wa_BE.utf8/LC_NUMERIC
+#usr/lib/locale/wa_BE.utf8/LC_PAPER
+#usr/lib/locale/wa_BE.utf8/LC_TELEPHONE
+#usr/lib/locale/wa_BE.utf8/LC_TIME
+#usr/lib/locale/wa_BE/LC_ADDRESS
+#usr/lib/locale/wa_BE/LC_COLLATE
+#usr/lib/locale/wa_BE/LC_CTYPE
+#usr/lib/locale/wa_BE/LC_IDENTIFICATION
+#usr/lib/locale/wa_BE/LC_MEASUREMENT
+#usr/lib/locale/wa_BE/LC_MESSAGES
+#usr/lib/locale/wa_BE/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/wa_BE/LC_MONETARY
+#usr/lib/locale/wa_BE/LC_NAME
+#usr/lib/locale/wa_BE/LC_NUMERIC
+#usr/lib/locale/wa_BE/LC_PAPER
+#usr/lib/locale/wa_BE/LC_TELEPHONE
+#usr/lib/locale/wa_BE/LC_TIME
+#usr/lib/locale/wa_BE@euro
+#usr/lib/locale/wa_BE@euro/LC_ADDRESS
+#usr/lib/locale/wa_BE@euro/LC_COLLATE
+#usr/lib/locale/wa_BE@euro/LC_CTYPE
+#usr/lib/locale/wa_BE@euro/LC_IDENTIFICATION
+#usr/lib/locale/wa_BE@euro/LC_MEASUREMENT
+#usr/lib/locale/wa_BE@euro/LC_MESSAGES
+#usr/lib/locale/wa_BE@euro/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/wa_BE@euro/LC_MONETARY
+#usr/lib/locale/wa_BE@euro/LC_NAME
+#usr/lib/locale/wa_BE@euro/LC_NUMERIC
+#usr/lib/locale/wa_BE@euro/LC_PAPER
+#usr/lib/locale/wa_BE@euro/LC_TELEPHONE
+#usr/lib/locale/wa_BE@euro/LC_TIME
+#usr/lib/locale/wo_SN
+#usr/lib/locale/wo_SN/LC_ADDRESS
+#usr/lib/locale/wo_SN/LC_COLLATE
+#usr/lib/locale/wo_SN/LC_CTYPE
+#usr/lib/locale/wo_SN/LC_IDENTIFICATION
+#usr/lib/locale/wo_SN/LC_MEASUREMENT
+#usr/lib/locale/wo_SN/LC_MESSAGES
+#usr/lib/locale/wo_SN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/wo_SN/LC_MONETARY
+#usr/lib/locale/wo_SN/LC_NAME
+#usr/lib/locale/wo_SN/LC_NUMERIC
+#usr/lib/locale/wo_SN/LC_PAPER
+#usr/lib/locale/wo_SN/LC_TELEPHONE
+#usr/lib/locale/wo_SN/LC_TIME
+#usr/lib/locale/xh_ZA
+#usr/lib/locale/xh_ZA.utf8
+#usr/lib/locale/xh_ZA.utf8/LC_ADDRESS
+#usr/lib/locale/xh_ZA.utf8/LC_COLLATE
+#usr/lib/locale/xh_ZA.utf8/LC_CTYPE
+#usr/lib/locale/xh_ZA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/xh_ZA.utf8/LC_MEASUREMENT
+#usr/lib/locale/xh_ZA.utf8/LC_MESSAGES
+#usr/lib/locale/xh_ZA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/xh_ZA.utf8/LC_MONETARY
+#usr/lib/locale/xh_ZA.utf8/LC_NAME
+#usr/lib/locale/xh_ZA.utf8/LC_NUMERIC
+#usr/lib/locale/xh_ZA.utf8/LC_PAPER
+#usr/lib/locale/xh_ZA.utf8/LC_TELEPHONE
+#usr/lib/locale/xh_ZA.utf8/LC_TIME
+#usr/lib/locale/xh_ZA/LC_ADDRESS
+#usr/lib/locale/xh_ZA/LC_COLLATE
+#usr/lib/locale/xh_ZA/LC_CTYPE
+#usr/lib/locale/xh_ZA/LC_IDENTIFICATION
+#usr/lib/locale/xh_ZA/LC_MEASUREMENT
+#usr/lib/locale/xh_ZA/LC_MESSAGES
+#usr/lib/locale/xh_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/xh_ZA/LC_MONETARY
+#usr/lib/locale/xh_ZA/LC_NAME
+#usr/lib/locale/xh_ZA/LC_NUMERIC
+#usr/lib/locale/xh_ZA/LC_PAPER
+#usr/lib/locale/xh_ZA/LC_TELEPHONE
+#usr/lib/locale/xh_ZA/LC_TIME
+#usr/lib/locale/yi_US
+#usr/lib/locale/yi_US.utf8
+#usr/lib/locale/yi_US.utf8/LC_ADDRESS
+#usr/lib/locale/yi_US.utf8/LC_COLLATE
+#usr/lib/locale/yi_US.utf8/LC_CTYPE
+#usr/lib/locale/yi_US.utf8/LC_IDENTIFICATION
+#usr/lib/locale/yi_US.utf8/LC_MEASUREMENT
+#usr/lib/locale/yi_US.utf8/LC_MESSAGES
+#usr/lib/locale/yi_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/yi_US.utf8/LC_MONETARY
+#usr/lib/locale/yi_US.utf8/LC_NAME
+#usr/lib/locale/yi_US.utf8/LC_NUMERIC
+#usr/lib/locale/yi_US.utf8/LC_PAPER
+#usr/lib/locale/yi_US.utf8/LC_TELEPHONE
+#usr/lib/locale/yi_US.utf8/LC_TIME
+#usr/lib/locale/yi_US/LC_ADDRESS
+#usr/lib/locale/yi_US/LC_COLLATE
+#usr/lib/locale/yi_US/LC_CTYPE
+#usr/lib/locale/yi_US/LC_IDENTIFICATION
+#usr/lib/locale/yi_US/LC_MEASUREMENT
+#usr/lib/locale/yi_US/LC_MESSAGES
+#usr/lib/locale/yi_US/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/yi_US/LC_MONETARY
+#usr/lib/locale/yi_US/LC_NAME
+#usr/lib/locale/yi_US/LC_NUMERIC
+#usr/lib/locale/yi_US/LC_PAPER
+#usr/lib/locale/yi_US/LC_TELEPHONE
+#usr/lib/locale/yi_US/LC_TIME
+#usr/lib/locale/yo_NG
+#usr/lib/locale/yo_NG/LC_ADDRESS
+#usr/lib/locale/yo_NG/LC_COLLATE
+#usr/lib/locale/yo_NG/LC_CTYPE
+#usr/lib/locale/yo_NG/LC_IDENTIFICATION
+#usr/lib/locale/yo_NG/LC_MEASUREMENT
+#usr/lib/locale/yo_NG/LC_MESSAGES
+#usr/lib/locale/yo_NG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/yo_NG/LC_MONETARY
+#usr/lib/locale/yo_NG/LC_NAME
+#usr/lib/locale/yo_NG/LC_NUMERIC
+#usr/lib/locale/yo_NG/LC_PAPER
+#usr/lib/locale/yo_NG/LC_TELEPHONE
+#usr/lib/locale/yo_NG/LC_TIME
+#usr/lib/locale/zh_CN
+#usr/lib/locale/zh_CN.gb18030
+#usr/lib/locale/zh_CN.gb18030/LC_ADDRESS
+#usr/lib/locale/zh_CN.gb18030/LC_COLLATE
+#usr/lib/locale/zh_CN.gb18030/LC_CTYPE
+#usr/lib/locale/zh_CN.gb18030/LC_IDENTIFICATION
+#usr/lib/locale/zh_CN.gb18030/LC_MEASUREMENT
+#usr/lib/locale/zh_CN.gb18030/LC_MESSAGES
+#usr/lib/locale/zh_CN.gb18030/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_CN.gb18030/LC_MONETARY
+#usr/lib/locale/zh_CN.gb18030/LC_NAME
+#usr/lib/locale/zh_CN.gb18030/LC_NUMERIC
+#usr/lib/locale/zh_CN.gb18030/LC_PAPER
+#usr/lib/locale/zh_CN.gb18030/LC_TELEPHONE
+#usr/lib/locale/zh_CN.gb18030/LC_TIME
+#usr/lib/locale/zh_CN.gbk
+#usr/lib/locale/zh_CN.gbk/LC_ADDRESS
+#usr/lib/locale/zh_CN.gbk/LC_COLLATE
+#usr/lib/locale/zh_CN.gbk/LC_CTYPE
+#usr/lib/locale/zh_CN.gbk/LC_IDENTIFICATION
+#usr/lib/locale/zh_CN.gbk/LC_MEASUREMENT
+#usr/lib/locale/zh_CN.gbk/LC_MESSAGES
+#usr/lib/locale/zh_CN.gbk/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_CN.gbk/LC_MONETARY
+#usr/lib/locale/zh_CN.gbk/LC_NAME
+#usr/lib/locale/zh_CN.gbk/LC_NUMERIC
+#usr/lib/locale/zh_CN.gbk/LC_PAPER
+#usr/lib/locale/zh_CN.gbk/LC_TELEPHONE
+#usr/lib/locale/zh_CN.gbk/LC_TIME
+#usr/lib/locale/zh_CN.utf8
+#usr/lib/locale/zh_CN.utf8/LC_ADDRESS
+#usr/lib/locale/zh_CN.utf8/LC_COLLATE
+#usr/lib/locale/zh_CN.utf8/LC_CTYPE
+#usr/lib/locale/zh_CN.utf8/LC_IDENTIFICATION
+#usr/lib/locale/zh_CN.utf8/LC_MEASUREMENT
+#usr/lib/locale/zh_CN.utf8/LC_MESSAGES
+#usr/lib/locale/zh_CN.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_CN.utf8/LC_MONETARY
+#usr/lib/locale/zh_CN.utf8/LC_NAME
+#usr/lib/locale/zh_CN.utf8/LC_NUMERIC
+#usr/lib/locale/zh_CN.utf8/LC_PAPER
+#usr/lib/locale/zh_CN.utf8/LC_TELEPHONE
+#usr/lib/locale/zh_CN.utf8/LC_TIME
+#usr/lib/locale/zh_CN/LC_ADDRESS
+#usr/lib/locale/zh_CN/LC_COLLATE
+#usr/lib/locale/zh_CN/LC_CTYPE
+#usr/lib/locale/zh_CN/LC_IDENTIFICATION
+#usr/lib/locale/zh_CN/LC_MEASUREMENT
+#usr/lib/locale/zh_CN/LC_MESSAGES
+#usr/lib/locale/zh_CN/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_CN/LC_MONETARY
+#usr/lib/locale/zh_CN/LC_NAME
+#usr/lib/locale/zh_CN/LC_NUMERIC
+#usr/lib/locale/zh_CN/LC_PAPER
+#usr/lib/locale/zh_CN/LC_TELEPHONE
+#usr/lib/locale/zh_CN/LC_TIME
+#usr/lib/locale/zh_HK
+#usr/lib/locale/zh_HK.utf8
+#usr/lib/locale/zh_HK.utf8/LC_ADDRESS
+#usr/lib/locale/zh_HK.utf8/LC_COLLATE
+#usr/lib/locale/zh_HK.utf8/LC_CTYPE
+#usr/lib/locale/zh_HK.utf8/LC_IDENTIFICATION
+#usr/lib/locale/zh_HK.utf8/LC_MEASUREMENT
+#usr/lib/locale/zh_HK.utf8/LC_MESSAGES
+#usr/lib/locale/zh_HK.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_HK.utf8/LC_MONETARY
+#usr/lib/locale/zh_HK.utf8/LC_NAME
+#usr/lib/locale/zh_HK.utf8/LC_NUMERIC
+#usr/lib/locale/zh_HK.utf8/LC_PAPER
+#usr/lib/locale/zh_HK.utf8/LC_TELEPHONE
+#usr/lib/locale/zh_HK.utf8/LC_TIME
+#usr/lib/locale/zh_HK/LC_ADDRESS
+#usr/lib/locale/zh_HK/LC_COLLATE
+#usr/lib/locale/zh_HK/LC_CTYPE
+#usr/lib/locale/zh_HK/LC_IDENTIFICATION
+#usr/lib/locale/zh_HK/LC_MEASUREMENT
+#usr/lib/locale/zh_HK/LC_MESSAGES
+#usr/lib/locale/zh_HK/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_HK/LC_MONETARY
+#usr/lib/locale/zh_HK/LC_NAME
+#usr/lib/locale/zh_HK/LC_NUMERIC
+#usr/lib/locale/zh_HK/LC_PAPER
+#usr/lib/locale/zh_HK/LC_TELEPHONE
+#usr/lib/locale/zh_HK/LC_TIME
+#usr/lib/locale/zh_SG
+#usr/lib/locale/zh_SG.gbk
+#usr/lib/locale/zh_SG.gbk/LC_ADDRESS
+#usr/lib/locale/zh_SG.gbk/LC_COLLATE
+#usr/lib/locale/zh_SG.gbk/LC_CTYPE
+#usr/lib/locale/zh_SG.gbk/LC_IDENTIFICATION
+#usr/lib/locale/zh_SG.gbk/LC_MEASUREMENT
+#usr/lib/locale/zh_SG.gbk/LC_MESSAGES
+#usr/lib/locale/zh_SG.gbk/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_SG.gbk/LC_MONETARY
+#usr/lib/locale/zh_SG.gbk/LC_NAME
+#usr/lib/locale/zh_SG.gbk/LC_NUMERIC
+#usr/lib/locale/zh_SG.gbk/LC_PAPER
+#usr/lib/locale/zh_SG.gbk/LC_TELEPHONE
+#usr/lib/locale/zh_SG.gbk/LC_TIME
+#usr/lib/locale/zh_SG.utf8
+#usr/lib/locale/zh_SG.utf8/LC_ADDRESS
+#usr/lib/locale/zh_SG.utf8/LC_COLLATE
+#usr/lib/locale/zh_SG.utf8/LC_CTYPE
+#usr/lib/locale/zh_SG.utf8/LC_IDENTIFICATION
+#usr/lib/locale/zh_SG.utf8/LC_MEASUREMENT
+#usr/lib/locale/zh_SG.utf8/LC_MESSAGES
+#usr/lib/locale/zh_SG.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_SG.utf8/LC_MONETARY
+#usr/lib/locale/zh_SG.utf8/LC_NAME
+#usr/lib/locale/zh_SG.utf8/LC_NUMERIC
+#usr/lib/locale/zh_SG.utf8/LC_PAPER
+#usr/lib/locale/zh_SG.utf8/LC_TELEPHONE
+#usr/lib/locale/zh_SG.utf8/LC_TIME
+#usr/lib/locale/zh_SG/LC_ADDRESS
+#usr/lib/locale/zh_SG/LC_COLLATE
+#usr/lib/locale/zh_SG/LC_CTYPE
+#usr/lib/locale/zh_SG/LC_IDENTIFICATION
+#usr/lib/locale/zh_SG/LC_MEASUREMENT
+#usr/lib/locale/zh_SG/LC_MESSAGES
+#usr/lib/locale/zh_SG/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_SG/LC_MONETARY
+#usr/lib/locale/zh_SG/LC_NAME
+#usr/lib/locale/zh_SG/LC_NUMERIC
+#usr/lib/locale/zh_SG/LC_PAPER
+#usr/lib/locale/zh_SG/LC_TELEPHONE
+#usr/lib/locale/zh_SG/LC_TIME
+#usr/lib/locale/zh_TW
+#usr/lib/locale/zh_TW.euctw
+#usr/lib/locale/zh_TW.euctw/LC_ADDRESS
+#usr/lib/locale/zh_TW.euctw/LC_COLLATE
+#usr/lib/locale/zh_TW.euctw/LC_CTYPE
+#usr/lib/locale/zh_TW.euctw/LC_IDENTIFICATION
+#usr/lib/locale/zh_TW.euctw/LC_MEASUREMENT
+#usr/lib/locale/zh_TW.euctw/LC_MESSAGES
+#usr/lib/locale/zh_TW.euctw/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_TW.euctw/LC_MONETARY
+#usr/lib/locale/zh_TW.euctw/LC_NAME
+#usr/lib/locale/zh_TW.euctw/LC_NUMERIC
+#usr/lib/locale/zh_TW.euctw/LC_PAPER
+#usr/lib/locale/zh_TW.euctw/LC_TELEPHONE
+#usr/lib/locale/zh_TW.euctw/LC_TIME
+#usr/lib/locale/zh_TW.utf8
+#usr/lib/locale/zh_TW.utf8/LC_ADDRESS
+#usr/lib/locale/zh_TW.utf8/LC_COLLATE
+#usr/lib/locale/zh_TW.utf8/LC_CTYPE
+#usr/lib/locale/zh_TW.utf8/LC_IDENTIFICATION
+#usr/lib/locale/zh_TW.utf8/LC_MEASUREMENT
+#usr/lib/locale/zh_TW.utf8/LC_MESSAGES
+#usr/lib/locale/zh_TW.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_TW.utf8/LC_MONETARY
+#usr/lib/locale/zh_TW.utf8/LC_NAME
+#usr/lib/locale/zh_TW.utf8/LC_NUMERIC
+#usr/lib/locale/zh_TW.utf8/LC_PAPER
+#usr/lib/locale/zh_TW.utf8/LC_TELEPHONE
+#usr/lib/locale/zh_TW.utf8/LC_TIME
+#usr/lib/locale/zh_TW/LC_ADDRESS
+#usr/lib/locale/zh_TW/LC_COLLATE
+#usr/lib/locale/zh_TW/LC_CTYPE
+#usr/lib/locale/zh_TW/LC_IDENTIFICATION
+#usr/lib/locale/zh_TW/LC_MEASUREMENT
+#usr/lib/locale/zh_TW/LC_MESSAGES
+#usr/lib/locale/zh_TW/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zh_TW/LC_MONETARY
+#usr/lib/locale/zh_TW/LC_NAME
+#usr/lib/locale/zh_TW/LC_NUMERIC
+#usr/lib/locale/zh_TW/LC_PAPER
+#usr/lib/locale/zh_TW/LC_TELEPHONE
+#usr/lib/locale/zh_TW/LC_TIME
+#usr/lib/locale/zu_ZA
+#usr/lib/locale/zu_ZA.utf8
+#usr/lib/locale/zu_ZA.utf8/LC_ADDRESS
+#usr/lib/locale/zu_ZA.utf8/LC_COLLATE
+#usr/lib/locale/zu_ZA.utf8/LC_CTYPE
+#usr/lib/locale/zu_ZA.utf8/LC_IDENTIFICATION
+#usr/lib/locale/zu_ZA.utf8/LC_MEASUREMENT
+#usr/lib/locale/zu_ZA.utf8/LC_MESSAGES
+#usr/lib/locale/zu_ZA.utf8/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zu_ZA.utf8/LC_MONETARY
+#usr/lib/locale/zu_ZA.utf8/LC_NAME
+#usr/lib/locale/zu_ZA.utf8/LC_NUMERIC
+#usr/lib/locale/zu_ZA.utf8/LC_PAPER
+#usr/lib/locale/zu_ZA.utf8/LC_TELEPHONE
+#usr/lib/locale/zu_ZA.utf8/LC_TIME
+#usr/lib/locale/zu_ZA/LC_ADDRESS
+#usr/lib/locale/zu_ZA/LC_COLLATE
+#usr/lib/locale/zu_ZA/LC_CTYPE
+#usr/lib/locale/zu_ZA/LC_IDENTIFICATION
+#usr/lib/locale/zu_ZA/LC_MEASUREMENT
+#usr/lib/locale/zu_ZA/LC_MESSAGES
+#usr/lib/locale/zu_ZA/LC_MESSAGES/SYS_LC_MESSAGES
+#usr/lib/locale/zu_ZA/LC_MONETARY
+#usr/lib/locale/zu_ZA/LC_NAME
+#usr/lib/locale/zu_ZA/LC_NUMERIC
+#usr/lib/locale/zu_ZA/LC_PAPER
+#usr/lib/locale/zu_ZA/LC_TELEPHONE
+#usr/lib/locale/zu_ZA/LC_TIME
+#usr/sbin/iconvconfig
+#usr/sbin/nscd
+#usr/sbin/rpcinfo
+#usr/sbin/zdump
+#usr/sbin/zic
+#usr/share/i18n
+#usr/share/i18n/charmaps
+#usr/share/i18n/charmaps/ANSI_X3.110-1983.gz
+#usr/share/i18n/charmaps/ANSI_X3.4-1968.gz
+#usr/share/i18n/charmaps/ARMSCII-8.gz
+#usr/share/i18n/charmaps/ASMO_449.gz
+#usr/share/i18n/charmaps/BIG5-HKSCS.gz
+#usr/share/i18n/charmaps/BIG5.gz
+#usr/share/i18n/charmaps/BRF.gz
+#usr/share/i18n/charmaps/BS_4730.gz
+#usr/share/i18n/charmaps/BS_VIEWDATA.gz
+#usr/share/i18n/charmaps/CP10007.gz
+#usr/share/i18n/charmaps/CP1125.gz
+#usr/share/i18n/charmaps/CP1250.gz
+#usr/share/i18n/charmaps/CP1251.gz
+#usr/share/i18n/charmaps/CP1252.gz
+#usr/share/i18n/charmaps/CP1253.gz
+#usr/share/i18n/charmaps/CP1254.gz
+#usr/share/i18n/charmaps/CP1255.gz
+#usr/share/i18n/charmaps/CP1256.gz
+#usr/share/i18n/charmaps/CP1257.gz
+#usr/share/i18n/charmaps/CP1258.gz
+#usr/share/i18n/charmaps/CP737.gz
+#usr/share/i18n/charmaps/CP775.gz
+#usr/share/i18n/charmaps/CP949.gz
+#usr/share/i18n/charmaps/CSA_Z243.4-1985-1.gz
+#usr/share/i18n/charmaps/CSA_Z243.4-1985-2.gz
+#usr/share/i18n/charmaps/CSA_Z243.4-1985-GR.gz
+#usr/share/i18n/charmaps/CSN_369103.gz
+#usr/share/i18n/charmaps/CWI.gz
+#usr/share/i18n/charmaps/DEC-MCS.gz
+#usr/share/i18n/charmaps/DIN_66003.gz
+#usr/share/i18n/charmaps/DS_2089.gz
+#usr/share/i18n/charmaps/EBCDIC-AT-DE-A.gz
+#usr/share/i18n/charmaps/EBCDIC-AT-DE.gz
+#usr/share/i18n/charmaps/EBCDIC-CA-FR.gz
+#usr/share/i18n/charmaps/EBCDIC-DK-NO-A.gz
+#usr/share/i18n/charmaps/EBCDIC-DK-NO.gz
+#usr/share/i18n/charmaps/EBCDIC-ES-A.gz
+#usr/share/i18n/charmaps/EBCDIC-ES-S.gz
+#usr/share/i18n/charmaps/EBCDIC-ES.gz
+#usr/share/i18n/charmaps/EBCDIC-FI-SE-A.gz
+#usr/share/i18n/charmaps/EBCDIC-FI-SE.gz
+#usr/share/i18n/charmaps/EBCDIC-FR.gz
+#usr/share/i18n/charmaps/EBCDIC-IS-FRISS.gz
+#usr/share/i18n/charmaps/EBCDIC-IT.gz
+#usr/share/i18n/charmaps/EBCDIC-PT.gz
+#usr/share/i18n/charmaps/EBCDIC-UK.gz
+#usr/share/i18n/charmaps/EBCDIC-US.gz
+#usr/share/i18n/charmaps/ECMA-CYRILLIC.gz
+#usr/share/i18n/charmaps/ES.gz
+#usr/share/i18n/charmaps/ES2.gz
+#usr/share/i18n/charmaps/EUC-JISX0213.gz
+#usr/share/i18n/charmaps/EUC-JP-MS.gz
+#usr/share/i18n/charmaps/EUC-JP.gz
+#usr/share/i18n/charmaps/EUC-KR.gz
+#usr/share/i18n/charmaps/EUC-TW.gz
+#usr/share/i18n/charmaps/GB18030.gz
+#usr/share/i18n/charmaps/GB2312.gz
+#usr/share/i18n/charmaps/GBK.gz
+#usr/share/i18n/charmaps/GB_1988-80.gz
+#usr/share/i18n/charmaps/GEORGIAN-ACADEMY.gz
+#usr/share/i18n/charmaps/GEORGIAN-PS.gz
+#usr/share/i18n/charmaps/GOST_19768-74.gz
+#usr/share/i18n/charmaps/GREEK-CCITT.gz
+#usr/share/i18n/charmaps/GREEK7-OLD.gz
+#usr/share/i18n/charmaps/GREEK7.gz
+#usr/share/i18n/charmaps/HP-GREEK8.gz
+#usr/share/i18n/charmaps/HP-ROMAN8.gz
+#usr/share/i18n/charmaps/HP-ROMAN9.gz
+#usr/share/i18n/charmaps/HP-THAI8.gz
+#usr/share/i18n/charmaps/HP-TURKISH8.gz
+#usr/share/i18n/charmaps/IBM037.gz
+#usr/share/i18n/charmaps/IBM038.gz
+#usr/share/i18n/charmaps/IBM1004.gz
+#usr/share/i18n/charmaps/IBM1026.gz
+#usr/share/i18n/charmaps/IBM1047.gz
+#usr/share/i18n/charmaps/IBM1124.gz
+#usr/share/i18n/charmaps/IBM1129.gz
+#usr/share/i18n/charmaps/IBM1132.gz
+#usr/share/i18n/charmaps/IBM1133.gz
+#usr/share/i18n/charmaps/IBM1160.gz
+#usr/share/i18n/charmaps/IBM1161.gz
+#usr/share/i18n/charmaps/IBM1162.gz
+#usr/share/i18n/charmaps/IBM1163.gz
+#usr/share/i18n/charmaps/IBM1164.gz
+#usr/share/i18n/charmaps/IBM256.gz
+#usr/share/i18n/charmaps/IBM273.gz
+#usr/share/i18n/charmaps/IBM274.gz
+#usr/share/i18n/charmaps/IBM275.gz
+#usr/share/i18n/charmaps/IBM277.gz
+#usr/share/i18n/charmaps/IBM278.gz
+#usr/share/i18n/charmaps/IBM280.gz
+#usr/share/i18n/charmaps/IBM281.gz
+#usr/share/i18n/charmaps/IBM284.gz
+#usr/share/i18n/charmaps/IBM285.gz
+#usr/share/i18n/charmaps/IBM290.gz
+#usr/share/i18n/charmaps/IBM297.gz
+#usr/share/i18n/charmaps/IBM420.gz
+#usr/share/i18n/charmaps/IBM423.gz
+#usr/share/i18n/charmaps/IBM424.gz
+#usr/share/i18n/charmaps/IBM437.gz
+#usr/share/i18n/charmaps/IBM500.gz
+#usr/share/i18n/charmaps/IBM850.gz
+#usr/share/i18n/charmaps/IBM851.gz
+#usr/share/i18n/charmaps/IBM852.gz
+#usr/share/i18n/charmaps/IBM855.gz
+#usr/share/i18n/charmaps/IBM856.gz
+#usr/share/i18n/charmaps/IBM857.gz
+#usr/share/i18n/charmaps/IBM860.gz
+#usr/share/i18n/charmaps/IBM861.gz
+#usr/share/i18n/charmaps/IBM862.gz
+#usr/share/i18n/charmaps/IBM863.gz
+#usr/share/i18n/charmaps/IBM864.gz
+#usr/share/i18n/charmaps/IBM865.gz
+#usr/share/i18n/charmaps/IBM866.gz
+#usr/share/i18n/charmaps/IBM866NAV.gz
+#usr/share/i18n/charmaps/IBM868.gz
+#usr/share/i18n/charmaps/IBM869.gz
+#usr/share/i18n/charmaps/IBM870.gz
+#usr/share/i18n/charmaps/IBM871.gz
+#usr/share/i18n/charmaps/IBM874.gz
+#usr/share/i18n/charmaps/IBM875.gz
+#usr/share/i18n/charmaps/IBM880.gz
+#usr/share/i18n/charmaps/IBM891.gz
+#usr/share/i18n/charmaps/IBM903.gz
+#usr/share/i18n/charmaps/IBM904.gz
+#usr/share/i18n/charmaps/IBM905.gz
+#usr/share/i18n/charmaps/IBM918.gz
+#usr/share/i18n/charmaps/IBM922.gz
+#usr/share/i18n/charmaps/IEC_P27-1.gz
+#usr/share/i18n/charmaps/INIS-8.gz
+#usr/share/i18n/charmaps/INIS-CYRILLIC.gz
+#usr/share/i18n/charmaps/INIS.gz
+#usr/share/i18n/charmaps/INVARIANT.gz
+#usr/share/i18n/charmaps/ISIRI-3342.gz
+#usr/share/i18n/charmaps/ISO-8859-1.gz
+#usr/share/i18n/charmaps/ISO-8859-10.gz
+#usr/share/i18n/charmaps/ISO-8859-11.gz
+#usr/share/i18n/charmaps/ISO-8859-13.gz
+#usr/share/i18n/charmaps/ISO-8859-14.gz
+#usr/share/i18n/charmaps/ISO-8859-15.gz
+#usr/share/i18n/charmaps/ISO-8859-16.gz
+#usr/share/i18n/charmaps/ISO-8859-2.gz
+#usr/share/i18n/charmaps/ISO-8859-3.gz
+#usr/share/i18n/charmaps/ISO-8859-4.gz
+#usr/share/i18n/charmaps/ISO-8859-5.gz
+#usr/share/i18n/charmaps/ISO-8859-6.gz
+#usr/share/i18n/charmaps/ISO-8859-7.gz
+#usr/share/i18n/charmaps/ISO-8859-8.gz
+#usr/share/i18n/charmaps/ISO-8859-9.gz
+#usr/share/i18n/charmaps/ISO-8859-9E.gz
+#usr/share/i18n/charmaps/ISO-IR-197.gz
+#usr/share/i18n/charmaps/ISO-IR-209.gz
+#usr/share/i18n/charmaps/ISO-IR-90.gz
+#usr/share/i18n/charmaps/ISO_10367-BOX.gz
+#usr/share/i18n/charmaps/ISO_10646.gz
+#usr/share/i18n/charmaps/ISO_11548-1.gz
+#usr/share/i18n/charmaps/ISO_2033-1983.gz
+#usr/share/i18n/charmaps/ISO_5427-EXT.gz
+#usr/share/i18n/charmaps/ISO_5427.gz
+#usr/share/i18n/charmaps/ISO_5428.gz
+#usr/share/i18n/charmaps/ISO_646.BASIC.gz
+#usr/share/i18n/charmaps/ISO_646.IRV.gz
+#usr/share/i18n/charmaps/ISO_6937-2-25.gz
+#usr/share/i18n/charmaps/ISO_6937-2-ADD.gz
+#usr/share/i18n/charmaps/ISO_6937.gz
+#usr/share/i18n/charmaps/ISO_8859-1,GL.gz
+#usr/share/i18n/charmaps/ISO_8859-SUPP.gz
+#usr/share/i18n/charmaps/IT.gz
+#usr/share/i18n/charmaps/JIS_C6220-1969-JP.gz
+#usr/share/i18n/charmaps/JIS_C6220-1969-RO.gz
+#usr/share/i18n/charmaps/JIS_C6229-1984-A.gz
+#usr/share/i18n/charmaps/JIS_C6229-1984-B-ADD.gz
+#usr/share/i18n/charmaps/JIS_C6229-1984-B.gz
+#usr/share/i18n/charmaps/JIS_C6229-1984-HAND-ADD.gz
+#usr/share/i18n/charmaps/JIS_C6229-1984-HAND.gz
+#usr/share/i18n/charmaps/JIS_C6229-1984-KANA.gz
+#usr/share/i18n/charmaps/JIS_X0201.gz
+#usr/share/i18n/charmaps/JOHAB.gz
+#usr/share/i18n/charmaps/JUS_I.B1.002.gz
+#usr/share/i18n/charmaps/JUS_I.B1.003-MAC.gz
+#usr/share/i18n/charmaps/JUS_I.B1.003-SERB.gz
+#usr/share/i18n/charmaps/KOI-8.gz
+#usr/share/i18n/charmaps/KOI8-R.gz
+#usr/share/i18n/charmaps/KOI8-RU.gz
+#usr/share/i18n/charmaps/KOI8-T.gz
+#usr/share/i18n/charmaps/KOI8-U.gz
+#usr/share/i18n/charmaps/KSC5636.gz
+#usr/share/i18n/charmaps/LATIN-GREEK-1.gz
+#usr/share/i18n/charmaps/LATIN-GREEK.gz
+#usr/share/i18n/charmaps/MAC-CENTRALEUROPE.gz
+#usr/share/i18n/charmaps/MAC-CYRILLIC.gz
+#usr/share/i18n/charmaps/MAC-IS.gz
+#usr/share/i18n/charmaps/MAC-SAMI.gz
+#usr/share/i18n/charmaps/MAC-UK.gz
+#usr/share/i18n/charmaps/MACINTOSH.gz
+#usr/share/i18n/charmaps/MIK.gz
+#usr/share/i18n/charmaps/MSZ_7795.3.gz
+#usr/share/i18n/charmaps/NATS-DANO-ADD.gz
+#usr/share/i18n/charmaps/NATS-DANO.gz
+#usr/share/i18n/charmaps/NATS-SEFI-ADD.gz
+#usr/share/i18n/charmaps/NATS-SEFI.gz
+#usr/share/i18n/charmaps/NC_NC00-10.gz
+#usr/share/i18n/charmaps/NEXTSTEP.gz
+#usr/share/i18n/charmaps/NF_Z_62-010.gz
+#usr/share/i18n/charmaps/NF_Z_62-010_1973.gz
+#usr/share/i18n/charmaps/NS_4551-1.gz
+#usr/share/i18n/charmaps/NS_4551-2.gz
+#usr/share/i18n/charmaps/PT.gz
+#usr/share/i18n/charmaps/PT154.gz
+#usr/share/i18n/charmaps/PT2.gz
+#usr/share/i18n/charmaps/RK1048.gz
+#usr/share/i18n/charmaps/SAMI-WS2.gz
+#usr/share/i18n/charmaps/SAMI.gz
+#usr/share/i18n/charmaps/SEN_850200_B.gz
+#usr/share/i18n/charmaps/SEN_850200_C.gz
+#usr/share/i18n/charmaps/SHIFT_JIS.gz
+#usr/share/i18n/charmaps/SHIFT_JISX0213.gz
+#usr/share/i18n/charmaps/T.101-G2.gz
+#usr/share/i18n/charmaps/T.61-7BIT.gz
+#usr/share/i18n/charmaps/T.61-8BIT.gz
+#usr/share/i18n/charmaps/TCVN5712-1.gz
+#usr/share/i18n/charmaps/TIS-620.gz
+#usr/share/i18n/charmaps/TSCII.gz
+#usr/share/i18n/charmaps/UTF-8.gz
+#usr/share/i18n/charmaps/VIDEOTEX-SUPPL.gz
+#usr/share/i18n/charmaps/VISCII.gz
+#usr/share/i18n/charmaps/WINDOWS-31J.gz
+#usr/share/i18n/locales
+#usr/share/i18n/locales/POSIX
+#usr/share/i18n/locales/aa_DJ
+#usr/share/i18n/locales/aa_ER
+#usr/share/i18n/locales/aa_ER@saaho
+#usr/share/i18n/locales/aa_ET
+#usr/share/i18n/locales/af_ZA
+#usr/share/i18n/locales/am_ET
+#usr/share/i18n/locales/an_ES
+#usr/share/i18n/locales/ar_AE
+#usr/share/i18n/locales/ar_BH
+#usr/share/i18n/locales/ar_DZ
+#usr/share/i18n/locales/ar_EG
+#usr/share/i18n/locales/ar_IN
+#usr/share/i18n/locales/ar_IQ
+#usr/share/i18n/locales/ar_JO
+#usr/share/i18n/locales/ar_KW
+#usr/share/i18n/locales/ar_LB
+#usr/share/i18n/locales/ar_LY
+#usr/share/i18n/locales/ar_MA
+#usr/share/i18n/locales/ar_OM
+#usr/share/i18n/locales/ar_QA
+#usr/share/i18n/locales/ar_SA
+#usr/share/i18n/locales/ar_SD
+#usr/share/i18n/locales/ar_SY
+#usr/share/i18n/locales/ar_TN
+#usr/share/i18n/locales/ar_YE
+#usr/share/i18n/locales/as_IN
+#usr/share/i18n/locales/ast_ES
+#usr/share/i18n/locales/az_AZ
+#usr/share/i18n/locales/be_BY
+#usr/share/i18n/locales/be_BY@latin
+#usr/share/i18n/locales/ber_DZ
+#usr/share/i18n/locales/ber_MA
+#usr/share/i18n/locales/bg_BG
+#usr/share/i18n/locales/bn_BD
+#usr/share/i18n/locales/bn_IN
+#usr/share/i18n/locales/bo_CN
+#usr/share/i18n/locales/bo_IN
+#usr/share/i18n/locales/br_FR
+#usr/share/i18n/locales/br_FR@euro
+#usr/share/i18n/locales/bs_BA
+#usr/share/i18n/locales/byn_ER
+#usr/share/i18n/locales/ca_AD
+#usr/share/i18n/locales/ca_ES
+#usr/share/i18n/locales/ca_ES@euro
+#usr/share/i18n/locales/ca_FR
+#usr/share/i18n/locales/ca_IT
+#usr/share/i18n/locales/crh_UA
+#usr/share/i18n/locales/cs_CZ
+#usr/share/i18n/locales/csb_PL
+#usr/share/i18n/locales/cv_RU
+#usr/share/i18n/locales/cy_GB
+#usr/share/i18n/locales/da_DK
+#usr/share/i18n/locales/de_AT
+#usr/share/i18n/locales/de_AT@euro
+#usr/share/i18n/locales/de_BE
+#usr/share/i18n/locales/de_BE@euro
+#usr/share/i18n/locales/de_CH
+#usr/share/i18n/locales/de_DE
+#usr/share/i18n/locales/de_DE@euro
+#usr/share/i18n/locales/de_LU
+#usr/share/i18n/locales/de_LU@euro
+#usr/share/i18n/locales/dv_MV
+#usr/share/i18n/locales/dz_BT
+#usr/share/i18n/locales/el_CY
+#usr/share/i18n/locales/el_GR
+#usr/share/i18n/locales/el_GR@euro
+#usr/share/i18n/locales/en_AG
+#usr/share/i18n/locales/en_AU
+#usr/share/i18n/locales/en_BW
+#usr/share/i18n/locales/en_CA
+#usr/share/i18n/locales/en_DK
+#usr/share/i18n/locales/en_GB
+#usr/share/i18n/locales/en_HK
+#usr/share/i18n/locales/en_IE
+#usr/share/i18n/locales/en_IE@euro
+#usr/share/i18n/locales/en_IN
+#usr/share/i18n/locales/en_NG
+#usr/share/i18n/locales/en_NZ
+#usr/share/i18n/locales/en_PH
+#usr/share/i18n/locales/en_SG
+#usr/share/i18n/locales/en_US
+#usr/share/i18n/locales/en_ZA
+#usr/share/i18n/locales/en_ZW
+#usr/share/i18n/locales/es_AR
+#usr/share/i18n/locales/es_BO
+#usr/share/i18n/locales/es_CL
+#usr/share/i18n/locales/es_CO
+#usr/share/i18n/locales/es_CR
+#usr/share/i18n/locales/es_DO
+#usr/share/i18n/locales/es_EC
+#usr/share/i18n/locales/es_ES
+#usr/share/i18n/locales/es_ES@euro
+#usr/share/i18n/locales/es_GT
+#usr/share/i18n/locales/es_HN
+#usr/share/i18n/locales/es_MX
+#usr/share/i18n/locales/es_NI
+#usr/share/i18n/locales/es_PA
+#usr/share/i18n/locales/es_PE
+#usr/share/i18n/locales/es_PR
+#usr/share/i18n/locales/es_PY
+#usr/share/i18n/locales/es_SV
+#usr/share/i18n/locales/es_US
+#usr/share/i18n/locales/es_UY
+#usr/share/i18n/locales/es_VE
+#usr/share/i18n/locales/et_EE
+#usr/share/i18n/locales/eu_ES
+#usr/share/i18n/locales/eu_ES@euro
+#usr/share/i18n/locales/fa_IR
+#usr/share/i18n/locales/fi_FI
+#usr/share/i18n/locales/fi_FI.orig
+#usr/share/i18n/locales/fi_FI@euro
+#usr/share/i18n/locales/fil_PH
+#usr/share/i18n/locales/fo_FO
+#usr/share/i18n/locales/fr_BE
+#usr/share/i18n/locales/fr_BE@euro
+#usr/share/i18n/locales/fr_CA
+#usr/share/i18n/locales/fr_CH
+#usr/share/i18n/locales/fr_FR
+#usr/share/i18n/locales/fr_FR@euro
+#usr/share/i18n/locales/fr_LU
+#usr/share/i18n/locales/fr_LU@euro
+#usr/share/i18n/locales/fur_IT
+#usr/share/i18n/locales/fy_DE
+#usr/share/i18n/locales/fy_NL
+#usr/share/i18n/locales/ga_IE
+#usr/share/i18n/locales/ga_IE@euro
+#usr/share/i18n/locales/gd_GB
+#usr/share/i18n/locales/gez_ER
+#usr/share/i18n/locales/gez_ER@abegede
+#usr/share/i18n/locales/gez_ET
+#usr/share/i18n/locales/gez_ET@abegede
+#usr/share/i18n/locales/gl_ES
+#usr/share/i18n/locales/gl_ES@euro
+#usr/share/i18n/locales/gu_IN
+#usr/share/i18n/locales/gv_GB
+#usr/share/i18n/locales/ha_NG
+#usr/share/i18n/locales/he_IL
+#usr/share/i18n/locales/hi_IN
+#usr/share/i18n/locales/hne_IN
+#usr/share/i18n/locales/hr_HR
+#usr/share/i18n/locales/hsb_DE
+#usr/share/i18n/locales/ht_HT
+#usr/share/i18n/locales/hu_HU
+#usr/share/i18n/locales/hy_AM
+#usr/share/i18n/locales/i18n
+#usr/share/i18n/locales/id_ID
+#usr/share/i18n/locales/ig_NG
+#usr/share/i18n/locales/ik_CA
+#usr/share/i18n/locales/is_IS
+#usr/share/i18n/locales/iso14651_t1
+#usr/share/i18n/locales/iso14651_t1_common
+#usr/share/i18n/locales/iso14651_t1_pinyin
+#usr/share/i18n/locales/it_CH
+#usr/share/i18n/locales/it_IT
+#usr/share/i18n/locales/it_IT@euro
+#usr/share/i18n/locales/iu_CA
+#usr/share/i18n/locales/iw_IL
+#usr/share/i18n/locales/ja_JP
+#usr/share/i18n/locales/ka_GE
+#usr/share/i18n/locales/kk_KZ
+#usr/share/i18n/locales/kl_GL
+#usr/share/i18n/locales/km_KH
+#usr/share/i18n/locales/kn_IN
+#usr/share/i18n/locales/ko_KR
+#usr/share/i18n/locales/kok_IN
+#usr/share/i18n/locales/ks_IN
+#usr/share/i18n/locales/ks_IN@devanagari
+#usr/share/i18n/locales/ku_TR
+#usr/share/i18n/locales/kw_GB
+#usr/share/i18n/locales/ky_KG
+#usr/share/i18n/locales/lg_UG
+#usr/share/i18n/locales/li_BE
+#usr/share/i18n/locales/li_NL
+#usr/share/i18n/locales/lo_LA
+#usr/share/i18n/locales/lt_LT
+#usr/share/i18n/locales/lv_LV
+#usr/share/i18n/locales/mai_IN
+#usr/share/i18n/locales/mg_MG
+#usr/share/i18n/locales/mi_NZ
+#usr/share/i18n/locales/mk_MK
+#usr/share/i18n/locales/ml_IN
+#usr/share/i18n/locales/mn_MN
+#usr/share/i18n/locales/mr_IN
+#usr/share/i18n/locales/ms_MY
+#usr/share/i18n/locales/mt_MT
+#usr/share/i18n/locales/my_MM
+#usr/share/i18n/locales/nan_TW@latin
+#usr/share/i18n/locales/nb_NO
+#usr/share/i18n/locales/nds_DE
+#usr/share/i18n/locales/nds_NL
+#usr/share/i18n/locales/ne_NP
+#usr/share/i18n/locales/nl_AW
+#usr/share/i18n/locales/nl_BE
+#usr/share/i18n/locales/nl_BE@euro
+#usr/share/i18n/locales/nl_NL
+#usr/share/i18n/locales/nl_NL@euro
+#usr/share/i18n/locales/nn_NO
+#usr/share/i18n/locales/no_NO
+#usr/share/i18n/locales/nr_ZA
+#usr/share/i18n/locales/nso_ZA
+#usr/share/i18n/locales/oc_FR
+#usr/share/i18n/locales/om_ET
+#usr/share/i18n/locales/om_KE
+#usr/share/i18n/locales/or_IN
+#usr/share/i18n/locales/pa_IN
+#usr/share/i18n/locales/pa_PK
+#usr/share/i18n/locales/pap_AN
+#usr/share/i18n/locales/pl_PL
+#usr/share/i18n/locales/ps_AF
+#usr/share/i18n/locales/pt_BR
+#usr/share/i18n/locales/pt_PT
+#usr/share/i18n/locales/pt_PT@euro
+#usr/share/i18n/locales/ro_RO
+#usr/share/i18n/locales/ru_RU
+#usr/share/i18n/locales/ru_UA
+#usr/share/i18n/locales/rw_RW
+#usr/share/i18n/locales/sa_IN
+#usr/share/i18n/locales/sc_IT
+#usr/share/i18n/locales/sd_IN
+#usr/share/i18n/locales/sd_IN@devanagari
+#usr/share/i18n/locales/se_NO
+#usr/share/i18n/locales/shs_CA
+#usr/share/i18n/locales/si_LK
+#usr/share/i18n/locales/sid_ET
+#usr/share/i18n/locales/sk_SK
+#usr/share/i18n/locales/sl_SI
+#usr/share/i18n/locales/so_DJ
+#usr/share/i18n/locales/so_ET
+#usr/share/i18n/locales/so_KE
+#usr/share/i18n/locales/so_SO
+#usr/share/i18n/locales/sq_AL
+#usr/share/i18n/locales/sq_MK
+#usr/share/i18n/locales/sr_ME
+#usr/share/i18n/locales/sr_RS
+#usr/share/i18n/locales/sr_RS@latin
+#usr/share/i18n/locales/ss_ZA
+#usr/share/i18n/locales/st_ZA
+#usr/share/i18n/locales/sv_FI
+#usr/share/i18n/locales/sv_FI@euro
+#usr/share/i18n/locales/sv_SE
+#usr/share/i18n/locales/ta_IN
+#usr/share/i18n/locales/te_IN
+#usr/share/i18n/locales/tg_TJ
+#usr/share/i18n/locales/th_TH
+#usr/share/i18n/locales/ti_ER
+#usr/share/i18n/locales/ti_ET
+#usr/share/i18n/locales/tig_ER
+#usr/share/i18n/locales/tk_TM
+#usr/share/i18n/locales/tl_PH
+#usr/share/i18n/locales/tn_ZA
+#usr/share/i18n/locales/tr_CY
+#usr/share/i18n/locales/tr_TR
+#usr/share/i18n/locales/translit_circle
+#usr/share/i18n/locales/translit_cjk_compat
+#usr/share/i18n/locales/translit_cjk_variants
+#usr/share/i18n/locales/translit_combining
+#usr/share/i18n/locales/translit_compat
+#usr/share/i18n/locales/translit_font
+#usr/share/i18n/locales/translit_fraction
+#usr/share/i18n/locales/translit_hangul
+#usr/share/i18n/locales/translit_narrow
+#usr/share/i18n/locales/translit_neutral
+#usr/share/i18n/locales/translit_small
+#usr/share/i18n/locales/translit_wide
+#usr/share/i18n/locales/ts_ZA
+#usr/share/i18n/locales/tt_RU
+#usr/share/i18n/locales/tt_RU@iqtelif
+#usr/share/i18n/locales/ug_CN
+#usr/share/i18n/locales/uk_UA
+#usr/share/i18n/locales/ur_IN
+#usr/share/i18n/locales/ur_PK
+#usr/share/i18n/locales/uz_UZ
+#usr/share/i18n/locales/uz_UZ@cyrillic
+#usr/share/i18n/locales/ve_ZA
+#usr/share/i18n/locales/vi_VN
+#usr/share/i18n/locales/wa_BE
+#usr/share/i18n/locales/wa_BE@euro
+#usr/share/i18n/locales/wal_ET
+#usr/share/i18n/locales/wo_SN
+#usr/share/i18n/locales/xh_ZA
+#usr/share/i18n/locales/yi_US
+#usr/share/i18n/locales/yo_NG
+#usr/share/i18n/locales/zh_CN
+#usr/share/i18n/locales/zh_HK
+#usr/share/i18n/locales/zh_SG
+#usr/share/i18n/locales/zh_TW
+#usr/share/i18n/locales/zu_ZA
+#usr/share/info/dir
+#usr/share/info/libc.info
+#usr/share/info/libc.info-1
+#usr/share/info/libc.info-10
+#usr/share/info/libc.info-11
+#usr/share/info/libc.info-2
+#usr/share/info/libc.info-3
+#usr/share/info/libc.info-4
+#usr/share/info/libc.info-5
+#usr/share/info/libc.info-6
+#usr/share/info/libc.info-7
+#usr/share/info/libc.info-8
+#usr/share/info/libc.info-9
+#usr/share/locale/be
+#usr/share/locale/be/LC_MESSAGES
+#usr/share/locale/be/LC_MESSAGES/libc.mo
+#usr/share/locale/bg
+#usr/share/locale/bg/LC_MESSAGES
+#usr/share/locale/bg/LC_MESSAGES/libc.mo
+#usr/share/locale/ca
+#usr/share/locale/ca/LC_MESSAGES
+#usr/share/locale/ca/LC_MESSAGES/libc.mo
+#usr/share/locale/cs
+#usr/share/locale/cs/LC_MESSAGES
+#usr/share/locale/cs/LC_MESSAGES/libc.mo
+#usr/share/locale/da
+#usr/share/locale/da/LC_MESSAGES
+#usr/share/locale/da/LC_MESSAGES/libc.mo
+#usr/share/locale/de
+#usr/share/locale/de/LC_MESSAGES
+#usr/share/locale/de/LC_MESSAGES/libc.mo
+#usr/share/locale/el
+#usr/share/locale/el/LC_MESSAGES
+#usr/share/locale/el/LC_MESSAGES/libc.mo
+#usr/share/locale/en_GB
+#usr/share/locale/en_GB/LC_MESSAGES
+#usr/share/locale/en_GB/LC_MESSAGES/libc.mo
+#usr/share/locale/es
+#usr/share/locale/es/LC_MESSAGES
+#usr/share/locale/es/LC_MESSAGES/libc.mo
+#usr/share/locale/fi
+#usr/share/locale/fi/LC_MESSAGES
+#usr/share/locale/fi/LC_MESSAGES/libc.mo
+#usr/share/locale/fr
+#usr/share/locale/fr/LC_MESSAGES
+#usr/share/locale/fr/LC_MESSAGES/libc.mo
+#usr/share/locale/gl
+#usr/share/locale/gl/LC_MESSAGES
+#usr/share/locale/gl/LC_MESSAGES/libc.mo
+#usr/share/locale/hr
+#usr/share/locale/hr/LC_MESSAGES
+#usr/share/locale/hr/LC_MESSAGES/libc.mo
+#usr/share/locale/hu
+#usr/share/locale/hu/LC_MESSAGES
+#usr/share/locale/hu/LC_MESSAGES/libc.mo
+#usr/share/locale/id
+#usr/share/locale/id/LC_MESSAGES
+#usr/share/locale/id/LC_MESSAGES/libc.mo
+#usr/share/locale/it
+#usr/share/locale/it/LC_MESSAGES
+#usr/share/locale/it/LC_MESSAGES/libc.mo
+#usr/share/locale/ja
+#usr/share/locale/ja/LC_MESSAGES
+#usr/share/locale/ja/LC_MESSAGES/libc.mo
+#usr/share/locale/ko
+#usr/share/locale/ko/LC_MESSAGES
+#usr/share/locale/ko/LC_MESSAGES/libc.mo
+#usr/share/locale/locale.alias
+#usr/share/locale/lt
+#usr/share/locale/lt/LC_MESSAGES
+#usr/share/locale/lt/LC_MESSAGES/libc.mo
+#usr/share/locale/nb
+#usr/share/locale/nb/LC_MESSAGES
+#usr/share/locale/nb/LC_MESSAGES/libc.mo
+#usr/share/locale/nl
+#usr/share/locale/nl/LC_MESSAGES
+#usr/share/locale/nl/LC_MESSAGES/libc.mo
+#usr/share/locale/pl
+#usr/share/locale/pl/LC_MESSAGES
+#usr/share/locale/pl/LC_MESSAGES/libc.mo
+#usr/share/locale/pt_BR
+#usr/share/locale/pt_BR/LC_MESSAGES
+#usr/share/locale/pt_BR/LC_MESSAGES/libc.mo
+#usr/share/locale/ru
+#usr/share/locale/ru/LC_MESSAGES
+#usr/share/locale/ru/LC_MESSAGES/libc.mo
+#usr/share/locale/rw
+#usr/share/locale/rw/LC_MESSAGES
+#usr/share/locale/rw/LC_MESSAGES/libc.mo
+#usr/share/locale/sk
+#usr/share/locale/sk/LC_MESSAGES
+#usr/share/locale/sk/LC_MESSAGES/libc.mo
+#usr/share/locale/sv
+#usr/share/locale/sv/LC_MESSAGES
+#usr/share/locale/sv/LC_MESSAGES/libc.mo
+#usr/share/locale/tr
+#usr/share/locale/tr/LC_MESSAGES
+#usr/share/locale/tr/LC_MESSAGES/libc.mo
+#usr/share/locale/vi
+#usr/share/locale/vi/LC_MESSAGES
+#usr/share/locale/vi/LC_MESSAGES/libc.mo
+#usr/share/locale/zh_CN
+#usr/share/locale/zh_CN/LC_MESSAGES
+#usr/share/locale/zh_CN/LC_MESSAGES/libc.mo
+#usr/share/locale/zh_TW
+#usr/share/locale/zh_TW/LC_MESSAGES
+#usr/share/locale/zh_TW/LC_MESSAGES/libc.mo
+#var/cache/ldconfig
+#var/cache/ldconfig/aux-cache
diff --git a/config/rootfiles/common/x86_64/gmp b/config/rootfiles/common/x86_64/gmp
new file mode 100644 (file)
index 0000000..8f5ac55
--- /dev/null
@@ -0,0 +1,15 @@
+#usr/include/gmp.h
+#usr/include/gmpxx.h
+#usr/lib/libgmp.a
+#usr/lib/libgmp.la
+#usr/lib/libgmp.so
+usr/lib/libgmp.so.10
+usr/lib/libgmp.so.10.2.0
+#usr/lib/libgmpxx.a
+#usr/lib/libgmpxx.la
+#usr/lib/libgmpxx.so
+usr/lib/libgmpxx.so.4
+usr/lib/libgmpxx.so.4.4.0
+#usr/share/info/gmp.info
+#usr/share/info/gmp.info-1
+#usr/share/info/gmp.info-2
diff --git a/config/rootfiles/common/x86_64/grub b/config/rootfiles/common/x86_64/grub
new file mode 100644 (file)
index 0000000..19aef9b
--- /dev/null
@@ -0,0 +1,539 @@
+#boot/grub
+boot/grub/grub.cfg
+boot/grub/splash.png
+boot/grub/unifont.pf2
+#etc/bash_completion.d
+#etc/bash_completion.d/grub
+etc/default/grub
+etc/grub.d
+etc/grub.d/00_header
+etc/grub.d/10_linux
+etc/grub.d/20_linux_xen
+etc/grub.d/30_os-prober
+etc/grub.d/40_custom
+etc/grub.d/41_custom
+etc/grub.d/README
+etc/grub2.cfg
+usr/bin/grub-editenv
+usr/bin/grub-fstest
+usr/bin/grub-kbdcomp
+usr/bin/grub-menulst2cfg
+usr/bin/grub-mkfont
+usr/bin/grub-mkimage
+usr/bin/grub-mklayout
+usr/bin/grub-mkpasswd-pbkdf2
+usr/bin/grub-mkrelpath
+usr/bin/grub-mkrescue
+usr/bin/grub-mkstandalone
+usr/bin/grub-script-check
+usr/lib/grub
+usr/lib/grub/i386-pc
+usr/lib/grub/i386-pc/acpi.mod
+usr/lib/grub/i386-pc/acpi.module
+usr/lib/grub/i386-pc/adler32.mod
+usr/lib/grub/i386-pc/adler32.module
+usr/lib/grub/i386-pc/affs.mod
+usr/lib/grub/i386-pc/affs.module
+usr/lib/grub/i386-pc/afs.mod
+usr/lib/grub/i386-pc/afs.module
+usr/lib/grub/i386-pc/ahci.mod
+usr/lib/grub/i386-pc/ahci.module
+usr/lib/grub/i386-pc/all_video.mod
+usr/lib/grub/i386-pc/all_video.module
+usr/lib/grub/i386-pc/aout.mod
+usr/lib/grub/i386-pc/aout.module
+usr/lib/grub/i386-pc/at_keyboard.mod
+usr/lib/grub/i386-pc/at_keyboard.module
+usr/lib/grub/i386-pc/ata.mod
+usr/lib/grub/i386-pc/ata.module
+usr/lib/grub/i386-pc/backtrace.mod
+usr/lib/grub/i386-pc/backtrace.module
+usr/lib/grub/i386-pc/bfs.mod
+usr/lib/grub/i386-pc/bfs.module
+usr/lib/grub/i386-pc/biosdisk.mod
+usr/lib/grub/i386-pc/biosdisk.module
+usr/lib/grub/i386-pc/bitmap.mod
+usr/lib/grub/i386-pc/bitmap.module
+usr/lib/grub/i386-pc/bitmap_scale.mod
+usr/lib/grub/i386-pc/bitmap_scale.module
+usr/lib/grub/i386-pc/blocklist.mod
+usr/lib/grub/i386-pc/blocklist.module
+usr/lib/grub/i386-pc/boot.image
+usr/lib/grub/i386-pc/boot.img
+usr/lib/grub/i386-pc/boot.mod
+usr/lib/grub/i386-pc/boot.module
+usr/lib/grub/i386-pc/bsd.mod
+usr/lib/grub/i386-pc/bsd.module
+usr/lib/grub/i386-pc/btrfs.mod
+usr/lib/grub/i386-pc/btrfs.module
+usr/lib/grub/i386-pc/bufio.mod
+usr/lib/grub/i386-pc/bufio.module
+usr/lib/grub/i386-pc/cat.mod
+usr/lib/grub/i386-pc/cat.module
+usr/lib/grub/i386-pc/cdboot.image
+usr/lib/grub/i386-pc/cdboot.img
+usr/lib/grub/i386-pc/chain.mod
+usr/lib/grub/i386-pc/chain.module
+usr/lib/grub/i386-pc/cmostest.mod
+usr/lib/grub/i386-pc/cmostest.module
+usr/lib/grub/i386-pc/cmp.mod
+usr/lib/grub/i386-pc/cmp.module
+usr/lib/grub/i386-pc/command.lst
+usr/lib/grub/i386-pc/config.h
+usr/lib/grub/i386-pc/configfile.mod
+usr/lib/grub/i386-pc/configfile.module
+usr/lib/grub/i386-pc/cpio.mod
+usr/lib/grub/i386-pc/cpio.module
+usr/lib/grub/i386-pc/cpio_be.mod
+usr/lib/grub/i386-pc/cpio_be.module
+usr/lib/grub/i386-pc/cpuid.mod
+usr/lib/grub/i386-pc/cpuid.module
+usr/lib/grub/i386-pc/crc64.mod
+usr/lib/grub/i386-pc/crc64.module
+usr/lib/grub/i386-pc/crypto.lst
+usr/lib/grub/i386-pc/crypto.mod
+usr/lib/grub/i386-pc/crypto.module
+usr/lib/grub/i386-pc/cryptodisk.mod
+usr/lib/grub/i386-pc/cryptodisk.module
+usr/lib/grub/i386-pc/cs5536.mod
+usr/lib/grub/i386-pc/cs5536.module
+usr/lib/grub/i386-pc/date.mod
+usr/lib/grub/i386-pc/date.module
+usr/lib/grub/i386-pc/datehook.mod
+usr/lib/grub/i386-pc/datehook.module
+usr/lib/grub/i386-pc/datetime.mod
+usr/lib/grub/i386-pc/datetime.module
+usr/lib/grub/i386-pc/diskboot.image
+usr/lib/grub/i386-pc/diskboot.img
+usr/lib/grub/i386-pc/diskfilter.mod
+usr/lib/grub/i386-pc/diskfilter.module
+usr/lib/grub/i386-pc/dm_nv.mod
+usr/lib/grub/i386-pc/dm_nv.module
+usr/lib/grub/i386-pc/drivemap.mod
+usr/lib/grub/i386-pc/drivemap.module
+usr/lib/grub/i386-pc/echo.mod
+usr/lib/grub/i386-pc/echo.module
+usr/lib/grub/i386-pc/efiemu.mod
+usr/lib/grub/i386-pc/efiemu.module
+usr/lib/grub/i386-pc/efiemu32.o
+usr/lib/grub/i386-pc/efiemu64.o
+usr/lib/grub/i386-pc/ehci.mod
+usr/lib/grub/i386-pc/ehci.module
+usr/lib/grub/i386-pc/elf.mod
+usr/lib/grub/i386-pc/elf.module
+usr/lib/grub/i386-pc/exfat.mod
+usr/lib/grub/i386-pc/exfat.module
+usr/lib/grub/i386-pc/exfctest.mod
+usr/lib/grub/i386-pc/exfctest.module
+usr/lib/grub/i386-pc/ext2.mod
+usr/lib/grub/i386-pc/ext2.module
+usr/lib/grub/i386-pc/extcmd.mod
+usr/lib/grub/i386-pc/extcmd.module
+usr/lib/grub/i386-pc/fat.mod
+usr/lib/grub/i386-pc/fat.module
+usr/lib/grub/i386-pc/font.mod
+usr/lib/grub/i386-pc/font.module
+usr/lib/grub/i386-pc/freedos.mod
+usr/lib/grub/i386-pc/freedos.module
+usr/lib/grub/i386-pc/fs.lst
+usr/lib/grub/i386-pc/fshelp.mod
+usr/lib/grub/i386-pc/fshelp.module
+usr/lib/grub/i386-pc/functional_test.mod
+usr/lib/grub/i386-pc/functional_test.module
+usr/lib/grub/i386-pc/gcry_arcfour.mod
+usr/lib/grub/i386-pc/gcry_arcfour.module
+usr/lib/grub/i386-pc/gcry_blowfish.mod
+usr/lib/grub/i386-pc/gcry_blowfish.module
+usr/lib/grub/i386-pc/gcry_camellia.mod
+usr/lib/grub/i386-pc/gcry_camellia.module
+usr/lib/grub/i386-pc/gcry_cast5.mod
+usr/lib/grub/i386-pc/gcry_cast5.module
+usr/lib/grub/i386-pc/gcry_crc.mod
+usr/lib/grub/i386-pc/gcry_crc.module
+usr/lib/grub/i386-pc/gcry_des.mod
+usr/lib/grub/i386-pc/gcry_des.module
+usr/lib/grub/i386-pc/gcry_md4.mod
+usr/lib/grub/i386-pc/gcry_md4.module
+usr/lib/grub/i386-pc/gcry_md5.mod
+usr/lib/grub/i386-pc/gcry_md5.module
+usr/lib/grub/i386-pc/gcry_rfc2268.mod
+usr/lib/grub/i386-pc/gcry_rfc2268.module
+usr/lib/grub/i386-pc/gcry_rijndael.mod
+usr/lib/grub/i386-pc/gcry_rijndael.module
+usr/lib/grub/i386-pc/gcry_rmd160.mod
+usr/lib/grub/i386-pc/gcry_rmd160.module
+usr/lib/grub/i386-pc/gcry_seed.mod
+usr/lib/grub/i386-pc/gcry_seed.module
+usr/lib/grub/i386-pc/gcry_serpent.mod
+usr/lib/grub/i386-pc/gcry_serpent.module
+usr/lib/grub/i386-pc/gcry_sha1.mod
+usr/lib/grub/i386-pc/gcry_sha1.module
+usr/lib/grub/i386-pc/gcry_sha256.mod
+usr/lib/grub/i386-pc/gcry_sha256.module
+usr/lib/grub/i386-pc/gcry_sha512.mod
+usr/lib/grub/i386-pc/gcry_sha512.module
+usr/lib/grub/i386-pc/gcry_tiger.mod
+usr/lib/grub/i386-pc/gcry_tiger.module
+usr/lib/grub/i386-pc/gcry_twofish.mod
+usr/lib/grub/i386-pc/gcry_twofish.module
+usr/lib/grub/i386-pc/gcry_whirlpool.mod
+usr/lib/grub/i386-pc/gcry_whirlpool.module
+usr/lib/grub/i386-pc/gdb.mod
+usr/lib/grub/i386-pc/gdb.module
+usr/lib/grub/i386-pc/gdb_grub
+usr/lib/grub/i386-pc/geli.mod
+usr/lib/grub/i386-pc/geli.module
+usr/lib/grub/i386-pc/gettext.mod
+usr/lib/grub/i386-pc/gettext.module
+usr/lib/grub/i386-pc/gfxmenu.mod
+usr/lib/grub/i386-pc/gfxmenu.module
+usr/lib/grub/i386-pc/gfxterm.mod
+usr/lib/grub/i386-pc/gfxterm.module
+usr/lib/grub/i386-pc/gmodule.pl
+usr/lib/grub/i386-pc/gptsync.mod
+usr/lib/grub/i386-pc/gptsync.module
+usr/lib/grub/i386-pc/gzio.mod
+usr/lib/grub/i386-pc/gzio.module
+usr/lib/grub/i386-pc/halt.mod
+usr/lib/grub/i386-pc/halt.module
+usr/lib/grub/i386-pc/hashsum.mod
+usr/lib/grub/i386-pc/hashsum.module
+usr/lib/grub/i386-pc/hdparm.mod
+usr/lib/grub/i386-pc/hdparm.module
+usr/lib/grub/i386-pc/hello.mod
+usr/lib/grub/i386-pc/hello.module
+usr/lib/grub/i386-pc/help.mod
+usr/lib/grub/i386-pc/help.module
+usr/lib/grub/i386-pc/hexdump.mod
+usr/lib/grub/i386-pc/hexdump.module
+usr/lib/grub/i386-pc/hfs.mod
+usr/lib/grub/i386-pc/hfs.module
+usr/lib/grub/i386-pc/hfsplus.mod
+usr/lib/grub/i386-pc/hfsplus.module
+usr/lib/grub/i386-pc/http.mod
+usr/lib/grub/i386-pc/http.module
+usr/lib/grub/i386-pc/iorw.mod
+usr/lib/grub/i386-pc/iorw.module
+usr/lib/grub/i386-pc/iso9660.mod
+usr/lib/grub/i386-pc/iso9660.module
+usr/lib/grub/i386-pc/jfs.mod
+usr/lib/grub/i386-pc/jfs.module
+usr/lib/grub/i386-pc/jpeg.mod
+usr/lib/grub/i386-pc/jpeg.module
+usr/lib/grub/i386-pc/kernel.exec
+usr/lib/grub/i386-pc/kernel.img
+usr/lib/grub/i386-pc/keylayouts.mod
+usr/lib/grub/i386-pc/keylayouts.module
+usr/lib/grub/i386-pc/keystatus.mod
+usr/lib/grub/i386-pc/keystatus.module
+usr/lib/grub/i386-pc/ldm.mod
+usr/lib/grub/i386-pc/ldm.module
+usr/lib/grub/i386-pc/legacycfg.mod
+usr/lib/grub/i386-pc/legacycfg.module
+usr/lib/grub/i386-pc/linux.mod
+usr/lib/grub/i386-pc/linux.module
+usr/lib/grub/i386-pc/linux16.mod
+usr/lib/grub/i386-pc/linux16.module
+usr/lib/grub/i386-pc/lnxboot.image
+usr/lib/grub/i386-pc/lnxboot.img
+usr/lib/grub/i386-pc/loadenv.mod
+usr/lib/grub/i386-pc/loadenv.module
+usr/lib/grub/i386-pc/loopback.mod
+usr/lib/grub/i386-pc/loopback.module
+usr/lib/grub/i386-pc/ls.mod
+usr/lib/grub/i386-pc/ls.module
+usr/lib/grub/i386-pc/lsacpi.mod
+usr/lib/grub/i386-pc/lsacpi.module
+usr/lib/grub/i386-pc/lsapm.mod
+usr/lib/grub/i386-pc/lsapm.module
+usr/lib/grub/i386-pc/lsmmap.mod
+usr/lib/grub/i386-pc/lsmmap.module
+usr/lib/grub/i386-pc/lspci.mod
+usr/lib/grub/i386-pc/lspci.module
+usr/lib/grub/i386-pc/luks.mod
+usr/lib/grub/i386-pc/luks.module
+usr/lib/grub/i386-pc/lvm.mod
+usr/lib/grub/i386-pc/lvm.module
+usr/lib/grub/i386-pc/lzma_decompress.image
+usr/lib/grub/i386-pc/lzma_decompress.img
+usr/lib/grub/i386-pc/lzopio.mod
+usr/lib/grub/i386-pc/lzopio.module
+usr/lib/grub/i386-pc/mdraid09.mod
+usr/lib/grub/i386-pc/mdraid09.module
+usr/lib/grub/i386-pc/mdraid09_be.mod
+usr/lib/grub/i386-pc/mdraid09_be.module
+usr/lib/grub/i386-pc/mdraid1x.mod
+usr/lib/grub/i386-pc/mdraid1x.module
+usr/lib/grub/i386-pc/memdisk.mod
+usr/lib/grub/i386-pc/memdisk.module
+usr/lib/grub/i386-pc/memrw.mod
+usr/lib/grub/i386-pc/memrw.module
+usr/lib/grub/i386-pc/minicmd.mod
+usr/lib/grub/i386-pc/minicmd.module
+usr/lib/grub/i386-pc/minix.mod
+usr/lib/grub/i386-pc/minix.module
+usr/lib/grub/i386-pc/minix2.mod
+usr/lib/grub/i386-pc/minix2.module
+usr/lib/grub/i386-pc/minix2_be.mod
+usr/lib/grub/i386-pc/minix2_be.module
+usr/lib/grub/i386-pc/minix3.mod
+usr/lib/grub/i386-pc/minix3.module
+usr/lib/grub/i386-pc/minix3_be.mod
+usr/lib/grub/i386-pc/minix3_be.module
+usr/lib/grub/i386-pc/minix_be.mod
+usr/lib/grub/i386-pc/minix_be.module
+usr/lib/grub/i386-pc/mmap.mod
+usr/lib/grub/i386-pc/mmap.module
+usr/lib/grub/i386-pc/moddep.lst
+usr/lib/grub/i386-pc/modinfo.sh
+usr/lib/grub/i386-pc/msdospart.mod
+usr/lib/grub/i386-pc/msdospart.module
+usr/lib/grub/i386-pc/multiboot.mod
+usr/lib/grub/i386-pc/multiboot.module
+usr/lib/grub/i386-pc/multiboot2.mod
+usr/lib/grub/i386-pc/multiboot2.module
+usr/lib/grub/i386-pc/net.mod
+usr/lib/grub/i386-pc/net.module
+usr/lib/grub/i386-pc/newc.mod
+usr/lib/grub/i386-pc/newc.module
+usr/lib/grub/i386-pc/nilfs2.mod
+usr/lib/grub/i386-pc/nilfs2.module
+usr/lib/grub/i386-pc/normal.mod
+usr/lib/grub/i386-pc/normal.module
+usr/lib/grub/i386-pc/ntfs.mod
+usr/lib/grub/i386-pc/ntfs.module
+usr/lib/grub/i386-pc/ntfscomp.mod
+usr/lib/grub/i386-pc/ntfscomp.module
+usr/lib/grub/i386-pc/ntldr.mod
+usr/lib/grub/i386-pc/ntldr.module
+usr/lib/grub/i386-pc/odc.mod
+usr/lib/grub/i386-pc/odc.module
+usr/lib/grub/i386-pc/ohci.mod
+usr/lib/grub/i386-pc/ohci.module
+usr/lib/grub/i386-pc/part_acorn.mod
+usr/lib/grub/i386-pc/part_acorn.module
+usr/lib/grub/i386-pc/part_amiga.mod
+usr/lib/grub/i386-pc/part_amiga.module
+usr/lib/grub/i386-pc/part_apple.mod
+usr/lib/grub/i386-pc/part_apple.module
+usr/lib/grub/i386-pc/part_bsd.mod
+usr/lib/grub/i386-pc/part_bsd.module
+usr/lib/grub/i386-pc/part_dvh.mod
+usr/lib/grub/i386-pc/part_dvh.module
+usr/lib/grub/i386-pc/part_gpt.mod
+usr/lib/grub/i386-pc/part_gpt.module
+usr/lib/grub/i386-pc/part_msdos.mod
+usr/lib/grub/i386-pc/part_msdos.module
+usr/lib/grub/i386-pc/part_plan.mod
+usr/lib/grub/i386-pc/part_plan.module
+usr/lib/grub/i386-pc/part_sun.mod
+usr/lib/grub/i386-pc/part_sun.module
+usr/lib/grub/i386-pc/part_sunpc.mod
+usr/lib/grub/i386-pc/part_sunpc.module
+usr/lib/grub/i386-pc/partmap.lst
+usr/lib/grub/i386-pc/parttool.lst
+usr/lib/grub/i386-pc/parttool.mod
+usr/lib/grub/i386-pc/parttool.module
+usr/lib/grub/i386-pc/password.mod
+usr/lib/grub/i386-pc/password.module
+usr/lib/grub/i386-pc/password_pbkdf2.mod
+usr/lib/grub/i386-pc/password_pbkdf2.module
+usr/lib/grub/i386-pc/pata.mod
+usr/lib/grub/i386-pc/pata.module
+usr/lib/grub/i386-pc/pbkdf2.mod
+usr/lib/grub/i386-pc/pbkdf2.module
+usr/lib/grub/i386-pc/pci.mod
+usr/lib/grub/i386-pc/pci.module
+usr/lib/grub/i386-pc/plan9.mod
+usr/lib/grub/i386-pc/plan9.module
+usr/lib/grub/i386-pc/play.mod
+usr/lib/grub/i386-pc/play.module
+usr/lib/grub/i386-pc/png.mod
+usr/lib/grub/i386-pc/png.module
+usr/lib/grub/i386-pc/priority_queue.mod
+usr/lib/grub/i386-pc/priority_queue.module
+usr/lib/grub/i386-pc/probe.mod
+usr/lib/grub/i386-pc/probe.module
+usr/lib/grub/i386-pc/pxe.mod
+usr/lib/grub/i386-pc/pxe.module
+usr/lib/grub/i386-pc/pxeboot.image
+usr/lib/grub/i386-pc/pxeboot.img
+usr/lib/grub/i386-pc/pxechain.mod
+usr/lib/grub/i386-pc/pxechain.module
+usr/lib/grub/i386-pc/raid5rec.mod
+usr/lib/grub/i386-pc/raid5rec.module
+usr/lib/grub/i386-pc/raid6rec.mod
+usr/lib/grub/i386-pc/raid6rec.module
+usr/lib/grub/i386-pc/read.mod
+usr/lib/grub/i386-pc/read.module
+usr/lib/grub/i386-pc/reboot.mod
+usr/lib/grub/i386-pc/reboot.module
+usr/lib/grub/i386-pc/regexp.mod
+usr/lib/grub/i386-pc/regexp.module
+usr/lib/grub/i386-pc/reiserfs.mod
+usr/lib/grub/i386-pc/reiserfs.module
+usr/lib/grub/i386-pc/relocator.mod
+usr/lib/grub/i386-pc/relocator.module
+usr/lib/grub/i386-pc/romfs.mod
+usr/lib/grub/i386-pc/romfs.module
+usr/lib/grub/i386-pc/scsi.mod
+usr/lib/grub/i386-pc/scsi.module
+usr/lib/grub/i386-pc/search.mod
+usr/lib/grub/i386-pc/search.module
+usr/lib/grub/i386-pc/search_fs_file.mod
+usr/lib/grub/i386-pc/search_fs_file.module
+usr/lib/grub/i386-pc/search_fs_uuid.mod
+usr/lib/grub/i386-pc/search_fs_uuid.module
+usr/lib/grub/i386-pc/search_label.mod
+usr/lib/grub/i386-pc/search_label.module
+usr/lib/grub/i386-pc/sendkey.mod
+usr/lib/grub/i386-pc/sendkey.module
+usr/lib/grub/i386-pc/serial.mod
+usr/lib/grub/i386-pc/serial.module
+usr/lib/grub/i386-pc/setjmp.mod
+usr/lib/grub/i386-pc/setjmp.module
+usr/lib/grub/i386-pc/setpci.mod
+usr/lib/grub/i386-pc/setpci.module
+usr/lib/grub/i386-pc/sfs.mod
+usr/lib/grub/i386-pc/sfs.module
+usr/lib/grub/i386-pc/sleep.mod
+usr/lib/grub/i386-pc/sleep.module
+usr/lib/grub/i386-pc/squash4.mod
+usr/lib/grub/i386-pc/squash4.module
+usr/lib/grub/i386-pc/tar.mod
+usr/lib/grub/i386-pc/tar.module
+usr/lib/grub/i386-pc/terminal.lst
+usr/lib/grub/i386-pc/terminal.mod
+usr/lib/grub/i386-pc/terminal.module
+usr/lib/grub/i386-pc/terminfo.mod
+usr/lib/grub/i386-pc/terminfo.module
+usr/lib/grub/i386-pc/test.mod
+usr/lib/grub/i386-pc/test.module
+usr/lib/grub/i386-pc/test_blockarg.mod
+usr/lib/grub/i386-pc/test_blockarg.module
+usr/lib/grub/i386-pc/testload.mod
+usr/lib/grub/i386-pc/testload.module
+usr/lib/grub/i386-pc/tftp.mod
+usr/lib/grub/i386-pc/tftp.module
+usr/lib/grub/i386-pc/tga.mod
+usr/lib/grub/i386-pc/tga.module
+usr/lib/grub/i386-pc/time.mod
+usr/lib/grub/i386-pc/time.module
+usr/lib/grub/i386-pc/trig.mod
+usr/lib/grub/i386-pc/trig.module
+usr/lib/grub/i386-pc/true.mod
+usr/lib/grub/i386-pc/true.module
+usr/lib/grub/i386-pc/udf.mod
+usr/lib/grub/i386-pc/udf.module
+usr/lib/grub/i386-pc/ufs1.mod
+usr/lib/grub/i386-pc/ufs1.module
+usr/lib/grub/i386-pc/ufs2.mod
+usr/lib/grub/i386-pc/ufs2.module
+usr/lib/grub/i386-pc/uhci.mod
+usr/lib/grub/i386-pc/uhci.module
+usr/lib/grub/i386-pc/usb.mod
+usr/lib/grub/i386-pc/usb.module
+usr/lib/grub/i386-pc/usb_keyboard.mod
+usr/lib/grub/i386-pc/usb_keyboard.module
+usr/lib/grub/i386-pc/usbms.mod
+usr/lib/grub/i386-pc/usbms.module
+usr/lib/grub/i386-pc/usbserial_common.mod
+usr/lib/grub/i386-pc/usbserial_common.module
+usr/lib/grub/i386-pc/usbserial_ftdi.mod
+usr/lib/grub/i386-pc/usbserial_ftdi.module
+usr/lib/grub/i386-pc/usbserial_pl2303.mod
+usr/lib/grub/i386-pc/usbserial_pl2303.module
+usr/lib/grub/i386-pc/usbtest.mod
+usr/lib/grub/i386-pc/usbtest.module
+usr/lib/grub/i386-pc/vbe.mod
+usr/lib/grub/i386-pc/vbe.module
+usr/lib/grub/i386-pc/vga.mod
+usr/lib/grub/i386-pc/vga.module
+usr/lib/grub/i386-pc/vga_text.mod
+usr/lib/grub/i386-pc/vga_text.module
+usr/lib/grub/i386-pc/video.lst
+usr/lib/grub/i386-pc/video.mod
+usr/lib/grub/i386-pc/video.module
+usr/lib/grub/i386-pc/video_bochs.mod
+usr/lib/grub/i386-pc/video_bochs.module
+usr/lib/grub/i386-pc/video_cirrus.mod
+usr/lib/grub/i386-pc/video_cirrus.module
+usr/lib/grub/i386-pc/video_fb.mod
+usr/lib/grub/i386-pc/video_fb.module
+usr/lib/grub/i386-pc/videoinfo.mod
+usr/lib/grub/i386-pc/videoinfo.module
+usr/lib/grub/i386-pc/videotest.mod
+usr/lib/grub/i386-pc/videotest.module
+usr/lib/grub/i386-pc/xfs.mod
+usr/lib/grub/i386-pc/xfs.module
+usr/lib/grub/i386-pc/xnu.mod
+usr/lib/grub/i386-pc/xnu.module
+usr/lib/grub/i386-pc/xnu_uuid.mod
+usr/lib/grub/i386-pc/xnu_uuid.module
+usr/lib/grub/i386-pc/xzio.mod
+usr/lib/grub/i386-pc/xzio.module
+usr/lib/grub/i386-pc/zfs.mod
+usr/lib/grub/i386-pc/zfs.module
+usr/lib/grub/i386-pc/zfscrypt.mod
+usr/lib/grub/i386-pc/zfscrypt.module
+usr/lib/grub/i386-pc/zfsinfo.mod
+usr/lib/grub/i386-pc/zfsinfo.module
+usr/sbin/grub-bios-setup
+usr/sbin/grub-install
+usr/sbin/grub-mkconfig
+usr/sbin/grub-mknetdir
+usr/sbin/grub-ofpathname
+usr/sbin/grub-probe
+usr/sbin/grub-reboot
+usr/sbin/grub-set-default
+usr/sbin/grub-sparc64-setup
+usr/share/grub
+usr/share/grub/grub-mkconfig_lib
+#usr/share/info/grub-dev.info
+#usr/share/info/grub.info
+#usr/share/locale/ast
+#usr/share/locale/ast/LC_MESSAGES
+#usr/share/locale/ast/LC_MESSAGES/grub.mo
+#usr/share/locale/ca/LC_MESSAGES/grub.mo
+#usr/share/locale/da/LC_MESSAGES/grub.mo
+#usr/share/locale/de/LC_MESSAGES/grub.mo
+#usr/share/locale/de@hebrew
+#usr/share/locale/de@hebrew/LC_MESSAGES
+#usr/share/locale/de@hebrew/LC_MESSAGES/grub.mo
+#usr/share/locale/de_CH
+#usr/share/locale/de_CH/LC_MESSAGES
+#usr/share/locale/de_CH/LC_MESSAGES/grub.mo
+#usr/share/locale/en@arabic
+#usr/share/locale/en@arabic/LC_MESSAGES
+#usr/share/locale/en@arabic/LC_MESSAGES/grub.mo
+#usr/share/locale/en@cyrillic
+#usr/share/locale/en@cyrillic/LC_MESSAGES
+#usr/share/locale/en@cyrillic/LC_MESSAGES/grub.mo
+#usr/share/locale/en@greek
+#usr/share/locale/en@greek/LC_MESSAGES
+#usr/share/locale/en@greek/LC_MESSAGES/grub.mo
+#usr/share/locale/en@hebrew
+#usr/share/locale/en@hebrew/LC_MESSAGES
+#usr/share/locale/en@hebrew/LC_MESSAGES/grub.mo
+#usr/share/locale/en@piglatin
+#usr/share/locale/en@piglatin/LC_MESSAGES
+#usr/share/locale/en@piglatin/LC_MESSAGES/grub.mo
+#usr/share/locale/en@quot/LC_MESSAGES/grub.mo
+#usr/share/locale/eo/LC_MESSAGES/grub.mo
+#usr/share/locale/fi/LC_MESSAGES/grub.mo
+#usr/share/locale/fr/LC_MESSAGES/grub.mo
+#usr/share/locale/hu/LC_MESSAGES/grub.mo
+#usr/share/locale/id/LC_MESSAGES/grub.mo
+#usr/share/locale/it/LC_MESSAGES/grub.mo
+#usr/share/locale/ja/LC_MESSAGES/grub.mo
+#usr/share/locale/nl/LC_MESSAGES/grub.mo
+#usr/share/locale/pa
+#usr/share/locale/pa/LC_MESSAGES
+#usr/share/locale/pa/LC_MESSAGES/grub.mo
+#usr/share/locale/pl/LC_MESSAGES/grub.mo
+#usr/share/locale/ru/LC_MESSAGES/grub.mo
+#usr/share/locale/sv/LC_MESSAGES/grub.mo
+#usr/share/locale/uk/LC_MESSAGES/grub.mo
+#usr/share/locale/vi/LC_MESSAGES/grub.mo
+#usr/share/locale/zh_CN/LC_MESSAGES/grub.mo
+#usr/share/locale/zh_TW/LC_MESSAGES/grub.mo
diff --git a/config/rootfiles/common/x86_64/initscripts b/config/rootfiles/common/x86_64/initscripts
new file mode 100644 (file)
index 0000000..80ae0dd
--- /dev/null
@@ -0,0 +1,251 @@
+etc/init.d
+#etc/rc.d
+#etc/rc.d/helper
+etc/rc.d/helper/getdnsfromdhcpc.pl
+etc/rc.d/helper/writeipac.pl
+#etc/rc.d/init.d
+etc/rc.d/init.d/acpid
+#etc/rc.d/init.d/alsa
+#etc/rc.d/init.d/amavisd
+etc/rc.d/init.d/apache
+#etc/rc.d/init.d/apcupsd
+#etc/rc.d/init.d/applejuice
+#etc/rc.d/init.d/asterisk
+etc/rc.d/init.d/beep
+#etc/rc.d/init.d/bluetooth
+etc/rc.d/init.d/checkfs
+etc/rc.d/init.d/checkfstab
+#etc/rc.d/init.d/clamav
+etc/rc.d/init.d/cleanfs
+#etc/rc.d/init.d/client175
+etc/rc.d/init.d/collectd
+etc/rc.d/init.d/connectd
+etc/rc.d/init.d/console
+#etc/rc.d/init.d/cpufreq
+#etc/rc.d/init.d/cups
+#etc/rc.d/init.d/cyrus-imapd
+#etc/rc.d/init.d/cyrus-sasl
+etc/rc.d/init.d/dhcp
+etc/rc.d/init.d/dhcrelay
+#etc/rc.d/init.d/dnsdist
+etc/rc.d/init.d/dnsmasq
+etc/rc.d/init.d/fcron
+#etc/rc.d/init.d/fetchmail
+etc/rc.d/init.d/fireinfo
+etc/rc.d/init.d/firewall
+etc/rc.d/init.d/firstsetup
+etc/rc.d/init.d/fsresize
+etc/rc.d/init.d/functions
+#etc/rc.d/init.d/gnump3d
+etc/rc.d/init.d/halt
+#etc/rc.d/init.d/haproxy
+#etc/rc.d/init.d/hostapd
+#etc/rc.d/init.d/imspector
+etc/rc.d/init.d/ipsec
+#etc/rc.d/init.d/keepalived
+#etc/rc.d/init.d/lcd4linux
+#etc/rc.d/init.d/lcdproc
+#etc/rc.d/init.d/lcr
+etc/rc.d/init.d/leds
+etc/rc.d/init.d/localnet
+etc/rc.d/init.d/mISDN
+#etc/rc.d/init.d/mediatomb
+#etc/rc.d/init.d/messagebus
+#etc/rc.d/init.d/miau
+#etc/rc.d/init.d/minidlna
+#etc/rc.d/init.d/miniupnpd
+#etc/rc.d/init.d/mldonkey
+etc/rc.d/init.d/modules
+#etc/rc.d/init.d/monit
+#etc/rc.d/init.d/motion
+etc/rc.d/init.d/mountfs
+etc/rc.d/init.d/mountkernfs
+etc/rc.d/init.d/mounttmpfs
+#etc/rc.d/init.d/mpd
+#etc/rc.d/init.d/mysql
+#etc/rc.d/init.d/netsnmpd
+etc/rc.d/init.d/network
+etc/rc.d/init.d/network-trigger
+#etc/rc.d/init.d/networking
+etc/rc.d/init.d/networking/any
+etc/rc.d/init.d/networking/blue
+etc/rc.d/init.d/networking/dhcpcd.exe
+etc/rc.d/init.d/networking/functions.network
+etc/rc.d/init.d/networking/green
+etc/rc.d/init.d/networking/orange
+etc/rc.d/init.d/networking/red
+#etc/rc.d/init.d/networking/red.down
+etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq
+etc/rc.d/init.d/networking/red.down/10-ipsec
+etc/rc.d/init.d/networking/red.down/10-miniupnpd
+etc/rc.d/init.d/networking/red.down/10-ovpn
+etc/rc.d/init.d/networking/red.down/10-static-routes
+etc/rc.d/init.d/networking/red.down/20-firewall
+#etc/rc.d/init.d/networking/red.up
+etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup
+etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq
+etc/rc.d/init.d/networking/red.up/10-miniupnpd
+etc/rc.d/init.d/networking/red.up/10-multicast
+etc/rc.d/init.d/networking/red.up/10-static-routes
+etc/rc.d/init.d/networking/red.up/20-firewall
+etc/rc.d/init.d/networking/red.up/23-RS-snort
+etc/rc.d/init.d/networking/red.up/24-RS-qos
+etc/rc.d/init.d/networking/red.up/27-RS-squid
+etc/rc.d/init.d/networking/red.up/30-ddns
+etc/rc.d/init.d/networking/red.up/40-ipac
+etc/rc.d/init.d/networking/red.up/50-ipsec
+etc/rc.d/init.d/networking/red.up/50-ovpn
+etc/rc.d/init.d/networking/red.up/98-leds
+etc/rc.d/init.d/networking/red.up/99-fireinfo
+etc/rc.d/init.d/networking/red.up/99-geoip-database
+etc/rc.d/init.d/networking/red.up/99-pakfire-update
+etc/rc.d/init.d/networking/wpa_supplicant.exe
+#etc/rc.d/init.d/nfs-server
+etc/rc.d/init.d/ntp
+#etc/rc.d/init.d/nut
+#etc/rc.d/init.d/openvmtools
+etc/rc.d/init.d/partresize
+#etc/rc.d/init.d/portmap
+#etc/rc.d/init.d/postfix
+#etc/rc.d/init.d/pound
+etc/rc.d/init.d/random
+etc/rc.d/init.d/rc
+etc/rc.d/init.d/reboot
+etc/rc.d/init.d/rngd
+#etc/rc.d/init.d/samba
+#etc/rc.d/init.d/sane
+etc/rc.d/init.d/sendsignals
+etc/rc.d/init.d/setclock
+etc/rc.d/init.d/smartenabler
+etc/rc.d/init.d/snort
+#etc/rc.d/init.d/spamassassin
+etc/rc.d/init.d/squid
+etc/rc.d/init.d/sshd
+#etc/rc.d/init.d/sslh
+etc/rc.d/init.d/static-routes
+#etc/rc.d/init.d/stunnel
+etc/rc.d/init.d/swap
+etc/rc.d/init.d/sysctl
+etc/rc.d/init.d/sysklogd
+etc/rc.d/init.d/template
+#etc/rc.d/init.d/tftpd
+#etc/rc.d/init.d/tor
+#etc/rc.d/init.d/transmission
+etc/rc.d/init.d/udev
+etc/rc.d/init.d/udev_retry
+etc/rc.d/init.d/upnpd
+#etc/rc.d/init.d/vdr
+#etc/rc.d/init.d/vdradmin
+etc/rc.d/init.d/vnstat
+#etc/rc.d/init.d/vsftpd
+etc/rc.d/init.d/waitdrives
+#etc/rc.d/init.d/watchdog
+etc/rc.d/init.d/wlanclient
+#etc/rc.d/init.d/xinetd
+#etc/rc.d/rc0.d
+#etc/rc.d/rc0.d/K01imspetor
+#etc/rc.d/rc0.d/K01motion
+#etc/rc.d/rc0.d/K01vdradmin
+#etc/rc.d/rc0.d/K02mediatomb
+#etc/rc.d/rc0.d/K02sslh
+etc/rc.d/rc0.d/K08fcron
+etc/rc.d/rc0.d/K28apache
+etc/rc.d/rc0.d/K30sshd
+#etc/rc.d/rc0.d/K34client175
+etc/rc.d/rc0.d/K45random
+etc/rc.d/rc0.d/K47setclock
+etc/rc.d/rc0.d/K49cyrus-sasl
+etc/rc.d/rc0.d/K51vnstat
+etc/rc.d/rc0.d/K78snort
+etc/rc.d/rc0.d/K79leds
+etc/rc.d/rc0.d/K80network
+etc/rc.d/rc0.d/K82wlanclient
+#etc/rc.d/rc0.d/K84bluetooth
+#etc/rc.d/rc0.d/K85messagebus
+etc/rc.d/rc0.d/K87acpid
+etc/rc.d/rc0.d/K90sysklogd
+etc/rc.d/rc0.d/S60sendsignals
+etc/rc.d/rc0.d/S70localnet
+etc/rc.d/rc0.d/S80mountfs
+etc/rc.d/rc0.d/S90swap
+etc/rc.d/rc0.d/S99halt
+#etc/rc.d/rc3.d
+etc/rc.d/rc3.d/S01vnstat
+etc/rc.d/rc3.d/S10sysklogd
+etc/rc.d/rc3.d/S12acpid
+etc/rc.d/rc3.d/S15fireinfo
+#etc/rc.d/rc3.d/S15messagebus
+#etc/rc.d/rc3.d/S16bluetooth
+#etc/rc.d/rc3.d/S18cpufreq
+etc/rc.d/rc3.d/S19smartenabler
+etc/rc.d/rc3.d/S19wlanclient
+etc/rc.d/rc3.d/S20network
+etc/rc.d/rc3.d/S21leds
+etc/rc.d/rc3.d/S24cyrus-sasl
+etc/rc.d/rc3.d/S25random
+etc/rc.d/rc3.d/S30sshd
+etc/rc.d/rc3.d/S32apache
+etc/rc.d/rc3.d/S40fcron
+#etc/rc.d/rc3.d/S66client175
+#etc/rc.d/rc3.d/S98mediatomb
+etc/rc.d/rc3.d/S98rc.local
+#etc/rc.d/rc3.d/S98sslh
+#etc/rc.d/rc3.d/S99imspetor
+#etc/rc.d/rc3.d/S99motion
+#etc/rc.d/rc3.d/S99vdradmin
+#etc/rc.d/rc6.d
+#etc/rc.d/rc6.d/K01imspetor
+#etc/rc.d/rc6.d/K01motion
+#etc/rc.d/rc6.d/K01vdradmin
+#etc/rc.d/rc6.d/K02mediatomb
+#etc/rc.d/rc6.d/K02sslh
+etc/rc.d/rc6.d/K08fcron
+etc/rc.d/rc6.d/K28apache
+etc/rc.d/rc6.d/K30sshd
+#etc/rc.d/rc6.d/K34client175
+etc/rc.d/rc6.d/K45random
+etc/rc.d/rc6.d/K47setclock
+etc/rc.d/rc6.d/K49cyrus-sasl
+etc/rc.d/rc6.d/K51vnstat
+etc/rc.d/rc6.d/K78snort
+etc/rc.d/rc6.d/K79leds
+etc/rc.d/rc6.d/K80network
+etc/rc.d/rc6.d/K82wlanclient
+#etc/rc.d/rc6.d/K84bluetooth
+#etc/rc.d/rc6.d/K85messagebus
+etc/rc.d/rc6.d/K87acpid
+etc/rc.d/rc6.d/K90sysklogd
+etc/rc.d/rc6.d/S60sendsignals
+etc/rc.d/rc6.d/S70mountfs
+etc/rc.d/rc6.d/S80swap
+etc/rc.d/rc6.d/S90localnet
+etc/rc.d/rc6.d/S99reboot
+#etc/rc.d/rcsysinit.d
+etc/rc.d/rcsysinit.d/S00mountkernfs
+etc/rc.d/rcsysinit.d/S01sysctl
+etc/rc.d/rcsysinit.d/S05modules
+etc/rc.d/rcsysinit.d/S10udev
+etc/rc.d/rcsysinit.d/S19checkfstab
+etc/rc.d/rcsysinit.d/S19waitdrives
+etc/rc.d/rcsysinit.d/S20swap
+etc/rc.d/rcsysinit.d/S25partresize
+etc/rc.d/rcsysinit.d/S30checkfs
+etc/rc.d/rcsysinit.d/S40mountfs
+etc/rc.d/rcsysinit.d/S42fsresize
+etc/rc.d/rcsysinit.d/S43mounttmpfs
+etc/rc.d/rcsysinit.d/S45udev_retry
+etc/rc.d/rcsysinit.d/S50cleanfs
+etc/rc.d/rcsysinit.d/S60setclock
+etc/rc.d/rcsysinit.d/S70console
+etc/rc.d/rcsysinit.d/S75firstsetup
+etc/rc.d/rcsysinit.d/S80localnet
+etc/rc.d/rcsysinit.d/S85firewall
+etc/rc.d/rcsysinit.d/S90network-trigger
+etc/rc.d/rcsysinit.d/S92rngd
+#etc/sysconfig
+etc/sysconfig/createfiles
+etc/sysconfig/firewall.local
+etc/sysconfig/modules
+etc/sysconfig/ramdisk
+etc/sysconfig/rc
+etc/sysconfig/rc.local
diff --git a/config/rootfiles/common/x86_64/ipfire-netboot b/config/rootfiles/common/x86_64/ipfire-netboot
new file mode 100644 (file)
index 0000000..b73261f
--- /dev/null
@@ -0,0 +1,2 @@
+#usr/share/ipfire-netboot
+#usr/share/ipfire-netboot/ipxe.lkrn
diff --git a/config/rootfiles/common/x86_64/linux b/config/rootfiles/common/x86_64/linux
new file mode 100644 (file)
index 0000000..2cae007
--- /dev/null
@@ -0,0 +1,3007 @@
+boot/System.map-KVER-ipfire
+boot/config-KVER-ipfire
+boot/vmlinuz-KVER-ipfire
+etc/modprobe.d/framebuffer.conf
+etc/modprobe.d/ipv6.conf
+etc/modprobe.d/isdn.conf
+#lib/modules
+lib/modules/KVER-ipfire
+#lib/modules/KVER-ipfire/build
+#lib/modules/KVER-ipfire/kernel
+#lib/modules/KVER-ipfire/kernel/arch
+#lib/modules/KVER-ipfire/kernel/arch/x86
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/blowfish-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/camellia-aesni-avx-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/camellia-aesni-avx2.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/camellia-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/cast5-avx-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/cast6-avx-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/crc32-pclmul.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/crct10dif-pclmul.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/ghash-clmulni-intel.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/salsa20-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/serpent-avx-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/serpent-avx2.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/serpent-sse2-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/sha1-ssse3.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/sha256-ssse3.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/sha512-ssse3.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/twofish-avx-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/twofish-x86_64-3way.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/twofish-x86_64.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/ia32
+#lib/modules/KVER-ipfire/kernel/arch/x86/ia32/ia32_aout.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/kernel
+#lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu
+#lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu/microcode
+#lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu/microcode/microcode.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/kernel/iosf_mbi.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/kernel/test_nx.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/kvm
+#lib/modules/KVER-ipfire/kernel/arch/x86/kvm/kvm-amd.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/kvm/kvm-intel.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/kvm/kvm.ko
+#lib/modules/KVER-ipfire/kernel/crypto
+#lib/modules/KVER-ipfire/kernel/crypto/ansi_cprng.ko
+#lib/modules/KVER-ipfire/kernel/crypto/anubis.ko
+#lib/modules/KVER-ipfire/kernel/crypto/arc4.ko
+#lib/modules/KVER-ipfire/kernel/crypto/asymmetric_keys
+#lib/modules/KVER-ipfire/kernel/crypto/asymmetric_keys/asymmetric_keys.ko
+#lib/modules/KVER-ipfire/kernel/crypto/asymmetric_keys/public_key.ko
+#lib/modules/KVER-ipfire/kernel/crypto/asymmetric_keys/rsa.ko
+#lib/modules/KVER-ipfire/kernel/crypto/asymmetric_keys/x509_key_parser.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_memcpy.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_pq.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_raid6_recov.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_tx.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_xor.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/raid6test.ko
+#lib/modules/KVER-ipfire/kernel/crypto/authenc.ko
+#lib/modules/KVER-ipfire/kernel/crypto/authencesn.ko
+#lib/modules/KVER-ipfire/kernel/crypto/blowfish_common.ko
+#lib/modules/KVER-ipfire/kernel/crypto/blowfish_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/camellia_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/cast5_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/cast6_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/cast_common.ko
+#lib/modules/KVER-ipfire/kernel/crypto/ccm.ko
+#lib/modules/KVER-ipfire/kernel/crypto/cmac.ko
+#lib/modules/KVER-ipfire/kernel/crypto/crypto_null.ko
+#lib/modules/KVER-ipfire/kernel/crypto/cts.ko
+#lib/modules/KVER-ipfire/kernel/crypto/deflate.ko
+#lib/modules/KVER-ipfire/kernel/crypto/des_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/fcrypt.ko
+#lib/modules/KVER-ipfire/kernel/crypto/gcm.ko
+#lib/modules/KVER-ipfire/kernel/crypto/ghash-generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/khazad.ko
+#lib/modules/KVER-ipfire/kernel/crypto/lz4.ko
+#lib/modules/KVER-ipfire/kernel/crypto/lz4hc.ko
+#lib/modules/KVER-ipfire/kernel/crypto/lzo.ko
+#lib/modules/KVER-ipfire/kernel/crypto/md4.ko
+#lib/modules/KVER-ipfire/kernel/crypto/michael_mic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/pcbc.ko
+#lib/modules/KVER-ipfire/kernel/crypto/pcrypt.ko
+#lib/modules/KVER-ipfire/kernel/crypto/rmd128.ko
+#lib/modules/KVER-ipfire/kernel/crypto/rmd160.ko
+#lib/modules/KVER-ipfire/kernel/crypto/rmd256.ko
+#lib/modules/KVER-ipfire/kernel/crypto/rmd320.ko
+#lib/modules/KVER-ipfire/kernel/crypto/salsa20_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/seed.ko
+#lib/modules/KVER-ipfire/kernel/crypto/serpent_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/sha1_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/sha512_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/tcrypt.ko
+#lib/modules/KVER-ipfire/kernel/crypto/tea.ko
+#lib/modules/KVER-ipfire/kernel/crypto/tgr192.ko
+#lib/modules/KVER-ipfire/kernel/crypto/twofish_common.ko
+#lib/modules/KVER-ipfire/kernel/crypto/twofish_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/vmac.ko
+#lib/modules/KVER-ipfire/kernel/crypto/wp512.ko
+#lib/modules/KVER-ipfire/kernel/crypto/xcbc.ko
+#lib/modules/KVER-ipfire/kernel/crypto/xor.ko
+#lib/modules/KVER-ipfire/kernel/crypto/zlib.ko
+#lib/modules/KVER-ipfire/kernel/drivers
+#lib/modules/KVER-ipfire/kernel/drivers/acpi
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/acpi_extlog.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/acpi_ipmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/acpi_pad.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/custom_method.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/ec_sys.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/sbs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/sbshc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/video.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata
+#lib/modules/KVER-ipfire/kernel/drivers/ata/acard-ahci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/ahci_platform.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/ata_generic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_ali.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_amd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_arasan_cf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_artop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_atiixp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_atp867x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cmd640.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cmd64x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cs5520.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cs5530.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cs5536.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cypress.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_efar.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_hpt366.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_hpt37x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_hpt3x2n.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_hpt3x3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_it8213.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_it821x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_jmicron.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_legacy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_marvell.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_mpiix.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_netcell.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_ninja32.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_ns87410.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_ns87415.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_oldpiix.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_opti.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_optidma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_pcmcia.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_pdc2027x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_pdc202xx_old.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_piccolo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_platform.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_radisys.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_rdc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_rz1000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_sc1200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_sch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_serverworks.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_sil680.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_sis.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_sl82c105.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_triflex.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_via.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pdc_adma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_highbank.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_inic162x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_mv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_nv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_promise.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_qstor.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_rcar.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_sil.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_sil24.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_sis.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_svw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_sx4.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_uli.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_via.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/sata_vsc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm
+#lib/modules/KVER-ipfire/kernel/drivers/atm/ambassador.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/atmtcp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/eni.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/firestream.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/fore_200e.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/he.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/horizon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/idt77252.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/iphase.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/lanai.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/nicstar.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/solos-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/suni.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/uPD98402.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/zatm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/base
+#lib/modules/KVER-ipfire/kernel/drivers/base/regmap
+#lib/modules/KVER-ipfire/kernel/drivers/base/regmap/regmap-i2c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bcma
+#lib/modules/KVER-ipfire/kernel/drivers/bcma/bcma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block
+#lib/modules/KVER-ipfire/kernel/drivers/block/DAC960.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/cciss.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/cryptoloop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/floppy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/mtip32xx
+#lib/modules/KVER-ipfire/kernel/drivers/block/mtip32xx/mtip32xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/nvme.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/rsxx
+#lib/modules/KVER-ipfire/kernel/drivers/block/rsxx/rsxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/skd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/sx8.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/umem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/virtio_blk.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/xen-blkback
+#lib/modules/KVER-ipfire/kernel/drivers/block/xen-blkback/xen-blkback.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/xen-blkfront.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/ath3k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/bcm203x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/bfusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/bluecard_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/bpa10x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btmrvl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btmrvl_sdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btsdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btuart_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btwilink.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/hci_uart.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/hci_vhci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char
+#lib/modules/KVER-ipfire/kernel/drivers/char/hangcheck-timer.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/amd-rng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/atmel-rng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/exynos-rng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/intel-rng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/timeriomem-rng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/via-rng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/virtio-rng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/i8k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/ipmi
+#lib/modules/KVER-ipfire/kernel/drivers/char/ipmi/ipmi_devintf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/ipmi/ipmi_msghandler.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/ipmi/ipmi_poweroff.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/ipmi/ipmi_si.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/ipmi/ipmi_watchdog.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/lp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/mwave
+#lib/modules/KVER-ipfire/kernel/drivers/char/mwave/mwave.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/ppdev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/clocksource
+#lib/modules/KVER-ipfire/kernel/drivers/clocksource/cs5535-clockevt.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_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/p4-clockmod.ko
+#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/pcc-cpufreq.ko
+#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/powernow-k8.ko
+#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/speedstep-lib.ko
+#lib/modules/KVER-ipfire/kernel/drivers/crypto
+#lib/modules/KVER-ipfire/kernel/drivers/crypto/ccp
+#lib/modules/KVER-ipfire/kernel/drivers/crypto/ccp/ccp-crypto.ko
+#lib/modules/KVER-ipfire/kernel/drivers/crypto/ccp/ccp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/crypto/padlock-aes.ko
+#lib/modules/KVER-ipfire/kernel/drivers/crypto/padlock-sha.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dca
+#lib/modules/KVER-ipfire/kernel/drivers/dca/dca.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dma
+#lib/modules/KVER-ipfire/kernel/drivers/dma/dw
+#lib/modules/KVER-ipfire/kernel/drivers/dma/dw/dw_dmac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dma/dw/dw_dmac_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dma/dw/dw_dmac_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dma/ioat
+#lib/modules/KVER-ipfire/kernel/drivers/dma/ioat/ioatdma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dma/pch_dma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dma/timb_dma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac
+#lib/modules/KVER-ipfire/kernel/drivers/edac/amd64_edac_mod.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/e752x_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/edac_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/edac_mce_amd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i3000_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i3200_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i5000_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i5100_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i5400_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i7300_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i7core_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/i82975x_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/mce_amd_inj.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/sb_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/edac/x38_edac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firewire
+#lib/modules/KVER-ipfire/kernel/drivers/firewire/firewire-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firewire/firewire-ohci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firewire/firewire-sbp2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firmware
+#lib/modules/KVER-ipfire/kernel/drivers/firmware/dcdbas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firmware/dell_rbu.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firmware/edd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firmware/iscsi_ibft.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpio
+#lib/modules/KVER-ipfire/kernel/drivers/gpio/gpio-f7188x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpio/gpio-ich.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpio/gpio-sch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpio/gpio-sch311x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpio/gpio-ts5500.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpio/gpio-viperboard.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/ast
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/ast/ast.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/bochs
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/bochs/bochs-drm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/cirrus
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/cirrus/cirrus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/drm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/drm_kms_helper.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/drm_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/gma500
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/gma500/gma500_gfx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i2c
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i2c/ch7006.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i2c/sil164.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i2c/tda998x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i810
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i810/i810.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i915
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i915/i915.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/mga
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/mga/mga.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/mgag200
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/mgag200/mgag200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/nouveau
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/nouveau/nouveau.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/qxl
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/qxl/qxl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/r128
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/r128/r128.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/radeon
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/radeon/radeon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/savage
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/savage/savage.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/sis
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/sis/sis.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/tdfx
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/tdfx/tdfx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/ttm
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/ttm/ttm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/udl
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/udl/udl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/via
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/via/via.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/vmwgfx
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/vmwgfx/vmwgfx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-aureal.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-gyration.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-keytouch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-lcpower.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-lenovo-tpkbd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-logitech-dj.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-ortek.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-petalynx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-picolcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-arvo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-isku.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-kone.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-koneplus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-konepure.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-kovaplus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-lua.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-pyra.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-ryos.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat-savu.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-roccat.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-saitek.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-samsung.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-sensor-hub.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-speedlink.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-sunplus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-thingm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-tivo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-topseed.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-twinhan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-zydacron.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/i2c-hid
+#lib/modules/KVER-ipfire/kernel/drivers/hid/i2c-hid/i2c-hid.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hsi
+#lib/modules/KVER-ipfire/kernel/drivers/hsi/clients
+#lib/modules/KVER-ipfire/kernel/drivers/hsi/clients/hsi_char.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hsi/hsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hv
+#lib/modules/KVER-ipfire/kernel/drivers/hv/hv_balloon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hv/hv_utils.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hv/hv_vmbus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/abituguru.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/abituguru3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/acpi_power_meter.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ad7414.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ad7418.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm1021.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm1025.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm1026.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm1029.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm1031.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm9240.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ads1015.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ads7828.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7410.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7411.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7462.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7470.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7475.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7x10.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/amc6821.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/applesmc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/asb100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/asc7621.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/asus_atk0110.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/atxp1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/coretemp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/dme1737.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ds1621.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ds620.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/emc1403.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/emc6w201.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/f71805f.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/f71882fg.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/f75375s.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/fam15h_power.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/fschmd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/g760a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/g762.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/gl518sm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/gl520sm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/hih6130.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/htu21.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/hwmon-vid.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/i5k_amb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ibmaem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ibmpex.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ina209.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ina2xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/it87.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/k10temp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/k8temp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lineage-pem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm63.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm73.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm75.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm77.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm78.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm80.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm83.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm85.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm87.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm90.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm92.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm93.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm95234.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm95241.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm95245.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ltc4151.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ltc4215.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ltc4245.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ltc4261.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max16065.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max1619.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max1668.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max197.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max6639.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max6642.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max6650.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/max6697.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/mcp3021.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/nct6775.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ntc_thermistor.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pc87360.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pc87427.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pcf8591.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/adm1275.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/lm25066.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/max16064.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/max34440.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/max8688.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/pmbus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/pmbus_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/ucd9000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pmbus/ucd9200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/sch5627.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/sch5636.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/sch56xx-common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/sht15.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/sht21.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/sis5595.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/smsc47b397.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/smsc47m1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/smsc47m192.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/thmc50.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/tmp102.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/tmp401.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/tmp421.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/via-cputemp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/via686a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/vt1211.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/vt8231.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83627ehf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83627hf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83781d.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83791d.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83792d.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83793.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83795.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83l785ts.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83l786ng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/algos
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/algos/i2c-algo-bit.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/algos/i2c-algo-pca.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-ali1535.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-ali1563.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-ali15x3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-amd756-s4882.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-amd756.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-amd8111.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-cbus-gpio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-designware-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-designware-platform.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-diolan-u2c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-i801.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-isch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-ismt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-nforce2-s4985.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-nforce2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-parport-light.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-parport.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-pca-platform.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-piix4.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-robotfuzz-osif.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-scmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-simtec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-sis5595.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-sis630.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-sis96x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-tiny-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-via.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-viapro.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-viperboard.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/i2c-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/i2c-dev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/i2c-mux.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/i2c-smbus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/muxes
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/muxes/i2c-mux-gpio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/muxes/i2c-mux-pca9541.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/muxes/i2c-mux-pca954x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/muxes/i2c-mux-pinctrl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/iio
+#lib/modules/KVER-ipfire/kernel/drivers/iio/common
+#lib/modules/KVER-ipfire/kernel/drivers/iio/common/hid-sensors
+#lib/modules/KVER-ipfire/kernel/drivers/iio/common/hid-sensors/hid-sensor-iio-common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/iio/common/hid-sensors/hid-sensor-trigger.ko
+#lib/modules/KVER-ipfire/kernel/drivers/iio/industrialio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/iio/kfifo_buf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input
+#lib/modules/KVER-ipfire/kernel/drivers/input/input-polldev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/gpio_keys.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/gpio_keys_polled.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/lm8333.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/matrix-keymap.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/apanel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/ati_remote2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/atlas_btns.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/cm109.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/ideapad_slidebar.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/keyspan_remote.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/pcspkr.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/powermate.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/retu-pwrbutton.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/rotary_encoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/uinput.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/yealink.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/appletouch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/bcm5974.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/cyapa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/psmouse.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/sermouse.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/synaptics_i2c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/synaptics_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/mouse/vsxxxaa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/serio
+#lib/modules/KVER-ipfire/kernel/drivers/input/serio/altera_ps2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/serio/arc_ps2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/serio/hyperv-keyboard.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/serio/serio_raw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/sparse-keymap.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/capi
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/capi/capi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/capi/capidrv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/capi/kernelcapi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/divert
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/divert/dss1_divert.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/bas_gigaset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/gigaset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/ser_gigaset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/usb_gigaset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm/b1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm/b1dma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm/b1pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm/c4.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm/t1pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/diva_idi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/diva_mnt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/divacapi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/divadidd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/divas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/avmfritz.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/hfcmulti.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/hfcpci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/hfcsusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/mISDNinfineon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/mISDNipac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/mISDNisar.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/netjet.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/speedfax.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/w6692.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hfc4s8s_l1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hfc_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax_fcpcipnp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax_isac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax_st5481.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hysdn
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hysdn/hysdn.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l/isdn.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l/isdn_bsdcomp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l/isdnhdlc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN/l1oip.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN/mISDN_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN/mISDN_dsp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds
+#lib/modules/KVER-ipfire/kernel/drivers/leds/dell-led.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-bd2802.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-blinkm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-clevo-mail.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-gpio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lm3530.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lm3533.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lm355x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lm3642.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lp3944.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lp5521.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lp5523.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lp5562.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lp55xx-common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lp8501.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lt3593.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-ot200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-pca9532.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-pca955x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-pca963x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-pca9685.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-ss4200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-tca6507.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-backlight.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-camera.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-default-on.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-gpio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-heartbeat.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-netdev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-oneshot.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-timer.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/trigger/ledtrig-transient.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md
+#lib/modules/KVER-ipfire/kernel/drivers/md/bcache
+#lib/modules/KVER-ipfire/kernel/drivers/md/bcache/bcache.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-bio-prison.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-cache-cleaner.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-cache-mq.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-cache.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-crypt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-log-userspace.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-multipath.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-queue-length.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-raid.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-round-robin.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-service-time.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-switch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-verity.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/faulty.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/linear.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/multipath.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/persistent-data
+#lib/modules/KVER-ipfire/kernel/drivers/md/persistent-data/dm-persistent-data.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/raid0.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/raid1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/raid10.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/raid456.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media
+#lib/modules/KVER-ipfire/kernel/drivers/media/common
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/b2c2
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/b2c2/b2c2-flexcop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/btcx-risc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/cx2341x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/cypress_firmware.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/saa7146
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/saa7146/saa7146.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/saa7146/saa7146_vv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/siano
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/siano/smsdvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/siano/smsmdtv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tveeprom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-core
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-core/dvb-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/a8293.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/af9013.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/af9033.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/atbm8830.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/au8522_common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/au8522_decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/au8522_dig.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/bcm3510.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cx22700.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cx22702.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cx24110.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cx24113.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cx24116.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cx24117.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cx24123.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/cxd2820r.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dib0070.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dib0090.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dib3000mb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dib3000mc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dib7000m.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dib7000p.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dib8000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dibx000_common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/drxd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/drxk.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/ds3000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dvb-pll.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/dvbsky_m88ds3103.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/ec100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/isl6405.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/isl6421.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/isl6423.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/it913x-fe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/itd1000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/ix2505v.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/l64781.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/lg2160.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/lgdt3305.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/lgdt330x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/lgs8gxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/lnbp21.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/lnbp22.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/m88dc2800.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/m88ds3103.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/m88rs2000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/mb86a16.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/mb86a20s.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/mt312.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/mt352.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/nxt200x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/nxt6000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/or51132.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/or51211.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/rtl2830.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/rtl2832.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/s5h1409.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/s5h1411.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/s5h1420.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/s921.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/si21xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/sp8870.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/sp887x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stb0899.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stb6000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stb6100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv0288.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv0297.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv0299.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv0367.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv0900.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv090x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv6110.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/stv6110x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda10021.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda10023.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda10048.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda1004x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda10071.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda10086.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda18271c2dd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda665x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda8083.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda8261.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tda826x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/ts2020.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/tua6100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/ves1820.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/ves1x93.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/zl10036.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/zl10039.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/dvb-frontends/zl10353.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/firewire
+#lib/modules/KVER-ipfire/kernel/drivers/media/firewire/firedtv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/adv7170.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/adv7175.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/adv7180.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/bt819.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/bt856.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/bt866.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/cs5345.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/cs53l32a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/cx25840
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/cx25840/cx25840.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/ir-kbd-i2c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/ks0127.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/m52790.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/msp3400.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/mt9v011.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/ov7670.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/saa6588.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/saa6752hs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/saa7110.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/saa7115.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/saa7127.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/saa717x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/saa7185.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/imx074.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/mt9m001.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/mt9m111.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/mt9t031.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/mt9t112.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/mt9v022.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/ov2640.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/ov5642.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/ov6650.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/ov772x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/ov9640.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/ov9740.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/rj54n1cb0c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/soc_camera/tw9910.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/tda7432.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/tda9840.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/tea6415c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/tea6420.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/tvaudio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/tvp5150.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/upd64031a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/upd64083.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/vp27smpx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/vpx3220.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/wm8739.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/i2c/wm8775.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/media.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/b2c2
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/b2c2/b2c2-flexcop-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/bt8xx
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/bt8xx/bt878.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/bt8xx/bttv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/bt8xx/dst.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/bt8xx/dst_ca.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/bt8xx/dvb-bt8xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx18
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx18/cx18-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx18/cx18.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx23885
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx23885/altera-ci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx23885/cx23885.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx25821
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx25821/cx25821-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx25821/cx25821.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88/cx88-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88/cx88-blackbird.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88/cx88-dvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88/cx88-vp3054-i2c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88/cx8800.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88/cx8802.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/cx88/cx88xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ddbridge
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ddbridge/ddbridge.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/dm1105
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/dm1105/dm1105.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ivtv
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ivtv/ivtv-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ivtv/ivtv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ivtv/ivtvfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/mantis
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/mantis/hopper.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/mantis/mantis.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/mantis/mantis_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/meye
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/meye/meye.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ngene
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ngene/ngene.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/pluto2
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/pluto2/pluto2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/pt1
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/pt1/earth-pt1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7134
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7134/saa7134-dvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7134/saa7134-empress.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7134/saa7134.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7146
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7146/hexium_gemini.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7146/hexium_orion.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7146/mxb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7164
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/saa7164/saa7164.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci/budget-av.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci/budget-ci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci/budget-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci/budget-patch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci/budget.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci/dvb-ttpci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/ttpci/ttpci-eeprom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/zoran
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/zoran/videocodec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/zoran/zr36016.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/zoran/zr36050.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/zoran/zr36060.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/pci/zoran/zr36067.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/m2m-deinterlace.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/marvell-ccic
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/marvell-ccic/cafe_ccic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/sh_veu.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera/rcar_vin.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera/sh_mobile_ceu_camera.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera/sh_mobile_csi2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera/soc_camera.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera/soc_camera_platform.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera/soc_mediabus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/soc_camera/soc_scale_crop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/timblogiw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/vsp1
+#lib/modules/KVER-ipfire/kernel/drivers/media/platform/vsp1/vsp1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ati_remote.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ene_ir.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/fintek-cir.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/gpio-ir-recv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/iguanair.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/imon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-jvc-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-lirc-codec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-mce_kbd-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-nec-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-rc5-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-rc5-sz-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-rc6-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-sanyo-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ir-sony-decoder.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ite-cir.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-adstech-dvb-t-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-alink-dtu-m.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-anysee.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-apac-viewcomp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-asus-pc39.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-asus-ps3-100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-ati-tv-wonder-hd-600.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-ati-x10.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avermedia-a16d.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avermedia-cardbus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avermedia-dvbt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avermedia-m135a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avermedia-m733a-rm-k6.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avermedia-rm-ks.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avermedia.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-avertv-303.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-azurewave-ad-tu700.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-behold-columbus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-behold.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-budget-ci-old.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-cinergy-1400.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-cinergy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-delock-61959.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-dib0700-nec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-dib0700-rc5.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-digitalnow-tinytwin.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-digittrade.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-dm1105-nec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-dntv-live-dvb-t.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-dntv-live-dvbt-pro.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-dvbsky.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-em-terratec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-encore-enltv-fm53.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-encore-enltv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-encore-enltv2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-evga-indtube.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-eztv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-flydvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-flyvideo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-fusionhdtv-mce.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-gadmei-rm008z.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-genius-tvgo-a11mce.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-gotview7135.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-hauppauge.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-imon-mce.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-imon-pad.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-iodata-bctv7e.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-it913x-v1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-it913x-v2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-kaiomy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-kworld-315u.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-kworld-pc150u.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-kworld-plus-tv-analog.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-leadtek-y04g0051.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-lirc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-lme2510.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-manli.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-medion-x10-digitainer.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-medion-x10-or2x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-medion-x10.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-msi-digivox-ii.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-msi-digivox-iii.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-msi-tvanywhere-plus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-msi-tvanywhere.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-nebula.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-nec-terratec-cinergy-xs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-norwood.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-npgtech.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pctv-sedna.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pinnacle-color.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pinnacle-grey.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pinnacle-pctv-hd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pixelview-002t.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pixelview-mk12.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pixelview-new.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pixelview.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-powercolor-real-angel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-proteus-2309.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-purpletv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-pv951.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-rc6-mce.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-real-audio-220-32-keys.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-reddo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-snapstream-firefly.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-streamzap.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-su3000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-tbs-nec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-technisat-usb2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-terratec-cinergy-xs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-terratec-slim-2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-terratec-slim.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-tevii-nec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-tivo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-total-media-in-hand-02.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-total-media-in-hand.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-trekstor.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-tt-1500.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-twinhan1027.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-videomate-m1f.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-videomate-s350.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-videomate-tv-pvr.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-winfast-usbii-deluxe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/keymaps/rc-winfast.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/lirc_dev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/mceusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/nuvoton-cir.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/rc-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/rc-loopback.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/redrat3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/streamzap.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/ttusbir.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/rc/winbond-cir.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/e4000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/fc0011.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/fc0012.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/fc0013.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/fc2580.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/m88ts2022.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/max2165.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mc44s803.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mt2060.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mt2063.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mt20xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mt2131.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mt2266.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mxl5005s.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/mxl5007t.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/qt1010.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/r820t.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tda18212.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tda18218.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tda18271.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tda827x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tda8290.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tda9887.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tua9001.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tuner-simple.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tuner-types.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tuner-xc2028.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/tuner_it913x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/xc4000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/tuners/xc5000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/au0828
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/au0828/au0828.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/b2c2
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/b2c2/b2c2-flexcop-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/cpia2
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/cpia2/cpia2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/cx231xx
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/cx231xx/cx231xx-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/cx231xx/cx231xx-dvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/cx231xx/cx231xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-af9015.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-af9035.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-anysee.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-au6610.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-az6007.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-ce6230.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-dvbsky.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-ec168.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-gl861.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-it913x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-lmedm04.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-mxl111sf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-rtl28xxu.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/dvb_usb_v2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/mxl111sf-demod.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-a800.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-af9005-remote.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-af9005.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-az6027.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-cinergyT2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-cxusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-dib0700.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-dibusb-common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-dibusb-mb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-digitv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-dtt200u.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-dtv5100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-dw2102.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-friio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-gp8psk.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-m920x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-nova-t-usb2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-opera.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-pctv452e.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-technisat-usb2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-ttusb2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-umt-010.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-vp702x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb-vp7045.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/dvb-usb/dvb-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/em28xx
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/em28xx/em28xx-dvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/em28xx/em28xx-rc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/em28xx/em28xx-v4l.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/em28xx/em28xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gl860
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gl860/gspca_gl860.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_benq.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_conex.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_cpia1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_etoms.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_finepix.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_jeilinj.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_jl2005bcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_kinect.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_konica.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_main.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_mars.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_mr97310a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_nw80x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_ov519.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_ov534.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_ov534_9.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_pac207.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_pac7302.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_pac7311.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_se401.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sn9c2028.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sn9c20x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sonixb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sonixj.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_spca1528.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_spca500.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_spca501.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_spca505.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_spca506.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_spca508.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_spca561.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sq905.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sq905c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sq930x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_stk014.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_stk1135.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_stv0680.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_sunplus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_t613.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_topro.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_tv8532.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_vc032x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_vicam.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_xirlink_cit.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/gspca_zc3xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/m5602
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/m5602/gspca_m5602.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/stv06xx
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/gspca/stv06xx/gspca_stv06xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/hdpvr
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/hdpvr/hdpvr.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/pvrusb2
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/pvrusb2/pvrusb2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/pwc
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/pwc/pwc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/s2255
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/s2255/s2255drv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/siano
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/siano/smsusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/stk1160
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/stk1160/stk1160.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/stkwebcam
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/stkwebcam/stkwebcam.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/tlg2300
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/tlg2300/poseidon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/tm6000
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/tm6000/tm6000-alsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/tm6000/tm6000-dvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/tm6000/tm6000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/ttusb-budget
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/ttusb-dec
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/ttusb-dec/ttusb_dec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/ttusb-dec/ttusbdecfe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/usbtv
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/usbtv/usbtv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/usbvision
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/usbvision/usbvision.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/uvc
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/uvc/uvcvideo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/zr364xx
+#lib/modules/KVER-ipfire/kernel/drivers/media/usb/zr364xx/zr364xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/tuner.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/v4l2-common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/v4l2-dv-timings.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/v4l2-mem2mem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf-dma-contig.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf-dma-sg.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf-dvb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf-vmalloc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf2-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf2-dma-contig.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf2-memops.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videobuf2-vmalloc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/v4l2-core/videodev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/memstick
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/core
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/core/memstick.ko
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/core/ms_block.ko
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/core/mspro_block.ko
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/host
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/host/jmb38x_ms.ko
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/host/r592.ko
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/host/rtsx_pci_ms.ko
+#lib/modules/KVER-ipfire/kernel/drivers/memstick/host/tifm_ms.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message
+#lib/modules/KVER-ipfire/kernel/drivers/message/fusion
+#lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptbase.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptctl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptfc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptsas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptscsih.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptspi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/i2o
+#lib/modules/KVER-ipfire/kernel/drivers/message/i2o/i2o_block.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/i2o/i2o_bus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/i2o/i2o_config.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/i2o/i2o_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/i2o/i2o_proc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/message/i2o/i2o_scsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/cs5535-mfd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/lm3533-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/lm3533-ctrlbank.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/lpc_ich.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/lpc_sch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/mfd-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/retu-mfd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/rtsx_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/sm501.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/viperboard.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/vx855.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/wl1273-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc
+#lib/modules/KVER-ipfire/kernel/drivers/misc/altera-stapl
+#lib/modules/KVER-ipfire/kernel/drivers/misc/altera-stapl/altera-stapl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/bmp085-i2c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/cb710
+#lib/modules/KVER-ipfire/kernel/drivers/misc/cb710/cb710.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/cs5535-mfgpt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/ds1682.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/dummy-irq.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/at24.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/eeprom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/eeprom_93cx6.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/max6875.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/enclosure.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/fsa9480.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/genwqe
+#lib/modules/KVER-ipfire/kernel/drivers/misc/genwqe/genwqe_card.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/hpilo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/ibmasm
+#lib/modules/KVER-ipfire/kernel/drivers/misc/ibmasm/ibmasm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/ics932s401.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/lis3lv02d
+#lib/modules/KVER-ipfire/kernel/drivers/misc/lis3lv02d/lis3lv02d.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/mic
+#lib/modules/KVER-ipfire/kernel/drivers/misc/mic/card
+#lib/modules/KVER-ipfire/kernel/drivers/misc/mic/card/mic_card.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/mic/host
+#lib/modules/KVER-ipfire/kernel/drivers/misc/mic/host/mic_host.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/pch_phub.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/ti-st
+#lib/modules/KVER-ipfire/kernel/drivers/misc/ti-st/st_drv.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/tifm_7xx1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/tifm_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/vmw_balloon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/vmw_vmci
+#lib/modules/KVER-ipfire/kernel/drivers/misc/vmw_vmci/vmw_vmci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/card
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/card/mmc_block.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/core
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/core/mmc_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/cb710-mmc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/rtsx_pci_sdmmc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci-acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci-pltfm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci-pxav2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci-pxav3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/tifm_sd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/ushc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/via-sdmmc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/vub300.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/wbsd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net
+#lib/modules/KVER-ipfire/kernel/drivers/net/bonding
+#lib/modules/KVER-ipfire/kernel/drivers/net/bonding/bonding.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/dummy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/3com
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/3com/3c574_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/3com/3c589_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/3com/3c59x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/3com/typhoon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/8390
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/8390/8390.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/8390/axnet_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/8390/ne2k-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/8390/pcnet_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/adaptec
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/adaptec/starfire.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/alteon
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/alteon/acenic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/amd
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/amd/amd8111e.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/amd/nmclan_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/amd/pcnet32.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/alx
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/alx/alx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/atl1c
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/atl1c/atl1c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/atl1e
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/atl1e/atl1e.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/atlx
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/atlx/atl1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/atheros/atlx/atl2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/broadcom
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/broadcom/b44.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/broadcom/bnx2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/broadcom/bnx2x
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/broadcom/cnic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/broadcom/tg3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/brocade
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/brocade/bna
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/brocade/bna/bna.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/cadence
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/cadence/at91_ether.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/cadence/macb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/calxeda
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/calxeda/xgmac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb/cxgb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb3
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb3/cxgb3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb4
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb4/cxgb4.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb4vf
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/cisco
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/cisco/enic
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/cisco/enic/enic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip/de2104x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip/de4x5.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip/dmfe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip/tulip.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip/uli526x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip/winbond-840.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dec/tulip/xircom_cb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dlink
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dlink/dl2k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dlink/sundance.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/dnet.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/emulex
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/emulex/benet
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/emulex/benet/be2net.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/ethoc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/fealnx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/fujitsu
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/fujitsu/fmvj18x_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/hp
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/hp/hp100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/icplus
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/icplus/ipg.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/e100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/e1000
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/e1000/e1000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/e1000e
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/e1000e/e1000e.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/i40e
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/i40e/i40e.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/i40evf
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/i40evf/i40evf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/igb
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/igb/igb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/igbvf
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/igbvf/igbvf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/ixgb
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/ixgb/ixgb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/ixgbe
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/ixgbevf
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/jme.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/marvell
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/marvell/mvmdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/marvell/skge.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/marvell/sky2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/mellanox
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/mellanox/mlx4
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/mellanox/mlx4/mlx4_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/mellanox/mlx4/mlx4_en.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/micrel
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/micrel/ks8842.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/micrel/ks8851_mll.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/micrel/ksz884x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/myricom
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/myricom/myri10ge
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/myricom/myri10ge/myri10ge.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/natsemi
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/natsemi/natsemi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/natsemi/ns83820.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/neterion
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/neterion/s2io.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/neterion/vxge
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/neterion/vxge/vxge.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/nvidia
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/nvidia/forcedeth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/oki-semi
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/oki-semi/pch_gbe
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic/netxen
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic/netxen/netxen_nic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic/qla3xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic/qlcnic
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic/qlcnic/qlcnic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic/qlge
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/qlogic/qlge/qlge.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/rdc
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/rdc/r6040.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/realtek
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/realtek/8139cp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/realtek/8139too.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/realtek/atp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/realtek/r8169.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/renesas
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/renesas/sh_eth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sfc
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sfc/sfc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/silan
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/silan/sc92031.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sis
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sis/sis190.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sis/sis900.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/smsc
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/smsc/epic100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/smsc/smc91c92_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/smsc/smsc911x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/smsc/smsc9420.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/stmicro
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/stmicro/stmmac
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/stmicro/stmmac/stmmac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sun
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sun/cassini.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sun/niu.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sun/sungem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/sun/sunhme.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/tehuti
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/tehuti/tehuti.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/ti
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/ti/tlan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/via
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/via/via-rhine.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/via/via-velocity.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/wiznet
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/wiznet/w5100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/wiznet/w5300.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/xircom
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethernet/xircom/xirc2ps_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/hyperv
+#lib/modules/KVER-ipfire/kernel/drivers/net/hyperv/hv_netvsc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ifb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/imq.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/macvlan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/macvtap.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/mdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/mii.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/netconsole.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/nlmon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/amd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/at803x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/bcm87xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/broadcom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/cicada.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/davicom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/et1011c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/icplus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/lxt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/marvell.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/mdio-bitbang.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/micrel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/national.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/qsemi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/realtek.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/smsc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/ste10Xp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/vitesse.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/bsd_comp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/ppp_async.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/ppp_deflate.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/ppp_generic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/ppp_mppe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/ppp_synctty.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/pppoe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/pppox.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ppp/pptp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/slip
+#lib/modules/KVER-ipfire/kernel/drivers/net/slip/slhc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/sungem_phy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/tun.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/asix.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/ax88179_178a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/catc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_eem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_ether.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_mbim.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_ncm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_subset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cx82310_eth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/dm9601.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/gl620a.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/hso.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/huawei_cdc_ncm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/int51x1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/ipheth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/kalmia.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/kaweth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/lg-vl600.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/mcs7830.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/net1080.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/pegasus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/plusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/qmi_wwan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/r8152.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/rndis_host.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/rtl8150.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/sierra_net.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/smsc75xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/smsc95xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/sr9700.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/sr9800.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/usbnet.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/zaurus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/veth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/virtio_net.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/vmxnet3
+#lib/modules/KVER-ipfire/kernel/drivers/net/vmxnet3/vmxnet3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/vxlan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/adm8211.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/airo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/airo_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/at76c50x-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ar5523
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ar5523/ar5523.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath10k
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath10k/ath10k_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath5k
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath5k/ath5k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath9k
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k_common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/carl9170
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/carl9170/carl9170.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/wcn36xx
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/wcn36xx/wcn36xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/wil6210
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/wil6210/wil6210.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/atmel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/atmel_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/atmel_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/b43
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/b43/b43.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/b43legacy
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/b43legacy/b43legacy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/brcm80211
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/brcm80211/brcmfmac
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/brcm80211/brcmsmac
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/brcm80211/brcmutil
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/brcm80211/brcmutil/brcmutil.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/cw1200
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/cw1200/cw1200_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/cw1200/cw1200_wlan_sdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap_plx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00/ipw2100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00/ipw2200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00/libipw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlegacy
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlegacy/iwl3945.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlegacy/iwl4965.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlegacy/iwlegacy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/dvm
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/dvm/iwldvm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/iwlwifi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/mvm
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/mvm/iwlmvm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/libertas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/libertas_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/libertas_sdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/usb8xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas_tf
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas_tf/libertas_tf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas_tf/libertas_tf_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mac80211_hwsim.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mwifiex
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mwifiex/mwifiex.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mwifiex/mwifiex_pcie.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mwifiex/mwifiex_sdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mwifiex/mwifiex_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mwl8k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_nortel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_plx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_tmd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/spectrum_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/p54
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/p54/p54common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/p54/p54pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/p54/p54usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rndis_wlan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2400pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2500pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2500usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800lib.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800mmio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00lib.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00mmio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt61pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt73usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8180
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8180/rtl8180.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8187
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8188ee
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8188ee/rtl8188ee.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192c
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192ce
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192cu
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192cu/rtl8192cu.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192de
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192de/rtl8192de.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192se
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8723ae
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8723ae/rtl8723ae.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtlwifi/rtlwifi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wl1251
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wl1251/wl1251.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wl1251/wl1251_sdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wl12xx
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wl12xx/wl12xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wl18xx
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wl18xx/wl18xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wlcore
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wlcore/wlcore.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/wl3501_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/zd1201.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/zd1211rw
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/zd1211rw/zd1211rw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/xen-netback
+#lib/modules/KVER-ipfire/kernel/drivers/net/xen-netback/xen-netback.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/xen-netfront.ko
+#lib/modules/KVER-ipfire/kernel/drivers/parport
+#lib/modules/KVER-ipfire/kernel/drivers/parport/parport.ko
+#lib/modules/KVER-ipfire/kernel/drivers/parport/parport_ax88796.ko
+#lib/modules/KVER-ipfire/kernel/drivers/parport/parport_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/parport/parport_pc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/parport/parport_serial.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pci
+#lib/modules/KVER-ipfire/kernel/drivers/pci/hotplug
+#lib/modules/KVER-ipfire/kernel/drivers/pci/hotplug/acpiphp_ibm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pci/pcie
+#lib/modules/KVER-ipfire/kernel/drivers/pci/pcie/aer
+#lib/modules/KVER-ipfire/kernel/drivers/pci/pcie/aer/aer_inject.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pci/xen-pcifront.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pcmcia
+#lib/modules/KVER-ipfire/kernel/drivers/pcmcia/i82092.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pcmcia/pcmcia.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pcmcia/pcmcia_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pcmcia/pcmcia_rsrc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pcmcia/pd6729.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pcmcia/yenta_socket.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/acer-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/acerhdf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/amilo-rfkill.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/asus-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/asus-nb-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/asus-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/classmate-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/compal-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/dell-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/dell-wmi-aio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/dell-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/eeepc-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/eeepc-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/fujitsu-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/hdaps.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/hp-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/hp_accel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/ideapad-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/intel-rst.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/intel_ips.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/intel_oaktrail.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/msi-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/msi-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/mxm-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/panasonic-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/pvpanic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/samsung-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/samsung-q10.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/sony-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/thinkpad_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/topstar-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/toshiba_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/toshiba_bluetooth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/power
+#lib/modules/KVER-ipfire/kernel/drivers/power/generic-adc-battery.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pps
+#lib/modules/KVER-ipfire/kernel/drivers/pps/pps_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ptp
+#lib/modules/KVER-ipfire/kernel/drivers/ptp/ptp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ptp/ptp_pch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-bq32k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-bq4802.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1286.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1307.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1374.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1511.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1553.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1672.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1742.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds2404.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds3232.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-em3027.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-fm3130.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-hid-sensor-time.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-isl12022.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-isl12057.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-isl1208.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-m41t80.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-m48t35.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-m48t59.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-max6900.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-moxart.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-msm6242.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-pcf2127.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-pcf8523.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-pcf8563.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-pcf8583.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rp5c01.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rs5c372.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rv3029c2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rx8025.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rx8581.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-stk17ta8.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-v3020.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-x1205.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/3w-9xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/3w-sas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/3w-xxxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/BusLogic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/a100u2w.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/aacraid
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/aacraid/aacraid.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/advansys.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/aic7xxx
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/aic7xxx/aic79xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/aic7xxx/aic7xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/aic94xx
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/aic94xx/aic94xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/arcmsr
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/arcmsr/arcmsr.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/atp870u.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/be2iscsi
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/be2iscsi/be2iscsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bfa
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bfa/bfa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bnx2fc
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bnx2fc/bnx2fc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bnx2i
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bnx2i/bnx2i.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/csiostor
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/csiostor/csiostor.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgbi
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgbi/cxgb3i
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgbi/cxgb3i/cxgb3i.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgbi/cxgb4i
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgbi/cxgb4i/cxgb4i.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgbi/libcxgbi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/dc395x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/device_handler
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/device_handler/scsi_dh_alua.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/device_handler/scsi_dh_emc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/device_handler/scsi_dh_hp_sw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/device_handler/scsi_dh_rdac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/dmx3191d.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/dpt_i2o.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/eata.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/esas2r
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/esas2r/esas2r.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fcoe
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fcoe/fcoe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fcoe/libfcoe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fdomain.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fnic
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fnic/fnic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/gdth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/hpsa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/hptiop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/hv_storvsc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/imm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/initio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ipr.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ips.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/isci
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/isci/isci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/iscsi_boot_sysfs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/iscsi_tcp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libfc
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libfc/libfc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libiscsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libiscsi_tcp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libsas
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libsas/libsas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/lpfc
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/lpfc/lpfc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid/megaraid_mbox.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid/megaraid_mm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid/megaraid_sas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mpt2sas
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mpt2sas/mpt2sas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mpt3sas
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mpt3sas/mpt3sas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mvsas
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mvsas/mvsas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mvumi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/osd
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/osd/libosd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/osd/osd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/osst.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/aha152x_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/fdomain_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/qlogic_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/sym53c500_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pm8001
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pm8001/pm80xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pmcraid.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ppa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/qla1280.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/qla2xxx
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/qla2xxx/qla2xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/qla4xxx
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/qla4xxx/qla4xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/qlogicfas408.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/raid_class.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/scsi_tgt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/scsi_transport_fc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/scsi_transport_iscsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/scsi_transport_sas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/scsi_transport_spi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/scsi_transport_srp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ses.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/st.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/stex.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/sym53c8xx_2
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/sym53c8xx_2/sym53c8xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/tmscsim.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ufs
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ufs/ufshcd-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ufs/ufshcd-pltfrm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/ufs/ufshcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/virtio_scsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/vmw_pvscsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ssb
+#lib/modules/KVER-ipfire/kernel/drivers/ssb/ssb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging
+#lib/modules/KVER-ipfire/kernel/drivers/staging/echo
+#lib/modules/KVER-ipfire/kernel/drivers/staging/echo/echo.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/et131x
+#lib/modules/KVER-ipfire/kernel/drivers/staging/et131x/et131x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/gdm724x
+#lib/modules/KVER-ipfire/kernel/drivers/staging/gdm724x/gdmtty.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/gdm724x/gdmulte.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/rts5139
+#lib/modules/KVER-ipfire/kernel/drivers/staging/rts5139/rts5139.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/slicoss
+#lib/modules/KVER-ipfire/kernel/drivers/staging/slicoss/slicoss.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/usbip
+#lib/modules/KVER-ipfire/kernel/drivers/staging/usbip/usbip-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/usbip/usbip-host.ko
+#lib/modules/KVER-ipfire/kernel/drivers/staging/usbip/vhci-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/thermal
+#lib/modules/KVER-ipfire/kernel/drivers/thermal/int3403_thermal.ko
+#lib/modules/KVER-ipfire/kernel/drivers/thermal/intel_powerclamp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/thermal/x86_pkg_temp_thermal.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty
+#lib/modules/KVER-ipfire/kernel/drivers/tty/cyclades.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/n_gsm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/n_hdlc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/n_r3964.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/nozomi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/rocket.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/8250
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/8250/8250_dw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/arc_uart.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/fsl_lpuart.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/jsm
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/jsm/jsm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/rp2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/serial/sccnxp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/synclink.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/synclink_gt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/tty/synclinkmp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uio
+#lib/modules/KVER-ipfire/kernel/drivers/uio/uio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uio/uio_aec.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uio/uio_pci_generic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uio/uio_sercos3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb
+#lib/modules/KVER-ipfire/kernel/drivers/usb/atm
+#lib/modules/KVER-ipfire/kernel/drivers/usb/atm/cxacru.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/atm/speedtch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/atm/ueagle-atm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/atm/usbatm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/atm/xusbatm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/chipidea
+#lib/modules/KVER-ipfire/kernel/drivers/usb/chipidea/ci_hdrc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/chipidea/ci_hdrc_msm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/chipidea/ci_hdrc_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/class
+#lib/modules/KVER-ipfire/kernel/drivers/usb/class/cdc-acm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/class/cdc-wdm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/class/usblp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/class/usbtmc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/dwc3
+#lib/modules/KVER-ipfire/kernel/drivers/usb/dwc3/dwc3-keystone.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/dwc3/dwc3-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/dwc3/dwc3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/bcma-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/hwa-hc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/isp1362-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/ohci-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/sl811-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/ssb-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/whci
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/whci/whci-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/image
+#lib/modules/KVER-ipfire/kernel/drivers/usb/image/mdc800.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/image/microtek.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/adutux.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/ehset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/emi26.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/emi62.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/ezusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/ftdi-elan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/iowarrior.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/sisusbvga
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/sisusbvga/sisusbvga.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/usb3503.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/usblcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/usbled.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/usbsevseg.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/uss720.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/yurex.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/mon
+#lib/modules/KVER-ipfire/kernel/drivers/usb/mon/usbmon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/phy
+#lib/modules/KVER-ipfire/kernel/drivers/usb/phy/phy-fsm-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/aircable.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ark3116.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/belkin_sa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ch341.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/cp210x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/cypress_m8.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/digi_acceleport.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/f81232.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ftdi_sio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/io_edgeport.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/io_ti.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ipaq.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ipw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ir-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/iuu_phoenix.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/keyspan_pda.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/kl5kusb105.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/mct_u232.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/mos7720.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/mos7840.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/mxuport.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/option.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/oti6858.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/pl2303.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/qcaux.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/qcserial.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/quatech2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/sierra.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/spcp8x5.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ssu100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/usb-serial-simple.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/usb_wwan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/usbserial.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/visor.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/whiteheat.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/zte_ev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-alauda.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-cypress.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-datafab.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-eneub6250.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-freecom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-isd200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-jumpshot.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-karma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-onetouch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-realtek.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-sddr09.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-sddr55.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-usbat.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore/wusb-cbaf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore/wusb-wa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore/wusbcore.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/hwa-rc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/dfu
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/dfu/i1480-dfu-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/i1480-est.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/umc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/uwb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/whc-rc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/whci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/vhost
+#lib/modules/KVER-ipfire/kernel/drivers/vhost/vhost.ko
+#lib/modules/KVER-ipfire/kernel/drivers/vhost/vhost_net.ko
+#lib/modules/KVER-ipfire/kernel/drivers/vhost/vringh.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video
+#lib/modules/KVER-ipfire/kernel/drivers/video/arcfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/arkfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/aty
+#lib/modules/KVER-ipfire/kernel/drivers/video/aty/atyfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/backlight
+#lib/modules/KVER-ipfire/kernel/drivers/video/backlight/apple_bl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/backlight/lcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/backlight/platform_lcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/cyber2000fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/fb_ddc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/fb_sys_fops.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/hgafb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/hyperv_fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/i740fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/kyro
+#lib/modules/KVER-ipfire/kernel/drivers/video/kyro/kyrofb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/macmodes.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/matrox
+#lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_DAC1064.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_Ti3026.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_accel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_base.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_misc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/neofb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/ocfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/output.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/pm2fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/pm3fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/riva
+#lib/modules/KVER-ipfire/kernel/drivers/video/riva/rivafb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/s3fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/savage
+#lib/modules/KVER-ipfire/kernel/drivers/video/savage/savagefb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/smscufx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/sstfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/svgalib.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/syscopyarea.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/sysfillrect.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/sysimgblt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/tridentfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/udlfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/vermilion
+#lib/modules/KVER-ipfire/kernel/drivers/video/vermilion/crvml.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/vermilion/vmlfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/vga16fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/vgastate.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/via
+#lib/modules/KVER-ipfire/kernel/drivers/video/via/viafb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/vt8623fb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/xen-fbfront.ko
+#lib/modules/KVER-ipfire/kernel/drivers/virtio
+#lib/modules/KVER-ipfire/kernel/drivers/virtio/virtio_balloon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/virtio/virtio_mmio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1
+#lib/modules/KVER-ipfire/kernel/drivers/w1/masters
+#lib/modules/KVER-ipfire/kernel/drivers/w1/masters/ds1wm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/masters/ds2482.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/masters/ds2490.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_bq27000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2408.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2413.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2423.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2431.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2433.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2760.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2780.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2781.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds28e04.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_smem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_therm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/wire.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/acquirewdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/advantechwdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/alim1535_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/alim7101_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/cpu5wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/dw_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/eurotechwdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/f71808e_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/geodewdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/hpwdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/i6300esb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/iTCO_vendor_support.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/iTCO_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/ib700wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/ibmasr.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/ie6xx_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/it8712f_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/it87_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/machzwd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/mena21_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/nv_tco.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/pc87413_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/pcwd_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/pcwd_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/retu_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc60xxwdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc8360.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc_epx_c3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc_fitpc2_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sc1200wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sc520_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sch311x_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/smsc37b787_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/softdog.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sp5100_tco.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/via_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83627hf_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83697hf_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83697ug_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83877f_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83977f_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/wafer5823wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/wdt_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/xen_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen
+#lib/modules/KVER-ipfire/kernel/drivers/xen/tmem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xen-acpi-processor.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xen-evtchn.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xen-gntalloc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xen-gntdev.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xen-pciback
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xen-pciback/xen-pciback.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xen-privcmd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xenfs
+#lib/modules/KVER-ipfire/kernel/drivers/xen/xenfs/xenfs.ko
+#lib/modules/KVER-ipfire/kernel/fs
+#lib/modules/KVER-ipfire/kernel/fs/btrfs
+#lib/modules/KVER-ipfire/kernel/fs/btrfs/btrfs.ko
+#lib/modules/KVER-ipfire/kernel/fs/cachefiles
+#lib/modules/KVER-ipfire/kernel/fs/cachefiles/cachefiles.ko
+#lib/modules/KVER-ipfire/kernel/fs/cifs
+#lib/modules/KVER-ipfire/kernel/fs/cifs/cifs.ko
+#lib/modules/KVER-ipfire/kernel/fs/configfs
+#lib/modules/KVER-ipfire/kernel/fs/configfs/configfs.ko
+#lib/modules/KVER-ipfire/kernel/fs/dlm
+#lib/modules/KVER-ipfire/kernel/fs/dlm/dlm.ko
+#lib/modules/KVER-ipfire/kernel/fs/efivarfs
+#lib/modules/KVER-ipfire/kernel/fs/efivarfs/efivarfs.ko
+#lib/modules/KVER-ipfire/kernel/fs/exofs
+#lib/modules/KVER-ipfire/kernel/fs/exofs/libore.ko
+#lib/modules/KVER-ipfire/kernel/fs/fat
+#lib/modules/KVER-ipfire/kernel/fs/fat/fat.ko
+#lib/modules/KVER-ipfire/kernel/fs/fat/msdos.ko
+#lib/modules/KVER-ipfire/kernel/fs/fat/vfat.ko
+#lib/modules/KVER-ipfire/kernel/fs/fscache
+#lib/modules/KVER-ipfire/kernel/fs/fscache/fscache.ko
+#lib/modules/KVER-ipfire/kernel/fs/fuse
+#lib/modules/KVER-ipfire/kernel/fs/fuse/cuse.ko
+#lib/modules/KVER-ipfire/kernel/fs/fuse/fuse.ko
+#lib/modules/KVER-ipfire/kernel/fs/lockd
+#lib/modules/KVER-ipfire/kernel/fs/lockd/lockd.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs
+#lib/modules/KVER-ipfire/kernel/fs/nfs/blocklayout
+#lib/modules/KVER-ipfire/kernel/fs/nfs/blocklayout/blocklayoutdriver.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs/nfs.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs/nfs_layout_nfsv41_files.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs/nfsv2.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs/nfsv3.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs/nfsv4.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs/objlayout
+#lib/modules/KVER-ipfire/kernel/fs/nfs/objlayout/objlayoutdriver.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfs_common
+#lib/modules/KVER-ipfire/kernel/fs/nfs_common/nfs_acl.ko
+#lib/modules/KVER-ipfire/kernel/fs/nfsd
+#lib/modules/KVER-ipfire/kernel/fs/nfsd/nfsd.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-celtic.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-centeuro.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-croatian.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-cyrillic.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-gaelic.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-greek.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-iceland.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-inuit.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-roman.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-romanian.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/mac-turkish.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp1250.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp1251.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp1255.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp737.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp775.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp850.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp852.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp855.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp857.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp860.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp861.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp862.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp863.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp864.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp865.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp866.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp869.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp874.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp932.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp936.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp949.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_cp950.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_euc-jp.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-1.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-13.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-14.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-15.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-2.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-3.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-4.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-5.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-6.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-7.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_iso8859-9.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_koi8-r.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_koi8-ru.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_koi8-u.ko
+#lib/modules/KVER-ipfire/kernel/fs/nls/nls_utf8.ko
+#lib/modules/KVER-ipfire/kernel/fs/reiserfs
+#lib/modules/KVER-ipfire/kernel/fs/reiserfs/reiserfs.ko
+#lib/modules/KVER-ipfire/kernel/fs/udf
+#lib/modules/KVER-ipfire/kernel/fs/udf/udf.ko
+#lib/modules/KVER-ipfire/kernel/fs/xfs
+#lib/modules/KVER-ipfire/kernel/fs/xfs/xfs.ko
+#lib/modules/KVER-ipfire/kernel/kernel
+#lib/modules/KVER-ipfire/kernel/kernel/trace
+#lib/modules/KVER-ipfire/kernel/kernel/trace/ring_buffer_benchmark.ko
+#lib/modules/KVER-ipfire/kernel/lib
+#lib/modules/KVER-ipfire/kernel/lib/asn1_decoder.ko
+#lib/modules/KVER-ipfire/kernel/lib/cordic.ko
+#lib/modules/KVER-ipfire/kernel/lib/crc-itu-t.ko
+#lib/modules/KVER-ipfire/kernel/lib/crc7.ko
+#lib/modules/KVER-ipfire/kernel/lib/crc8.ko
+#lib/modules/KVER-ipfire/kernel/lib/libcrc32c.ko
+#lib/modules/KVER-ipfire/kernel/lib/lz4
+#lib/modules/KVER-ipfire/kernel/lib/lz4/lz4_compress.ko
+#lib/modules/KVER-ipfire/kernel/lib/lz4/lz4hc_compress.ko
+#lib/modules/KVER-ipfire/kernel/lib/mpi
+#lib/modules/KVER-ipfire/kernel/lib/mpi/mpi.ko
+#lib/modules/KVER-ipfire/kernel/lib/oid_registry.ko
+#lib/modules/KVER-ipfire/kernel/lib/raid6
+#lib/modules/KVER-ipfire/kernel/lib/raid6/raid6_pq.ko
+#lib/modules/KVER-ipfire/kernel/lib/rbtree_test.ko
+#lib/modules/KVER-ipfire/kernel/lib/ts_bm.ko
+#lib/modules/KVER-ipfire/kernel/lib/ts_fsm.ko
+#lib/modules/KVER-ipfire/kernel/lib/ts_kmp.ko
+#lib/modules/KVER-ipfire/kernel/net
+#lib/modules/KVER-ipfire/kernel/net/802
+#lib/modules/KVER-ipfire/kernel/net/802/garp.ko
+#lib/modules/KVER-ipfire/kernel/net/8021q
+#lib/modules/KVER-ipfire/kernel/net/8021q/8021q.ko
+#lib/modules/KVER-ipfire/kernel/net/atm
+#lib/modules/KVER-ipfire/kernel/net/atm/atm.ko
+#lib/modules/KVER-ipfire/kernel/net/atm/br2684.ko
+#lib/modules/KVER-ipfire/kernel/net/atm/clip.ko
+#lib/modules/KVER-ipfire/kernel/net/atm/pppoatm.ko
+#lib/modules/KVER-ipfire/kernel/net/batman-adv
+#lib/modules/KVER-ipfire/kernel/net/batman-adv/batman-adv.ko
+#lib/modules/KVER-ipfire/kernel/net/bluetooth
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/bluetooth.ko
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/bnep
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/bnep/bnep.ko
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/cmtp
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/cmtp/cmtp.ko
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/hidp
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/hidp/hidp.ko
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/rfcomm
+#lib/modules/KVER-ipfire/kernel/net/bluetooth/rfcomm/rfcomm.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_802_3.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_among.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_arp.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_arpreply.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_dnat.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_ip.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_ip6.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_limit.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_log.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_mark.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_mark_m.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_nflog.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_pkttype.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_redirect.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_snat.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_stp.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebt_vlan.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebtable_broute.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebtable_filter.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebtable_nat.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebtables.ko
+#lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/nf_tables_bridge.ko
+#lib/modules/KVER-ipfire/kernel/net/core
+#lib/modules/KVER-ipfire/kernel/net/core/netprio_cgroup.ko
+#lib/modules/KVER-ipfire/kernel/net/hsr
+#lib/modules/KVER-ipfire/kernel/net/hsr/hsr.ko
+#lib/modules/KVER-ipfire/kernel/net/ieee802154
+#lib/modules/KVER-ipfire/kernel/net/ieee802154/6lowpan_iphc.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4
+#lib/modules/KVER-ipfire/kernel/net/ipv4/ah4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/esp4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/gre.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/inet_diag.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/ip_gre.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/ip_tunnel.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/ip_vti.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/ipcomp.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/ipip.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/arp_tables.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/arpt_mangle.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/arptable_filter.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_CLUSTERIP.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_ECN.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_MASQUERADE.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_REJECT.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_SYNPROXY.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_ah.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_rpfilter.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_filter.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_mangle.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_nat.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_raw.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_security.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat_h323.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat_ipv4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat_pptp.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat_proto_gre.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat_snmp_basic.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_tables_arp.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_tables_ipv4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nft_chain_nat_ipv4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nft_chain_route_ipv4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nft_reject_ipv4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_bic.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_diag.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_highspeed.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_htcp.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_hybla.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_illinois.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_lp.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_scalable.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_vegas.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_veno.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_westwood.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tcp_yeah.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/tunnel4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/udp_diag.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/xfrm4_mode_beet.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/xfrm4_mode_transport.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/xfrm4_mode_tunnel.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/xfrm4_tunnel.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6
+#lib/modules/KVER-ipfire/kernel/net/ipv6/ah6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/esp6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/ip6_gre.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/ip6_tunnel.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/ip6_vti.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/ipcomp6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/mip6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_MASQUERADE.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_NPT.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_REJECT.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_SYNPROXY.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_ah.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_eui64.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_frag.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_hbh.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_ipv6header.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_mh.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_rpfilter.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6t_rt.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6table_filter.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6table_mangle.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6table_nat.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6table_raw.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/ip6table_security.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/nf_nat_ipv6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/nf_tables_ipv6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/nft_chain_nat_ipv6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/nft_chain_route_ipv6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/netfilter/nft_reject_ipv6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/sit.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/tunnel6.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/xfrm6_mode_beet.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/xfrm6_mode_ro.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/xfrm6_mode_transport.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/xfrm6_mode_tunnel.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv6/xfrm6_tunnel.ko
+#lib/modules/KVER-ipfire/kernel/net/key
+#lib/modules/KVER-ipfire/kernel/net/key/af_key.ko
+#lib/modules/KVER-ipfire/kernel/net/l2tp
+#lib/modules/KVER-ipfire/kernel/net/l2tp/l2tp_core.ko
+#lib/modules/KVER-ipfire/kernel/net/l2tp/l2tp_eth.ko
+#lib/modules/KVER-ipfire/kernel/net/l2tp/l2tp_ip.ko
+#lib/modules/KVER-ipfire/kernel/net/l2tp/l2tp_ip6.ko
+#lib/modules/KVER-ipfire/kernel/net/l2tp/l2tp_netlink.ko
+#lib/modules/KVER-ipfire/kernel/net/l2tp/l2tp_ppp.ko
+#lib/modules/KVER-ipfire/kernel/net/mac80211
+#lib/modules/KVER-ipfire/kernel/net/mac80211/mac80211.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_bitmap_ip.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_bitmap_ipmac.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_bitmap_port.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_ip.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_ipport.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_ipportip.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_ipportnet.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_net.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_netiface.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_netnet.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_netport.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_hash_netportnet.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipset/ip_set_list_set.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_dh.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_ftp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_lblc.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_lblcr.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_lc.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_nq.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_pe_sip.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_rr.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_sed.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_sh.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_wlc.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/ipvs/ip_vs_wrr.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_amanda.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_broadcast.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_ftp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_h323.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_irc.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_netbios_ns.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_netlink.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_pptp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_proto_dccp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_proto_gre.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_proto_sctp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_proto_udplite.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_sane.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_sip.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_snmp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_tftp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_amanda.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_ftp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_irc.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_proto_dccp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_proto_sctp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_proto_udplite.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_sip.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_nat_tftp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_synproxy_core.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_tables_inet.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink_acct.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink_cthelper.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink_cttimeout.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink_log.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink_queue.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_compat.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_counter.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_ct.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_exthdr.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_hash.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_limit.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_log.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_meta.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_nat.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_queue.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_rbtree.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_reject.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nft_reject_inet.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_AUDIT.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_CHECKSUM.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_CLASSIFY.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_CONNSECMARK.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_CT.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_DSCP.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_HL.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_HMARK.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_IDLETIMER.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_IMQ.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_LED.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_LOG.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_NETMAP.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_NFLOG.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_NFQUEUE.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_RATEEST.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_REDIRECT.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_SECMARK.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TCPMSS.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TCPOPTSTRIP.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TEE.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TPROXY.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TRACE.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_addrtype.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_bpf.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_cgroup.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_cluster.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_comment.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_connbytes.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_connlabel.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_connlimit.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_connmark.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_conntrack.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_cpu.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_dccp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_devgroup.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_dscp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_ecn.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_esp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_hashlimit.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_helper.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_hl.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_ipcomp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_iprange.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_ipvs.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_l2tp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_layer7.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_length.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_limit.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_mac.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_mark.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_multiport.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_nat.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_nfacct.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_osf.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_owner.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_physdev.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_pkttype.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_policy.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_quota.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_rateest.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_realm.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_recent.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_sctp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_set.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_socket.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_state.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_statistic.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_string.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_tcpmss.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_time.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_u32.ko
+#lib/modules/KVER-ipfire/kernel/net/netlink
+#lib/modules/KVER-ipfire/kernel/net/netlink/netlink_diag.ko
+#lib/modules/KVER-ipfire/kernel/net/openvswitch
+#lib/modules/KVER-ipfire/kernel/net/openvswitch/openvswitch.ko
+#lib/modules/KVER-ipfire/kernel/net/rfkill
+#lib/modules/KVER-ipfire/kernel/net/rfkill/rfkill-gpio.ko
+#lib/modules/KVER-ipfire/kernel/net/rfkill/rfkill.ko
+#lib/modules/KVER-ipfire/kernel/net/sched
+#lib/modules/KVER-ipfire/kernel/net/sched/act_csum.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_gact.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_ipt.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_mirred.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_nat.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_pedit.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_police.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_simple.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_skbedit.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_basic.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_bpf.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_cgroup.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_flow.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_fw.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_route.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_rsvp.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_rsvp6.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_tcindex.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/cls_u32.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/em_cmp.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/em_ipset.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/em_meta.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/em_nbyte.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/em_text.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/em_u32.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_atm.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_cbq.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_choke.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_codel.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_drr.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_dsmark.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_fq.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_fq_codel.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_gred.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_hfsc.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_hhf.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_htb.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_ingress.ko
+#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
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_red.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_sfb.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_sfq.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_tbf.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_teql.ko
+#lib/modules/KVER-ipfire/kernel/net/sctp
+#lib/modules/KVER-ipfire/kernel/net/sctp/sctp.ko
+#lib/modules/KVER-ipfire/kernel/net/sunrpc
+#lib/modules/KVER-ipfire/kernel/net/sunrpc/auth_gss
+#lib/modules/KVER-ipfire/kernel/net/sunrpc/auth_gss/auth_rpcgss.ko
+#lib/modules/KVER-ipfire/kernel/net/sunrpc/auth_gss/rpcsec_gss_krb5.ko
+#lib/modules/KVER-ipfire/kernel/net/sunrpc/sunrpc.ko
+#lib/modules/KVER-ipfire/kernel/net/unix
+#lib/modules/KVER-ipfire/kernel/net/unix/unix_diag.ko
+#lib/modules/KVER-ipfire/kernel/net/vmw_vsock
+#lib/modules/KVER-ipfire/kernel/net/vmw_vsock/vmw_vsock_vmci_transport.ko
+#lib/modules/KVER-ipfire/kernel/net/vmw_vsock/vsock.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless
+#lib/modules/KVER-ipfire/kernel/net/wireless/cfg80211.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211_crypt_ccmp.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211_crypt_tkip.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211_crypt_wep.ko
+#lib/modules/KVER-ipfire/kernel/net/xfrm
+#lib/modules/KVER-ipfire/kernel/net/xfrm/xfrm_ipcomp.ko
+#lib/modules/KVER-ipfire/kernel/sound
+#lib/modules/KVER-ipfire/kernel/sound/ac97_bus.ko
+#lib/modules/KVER-ipfire/kernel/sound/core
+#lib/modules/KVER-ipfire/kernel/sound/core/oss
+#lib/modules/KVER-ipfire/kernel/sound/core/oss/snd-mixer-oss.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/oss/snd-pcm-oss.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/oss
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/oss/snd-seq-oss.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/snd-seq-device.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/snd-seq-dummy.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/snd-seq-midi-emul.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/snd-seq-midi-event.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/snd-seq-midi.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/snd-seq-virmidi.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/seq/snd-seq.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/snd-hrtimer.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/snd-hwdep.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/snd-pcm.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/snd-rawmidi.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/snd-timer.ko
+#lib/modules/KVER-ipfire/kernel/sound/core/snd.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers
+#lib/modules/KVER-ipfire/kernel/sound/drivers/mpu401
+#lib/modules/KVER-ipfire/kernel/sound/drivers/mpu401/snd-mpu401-uart.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/mpu401/snd-mpu401.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/opl3
+#lib/modules/KVER-ipfire/kernel/sound/drivers/opl3/snd-opl3-lib.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/opl3/snd-opl3-synth.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/pcsp
+#lib/modules/KVER-ipfire/kernel/sound/drivers/pcsp/snd-pcsp.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/snd-aloop.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/snd-dummy.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/snd-mtpav.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/snd-mts64.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/snd-portman2x4.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/snd-serial-u16550.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/snd-virmidi.ko
+#lib/modules/KVER-ipfire/kernel/sound/drivers/vx
+#lib/modules/KVER-ipfire/kernel/sound/drivers/vx/snd-vx-lib.ko
+#lib/modules/KVER-ipfire/kernel/sound/firewire
+#lib/modules/KVER-ipfire/kernel/sound/firewire/snd-firewire-lib.ko
+#lib/modules/KVER-ipfire/kernel/sound/firewire/snd-firewire-speakers.ko
+#lib/modules/KVER-ipfire/kernel/sound/i2c
+#lib/modules/KVER-ipfire/kernel/sound/i2c/other
+#lib/modules/KVER-ipfire/kernel/sound/i2c/other/snd-ak4113.ko
+#lib/modules/KVER-ipfire/kernel/sound/i2c/other/snd-ak4114.ko
+#lib/modules/KVER-ipfire/kernel/sound/i2c/other/snd-ak4xxx-adda.ko
+#lib/modules/KVER-ipfire/kernel/sound/i2c/other/snd-pt2258.ko
+#lib/modules/KVER-ipfire/kernel/sound/i2c/snd-cs8427.ko
+#lib/modules/KVER-ipfire/kernel/sound/i2c/snd-i2c.ko
+#lib/modules/KVER-ipfire/kernel/sound/isa
+#lib/modules/KVER-ipfire/kernel/sound/isa/sb
+#lib/modules/KVER-ipfire/kernel/sound/isa/sb/snd-sb-common.ko
+#lib/modules/KVER-ipfire/kernel/sound/isa/sb/snd-sb16-dsp.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci
+#lib/modules/KVER-ipfire/kernel/sound/pci/ac97
+#lib/modules/KVER-ipfire/kernel/sound/pci/ac97/snd-ac97-codec.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/ali5451
+#lib/modules/KVER-ipfire/kernel/sound/pci/ali5451/snd-ali5451.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/asihpi
+#lib/modules/KVER-ipfire/kernel/sound/pci/asihpi/snd-asihpi.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/au88x0
+#lib/modules/KVER-ipfire/kernel/sound/pci/au88x0/snd-au8810.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/au88x0/snd-au8820.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/au88x0/snd-au8830.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/ca0106
+#lib/modules/KVER-ipfire/kernel/sound/pci/ca0106/snd-ca0106.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/cs46xx
+#lib/modules/KVER-ipfire/kernel/sound/pci/cs46xx/snd-cs46xx.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/cs5535audio
+#lib/modules/KVER-ipfire/kernel/sound/pci/cs5535audio/snd-cs5535audio.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/ctxfi
+#lib/modules/KVER-ipfire/kernel/sound/pci/ctxfi/snd-ctxfi.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-darla20.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-darla24.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-echo3g.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-gina20.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-gina24.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-indigo.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-indigodj.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-indigodjx.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-indigoio.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-indigoiox.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-layla20.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-layla24.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-mia.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/echoaudio/snd-mona.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/emu10k1
+#lib/modules/KVER-ipfire/kernel/sound/pci/emu10k1/snd-emu10k1-synth.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/emu10k1/snd-emu10k1.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/emu10k1/snd-emu10k1x.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-analog.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-ca0110.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-ca0132.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-cirrus.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-cmedia.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-conexant.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-generic.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-hdmi.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-idt.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-realtek.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-si3054.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec-via.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-codec.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/hda/snd-hda-intel.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/ice1712
+#lib/modules/KVER-ipfire/kernel/sound/pci/ice1712/snd-ice1712.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/ice1712/snd-ice1724.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/ice1712/snd-ice17xx-ak4xxx.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/korg1212
+#lib/modules/KVER-ipfire/kernel/sound/pci/korg1212/snd-korg1212.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/lola
+#lib/modules/KVER-ipfire/kernel/sound/pci/lola/snd-lola.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/lx6464es
+#lib/modules/KVER-ipfire/kernel/sound/pci/lx6464es/snd-lx6464es.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/mixart
+#lib/modules/KVER-ipfire/kernel/sound/pci/mixart/snd-mixart.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/nm256
+#lib/modules/KVER-ipfire/kernel/sound/pci/nm256/snd-nm256.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/oxygen
+#lib/modules/KVER-ipfire/kernel/sound/pci/oxygen/snd-oxygen-lib.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/oxygen/snd-oxygen.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/oxygen/snd-virtuoso.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/pcxhr
+#lib/modules/KVER-ipfire/kernel/sound/pci/pcxhr/snd-pcxhr.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/riptide
+#lib/modules/KVER-ipfire/kernel/sound/pci/riptide/snd-riptide.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/rme9652
+#lib/modules/KVER-ipfire/kernel/sound/pci/rme9652/snd-hdsp.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/rme9652/snd-hdspm.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/rme9652/snd-rme9652.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-ad1889.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-als300.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-als4000.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-atiixp-modem.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-atiixp.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-azt3328.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-bt87x.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-cmipci.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-cs4281.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-cs5530.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-ens1370.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-ens1371.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-es1938.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-es1968.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-fm801.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-intel8x0.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-intel8x0m.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-maestro3.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-rme32.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-rme96.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-sonicvibes.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-via82xx-modem.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/snd-via82xx.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/trident
+#lib/modules/KVER-ipfire/kernel/sound/pci/trident/snd-trident.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/vx222
+#lib/modules/KVER-ipfire/kernel/sound/pci/vx222/snd-vx222.ko
+#lib/modules/KVER-ipfire/kernel/sound/pci/ymfpci
+#lib/modules/KVER-ipfire/kernel/sound/pci/ymfpci/snd-ymfpci.ko
+#lib/modules/KVER-ipfire/kernel/sound/soundcore.ko
+#lib/modules/KVER-ipfire/kernel/sound/synth
+#lib/modules/KVER-ipfire/kernel/sound/synth/emux
+#lib/modules/KVER-ipfire/kernel/sound/synth/emux/snd-emux-synth.ko
+#lib/modules/KVER-ipfire/kernel/sound/synth/snd-util-mem.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb
+#lib/modules/KVER-ipfire/kernel/sound/usb/6fire
+#lib/modules/KVER-ipfire/kernel/sound/usb/6fire/snd-usb-6fire.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb/caiaq
+#lib/modules/KVER-ipfire/kernel/sound/usb/caiaq/snd-usb-caiaq.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb/hiface
+#lib/modules/KVER-ipfire/kernel/sound/usb/hiface/snd-usb-hiface.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb/misc
+#lib/modules/KVER-ipfire/kernel/sound/usb/misc/snd-ua101.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb/snd-usb-audio.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb/snd-usbmidi-lib.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb/usx2y
+#lib/modules/KVER-ipfire/kernel/sound/usb/usx2y/snd-usb-us122l.ko
+#lib/modules/KVER-ipfire/kernel/sound/usb/usx2y/snd-usb-usx2y.ko
+#lib/modules/KVER-ipfire/modules.alias
+#lib/modules/KVER-ipfire/modules.alias.bin
+#lib/modules/KVER-ipfire/modules.builtin
+#lib/modules/KVER-ipfire/modules.builtin.bin
+#lib/modules/KVER-ipfire/modules.dep
+#lib/modules/KVER-ipfire/modules.dep.bin
+#lib/modules/KVER-ipfire/modules.devname
+#lib/modules/KVER-ipfire/modules.order
+#lib/modules/KVER-ipfire/modules.softdep
+#lib/modules/KVER-ipfire/modules.symbols
+#lib/modules/KVER-ipfire/modules.symbols.bin
+#lib/modules/KVER-ipfire/source
+sbin/gen_init_cpio
+boot/initramfs-KVER-ipfire.img
diff --git a/config/rootfiles/common/x86_64/linux-headers b/config/rootfiles/common/x86_64/linux-headers
new file mode 100644 (file)
index 0000000..804a610
--- /dev/null
@@ -0,0 +1,762 @@
+#usr/include/asm
+#usr/include/asm-generic
+#usr/include/asm-generic/auxvec.h
+#usr/include/asm-generic/bitsperlong.h
+#usr/include/asm-generic/errno-base.h
+#usr/include/asm-generic/errno.h
+#usr/include/asm-generic/fcntl.h
+#usr/include/asm-generic/int-l64.h
+#usr/include/asm-generic/int-ll64.h
+#usr/include/asm-generic/ioctl.h
+#usr/include/asm-generic/ioctls.h
+#usr/include/asm-generic/ipcbuf.h
+#usr/include/asm-generic/kvm_para.h
+#usr/include/asm-generic/mman-common.h
+#usr/include/asm-generic/mman.h
+#usr/include/asm-generic/msgbuf.h
+#usr/include/asm-generic/param.h
+#usr/include/asm-generic/poll.h
+#usr/include/asm-generic/posix_types.h
+#usr/include/asm-generic/resource.h
+#usr/include/asm-generic/sembuf.h
+#usr/include/asm-generic/setup.h
+#usr/include/asm-generic/shmbuf.h
+#usr/include/asm-generic/shmparam.h
+#usr/include/asm-generic/siginfo.h
+#usr/include/asm-generic/signal-defs.h
+#usr/include/asm-generic/signal.h
+#usr/include/asm-generic/socket.h
+#usr/include/asm-generic/sockios.h
+#usr/include/asm-generic/stat.h
+#usr/include/asm-generic/statfs.h
+#usr/include/asm-generic/swab.h
+#usr/include/asm-generic/termbits.h
+#usr/include/asm-generic/termios.h
+#usr/include/asm-generic/types.h
+#usr/include/asm-generic/ucontext.h
+#usr/include/asm-generic/unistd.h
+#usr/include/asm/a.out.h
+#usr/include/asm/auxvec.h
+#usr/include/asm/bitsperlong.h
+#usr/include/asm/boot.h
+#usr/include/asm/bootparam.h
+#usr/include/asm/byteorder.h
+#usr/include/asm/debugreg.h
+#usr/include/asm/e820.h
+#usr/include/asm/errno.h
+#usr/include/asm/fcntl.h
+#usr/include/asm/hw_breakpoint.h
+#usr/include/asm/hyperv.h
+#usr/include/asm/ioctl.h
+#usr/include/asm/ioctls.h
+#usr/include/asm/ipcbuf.h
+#usr/include/asm/ist.h
+#usr/include/asm/kvm.h
+#usr/include/asm/kvm_para.h
+#usr/include/asm/ldt.h
+#usr/include/asm/mce.h
+#usr/include/asm/mman.h
+#usr/include/asm/msgbuf.h
+#usr/include/asm/msr-index.h
+#usr/include/asm/msr.h
+#usr/include/asm/mtrr.h
+#usr/include/asm/param.h
+#usr/include/asm/perf_regs.h
+#usr/include/asm/poll.h
+#usr/include/asm/posix_types.h
+#usr/include/asm/posix_types_32.h
+#usr/include/asm/posix_types_64.h
+#usr/include/asm/posix_types_x32.h
+#usr/include/asm/prctl.h
+#usr/include/asm/processor-flags.h
+#usr/include/asm/ptrace-abi.h
+#usr/include/asm/ptrace.h
+#usr/include/asm/resource.h
+#usr/include/asm/sembuf.h
+#usr/include/asm/setup.h
+#usr/include/asm/shmbuf.h
+#usr/include/asm/sigcontext.h
+#usr/include/asm/sigcontext32.h
+#usr/include/asm/siginfo.h
+#usr/include/asm/signal.h
+#usr/include/asm/socket.h
+#usr/include/asm/sockios.h
+#usr/include/asm/stat.h
+#usr/include/asm/statfs.h
+#usr/include/asm/svm.h
+#usr/include/asm/swab.h
+#usr/include/asm/termbits.h
+#usr/include/asm/termios.h
+#usr/include/asm/types.h
+#usr/include/asm/ucontext.h
+#usr/include/asm/unistd.h
+#usr/include/asm/unistd_32.h
+#usr/include/asm/unistd_64.h
+#usr/include/asm/unistd_x32.h
+#usr/include/asm/vm86.h
+#usr/include/asm/vmx.h
+#usr/include/asm/vsyscall.h
+#usr/include/drm
+#usr/include/drm/drm.h
+#usr/include/drm/drm_fourcc.h
+#usr/include/drm/drm_mode.h
+#usr/include/drm/drm_sarea.h
+#usr/include/drm/exynos_drm.h
+#usr/include/drm/i810_drm.h
+#usr/include/drm/i915_drm.h
+#usr/include/drm/mga_drm.h
+#usr/include/drm/msm_drm.h
+#usr/include/drm/nouveau_drm.h
+#usr/include/drm/qxl_drm.h
+#usr/include/drm/r128_drm.h
+#usr/include/drm/radeon_drm.h
+#usr/include/drm/savage_drm.h
+#usr/include/drm/sis_drm.h
+#usr/include/drm/tegra_drm.h
+#usr/include/drm/via_drm.h
+#usr/include/drm/vmwgfx_drm.h
+#usr/include/linux
+#usr/include/linux/a.out.h
+#usr/include/linux/acct.h
+#usr/include/linux/adb.h
+#usr/include/linux/adfs_fs.h
+#usr/include/linux/affs_hardblocks.h
+#usr/include/linux/agpgart.h
+#usr/include/linux/aio_abi.h
+#usr/include/linux/apm_bios.h
+#usr/include/linux/arcfb.h
+#usr/include/linux/atalk.h
+#usr/include/linux/atm.h
+#usr/include/linux/atm_eni.h
+#usr/include/linux/atm_he.h
+#usr/include/linux/atm_idt77105.h
+#usr/include/linux/atm_nicstar.h
+#usr/include/linux/atm_tcp.h
+#usr/include/linux/atm_zatm.h
+#usr/include/linux/atmapi.h
+#usr/include/linux/atmarp.h
+#usr/include/linux/atmbr2684.h
+#usr/include/linux/atmclip.h
+#usr/include/linux/atmdev.h
+#usr/include/linux/atmioc.h
+#usr/include/linux/atmlec.h
+#usr/include/linux/atmmpc.h
+#usr/include/linux/atmppp.h
+#usr/include/linux/atmsap.h
+#usr/include/linux/atmsvc.h
+#usr/include/linux/audit.h
+#usr/include/linux/auto_fs.h
+#usr/include/linux/auto_fs4.h
+#usr/include/linux/auxvec.h
+#usr/include/linux/ax25.h
+#usr/include/linux/b1lli.h
+#usr/include/linux/baycom.h
+#usr/include/linux/bcm933xx_hcs.h
+#usr/include/linux/bfs_fs.h
+#usr/include/linux/binfmts.h
+#usr/include/linux/blkpg.h
+#usr/include/linux/blktrace_api.h
+#usr/include/linux/bpqether.h
+#usr/include/linux/bsg.h
+#usr/include/linux/btrfs.h
+#usr/include/linux/byteorder
+#usr/include/linux/byteorder/big_endian.h
+#usr/include/linux/byteorder/little_endian.h
+#usr/include/linux/caif
+#usr/include/linux/caif/caif_socket.h
+#usr/include/linux/caif/if_caif.h
+#usr/include/linux/can
+#usr/include/linux/can.h
+#usr/include/linux/can/bcm.h
+#usr/include/linux/can/error.h
+#usr/include/linux/can/gw.h
+#usr/include/linux/can/netlink.h
+#usr/include/linux/can/raw.h
+#usr/include/linux/capability.h
+#usr/include/linux/capi.h
+#usr/include/linux/cciss_defs.h
+#usr/include/linux/cciss_ioctl.h
+#usr/include/linux/cdrom.h
+#usr/include/linux/cgroupstats.h
+#usr/include/linux/chio.h
+#usr/include/linux/cm4000_cs.h
+#usr/include/linux/cn_proc.h
+#usr/include/linux/coda.h
+#usr/include/linux/coda_psdev.h
+#usr/include/linux/coff.h
+#usr/include/linux/connector.h
+#usr/include/linux/const.h
+#usr/include/linux/cramfs_fs.h
+#usr/include/linux/cuda.h
+#usr/include/linux/cyclades.h
+#usr/include/linux/cycx_cfm.h
+#usr/include/linux/dcbnl.h
+#usr/include/linux/dccp.h
+#usr/include/linux/dlm.h
+#usr/include/linux/dlm_device.h
+#usr/include/linux/dlm_netlink.h
+#usr/include/linux/dlm_plock.h
+#usr/include/linux/dlmconstants.h
+#usr/include/linux/dm-ioctl.h
+#usr/include/linux/dm-log-userspace.h
+#usr/include/linux/dn.h
+#usr/include/linux/dqblk_xfs.h
+#usr/include/linux/dvb
+#usr/include/linux/dvb/audio.h
+#usr/include/linux/dvb/ca.h
+#usr/include/linux/dvb/dmx.h
+#usr/include/linux/dvb/frontend.h
+#usr/include/linux/dvb/net.h
+#usr/include/linux/dvb/osd.h
+#usr/include/linux/dvb/version.h
+#usr/include/linux/dvb/video.h
+#usr/include/linux/edd.h
+#usr/include/linux/efs_fs_sb.h
+#usr/include/linux/elf-em.h
+#usr/include/linux/elf-fdpic.h
+#usr/include/linux/elf.h
+#usr/include/linux/elfcore.h
+#usr/include/linux/errno.h
+#usr/include/linux/errqueue.h
+#usr/include/linux/ethtool.h
+#usr/include/linux/eventpoll.h
+#usr/include/linux/fadvise.h
+#usr/include/linux/falloc.h
+#usr/include/linux/fanotify.h
+#usr/include/linux/fb.h
+#usr/include/linux/fcntl.h
+#usr/include/linux/fd.h
+#usr/include/linux/fdreg.h
+#usr/include/linux/fib_rules.h
+#usr/include/linux/fiemap.h
+#usr/include/linux/filter.h
+#usr/include/linux/firewire-cdev.h
+#usr/include/linux/firewire-constants.h
+#usr/include/linux/flat.h
+#usr/include/linux/fs.h
+#usr/include/linux/fsl_hypervisor.h
+#usr/include/linux/fuse.h
+#usr/include/linux/futex.h
+#usr/include/linux/gameport.h
+#usr/include/linux/gen_stats.h
+#usr/include/linux/genetlink.h
+#usr/include/linux/gfs2_ondisk.h
+#usr/include/linux/gigaset_dev.h
+#usr/include/linux/hdlc
+#usr/include/linux/hdlc.h
+#usr/include/linux/hdlc/ioctl.h
+#usr/include/linux/hdlcdrv.h
+#usr/include/linux/hdreg.h
+#usr/include/linux/hid.h
+#usr/include/linux/hiddev.h
+#usr/include/linux/hidraw.h
+#usr/include/linux/hpet.h
+#usr/include/linux/hsi
+#usr/include/linux/hsi/hsi_char.h
+#usr/include/linux/hw_breakpoint.h
+#usr/include/linux/hysdn_if.h
+#usr/include/linux/i2c-dev.h
+#usr/include/linux/i2c.h
+#usr/include/linux/i2o-dev.h
+#usr/include/linux/i8k.h
+#usr/include/linux/icmp.h
+#usr/include/linux/icmpv6.h
+#usr/include/linux/if.h
+#usr/include/linux/if_addr.h
+#usr/include/linux/if_addrlabel.h
+#usr/include/linux/if_alg.h
+#usr/include/linux/if_arcnet.h
+#usr/include/linux/if_arp.h
+#usr/include/linux/if_bonding.h
+#usr/include/linux/if_bridge.h
+#usr/include/linux/if_cablemodem.h
+#usr/include/linux/if_eql.h
+#usr/include/linux/if_ether.h
+#usr/include/linux/if_fc.h
+#usr/include/linux/if_fddi.h
+#usr/include/linux/if_frad.h
+#usr/include/linux/if_hippi.h
+#usr/include/linux/if_infiniband.h
+#usr/include/linux/if_link.h
+#usr/include/linux/if_ltalk.h
+#usr/include/linux/if_packet.h
+#usr/include/linux/if_phonet.h
+#usr/include/linux/if_plip.h
+#usr/include/linux/if_ppp.h
+#usr/include/linux/if_pppol2tp.h
+#usr/include/linux/if_pppox.h
+#usr/include/linux/if_slip.h
+#usr/include/linux/if_team.h
+#usr/include/linux/if_tun.h
+#usr/include/linux/if_tunnel.h
+#usr/include/linux/if_vlan.h
+#usr/include/linux/if_x25.h
+#usr/include/linux/igmp.h
+#usr/include/linux/in.h
+#usr/include/linux/in6.h
+#usr/include/linux/in_route.h
+#usr/include/linux/inet_diag.h
+#usr/include/linux/inotify.h
+#usr/include/linux/input.h
+#usr/include/linux/ioctl.h
+#usr/include/linux/ip.h
+#usr/include/linux/ip6_tunnel.h
+#usr/include/linux/ip_vs.h
+#usr/include/linux/ipc.h
+#usr/include/linux/ipmi.h
+#usr/include/linux/ipmi_msgdefs.h
+#usr/include/linux/ipsec.h
+#usr/include/linux/ipv6.h
+#usr/include/linux/ipv6_route.h
+#usr/include/linux/ipx.h
+#usr/include/linux/irda.h
+#usr/include/linux/irqnr.h
+#usr/include/linux/isdn
+#usr/include/linux/isdn.h
+#usr/include/linux/isdn/capicmd.h
+#usr/include/linux/isdn_divertif.h
+#usr/include/linux/isdn_ppp.h
+#usr/include/linux/isdnif.h
+#usr/include/linux/iso_fs.h
+#usr/include/linux/ivtv.h
+#usr/include/linux/ivtvfb.h
+#usr/include/linux/ixjuser.h
+#usr/include/linux/jffs2.h
+#usr/include/linux/joystick.h
+#usr/include/linux/kd.h
+#usr/include/linux/kdev_t.h
+#usr/include/linux/kernel-page-flags.h
+#usr/include/linux/kernel.h
+#usr/include/linux/kernelcapi.h
+#usr/include/linux/kexec.h
+#usr/include/linux/keyboard.h
+#usr/include/linux/keyctl.h
+#usr/include/linux/kvm.h
+#usr/include/linux/kvm_para.h
+#usr/include/linux/l2tp.h
+#usr/include/linux/libc-compat.h
+#usr/include/linux/limits.h
+#usr/include/linux/llc.h
+#usr/include/linux/loop.h
+#usr/include/linux/lp.h
+#usr/include/linux/magic.h
+#usr/include/linux/major.h
+#usr/include/linux/map_to_7segment.h
+#usr/include/linux/matroxfb.h
+#usr/include/linux/mdio.h
+#usr/include/linux/media.h
+#usr/include/linux/mei.h
+#usr/include/linux/mempolicy.h
+#usr/include/linux/meye.h
+#usr/include/linux/mic_common.h
+#usr/include/linux/mic_ioctl.h
+#usr/include/linux/mii.h
+#usr/include/linux/minix_fs.h
+#usr/include/linux/mman.h
+#usr/include/linux/mmc
+#usr/include/linux/mmc/ioctl.h
+#usr/include/linux/mmtimer.h
+#usr/include/linux/mqueue.h
+#usr/include/linux/mroute.h
+#usr/include/linux/mroute6.h
+#usr/include/linux/msdos_fs.h
+#usr/include/linux/msg.h
+#usr/include/linux/mtio.h
+#usr/include/linux/n_r3964.h
+#usr/include/linux/nbd.h
+#usr/include/linux/ncp.h
+#usr/include/linux/ncp_fs.h
+#usr/include/linux/ncp_mount.h
+#usr/include/linux/ncp_no.h
+#usr/include/linux/neighbour.h
+#usr/include/linux/net.h
+#usr/include/linux/net_dropmon.h
+#usr/include/linux/net_tstamp.h
+#usr/include/linux/netconf.h
+#usr/include/linux/netdevice.h
+#usr/include/linux/netfilter
+#usr/include/linux/netfilter.h
+#usr/include/linux/netfilter/ipset
+#usr/include/linux/netfilter/ipset/ip_set.h
+#usr/include/linux/netfilter/ipset/ip_set_bitmap.h
+#usr/include/linux/netfilter/ipset/ip_set_hash.h
+#usr/include/linux/netfilter/ipset/ip_set_list.h
+#usr/include/linux/netfilter/nf_conntrack_common.h
+#usr/include/linux/netfilter/nf_conntrack_ftp.h
+#usr/include/linux/netfilter/nf_conntrack_sctp.h
+#usr/include/linux/netfilter/nf_conntrack_tcp.h
+#usr/include/linux/netfilter/nf_conntrack_tuple_common.h
+#usr/include/linux/netfilter/nf_nat.h
+#usr/include/linux/netfilter/nf_tables.h
+#usr/include/linux/netfilter/nf_tables_compat.h
+#usr/include/linux/netfilter/nfnetlink.h
+#usr/include/linux/netfilter/nfnetlink_acct.h
+#usr/include/linux/netfilter/nfnetlink_compat.h
+#usr/include/linux/netfilter/nfnetlink_conntrack.h
+#usr/include/linux/netfilter/nfnetlink_cthelper.h
+#usr/include/linux/netfilter/nfnetlink_cttimeout.h
+#usr/include/linux/netfilter/nfnetlink_log.h
+#usr/include/linux/netfilter/nfnetlink_queue.h
+#usr/include/linux/netfilter/x_tables.h
+#usr/include/linux/netfilter/xt_AUDIT.h
+#usr/include/linux/netfilter/xt_CHECKSUM.h
+#usr/include/linux/netfilter/xt_CLASSIFY.h
+#usr/include/linux/netfilter/xt_CONNMARK.h
+#usr/include/linux/netfilter/xt_CONNSECMARK.h
+#usr/include/linux/netfilter/xt_CT.h
+#usr/include/linux/netfilter/xt_DSCP.h
+#usr/include/linux/netfilter/xt_HMARK.h
+#usr/include/linux/netfilter/xt_IDLETIMER.h
+#usr/include/linux/netfilter/xt_LED.h
+#usr/include/linux/netfilter/xt_LOG.h
+#usr/include/linux/netfilter/xt_MARK.h
+#usr/include/linux/netfilter/xt_NFLOG.h
+#usr/include/linux/netfilter/xt_NFQUEUE.h
+#usr/include/linux/netfilter/xt_RATEEST.h
+#usr/include/linux/netfilter/xt_SECMARK.h
+#usr/include/linux/netfilter/xt_TCPMSS.h
+#usr/include/linux/netfilter/xt_TCPOPTSTRIP.h
+#usr/include/linux/netfilter/xt_TEE.h
+#usr/include/linux/netfilter/xt_TPROXY.h
+#usr/include/linux/netfilter/xt_addrtype.h
+#usr/include/linux/netfilter/xt_bpf.h
+#usr/include/linux/netfilter/xt_cgroup.h
+#usr/include/linux/netfilter/xt_cluster.h
+#usr/include/linux/netfilter/xt_comment.h
+#usr/include/linux/netfilter/xt_connbytes.h
+#usr/include/linux/netfilter/xt_connlabel.h
+#usr/include/linux/netfilter/xt_connlimit.h
+#usr/include/linux/netfilter/xt_connmark.h
+#usr/include/linux/netfilter/xt_conntrack.h
+#usr/include/linux/netfilter/xt_cpu.h
+#usr/include/linux/netfilter/xt_dccp.h
+#usr/include/linux/netfilter/xt_devgroup.h
+#usr/include/linux/netfilter/xt_dscp.h
+#usr/include/linux/netfilter/xt_ecn.h
+#usr/include/linux/netfilter/xt_esp.h
+#usr/include/linux/netfilter/xt_hashlimit.h
+#usr/include/linux/netfilter/xt_helper.h
+#usr/include/linux/netfilter/xt_ipcomp.h
+#usr/include/linux/netfilter/xt_iprange.h
+#usr/include/linux/netfilter/xt_ipvs.h
+#usr/include/linux/netfilter/xt_l2tp.h
+#usr/include/linux/netfilter/xt_layer7.h
+#usr/include/linux/netfilter/xt_length.h
+#usr/include/linux/netfilter/xt_limit.h
+#usr/include/linux/netfilter/xt_mac.h
+#usr/include/linux/netfilter/xt_mark.h
+#usr/include/linux/netfilter/xt_multiport.h
+#usr/include/linux/netfilter/xt_nfacct.h
+#usr/include/linux/netfilter/xt_osf.h
+#usr/include/linux/netfilter/xt_owner.h
+#usr/include/linux/netfilter/xt_physdev.h
+#usr/include/linux/netfilter/xt_pkttype.h
+#usr/include/linux/netfilter/xt_policy.h
+#usr/include/linux/netfilter/xt_quota.h
+#usr/include/linux/netfilter/xt_rateest.h
+#usr/include/linux/netfilter/xt_realm.h
+#usr/include/linux/netfilter/xt_recent.h
+#usr/include/linux/netfilter/xt_rpfilter.h
+#usr/include/linux/netfilter/xt_sctp.h
+#usr/include/linux/netfilter/xt_set.h
+#usr/include/linux/netfilter/xt_socket.h
+#usr/include/linux/netfilter/xt_state.h
+#usr/include/linux/netfilter/xt_statistic.h
+#usr/include/linux/netfilter/xt_string.h
+#usr/include/linux/netfilter/xt_tcpmss.h
+#usr/include/linux/netfilter/xt_tcpudp.h
+#usr/include/linux/netfilter/xt_time.h
+#usr/include/linux/netfilter/xt_u32.h
+#usr/include/linux/netfilter_arp
+#usr/include/linux/netfilter_arp.h
+#usr/include/linux/netfilter_arp/arp_tables.h
+#usr/include/linux/netfilter_arp/arpt_mangle.h
+#usr/include/linux/netfilter_bridge
+#usr/include/linux/netfilter_bridge.h
+#usr/include/linux/netfilter_bridge/ebt_802_3.h
+#usr/include/linux/netfilter_bridge/ebt_among.h
+#usr/include/linux/netfilter_bridge/ebt_arp.h
+#usr/include/linux/netfilter_bridge/ebt_arpreply.h
+#usr/include/linux/netfilter_bridge/ebt_ip.h
+#usr/include/linux/netfilter_bridge/ebt_ip6.h
+#usr/include/linux/netfilter_bridge/ebt_limit.h
+#usr/include/linux/netfilter_bridge/ebt_log.h
+#usr/include/linux/netfilter_bridge/ebt_mark_m.h
+#usr/include/linux/netfilter_bridge/ebt_mark_t.h
+#usr/include/linux/netfilter_bridge/ebt_nat.h
+#usr/include/linux/netfilter_bridge/ebt_nflog.h
+#usr/include/linux/netfilter_bridge/ebt_pkttype.h
+#usr/include/linux/netfilter_bridge/ebt_redirect.h
+#usr/include/linux/netfilter_bridge/ebt_stp.h
+#usr/include/linux/netfilter_bridge/ebt_ulog.h
+#usr/include/linux/netfilter_bridge/ebt_vlan.h
+#usr/include/linux/netfilter_bridge/ebtables.h
+#usr/include/linux/netfilter_decnet.h
+#usr/include/linux/netfilter_ipv4
+#usr/include/linux/netfilter_ipv4.h
+#usr/include/linux/netfilter_ipv4/ip_tables.h
+#usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h
+#usr/include/linux/netfilter_ipv4/ipt_ECN.h
+#usr/include/linux/netfilter_ipv4/ipt_LOG.h
+#usr/include/linux/netfilter_ipv4/ipt_REJECT.h
+#usr/include/linux/netfilter_ipv4/ipt_TTL.h
+#usr/include/linux/netfilter_ipv4/ipt_ULOG.h
+#usr/include/linux/netfilter_ipv4/ipt_ah.h
+#usr/include/linux/netfilter_ipv4/ipt_ecn.h
+#usr/include/linux/netfilter_ipv4/ipt_ttl.h
+#usr/include/linux/netfilter_ipv6
+#usr/include/linux/netfilter_ipv6.h
+#usr/include/linux/netfilter_ipv6/ip6_tables.h
+#usr/include/linux/netfilter_ipv6/ip6t_HL.h
+#usr/include/linux/netfilter_ipv6/ip6t_LOG.h
+#usr/include/linux/netfilter_ipv6/ip6t_NPT.h
+#usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
+#usr/include/linux/netfilter_ipv6/ip6t_ah.h
+#usr/include/linux/netfilter_ipv6/ip6t_frag.h
+#usr/include/linux/netfilter_ipv6/ip6t_hl.h
+#usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
+#usr/include/linux/netfilter_ipv6/ip6t_mh.h
+#usr/include/linux/netfilter_ipv6/ip6t_opts.h
+#usr/include/linux/netfilter_ipv6/ip6t_rt.h
+#usr/include/linux/netlink.h
+#usr/include/linux/netlink_diag.h
+#usr/include/linux/netrom.h
+#usr/include/linux/nfc.h
+#usr/include/linux/nfs.h
+#usr/include/linux/nfs2.h
+#usr/include/linux/nfs3.h
+#usr/include/linux/nfs4.h
+#usr/include/linux/nfs4_mount.h
+#usr/include/linux/nfs_fs.h
+#usr/include/linux/nfs_idmap.h
+#usr/include/linux/nfs_mount.h
+#usr/include/linux/nfsacl.h
+#usr/include/linux/nfsd
+#usr/include/linux/nfsd/cld.h
+#usr/include/linux/nfsd/debug.h
+#usr/include/linux/nfsd/export.h
+#usr/include/linux/nfsd/nfsfh.h
+#usr/include/linux/nfsd/stats.h
+#usr/include/linux/nl80211.h
+#usr/include/linux/nubus.h
+#usr/include/linux/nvme.h
+#usr/include/linux/nvram.h
+#usr/include/linux/omap3isp.h
+#usr/include/linux/omapfb.h
+#usr/include/linux/oom.h
+#usr/include/linux/openvswitch.h
+#usr/include/linux/packet_diag.h
+#usr/include/linux/param.h
+#usr/include/linux/parport.h
+#usr/include/linux/patchkey.h
+#usr/include/linux/pci.h
+#usr/include/linux/pci_regs.h
+#usr/include/linux/perf_event.h
+#usr/include/linux/personality.h
+#usr/include/linux/pfkeyv2.h
+#usr/include/linux/pg.h
+#usr/include/linux/phantom.h
+#usr/include/linux/phonet.h
+#usr/include/linux/pkt_cls.h
+#usr/include/linux/pkt_sched.h
+#usr/include/linux/pktcdvd.h
+#usr/include/linux/pmu.h
+#usr/include/linux/poll.h
+#usr/include/linux/posix_types.h
+#usr/include/linux/ppdev.h
+#usr/include/linux/ppp-comp.h
+#usr/include/linux/ppp-ioctl.h
+#usr/include/linux/ppp_defs.h
+#usr/include/linux/pps.h
+#usr/include/linux/prctl.h
+#usr/include/linux/ptp_clock.h
+#usr/include/linux/ptrace.h
+#usr/include/linux/qnx4_fs.h
+#usr/include/linux/qnxtypes.h
+#usr/include/linux/quota.h
+#usr/include/linux/radeonfb.h
+#usr/include/linux/raid
+#usr/include/linux/raid/md_p.h
+#usr/include/linux/raid/md_u.h
+#usr/include/linux/random.h
+#usr/include/linux/raw.h
+#usr/include/linux/rds.h
+#usr/include/linux/reboot.h
+#usr/include/linux/reiserfs_fs.h
+#usr/include/linux/reiserfs_xattr.h
+#usr/include/linux/resource.h
+#usr/include/linux/rfkill.h
+#usr/include/linux/romfs_fs.h
+#usr/include/linux/rose.h
+#usr/include/linux/route.h
+#usr/include/linux/rtc.h
+#usr/include/linux/rtnetlink.h
+#usr/include/linux/scc.h
+#usr/include/linux/sched.h
+#usr/include/linux/screen_info.h
+#usr/include/linux/sctp.h
+#usr/include/linux/sdla.h
+#usr/include/linux/seccomp.h
+#usr/include/linux/securebits.h
+#usr/include/linux/selinux_netlink.h
+#usr/include/linux/sem.h
+#usr/include/linux/serial.h
+#usr/include/linux/serial_core.h
+#usr/include/linux/serial_reg.h
+#usr/include/linux/serio.h
+#usr/include/linux/shm.h
+#usr/include/linux/signal.h
+#usr/include/linux/signalfd.h
+#usr/include/linux/snmp.h
+#usr/include/linux/sock_diag.h
+#usr/include/linux/socket.h
+#usr/include/linux/sockios.h
+#usr/include/linux/som.h
+#usr/include/linux/sonet.h
+#usr/include/linux/sonypi.h
+#usr/include/linux/sound.h
+#usr/include/linux/soundcard.h
+#usr/include/linux/spi
+#usr/include/linux/spi/spidev.h
+#usr/include/linux/stat.h
+#usr/include/linux/stddef.h
+#usr/include/linux/string.h
+#usr/include/linux/sunrpc
+#usr/include/linux/sunrpc/debug.h
+#usr/include/linux/suspend_ioctls.h
+#usr/include/linux/swab.h
+#usr/include/linux/synclink.h
+#usr/include/linux/sysctl.h
+#usr/include/linux/sysinfo.h
+#usr/include/linux/taskstats.h
+#usr/include/linux/tc_act
+#usr/include/linux/tc_act/tc_csum.h
+#usr/include/linux/tc_act/tc_defact.h
+#usr/include/linux/tc_act/tc_gact.h
+#usr/include/linux/tc_act/tc_ipt.h
+#usr/include/linux/tc_act/tc_mirred.h
+#usr/include/linux/tc_act/tc_nat.h
+#usr/include/linux/tc_act/tc_pedit.h
+#usr/include/linux/tc_act/tc_skbedit.h
+#usr/include/linux/tc_ematch
+#usr/include/linux/tc_ematch/tc_em_cmp.h
+#usr/include/linux/tc_ematch/tc_em_meta.h
+#usr/include/linux/tc_ematch/tc_em_nbyte.h
+#usr/include/linux/tc_ematch/tc_em_text.h
+#usr/include/linux/tcp.h
+#usr/include/linux/tcp_metrics.h
+#usr/include/linux/telephony.h
+#usr/include/linux/termios.h
+#usr/include/linux/time.h
+#usr/include/linux/times.h
+#usr/include/linux/timex.h
+#usr/include/linux/tiocl.h
+#usr/include/linux/tipc.h
+#usr/include/linux/tipc_config.h
+#usr/include/linux/toshiba.h
+#usr/include/linux/tty.h
+#usr/include/linux/tty_flags.h
+#usr/include/linux/types.h
+#usr/include/linux/udf_fs_i.h
+#usr/include/linux/udp.h
+#usr/include/linux/uhid.h
+#usr/include/linux/uinput.h
+#usr/include/linux/uio.h
+#usr/include/linux/ultrasound.h
+#usr/include/linux/un.h
+#usr/include/linux/unistd.h
+#usr/include/linux/unix_diag.h
+#usr/include/linux/usb
+#usr/include/linux/usb/audio.h
+#usr/include/linux/usb/cdc-wdm.h
+#usr/include/linux/usb/cdc.h
+#usr/include/linux/usb/ch11.h
+#usr/include/linux/usb/ch9.h
+#usr/include/linux/usb/functionfs.h
+#usr/include/linux/usb/g_printer.h
+#usr/include/linux/usb/gadgetfs.h
+#usr/include/linux/usb/midi.h
+#usr/include/linux/usb/tmc.h
+#usr/include/linux/usb/video.h
+#usr/include/linux/usbdevice_fs.h
+#usr/include/linux/utime.h
+#usr/include/linux/utsname.h
+#usr/include/linux/uuid.h
+#usr/include/linux/uvcvideo.h
+#usr/include/linux/v4l2-common.h
+#usr/include/linux/v4l2-controls.h
+#usr/include/linux/v4l2-dv-timings.h
+#usr/include/linux/v4l2-mediabus.h
+#usr/include/linux/v4l2-subdev.h
+#usr/include/linux/version.h
+#usr/include/linux/veth.h
+#usr/include/linux/vfio.h
+#usr/include/linux/vhost.h
+#usr/include/linux/videodev2.h
+#usr/include/linux/virtio_9p.h
+#usr/include/linux/virtio_balloon.h
+#usr/include/linux/virtio_blk.h
+#usr/include/linux/virtio_config.h
+#usr/include/linux/virtio_console.h
+#usr/include/linux/virtio_ids.h
+#usr/include/linux/virtio_net.h
+#usr/include/linux/virtio_pci.h
+#usr/include/linux/virtio_ring.h
+#usr/include/linux/virtio_rng.h
+#usr/include/linux/vt.h
+#usr/include/linux/wait.h
+#usr/include/linux/wanrouter.h
+#usr/include/linux/watchdog.h
+#usr/include/linux/wimax
+#usr/include/linux/wimax.h
+#usr/include/linux/wimax/i2400m.h
+#usr/include/linux/wireless.h
+#usr/include/linux/x25.h
+#usr/include/linux/xattr.h
+#usr/include/linux/xfrm.h
+#usr/include/linux/zorro.h
+#usr/include/linux/zorro_ids.h
+#usr/include/mtd
+#usr/include/mtd/inftl-user.h
+#usr/include/mtd/mtd-abi.h
+#usr/include/mtd/mtd-user.h
+#usr/include/mtd/nftl-user.h
+#usr/include/mtd/ubi-user.h
+#usr/include/rdma
+#usr/include/rdma/ib_user_cm.h
+#usr/include/rdma/ib_user_mad.h
+#usr/include/rdma/ib_user_sa.h
+#usr/include/rdma/ib_user_verbs.h
+#usr/include/rdma/rdma_netlink.h
+#usr/include/rdma/rdma_user_cm.h
+#usr/include/scsi
+#usr/include/scsi/fc
+#usr/include/scsi/fc/fc_els.h
+#usr/include/scsi/fc/fc_fs.h
+#usr/include/scsi/fc/fc_gs.h
+#usr/include/scsi/fc/fc_ns.h
+#usr/include/scsi/scsi_bsg_fc.h
+#usr/include/scsi/scsi_netlink.h
+#usr/include/scsi/scsi_netlink_fc.h
+#usr/include/sound
+#usr/include/sound/asequencer.h
+#usr/include/sound/asound.h
+#usr/include/sound/asound_fm.h
+#usr/include/sound/compress_offload.h
+#usr/include/sound/compress_params.h
+#usr/include/sound/emu10k1.h
+#usr/include/sound/firewire.h
+#usr/include/sound/hdsp.h
+#usr/include/sound/hdspm.h
+#usr/include/sound/sb16_csp.h
+#usr/include/sound/sfnt_info.h
+#usr/include/uapi
+#usr/include/video
+#usr/include/video/edid.h
+#usr/include/video/sisfb.h
+#usr/include/video/uvesafb.h
+#usr/include/xen
+#usr/include/xen/evtchn.h
+#usr/include/xen/gntalloc.h
+#usr/include/xen/gntdev.h
+#usr/include/xen/privcmd.h
diff --git a/config/rootfiles/common/x86_64/linux-initrd b/config/rootfiles/common/x86_64/linux-initrd
new file mode 100644 (file)
index 0000000..5679550
--- /dev/null
@@ -0,0 +1 @@
+#boot/initramfs-KVER-ipfire.img
diff --git a/config/rootfiles/common/x86_64/lm_sensors b/config/rootfiles/common/x86_64/lm_sensors
new file mode 100644 (file)
index 0000000..f23b97c
--- /dev/null
@@ -0,0 +1,25 @@
+etc/sensors.d
+etc/sensors3.conf
+usr/bin/sensors
+usr/bin/sensors-conf-convert
+#usr/include/sensors
+#usr/include/sensors/error.h
+#usr/include/sensors/sensors.h
+#usr/lib/libsensors.a
+usr/lib/libsensors.so
+usr/lib/libsensors.so.4
+usr/lib/libsensors.so.4.3.2
+#usr/man/man1/sensors.1
+#usr/man/man3/libsensors.3
+#usr/man/man5/sensors.conf.5
+#usr/man/man5/sensors3.conf.5
+#usr/man/man8/fancontrol.8
+#usr/man/man8/isadump.8
+#usr/man/man8/isaset.8
+#usr/man/man8/pwmconfig.8
+#usr/man/man8/sensors-detect.8
+usr/sbin/fancontrol
+usr/sbin/isadump
+usr/sbin/isaset
+usr/sbin/pwmconfig
+usr/sbin/sensors-detect
diff --git a/config/rootfiles/common/x86_64/python b/config/rootfiles/common/x86_64/python
new file mode 100644 (file)
index 0000000..0155f24
--- /dev/null
@@ -0,0 +1,4624 @@
+#usr/bin/2to3
+#usr/bin/idle
+#usr/bin/pydoc
+usr/bin/python
+#usr/bin/python-config
+usr/bin/python2
+#usr/bin/python2-config
+usr/bin/python2.7
+#usr/bin/python2.7-config
+#usr/bin/smtpd.py
+#usr/include/python2.7
+#usr/include/python2.7/Python-ast.h
+#usr/include/python2.7/Python.h
+#usr/include/python2.7/abstract.h
+#usr/include/python2.7/asdl.h
+#usr/include/python2.7/ast.h
+#usr/include/python2.7/bitset.h
+#usr/include/python2.7/boolobject.h
+#usr/include/python2.7/bufferobject.h
+#usr/include/python2.7/bytearrayobject.h
+#usr/include/python2.7/bytes_methods.h
+#usr/include/python2.7/bytesobject.h
+#usr/include/python2.7/cStringIO.h
+#usr/include/python2.7/cellobject.h
+#usr/include/python2.7/ceval.h
+#usr/include/python2.7/classobject.h
+#usr/include/python2.7/cobject.h
+#usr/include/python2.7/code.h
+#usr/include/python2.7/codecs.h
+#usr/include/python2.7/compile.h
+#usr/include/python2.7/complexobject.h
+#usr/include/python2.7/datetime.h
+#usr/include/python2.7/descrobject.h
+#usr/include/python2.7/dictobject.h
+#usr/include/python2.7/dtoa.h
+#usr/include/python2.7/enumobject.h
+#usr/include/python2.7/errcode.h
+#usr/include/python2.7/eval.h
+#usr/include/python2.7/fileobject.h
+#usr/include/python2.7/floatobject.h
+#usr/include/python2.7/frameobject.h
+#usr/include/python2.7/funcobject.h
+#usr/include/python2.7/genobject.h
+#usr/include/python2.7/graminit.h
+#usr/include/python2.7/grammar.h
+#usr/include/python2.7/import.h
+#usr/include/python2.7/intobject.h
+#usr/include/python2.7/intrcheck.h
+#usr/include/python2.7/iterobject.h
+#usr/include/python2.7/listobject.h
+#usr/include/python2.7/longintrepr.h
+#usr/include/python2.7/longobject.h
+#usr/include/python2.7/marshal.h
+#usr/include/python2.7/memoryobject.h
+#usr/include/python2.7/metagrammar.h
+#usr/include/python2.7/methodobject.h
+#usr/include/python2.7/modsupport.h
+#usr/include/python2.7/moduleobject.h
+#usr/include/python2.7/node.h
+#usr/include/python2.7/object.h
+#usr/include/python2.7/objimpl.h
+#usr/include/python2.7/opcode.h
+#usr/include/python2.7/osdefs.h
+#usr/include/python2.7/parsetok.h
+#usr/include/python2.7/patchlevel.h
+#usr/include/python2.7/pgen.h
+#usr/include/python2.7/pgenheaders.h
+#usr/include/python2.7/py_curses.h
+#usr/include/python2.7/pyarena.h
+#usr/include/python2.7/pycapsule.h
+usr/include/python2.7/pyconfig.h
+#usr/include/python2.7/pyctype.h
+#usr/include/python2.7/pydebug.h
+#usr/include/python2.7/pyerrors.h
+#usr/include/python2.7/pyexpat.h
+#usr/include/python2.7/pyfpe.h
+#usr/include/python2.7/pygetopt.h
+#usr/include/python2.7/pymacconfig.h
+#usr/include/python2.7/pymactoolbox.h
+#usr/include/python2.7/pymath.h
+#usr/include/python2.7/pymem.h
+#usr/include/python2.7/pyport.h
+#usr/include/python2.7/pystate.h
+#usr/include/python2.7/pystrcmp.h
+#usr/include/python2.7/pystrtod.h
+#usr/include/python2.7/pythonrun.h
+#usr/include/python2.7/pythread.h
+#usr/include/python2.7/rangeobject.h
+#usr/include/python2.7/setobject.h
+#usr/include/python2.7/sliceobject.h
+#usr/include/python2.7/stringobject.h
+#usr/include/python2.7/structmember.h
+#usr/include/python2.7/structseq.h
+#usr/include/python2.7/symtable.h
+#usr/include/python2.7/sysmodule.h
+#usr/include/python2.7/timefuncs.h
+#usr/include/python2.7/token.h
+#usr/include/python2.7/traceback.h
+#usr/include/python2.7/tupleobject.h
+#usr/include/python2.7/ucnhash.h
+#usr/include/python2.7/unicodeobject.h
+#usr/include/python2.7/warnings.h
+#usr/include/python2.7/weakrefobject.h
+usr/lib/libpython2.7.so
+usr/lib/libpython2.7.so.1.0
+#usr/lib/pkgconfig/python-2.7.pc
+#usr/lib/pkgconfig/python.pc
+#usr/lib/pkgconfig/python2.pc
+#usr/lib/python2.7
+#usr/lib/python2.7/BaseHTTPServer.py
+usr/lib/python2.7/BaseHTTPServer.pyc
+#usr/lib/python2.7/BaseHTTPServer.pyo
+#usr/lib/python2.7/Bastion.py
+usr/lib/python2.7/Bastion.pyc
+#usr/lib/python2.7/Bastion.pyo
+#usr/lib/python2.7/CGIHTTPServer.py
+usr/lib/python2.7/CGIHTTPServer.pyc
+#usr/lib/python2.7/CGIHTTPServer.pyo
+#usr/lib/python2.7/ConfigParser.py
+usr/lib/python2.7/ConfigParser.pyc
+#usr/lib/python2.7/ConfigParser.pyo
+#usr/lib/python2.7/Cookie.py
+usr/lib/python2.7/Cookie.pyc
+#usr/lib/python2.7/Cookie.pyo
+#usr/lib/python2.7/DocXMLRPCServer.py
+usr/lib/python2.7/DocXMLRPCServer.pyc
+#usr/lib/python2.7/DocXMLRPCServer.pyo
+#usr/lib/python2.7/HTMLParser.py
+usr/lib/python2.7/HTMLParser.pyc
+#usr/lib/python2.7/HTMLParser.pyo
+#usr/lib/python2.7/LICENSE.txt
+#usr/lib/python2.7/MimeWriter.py
+usr/lib/python2.7/MimeWriter.pyc
+#usr/lib/python2.7/MimeWriter.pyo
+#usr/lib/python2.7/Queue.py
+usr/lib/python2.7/Queue.pyc
+#usr/lib/python2.7/Queue.pyo
+#usr/lib/python2.7/SimpleHTTPServer.py
+usr/lib/python2.7/SimpleHTTPServer.pyc
+#usr/lib/python2.7/SimpleHTTPServer.pyo
+#usr/lib/python2.7/SimpleXMLRPCServer.py
+usr/lib/python2.7/SimpleXMLRPCServer.pyc
+#usr/lib/python2.7/SimpleXMLRPCServer.pyo
+#usr/lib/python2.7/SocketServer.py
+usr/lib/python2.7/SocketServer.pyc
+#usr/lib/python2.7/SocketServer.pyo
+#usr/lib/python2.7/StringIO.py
+usr/lib/python2.7/StringIO.pyc
+#usr/lib/python2.7/StringIO.pyo
+#usr/lib/python2.7/UserDict.py
+usr/lib/python2.7/UserDict.pyc
+#usr/lib/python2.7/UserDict.pyo
+#usr/lib/python2.7/UserList.py
+usr/lib/python2.7/UserList.pyc
+#usr/lib/python2.7/UserList.pyo
+#usr/lib/python2.7/UserString.py
+usr/lib/python2.7/UserString.pyc
+#usr/lib/python2.7/UserString.pyo
+#usr/lib/python2.7/_LWPCookieJar.py
+usr/lib/python2.7/_LWPCookieJar.pyc
+#usr/lib/python2.7/_LWPCookieJar.pyo
+#usr/lib/python2.7/_MozillaCookieJar.py
+usr/lib/python2.7/_MozillaCookieJar.pyc
+#usr/lib/python2.7/_MozillaCookieJar.pyo
+#usr/lib/python2.7/__future__.py
+usr/lib/python2.7/__future__.pyc
+#usr/lib/python2.7/__future__.pyo
+#usr/lib/python2.7/__phello__.foo.py
+usr/lib/python2.7/__phello__.foo.pyc
+#usr/lib/python2.7/__phello__.foo.pyo
+#usr/lib/python2.7/_abcoll.py
+usr/lib/python2.7/_abcoll.pyc
+#usr/lib/python2.7/_abcoll.pyo
+#usr/lib/python2.7/_osx_support.py
+#usr/lib/python2.7/_osx_support.pyc
+#usr/lib/python2.7/_osx_support.pyo
+#usr/lib/python2.7/_pyio.py
+usr/lib/python2.7/_pyio.pyc
+#usr/lib/python2.7/_pyio.pyo
+#usr/lib/python2.7/_strptime.py
+usr/lib/python2.7/_strptime.pyc
+#usr/lib/python2.7/_strptime.pyo
+#usr/lib/python2.7/_sysconfigdata.py
+usr/lib/python2.7/_sysconfigdata.pyc
+#usr/lib/python2.7/_sysconfigdata.pyo
+#usr/lib/python2.7/_threading_local.py
+usr/lib/python2.7/_threading_local.pyc
+#usr/lib/python2.7/_threading_local.pyo
+#usr/lib/python2.7/_weakrefset.py
+usr/lib/python2.7/_weakrefset.pyc
+#usr/lib/python2.7/_weakrefset.pyo
+#usr/lib/python2.7/abc.py
+usr/lib/python2.7/abc.pyc
+#usr/lib/python2.7/abc.pyo
+#usr/lib/python2.7/aifc.py
+usr/lib/python2.7/aifc.pyc
+#usr/lib/python2.7/aifc.pyo
+#usr/lib/python2.7/antigravity.py
+usr/lib/python2.7/antigravity.pyc
+#usr/lib/python2.7/antigravity.pyo
+#usr/lib/python2.7/anydbm.py
+usr/lib/python2.7/anydbm.pyc
+#usr/lib/python2.7/anydbm.pyo
+#usr/lib/python2.7/argparse.py
+usr/lib/python2.7/argparse.pyc
+#usr/lib/python2.7/argparse.pyo
+#usr/lib/python2.7/ast.py
+usr/lib/python2.7/ast.pyc
+#usr/lib/python2.7/ast.pyo
+#usr/lib/python2.7/asynchat.py
+usr/lib/python2.7/asynchat.pyc
+#usr/lib/python2.7/asynchat.pyo
+#usr/lib/python2.7/asyncore.py
+usr/lib/python2.7/asyncore.pyc
+#usr/lib/python2.7/asyncore.pyo
+#usr/lib/python2.7/atexit.py
+usr/lib/python2.7/atexit.pyc
+#usr/lib/python2.7/atexit.pyo
+#usr/lib/python2.7/audiodev.py
+usr/lib/python2.7/audiodev.pyc
+#usr/lib/python2.7/audiodev.pyo
+#usr/lib/python2.7/base64.py
+usr/lib/python2.7/base64.pyc
+#usr/lib/python2.7/base64.pyo
+#usr/lib/python2.7/bdb.py
+usr/lib/python2.7/bdb.pyc
+#usr/lib/python2.7/bdb.pyo
+#usr/lib/python2.7/binhex.py
+usr/lib/python2.7/binhex.pyc
+#usr/lib/python2.7/binhex.pyo
+#usr/lib/python2.7/bisect.py
+usr/lib/python2.7/bisect.pyc
+#usr/lib/python2.7/bisect.pyo
+#usr/lib/python2.7/bsddb
+#usr/lib/python2.7/bsddb/__init__.py
+usr/lib/python2.7/bsddb/__init__.pyc
+#usr/lib/python2.7/bsddb/__init__.pyo
+#usr/lib/python2.7/bsddb/db.py
+usr/lib/python2.7/bsddb/db.pyc
+#usr/lib/python2.7/bsddb/db.pyo
+#usr/lib/python2.7/bsddb/dbobj.py
+usr/lib/python2.7/bsddb/dbobj.pyc
+#usr/lib/python2.7/bsddb/dbobj.pyo
+#usr/lib/python2.7/bsddb/dbrecio.py
+usr/lib/python2.7/bsddb/dbrecio.pyc
+#usr/lib/python2.7/bsddb/dbrecio.pyo
+#usr/lib/python2.7/bsddb/dbshelve.py
+usr/lib/python2.7/bsddb/dbshelve.pyc
+#usr/lib/python2.7/bsddb/dbshelve.pyo
+#usr/lib/python2.7/bsddb/dbtables.py
+usr/lib/python2.7/bsddb/dbtables.pyc
+#usr/lib/python2.7/bsddb/dbtables.pyo
+#usr/lib/python2.7/bsddb/dbutils.py
+usr/lib/python2.7/bsddb/dbutils.pyc
+#usr/lib/python2.7/bsddb/dbutils.pyo
+#usr/lib/python2.7/bsddb/test
+#usr/lib/python2.7/bsddb/test/__init__.py
+#usr/lib/python2.7/bsddb/test/__init__.pyc
+#usr/lib/python2.7/bsddb/test/__init__.pyo
+#usr/lib/python2.7/bsddb/test/test_all.py
+#usr/lib/python2.7/bsddb/test/test_all.pyc
+#usr/lib/python2.7/bsddb/test/test_all.pyo
+#usr/lib/python2.7/bsddb/test/test_associate.py
+#usr/lib/python2.7/bsddb/test/test_associate.pyc
+#usr/lib/python2.7/bsddb/test/test_associate.pyo
+#usr/lib/python2.7/bsddb/test/test_basics.py
+#usr/lib/python2.7/bsddb/test/test_basics.pyc
+#usr/lib/python2.7/bsddb/test/test_basics.pyo
+#usr/lib/python2.7/bsddb/test/test_compare.py
+#usr/lib/python2.7/bsddb/test/test_compare.pyc
+#usr/lib/python2.7/bsddb/test/test_compare.pyo
+#usr/lib/python2.7/bsddb/test/test_compat.py
+#usr/lib/python2.7/bsddb/test/test_compat.pyc
+#usr/lib/python2.7/bsddb/test/test_compat.pyo
+#usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.py
+#usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.pyc
+#usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.pyo
+#usr/lib/python2.7/bsddb/test/test_db.py
+#usr/lib/python2.7/bsddb/test/test_db.pyc
+#usr/lib/python2.7/bsddb/test/test_db.pyo
+#usr/lib/python2.7/bsddb/test/test_dbenv.py
+#usr/lib/python2.7/bsddb/test/test_dbenv.pyc
+#usr/lib/python2.7/bsddb/test/test_dbenv.pyo
+#usr/lib/python2.7/bsddb/test/test_dbobj.py
+#usr/lib/python2.7/bsddb/test/test_dbobj.pyc
+#usr/lib/python2.7/bsddb/test/test_dbobj.pyo
+#usr/lib/python2.7/bsddb/test/test_dbshelve.py
+#usr/lib/python2.7/bsddb/test/test_dbshelve.pyc
+#usr/lib/python2.7/bsddb/test/test_dbshelve.pyo
+#usr/lib/python2.7/bsddb/test/test_dbtables.py
+#usr/lib/python2.7/bsddb/test/test_dbtables.pyc
+#usr/lib/python2.7/bsddb/test/test_dbtables.pyo
+#usr/lib/python2.7/bsddb/test/test_distributed_transactions.py
+#usr/lib/python2.7/bsddb/test/test_distributed_transactions.pyc
+#usr/lib/python2.7/bsddb/test/test_distributed_transactions.pyo
+#usr/lib/python2.7/bsddb/test/test_early_close.py
+#usr/lib/python2.7/bsddb/test/test_early_close.pyc
+#usr/lib/python2.7/bsddb/test/test_early_close.pyo
+#usr/lib/python2.7/bsddb/test/test_fileid.py
+#usr/lib/python2.7/bsddb/test/test_fileid.pyc
+#usr/lib/python2.7/bsddb/test/test_fileid.pyo
+#usr/lib/python2.7/bsddb/test/test_get_none.py
+#usr/lib/python2.7/bsddb/test/test_get_none.pyc
+#usr/lib/python2.7/bsddb/test/test_get_none.pyo
+#usr/lib/python2.7/bsddb/test/test_join.py
+#usr/lib/python2.7/bsddb/test/test_join.pyc
+#usr/lib/python2.7/bsddb/test/test_join.pyo
+#usr/lib/python2.7/bsddb/test/test_lock.py
+#usr/lib/python2.7/bsddb/test/test_lock.pyc
+#usr/lib/python2.7/bsddb/test/test_lock.pyo
+#usr/lib/python2.7/bsddb/test/test_misc.py
+#usr/lib/python2.7/bsddb/test/test_misc.pyc
+#usr/lib/python2.7/bsddb/test/test_misc.pyo
+#usr/lib/python2.7/bsddb/test/test_pickle.py
+#usr/lib/python2.7/bsddb/test/test_pickle.pyc
+#usr/lib/python2.7/bsddb/test/test_pickle.pyo
+#usr/lib/python2.7/bsddb/test/test_queue.py
+#usr/lib/python2.7/bsddb/test/test_queue.pyc
+#usr/lib/python2.7/bsddb/test/test_queue.pyo
+#usr/lib/python2.7/bsddb/test/test_recno.py
+#usr/lib/python2.7/bsddb/test/test_recno.pyc
+#usr/lib/python2.7/bsddb/test/test_recno.pyo
+#usr/lib/python2.7/bsddb/test/test_replication.py
+#usr/lib/python2.7/bsddb/test/test_replication.pyc
+#usr/lib/python2.7/bsddb/test/test_replication.pyo
+#usr/lib/python2.7/bsddb/test/test_sequence.py
+#usr/lib/python2.7/bsddb/test/test_sequence.pyc
+#usr/lib/python2.7/bsddb/test/test_sequence.pyo
+#usr/lib/python2.7/bsddb/test/test_thread.py
+#usr/lib/python2.7/bsddb/test/test_thread.pyc
+#usr/lib/python2.7/bsddb/test/test_thread.pyo
+#usr/lib/python2.7/cProfile.py
+usr/lib/python2.7/cProfile.pyc
+#usr/lib/python2.7/cProfile.pyo
+#usr/lib/python2.7/calendar.py
+usr/lib/python2.7/calendar.pyc
+#usr/lib/python2.7/calendar.pyo
+#usr/lib/python2.7/cgi.py
+usr/lib/python2.7/cgi.pyc
+#usr/lib/python2.7/cgi.pyo
+#usr/lib/python2.7/cgitb.py
+usr/lib/python2.7/cgitb.pyc
+#usr/lib/python2.7/cgitb.pyo
+#usr/lib/python2.7/chunk.py
+usr/lib/python2.7/chunk.pyc
+#usr/lib/python2.7/chunk.pyo
+#usr/lib/python2.7/cmd.py
+usr/lib/python2.7/cmd.pyc
+#usr/lib/python2.7/cmd.pyo
+#usr/lib/python2.7/code.py
+usr/lib/python2.7/code.pyc
+#usr/lib/python2.7/code.pyo
+#usr/lib/python2.7/codecs.py
+usr/lib/python2.7/codecs.pyc
+#usr/lib/python2.7/codecs.pyo
+#usr/lib/python2.7/codeop.py
+usr/lib/python2.7/codeop.pyc
+#usr/lib/python2.7/codeop.pyo
+#usr/lib/python2.7/collections.py
+usr/lib/python2.7/collections.pyc
+#usr/lib/python2.7/collections.pyo
+#usr/lib/python2.7/colorsys.py
+usr/lib/python2.7/colorsys.pyc
+#usr/lib/python2.7/colorsys.pyo
+#usr/lib/python2.7/commands.py
+usr/lib/python2.7/commands.pyc
+#usr/lib/python2.7/commands.pyo
+#usr/lib/python2.7/compileall.py
+usr/lib/python2.7/compileall.pyc
+#usr/lib/python2.7/compileall.pyo
+#usr/lib/python2.7/compiler
+#usr/lib/python2.7/compiler/__init__.py
+usr/lib/python2.7/compiler/__init__.pyc
+#usr/lib/python2.7/compiler/__init__.pyo
+#usr/lib/python2.7/compiler/ast.py
+usr/lib/python2.7/compiler/ast.pyc
+#usr/lib/python2.7/compiler/ast.pyo
+#usr/lib/python2.7/compiler/consts.py
+usr/lib/python2.7/compiler/consts.pyc
+#usr/lib/python2.7/compiler/consts.pyo
+#usr/lib/python2.7/compiler/future.py
+usr/lib/python2.7/compiler/future.pyc
+#usr/lib/python2.7/compiler/future.pyo
+#usr/lib/python2.7/compiler/misc.py
+usr/lib/python2.7/compiler/misc.pyc
+#usr/lib/python2.7/compiler/misc.pyo
+#usr/lib/python2.7/compiler/pyassem.py
+usr/lib/python2.7/compiler/pyassem.pyc
+#usr/lib/python2.7/compiler/pyassem.pyo
+#usr/lib/python2.7/compiler/pycodegen.py
+usr/lib/python2.7/compiler/pycodegen.pyc
+#usr/lib/python2.7/compiler/pycodegen.pyo
+#usr/lib/python2.7/compiler/symbols.py
+usr/lib/python2.7/compiler/symbols.pyc
+#usr/lib/python2.7/compiler/symbols.pyo
+#usr/lib/python2.7/compiler/syntax.py
+usr/lib/python2.7/compiler/syntax.pyc
+#usr/lib/python2.7/compiler/syntax.pyo
+#usr/lib/python2.7/compiler/transformer.py
+usr/lib/python2.7/compiler/transformer.pyc
+#usr/lib/python2.7/compiler/transformer.pyo
+#usr/lib/python2.7/compiler/visitor.py
+usr/lib/python2.7/compiler/visitor.pyc
+#usr/lib/python2.7/compiler/visitor.pyo
+usr/lib/python2.7/config
+usr/lib/python2.7/config/Makefile
+#usr/lib/python2.7/config/Setup
+#usr/lib/python2.7/config/Setup.config
+#usr/lib/python2.7/config/Setup.local
+#usr/lib/python2.7/config/config.c
+#usr/lib/python2.7/config/config.c.in
+#usr/lib/python2.7/config/install-sh
+#usr/lib/python2.7/config/libpython2.7.a
+#usr/lib/python2.7/config/makesetup
+#usr/lib/python2.7/config/python.o
+#usr/lib/python2.7/contextlib.py
+usr/lib/python2.7/contextlib.pyc
+#usr/lib/python2.7/contextlib.pyo
+#usr/lib/python2.7/cookielib.py
+usr/lib/python2.7/cookielib.pyc
+#usr/lib/python2.7/cookielib.pyo
+#usr/lib/python2.7/copy.py
+usr/lib/python2.7/copy.pyc
+#usr/lib/python2.7/copy.pyo
+#usr/lib/python2.7/copy_reg.py
+usr/lib/python2.7/copy_reg.pyc
+#usr/lib/python2.7/copy_reg.pyo
+#usr/lib/python2.7/csv.py
+usr/lib/python2.7/csv.pyc
+#usr/lib/python2.7/csv.pyo
+#usr/lib/python2.7/ctypes
+#usr/lib/python2.7/ctypes/__init__.py
+usr/lib/python2.7/ctypes/__init__.pyc
+#usr/lib/python2.7/ctypes/__init__.pyo
+#usr/lib/python2.7/ctypes/_endian.py
+usr/lib/python2.7/ctypes/_endian.pyc
+#usr/lib/python2.7/ctypes/_endian.pyo
+#usr/lib/python2.7/ctypes/macholib
+#usr/lib/python2.7/ctypes/macholib/README.ctypes
+#usr/lib/python2.7/ctypes/macholib/__init__.py
+usr/lib/python2.7/ctypes/macholib/__init__.pyc
+#usr/lib/python2.7/ctypes/macholib/__init__.pyo
+#usr/lib/python2.7/ctypes/macholib/dyld.py
+usr/lib/python2.7/ctypes/macholib/dyld.pyc
+#usr/lib/python2.7/ctypes/macholib/dyld.pyo
+#usr/lib/python2.7/ctypes/macholib/dylib.py
+usr/lib/python2.7/ctypes/macholib/dylib.pyc
+#usr/lib/python2.7/ctypes/macholib/dylib.pyo
+usr/lib/python2.7/ctypes/macholib/fetch_macholib
+usr/lib/python2.7/ctypes/macholib/fetch_macholib.bat
+#usr/lib/python2.7/ctypes/macholib/framework.py
+usr/lib/python2.7/ctypes/macholib/framework.pyc
+#usr/lib/python2.7/ctypes/macholib/framework.pyo
+#usr/lib/python2.7/ctypes/test
+#usr/lib/python2.7/ctypes/test/__init__.py
+#usr/lib/python2.7/ctypes/test/__init__.pyc
+#usr/lib/python2.7/ctypes/test/__init__.pyo
+#usr/lib/python2.7/ctypes/test/runtests.py
+#usr/lib/python2.7/ctypes/test/runtests.pyc
+#usr/lib/python2.7/ctypes/test/runtests.pyo
+#usr/lib/python2.7/ctypes/test/test_anon.py
+#usr/lib/python2.7/ctypes/test/test_anon.pyc
+#usr/lib/python2.7/ctypes/test/test_anon.pyo
+#usr/lib/python2.7/ctypes/test/test_array_in_pointer.py
+#usr/lib/python2.7/ctypes/test/test_array_in_pointer.pyc
+#usr/lib/python2.7/ctypes/test/test_array_in_pointer.pyo
+#usr/lib/python2.7/ctypes/test/test_arrays.py
+#usr/lib/python2.7/ctypes/test/test_arrays.pyc
+#usr/lib/python2.7/ctypes/test/test_arrays.pyo
+#usr/lib/python2.7/ctypes/test/test_as_parameter.py
+#usr/lib/python2.7/ctypes/test/test_as_parameter.pyc
+#usr/lib/python2.7/ctypes/test/test_as_parameter.pyo
+#usr/lib/python2.7/ctypes/test/test_bitfields.py
+#usr/lib/python2.7/ctypes/test/test_bitfields.pyc
+#usr/lib/python2.7/ctypes/test/test_bitfields.pyo
+#usr/lib/python2.7/ctypes/test/test_buffers.py
+#usr/lib/python2.7/ctypes/test/test_buffers.pyc
+#usr/lib/python2.7/ctypes/test/test_buffers.pyo
+#usr/lib/python2.7/ctypes/test/test_byteswap.py
+#usr/lib/python2.7/ctypes/test/test_byteswap.pyc
+#usr/lib/python2.7/ctypes/test/test_byteswap.pyo
+#usr/lib/python2.7/ctypes/test/test_callbacks.py
+#usr/lib/python2.7/ctypes/test/test_callbacks.pyc
+#usr/lib/python2.7/ctypes/test/test_callbacks.pyo
+#usr/lib/python2.7/ctypes/test/test_cast.py
+#usr/lib/python2.7/ctypes/test/test_cast.pyc
+#usr/lib/python2.7/ctypes/test/test_cast.pyo
+#usr/lib/python2.7/ctypes/test/test_cfuncs.py
+#usr/lib/python2.7/ctypes/test/test_cfuncs.pyc
+#usr/lib/python2.7/ctypes/test/test_cfuncs.pyo
+#usr/lib/python2.7/ctypes/test/test_checkretval.py
+#usr/lib/python2.7/ctypes/test/test_checkretval.pyc
+#usr/lib/python2.7/ctypes/test/test_checkretval.pyo
+#usr/lib/python2.7/ctypes/test/test_delattr.py
+#usr/lib/python2.7/ctypes/test/test_delattr.pyc
+#usr/lib/python2.7/ctypes/test/test_delattr.pyo
+#usr/lib/python2.7/ctypes/test/test_errno.py
+#usr/lib/python2.7/ctypes/test/test_errno.pyc
+#usr/lib/python2.7/ctypes/test/test_errno.pyo
+#usr/lib/python2.7/ctypes/test/test_find.py
+#usr/lib/python2.7/ctypes/test/test_find.pyc
+#usr/lib/python2.7/ctypes/test/test_find.pyo
+#usr/lib/python2.7/ctypes/test/test_frombuffer.py
+#usr/lib/python2.7/ctypes/test/test_frombuffer.pyc
+#usr/lib/python2.7/ctypes/test/test_frombuffer.pyo
+#usr/lib/python2.7/ctypes/test/test_funcptr.py
+#usr/lib/python2.7/ctypes/test/test_funcptr.pyc
+#usr/lib/python2.7/ctypes/test/test_funcptr.pyo
+#usr/lib/python2.7/ctypes/test/test_functions.py
+#usr/lib/python2.7/ctypes/test/test_functions.pyc
+#usr/lib/python2.7/ctypes/test/test_functions.pyo
+#usr/lib/python2.7/ctypes/test/test_incomplete.py
+#usr/lib/python2.7/ctypes/test/test_incomplete.pyc
+#usr/lib/python2.7/ctypes/test/test_incomplete.pyo
+#usr/lib/python2.7/ctypes/test/test_init.py
+#usr/lib/python2.7/ctypes/test/test_init.pyc
+#usr/lib/python2.7/ctypes/test/test_init.pyo
+#usr/lib/python2.7/ctypes/test/test_internals.py
+#usr/lib/python2.7/ctypes/test/test_internals.pyc
+#usr/lib/python2.7/ctypes/test/test_internals.pyo
+#usr/lib/python2.7/ctypes/test/test_keeprefs.py
+#usr/lib/python2.7/ctypes/test/test_keeprefs.pyc
+#usr/lib/python2.7/ctypes/test/test_keeprefs.pyo
+#usr/lib/python2.7/ctypes/test/test_libc.py
+#usr/lib/python2.7/ctypes/test/test_libc.pyc
+#usr/lib/python2.7/ctypes/test/test_libc.pyo
+#usr/lib/python2.7/ctypes/test/test_loading.py
+#usr/lib/python2.7/ctypes/test/test_loading.pyc
+#usr/lib/python2.7/ctypes/test/test_loading.pyo
+#usr/lib/python2.7/ctypes/test/test_macholib.py
+#usr/lib/python2.7/ctypes/test/test_macholib.pyc
+#usr/lib/python2.7/ctypes/test/test_macholib.pyo
+#usr/lib/python2.7/ctypes/test/test_memfunctions.py
+#usr/lib/python2.7/ctypes/test/test_memfunctions.pyc
+#usr/lib/python2.7/ctypes/test/test_memfunctions.pyo
+#usr/lib/python2.7/ctypes/test/test_numbers.py
+#usr/lib/python2.7/ctypes/test/test_numbers.pyc
+#usr/lib/python2.7/ctypes/test/test_numbers.pyo
+#usr/lib/python2.7/ctypes/test/test_objects.py
+#usr/lib/python2.7/ctypes/test/test_objects.pyc
+#usr/lib/python2.7/ctypes/test/test_objects.pyo
+#usr/lib/python2.7/ctypes/test/test_parameters.py
+#usr/lib/python2.7/ctypes/test/test_parameters.pyc
+#usr/lib/python2.7/ctypes/test/test_parameters.pyo
+#usr/lib/python2.7/ctypes/test/test_pep3118.py
+#usr/lib/python2.7/ctypes/test/test_pep3118.pyc
+#usr/lib/python2.7/ctypes/test/test_pep3118.pyo
+#usr/lib/python2.7/ctypes/test/test_pickling.py
+#usr/lib/python2.7/ctypes/test/test_pickling.pyc
+#usr/lib/python2.7/ctypes/test/test_pickling.pyo
+#usr/lib/python2.7/ctypes/test/test_pointers.py
+#usr/lib/python2.7/ctypes/test/test_pointers.pyc
+#usr/lib/python2.7/ctypes/test/test_pointers.pyo
+#usr/lib/python2.7/ctypes/test/test_prototypes.py
+#usr/lib/python2.7/ctypes/test/test_prototypes.pyc
+#usr/lib/python2.7/ctypes/test/test_prototypes.pyo
+#usr/lib/python2.7/ctypes/test/test_python_api.py
+#usr/lib/python2.7/ctypes/test/test_python_api.pyc
+#usr/lib/python2.7/ctypes/test/test_python_api.pyo
+#usr/lib/python2.7/ctypes/test/test_random_things.py
+#usr/lib/python2.7/ctypes/test/test_random_things.pyc
+#usr/lib/python2.7/ctypes/test/test_random_things.pyo
+#usr/lib/python2.7/ctypes/test/test_refcounts.py
+#usr/lib/python2.7/ctypes/test/test_refcounts.pyc
+#usr/lib/python2.7/ctypes/test/test_refcounts.pyo
+#usr/lib/python2.7/ctypes/test/test_repr.py
+#usr/lib/python2.7/ctypes/test/test_repr.pyc
+#usr/lib/python2.7/ctypes/test/test_repr.pyo
+#usr/lib/python2.7/ctypes/test/test_returnfuncptrs.py
+#usr/lib/python2.7/ctypes/test/test_returnfuncptrs.pyc
+#usr/lib/python2.7/ctypes/test/test_returnfuncptrs.pyo
+#usr/lib/python2.7/ctypes/test/test_simplesubclasses.py
+#usr/lib/python2.7/ctypes/test/test_simplesubclasses.pyc
+#usr/lib/python2.7/ctypes/test/test_simplesubclasses.pyo
+#usr/lib/python2.7/ctypes/test/test_sizes.py
+#usr/lib/python2.7/ctypes/test/test_sizes.pyc
+#usr/lib/python2.7/ctypes/test/test_sizes.pyo
+#usr/lib/python2.7/ctypes/test/test_slicing.py
+#usr/lib/python2.7/ctypes/test/test_slicing.pyc
+#usr/lib/python2.7/ctypes/test/test_slicing.pyo
+#usr/lib/python2.7/ctypes/test/test_stringptr.py
+#usr/lib/python2.7/ctypes/test/test_stringptr.pyc
+#usr/lib/python2.7/ctypes/test/test_stringptr.pyo
+#usr/lib/python2.7/ctypes/test/test_strings.py
+#usr/lib/python2.7/ctypes/test/test_strings.pyc
+#usr/lib/python2.7/ctypes/test/test_strings.pyo
+#usr/lib/python2.7/ctypes/test/test_struct_fields.py
+#usr/lib/python2.7/ctypes/test/test_struct_fields.pyc
+#usr/lib/python2.7/ctypes/test/test_struct_fields.pyo
+#usr/lib/python2.7/ctypes/test/test_structures.py
+#usr/lib/python2.7/ctypes/test/test_structures.pyc
+#usr/lib/python2.7/ctypes/test/test_structures.pyo
+#usr/lib/python2.7/ctypes/test/test_unaligned_structures.py
+#usr/lib/python2.7/ctypes/test/test_unaligned_structures.pyc
+#usr/lib/python2.7/ctypes/test/test_unaligned_structures.pyo
+#usr/lib/python2.7/ctypes/test/test_unicode.py
+#usr/lib/python2.7/ctypes/test/test_unicode.pyc
+#usr/lib/python2.7/ctypes/test/test_unicode.pyo
+#usr/lib/python2.7/ctypes/test/test_values.py
+#usr/lib/python2.7/ctypes/test/test_values.pyc
+#usr/lib/python2.7/ctypes/test/test_values.pyo
+#usr/lib/python2.7/ctypes/test/test_varsize_struct.py
+#usr/lib/python2.7/ctypes/test/test_varsize_struct.pyc
+#usr/lib/python2.7/ctypes/test/test_varsize_struct.pyo
+#usr/lib/python2.7/ctypes/test/test_win32.py
+#usr/lib/python2.7/ctypes/test/test_win32.pyc
+#usr/lib/python2.7/ctypes/test/test_win32.pyo
+#usr/lib/python2.7/ctypes/test/test_wintypes.py
+#usr/lib/python2.7/ctypes/test/test_wintypes.pyc
+#usr/lib/python2.7/ctypes/test/test_wintypes.pyo
+#usr/lib/python2.7/ctypes/util.py
+usr/lib/python2.7/ctypes/util.pyc
+#usr/lib/python2.7/ctypes/util.pyo
+#usr/lib/python2.7/ctypes/wintypes.py
+usr/lib/python2.7/ctypes/wintypes.pyc
+#usr/lib/python2.7/ctypes/wintypes.pyo
+#usr/lib/python2.7/curses
+#usr/lib/python2.7/curses/__init__.py
+usr/lib/python2.7/curses/__init__.pyc
+#usr/lib/python2.7/curses/__init__.pyo
+#usr/lib/python2.7/curses/ascii.py
+usr/lib/python2.7/curses/ascii.pyc
+#usr/lib/python2.7/curses/ascii.pyo
+#usr/lib/python2.7/curses/has_key.py
+usr/lib/python2.7/curses/has_key.pyc
+#usr/lib/python2.7/curses/has_key.pyo
+#usr/lib/python2.7/curses/panel.py
+usr/lib/python2.7/curses/panel.pyc
+#usr/lib/python2.7/curses/panel.pyo
+#usr/lib/python2.7/curses/textpad.py
+usr/lib/python2.7/curses/textpad.pyc
+#usr/lib/python2.7/curses/textpad.pyo
+#usr/lib/python2.7/curses/wrapper.py
+usr/lib/python2.7/curses/wrapper.pyc
+#usr/lib/python2.7/curses/wrapper.pyo
+#usr/lib/python2.7/dbhash.py
+usr/lib/python2.7/dbhash.pyc
+#usr/lib/python2.7/dbhash.pyo
+#usr/lib/python2.7/decimal.py
+usr/lib/python2.7/decimal.pyc
+#usr/lib/python2.7/decimal.pyo
+#usr/lib/python2.7/difflib.py
+usr/lib/python2.7/difflib.pyc
+#usr/lib/python2.7/difflib.pyo
+#usr/lib/python2.7/dircache.py
+usr/lib/python2.7/dircache.pyc
+#usr/lib/python2.7/dircache.pyo
+#usr/lib/python2.7/dis.py
+usr/lib/python2.7/dis.pyc
+#usr/lib/python2.7/dis.pyo
+#usr/lib/python2.7/distutils
+#usr/lib/python2.7/distutils/README
+#usr/lib/python2.7/distutils/__init__.py
+#usr/lib/python2.7/distutils/__init__.pyc
+#usr/lib/python2.7/distutils/__init__.pyo
+#usr/lib/python2.7/distutils/archive_util.py
+#usr/lib/python2.7/distutils/archive_util.pyc
+#usr/lib/python2.7/distutils/archive_util.pyo
+#usr/lib/python2.7/distutils/bcppcompiler.py
+#usr/lib/python2.7/distutils/bcppcompiler.pyc
+#usr/lib/python2.7/distutils/bcppcompiler.pyo
+#usr/lib/python2.7/distutils/ccompiler.py
+#usr/lib/python2.7/distutils/ccompiler.pyc
+#usr/lib/python2.7/distutils/ccompiler.pyo
+#usr/lib/python2.7/distutils/cmd.py
+#usr/lib/python2.7/distutils/cmd.pyc
+#usr/lib/python2.7/distutils/cmd.pyo
+#usr/lib/python2.7/distutils/command
+#usr/lib/python2.7/distutils/command/__init__.py
+#usr/lib/python2.7/distutils/command/__init__.pyc
+#usr/lib/python2.7/distutils/command/__init__.pyo
+#usr/lib/python2.7/distutils/command/bdist.py
+#usr/lib/python2.7/distutils/command/bdist.pyc
+#usr/lib/python2.7/distutils/command/bdist.pyo
+#usr/lib/python2.7/distutils/command/bdist_dumb.py
+#usr/lib/python2.7/distutils/command/bdist_dumb.pyc
+#usr/lib/python2.7/distutils/command/bdist_dumb.pyo
+#usr/lib/python2.7/distutils/command/bdist_msi.py
+#usr/lib/python2.7/distutils/command/bdist_msi.pyc
+#usr/lib/python2.7/distutils/command/bdist_msi.pyo
+#usr/lib/python2.7/distutils/command/bdist_rpm.py
+#usr/lib/python2.7/distutils/command/bdist_rpm.pyc
+#usr/lib/python2.7/distutils/command/bdist_rpm.pyo
+#usr/lib/python2.7/distutils/command/bdist_wininst.py
+#usr/lib/python2.7/distutils/command/bdist_wininst.pyc
+#usr/lib/python2.7/distutils/command/bdist_wininst.pyo
+#usr/lib/python2.7/distutils/command/build.py
+#usr/lib/python2.7/distutils/command/build.pyc
+#usr/lib/python2.7/distutils/command/build.pyo
+#usr/lib/python2.7/distutils/command/build_clib.py
+#usr/lib/python2.7/distutils/command/build_clib.pyc
+#usr/lib/python2.7/distutils/command/build_clib.pyo
+#usr/lib/python2.7/distutils/command/build_ext.py
+#usr/lib/python2.7/distutils/command/build_ext.pyc
+#usr/lib/python2.7/distutils/command/build_ext.pyo
+#usr/lib/python2.7/distutils/command/build_py.py
+#usr/lib/python2.7/distutils/command/build_py.pyc
+#usr/lib/python2.7/distutils/command/build_py.pyo
+#usr/lib/python2.7/distutils/command/build_scripts.py
+#usr/lib/python2.7/distutils/command/build_scripts.pyc
+#usr/lib/python2.7/distutils/command/build_scripts.pyo
+#usr/lib/python2.7/distutils/command/check.py
+#usr/lib/python2.7/distutils/command/check.pyc
+#usr/lib/python2.7/distutils/command/check.pyo
+#usr/lib/python2.7/distutils/command/clean.py
+#usr/lib/python2.7/distutils/command/clean.pyc
+#usr/lib/python2.7/distutils/command/clean.pyo
+#usr/lib/python2.7/distutils/command/command_template
+#usr/lib/python2.7/distutils/command/config.py
+#usr/lib/python2.7/distutils/command/config.pyc
+#usr/lib/python2.7/distutils/command/config.pyo
+#usr/lib/python2.7/distutils/command/install.py
+#usr/lib/python2.7/distutils/command/install.pyc
+#usr/lib/python2.7/distutils/command/install.pyo
+#usr/lib/python2.7/distutils/command/install_data.py
+#usr/lib/python2.7/distutils/command/install_data.pyc
+#usr/lib/python2.7/distutils/command/install_data.pyo
+#usr/lib/python2.7/distutils/command/install_egg_info.py
+#usr/lib/python2.7/distutils/command/install_egg_info.pyc
+#usr/lib/python2.7/distutils/command/install_egg_info.pyo
+#usr/lib/python2.7/distutils/command/install_headers.py
+#usr/lib/python2.7/distutils/command/install_headers.pyc
+#usr/lib/python2.7/distutils/command/install_headers.pyo
+#usr/lib/python2.7/distutils/command/install_lib.py
+#usr/lib/python2.7/distutils/command/install_lib.pyc
+#usr/lib/python2.7/distutils/command/install_lib.pyo
+#usr/lib/python2.7/distutils/command/install_scripts.py
+#usr/lib/python2.7/distutils/command/install_scripts.pyc
+#usr/lib/python2.7/distutils/command/install_scripts.pyo
+#usr/lib/python2.7/distutils/command/register.py
+#usr/lib/python2.7/distutils/command/register.pyc
+#usr/lib/python2.7/distutils/command/register.pyo
+#usr/lib/python2.7/distutils/command/sdist.py
+#usr/lib/python2.7/distutils/command/sdist.pyc
+#usr/lib/python2.7/distutils/command/sdist.pyo
+#usr/lib/python2.7/distutils/command/upload.py
+#usr/lib/python2.7/distutils/command/upload.pyc
+#usr/lib/python2.7/distutils/command/upload.pyo
+#usr/lib/python2.7/distutils/command/wininst-6.0.exe
+#usr/lib/python2.7/distutils/command/wininst-7.1.exe
+#usr/lib/python2.7/distutils/command/wininst-8.0.exe
+#usr/lib/python2.7/distutils/command/wininst-9.0-amd64.exe
+#usr/lib/python2.7/distutils/command/wininst-9.0.exe
+#usr/lib/python2.7/distutils/config.py
+#usr/lib/python2.7/distutils/config.pyc
+#usr/lib/python2.7/distutils/config.pyo
+#usr/lib/python2.7/distutils/core.py
+#usr/lib/python2.7/distutils/core.pyc
+#usr/lib/python2.7/distutils/core.pyo
+#usr/lib/python2.7/distutils/cygwinccompiler.py
+#usr/lib/python2.7/distutils/cygwinccompiler.pyc
+#usr/lib/python2.7/distutils/cygwinccompiler.pyo
+#usr/lib/python2.7/distutils/debug.py
+#usr/lib/python2.7/distutils/debug.pyc
+#usr/lib/python2.7/distutils/debug.pyo
+#usr/lib/python2.7/distutils/dep_util.py
+#usr/lib/python2.7/distutils/dep_util.pyc
+#usr/lib/python2.7/distutils/dep_util.pyo
+#usr/lib/python2.7/distutils/dir_util.py
+#usr/lib/python2.7/distutils/dir_util.pyc
+#usr/lib/python2.7/distutils/dir_util.pyo
+#usr/lib/python2.7/distutils/dist.py
+#usr/lib/python2.7/distutils/dist.pyc
+#usr/lib/python2.7/distutils/dist.pyo
+#usr/lib/python2.7/distutils/emxccompiler.py
+#usr/lib/python2.7/distutils/emxccompiler.pyc
+#usr/lib/python2.7/distutils/emxccompiler.pyo
+#usr/lib/python2.7/distutils/errors.py
+#usr/lib/python2.7/distutils/errors.pyc
+#usr/lib/python2.7/distutils/errors.pyo
+#usr/lib/python2.7/distutils/extension.py
+#usr/lib/python2.7/distutils/extension.pyc
+#usr/lib/python2.7/distutils/extension.pyo
+#usr/lib/python2.7/distutils/fancy_getopt.py
+#usr/lib/python2.7/distutils/fancy_getopt.pyc
+#usr/lib/python2.7/distutils/fancy_getopt.pyo
+#usr/lib/python2.7/distutils/file_util.py
+#usr/lib/python2.7/distutils/file_util.pyc
+#usr/lib/python2.7/distutils/file_util.pyo
+#usr/lib/python2.7/distutils/filelist.py
+#usr/lib/python2.7/distutils/filelist.pyc
+#usr/lib/python2.7/distutils/filelist.pyo
+#usr/lib/python2.7/distutils/log.py
+#usr/lib/python2.7/distutils/log.pyc
+#usr/lib/python2.7/distutils/log.pyo
+#usr/lib/python2.7/distutils/msvc9compiler.py
+#usr/lib/python2.7/distutils/msvc9compiler.pyc
+#usr/lib/python2.7/distutils/msvc9compiler.pyo
+#usr/lib/python2.7/distutils/msvccompiler.py
+#usr/lib/python2.7/distutils/msvccompiler.pyc
+#usr/lib/python2.7/distutils/msvccompiler.pyo
+#usr/lib/python2.7/distutils/spawn.py
+#usr/lib/python2.7/distutils/spawn.pyc
+#usr/lib/python2.7/distutils/spawn.pyo
+#usr/lib/python2.7/distutils/sysconfig.py
+#usr/lib/python2.7/distutils/sysconfig.pyc
+#usr/lib/python2.7/distutils/sysconfig.pyo
+#usr/lib/python2.7/distutils/tests
+#usr/lib/python2.7/distutils/tests/Setup.sample
+#usr/lib/python2.7/distutils/tests/__init__.py
+#usr/lib/python2.7/distutils/tests/__init__.pyc
+#usr/lib/python2.7/distutils/tests/__init__.pyo
+#usr/lib/python2.7/distutils/tests/setuptools_build_ext.py
+#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyc
+#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyo
+#usr/lib/python2.7/distutils/tests/setuptools_extension.py
+#usr/lib/python2.7/distutils/tests/setuptools_extension.pyc
+#usr/lib/python2.7/distutils/tests/setuptools_extension.pyo
+#usr/lib/python2.7/distutils/tests/support.py
+#usr/lib/python2.7/distutils/tests/support.pyc
+#usr/lib/python2.7/distutils/tests/support.pyo
+#usr/lib/python2.7/distutils/tests/test_archive_util.py
+#usr/lib/python2.7/distutils/tests/test_archive_util.pyc
+#usr/lib/python2.7/distutils/tests/test_archive_util.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist.py
+#usr/lib/python2.7/distutils/tests/test_bdist.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_dumb.py
+#usr/lib/python2.7/distutils/tests/test_bdist_dumb.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_dumb.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_msi.py
+#usr/lib/python2.7/distutils/tests/test_bdist_msi.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_msi.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_rpm.py
+#usr/lib/python2.7/distutils/tests/test_bdist_rpm.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_rpm.pyo
+#usr/lib/python2.7/distutils/tests/test_bdist_wininst.py
+#usr/lib/python2.7/distutils/tests/test_bdist_wininst.pyc
+#usr/lib/python2.7/distutils/tests/test_bdist_wininst.pyo
+#usr/lib/python2.7/distutils/tests/test_build.py
+#usr/lib/python2.7/distutils/tests/test_build.pyc
+#usr/lib/python2.7/distutils/tests/test_build.pyo
+#usr/lib/python2.7/distutils/tests/test_build_clib.py
+#usr/lib/python2.7/distutils/tests/test_build_clib.pyc
+#usr/lib/python2.7/distutils/tests/test_build_clib.pyo
+#usr/lib/python2.7/distutils/tests/test_build_ext.py
+#usr/lib/python2.7/distutils/tests/test_build_ext.pyc
+#usr/lib/python2.7/distutils/tests/test_build_ext.pyo
+#usr/lib/python2.7/distutils/tests/test_build_py.py
+#usr/lib/python2.7/distutils/tests/test_build_py.pyc
+#usr/lib/python2.7/distutils/tests/test_build_py.pyo
+#usr/lib/python2.7/distutils/tests/test_build_scripts.py
+#usr/lib/python2.7/distutils/tests/test_build_scripts.pyc
+#usr/lib/python2.7/distutils/tests/test_build_scripts.pyo
+#usr/lib/python2.7/distutils/tests/test_ccompiler.py
+#usr/lib/python2.7/distutils/tests/test_ccompiler.pyc
+#usr/lib/python2.7/distutils/tests/test_ccompiler.pyo
+#usr/lib/python2.7/distutils/tests/test_check.py
+#usr/lib/python2.7/distutils/tests/test_check.pyc
+#usr/lib/python2.7/distutils/tests/test_check.pyo
+#usr/lib/python2.7/distutils/tests/test_clean.py
+#usr/lib/python2.7/distutils/tests/test_clean.pyc
+#usr/lib/python2.7/distutils/tests/test_clean.pyo
+#usr/lib/python2.7/distutils/tests/test_cmd.py
+#usr/lib/python2.7/distutils/tests/test_cmd.pyc
+#usr/lib/python2.7/distutils/tests/test_cmd.pyo
+#usr/lib/python2.7/distutils/tests/test_config.py
+#usr/lib/python2.7/distutils/tests/test_config.pyc
+#usr/lib/python2.7/distutils/tests/test_config.pyo
+#usr/lib/python2.7/distutils/tests/test_config_cmd.py
+#usr/lib/python2.7/distutils/tests/test_config_cmd.pyc
+#usr/lib/python2.7/distutils/tests/test_config_cmd.pyo
+#usr/lib/python2.7/distutils/tests/test_core.py
+#usr/lib/python2.7/distutils/tests/test_core.pyc
+#usr/lib/python2.7/distutils/tests/test_core.pyo
+#usr/lib/python2.7/distutils/tests/test_dep_util.py
+#usr/lib/python2.7/distutils/tests/test_dep_util.pyc
+#usr/lib/python2.7/distutils/tests/test_dep_util.pyo
+#usr/lib/python2.7/distutils/tests/test_dir_util.py
+#usr/lib/python2.7/distutils/tests/test_dir_util.pyc
+#usr/lib/python2.7/distutils/tests/test_dir_util.pyo
+#usr/lib/python2.7/distutils/tests/test_dist.py
+#usr/lib/python2.7/distutils/tests/test_dist.pyc
+#usr/lib/python2.7/distutils/tests/test_dist.pyo
+#usr/lib/python2.7/distutils/tests/test_file_util.py
+#usr/lib/python2.7/distutils/tests/test_file_util.pyc
+#usr/lib/python2.7/distutils/tests/test_file_util.pyo
+#usr/lib/python2.7/distutils/tests/test_filelist.py
+#usr/lib/python2.7/distutils/tests/test_filelist.pyc
+#usr/lib/python2.7/distutils/tests/test_filelist.pyo
+#usr/lib/python2.7/distutils/tests/test_install.py
+#usr/lib/python2.7/distutils/tests/test_install.pyc
+#usr/lib/python2.7/distutils/tests/test_install.pyo
+#usr/lib/python2.7/distutils/tests/test_install_data.py
+#usr/lib/python2.7/distutils/tests/test_install_data.pyc
+#usr/lib/python2.7/distutils/tests/test_install_data.pyo
+#usr/lib/python2.7/distutils/tests/test_install_headers.py
+#usr/lib/python2.7/distutils/tests/test_install_headers.pyc
+#usr/lib/python2.7/distutils/tests/test_install_headers.pyo
+#usr/lib/python2.7/distutils/tests/test_install_lib.py
+#usr/lib/python2.7/distutils/tests/test_install_lib.pyc
+#usr/lib/python2.7/distutils/tests/test_install_lib.pyo
+#usr/lib/python2.7/distutils/tests/test_install_scripts.py
+#usr/lib/python2.7/distutils/tests/test_install_scripts.pyc
+#usr/lib/python2.7/distutils/tests/test_install_scripts.pyo
+#usr/lib/python2.7/distutils/tests/test_msvc9compiler.py
+#usr/lib/python2.7/distutils/tests/test_msvc9compiler.pyc
+#usr/lib/python2.7/distutils/tests/test_msvc9compiler.pyo
+#usr/lib/python2.7/distutils/tests/test_register.py
+#usr/lib/python2.7/distutils/tests/test_register.pyc
+#usr/lib/python2.7/distutils/tests/test_register.pyo
+#usr/lib/python2.7/distutils/tests/test_sdist.py
+#usr/lib/python2.7/distutils/tests/test_sdist.pyc
+#usr/lib/python2.7/distutils/tests/test_sdist.pyo
+#usr/lib/python2.7/distutils/tests/test_spawn.py
+#usr/lib/python2.7/distutils/tests/test_spawn.pyc
+#usr/lib/python2.7/distutils/tests/test_spawn.pyo
+#usr/lib/python2.7/distutils/tests/test_sysconfig.py
+#usr/lib/python2.7/distutils/tests/test_sysconfig.pyc
+#usr/lib/python2.7/distutils/tests/test_sysconfig.pyo
+#usr/lib/python2.7/distutils/tests/test_text_file.py
+#usr/lib/python2.7/distutils/tests/test_text_file.pyc
+#usr/lib/python2.7/distutils/tests/test_text_file.pyo
+#usr/lib/python2.7/distutils/tests/test_unixccompiler.py
+#usr/lib/python2.7/distutils/tests/test_unixccompiler.pyc
+#usr/lib/python2.7/distutils/tests/test_unixccompiler.pyo
+#usr/lib/python2.7/distutils/tests/test_upload.py
+#usr/lib/python2.7/distutils/tests/test_upload.pyc
+#usr/lib/python2.7/distutils/tests/test_upload.pyo
+#usr/lib/python2.7/distutils/tests/test_util.py
+#usr/lib/python2.7/distutils/tests/test_util.pyc
+#usr/lib/python2.7/distutils/tests/test_util.pyo
+#usr/lib/python2.7/distutils/tests/test_version.py
+#usr/lib/python2.7/distutils/tests/test_version.pyc
+#usr/lib/python2.7/distutils/tests/test_version.pyo
+#usr/lib/python2.7/distutils/tests/test_versionpredicate.py
+#usr/lib/python2.7/distutils/tests/test_versionpredicate.pyc
+#usr/lib/python2.7/distutils/tests/test_versionpredicate.pyo
+#usr/lib/python2.7/distutils/tests/xxmodule.c
+#usr/lib/python2.7/distutils/text_file.py
+#usr/lib/python2.7/distutils/text_file.pyc
+#usr/lib/python2.7/distutils/text_file.pyo
+#usr/lib/python2.7/distutils/unixccompiler.py
+#usr/lib/python2.7/distutils/unixccompiler.pyc
+#usr/lib/python2.7/distutils/unixccompiler.pyo
+#usr/lib/python2.7/distutils/util.py
+#usr/lib/python2.7/distutils/util.pyc
+#usr/lib/python2.7/distutils/util.pyo
+#usr/lib/python2.7/distutils/version.py
+#usr/lib/python2.7/distutils/version.pyc
+#usr/lib/python2.7/distutils/version.pyo
+#usr/lib/python2.7/distutils/versionpredicate.py
+#usr/lib/python2.7/distutils/versionpredicate.pyc
+#usr/lib/python2.7/distutils/versionpredicate.pyo
+#usr/lib/python2.7/doctest.py
+usr/lib/python2.7/doctest.pyc
+#usr/lib/python2.7/doctest.pyo
+#usr/lib/python2.7/dumbdbm.py
+usr/lib/python2.7/dumbdbm.pyc
+#usr/lib/python2.7/dumbdbm.pyo
+#usr/lib/python2.7/dummy_thread.py
+usr/lib/python2.7/dummy_thread.pyc
+#usr/lib/python2.7/dummy_thread.pyo
+#usr/lib/python2.7/dummy_threading.py
+usr/lib/python2.7/dummy_threading.pyc
+#usr/lib/python2.7/dummy_threading.pyo
+#usr/lib/python2.7/email
+#usr/lib/python2.7/email/__init__.py
+usr/lib/python2.7/email/__init__.pyc
+#usr/lib/python2.7/email/__init__.pyo
+#usr/lib/python2.7/email/_parseaddr.py
+usr/lib/python2.7/email/_parseaddr.pyc
+#usr/lib/python2.7/email/_parseaddr.pyo
+#usr/lib/python2.7/email/base64mime.py
+usr/lib/python2.7/email/base64mime.pyc
+#usr/lib/python2.7/email/base64mime.pyo
+#usr/lib/python2.7/email/charset.py
+usr/lib/python2.7/email/charset.pyc
+#usr/lib/python2.7/email/charset.pyo
+#usr/lib/python2.7/email/encoders.py
+usr/lib/python2.7/email/encoders.pyc
+#usr/lib/python2.7/email/encoders.pyo
+#usr/lib/python2.7/email/errors.py
+usr/lib/python2.7/email/errors.pyc
+#usr/lib/python2.7/email/errors.pyo
+#usr/lib/python2.7/email/feedparser.py
+usr/lib/python2.7/email/feedparser.pyc
+#usr/lib/python2.7/email/feedparser.pyo
+#usr/lib/python2.7/email/generator.py
+usr/lib/python2.7/email/generator.pyc
+#usr/lib/python2.7/email/generator.pyo
+#usr/lib/python2.7/email/header.py
+usr/lib/python2.7/email/header.pyc
+#usr/lib/python2.7/email/header.pyo
+#usr/lib/python2.7/email/iterators.py
+usr/lib/python2.7/email/iterators.pyc
+#usr/lib/python2.7/email/iterators.pyo
+#usr/lib/python2.7/email/message.py
+usr/lib/python2.7/email/message.pyc
+#usr/lib/python2.7/email/message.pyo
+#usr/lib/python2.7/email/mime
+#usr/lib/python2.7/email/mime/__init__.py
+usr/lib/python2.7/email/mime/__init__.pyc
+#usr/lib/python2.7/email/mime/__init__.pyo
+#usr/lib/python2.7/email/mime/application.py
+usr/lib/python2.7/email/mime/application.pyc
+#usr/lib/python2.7/email/mime/application.pyo
+#usr/lib/python2.7/email/mime/audio.py
+usr/lib/python2.7/email/mime/audio.pyc
+#usr/lib/python2.7/email/mime/audio.pyo
+#usr/lib/python2.7/email/mime/base.py
+usr/lib/python2.7/email/mime/base.pyc
+#usr/lib/python2.7/email/mime/base.pyo
+#usr/lib/python2.7/email/mime/image.py
+usr/lib/python2.7/email/mime/image.pyc
+#usr/lib/python2.7/email/mime/image.pyo
+#usr/lib/python2.7/email/mime/message.py
+usr/lib/python2.7/email/mime/message.pyc
+#usr/lib/python2.7/email/mime/message.pyo
+#usr/lib/python2.7/email/mime/multipart.py
+usr/lib/python2.7/email/mime/multipart.pyc
+#usr/lib/python2.7/email/mime/multipart.pyo
+#usr/lib/python2.7/email/mime/nonmultipart.py
+usr/lib/python2.7/email/mime/nonmultipart.pyc
+#usr/lib/python2.7/email/mime/nonmultipart.pyo
+#usr/lib/python2.7/email/mime/text.py
+usr/lib/python2.7/email/mime/text.pyc
+#usr/lib/python2.7/email/mime/text.pyo
+#usr/lib/python2.7/email/parser.py
+usr/lib/python2.7/email/parser.pyc
+#usr/lib/python2.7/email/parser.pyo
+#usr/lib/python2.7/email/quoprimime.py
+usr/lib/python2.7/email/quoprimime.pyc
+#usr/lib/python2.7/email/quoprimime.pyo
+#usr/lib/python2.7/email/test
+#usr/lib/python2.7/email/test/__init__.py
+#usr/lib/python2.7/email/test/__init__.pyc
+#usr/lib/python2.7/email/test/__init__.pyo
+#usr/lib/python2.7/email/test/data
+#usr/lib/python2.7/email/test/data/PyBanner048.gif
+#usr/lib/python2.7/email/test/data/audiotest.au
+#usr/lib/python2.7/email/test/data/msg_01.txt
+#usr/lib/python2.7/email/test/data/msg_02.txt
+#usr/lib/python2.7/email/test/data/msg_03.txt
+#usr/lib/python2.7/email/test/data/msg_04.txt
+#usr/lib/python2.7/email/test/data/msg_05.txt
+#usr/lib/python2.7/email/test/data/msg_06.txt
+#usr/lib/python2.7/email/test/data/msg_07.txt
+#usr/lib/python2.7/email/test/data/msg_08.txt
+#usr/lib/python2.7/email/test/data/msg_09.txt
+#usr/lib/python2.7/email/test/data/msg_10.txt
+#usr/lib/python2.7/email/test/data/msg_11.txt
+#usr/lib/python2.7/email/test/data/msg_12.txt
+#usr/lib/python2.7/email/test/data/msg_12a.txt
+#usr/lib/python2.7/email/test/data/msg_13.txt
+#usr/lib/python2.7/email/test/data/msg_14.txt
+#usr/lib/python2.7/email/test/data/msg_15.txt
+#usr/lib/python2.7/email/test/data/msg_16.txt
+#usr/lib/python2.7/email/test/data/msg_17.txt
+#usr/lib/python2.7/email/test/data/msg_18.txt
+#usr/lib/python2.7/email/test/data/msg_19.txt
+#usr/lib/python2.7/email/test/data/msg_20.txt
+#usr/lib/python2.7/email/test/data/msg_21.txt
+#usr/lib/python2.7/email/test/data/msg_22.txt
+#usr/lib/python2.7/email/test/data/msg_23.txt
+#usr/lib/python2.7/email/test/data/msg_24.txt
+#usr/lib/python2.7/email/test/data/msg_25.txt
+#usr/lib/python2.7/email/test/data/msg_26.txt
+#usr/lib/python2.7/email/test/data/msg_27.txt
+#usr/lib/python2.7/email/test/data/msg_28.txt
+#usr/lib/python2.7/email/test/data/msg_29.txt
+#usr/lib/python2.7/email/test/data/msg_30.txt
+#usr/lib/python2.7/email/test/data/msg_31.txt
+#usr/lib/python2.7/email/test/data/msg_32.txt
+#usr/lib/python2.7/email/test/data/msg_33.txt
+#usr/lib/python2.7/email/test/data/msg_34.txt
+#usr/lib/python2.7/email/test/data/msg_35.txt
+#usr/lib/python2.7/email/test/data/msg_36.txt
+#usr/lib/python2.7/email/test/data/msg_37.txt
+#usr/lib/python2.7/email/test/data/msg_38.txt
+#usr/lib/python2.7/email/test/data/msg_39.txt
+#usr/lib/python2.7/email/test/data/msg_40.txt
+#usr/lib/python2.7/email/test/data/msg_41.txt
+#usr/lib/python2.7/email/test/data/msg_42.txt
+#usr/lib/python2.7/email/test/data/msg_43.txt
+#usr/lib/python2.7/email/test/data/msg_44.txt
+#usr/lib/python2.7/email/test/data/msg_45.txt
+#usr/lib/python2.7/email/test/data/msg_46.txt
+#usr/lib/python2.7/email/test/test_email.py
+#usr/lib/python2.7/email/test/test_email.pyc
+#usr/lib/python2.7/email/test/test_email.pyo
+#usr/lib/python2.7/email/test/test_email_codecs.py
+#usr/lib/python2.7/email/test/test_email_codecs.pyc
+#usr/lib/python2.7/email/test/test_email_codecs.pyo
+#usr/lib/python2.7/email/test/test_email_codecs_renamed.py
+#usr/lib/python2.7/email/test/test_email_codecs_renamed.pyc
+#usr/lib/python2.7/email/test/test_email_codecs_renamed.pyo
+#usr/lib/python2.7/email/test/test_email_renamed.py
+#usr/lib/python2.7/email/test/test_email_renamed.pyc
+#usr/lib/python2.7/email/test/test_email_renamed.pyo
+#usr/lib/python2.7/email/test/test_email_torture.py
+#usr/lib/python2.7/email/test/test_email_torture.pyc
+#usr/lib/python2.7/email/test/test_email_torture.pyo
+#usr/lib/python2.7/email/utils.py
+usr/lib/python2.7/email/utils.pyc
+#usr/lib/python2.7/email/utils.pyo
+#usr/lib/python2.7/encodings
+#usr/lib/python2.7/encodings/__init__.py
+usr/lib/python2.7/encodings/__init__.pyc
+#usr/lib/python2.7/encodings/__init__.pyo
+#usr/lib/python2.7/encodings/aliases.py
+usr/lib/python2.7/encodings/aliases.pyc
+#usr/lib/python2.7/encodings/aliases.pyo
+#usr/lib/python2.7/encodings/ascii.py
+usr/lib/python2.7/encodings/ascii.pyc
+#usr/lib/python2.7/encodings/ascii.pyo
+#usr/lib/python2.7/encodings/base64_codec.py
+usr/lib/python2.7/encodings/base64_codec.pyc
+#usr/lib/python2.7/encodings/base64_codec.pyo
+#usr/lib/python2.7/encodings/big5.py
+usr/lib/python2.7/encodings/big5.pyc
+#usr/lib/python2.7/encodings/big5.pyo
+#usr/lib/python2.7/encodings/big5hkscs.py
+usr/lib/python2.7/encodings/big5hkscs.pyc
+#usr/lib/python2.7/encodings/big5hkscs.pyo
+#usr/lib/python2.7/encodings/bz2_codec.py
+usr/lib/python2.7/encodings/bz2_codec.pyc
+#usr/lib/python2.7/encodings/bz2_codec.pyo
+#usr/lib/python2.7/encodings/charmap.py
+usr/lib/python2.7/encodings/charmap.pyc
+#usr/lib/python2.7/encodings/charmap.pyo
+#usr/lib/python2.7/encodings/cp037.py
+usr/lib/python2.7/encodings/cp037.pyc
+#usr/lib/python2.7/encodings/cp037.pyo
+#usr/lib/python2.7/encodings/cp1006.py
+usr/lib/python2.7/encodings/cp1006.pyc
+#usr/lib/python2.7/encodings/cp1006.pyo
+#usr/lib/python2.7/encodings/cp1026.py
+usr/lib/python2.7/encodings/cp1026.pyc
+#usr/lib/python2.7/encodings/cp1026.pyo
+#usr/lib/python2.7/encodings/cp1140.py
+usr/lib/python2.7/encodings/cp1140.pyc
+#usr/lib/python2.7/encodings/cp1140.pyo
+#usr/lib/python2.7/encodings/cp1250.py
+usr/lib/python2.7/encodings/cp1250.pyc
+#usr/lib/python2.7/encodings/cp1250.pyo
+#usr/lib/python2.7/encodings/cp1251.py
+usr/lib/python2.7/encodings/cp1251.pyc
+#usr/lib/python2.7/encodings/cp1251.pyo
+#usr/lib/python2.7/encodings/cp1252.py
+usr/lib/python2.7/encodings/cp1252.pyc
+#usr/lib/python2.7/encodings/cp1252.pyo
+#usr/lib/python2.7/encodings/cp1253.py
+usr/lib/python2.7/encodings/cp1253.pyc
+#usr/lib/python2.7/encodings/cp1253.pyo
+#usr/lib/python2.7/encodings/cp1254.py
+usr/lib/python2.7/encodings/cp1254.pyc
+#usr/lib/python2.7/encodings/cp1254.pyo
+#usr/lib/python2.7/encodings/cp1255.py
+usr/lib/python2.7/encodings/cp1255.pyc
+#usr/lib/python2.7/encodings/cp1255.pyo
+#usr/lib/python2.7/encodings/cp1256.py
+usr/lib/python2.7/encodings/cp1256.pyc
+#usr/lib/python2.7/encodings/cp1256.pyo
+#usr/lib/python2.7/encodings/cp1257.py
+usr/lib/python2.7/encodings/cp1257.pyc
+#usr/lib/python2.7/encodings/cp1257.pyo
+#usr/lib/python2.7/encodings/cp1258.py
+usr/lib/python2.7/encodings/cp1258.pyc
+#usr/lib/python2.7/encodings/cp1258.pyo
+#usr/lib/python2.7/encodings/cp424.py
+usr/lib/python2.7/encodings/cp424.pyc
+#usr/lib/python2.7/encodings/cp424.pyo
+#usr/lib/python2.7/encodings/cp437.py
+usr/lib/python2.7/encodings/cp437.pyc
+#usr/lib/python2.7/encodings/cp437.pyo
+#usr/lib/python2.7/encodings/cp500.py
+usr/lib/python2.7/encodings/cp500.pyc
+#usr/lib/python2.7/encodings/cp500.pyo
+#usr/lib/python2.7/encodings/cp720.py
+usr/lib/python2.7/encodings/cp720.pyc
+#usr/lib/python2.7/encodings/cp720.pyo
+#usr/lib/python2.7/encodings/cp737.py
+usr/lib/python2.7/encodings/cp737.pyc
+#usr/lib/python2.7/encodings/cp737.pyo
+#usr/lib/python2.7/encodings/cp775.py
+usr/lib/python2.7/encodings/cp775.pyc
+#usr/lib/python2.7/encodings/cp775.pyo
+#usr/lib/python2.7/encodings/cp850.py
+usr/lib/python2.7/encodings/cp850.pyc
+#usr/lib/python2.7/encodings/cp850.pyo
+#usr/lib/python2.7/encodings/cp852.py
+usr/lib/python2.7/encodings/cp852.pyc
+#usr/lib/python2.7/encodings/cp852.pyo
+#usr/lib/python2.7/encodings/cp855.py
+usr/lib/python2.7/encodings/cp855.pyc
+#usr/lib/python2.7/encodings/cp855.pyo
+#usr/lib/python2.7/encodings/cp856.py
+usr/lib/python2.7/encodings/cp856.pyc
+#usr/lib/python2.7/encodings/cp856.pyo
+#usr/lib/python2.7/encodings/cp857.py
+usr/lib/python2.7/encodings/cp857.pyc
+#usr/lib/python2.7/encodings/cp857.pyo
+#usr/lib/python2.7/encodings/cp858.py
+usr/lib/python2.7/encodings/cp858.pyc
+#usr/lib/python2.7/encodings/cp858.pyo
+#usr/lib/python2.7/encodings/cp860.py
+usr/lib/python2.7/encodings/cp860.pyc
+#usr/lib/python2.7/encodings/cp860.pyo
+#usr/lib/python2.7/encodings/cp861.py
+usr/lib/python2.7/encodings/cp861.pyc
+#usr/lib/python2.7/encodings/cp861.pyo
+#usr/lib/python2.7/encodings/cp862.py
+usr/lib/python2.7/encodings/cp862.pyc
+#usr/lib/python2.7/encodings/cp862.pyo
+#usr/lib/python2.7/encodings/cp863.py
+usr/lib/python2.7/encodings/cp863.pyc
+#usr/lib/python2.7/encodings/cp863.pyo
+#usr/lib/python2.7/encodings/cp864.py
+usr/lib/python2.7/encodings/cp864.pyc
+#usr/lib/python2.7/encodings/cp864.pyo
+#usr/lib/python2.7/encodings/cp865.py
+usr/lib/python2.7/encodings/cp865.pyc
+#usr/lib/python2.7/encodings/cp865.pyo
+#usr/lib/python2.7/encodings/cp866.py
+usr/lib/python2.7/encodings/cp866.pyc
+#usr/lib/python2.7/encodings/cp866.pyo
+#usr/lib/python2.7/encodings/cp869.py
+usr/lib/python2.7/encodings/cp869.pyc
+#usr/lib/python2.7/encodings/cp869.pyo
+#usr/lib/python2.7/encodings/cp874.py
+usr/lib/python2.7/encodings/cp874.pyc
+#usr/lib/python2.7/encodings/cp874.pyo
+#usr/lib/python2.7/encodings/cp875.py
+usr/lib/python2.7/encodings/cp875.pyc
+#usr/lib/python2.7/encodings/cp875.pyo
+#usr/lib/python2.7/encodings/cp932.py
+usr/lib/python2.7/encodings/cp932.pyc
+#usr/lib/python2.7/encodings/cp932.pyo
+#usr/lib/python2.7/encodings/cp949.py
+usr/lib/python2.7/encodings/cp949.pyc
+#usr/lib/python2.7/encodings/cp949.pyo
+#usr/lib/python2.7/encodings/cp950.py
+usr/lib/python2.7/encodings/cp950.pyc
+#usr/lib/python2.7/encodings/cp950.pyo
+#usr/lib/python2.7/encodings/euc_jis_2004.py
+usr/lib/python2.7/encodings/euc_jis_2004.pyc
+#usr/lib/python2.7/encodings/euc_jis_2004.pyo
+#usr/lib/python2.7/encodings/euc_jisx0213.py
+usr/lib/python2.7/encodings/euc_jisx0213.pyc
+#usr/lib/python2.7/encodings/euc_jisx0213.pyo
+#usr/lib/python2.7/encodings/euc_jp.py
+usr/lib/python2.7/encodings/euc_jp.pyc
+#usr/lib/python2.7/encodings/euc_jp.pyo
+#usr/lib/python2.7/encodings/euc_kr.py
+usr/lib/python2.7/encodings/euc_kr.pyc
+#usr/lib/python2.7/encodings/euc_kr.pyo
+#usr/lib/python2.7/encodings/gb18030.py
+usr/lib/python2.7/encodings/gb18030.pyc
+#usr/lib/python2.7/encodings/gb18030.pyo
+#usr/lib/python2.7/encodings/gb2312.py
+usr/lib/python2.7/encodings/gb2312.pyc
+#usr/lib/python2.7/encodings/gb2312.pyo
+#usr/lib/python2.7/encodings/gbk.py
+usr/lib/python2.7/encodings/gbk.pyc
+#usr/lib/python2.7/encodings/gbk.pyo
+#usr/lib/python2.7/encodings/hex_codec.py
+usr/lib/python2.7/encodings/hex_codec.pyc
+#usr/lib/python2.7/encodings/hex_codec.pyo
+#usr/lib/python2.7/encodings/hp_roman8.py
+usr/lib/python2.7/encodings/hp_roman8.pyc
+#usr/lib/python2.7/encodings/hp_roman8.pyo
+#usr/lib/python2.7/encodings/hz.py
+usr/lib/python2.7/encodings/hz.pyc
+#usr/lib/python2.7/encodings/hz.pyo
+#usr/lib/python2.7/encodings/idna.py
+usr/lib/python2.7/encodings/idna.pyc
+#usr/lib/python2.7/encodings/idna.pyo
+#usr/lib/python2.7/encodings/iso2022_jp.py
+usr/lib/python2.7/encodings/iso2022_jp.pyc
+#usr/lib/python2.7/encodings/iso2022_jp.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_1.py
+usr/lib/python2.7/encodings/iso2022_jp_1.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_1.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_2.py
+usr/lib/python2.7/encodings/iso2022_jp_2.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_2.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_2004.py
+usr/lib/python2.7/encodings/iso2022_jp_2004.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_2004.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_3.py
+usr/lib/python2.7/encodings/iso2022_jp_3.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_3.pyo
+#usr/lib/python2.7/encodings/iso2022_jp_ext.py
+usr/lib/python2.7/encodings/iso2022_jp_ext.pyc
+#usr/lib/python2.7/encodings/iso2022_jp_ext.pyo
+#usr/lib/python2.7/encodings/iso2022_kr.py
+usr/lib/python2.7/encodings/iso2022_kr.pyc
+#usr/lib/python2.7/encodings/iso2022_kr.pyo
+#usr/lib/python2.7/encodings/iso8859_1.py
+usr/lib/python2.7/encodings/iso8859_1.pyc
+#usr/lib/python2.7/encodings/iso8859_1.pyo
+#usr/lib/python2.7/encodings/iso8859_10.py
+usr/lib/python2.7/encodings/iso8859_10.pyc
+#usr/lib/python2.7/encodings/iso8859_10.pyo
+#usr/lib/python2.7/encodings/iso8859_11.py
+usr/lib/python2.7/encodings/iso8859_11.pyc
+#usr/lib/python2.7/encodings/iso8859_11.pyo
+#usr/lib/python2.7/encodings/iso8859_13.py
+usr/lib/python2.7/encodings/iso8859_13.pyc
+#usr/lib/python2.7/encodings/iso8859_13.pyo
+#usr/lib/python2.7/encodings/iso8859_14.py
+usr/lib/python2.7/encodings/iso8859_14.pyc
+#usr/lib/python2.7/encodings/iso8859_14.pyo
+#usr/lib/python2.7/encodings/iso8859_15.py
+usr/lib/python2.7/encodings/iso8859_15.pyc
+#usr/lib/python2.7/encodings/iso8859_15.pyo
+#usr/lib/python2.7/encodings/iso8859_16.py
+usr/lib/python2.7/encodings/iso8859_16.pyc
+#usr/lib/python2.7/encodings/iso8859_16.pyo
+#usr/lib/python2.7/encodings/iso8859_2.py
+usr/lib/python2.7/encodings/iso8859_2.pyc
+#usr/lib/python2.7/encodings/iso8859_2.pyo
+#usr/lib/python2.7/encodings/iso8859_3.py
+usr/lib/python2.7/encodings/iso8859_3.pyc
+#usr/lib/python2.7/encodings/iso8859_3.pyo
+#usr/lib/python2.7/encodings/iso8859_4.py
+usr/lib/python2.7/encodings/iso8859_4.pyc
+#usr/lib/python2.7/encodings/iso8859_4.pyo
+#usr/lib/python2.7/encodings/iso8859_5.py
+usr/lib/python2.7/encodings/iso8859_5.pyc
+#usr/lib/python2.7/encodings/iso8859_5.pyo
+#usr/lib/python2.7/encodings/iso8859_6.py
+usr/lib/python2.7/encodings/iso8859_6.pyc
+#usr/lib/python2.7/encodings/iso8859_6.pyo
+#usr/lib/python2.7/encodings/iso8859_7.py
+usr/lib/python2.7/encodings/iso8859_7.pyc
+#usr/lib/python2.7/encodings/iso8859_7.pyo
+#usr/lib/python2.7/encodings/iso8859_8.py
+usr/lib/python2.7/encodings/iso8859_8.pyc
+#usr/lib/python2.7/encodings/iso8859_8.pyo
+#usr/lib/python2.7/encodings/iso8859_9.py
+usr/lib/python2.7/encodings/iso8859_9.pyc
+#usr/lib/python2.7/encodings/iso8859_9.pyo
+#usr/lib/python2.7/encodings/johab.py
+usr/lib/python2.7/encodings/johab.pyc
+#usr/lib/python2.7/encodings/johab.pyo
+#usr/lib/python2.7/encodings/koi8_r.py
+usr/lib/python2.7/encodings/koi8_r.pyc
+#usr/lib/python2.7/encodings/koi8_r.pyo
+#usr/lib/python2.7/encodings/koi8_u.py
+usr/lib/python2.7/encodings/koi8_u.pyc
+#usr/lib/python2.7/encodings/koi8_u.pyo
+#usr/lib/python2.7/encodings/latin_1.py
+usr/lib/python2.7/encodings/latin_1.pyc
+#usr/lib/python2.7/encodings/latin_1.pyo
+#usr/lib/python2.7/encodings/mac_arabic.py
+usr/lib/python2.7/encodings/mac_arabic.pyc
+#usr/lib/python2.7/encodings/mac_arabic.pyo
+#usr/lib/python2.7/encodings/mac_centeuro.py
+usr/lib/python2.7/encodings/mac_centeuro.pyc
+#usr/lib/python2.7/encodings/mac_centeuro.pyo
+#usr/lib/python2.7/encodings/mac_croatian.py
+usr/lib/python2.7/encodings/mac_croatian.pyc
+#usr/lib/python2.7/encodings/mac_croatian.pyo
+#usr/lib/python2.7/encodings/mac_cyrillic.py
+usr/lib/python2.7/encodings/mac_cyrillic.pyc
+#usr/lib/python2.7/encodings/mac_cyrillic.pyo
+#usr/lib/python2.7/encodings/mac_farsi.py
+usr/lib/python2.7/encodings/mac_farsi.pyc
+#usr/lib/python2.7/encodings/mac_farsi.pyo
+#usr/lib/python2.7/encodings/mac_greek.py
+usr/lib/python2.7/encodings/mac_greek.pyc
+#usr/lib/python2.7/encodings/mac_greek.pyo
+#usr/lib/python2.7/encodings/mac_iceland.py
+usr/lib/python2.7/encodings/mac_iceland.pyc
+#usr/lib/python2.7/encodings/mac_iceland.pyo
+#usr/lib/python2.7/encodings/mac_latin2.py
+usr/lib/python2.7/encodings/mac_latin2.pyc
+#usr/lib/python2.7/encodings/mac_latin2.pyo
+#usr/lib/python2.7/encodings/mac_roman.py
+usr/lib/python2.7/encodings/mac_roman.pyc
+#usr/lib/python2.7/encodings/mac_roman.pyo
+#usr/lib/python2.7/encodings/mac_romanian.py
+usr/lib/python2.7/encodings/mac_romanian.pyc
+#usr/lib/python2.7/encodings/mac_romanian.pyo
+#usr/lib/python2.7/encodings/mac_turkish.py
+usr/lib/python2.7/encodings/mac_turkish.pyc
+#usr/lib/python2.7/encodings/mac_turkish.pyo
+#usr/lib/python2.7/encodings/mbcs.py
+usr/lib/python2.7/encodings/mbcs.pyc
+#usr/lib/python2.7/encodings/mbcs.pyo
+#usr/lib/python2.7/encodings/palmos.py
+usr/lib/python2.7/encodings/palmos.pyc
+#usr/lib/python2.7/encodings/palmos.pyo
+#usr/lib/python2.7/encodings/ptcp154.py
+usr/lib/python2.7/encodings/ptcp154.pyc
+#usr/lib/python2.7/encodings/ptcp154.pyo
+#usr/lib/python2.7/encodings/punycode.py
+usr/lib/python2.7/encodings/punycode.pyc
+#usr/lib/python2.7/encodings/punycode.pyo
+#usr/lib/python2.7/encodings/quopri_codec.py
+usr/lib/python2.7/encodings/quopri_codec.pyc
+#usr/lib/python2.7/encodings/quopri_codec.pyo
+#usr/lib/python2.7/encodings/raw_unicode_escape.py
+usr/lib/python2.7/encodings/raw_unicode_escape.pyc
+#usr/lib/python2.7/encodings/raw_unicode_escape.pyo
+#usr/lib/python2.7/encodings/rot_13.py
+usr/lib/python2.7/encodings/rot_13.pyc
+#usr/lib/python2.7/encodings/rot_13.pyo
+#usr/lib/python2.7/encodings/shift_jis.py
+usr/lib/python2.7/encodings/shift_jis.pyc
+#usr/lib/python2.7/encodings/shift_jis.pyo
+#usr/lib/python2.7/encodings/shift_jis_2004.py
+usr/lib/python2.7/encodings/shift_jis_2004.pyc
+#usr/lib/python2.7/encodings/shift_jis_2004.pyo
+#usr/lib/python2.7/encodings/shift_jisx0213.py
+usr/lib/python2.7/encodings/shift_jisx0213.pyc
+#usr/lib/python2.7/encodings/shift_jisx0213.pyo
+#usr/lib/python2.7/encodings/string_escape.py
+usr/lib/python2.7/encodings/string_escape.pyc
+#usr/lib/python2.7/encodings/string_escape.pyo
+#usr/lib/python2.7/encodings/tis_620.py
+usr/lib/python2.7/encodings/tis_620.pyc
+#usr/lib/python2.7/encodings/tis_620.pyo
+#usr/lib/python2.7/encodings/undefined.py
+usr/lib/python2.7/encodings/undefined.pyc
+#usr/lib/python2.7/encodings/undefined.pyo
+#usr/lib/python2.7/encodings/unicode_escape.py
+usr/lib/python2.7/encodings/unicode_escape.pyc
+#usr/lib/python2.7/encodings/unicode_escape.pyo
+#usr/lib/python2.7/encodings/unicode_internal.py
+usr/lib/python2.7/encodings/unicode_internal.pyc
+#usr/lib/python2.7/encodings/unicode_internal.pyo
+#usr/lib/python2.7/encodings/utf_16.py
+usr/lib/python2.7/encodings/utf_16.pyc
+#usr/lib/python2.7/encodings/utf_16.pyo
+#usr/lib/python2.7/encodings/utf_16_be.py
+usr/lib/python2.7/encodings/utf_16_be.pyc
+#usr/lib/python2.7/encodings/utf_16_be.pyo
+#usr/lib/python2.7/encodings/utf_16_le.py
+usr/lib/python2.7/encodings/utf_16_le.pyc
+#usr/lib/python2.7/encodings/utf_16_le.pyo
+#usr/lib/python2.7/encodings/utf_32.py
+usr/lib/python2.7/encodings/utf_32.pyc
+#usr/lib/python2.7/encodings/utf_32.pyo
+#usr/lib/python2.7/encodings/utf_32_be.py
+usr/lib/python2.7/encodings/utf_32_be.pyc
+#usr/lib/python2.7/encodings/utf_32_be.pyo
+#usr/lib/python2.7/encodings/utf_32_le.py
+usr/lib/python2.7/encodings/utf_32_le.pyc
+#usr/lib/python2.7/encodings/utf_32_le.pyo
+#usr/lib/python2.7/encodings/utf_7.py
+usr/lib/python2.7/encodings/utf_7.pyc
+#usr/lib/python2.7/encodings/utf_7.pyo
+#usr/lib/python2.7/encodings/utf_8.py
+usr/lib/python2.7/encodings/utf_8.pyc
+#usr/lib/python2.7/encodings/utf_8.pyo
+#usr/lib/python2.7/encodings/utf_8_sig.py
+usr/lib/python2.7/encodings/utf_8_sig.pyc
+#usr/lib/python2.7/encodings/utf_8_sig.pyo
+#usr/lib/python2.7/encodings/uu_codec.py
+usr/lib/python2.7/encodings/uu_codec.pyc
+#usr/lib/python2.7/encodings/uu_codec.pyo
+#usr/lib/python2.7/encodings/zlib_codec.py
+usr/lib/python2.7/encodings/zlib_codec.pyc
+#usr/lib/python2.7/encodings/zlib_codec.pyo
+#usr/lib/python2.7/ensurepip
+#usr/lib/python2.7/ensurepip/__init__.py
+#usr/lib/python2.7/ensurepip/__init__.pyc
+#usr/lib/python2.7/ensurepip/__init__.pyo
+#usr/lib/python2.7/ensurepip/__main__.py
+#usr/lib/python2.7/ensurepip/__main__.pyc
+#usr/lib/python2.7/ensurepip/__main__.pyo
+#usr/lib/python2.7/ensurepip/_bundled
+#usr/lib/python2.7/ensurepip/_bundled/pip-6.1.1-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/setuptools-15.2-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_uninstall.py
+#usr/lib/python2.7/ensurepip/_uninstall.pyc
+#usr/lib/python2.7/ensurepip/_uninstall.pyo
+#usr/lib/python2.7/filecmp.py
+usr/lib/python2.7/filecmp.pyc
+#usr/lib/python2.7/filecmp.pyo
+#usr/lib/python2.7/fileinput.py
+usr/lib/python2.7/fileinput.pyc
+#usr/lib/python2.7/fileinput.pyo
+#usr/lib/python2.7/fnmatch.py
+usr/lib/python2.7/fnmatch.pyc
+#usr/lib/python2.7/fnmatch.pyo
+#usr/lib/python2.7/formatter.py
+usr/lib/python2.7/formatter.pyc
+#usr/lib/python2.7/formatter.pyo
+#usr/lib/python2.7/fpformat.py
+usr/lib/python2.7/fpformat.pyc
+#usr/lib/python2.7/fpformat.pyo
+#usr/lib/python2.7/fractions.py
+usr/lib/python2.7/fractions.pyc
+#usr/lib/python2.7/fractions.pyo
+#usr/lib/python2.7/ftplib.py
+usr/lib/python2.7/ftplib.pyc
+#usr/lib/python2.7/ftplib.pyo
+#usr/lib/python2.7/functools.py
+usr/lib/python2.7/functools.pyc
+#usr/lib/python2.7/functools.pyo
+#usr/lib/python2.7/genericpath.py
+usr/lib/python2.7/genericpath.pyc
+#usr/lib/python2.7/genericpath.pyo
+#usr/lib/python2.7/getopt.py
+usr/lib/python2.7/getopt.pyc
+#usr/lib/python2.7/getopt.pyo
+#usr/lib/python2.7/getpass.py
+usr/lib/python2.7/getpass.pyc
+#usr/lib/python2.7/getpass.pyo
+#usr/lib/python2.7/gettext.py
+usr/lib/python2.7/gettext.pyc
+#usr/lib/python2.7/gettext.pyo
+#usr/lib/python2.7/glob.py
+usr/lib/python2.7/glob.pyc
+#usr/lib/python2.7/glob.pyo
+#usr/lib/python2.7/gzip.py
+usr/lib/python2.7/gzip.pyc
+#usr/lib/python2.7/gzip.pyo
+#usr/lib/python2.7/hashlib.py
+usr/lib/python2.7/hashlib.pyc
+#usr/lib/python2.7/hashlib.pyo
+#usr/lib/python2.7/heapq.py
+usr/lib/python2.7/heapq.pyc
+#usr/lib/python2.7/heapq.pyo
+#usr/lib/python2.7/hmac.py
+usr/lib/python2.7/hmac.pyc
+#usr/lib/python2.7/hmac.pyo
+#usr/lib/python2.7/hotshot
+#usr/lib/python2.7/hotshot/__init__.py
+usr/lib/python2.7/hotshot/__init__.pyc
+#usr/lib/python2.7/hotshot/__init__.pyo
+#usr/lib/python2.7/hotshot/log.py
+usr/lib/python2.7/hotshot/log.pyc
+#usr/lib/python2.7/hotshot/log.pyo
+#usr/lib/python2.7/hotshot/stats.py
+usr/lib/python2.7/hotshot/stats.pyc
+#usr/lib/python2.7/hotshot/stats.pyo
+#usr/lib/python2.7/hotshot/stones.py
+usr/lib/python2.7/hotshot/stones.pyc
+#usr/lib/python2.7/hotshot/stones.pyo
+#usr/lib/python2.7/htmlentitydefs.py
+usr/lib/python2.7/htmlentitydefs.pyc
+#usr/lib/python2.7/htmlentitydefs.pyo
+#usr/lib/python2.7/htmllib.py
+usr/lib/python2.7/htmllib.pyc
+#usr/lib/python2.7/htmllib.pyo
+#usr/lib/python2.7/httplib.py
+usr/lib/python2.7/httplib.pyc
+#usr/lib/python2.7/httplib.pyo
+#usr/lib/python2.7/idlelib
+#usr/lib/python2.7/idlelib/AutoComplete.py
+#usr/lib/python2.7/idlelib/AutoComplete.pyc
+#usr/lib/python2.7/idlelib/AutoComplete.pyo
+#usr/lib/python2.7/idlelib/AutoCompleteWindow.py
+#usr/lib/python2.7/idlelib/AutoCompleteWindow.pyc
+#usr/lib/python2.7/idlelib/AutoCompleteWindow.pyo
+#usr/lib/python2.7/idlelib/AutoExpand.py
+#usr/lib/python2.7/idlelib/AutoExpand.pyc
+#usr/lib/python2.7/idlelib/AutoExpand.pyo
+#usr/lib/python2.7/idlelib/Bindings.py
+#usr/lib/python2.7/idlelib/Bindings.pyc
+#usr/lib/python2.7/idlelib/Bindings.pyo
+#usr/lib/python2.7/idlelib/CREDITS.txt
+#usr/lib/python2.7/idlelib/CallTipWindow.py
+#usr/lib/python2.7/idlelib/CallTipWindow.pyc
+#usr/lib/python2.7/idlelib/CallTipWindow.pyo
+#usr/lib/python2.7/idlelib/CallTips.py
+#usr/lib/python2.7/idlelib/CallTips.pyc
+#usr/lib/python2.7/idlelib/CallTips.pyo
+#usr/lib/python2.7/idlelib/ChangeLog
+#usr/lib/python2.7/idlelib/ClassBrowser.py
+#usr/lib/python2.7/idlelib/ClassBrowser.pyc
+#usr/lib/python2.7/idlelib/ClassBrowser.pyo
+#usr/lib/python2.7/idlelib/CodeContext.py
+#usr/lib/python2.7/idlelib/CodeContext.pyc
+#usr/lib/python2.7/idlelib/CodeContext.pyo
+#usr/lib/python2.7/idlelib/ColorDelegator.py
+#usr/lib/python2.7/idlelib/ColorDelegator.pyc
+#usr/lib/python2.7/idlelib/ColorDelegator.pyo
+#usr/lib/python2.7/idlelib/Debugger.py
+#usr/lib/python2.7/idlelib/Debugger.pyc
+#usr/lib/python2.7/idlelib/Debugger.pyo
+#usr/lib/python2.7/idlelib/Delegator.py
+#usr/lib/python2.7/idlelib/Delegator.pyc
+#usr/lib/python2.7/idlelib/Delegator.pyo
+#usr/lib/python2.7/idlelib/EditorWindow.py
+#usr/lib/python2.7/idlelib/EditorWindow.pyc
+#usr/lib/python2.7/idlelib/EditorWindow.pyo
+#usr/lib/python2.7/idlelib/FileList.py
+#usr/lib/python2.7/idlelib/FileList.pyc
+#usr/lib/python2.7/idlelib/FileList.pyo
+#usr/lib/python2.7/idlelib/FormatParagraph.py
+#usr/lib/python2.7/idlelib/FormatParagraph.pyc
+#usr/lib/python2.7/idlelib/FormatParagraph.pyo
+#usr/lib/python2.7/idlelib/GrepDialog.py
+#usr/lib/python2.7/idlelib/GrepDialog.pyc
+#usr/lib/python2.7/idlelib/GrepDialog.pyo
+#usr/lib/python2.7/idlelib/HISTORY.txt
+#usr/lib/python2.7/idlelib/HyperParser.py
+#usr/lib/python2.7/idlelib/HyperParser.pyc
+#usr/lib/python2.7/idlelib/HyperParser.pyo
+#usr/lib/python2.7/idlelib/IOBinding.py
+#usr/lib/python2.7/idlelib/IOBinding.pyc
+#usr/lib/python2.7/idlelib/IOBinding.pyo
+#usr/lib/python2.7/idlelib/Icons
+#usr/lib/python2.7/idlelib/Icons/folder.gif
+#usr/lib/python2.7/idlelib/Icons/idle.icns
+#usr/lib/python2.7/idlelib/Icons/idle.ico
+#usr/lib/python2.7/idlelib/Icons/idle_16.gif
+#usr/lib/python2.7/idlelib/Icons/idle_16.png
+#usr/lib/python2.7/idlelib/Icons/idle_32.gif
+#usr/lib/python2.7/idlelib/Icons/idle_32.png
+#usr/lib/python2.7/idlelib/Icons/idle_48.gif
+#usr/lib/python2.7/idlelib/Icons/idle_48.png
+#usr/lib/python2.7/idlelib/Icons/minusnode.gif
+#usr/lib/python2.7/idlelib/Icons/openfolder.gif
+#usr/lib/python2.7/idlelib/Icons/plusnode.gif
+#usr/lib/python2.7/idlelib/Icons/python.gif
+#usr/lib/python2.7/idlelib/Icons/tk.gif
+#usr/lib/python2.7/idlelib/IdleHistory.py
+#usr/lib/python2.7/idlelib/IdleHistory.pyc
+#usr/lib/python2.7/idlelib/IdleHistory.pyo
+#usr/lib/python2.7/idlelib/MultiCall.py
+#usr/lib/python2.7/idlelib/MultiCall.pyc
+#usr/lib/python2.7/idlelib/MultiCall.pyo
+#usr/lib/python2.7/idlelib/MultiStatusBar.py
+#usr/lib/python2.7/idlelib/MultiStatusBar.pyc
+#usr/lib/python2.7/idlelib/MultiStatusBar.pyo
+#usr/lib/python2.7/idlelib/NEWS.txt
+#usr/lib/python2.7/idlelib/ObjectBrowser.py
+#usr/lib/python2.7/idlelib/ObjectBrowser.pyc
+#usr/lib/python2.7/idlelib/ObjectBrowser.pyo
+#usr/lib/python2.7/idlelib/OutputWindow.py
+#usr/lib/python2.7/idlelib/OutputWindow.pyc
+#usr/lib/python2.7/idlelib/OutputWindow.pyo
+#usr/lib/python2.7/idlelib/ParenMatch.py
+#usr/lib/python2.7/idlelib/ParenMatch.pyc
+#usr/lib/python2.7/idlelib/ParenMatch.pyo
+#usr/lib/python2.7/idlelib/PathBrowser.py
+#usr/lib/python2.7/idlelib/PathBrowser.pyc
+#usr/lib/python2.7/idlelib/PathBrowser.pyo
+#usr/lib/python2.7/idlelib/Percolator.py
+#usr/lib/python2.7/idlelib/Percolator.pyc
+#usr/lib/python2.7/idlelib/Percolator.pyo
+#usr/lib/python2.7/idlelib/PyParse.py
+#usr/lib/python2.7/idlelib/PyParse.pyc
+#usr/lib/python2.7/idlelib/PyParse.pyo
+#usr/lib/python2.7/idlelib/PyShell.py
+#usr/lib/python2.7/idlelib/PyShell.pyc
+#usr/lib/python2.7/idlelib/PyShell.pyo
+#usr/lib/python2.7/idlelib/README.txt
+#usr/lib/python2.7/idlelib/RemoteDebugger.py
+#usr/lib/python2.7/idlelib/RemoteDebugger.pyc
+#usr/lib/python2.7/idlelib/RemoteDebugger.pyo
+#usr/lib/python2.7/idlelib/RemoteObjectBrowser.py
+#usr/lib/python2.7/idlelib/RemoteObjectBrowser.pyc
+#usr/lib/python2.7/idlelib/RemoteObjectBrowser.pyo
+#usr/lib/python2.7/idlelib/ReplaceDialog.py
+#usr/lib/python2.7/idlelib/ReplaceDialog.pyc
+#usr/lib/python2.7/idlelib/ReplaceDialog.pyo
+#usr/lib/python2.7/idlelib/RstripExtension.py
+#usr/lib/python2.7/idlelib/RstripExtension.pyc
+#usr/lib/python2.7/idlelib/RstripExtension.pyo
+#usr/lib/python2.7/idlelib/ScriptBinding.py
+#usr/lib/python2.7/idlelib/ScriptBinding.pyc
+#usr/lib/python2.7/idlelib/ScriptBinding.pyo
+#usr/lib/python2.7/idlelib/ScrolledList.py
+#usr/lib/python2.7/idlelib/ScrolledList.pyc
+#usr/lib/python2.7/idlelib/ScrolledList.pyo
+#usr/lib/python2.7/idlelib/SearchDialog.py
+#usr/lib/python2.7/idlelib/SearchDialog.pyc
+#usr/lib/python2.7/idlelib/SearchDialog.pyo
+#usr/lib/python2.7/idlelib/SearchDialogBase.py
+#usr/lib/python2.7/idlelib/SearchDialogBase.pyc
+#usr/lib/python2.7/idlelib/SearchDialogBase.pyo
+#usr/lib/python2.7/idlelib/SearchEngine.py
+#usr/lib/python2.7/idlelib/SearchEngine.pyc
+#usr/lib/python2.7/idlelib/SearchEngine.pyo
+#usr/lib/python2.7/idlelib/StackViewer.py
+#usr/lib/python2.7/idlelib/StackViewer.pyc
+#usr/lib/python2.7/idlelib/StackViewer.pyo
+#usr/lib/python2.7/idlelib/TODO.txt
+#usr/lib/python2.7/idlelib/ToolTip.py
+#usr/lib/python2.7/idlelib/ToolTip.pyc
+#usr/lib/python2.7/idlelib/ToolTip.pyo
+#usr/lib/python2.7/idlelib/TreeWidget.py
+#usr/lib/python2.7/idlelib/TreeWidget.pyc
+#usr/lib/python2.7/idlelib/TreeWidget.pyo
+#usr/lib/python2.7/idlelib/UndoDelegator.py
+#usr/lib/python2.7/idlelib/UndoDelegator.pyc
+#usr/lib/python2.7/idlelib/UndoDelegator.pyo
+#usr/lib/python2.7/idlelib/WidgetRedirector.py
+#usr/lib/python2.7/idlelib/WidgetRedirector.pyc
+#usr/lib/python2.7/idlelib/WidgetRedirector.pyo
+#usr/lib/python2.7/idlelib/WindowList.py
+#usr/lib/python2.7/idlelib/WindowList.pyc
+#usr/lib/python2.7/idlelib/WindowList.pyo
+#usr/lib/python2.7/idlelib/ZoomHeight.py
+#usr/lib/python2.7/idlelib/ZoomHeight.pyc
+#usr/lib/python2.7/idlelib/ZoomHeight.pyo
+#usr/lib/python2.7/idlelib/__init__.py
+#usr/lib/python2.7/idlelib/__init__.pyc
+#usr/lib/python2.7/idlelib/__init__.pyo
+#usr/lib/python2.7/idlelib/aboutDialog.py
+#usr/lib/python2.7/idlelib/aboutDialog.pyc
+#usr/lib/python2.7/idlelib/aboutDialog.pyo
+#usr/lib/python2.7/idlelib/config-extensions.def
+#usr/lib/python2.7/idlelib/config-highlight.def
+#usr/lib/python2.7/idlelib/config-keys.def
+#usr/lib/python2.7/idlelib/config-main.def
+#usr/lib/python2.7/idlelib/configDialog.py
+#usr/lib/python2.7/idlelib/configDialog.pyc
+#usr/lib/python2.7/idlelib/configDialog.pyo
+#usr/lib/python2.7/idlelib/configHandler.py
+#usr/lib/python2.7/idlelib/configHandler.pyc
+#usr/lib/python2.7/idlelib/configHandler.pyo
+#usr/lib/python2.7/idlelib/configHelpSourceEdit.py
+#usr/lib/python2.7/idlelib/configHelpSourceEdit.pyc
+#usr/lib/python2.7/idlelib/configHelpSourceEdit.pyo
+#usr/lib/python2.7/idlelib/configSectionNameDialog.py
+#usr/lib/python2.7/idlelib/configSectionNameDialog.pyc
+#usr/lib/python2.7/idlelib/configSectionNameDialog.pyo
+#usr/lib/python2.7/idlelib/dynOptionMenuWidget.py
+#usr/lib/python2.7/idlelib/dynOptionMenuWidget.pyc
+#usr/lib/python2.7/idlelib/dynOptionMenuWidget.pyo
+#usr/lib/python2.7/idlelib/extend.txt
+#usr/lib/python2.7/idlelib/help.txt
+#usr/lib/python2.7/idlelib/idle.bat
+#usr/lib/python2.7/idlelib/idle.py
+#usr/lib/python2.7/idlelib/idle.pyc
+#usr/lib/python2.7/idlelib/idle.pyo
+#usr/lib/python2.7/idlelib/idle.pyw
+#usr/lib/python2.7/idlelib/idle_test
+#usr/lib/python2.7/idlelib/idle_test/README.txt
+#usr/lib/python2.7/idlelib/idle_test/__init__.py
+#usr/lib/python2.7/idlelib/idle_test/__init__.pyc
+#usr/lib/python2.7/idlelib/idle_test/__init__.pyo
+#usr/lib/python2.7/idlelib/idle_test/htest.py
+#usr/lib/python2.7/idlelib/idle_test/htest.pyc
+#usr/lib/python2.7/idlelib/idle_test/htest.pyo
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.py
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.pyc
+#usr/lib/python2.7/idlelib/idle_test/mock_idle.pyo
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.py
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.pyc
+#usr/lib/python2.7/idlelib/idle_test/mock_tk.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.py
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_autocomplete.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.py
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_autoexpand.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.py
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_calltips.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.py
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_config_name.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.py
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_configdialog.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.py
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_delegator.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.py
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_formatparagraph.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_grep.py
+#usr/lib/python2.7/idlelib/idle_test/test_grep.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_grep.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.py
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_hyperparser.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.py
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_idlehistory.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_io.py
+#usr/lib/python2.7/idlelib/idle_test/test_io.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_io.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.py
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_parenmatch.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.py
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_pathbrowser.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.py
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_rstrip.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.py
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_searchdialogbase.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.py
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_searchengine.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_text.py
+#usr/lib/python2.7/idlelib/idle_test/test_text.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_text.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_textview.py
+#usr/lib/python2.7/idlelib/idle_test/test_textview.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_textview.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_warning.py
+#usr/lib/python2.7/idlelib/idle_test/test_warning.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_warning.pyo
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.py
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.pyc
+#usr/lib/python2.7/idlelib/idle_test/test_widgetredir.pyo
+#usr/lib/python2.7/idlelib/idlever.py
+#usr/lib/python2.7/idlelib/idlever.pyc
+#usr/lib/python2.7/idlelib/idlever.pyo
+#usr/lib/python2.7/idlelib/keybindingDialog.py
+#usr/lib/python2.7/idlelib/keybindingDialog.pyc
+#usr/lib/python2.7/idlelib/keybindingDialog.pyo
+#usr/lib/python2.7/idlelib/macosxSupport.py
+#usr/lib/python2.7/idlelib/macosxSupport.pyc
+#usr/lib/python2.7/idlelib/macosxSupport.pyo
+#usr/lib/python2.7/idlelib/rpc.py
+#usr/lib/python2.7/idlelib/rpc.pyc
+#usr/lib/python2.7/idlelib/rpc.pyo
+#usr/lib/python2.7/idlelib/run.py
+#usr/lib/python2.7/idlelib/run.pyc
+#usr/lib/python2.7/idlelib/run.pyo
+#usr/lib/python2.7/idlelib/tabbedpages.py
+#usr/lib/python2.7/idlelib/tabbedpages.pyc
+#usr/lib/python2.7/idlelib/tabbedpages.pyo
+#usr/lib/python2.7/idlelib/textView.py
+#usr/lib/python2.7/idlelib/textView.pyc
+#usr/lib/python2.7/idlelib/textView.pyo
+#usr/lib/python2.7/ihooks.py
+usr/lib/python2.7/ihooks.pyc
+#usr/lib/python2.7/ihooks.pyo
+#usr/lib/python2.7/imaplib.py
+usr/lib/python2.7/imaplib.pyc
+#usr/lib/python2.7/imaplib.pyo
+#usr/lib/python2.7/imghdr.py
+usr/lib/python2.7/imghdr.pyc
+#usr/lib/python2.7/imghdr.pyo
+#usr/lib/python2.7/importlib
+#usr/lib/python2.7/importlib/__init__.py
+usr/lib/python2.7/importlib/__init__.pyc
+#usr/lib/python2.7/importlib/__init__.pyo
+#usr/lib/python2.7/imputil.py
+usr/lib/python2.7/imputil.pyc
+#usr/lib/python2.7/imputil.pyo
+#usr/lib/python2.7/inspect.py
+usr/lib/python2.7/inspect.pyc
+#usr/lib/python2.7/inspect.pyo
+#usr/lib/python2.7/io.py
+usr/lib/python2.7/io.pyc
+#usr/lib/python2.7/io.pyo
+#usr/lib/python2.7/json
+#usr/lib/python2.7/json/__init__.py
+usr/lib/python2.7/json/__init__.pyc
+#usr/lib/python2.7/json/__init__.pyo
+#usr/lib/python2.7/json/decoder.py
+usr/lib/python2.7/json/decoder.pyc
+#usr/lib/python2.7/json/decoder.pyo
+#usr/lib/python2.7/json/encoder.py
+usr/lib/python2.7/json/encoder.pyc
+#usr/lib/python2.7/json/encoder.pyo
+#usr/lib/python2.7/json/scanner.py
+usr/lib/python2.7/json/scanner.pyc
+#usr/lib/python2.7/json/scanner.pyo
+#usr/lib/python2.7/json/tests
+#usr/lib/python2.7/json/tests/__init__.py
+#usr/lib/python2.7/json/tests/__init__.pyc
+#usr/lib/python2.7/json/tests/__init__.pyo
+#usr/lib/python2.7/json/tests/test_check_circular.py
+#usr/lib/python2.7/json/tests/test_check_circular.pyc
+#usr/lib/python2.7/json/tests/test_check_circular.pyo
+#usr/lib/python2.7/json/tests/test_decode.py
+#usr/lib/python2.7/json/tests/test_decode.pyc
+#usr/lib/python2.7/json/tests/test_decode.pyo
+#usr/lib/python2.7/json/tests/test_default.py
+#usr/lib/python2.7/json/tests/test_default.pyc
+#usr/lib/python2.7/json/tests/test_default.pyo
+#usr/lib/python2.7/json/tests/test_dump.py
+#usr/lib/python2.7/json/tests/test_dump.pyc
+#usr/lib/python2.7/json/tests/test_dump.pyo
+#usr/lib/python2.7/json/tests/test_encode_basestring_ascii.py
+#usr/lib/python2.7/json/tests/test_encode_basestring_ascii.pyc
+#usr/lib/python2.7/json/tests/test_encode_basestring_ascii.pyo
+#usr/lib/python2.7/json/tests/test_fail.py
+#usr/lib/python2.7/json/tests/test_fail.pyc
+#usr/lib/python2.7/json/tests/test_fail.pyo
+#usr/lib/python2.7/json/tests/test_float.py
+#usr/lib/python2.7/json/tests/test_float.pyc
+#usr/lib/python2.7/json/tests/test_float.pyo
+#usr/lib/python2.7/json/tests/test_indent.py
+#usr/lib/python2.7/json/tests/test_indent.pyc
+#usr/lib/python2.7/json/tests/test_indent.pyo
+#usr/lib/python2.7/json/tests/test_pass1.py
+#usr/lib/python2.7/json/tests/test_pass1.pyc
+#usr/lib/python2.7/json/tests/test_pass1.pyo
+#usr/lib/python2.7/json/tests/test_pass2.py
+#usr/lib/python2.7/json/tests/test_pass2.pyc
+#usr/lib/python2.7/json/tests/test_pass2.pyo
+#usr/lib/python2.7/json/tests/test_pass3.py
+#usr/lib/python2.7/json/tests/test_pass3.pyc
+#usr/lib/python2.7/json/tests/test_pass3.pyo
+#usr/lib/python2.7/json/tests/test_recursion.py
+#usr/lib/python2.7/json/tests/test_recursion.pyc
+#usr/lib/python2.7/json/tests/test_recursion.pyo
+#usr/lib/python2.7/json/tests/test_scanstring.py
+#usr/lib/python2.7/json/tests/test_scanstring.pyc
+#usr/lib/python2.7/json/tests/test_scanstring.pyo
+#usr/lib/python2.7/json/tests/test_separators.py
+#usr/lib/python2.7/json/tests/test_separators.pyc
+#usr/lib/python2.7/json/tests/test_separators.pyo
+#usr/lib/python2.7/json/tests/test_speedups.py
+#usr/lib/python2.7/json/tests/test_speedups.pyc
+#usr/lib/python2.7/json/tests/test_speedups.pyo
+#usr/lib/python2.7/json/tests/test_tool.py
+#usr/lib/python2.7/json/tests/test_tool.pyc
+#usr/lib/python2.7/json/tests/test_tool.pyo
+#usr/lib/python2.7/json/tests/test_unicode.py
+#usr/lib/python2.7/json/tests/test_unicode.pyc
+#usr/lib/python2.7/json/tests/test_unicode.pyo
+#usr/lib/python2.7/json/tool.py
+usr/lib/python2.7/json/tool.pyc
+#usr/lib/python2.7/json/tool.pyo
+#usr/lib/python2.7/keyword.py
+usr/lib/python2.7/keyword.pyc
+#usr/lib/python2.7/keyword.pyo
+#usr/lib/python2.7/lib-dynload
+#usr/lib/python2.7/lib-dynload/Python-2.7.10-py2.7.egg-info
+usr/lib/python2.7/lib-dynload/_bisect.so
+usr/lib/python2.7/lib-dynload/_bsddb.so
+usr/lib/python2.7/lib-dynload/_codecs_cn.so
+usr/lib/python2.7/lib-dynload/_codecs_hk.so
+usr/lib/python2.7/lib-dynload/_codecs_iso2022.so
+usr/lib/python2.7/lib-dynload/_codecs_jp.so
+usr/lib/python2.7/lib-dynload/_codecs_kr.so
+usr/lib/python2.7/lib-dynload/_codecs_tw.so
+usr/lib/python2.7/lib-dynload/_collections.so
+usr/lib/python2.7/lib-dynload/_csv.so
+usr/lib/python2.7/lib-dynload/_ctypes.so
+#usr/lib/python2.7/lib-dynload/_ctypes_test.so
+usr/lib/python2.7/lib-dynload/_curses.so
+usr/lib/python2.7/lib-dynload/_curses_panel.so
+usr/lib/python2.7/lib-dynload/_elementtree.so
+usr/lib/python2.7/lib-dynload/_functools.so
+usr/lib/python2.7/lib-dynload/_hashlib.so
+usr/lib/python2.7/lib-dynload/_heapq.so
+usr/lib/python2.7/lib-dynload/_hotshot.so
+usr/lib/python2.7/lib-dynload/_io.so
+usr/lib/python2.7/lib-dynload/_json.so
+usr/lib/python2.7/lib-dynload/_locale.so
+usr/lib/python2.7/lib-dynload/_lsprof.so
+usr/lib/python2.7/lib-dynload/_multibytecodec.so
+usr/lib/python2.7/lib-dynload/_multiprocessing.so
+usr/lib/python2.7/lib-dynload/_random.so
+usr/lib/python2.7/lib-dynload/_socket.so
+usr/lib/python2.7/lib-dynload/_sqlite3.so
+usr/lib/python2.7/lib-dynload/_ssl.so
+usr/lib/python2.7/lib-dynload/_struct.so
+usr/lib/python2.7/lib-dynload/_testcapi.so
+usr/lib/python2.7/lib-dynload/array.so
+usr/lib/python2.7/lib-dynload/audioop.so
+usr/lib/python2.7/lib-dynload/binascii.so
+usr/lib/python2.7/lib-dynload/bz2.so
+usr/lib/python2.7/lib-dynload/cPickle.so
+usr/lib/python2.7/lib-dynload/cStringIO.so
+usr/lib/python2.7/lib-dynload/cmath.so
+usr/lib/python2.7/lib-dynload/crypt.so
+usr/lib/python2.7/lib-dynload/datetime.so
+#usr/lib/python2.7/lib-dynload/dbm_failed.so
+usr/lib/python2.7/lib-dynload/fcntl.so
+usr/lib/python2.7/lib-dynload/future_builtins.so
+usr/lib/python2.7/lib-dynload/gdbm.so
+usr/lib/python2.7/lib-dynload/grp.so
+usr/lib/python2.7/lib-dynload/itertools.so
+#usr/lib/python2.7/lib-dynload/linuxaudiodev.so
+usr/lib/python2.7/lib-dynload/math.so
+usr/lib/python2.7/lib-dynload/mmap.so
+usr/lib/python2.7/lib-dynload/nis.so
+usr/lib/python2.7/lib-dynload/operator.so
+#usr/lib/python2.7/lib-dynload/ossaudiodev.so
+usr/lib/python2.7/lib-dynload/parser.so
+usr/lib/python2.7/lib-dynload/pyexpat.so
+usr/lib/python2.7/lib-dynload/readline.so
+usr/lib/python2.7/lib-dynload/resource.so
+usr/lib/python2.7/lib-dynload/select.so
+usr/lib/python2.7/lib-dynload/spwd.so
+usr/lib/python2.7/lib-dynload/strop.so
+usr/lib/python2.7/lib-dynload/syslog.so
+usr/lib/python2.7/lib-dynload/termios.so
+usr/lib/python2.7/lib-dynload/time.so
+usr/lib/python2.7/lib-dynload/unicodedata.so
+usr/lib/python2.7/lib-dynload/zlib.so
+#usr/lib/python2.7/lib-tk
+#usr/lib/python2.7/lib-tk/Canvas.py
+#usr/lib/python2.7/lib-tk/Canvas.pyc
+#usr/lib/python2.7/lib-tk/Canvas.pyo
+#usr/lib/python2.7/lib-tk/Dialog.py
+#usr/lib/python2.7/lib-tk/Dialog.pyc
+#usr/lib/python2.7/lib-tk/Dialog.pyo
+#usr/lib/python2.7/lib-tk/FileDialog.py
+#usr/lib/python2.7/lib-tk/FileDialog.pyc
+#usr/lib/python2.7/lib-tk/FileDialog.pyo
+#usr/lib/python2.7/lib-tk/FixTk.py
+#usr/lib/python2.7/lib-tk/FixTk.pyc
+#usr/lib/python2.7/lib-tk/FixTk.pyo
+#usr/lib/python2.7/lib-tk/ScrolledText.py
+#usr/lib/python2.7/lib-tk/ScrolledText.pyc
+#usr/lib/python2.7/lib-tk/ScrolledText.pyo
+#usr/lib/python2.7/lib-tk/SimpleDialog.py
+#usr/lib/python2.7/lib-tk/SimpleDialog.pyc
+#usr/lib/python2.7/lib-tk/SimpleDialog.pyo
+#usr/lib/python2.7/lib-tk/Tix.py
+#usr/lib/python2.7/lib-tk/Tix.pyc
+#usr/lib/python2.7/lib-tk/Tix.pyo
+#usr/lib/python2.7/lib-tk/Tkconstants.py
+#usr/lib/python2.7/lib-tk/Tkconstants.pyc
+#usr/lib/python2.7/lib-tk/Tkconstants.pyo
+#usr/lib/python2.7/lib-tk/Tkdnd.py
+#usr/lib/python2.7/lib-tk/Tkdnd.pyc
+#usr/lib/python2.7/lib-tk/Tkdnd.pyo
+#usr/lib/python2.7/lib-tk/Tkinter.py
+#usr/lib/python2.7/lib-tk/Tkinter.pyc
+#usr/lib/python2.7/lib-tk/Tkinter.pyo
+#usr/lib/python2.7/lib-tk/test
+#usr/lib/python2.7/lib-tk/test/README
+#usr/lib/python2.7/lib-tk/test/runtktests.py
+#usr/lib/python2.7/lib-tk/test/runtktests.pyc
+#usr/lib/python2.7/lib-tk/test/runtktests.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter
+#usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/__init__.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_font.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_geometry_managers.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_images.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_variables.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_widgets.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk
+#usr/lib/python2.7/lib-tk/test/test_ttk/__init__.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/__init__.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/__init__.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/support.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/support.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/support.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_extensions.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_extensions.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_extensions.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_functions.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_functions.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_functions.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_style.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_style.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_style.pyo
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.py
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.pyc
+#usr/lib/python2.7/lib-tk/test/test_ttk/test_widgets.pyo
+#usr/lib/python2.7/lib-tk/test/widget_tests.py
+#usr/lib/python2.7/lib-tk/test/widget_tests.pyc
+#usr/lib/python2.7/lib-tk/test/widget_tests.pyo
+#usr/lib/python2.7/lib-tk/tkColorChooser.py
+#usr/lib/python2.7/lib-tk/tkColorChooser.pyc
+#usr/lib/python2.7/lib-tk/tkColorChooser.pyo
+#usr/lib/python2.7/lib-tk/tkCommonDialog.py
+#usr/lib/python2.7/lib-tk/tkCommonDialog.pyc
+#usr/lib/python2.7/lib-tk/tkCommonDialog.pyo
+#usr/lib/python2.7/lib-tk/tkFileDialog.py
+#usr/lib/python2.7/lib-tk/tkFileDialog.pyc
+#usr/lib/python2.7/lib-tk/tkFileDialog.pyo
+#usr/lib/python2.7/lib-tk/tkFont.py
+#usr/lib/python2.7/lib-tk/tkFont.pyc
+#usr/lib/python2.7/lib-tk/tkFont.pyo
+#usr/lib/python2.7/lib-tk/tkMessageBox.py
+#usr/lib/python2.7/lib-tk/tkMessageBox.pyc
+#usr/lib/python2.7/lib-tk/tkMessageBox.pyo
+#usr/lib/python2.7/lib-tk/tkSimpleDialog.py
+#usr/lib/python2.7/lib-tk/tkSimpleDialog.pyc
+#usr/lib/python2.7/lib-tk/tkSimpleDialog.pyo
+#usr/lib/python2.7/lib-tk/ttk.py
+#usr/lib/python2.7/lib-tk/ttk.pyc
+#usr/lib/python2.7/lib-tk/ttk.pyo
+#usr/lib/python2.7/lib-tk/turtle.py
+#usr/lib/python2.7/lib-tk/turtle.pyc
+#usr/lib/python2.7/lib-tk/turtle.pyo
+#usr/lib/python2.7/lib2to3
+#usr/lib/python2.7/lib2to3/Grammar.txt
+#usr/lib/python2.7/lib2to3/Grammar2.7.10.final.0.pickle
+#usr/lib/python2.7/lib2to3/PatternGrammar.txt
+#usr/lib/python2.7/lib2to3/PatternGrammar2.7.10.final.0.pickle
+#usr/lib/python2.7/lib2to3/__init__.py
+#usr/lib/python2.7/lib2to3/__init__.pyc
+#usr/lib/python2.7/lib2to3/__init__.pyo
+#usr/lib/python2.7/lib2to3/__main__.py
+#usr/lib/python2.7/lib2to3/__main__.pyc
+#usr/lib/python2.7/lib2to3/__main__.pyo
+#usr/lib/python2.7/lib2to3/btm_matcher.py
+#usr/lib/python2.7/lib2to3/btm_matcher.pyc
+#usr/lib/python2.7/lib2to3/btm_matcher.pyo
+#usr/lib/python2.7/lib2to3/btm_utils.py
+#usr/lib/python2.7/lib2to3/btm_utils.pyc
+#usr/lib/python2.7/lib2to3/btm_utils.pyo
+#usr/lib/python2.7/lib2to3/fixer_base.py
+#usr/lib/python2.7/lib2to3/fixer_base.pyc
+#usr/lib/python2.7/lib2to3/fixer_base.pyo
+#usr/lib/python2.7/lib2to3/fixer_util.py
+#usr/lib/python2.7/lib2to3/fixer_util.pyc
+#usr/lib/python2.7/lib2to3/fixer_util.pyo
+#usr/lib/python2.7/lib2to3/fixes
+#usr/lib/python2.7/lib2to3/fixes/__init__.py
+#usr/lib/python2.7/lib2to3/fixes/__init__.pyc
+#usr/lib/python2.7/lib2to3/fixes/__init__.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_apply.py
+#usr/lib/python2.7/lib2to3/fixes/fix_apply.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_apply.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.py
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_asserts.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_basestring.py
+#usr/lib/python2.7/lib2to3/fixes/fix_basestring.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_basestring.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_buffer.py
+#usr/lib/python2.7/lib2to3/fixes/fix_buffer.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_buffer.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_callable.py
+#usr/lib/python2.7/lib2to3/fixes/fix_callable.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_callable.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_dict.py
+#usr/lib/python2.7/lib2to3/fixes/fix_dict.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_dict.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_except.py
+#usr/lib/python2.7/lib2to3/fixes/fix_except.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_except.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_exec.py
+#usr/lib/python2.7/lib2to3/fixes/fix_exec.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_exec.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_execfile.py
+#usr/lib/python2.7/lib2to3/fixes/fix_execfile.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_execfile.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_exitfunc.py
+#usr/lib/python2.7/lib2to3/fixes/fix_exitfunc.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_exitfunc.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_filter.py
+#usr/lib/python2.7/lib2to3/fixes/fix_filter.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_filter.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_funcattrs.py
+#usr/lib/python2.7/lib2to3/fixes/fix_funcattrs.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_funcattrs.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_future.py
+#usr/lib/python2.7/lib2to3/fixes/fix_future.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_future.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_getcwdu.py
+#usr/lib/python2.7/lib2to3/fixes/fix_getcwdu.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_getcwdu.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_has_key.py
+#usr/lib/python2.7/lib2to3/fixes/fix_has_key.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_has_key.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_idioms.py
+#usr/lib/python2.7/lib2to3/fixes/fix_idioms.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_idioms.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_import.py
+#usr/lib/python2.7/lib2to3/fixes/fix_import.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_import.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_imports.py
+#usr/lib/python2.7/lib2to3/fixes/fix_imports.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_imports.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_imports2.py
+#usr/lib/python2.7/lib2to3/fixes/fix_imports2.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_imports2.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_input.py
+#usr/lib/python2.7/lib2to3/fixes/fix_input.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_input.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_intern.py
+#usr/lib/python2.7/lib2to3/fixes/fix_intern.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_intern.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_isinstance.py
+#usr/lib/python2.7/lib2to3/fixes/fix_isinstance.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_isinstance.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools.py
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools_imports.py
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools_imports.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_itertools_imports.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_long.py
+#usr/lib/python2.7/lib2to3/fixes/fix_long.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_long.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_map.py
+#usr/lib/python2.7/lib2to3/fixes/fix_map.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_map.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_metaclass.py
+#usr/lib/python2.7/lib2to3/fixes/fix_metaclass.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_metaclass.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_methodattrs.py
+#usr/lib/python2.7/lib2to3/fixes/fix_methodattrs.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_methodattrs.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_ne.py
+#usr/lib/python2.7/lib2to3/fixes/fix_ne.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_ne.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_next.py
+#usr/lib/python2.7/lib2to3/fixes/fix_next.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_next.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_nonzero.py
+#usr/lib/python2.7/lib2to3/fixes/fix_nonzero.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_nonzero.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_numliterals.py
+#usr/lib/python2.7/lib2to3/fixes/fix_numliterals.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_numliterals.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_operator.py
+#usr/lib/python2.7/lib2to3/fixes/fix_operator.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_operator.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_paren.py
+#usr/lib/python2.7/lib2to3/fixes/fix_paren.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_paren.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_print.py
+#usr/lib/python2.7/lib2to3/fixes/fix_print.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_print.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_raise.py
+#usr/lib/python2.7/lib2to3/fixes/fix_raise.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_raise.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_raw_input.py
+#usr/lib/python2.7/lib2to3/fixes/fix_raw_input.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_raw_input.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_reduce.py
+#usr/lib/python2.7/lib2to3/fixes/fix_reduce.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_reduce.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_renames.py
+#usr/lib/python2.7/lib2to3/fixes/fix_renames.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_renames.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_repr.py
+#usr/lib/python2.7/lib2to3/fixes/fix_repr.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_repr.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_set_literal.py
+#usr/lib/python2.7/lib2to3/fixes/fix_set_literal.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_set_literal.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_standarderror.py
+#usr/lib/python2.7/lib2to3/fixes/fix_standarderror.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_standarderror.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_sys_exc.py
+#usr/lib/python2.7/lib2to3/fixes/fix_sys_exc.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_sys_exc.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_throw.py
+#usr/lib/python2.7/lib2to3/fixes/fix_throw.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_throw.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_tuple_params.py
+#usr/lib/python2.7/lib2to3/fixes/fix_tuple_params.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_tuple_params.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_types.py
+#usr/lib/python2.7/lib2to3/fixes/fix_types.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_types.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_unicode.py
+#usr/lib/python2.7/lib2to3/fixes/fix_unicode.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_unicode.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_urllib.py
+#usr/lib/python2.7/lib2to3/fixes/fix_urllib.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_urllib.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_ws_comma.py
+#usr/lib/python2.7/lib2to3/fixes/fix_ws_comma.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_ws_comma.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_xrange.py
+#usr/lib/python2.7/lib2to3/fixes/fix_xrange.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_xrange.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_xreadlines.py
+#usr/lib/python2.7/lib2to3/fixes/fix_xreadlines.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_xreadlines.pyo
+#usr/lib/python2.7/lib2to3/fixes/fix_zip.py
+#usr/lib/python2.7/lib2to3/fixes/fix_zip.pyc
+#usr/lib/python2.7/lib2to3/fixes/fix_zip.pyo
+#usr/lib/python2.7/lib2to3/main.py
+#usr/lib/python2.7/lib2to3/main.pyc
+#usr/lib/python2.7/lib2to3/main.pyo
+#usr/lib/python2.7/lib2to3/patcomp.py
+#usr/lib/python2.7/lib2to3/patcomp.pyc
+#usr/lib/python2.7/lib2to3/patcomp.pyo
+#usr/lib/python2.7/lib2to3/pgen2
+#usr/lib/python2.7/lib2to3/pgen2/__init__.py
+#usr/lib/python2.7/lib2to3/pgen2/__init__.pyc
+#usr/lib/python2.7/lib2to3/pgen2/__init__.pyo
+#usr/lib/python2.7/lib2to3/pgen2/conv.py
+#usr/lib/python2.7/lib2to3/pgen2/conv.pyc
+#usr/lib/python2.7/lib2to3/pgen2/conv.pyo
+#usr/lib/python2.7/lib2to3/pgen2/driver.py
+#usr/lib/python2.7/lib2to3/pgen2/driver.pyc
+#usr/lib/python2.7/lib2to3/pgen2/driver.pyo
+#usr/lib/python2.7/lib2to3/pgen2/grammar.py
+#usr/lib/python2.7/lib2to3/pgen2/grammar.pyc
+#usr/lib/python2.7/lib2to3/pgen2/grammar.pyo
+#usr/lib/python2.7/lib2to3/pgen2/literals.py
+#usr/lib/python2.7/lib2to3/pgen2/literals.pyc
+#usr/lib/python2.7/lib2to3/pgen2/literals.pyo
+#usr/lib/python2.7/lib2to3/pgen2/parse.py
+#usr/lib/python2.7/lib2to3/pgen2/parse.pyc
+#usr/lib/python2.7/lib2to3/pgen2/parse.pyo
+#usr/lib/python2.7/lib2to3/pgen2/pgen.py
+#usr/lib/python2.7/lib2to3/pgen2/pgen.pyc
+#usr/lib/python2.7/lib2to3/pgen2/pgen.pyo
+#usr/lib/python2.7/lib2to3/pgen2/token.py
+#usr/lib/python2.7/lib2to3/pgen2/token.pyc
+#usr/lib/python2.7/lib2to3/pgen2/token.pyo
+#usr/lib/python2.7/lib2to3/pgen2/tokenize.py
+#usr/lib/python2.7/lib2to3/pgen2/tokenize.pyc
+#usr/lib/python2.7/lib2to3/pgen2/tokenize.pyo
+#usr/lib/python2.7/lib2to3/pygram.py
+#usr/lib/python2.7/lib2to3/pygram.pyc
+#usr/lib/python2.7/lib2to3/pygram.pyo
+#usr/lib/python2.7/lib2to3/pytree.py
+#usr/lib/python2.7/lib2to3/pytree.pyc
+#usr/lib/python2.7/lib2to3/pytree.pyo
+#usr/lib/python2.7/lib2to3/refactor.py
+#usr/lib/python2.7/lib2to3/refactor.pyc
+#usr/lib/python2.7/lib2to3/refactor.pyo
+#usr/lib/python2.7/lib2to3/tests
+#usr/lib/python2.7/lib2to3/tests/__init__.py
+#usr/lib/python2.7/lib2to3/tests/__init__.pyc
+#usr/lib/python2.7/lib2to3/tests/__init__.pyo
+#usr/lib/python2.7/lib2to3/tests/data
+#usr/lib/python2.7/lib2to3/tests/data/README
+#usr/lib/python2.7/lib2to3/tests/data/bom.py
+#usr/lib/python2.7/lib2to3/tests/data/crlf.py
+#usr/lib/python2.7/lib2to3/tests/data/different_encoding.py
+#usr/lib/python2.7/lib2to3/tests/data/false_encoding.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers
+#usr/lib/python2.7/lib2to3/tests/data/fixers/bad_order.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/__init__.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_explicit.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_first.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_last.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_parrot.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/myfixes/fix_preorder.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/no_fixer_cls.py
+#usr/lib/python2.7/lib2to3/tests/data/fixers/parrot_example.py
+#usr/lib/python2.7/lib2to3/tests/data/infinite_recursion.py
+#usr/lib/python2.7/lib2to3/tests/data/py2_test_grammar.py
+#usr/lib/python2.7/lib2to3/tests/data/py3_test_grammar.py
+#usr/lib/python2.7/lib2to3/tests/pytree_idempotency.py
+#usr/lib/python2.7/lib2to3/tests/pytree_idempotency.pyc
+#usr/lib/python2.7/lib2to3/tests/pytree_idempotency.pyo
+#usr/lib/python2.7/lib2to3/tests/support.py
+#usr/lib/python2.7/lib2to3/tests/support.pyc
+#usr/lib/python2.7/lib2to3/tests/support.pyo
+#usr/lib/python2.7/lib2to3/tests/test_all_fixers.py
+#usr/lib/python2.7/lib2to3/tests/test_all_fixers.pyc
+#usr/lib/python2.7/lib2to3/tests/test_all_fixers.pyo
+#usr/lib/python2.7/lib2to3/tests/test_fixers.py
+#usr/lib/python2.7/lib2to3/tests/test_fixers.pyc
+#usr/lib/python2.7/lib2to3/tests/test_fixers.pyo
+#usr/lib/python2.7/lib2to3/tests/test_main.py
+#usr/lib/python2.7/lib2to3/tests/test_main.pyc
+#usr/lib/python2.7/lib2to3/tests/test_main.pyo
+#usr/lib/python2.7/lib2to3/tests/test_parser.py
+#usr/lib/python2.7/lib2to3/tests/test_parser.pyc
+#usr/lib/python2.7/lib2to3/tests/test_parser.pyo
+#usr/lib/python2.7/lib2to3/tests/test_pytree.py
+#usr/lib/python2.7/lib2to3/tests/test_pytree.pyc
+#usr/lib/python2.7/lib2to3/tests/test_pytree.pyo
+#usr/lib/python2.7/lib2to3/tests/test_refactor.py
+#usr/lib/python2.7/lib2to3/tests/test_refactor.pyc
+#usr/lib/python2.7/lib2to3/tests/test_refactor.pyo
+#usr/lib/python2.7/lib2to3/tests/test_util.py
+#usr/lib/python2.7/lib2to3/tests/test_util.pyc
+#usr/lib/python2.7/lib2to3/tests/test_util.pyo
+#usr/lib/python2.7/linecache.py
+usr/lib/python2.7/linecache.pyc
+#usr/lib/python2.7/linecache.pyo
+#usr/lib/python2.7/locale.py
+usr/lib/python2.7/locale.pyc
+#usr/lib/python2.7/locale.pyo
+#usr/lib/python2.7/logging
+#usr/lib/python2.7/logging/__init__.py
+usr/lib/python2.7/logging/__init__.pyc
+#usr/lib/python2.7/logging/__init__.pyo
+#usr/lib/python2.7/logging/config.py
+usr/lib/python2.7/logging/config.pyc
+#usr/lib/python2.7/logging/config.pyo
+#usr/lib/python2.7/logging/handlers.py
+usr/lib/python2.7/logging/handlers.pyc
+#usr/lib/python2.7/logging/handlers.pyo
+#usr/lib/python2.7/macpath.py
+usr/lib/python2.7/macpath.pyc
+#usr/lib/python2.7/macpath.pyo
+#usr/lib/python2.7/macurl2path.py
+usr/lib/python2.7/macurl2path.pyc
+#usr/lib/python2.7/macurl2path.pyo
+#usr/lib/python2.7/mailbox.py
+usr/lib/python2.7/mailbox.pyc
+#usr/lib/python2.7/mailbox.pyo
+#usr/lib/python2.7/mailcap.py
+usr/lib/python2.7/mailcap.pyc
+#usr/lib/python2.7/mailcap.pyo
+#usr/lib/python2.7/markupbase.py
+usr/lib/python2.7/markupbase.pyc
+#usr/lib/python2.7/markupbase.pyo
+#usr/lib/python2.7/md5.py
+usr/lib/python2.7/md5.pyc
+#usr/lib/python2.7/md5.pyo
+#usr/lib/python2.7/mhlib.py
+usr/lib/python2.7/mhlib.pyc
+#usr/lib/python2.7/mhlib.pyo
+#usr/lib/python2.7/mimetools.py
+usr/lib/python2.7/mimetools.pyc
+#usr/lib/python2.7/mimetools.pyo
+#usr/lib/python2.7/mimetypes.py
+usr/lib/python2.7/mimetypes.pyc
+#usr/lib/python2.7/mimetypes.pyo
+#usr/lib/python2.7/mimify.py
+usr/lib/python2.7/mimify.pyc
+#usr/lib/python2.7/mimify.pyo
+#usr/lib/python2.7/modulefinder.py
+usr/lib/python2.7/modulefinder.pyc
+#usr/lib/python2.7/modulefinder.pyo
+#usr/lib/python2.7/multifile.py
+usr/lib/python2.7/multifile.pyc
+#usr/lib/python2.7/multifile.pyo
+#usr/lib/python2.7/multiprocessing
+#usr/lib/python2.7/multiprocessing/__init__.py
+usr/lib/python2.7/multiprocessing/__init__.pyc
+#usr/lib/python2.7/multiprocessing/__init__.pyo
+#usr/lib/python2.7/multiprocessing/connection.py
+usr/lib/python2.7/multiprocessing/connection.pyc
+#usr/lib/python2.7/multiprocessing/connection.pyo
+#usr/lib/python2.7/multiprocessing/dummy
+#usr/lib/python2.7/multiprocessing/dummy/__init__.py
+usr/lib/python2.7/multiprocessing/dummy/__init__.pyc
+#usr/lib/python2.7/multiprocessing/dummy/__init__.pyo
+#usr/lib/python2.7/multiprocessing/dummy/connection.py
+usr/lib/python2.7/multiprocessing/dummy/connection.pyc
+#usr/lib/python2.7/multiprocessing/dummy/connection.pyo
+#usr/lib/python2.7/multiprocessing/forking.py
+usr/lib/python2.7/multiprocessing/forking.pyc
+#usr/lib/python2.7/multiprocessing/forking.pyo
+#usr/lib/python2.7/multiprocessing/heap.py
+usr/lib/python2.7/multiprocessing/heap.pyc
+#usr/lib/python2.7/multiprocessing/heap.pyo
+#usr/lib/python2.7/multiprocessing/managers.py
+usr/lib/python2.7/multiprocessing/managers.pyc
+#usr/lib/python2.7/multiprocessing/managers.pyo
+#usr/lib/python2.7/multiprocessing/pool.py
+usr/lib/python2.7/multiprocessing/pool.pyc
+#usr/lib/python2.7/multiprocessing/pool.pyo
+#usr/lib/python2.7/multiprocessing/process.py
+usr/lib/python2.7/multiprocessing/process.pyc
+#usr/lib/python2.7/multiprocessing/process.pyo
+#usr/lib/python2.7/multiprocessing/queues.py
+usr/lib/python2.7/multiprocessing/queues.pyc
+#usr/lib/python2.7/multiprocessing/queues.pyo
+#usr/lib/python2.7/multiprocessing/reduction.py
+usr/lib/python2.7/multiprocessing/reduction.pyc
+#usr/lib/python2.7/multiprocessing/reduction.pyo
+#usr/lib/python2.7/multiprocessing/sharedctypes.py
+usr/lib/python2.7/multiprocessing/sharedctypes.pyc
+#usr/lib/python2.7/multiprocessing/sharedctypes.pyo
+#usr/lib/python2.7/multiprocessing/synchronize.py
+usr/lib/python2.7/multiprocessing/synchronize.pyc
+#usr/lib/python2.7/multiprocessing/synchronize.pyo
+#usr/lib/python2.7/multiprocessing/util.py
+usr/lib/python2.7/multiprocessing/util.pyc
+#usr/lib/python2.7/multiprocessing/util.pyo
+#usr/lib/python2.7/mutex.py
+usr/lib/python2.7/mutex.pyc
+#usr/lib/python2.7/mutex.pyo
+#usr/lib/python2.7/netrc.py
+usr/lib/python2.7/netrc.pyc
+#usr/lib/python2.7/netrc.pyo
+#usr/lib/python2.7/new.py
+usr/lib/python2.7/new.pyc
+#usr/lib/python2.7/new.pyo
+#usr/lib/python2.7/nntplib.py
+usr/lib/python2.7/nntplib.pyc
+#usr/lib/python2.7/nntplib.pyo
+#usr/lib/python2.7/ntpath.py
+usr/lib/python2.7/ntpath.pyc
+#usr/lib/python2.7/ntpath.pyo
+#usr/lib/python2.7/nturl2path.py
+usr/lib/python2.7/nturl2path.pyc
+#usr/lib/python2.7/nturl2path.pyo
+#usr/lib/python2.7/numbers.py
+usr/lib/python2.7/numbers.pyc
+#usr/lib/python2.7/numbers.pyo
+#usr/lib/python2.7/opcode.py
+usr/lib/python2.7/opcode.pyc
+#usr/lib/python2.7/opcode.pyo
+#usr/lib/python2.7/optparse.py
+usr/lib/python2.7/optparse.pyc
+#usr/lib/python2.7/optparse.pyo
+#usr/lib/python2.7/os.py
+usr/lib/python2.7/os.pyc
+#usr/lib/python2.7/os.pyo
+#usr/lib/python2.7/os2emxpath.py
+usr/lib/python2.7/os2emxpath.pyc
+#usr/lib/python2.7/os2emxpath.pyo
+#usr/lib/python2.7/pdb.doc
+#usr/lib/python2.7/pdb.py
+usr/lib/python2.7/pdb.pyc
+#usr/lib/python2.7/pdb.pyo
+#usr/lib/python2.7/pickle.py
+usr/lib/python2.7/pickle.pyc
+#usr/lib/python2.7/pickle.pyo
+#usr/lib/python2.7/pickletools.py
+usr/lib/python2.7/pickletools.pyc
+#usr/lib/python2.7/pickletools.pyo
+#usr/lib/python2.7/pipes.py
+usr/lib/python2.7/pipes.pyc
+#usr/lib/python2.7/pipes.pyo
+#usr/lib/python2.7/pkgutil.py
+usr/lib/python2.7/pkgutil.pyc
+#usr/lib/python2.7/pkgutil.pyo
+#usr/lib/python2.7/plat-linux2
+#usr/lib/python2.7/plat-linux2/CDROM.py
+usr/lib/python2.7/plat-linux2/CDROM.pyc
+#usr/lib/python2.7/plat-linux2/CDROM.pyo
+#usr/lib/python2.7/plat-linux2/DLFCN.py
+usr/lib/python2.7/plat-linux2/DLFCN.pyc
+#usr/lib/python2.7/plat-linux2/DLFCN.pyo
+#usr/lib/python2.7/plat-linux2/IN.py
+usr/lib/python2.7/plat-linux2/IN.pyc
+#usr/lib/python2.7/plat-linux2/IN.pyo
+#usr/lib/python2.7/plat-linux2/TYPES.py
+usr/lib/python2.7/plat-linux2/TYPES.pyc
+#usr/lib/python2.7/plat-linux2/TYPES.pyo
+#usr/lib/python2.7/plat-linux2/regen
+#usr/lib/python2.7/platform.py
+usr/lib/python2.7/platform.pyc
+#usr/lib/python2.7/platform.pyo
+#usr/lib/python2.7/plistlib.py
+usr/lib/python2.7/plistlib.pyc
+#usr/lib/python2.7/plistlib.pyo
+#usr/lib/python2.7/popen2.py
+usr/lib/python2.7/popen2.pyc
+#usr/lib/python2.7/popen2.pyo
+#usr/lib/python2.7/poplib.py
+usr/lib/python2.7/poplib.pyc
+#usr/lib/python2.7/poplib.pyo
+#usr/lib/python2.7/posixfile.py
+usr/lib/python2.7/posixfile.pyc
+#usr/lib/python2.7/posixfile.pyo
+#usr/lib/python2.7/posixpath.py
+usr/lib/python2.7/posixpath.pyc
+#usr/lib/python2.7/posixpath.pyo
+#usr/lib/python2.7/pprint.py
+usr/lib/python2.7/pprint.pyc
+#usr/lib/python2.7/pprint.pyo
+#usr/lib/python2.7/profile.py
+usr/lib/python2.7/profile.pyc
+#usr/lib/python2.7/profile.pyo
+#usr/lib/python2.7/pstats.py
+usr/lib/python2.7/pstats.pyc
+#usr/lib/python2.7/pstats.pyo
+#usr/lib/python2.7/pty.py
+usr/lib/python2.7/pty.pyc
+#usr/lib/python2.7/pty.pyo
+#usr/lib/python2.7/py_compile.py
+usr/lib/python2.7/py_compile.pyc
+#usr/lib/python2.7/py_compile.pyo
+usr/lib/python2.7/pyclbr.py
+#usr/lib/python2.7/pyclbr.pyc
+#usr/lib/python2.7/pyclbr.pyo
+#usr/lib/python2.7/pydoc.py
+usr/lib/python2.7/pydoc.pyc
+#usr/lib/python2.7/pydoc.pyo
+#usr/lib/python2.7/pydoc_data
+#usr/lib/python2.7/pydoc_data/__init__.py
+usr/lib/python2.7/pydoc_data/__init__.pyc
+#usr/lib/python2.7/pydoc_data/__init__.pyo
+#usr/lib/python2.7/pydoc_data/topics.py
+usr/lib/python2.7/pydoc_data/topics.pyc
+#usr/lib/python2.7/pydoc_data/topics.pyo
+#usr/lib/python2.7/quopri.py
+usr/lib/python2.7/quopri.pyc
+#usr/lib/python2.7/quopri.pyo
+#usr/lib/python2.7/random.py
+usr/lib/python2.7/random.pyc
+#usr/lib/python2.7/random.pyo
+#usr/lib/python2.7/re.py
+usr/lib/python2.7/re.pyc
+#usr/lib/python2.7/re.pyo
+#usr/lib/python2.7/repr.py
+usr/lib/python2.7/repr.pyc
+#usr/lib/python2.7/repr.pyo
+#usr/lib/python2.7/rexec.py
+usr/lib/python2.7/rexec.pyc
+#usr/lib/python2.7/rexec.pyo
+#usr/lib/python2.7/rfc822.py
+usr/lib/python2.7/rfc822.pyc
+#usr/lib/python2.7/rfc822.pyo
+#usr/lib/python2.7/rlcompleter.py
+usr/lib/python2.7/rlcompleter.pyc
+#usr/lib/python2.7/rlcompleter.pyo
+#usr/lib/python2.7/robotparser.py
+usr/lib/python2.7/robotparser.pyc
+#usr/lib/python2.7/robotparser.pyo
+#usr/lib/python2.7/runpy.py
+usr/lib/python2.7/runpy.pyc
+#usr/lib/python2.7/runpy.pyo
+#usr/lib/python2.7/sched.py
+usr/lib/python2.7/sched.pyc
+#usr/lib/python2.7/sched.pyo
+#usr/lib/python2.7/sets.py
+usr/lib/python2.7/sets.pyc
+#usr/lib/python2.7/sets.pyo
+#usr/lib/python2.7/sgmllib.py
+usr/lib/python2.7/sgmllib.pyc
+#usr/lib/python2.7/sgmllib.pyo
+#usr/lib/python2.7/sha.py
+usr/lib/python2.7/sha.pyc
+#usr/lib/python2.7/sha.pyo
+#usr/lib/python2.7/shelve.py
+usr/lib/python2.7/shelve.pyc
+#usr/lib/python2.7/shelve.pyo
+#usr/lib/python2.7/shlex.py
+usr/lib/python2.7/shlex.pyc
+#usr/lib/python2.7/shlex.pyo
+#usr/lib/python2.7/shutil.py
+usr/lib/python2.7/shutil.pyc
+#usr/lib/python2.7/shutil.pyo
+#usr/lib/python2.7/site-packages
+usr/lib/python2.7/site-packages/README
+#usr/lib/python2.7/site.py
+usr/lib/python2.7/site.pyc
+#usr/lib/python2.7/site.pyo
+#usr/lib/python2.7/smtpd.py
+usr/lib/python2.7/smtpd.pyc
+#usr/lib/python2.7/smtpd.pyo
+#usr/lib/python2.7/smtplib.py
+usr/lib/python2.7/smtplib.pyc
+#usr/lib/python2.7/smtplib.pyo
+#usr/lib/python2.7/sndhdr.py
+usr/lib/python2.7/sndhdr.pyc
+#usr/lib/python2.7/sndhdr.pyo
+#usr/lib/python2.7/socket.py
+usr/lib/python2.7/socket.pyc
+#usr/lib/python2.7/socket.pyo
+#usr/lib/python2.7/sqlite3
+#usr/lib/python2.7/sqlite3/__init__.py
+usr/lib/python2.7/sqlite3/__init__.pyc
+#usr/lib/python2.7/sqlite3/__init__.pyo
+#usr/lib/python2.7/sqlite3/dbapi2.py
+usr/lib/python2.7/sqlite3/dbapi2.pyc
+#usr/lib/python2.7/sqlite3/dbapi2.pyo
+#usr/lib/python2.7/sqlite3/dump.py
+usr/lib/python2.7/sqlite3/dump.pyc
+#usr/lib/python2.7/sqlite3/dump.pyo
+#usr/lib/python2.7/sqlite3/test
+#usr/lib/python2.7/sqlite3/test/__init__.py
+#usr/lib/python2.7/sqlite3/test/__init__.pyc
+#usr/lib/python2.7/sqlite3/test/__init__.pyo
+#usr/lib/python2.7/sqlite3/test/dbapi.py
+#usr/lib/python2.7/sqlite3/test/dbapi.pyc
+#usr/lib/python2.7/sqlite3/test/dbapi.pyo
+#usr/lib/python2.7/sqlite3/test/dump.py
+#usr/lib/python2.7/sqlite3/test/dump.pyc
+#usr/lib/python2.7/sqlite3/test/dump.pyo
+#usr/lib/python2.7/sqlite3/test/factory.py
+#usr/lib/python2.7/sqlite3/test/factory.pyc
+#usr/lib/python2.7/sqlite3/test/factory.pyo
+#usr/lib/python2.7/sqlite3/test/hooks.py
+#usr/lib/python2.7/sqlite3/test/hooks.pyc
+#usr/lib/python2.7/sqlite3/test/hooks.pyo
+#usr/lib/python2.7/sqlite3/test/py25tests.py
+#usr/lib/python2.7/sqlite3/test/py25tests.pyc
+#usr/lib/python2.7/sqlite3/test/py25tests.pyo
+#usr/lib/python2.7/sqlite3/test/regression.py
+#usr/lib/python2.7/sqlite3/test/regression.pyc
+#usr/lib/python2.7/sqlite3/test/regression.pyo
+#usr/lib/python2.7/sqlite3/test/transactions.py
+#usr/lib/python2.7/sqlite3/test/transactions.pyc
+#usr/lib/python2.7/sqlite3/test/transactions.pyo
+#usr/lib/python2.7/sqlite3/test/types.py
+#usr/lib/python2.7/sqlite3/test/types.pyc
+#usr/lib/python2.7/sqlite3/test/types.pyo
+#usr/lib/python2.7/sqlite3/test/userfunctions.py
+#usr/lib/python2.7/sqlite3/test/userfunctions.pyc
+#usr/lib/python2.7/sqlite3/test/userfunctions.pyo
+#usr/lib/python2.7/sre.py
+usr/lib/python2.7/sre.pyc
+#usr/lib/python2.7/sre.pyo
+#usr/lib/python2.7/sre_compile.py
+usr/lib/python2.7/sre_compile.pyc
+#usr/lib/python2.7/sre_compile.pyo
+#usr/lib/python2.7/sre_constants.py
+usr/lib/python2.7/sre_constants.pyc
+#usr/lib/python2.7/sre_constants.pyo
+#usr/lib/python2.7/sre_parse.py
+usr/lib/python2.7/sre_parse.pyc
+#usr/lib/python2.7/sre_parse.pyo
+#usr/lib/python2.7/ssl.py
+usr/lib/python2.7/ssl.pyc
+#usr/lib/python2.7/ssl.pyo
+#usr/lib/python2.7/stat.py
+usr/lib/python2.7/stat.pyc
+#usr/lib/python2.7/stat.pyo
+#usr/lib/python2.7/statvfs.py
+usr/lib/python2.7/statvfs.pyc
+#usr/lib/python2.7/statvfs.pyo
+#usr/lib/python2.7/string.py
+usr/lib/python2.7/string.pyc
+#usr/lib/python2.7/string.pyo
+#usr/lib/python2.7/stringold.py
+usr/lib/python2.7/stringold.pyc
+#usr/lib/python2.7/stringold.pyo
+#usr/lib/python2.7/stringprep.py
+usr/lib/python2.7/stringprep.pyc
+#usr/lib/python2.7/stringprep.pyo
+#usr/lib/python2.7/struct.py
+usr/lib/python2.7/struct.pyc
+#usr/lib/python2.7/struct.pyo
+#usr/lib/python2.7/subprocess.py
+usr/lib/python2.7/subprocess.pyc
+#usr/lib/python2.7/subprocess.pyo
+#usr/lib/python2.7/sunau.py
+usr/lib/python2.7/sunau.pyc
+#usr/lib/python2.7/sunau.pyo
+#usr/lib/python2.7/sunaudio.py
+usr/lib/python2.7/sunaudio.pyc
+#usr/lib/python2.7/sunaudio.pyo
+#usr/lib/python2.7/symbol.py
+usr/lib/python2.7/symbol.pyc
+#usr/lib/python2.7/symbol.pyo
+#usr/lib/python2.7/symtable.py
+usr/lib/python2.7/symtable.pyc
+#usr/lib/python2.7/symtable.pyo
+#usr/lib/python2.7/sysconfig.py
+usr/lib/python2.7/sysconfig.pyc
+#usr/lib/python2.7/sysconfig.pyo
+#usr/lib/python2.7/tabnanny.py
+usr/lib/python2.7/tabnanny.pyc
+#usr/lib/python2.7/tabnanny.pyo
+#usr/lib/python2.7/tarfile.py
+usr/lib/python2.7/tarfile.pyc
+#usr/lib/python2.7/tarfile.pyo
+#usr/lib/python2.7/telnetlib.py
+usr/lib/python2.7/telnetlib.pyc
+#usr/lib/python2.7/telnetlib.pyo
+#usr/lib/python2.7/tempfile.py
+usr/lib/python2.7/tempfile.pyc
+#usr/lib/python2.7/tempfile.pyo
+#usr/lib/python2.7/test
+#usr/lib/python2.7/test/185test.db
+#usr/lib/python2.7/test/Sine-1000Hz-300ms.aif
+#usr/lib/python2.7/test/__init__.py
+#usr/lib/python2.7/test/__init__.pyc
+#usr/lib/python2.7/test/__init__.pyo
+#usr/lib/python2.7/test/_mock_backport.py
+#usr/lib/python2.7/test/_mock_backport.pyc
+#usr/lib/python2.7/test/_mock_backport.pyo
+#usr/lib/python2.7/test/audiodata
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm16.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm24.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm24.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm32.wav
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.aiff
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.au
+#usr/lib/python2.7/test/audiodata/pluck-pcm8.wav
+#usr/lib/python2.7/test/audiodata/pluck-ulaw.aifc
+#usr/lib/python2.7/test/audiodata/pluck-ulaw.au
+#usr/lib/python2.7/test/audiotest.au
+#usr/lib/python2.7/test/audiotests.py
+#usr/lib/python2.7/test/audiotests.pyc
+#usr/lib/python2.7/test/audiotests.pyo
+#usr/lib/python2.7/test/autotest.py
+#usr/lib/python2.7/test/autotest.pyc
+#usr/lib/python2.7/test/autotest.pyo
+#usr/lib/python2.7/test/bad_coding.py
+#usr/lib/python2.7/test/bad_coding2.py
+#usr/lib/python2.7/test/bad_coding3.py
+#usr/lib/python2.7/test/badcert.pem
+#usr/lib/python2.7/test/badkey.pem
+#usr/lib/python2.7/test/badsyntax_future3.py
+#usr/lib/python2.7/test/badsyntax_future4.py
+#usr/lib/python2.7/test/badsyntax_future5.py
+#usr/lib/python2.7/test/badsyntax_future6.py
+#usr/lib/python2.7/test/badsyntax_future7.py
+#usr/lib/python2.7/test/badsyntax_future8.py
+#usr/lib/python2.7/test/badsyntax_future9.py
+#usr/lib/python2.7/test/badsyntax_nocaret.py
+#usr/lib/python2.7/test/buffer_tests.py
+#usr/lib/python2.7/test/buffer_tests.pyc
+#usr/lib/python2.7/test/buffer_tests.pyo
+#usr/lib/python2.7/test/capath
+#usr/lib/python2.7/test/capath/4e1295a3.0
+#usr/lib/python2.7/test/capath/5ed36f99.0
+#usr/lib/python2.7/test/capath/6e88d7b8.0
+#usr/lib/python2.7/test/capath/99d0fa06.0
+#usr/lib/python2.7/test/cfgparser.1
+#usr/lib/python2.7/test/check_soundcard.vbs
+#usr/lib/python2.7/test/cjkencodings
+#usr/lib/python2.7/test/cjkencodings/big5-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/big5.txt
+#usr/lib/python2.7/test/cjkencodings/big5hkscs-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/big5hkscs.txt
+#usr/lib/python2.7/test/cjkencodings/cp949-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/cp949.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jisx0213-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jisx0213.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jp-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/euc_jp.txt
+#usr/lib/python2.7/test/cjkencodings/euc_kr-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/euc_kr.txt
+#usr/lib/python2.7/test/cjkencodings/gb18030-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/gb18030.txt
+#usr/lib/python2.7/test/cjkencodings/gb2312-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/gb2312.txt
+#usr/lib/python2.7/test/cjkencodings/gbk-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/gbk.txt
+#usr/lib/python2.7/test/cjkencodings/hz-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/hz.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_jp-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_jp.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_kr-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/iso2022_kr.txt
+#usr/lib/python2.7/test/cjkencodings/johab-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/johab.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jis-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jis.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jisx0213-utf8.txt
+#usr/lib/python2.7/test/cjkencodings/shift_jisx0213.txt
+#usr/lib/python2.7/test/cmath_testcases.txt
+#usr/lib/python2.7/test/curses_tests.py
+#usr/lib/python2.7/test/curses_tests.pyc
+#usr/lib/python2.7/test/curses_tests.pyo
+#usr/lib/python2.7/test/data
+#usr/lib/python2.7/test/data/README
+#usr/lib/python2.7/test/decimaltestdata
+#usr/lib/python2.7/test/decimaltestdata/abs.decTest
+#usr/lib/python2.7/test/decimaltestdata/add.decTest
+#usr/lib/python2.7/test/decimaltestdata/and.decTest
+#usr/lib/python2.7/test/decimaltestdata/base.decTest
+#usr/lib/python2.7/test/decimaltestdata/clamp.decTest
+#usr/lib/python2.7/test/decimaltestdata/class.decTest
+#usr/lib/python2.7/test/decimaltestdata/compare.decTest
+#usr/lib/python2.7/test/decimaltestdata/comparetotal.decTest
+#usr/lib/python2.7/test/decimaltestdata/comparetotmag.decTest
+#usr/lib/python2.7/test/decimaltestdata/copy.decTest
+#usr/lib/python2.7/test/decimaltestdata/copyabs.decTest
+#usr/lib/python2.7/test/decimaltestdata/copynegate.decTest
+#usr/lib/python2.7/test/decimaltestdata/copysign.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddAdd.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddAnd.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddBase.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCanonical.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddClass.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompare.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompareSig.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompareTotal.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCompareTotalMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopy.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopyAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopyNegate.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddCopySign.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddDivide.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddDivideInt.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddEncode.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddFMA.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddInvert.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddLogB.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMax.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMaxMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMin.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMinMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddMultiply.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddNextMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddNextPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddNextToward.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddOr.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddQuantize.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddReduce.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddRemainder.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddRemainderNear.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddRotate.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddSameQuantum.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddScaleB.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddShift.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddSubtract.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddToIntegral.decTest
+#usr/lib/python2.7/test/decimaltestdata/ddXor.decTest
+#usr/lib/python2.7/test/decimaltestdata/decDouble.decTest
+#usr/lib/python2.7/test/decimaltestdata/decQuad.decTest
+#usr/lib/python2.7/test/decimaltestdata/decSingle.decTest
+#usr/lib/python2.7/test/decimaltestdata/divide.decTest
+#usr/lib/python2.7/test/decimaltestdata/divideint.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqAdd.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqAnd.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqBase.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCanonical.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqClass.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompare.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompareSig.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompareTotal.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCompareTotalMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopy.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopyAbs.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopyNegate.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqCopySign.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqDivide.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqDivideInt.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqEncode.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqFMA.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqInvert.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqLogB.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMax.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMaxMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMin.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMinMag.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqMultiply.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqNextMinus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqNextPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqNextToward.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqOr.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqPlus.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqQuantize.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqReduce.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqRemainder.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqRemainderNear.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqRotate.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqSameQuantum.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqScaleB.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqShift.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqSubtract.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqToIntegral.decTest
+#usr/lib/python2.7/test/decimaltestdata/dqXor.decTest
+#usr/lib/python2.7/test/decimaltestdata/dsBase.decTest
+#usr/lib/python2.7/test/decimaltestdata/dsEncode.decTest
+#usr/lib/python2.7/test/decimaltestdata/exp.decTest
+#usr/lib/python2.7/test/decimaltestdata/extra.decTest
+#usr/lib/python2.7/test/decimaltestdata/fma.decTest
+#usr/lib/python2.7/test/decimaltestdata/inexact.decTest
+#usr/lib/python2.7/test/decimaltestdata/invert.decTest
+#usr/lib/python2.7/test/decimaltestdata/ln.decTest
+#usr/lib/python2.7/test/decimaltestdata/log10.decTest
+#usr/lib/python2.7/test/decimaltestdata/logb.decTest
+#usr/lib/python2.7/test/decimaltestdata/max.decTest
+#usr/lib/python2.7/test/decimaltestdata/maxmag.decTest
+#usr/lib/python2.7/test/decimaltestdata/min.decTest
+#usr/lib/python2.7/test/decimaltestdata/minmag.decTest
+#usr/lib/python2.7/test/decimaltestdata/minus.decTest
+#usr/lib/python2.7/test/decimaltestdata/multiply.decTest
+#usr/lib/python2.7/test/decimaltestdata/nextminus.decTest
+#usr/lib/python2.7/test/decimaltestdata/nextplus.decTest
+#usr/lib/python2.7/test/decimaltestdata/nexttoward.decTest
+#usr/lib/python2.7/test/decimaltestdata/or.decTest
+#usr/lib/python2.7/test/decimaltestdata/plus.decTest
+#usr/lib/python2.7/test/decimaltestdata/power.decTest
+#usr/lib/python2.7/test/decimaltestdata/powersqrt.decTest
+#usr/lib/python2.7/test/decimaltestdata/quantize.decTest
+#usr/lib/python2.7/test/decimaltestdata/randomBound32.decTest
+#usr/lib/python2.7/test/decimaltestdata/randoms.decTest
+#usr/lib/python2.7/test/decimaltestdata/reduce.decTest
+#usr/lib/python2.7/test/decimaltestdata/remainder.decTest
+#usr/lib/python2.7/test/decimaltestdata/remainderNear.decTest
+#usr/lib/python2.7/test/decimaltestdata/rescale.decTest
+#usr/lib/python2.7/test/decimaltestdata/rotate.decTest
+#usr/lib/python2.7/test/decimaltestdata/rounding.decTest
+#usr/lib/python2.7/test/decimaltestdata/samequantum.decTest
+#usr/lib/python2.7/test/decimaltestdata/scaleb.decTest
+#usr/lib/python2.7/test/decimaltestdata/shift.decTest
+#usr/lib/python2.7/test/decimaltestdata/squareroot.decTest
+#usr/lib/python2.7/test/decimaltestdata/subtract.decTest
+#usr/lib/python2.7/test/decimaltestdata/testall.decTest
+#usr/lib/python2.7/test/decimaltestdata/tointegral.decTest
+#usr/lib/python2.7/test/decimaltestdata/tointegralx.decTest
+#usr/lib/python2.7/test/decimaltestdata/xor.decTest
+#usr/lib/python2.7/test/dh1024.pem
+#usr/lib/python2.7/test/doctest_aliases.py
+#usr/lib/python2.7/test/doctest_aliases.pyc
+#usr/lib/python2.7/test/doctest_aliases.pyo
+#usr/lib/python2.7/test/double_const.py
+#usr/lib/python2.7/test/double_const.pyc
+#usr/lib/python2.7/test/double_const.pyo
+#usr/lib/python2.7/test/empty.vbs
+#usr/lib/python2.7/test/exception_hierarchy.txt
+#usr/lib/python2.7/test/floating_points.txt
+#usr/lib/python2.7/test/fork_wait.py
+#usr/lib/python2.7/test/fork_wait.pyc
+#usr/lib/python2.7/test/fork_wait.pyo
+#usr/lib/python2.7/test/formatfloat_testcases.txt
+#usr/lib/python2.7/test/gdb_sample.py
+#usr/lib/python2.7/test/gdb_sample.pyc
+#usr/lib/python2.7/test/gdb_sample.pyo
+#usr/lib/python2.7/test/greyrgb.uue
+#usr/lib/python2.7/test/https_svn_python_org_root.pem
+#usr/lib/python2.7/test/ieee754.txt
+#usr/lib/python2.7/test/imghdrdata
+#usr/lib/python2.7/test/imghdrdata/python.bmp
+#usr/lib/python2.7/test/imghdrdata/python.gif
+#usr/lib/python2.7/test/imghdrdata/python.jpg
+#usr/lib/python2.7/test/imghdrdata/python.pbm
+#usr/lib/python2.7/test/imghdrdata/python.pgm
+#usr/lib/python2.7/test/imghdrdata/python.png
+#usr/lib/python2.7/test/imghdrdata/python.ppm
+#usr/lib/python2.7/test/imghdrdata/python.ras
+#usr/lib/python2.7/test/imghdrdata/python.sgi
+#usr/lib/python2.7/test/imghdrdata/python.tiff
+#usr/lib/python2.7/test/imghdrdata/python.xbm
+#usr/lib/python2.7/test/infinite_reload.py
+#usr/lib/python2.7/test/infinite_reload.pyc
+#usr/lib/python2.7/test/infinite_reload.pyo
+#usr/lib/python2.7/test/inspect_fodder.py
+#usr/lib/python2.7/test/inspect_fodder.pyc
+#usr/lib/python2.7/test/inspect_fodder.pyo
+#usr/lib/python2.7/test/inspect_fodder2.py
+#usr/lib/python2.7/test/inspect_fodder2.pyc
+#usr/lib/python2.7/test/inspect_fodder2.pyo
+#usr/lib/python2.7/test/keycert.passwd.pem
+#usr/lib/python2.7/test/keycert.pem
+#usr/lib/python2.7/test/keycert2.pem
+#usr/lib/python2.7/test/keycert3.pem
+#usr/lib/python2.7/test/keycert4.pem
+#usr/lib/python2.7/test/list_tests.py
+#usr/lib/python2.7/test/list_tests.pyc
+#usr/lib/python2.7/test/list_tests.pyo
+#usr/lib/python2.7/test/lock_tests.py
+#usr/lib/python2.7/test/lock_tests.pyc
+#usr/lib/python2.7/test/lock_tests.pyo
+#usr/lib/python2.7/test/make_ssl_certs.py
+#usr/lib/python2.7/test/make_ssl_certs.pyc
+#usr/lib/python2.7/test/make_ssl_certs.pyo
+#usr/lib/python2.7/test/mapping_tests.py
+#usr/lib/python2.7/test/mapping_tests.pyc
+#usr/lib/python2.7/test/mapping_tests.pyo
+#usr/lib/python2.7/test/math_testcases.txt
+#usr/lib/python2.7/test/mp_fork_bomb.py
+#usr/lib/python2.7/test/mp_fork_bomb.pyc
+#usr/lib/python2.7/test/mp_fork_bomb.pyo
+#usr/lib/python2.7/test/nokia.pem
+#usr/lib/python2.7/test/nullbytecert.pem
+#usr/lib/python2.7/test/nullcert.pem
+#usr/lib/python2.7/test/outstanding_bugs.py
+#usr/lib/python2.7/test/outstanding_bugs.pyc
+#usr/lib/python2.7/test/outstanding_bugs.pyo
+#usr/lib/python2.7/test/pickletester.py
+#usr/lib/python2.7/test/pickletester.pyc
+#usr/lib/python2.7/test/pickletester.pyo
+#usr/lib/python2.7/test/profilee.py
+#usr/lib/python2.7/test/profilee.pyc
+#usr/lib/python2.7/test/profilee.pyo
+#usr/lib/python2.7/test/pycacert.pem
+#usr/lib/python2.7/test/pyclbr_input.py
+#usr/lib/python2.7/test/pyclbr_input.pyc
+#usr/lib/python2.7/test/pyclbr_input.pyo
+#usr/lib/python2.7/test/pydoc_mod.py
+#usr/lib/python2.7/test/pydoc_mod.pyc
+#usr/lib/python2.7/test/pydoc_mod.pyo
+#usr/lib/python2.7/test/pydocfodder.py
+#usr/lib/python2.7/test/pydocfodder.pyc
+#usr/lib/python2.7/test/pydocfodder.pyo
+#usr/lib/python2.7/test/pystone.py
+#usr/lib/python2.7/test/pystone.pyc
+#usr/lib/python2.7/test/pystone.pyo
+#usr/lib/python2.7/test/randv2_32.pck
+#usr/lib/python2.7/test/randv2_64.pck
+#usr/lib/python2.7/test/randv3.pck
+#usr/lib/python2.7/test/re_tests.py
+#usr/lib/python2.7/test/re_tests.pyc
+#usr/lib/python2.7/test/re_tests.pyo
+#usr/lib/python2.7/test/regrtest.py
+#usr/lib/python2.7/test/regrtest.pyc
+#usr/lib/python2.7/test/regrtest.pyo
+#usr/lib/python2.7/test/relimport.py
+#usr/lib/python2.7/test/relimport.pyc
+#usr/lib/python2.7/test/relimport.pyo
+#usr/lib/python2.7/test/reperf.py
+#usr/lib/python2.7/test/reperf.pyc
+#usr/lib/python2.7/test/reperf.pyo
+#usr/lib/python2.7/test/revocation.crl
+#usr/lib/python2.7/test/sample_doctest.py
+#usr/lib/python2.7/test/sample_doctest.pyc
+#usr/lib/python2.7/test/sample_doctest.pyo
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.py
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.pyc
+#usr/lib/python2.7/test/sample_doctest_no_docstrings.pyo
+#usr/lib/python2.7/test/sample_doctest_no_doctests.py
+#usr/lib/python2.7/test/sample_doctest_no_doctests.pyc
+#usr/lib/python2.7/test/sample_doctest_no_doctests.pyo
+#usr/lib/python2.7/test/script_helper.py
+#usr/lib/python2.7/test/script_helper.pyc
+#usr/lib/python2.7/test/script_helper.pyo
+#usr/lib/python2.7/test/selfsigned_pythontestdotnet.pem
+#usr/lib/python2.7/test/seq_tests.py
+#usr/lib/python2.7/test/seq_tests.pyc
+#usr/lib/python2.7/test/seq_tests.pyo
+#usr/lib/python2.7/test/sgml_input.html
+#usr/lib/python2.7/test/sha256.pem
+#usr/lib/python2.7/test/sortperf.py
+#usr/lib/python2.7/test/sortperf.pyc
+#usr/lib/python2.7/test/sortperf.pyo
+#usr/lib/python2.7/test/ssl_cert.pem
+#usr/lib/python2.7/test/ssl_key.passwd.pem
+#usr/lib/python2.7/test/ssl_key.pem
+#usr/lib/python2.7/test/ssl_servers.py
+#usr/lib/python2.7/test/ssl_servers.pyc
+#usr/lib/python2.7/test/ssl_servers.pyo
+#usr/lib/python2.7/test/string_tests.py
+#usr/lib/python2.7/test/string_tests.pyc
+#usr/lib/python2.7/test/string_tests.pyo
+#usr/lib/python2.7/test/subprocessdata
+#usr/lib/python2.7/test/subprocessdata/sigchild_ignore.py
+#usr/lib/python2.7/test/subprocessdata/sigchild_ignore.pyc
+#usr/lib/python2.7/test/subprocessdata/sigchild_ignore.pyo
+#usr/lib/python2.7/test/symlink_support.py
+#usr/lib/python2.7/test/symlink_support.pyc
+#usr/lib/python2.7/test/symlink_support.pyo
+#usr/lib/python2.7/test/test_MimeWriter.py
+#usr/lib/python2.7/test/test_MimeWriter.pyc
+#usr/lib/python2.7/test/test_MimeWriter.pyo
+#usr/lib/python2.7/test/test_SimpleHTTPServer.py
+#usr/lib/python2.7/test/test_SimpleHTTPServer.pyc
+#usr/lib/python2.7/test/test_SimpleHTTPServer.pyo
+#usr/lib/python2.7/test/test_StringIO.py
+#usr/lib/python2.7/test/test_StringIO.pyc
+#usr/lib/python2.7/test/test_StringIO.pyo
+#usr/lib/python2.7/test/test___all__.py
+#usr/lib/python2.7/test/test___all__.pyc
+#usr/lib/python2.7/test/test___all__.pyo
+#usr/lib/python2.7/test/test___future__.py
+#usr/lib/python2.7/test/test___future__.pyc
+#usr/lib/python2.7/test/test___future__.pyo
+#usr/lib/python2.7/test/test__locale.py
+#usr/lib/python2.7/test/test__locale.pyc
+#usr/lib/python2.7/test/test__locale.pyo
+#usr/lib/python2.7/test/test__osx_support.py
+#usr/lib/python2.7/test/test__osx_support.pyc
+#usr/lib/python2.7/test/test__osx_support.pyo
+#usr/lib/python2.7/test/test_abc.py
+#usr/lib/python2.7/test/test_abc.pyc
+#usr/lib/python2.7/test/test_abc.pyo
+#usr/lib/python2.7/test/test_abstract_numbers.py
+#usr/lib/python2.7/test/test_abstract_numbers.pyc
+#usr/lib/python2.7/test/test_abstract_numbers.pyo
+#usr/lib/python2.7/test/test_aepack.py
+#usr/lib/python2.7/test/test_aepack.pyc
+#usr/lib/python2.7/test/test_aepack.pyo
+#usr/lib/python2.7/test/test_aifc.py
+#usr/lib/python2.7/test/test_aifc.pyc
+#usr/lib/python2.7/test/test_aifc.pyo
+#usr/lib/python2.7/test/test_al.py
+#usr/lib/python2.7/test/test_al.pyc
+#usr/lib/python2.7/test/test_al.pyo
+#usr/lib/python2.7/test/test_anydbm.py
+#usr/lib/python2.7/test/test_anydbm.pyc
+#usr/lib/python2.7/test/test_anydbm.pyo
+#usr/lib/python2.7/test/test_applesingle.py
+#usr/lib/python2.7/test/test_applesingle.pyc
+#usr/lib/python2.7/test/test_applesingle.pyo
+#usr/lib/python2.7/test/test_argparse.py
+#usr/lib/python2.7/test/test_argparse.pyc
+#usr/lib/python2.7/test/test_argparse.pyo
+#usr/lib/python2.7/test/test_array.py
+#usr/lib/python2.7/test/test_array.pyc
+#usr/lib/python2.7/test/test_array.pyo
+#usr/lib/python2.7/test/test_ascii_formatd.py
+#usr/lib/python2.7/test/test_ascii_formatd.pyc
+#usr/lib/python2.7/test/test_ascii_formatd.pyo
+#usr/lib/python2.7/test/test_ast.py
+#usr/lib/python2.7/test/test_ast.pyc
+#usr/lib/python2.7/test/test_ast.pyo
+#usr/lib/python2.7/test/test_asynchat.py
+#usr/lib/python2.7/test/test_asynchat.pyc
+#usr/lib/python2.7/test/test_asynchat.pyo
+#usr/lib/python2.7/test/test_asyncore.py
+#usr/lib/python2.7/test/test_asyncore.pyc
+#usr/lib/python2.7/test/test_asyncore.pyo
+#usr/lib/python2.7/test/test_atexit.py
+#usr/lib/python2.7/test/test_atexit.pyc
+#usr/lib/python2.7/test/test_atexit.pyo
+#usr/lib/python2.7/test/test_audioop.py
+#usr/lib/python2.7/test/test_audioop.pyc
+#usr/lib/python2.7/test/test_audioop.pyo
+#usr/lib/python2.7/test/test_augassign.py
+#usr/lib/python2.7/test/test_augassign.pyc
+#usr/lib/python2.7/test/test_augassign.pyo
+#usr/lib/python2.7/test/test_base64.py
+#usr/lib/python2.7/test/test_base64.pyc
+#usr/lib/python2.7/test/test_base64.pyo
+#usr/lib/python2.7/test/test_bastion.py
+#usr/lib/python2.7/test/test_bastion.pyc
+#usr/lib/python2.7/test/test_bastion.pyo
+#usr/lib/python2.7/test/test_bigaddrspace.py
+#usr/lib/python2.7/test/test_bigaddrspace.pyc
+#usr/lib/python2.7/test/test_bigaddrspace.pyo
+#usr/lib/python2.7/test/test_bigmem.py
+#usr/lib/python2.7/test/test_bigmem.pyc
+#usr/lib/python2.7/test/test_bigmem.pyo
+#usr/lib/python2.7/test/test_binascii.py
+#usr/lib/python2.7/test/test_binascii.pyc
+#usr/lib/python2.7/test/test_binascii.pyo
+#usr/lib/python2.7/test/test_binhex.py
+#usr/lib/python2.7/test/test_binhex.pyc
+#usr/lib/python2.7/test/test_binhex.pyo
+#usr/lib/python2.7/test/test_binop.py
+#usr/lib/python2.7/test/test_binop.pyc
+#usr/lib/python2.7/test/test_binop.pyo
+#usr/lib/python2.7/test/test_bisect.py
+#usr/lib/python2.7/test/test_bisect.pyc
+#usr/lib/python2.7/test/test_bisect.pyo
+#usr/lib/python2.7/test/test_bool.py
+#usr/lib/python2.7/test/test_bool.pyc
+#usr/lib/python2.7/test/test_bool.pyo
+#usr/lib/python2.7/test/test_bsddb.py
+#usr/lib/python2.7/test/test_bsddb.pyc
+#usr/lib/python2.7/test/test_bsddb.pyo
+#usr/lib/python2.7/test/test_bsddb185.py
+#usr/lib/python2.7/test/test_bsddb185.pyc
+#usr/lib/python2.7/test/test_bsddb185.pyo
+#usr/lib/python2.7/test/test_bsddb3.py
+#usr/lib/python2.7/test/test_bsddb3.pyc
+#usr/lib/python2.7/test/test_bsddb3.pyo
+#usr/lib/python2.7/test/test_buffer.py
+#usr/lib/python2.7/test/test_buffer.pyc
+#usr/lib/python2.7/test/test_buffer.pyo
+#usr/lib/python2.7/test/test_bufio.py
+#usr/lib/python2.7/test/test_bufio.pyc
+#usr/lib/python2.7/test/test_bufio.pyo
+#usr/lib/python2.7/test/test_builtin.py
+#usr/lib/python2.7/test/test_builtin.pyc
+#usr/lib/python2.7/test/test_builtin.pyo
+#usr/lib/python2.7/test/test_bytes.py
+#usr/lib/python2.7/test/test_bytes.pyc
+#usr/lib/python2.7/test/test_bytes.pyo
+#usr/lib/python2.7/test/test_bz2.py
+#usr/lib/python2.7/test/test_bz2.pyc
+#usr/lib/python2.7/test/test_bz2.pyo
+#usr/lib/python2.7/test/test_calendar.py
+#usr/lib/python2.7/test/test_calendar.pyc
+#usr/lib/python2.7/test/test_calendar.pyo
+#usr/lib/python2.7/test/test_call.py
+#usr/lib/python2.7/test/test_call.pyc
+#usr/lib/python2.7/test/test_call.pyo
+#usr/lib/python2.7/test/test_capi.py
+#usr/lib/python2.7/test/test_capi.pyc
+#usr/lib/python2.7/test/test_capi.pyo
+#usr/lib/python2.7/test/test_cd.py
+#usr/lib/python2.7/test/test_cd.pyc
+#usr/lib/python2.7/test/test_cd.pyo
+#usr/lib/python2.7/test/test_cfgparser.py
+#usr/lib/python2.7/test/test_cfgparser.pyc
+#usr/lib/python2.7/test/test_cfgparser.pyo
+#usr/lib/python2.7/test/test_cgi.py
+#usr/lib/python2.7/test/test_cgi.pyc
+#usr/lib/python2.7/test/test_cgi.pyo
+#usr/lib/python2.7/test/test_charmapcodec.py
+#usr/lib/python2.7/test/test_charmapcodec.pyc
+#usr/lib/python2.7/test/test_charmapcodec.pyo
+#usr/lib/python2.7/test/test_cl.py
+#usr/lib/python2.7/test/test_cl.pyc
+#usr/lib/python2.7/test/test_cl.pyo
+#usr/lib/python2.7/test/test_class.py
+#usr/lib/python2.7/test/test_class.pyc
+#usr/lib/python2.7/test/test_class.pyo
+#usr/lib/python2.7/test/test_cmath.py
+#usr/lib/python2.7/test/test_cmath.pyc
+#usr/lib/python2.7/test/test_cmath.pyo
+#usr/lib/python2.7/test/test_cmd.py
+#usr/lib/python2.7/test/test_cmd.pyc
+#usr/lib/python2.7/test/test_cmd.pyo
+#usr/lib/python2.7/test/test_cmd_line.py
+#usr/lib/python2.7/test/test_cmd_line.pyc
+#usr/lib/python2.7/test/test_cmd_line.pyo
+#usr/lib/python2.7/test/test_cmd_line_script.py
+#usr/lib/python2.7/test/test_cmd_line_script.pyc
+#usr/lib/python2.7/test/test_cmd_line_script.pyo
+#usr/lib/python2.7/test/test_code.py
+#usr/lib/python2.7/test/test_code.pyc
+#usr/lib/python2.7/test/test_code.pyo
+#usr/lib/python2.7/test/test_codeccallbacks.py
+#usr/lib/python2.7/test/test_codeccallbacks.pyc
+#usr/lib/python2.7/test/test_codeccallbacks.pyo
+#usr/lib/python2.7/test/test_codecencodings_cn.py
+#usr/lib/python2.7/test/test_codecencodings_cn.pyc
+#usr/lib/python2.7/test/test_codecencodings_cn.pyo
+#usr/lib/python2.7/test/test_codecencodings_hk.py
+#usr/lib/python2.7/test/test_codecencodings_hk.pyc
+#usr/lib/python2.7/test/test_codecencodings_hk.pyo
+#usr/lib/python2.7/test/test_codecencodings_iso2022.py
+#usr/lib/python2.7/test/test_codecencodings_iso2022.pyc
+#usr/lib/python2.7/test/test_codecencodings_iso2022.pyo
+#usr/lib/python2.7/test/test_codecencodings_jp.py
+#usr/lib/python2.7/test/test_codecencodings_jp.pyc
+#usr/lib/python2.7/test/test_codecencodings_jp.pyo
+#usr/lib/python2.7/test/test_codecencodings_kr.py
+#usr/lib/python2.7/test/test_codecencodings_kr.pyc
+#usr/lib/python2.7/test/test_codecencodings_kr.pyo
+#usr/lib/python2.7/test/test_codecencodings_tw.py
+#usr/lib/python2.7/test/test_codecencodings_tw.pyc
+#usr/lib/python2.7/test/test_codecencodings_tw.pyo
+#usr/lib/python2.7/test/test_codecmaps_cn.py
+#usr/lib/python2.7/test/test_codecmaps_cn.pyc
+#usr/lib/python2.7/test/test_codecmaps_cn.pyo
+#usr/lib/python2.7/test/test_codecmaps_hk.py
+#usr/lib/python2.7/test/test_codecmaps_hk.pyc
+#usr/lib/python2.7/test/test_codecmaps_hk.pyo
+#usr/lib/python2.7/test/test_codecmaps_jp.py
+#usr/lib/python2.7/test/test_codecmaps_jp.pyc
+#usr/lib/python2.7/test/test_codecmaps_jp.pyo
+#usr/lib/python2.7/test/test_codecmaps_kr.py
+#usr/lib/python2.7/test/test_codecmaps_kr.pyc
+#usr/lib/python2.7/test/test_codecmaps_kr.pyo
+#usr/lib/python2.7/test/test_codecmaps_tw.py
+#usr/lib/python2.7/test/test_codecmaps_tw.pyc
+#usr/lib/python2.7/test/test_codecmaps_tw.pyo
+#usr/lib/python2.7/test/test_codecs.py
+#usr/lib/python2.7/test/test_codecs.pyc
+#usr/lib/python2.7/test/test_codecs.pyo
+#usr/lib/python2.7/test/test_codeop.py
+#usr/lib/python2.7/test/test_codeop.pyc
+#usr/lib/python2.7/test/test_codeop.pyo
+#usr/lib/python2.7/test/test_coding.py
+#usr/lib/python2.7/test/test_coding.pyc
+#usr/lib/python2.7/test/test_coding.pyo
+#usr/lib/python2.7/test/test_coercion.py
+#usr/lib/python2.7/test/test_coercion.pyc
+#usr/lib/python2.7/test/test_coercion.pyo
+#usr/lib/python2.7/test/test_collections.py
+#usr/lib/python2.7/test/test_collections.pyc
+#usr/lib/python2.7/test/test_collections.pyo
+#usr/lib/python2.7/test/test_colorsys.py
+#usr/lib/python2.7/test/test_colorsys.pyc
+#usr/lib/python2.7/test/test_colorsys.pyo
+#usr/lib/python2.7/test/test_commands.py
+#usr/lib/python2.7/test/test_commands.pyc
+#usr/lib/python2.7/test/test_commands.pyo
+#usr/lib/python2.7/test/test_compare.py
+#usr/lib/python2.7/test/test_compare.pyc
+#usr/lib/python2.7/test/test_compare.pyo
+#usr/lib/python2.7/test/test_compile.py
+#usr/lib/python2.7/test/test_compile.pyc
+#usr/lib/python2.7/test/test_compile.pyo
+#usr/lib/python2.7/test/test_compileall.py
+#usr/lib/python2.7/test/test_compileall.pyc
+#usr/lib/python2.7/test/test_compileall.pyo
+#usr/lib/python2.7/test/test_compiler.py
+#usr/lib/python2.7/test/test_compiler.pyc
+#usr/lib/python2.7/test/test_compiler.pyo
+#usr/lib/python2.7/test/test_complex.py
+#usr/lib/python2.7/test/test_complex.pyc
+#usr/lib/python2.7/test/test_complex.pyo
+#usr/lib/python2.7/test/test_complex_args.py
+#usr/lib/python2.7/test/test_complex_args.pyc
+#usr/lib/python2.7/test/test_complex_args.pyo
+#usr/lib/python2.7/test/test_contains.py
+#usr/lib/python2.7/test/test_contains.pyc
+#usr/lib/python2.7/test/test_contains.pyo
+#usr/lib/python2.7/test/test_contextlib.py
+#usr/lib/python2.7/test/test_contextlib.pyc
+#usr/lib/python2.7/test/test_contextlib.pyo
+#usr/lib/python2.7/test/test_cookie.py
+#usr/lib/python2.7/test/test_cookie.pyc
+#usr/lib/python2.7/test/test_cookie.pyo
+#usr/lib/python2.7/test/test_cookielib.py
+#usr/lib/python2.7/test/test_cookielib.pyc
+#usr/lib/python2.7/test/test_cookielib.pyo
+#usr/lib/python2.7/test/test_copy.py
+#usr/lib/python2.7/test/test_copy.pyc
+#usr/lib/python2.7/test/test_copy.pyo
+#usr/lib/python2.7/test/test_copy_reg.py
+#usr/lib/python2.7/test/test_copy_reg.pyc
+#usr/lib/python2.7/test/test_copy_reg.pyo
+#usr/lib/python2.7/test/test_cpickle.py
+#usr/lib/python2.7/test/test_cpickle.pyc
+#usr/lib/python2.7/test/test_cpickle.pyo
+#usr/lib/python2.7/test/test_cprofile.py
+#usr/lib/python2.7/test/test_cprofile.pyc
+#usr/lib/python2.7/test/test_cprofile.pyo
+#usr/lib/python2.7/test/test_crypt.py
+#usr/lib/python2.7/test/test_crypt.pyc
+#usr/lib/python2.7/test/test_crypt.pyo
+#usr/lib/python2.7/test/test_csv.py
+#usr/lib/python2.7/test/test_csv.pyc
+#usr/lib/python2.7/test/test_csv.pyo
+#usr/lib/python2.7/test/test_ctypes.py
+#usr/lib/python2.7/test/test_ctypes.pyc
+#usr/lib/python2.7/test/test_ctypes.pyo
+#usr/lib/python2.7/test/test_curses.py
+#usr/lib/python2.7/test/test_curses.pyc
+#usr/lib/python2.7/test/test_curses.pyo
+#usr/lib/python2.7/test/test_datetime.py
+#usr/lib/python2.7/test/test_datetime.pyc
+#usr/lib/python2.7/test/test_datetime.pyo
+#usr/lib/python2.7/test/test_dbm.py
+#usr/lib/python2.7/test/test_dbm.pyc
+#usr/lib/python2.7/test/test_dbm.pyo
+#usr/lib/python2.7/test/test_decimal.py
+#usr/lib/python2.7/test/test_decimal.pyc
+#usr/lib/python2.7/test/test_decimal.pyo
+#usr/lib/python2.7/test/test_decorators.py
+#usr/lib/python2.7/test/test_decorators.pyc
+#usr/lib/python2.7/test/test_decorators.pyo
+#usr/lib/python2.7/test/test_defaultdict.py
+#usr/lib/python2.7/test/test_defaultdict.pyc
+#usr/lib/python2.7/test/test_defaultdict.pyo
+#usr/lib/python2.7/test/test_deque.py
+#usr/lib/python2.7/test/test_deque.pyc
+#usr/lib/python2.7/test/test_deque.pyo
+#usr/lib/python2.7/test/test_descr.py
+#usr/lib/python2.7/test/test_descr.pyc
+#usr/lib/python2.7/test/test_descr.pyo
+#usr/lib/python2.7/test/test_descrtut.py
+#usr/lib/python2.7/test/test_descrtut.pyc
+#usr/lib/python2.7/test/test_descrtut.pyo
+#usr/lib/python2.7/test/test_dict.py
+#usr/lib/python2.7/test/test_dict.pyc
+#usr/lib/python2.7/test/test_dict.pyo
+#usr/lib/python2.7/test/test_dictcomps.py
+#usr/lib/python2.7/test/test_dictcomps.pyc
+#usr/lib/python2.7/test/test_dictcomps.pyo
+#usr/lib/python2.7/test/test_dictviews.py
+#usr/lib/python2.7/test/test_dictviews.pyc
+#usr/lib/python2.7/test/test_dictviews.pyo
+#usr/lib/python2.7/test/test_difflib.py
+#usr/lib/python2.7/test/test_difflib.pyc
+#usr/lib/python2.7/test/test_difflib.pyo
+#usr/lib/python2.7/test/test_difflib_expect.html
+#usr/lib/python2.7/test/test_dircache.py
+#usr/lib/python2.7/test/test_dircache.pyc
+#usr/lib/python2.7/test/test_dircache.pyo
+#usr/lib/python2.7/test/test_dis.py
+#usr/lib/python2.7/test/test_dis.pyc
+#usr/lib/python2.7/test/test_dis.pyo
+#usr/lib/python2.7/test/test_distutils.py
+#usr/lib/python2.7/test/test_distutils.pyc
+#usr/lib/python2.7/test/test_distutils.pyo
+#usr/lib/python2.7/test/test_dl.py
+#usr/lib/python2.7/test/test_dl.pyc
+#usr/lib/python2.7/test/test_dl.pyo
+#usr/lib/python2.7/test/test_doctest.py
+#usr/lib/python2.7/test/test_doctest.pyc
+#usr/lib/python2.7/test/test_doctest.pyo
+#usr/lib/python2.7/test/test_doctest.txt
+#usr/lib/python2.7/test/test_doctest2.py
+#usr/lib/python2.7/test/test_doctest2.pyc
+#usr/lib/python2.7/test/test_doctest2.pyo
+#usr/lib/python2.7/test/test_doctest2.txt
+#usr/lib/python2.7/test/test_doctest3.txt
+#usr/lib/python2.7/test/test_doctest4.txt
+#usr/lib/python2.7/test/test_docxmlrpc.py
+#usr/lib/python2.7/test/test_docxmlrpc.pyc
+#usr/lib/python2.7/test/test_docxmlrpc.pyo
+#usr/lib/python2.7/test/test_dumbdbm.py
+#usr/lib/python2.7/test/test_dumbdbm.pyc
+#usr/lib/python2.7/test/test_dumbdbm.pyo
+#usr/lib/python2.7/test/test_dummy_thread.py
+#usr/lib/python2.7/test/test_dummy_thread.pyc
+#usr/lib/python2.7/test/test_dummy_thread.pyo
+#usr/lib/python2.7/test/test_dummy_threading.py
+#usr/lib/python2.7/test/test_dummy_threading.pyc
+#usr/lib/python2.7/test/test_dummy_threading.pyo
+#usr/lib/python2.7/test/test_email.py
+#usr/lib/python2.7/test/test_email.pyc
+#usr/lib/python2.7/test/test_email.pyo
+#usr/lib/python2.7/test/test_email_codecs.py
+#usr/lib/python2.7/test/test_email_codecs.pyc
+#usr/lib/python2.7/test/test_email_codecs.pyo
+#usr/lib/python2.7/test/test_email_renamed.py
+#usr/lib/python2.7/test/test_email_renamed.pyc
+#usr/lib/python2.7/test/test_email_renamed.pyo
+#usr/lib/python2.7/test/test_ensurepip.py
+#usr/lib/python2.7/test/test_ensurepip.pyc
+#usr/lib/python2.7/test/test_ensurepip.pyo
+#usr/lib/python2.7/test/test_enumerate.py
+#usr/lib/python2.7/test/test_enumerate.pyc
+#usr/lib/python2.7/test/test_enumerate.pyo
+#usr/lib/python2.7/test/test_eof.py
+#usr/lib/python2.7/test/test_eof.pyc
+#usr/lib/python2.7/test/test_eof.pyo
+#usr/lib/python2.7/test/test_epoll.py
+#usr/lib/python2.7/test/test_epoll.pyc
+#usr/lib/python2.7/test/test_epoll.pyo
+#usr/lib/python2.7/test/test_errno.py
+#usr/lib/python2.7/test/test_errno.pyc
+#usr/lib/python2.7/test/test_errno.pyo
+#usr/lib/python2.7/test/test_exception_variations.py
+#usr/lib/python2.7/test/test_exception_variations.pyc
+#usr/lib/python2.7/test/test_exception_variations.pyo
+#usr/lib/python2.7/test/test_exceptions.py
+#usr/lib/python2.7/test/test_exceptions.pyc
+#usr/lib/python2.7/test/test_exceptions.pyo
+#usr/lib/python2.7/test/test_extcall.py
+#usr/lib/python2.7/test/test_extcall.pyc
+#usr/lib/python2.7/test/test_extcall.pyo
+#usr/lib/python2.7/test/test_fcntl.py
+#usr/lib/python2.7/test/test_fcntl.pyc
+#usr/lib/python2.7/test/test_fcntl.pyo
+#usr/lib/python2.7/test/test_file.py
+#usr/lib/python2.7/test/test_file.pyc
+#usr/lib/python2.7/test/test_file.pyo
+#usr/lib/python2.7/test/test_file2k.py
+#usr/lib/python2.7/test/test_file2k.pyc
+#usr/lib/python2.7/test/test_file2k.pyo
+#usr/lib/python2.7/test/test_file_eintr.py
+#usr/lib/python2.7/test/test_file_eintr.pyc
+#usr/lib/python2.7/test/test_file_eintr.pyo
+#usr/lib/python2.7/test/test_filecmp.py
+#usr/lib/python2.7/test/test_filecmp.pyc
+#usr/lib/python2.7/test/test_filecmp.pyo
+#usr/lib/python2.7/test/test_fileinput.py
+#usr/lib/python2.7/test/test_fileinput.pyc
+#usr/lib/python2.7/test/test_fileinput.pyo
+#usr/lib/python2.7/test/test_fileio.py
+#usr/lib/python2.7/test/test_fileio.pyc
+#usr/lib/python2.7/test/test_fileio.pyo
+#usr/lib/python2.7/test/test_float.py
+#usr/lib/python2.7/test/test_float.pyc
+#usr/lib/python2.7/test/test_float.pyo
+#usr/lib/python2.7/test/test_fnmatch.py
+#usr/lib/python2.7/test/test_fnmatch.pyc
+#usr/lib/python2.7/test/test_fnmatch.pyo
+#usr/lib/python2.7/test/test_fork1.py
+#usr/lib/python2.7/test/test_fork1.pyc
+#usr/lib/python2.7/test/test_fork1.pyo
+#usr/lib/python2.7/test/test_format.py
+#usr/lib/python2.7/test/test_format.pyc
+#usr/lib/python2.7/test/test_format.pyo
+#usr/lib/python2.7/test/test_fpformat.py
+#usr/lib/python2.7/test/test_fpformat.pyc
+#usr/lib/python2.7/test/test_fpformat.pyo
+#usr/lib/python2.7/test/test_fractions.py
+#usr/lib/python2.7/test/test_fractions.pyc
+#usr/lib/python2.7/test/test_fractions.pyo
+#usr/lib/python2.7/test/test_frozen.py
+#usr/lib/python2.7/test/test_frozen.pyc
+#usr/lib/python2.7/test/test_frozen.pyo
+#usr/lib/python2.7/test/test_ftplib.py
+#usr/lib/python2.7/test/test_ftplib.pyc
+#usr/lib/python2.7/test/test_ftplib.pyo
+#usr/lib/python2.7/test/test_funcattrs.py
+#usr/lib/python2.7/test/test_funcattrs.pyc
+#usr/lib/python2.7/test/test_funcattrs.pyo
+#usr/lib/python2.7/test/test_functools.py
+#usr/lib/python2.7/test/test_functools.pyc
+#usr/lib/python2.7/test/test_functools.pyo
+#usr/lib/python2.7/test/test_future.py
+#usr/lib/python2.7/test/test_future.pyc
+#usr/lib/python2.7/test/test_future.pyo
+#usr/lib/python2.7/test/test_future1.py
+#usr/lib/python2.7/test/test_future1.pyc
+#usr/lib/python2.7/test/test_future1.pyo
+#usr/lib/python2.7/test/test_future2.py
+#usr/lib/python2.7/test/test_future2.pyc
+#usr/lib/python2.7/test/test_future2.pyo
+#usr/lib/python2.7/test/test_future3.py
+#usr/lib/python2.7/test/test_future3.pyc
+#usr/lib/python2.7/test/test_future3.pyo
+#usr/lib/python2.7/test/test_future4.py
+#usr/lib/python2.7/test/test_future4.pyc
+#usr/lib/python2.7/test/test_future4.pyo
+#usr/lib/python2.7/test/test_future5.py
+#usr/lib/python2.7/test/test_future5.pyc
+#usr/lib/python2.7/test/test_future5.pyo
+#usr/lib/python2.7/test/test_future_builtins.py
+#usr/lib/python2.7/test/test_future_builtins.pyc
+#usr/lib/python2.7/test/test_future_builtins.pyo
+#usr/lib/python2.7/test/test_gc.py
+#usr/lib/python2.7/test/test_gc.pyc
+#usr/lib/python2.7/test/test_gc.pyo
+#usr/lib/python2.7/test/test_gdb.py
+#usr/lib/python2.7/test/test_gdb.pyc
+#usr/lib/python2.7/test/test_gdb.pyo
+#usr/lib/python2.7/test/test_gdbm.py
+#usr/lib/python2.7/test/test_gdbm.pyc
+#usr/lib/python2.7/test/test_gdbm.pyo
+#usr/lib/python2.7/test/test_generators.py
+#usr/lib/python2.7/test/test_generators.pyc
+#usr/lib/python2.7/test/test_generators.pyo
+#usr/lib/python2.7/test/test_genericpath.py
+#usr/lib/python2.7/test/test_genericpath.pyc
+#usr/lib/python2.7/test/test_genericpath.pyo
+#usr/lib/python2.7/test/test_genexps.py
+#usr/lib/python2.7/test/test_genexps.pyc
+#usr/lib/python2.7/test/test_genexps.pyo
+#usr/lib/python2.7/test/test_getargs.py
+#usr/lib/python2.7/test/test_getargs.pyc
+#usr/lib/python2.7/test/test_getargs.pyo
+#usr/lib/python2.7/test/test_getargs2.py
+#usr/lib/python2.7/test/test_getargs2.pyc
+#usr/lib/python2.7/test/test_getargs2.pyo
+#usr/lib/python2.7/test/test_getopt.py
+#usr/lib/python2.7/test/test_getopt.pyc
+#usr/lib/python2.7/test/test_getopt.pyo
+#usr/lib/python2.7/test/test_gettext.py
+#usr/lib/python2.7/test/test_gettext.pyc
+#usr/lib/python2.7/test/test_gettext.pyo
+#usr/lib/python2.7/test/test_gl.py
+#usr/lib/python2.7/test/test_gl.pyc
+#usr/lib/python2.7/test/test_gl.pyo
+#usr/lib/python2.7/test/test_glob.py
+#usr/lib/python2.7/test/test_glob.pyc
+#usr/lib/python2.7/test/test_glob.pyo
+#usr/lib/python2.7/test/test_global.py
+#usr/lib/python2.7/test/test_global.pyc
+#usr/lib/python2.7/test/test_global.pyo
+#usr/lib/python2.7/test/test_grammar.py
+#usr/lib/python2.7/test/test_grammar.pyc
+#usr/lib/python2.7/test/test_grammar.pyo
+#usr/lib/python2.7/test/test_grp.py
+#usr/lib/python2.7/test/test_grp.pyc
+#usr/lib/python2.7/test/test_grp.pyo
+#usr/lib/python2.7/test/test_gzip.py
+#usr/lib/python2.7/test/test_gzip.pyc
+#usr/lib/python2.7/test/test_gzip.pyo
+#usr/lib/python2.7/test/test_hash.py
+#usr/lib/python2.7/test/test_hash.pyc
+#usr/lib/python2.7/test/test_hash.pyo
+#usr/lib/python2.7/test/test_hashlib.py
+#usr/lib/python2.7/test/test_hashlib.pyc
+#usr/lib/python2.7/test/test_hashlib.pyo
+#usr/lib/python2.7/test/test_heapq.py
+#usr/lib/python2.7/test/test_heapq.pyc
+#usr/lib/python2.7/test/test_heapq.pyo
+#usr/lib/python2.7/test/test_hmac.py
+#usr/lib/python2.7/test/test_hmac.pyc
+#usr/lib/python2.7/test/test_hmac.pyo
+#usr/lib/python2.7/test/test_hotshot.py
+#usr/lib/python2.7/test/test_hotshot.pyc
+#usr/lib/python2.7/test/test_hotshot.pyo
+#usr/lib/python2.7/test/test_htmllib.py
+#usr/lib/python2.7/test/test_htmllib.pyc
+#usr/lib/python2.7/test/test_htmllib.pyo
+#usr/lib/python2.7/test/test_htmlparser.py
+#usr/lib/python2.7/test/test_htmlparser.pyc
+#usr/lib/python2.7/test/test_htmlparser.pyo
+#usr/lib/python2.7/test/test_httplib.py
+#usr/lib/python2.7/test/test_httplib.pyc
+#usr/lib/python2.7/test/test_httplib.pyo
+#usr/lib/python2.7/test/test_httpservers.py
+#usr/lib/python2.7/test/test_httpservers.pyc
+#usr/lib/python2.7/test/test_httpservers.pyo
+#usr/lib/python2.7/test/test_idle.py
+#usr/lib/python2.7/test/test_idle.pyc
+#usr/lib/python2.7/test/test_idle.pyo
+#usr/lib/python2.7/test/test_imageop.py
+#usr/lib/python2.7/test/test_imageop.pyc
+#usr/lib/python2.7/test/test_imageop.pyo
+#usr/lib/python2.7/test/test_imaplib.py
+#usr/lib/python2.7/test/test_imaplib.pyc
+#usr/lib/python2.7/test/test_imaplib.pyo
+#usr/lib/python2.7/test/test_imgfile.py
+#usr/lib/python2.7/test/test_imgfile.pyc
+#usr/lib/python2.7/test/test_imgfile.pyo
+#usr/lib/python2.7/test/test_imghdr.py
+#usr/lib/python2.7/test/test_imghdr.pyc
+#usr/lib/python2.7/test/test_imghdr.pyo
+#usr/lib/python2.7/test/test_imp.py
+#usr/lib/python2.7/test/test_imp.pyc
+#usr/lib/python2.7/test/test_imp.pyo
+#usr/lib/python2.7/test/test_import.py
+#usr/lib/python2.7/test/test_import.pyc
+#usr/lib/python2.7/test/test_import.pyo
+#usr/lib/python2.7/test/test_importhooks.py
+#usr/lib/python2.7/test/test_importhooks.pyc
+#usr/lib/python2.7/test/test_importhooks.pyo
+#usr/lib/python2.7/test/test_importlib.py
+#usr/lib/python2.7/test/test_importlib.pyc
+#usr/lib/python2.7/test/test_importlib.pyo
+#usr/lib/python2.7/test/test_index.py
+#usr/lib/python2.7/test/test_index.pyc
+#usr/lib/python2.7/test/test_index.pyo
+#usr/lib/python2.7/test/test_inspect.py
+#usr/lib/python2.7/test/test_inspect.pyc
+#usr/lib/python2.7/test/test_inspect.pyo
+#usr/lib/python2.7/test/test_int.py
+#usr/lib/python2.7/test/test_int.pyc
+#usr/lib/python2.7/test/test_int.pyo
+#usr/lib/python2.7/test/test_int_literal.py
+#usr/lib/python2.7/test/test_int_literal.pyc
+#usr/lib/python2.7/test/test_int_literal.pyo
+#usr/lib/python2.7/test/test_io.py
+#usr/lib/python2.7/test/test_io.pyc
+#usr/lib/python2.7/test/test_io.pyo
+#usr/lib/python2.7/test/test_ioctl.py
+#usr/lib/python2.7/test/test_ioctl.pyc
+#usr/lib/python2.7/test/test_ioctl.pyo
+#usr/lib/python2.7/test/test_isinstance.py
+#usr/lib/python2.7/test/test_isinstance.pyc
+#usr/lib/python2.7/test/test_isinstance.pyo
+#usr/lib/python2.7/test/test_iter.py
+#usr/lib/python2.7/test/test_iter.pyc
+#usr/lib/python2.7/test/test_iter.pyo
+#usr/lib/python2.7/test/test_iterlen.py
+#usr/lib/python2.7/test/test_iterlen.pyc
+#usr/lib/python2.7/test/test_iterlen.pyo
+#usr/lib/python2.7/test/test_itertools.py
+#usr/lib/python2.7/test/test_itertools.pyc
+#usr/lib/python2.7/test/test_itertools.pyo
+#usr/lib/python2.7/test/test_json.py
+#usr/lib/python2.7/test/test_json.pyc
+#usr/lib/python2.7/test/test_json.pyo
+#usr/lib/python2.7/test/test_kqueue.py
+#usr/lib/python2.7/test/test_kqueue.pyc
+#usr/lib/python2.7/test/test_kqueue.pyo
+#usr/lib/python2.7/test/test_largefile.py
+#usr/lib/python2.7/test/test_largefile.pyc
+#usr/lib/python2.7/test/test_largefile.pyo
+#usr/lib/python2.7/test/test_lib2to3.py
+#usr/lib/python2.7/test/test_lib2to3.pyc
+#usr/lib/python2.7/test/test_lib2to3.pyo
+#usr/lib/python2.7/test/test_linecache.py
+#usr/lib/python2.7/test/test_linecache.pyc
+#usr/lib/python2.7/test/test_linecache.pyo
+#usr/lib/python2.7/test/test_linuxaudiodev.py
+#usr/lib/python2.7/test/test_linuxaudiodev.pyc
+#usr/lib/python2.7/test/test_linuxaudiodev.pyo
+#usr/lib/python2.7/test/test_list.py
+#usr/lib/python2.7/test/test_list.pyc
+#usr/lib/python2.7/test/test_list.pyo
+#usr/lib/python2.7/test/test_locale.py
+#usr/lib/python2.7/test/test_locale.pyc
+#usr/lib/python2.7/test/test_locale.pyo
+#usr/lib/python2.7/test/test_logging.py
+#usr/lib/python2.7/test/test_logging.pyc
+#usr/lib/python2.7/test/test_logging.pyo
+#usr/lib/python2.7/test/test_long.py
+#usr/lib/python2.7/test/test_long.pyc
+#usr/lib/python2.7/test/test_long.pyo
+#usr/lib/python2.7/test/test_long_future.py
+#usr/lib/python2.7/test/test_long_future.pyc
+#usr/lib/python2.7/test/test_long_future.pyo
+#usr/lib/python2.7/test/test_longexp.py
+#usr/lib/python2.7/test/test_longexp.pyc
+#usr/lib/python2.7/test/test_longexp.pyo
+#usr/lib/python2.7/test/test_macos.py
+#usr/lib/python2.7/test/test_macos.pyc
+#usr/lib/python2.7/test/test_macos.pyo
+#usr/lib/python2.7/test/test_macostools.py
+#usr/lib/python2.7/test/test_macostools.pyc
+#usr/lib/python2.7/test/test_macostools.pyo
+#usr/lib/python2.7/test/test_macpath.py
+#usr/lib/python2.7/test/test_macpath.pyc
+#usr/lib/python2.7/test/test_macpath.pyo
+#usr/lib/python2.7/test/test_macurl2path.py
+#usr/lib/python2.7/test/test_macurl2path.pyc
+#usr/lib/python2.7/test/test_macurl2path.pyo
+#usr/lib/python2.7/test/test_mailbox.py
+#usr/lib/python2.7/test/test_mailbox.pyc
+#usr/lib/python2.7/test/test_mailbox.pyo
+#usr/lib/python2.7/test/test_marshal.py
+#usr/lib/python2.7/test/test_marshal.pyc
+#usr/lib/python2.7/test/test_marshal.pyo
+#usr/lib/python2.7/test/test_math.py
+#usr/lib/python2.7/test/test_math.pyc
+#usr/lib/python2.7/test/test_math.pyo
+#usr/lib/python2.7/test/test_md5.py
+#usr/lib/python2.7/test/test_md5.pyc
+#usr/lib/python2.7/test/test_md5.pyo
+#usr/lib/python2.7/test/test_memoryio.py
+#usr/lib/python2.7/test/test_memoryio.pyc
+#usr/lib/python2.7/test/test_memoryio.pyo
+#usr/lib/python2.7/test/test_memoryview.py
+#usr/lib/python2.7/test/test_memoryview.pyc
+#usr/lib/python2.7/test/test_memoryview.pyo
+#usr/lib/python2.7/test/test_mhlib.py
+#usr/lib/python2.7/test/test_mhlib.pyc
+#usr/lib/python2.7/test/test_mhlib.pyo
+#usr/lib/python2.7/test/test_mimetools.py
+#usr/lib/python2.7/test/test_mimetools.pyc
+#usr/lib/python2.7/test/test_mimetools.pyo
+#usr/lib/python2.7/test/test_mimetypes.py
+#usr/lib/python2.7/test/test_mimetypes.pyc
+#usr/lib/python2.7/test/test_mimetypes.pyo
+#usr/lib/python2.7/test/test_minidom.py
+#usr/lib/python2.7/test/test_minidom.pyc
+#usr/lib/python2.7/test/test_minidom.pyo
+#usr/lib/python2.7/test/test_mmap.py
+#usr/lib/python2.7/test/test_mmap.pyc
+#usr/lib/python2.7/test/test_mmap.pyo
+#usr/lib/python2.7/test/test_module.py
+#usr/lib/python2.7/test/test_module.pyc
+#usr/lib/python2.7/test/test_module.pyo
+#usr/lib/python2.7/test/test_modulefinder.py
+#usr/lib/python2.7/test/test_modulefinder.pyc
+#usr/lib/python2.7/test/test_modulefinder.pyo
+#usr/lib/python2.7/test/test_msilib.py
+#usr/lib/python2.7/test/test_msilib.pyc
+#usr/lib/python2.7/test/test_msilib.pyo
+#usr/lib/python2.7/test/test_multibytecodec.py
+#usr/lib/python2.7/test/test_multibytecodec.pyc
+#usr/lib/python2.7/test/test_multibytecodec.pyo
+#usr/lib/python2.7/test/test_multibytecodec_support.py
+#usr/lib/python2.7/test/test_multibytecodec_support.pyc
+#usr/lib/python2.7/test/test_multibytecodec_support.pyo
+#usr/lib/python2.7/test/test_multifile.py
+#usr/lib/python2.7/test/test_multifile.pyc
+#usr/lib/python2.7/test/test_multifile.pyo
+#usr/lib/python2.7/test/test_multiprocessing.py
+#usr/lib/python2.7/test/test_multiprocessing.pyc
+#usr/lib/python2.7/test/test_multiprocessing.pyo
+#usr/lib/python2.7/test/test_mutants.py
+#usr/lib/python2.7/test/test_mutants.pyc
+#usr/lib/python2.7/test/test_mutants.pyo
+#usr/lib/python2.7/test/test_mutex.py
+#usr/lib/python2.7/test/test_mutex.pyc
+#usr/lib/python2.7/test/test_mutex.pyo
+#usr/lib/python2.7/test/test_netrc.py
+#usr/lib/python2.7/test/test_netrc.pyc
+#usr/lib/python2.7/test/test_netrc.pyo
+#usr/lib/python2.7/test/test_new.py
+#usr/lib/python2.7/test/test_new.pyc
+#usr/lib/python2.7/test/test_new.pyo
+#usr/lib/python2.7/test/test_nis.py
+#usr/lib/python2.7/test/test_nis.pyc
+#usr/lib/python2.7/test/test_nis.pyo
+#usr/lib/python2.7/test/test_nntplib.py
+#usr/lib/python2.7/test/test_nntplib.pyc
+#usr/lib/python2.7/test/test_nntplib.pyo
+#usr/lib/python2.7/test/test_normalization.py
+#usr/lib/python2.7/test/test_normalization.pyc
+#usr/lib/python2.7/test/test_normalization.pyo
+#usr/lib/python2.7/test/test_ntpath.py
+#usr/lib/python2.7/test/test_ntpath.pyc
+#usr/lib/python2.7/test/test_ntpath.pyo
+#usr/lib/python2.7/test/test_old_mailbox.py
+#usr/lib/python2.7/test/test_old_mailbox.pyc
+#usr/lib/python2.7/test/test_old_mailbox.pyo
+#usr/lib/python2.7/test/test_opcodes.py
+#usr/lib/python2.7/test/test_opcodes.pyc
+#usr/lib/python2.7/test/test_opcodes.pyo
+#usr/lib/python2.7/test/test_openpty.py
+#usr/lib/python2.7/test/test_openpty.pyc
+#usr/lib/python2.7/test/test_openpty.pyo
+#usr/lib/python2.7/test/test_operator.py
+#usr/lib/python2.7/test/test_operator.pyc
+#usr/lib/python2.7/test/test_operator.pyo
+#usr/lib/python2.7/test/test_optparse.py
+#usr/lib/python2.7/test/test_optparse.pyc
+#usr/lib/python2.7/test/test_optparse.pyo
+#usr/lib/python2.7/test/test_os.py
+#usr/lib/python2.7/test/test_os.pyc
+#usr/lib/python2.7/test/test_os.pyo
+#usr/lib/python2.7/test/test_ossaudiodev.py
+#usr/lib/python2.7/test/test_ossaudiodev.pyc
+#usr/lib/python2.7/test/test_ossaudiodev.pyo
+#usr/lib/python2.7/test/test_parser.py
+#usr/lib/python2.7/test/test_parser.pyc
+#usr/lib/python2.7/test/test_parser.pyo
+#usr/lib/python2.7/test/test_pdb.py
+#usr/lib/python2.7/test/test_pdb.pyc
+#usr/lib/python2.7/test/test_pdb.pyo
+#usr/lib/python2.7/test/test_peepholer.py
+#usr/lib/python2.7/test/test_peepholer.pyc
+#usr/lib/python2.7/test/test_peepholer.pyo
+#usr/lib/python2.7/test/test_pep247.py
+#usr/lib/python2.7/test/test_pep247.pyc
+#usr/lib/python2.7/test/test_pep247.pyo
+#usr/lib/python2.7/test/test_pep263.py
+#usr/lib/python2.7/test/test_pep263.pyc
+#usr/lib/python2.7/test/test_pep263.pyo
+#usr/lib/python2.7/test/test_pep277.py
+#usr/lib/python2.7/test/test_pep277.pyc
+#usr/lib/python2.7/test/test_pep277.pyo
+#usr/lib/python2.7/test/test_pep292.py
+#usr/lib/python2.7/test/test_pep292.pyc
+#usr/lib/python2.7/test/test_pep292.pyo
+#usr/lib/python2.7/test/test_pep352.py
+#usr/lib/python2.7/test/test_pep352.pyc
+#usr/lib/python2.7/test/test_pep352.pyo
+#usr/lib/python2.7/test/test_pickle.py
+#usr/lib/python2.7/test/test_pickle.pyc
+#usr/lib/python2.7/test/test_pickle.pyo
+#usr/lib/python2.7/test/test_pickletools.py
+#usr/lib/python2.7/test/test_pickletools.pyc
+#usr/lib/python2.7/test/test_pickletools.pyo
+#usr/lib/python2.7/test/test_pipes.py
+#usr/lib/python2.7/test/test_pipes.pyc
+#usr/lib/python2.7/test/test_pipes.pyo
+#usr/lib/python2.7/test/test_pkg.py
+#usr/lib/python2.7/test/test_pkg.pyc
+#usr/lib/python2.7/test/test_pkg.pyo
+#usr/lib/python2.7/test/test_pkgimport.py
+#usr/lib/python2.7/test/test_pkgimport.pyc
+#usr/lib/python2.7/test/test_pkgimport.pyo
+#usr/lib/python2.7/test/test_pkgutil.py
+#usr/lib/python2.7/test/test_pkgutil.pyc
+#usr/lib/python2.7/test/test_pkgutil.pyo
+#usr/lib/python2.7/test/test_platform.py
+#usr/lib/python2.7/test/test_platform.pyc
+#usr/lib/python2.7/test/test_platform.pyo
+#usr/lib/python2.7/test/test_plistlib.py
+#usr/lib/python2.7/test/test_plistlib.pyc
+#usr/lib/python2.7/test/test_plistlib.pyo
+#usr/lib/python2.7/test/test_poll.py
+#usr/lib/python2.7/test/test_poll.pyc
+#usr/lib/python2.7/test/test_poll.pyo
+#usr/lib/python2.7/test/test_popen.py
+#usr/lib/python2.7/test/test_popen.pyc
+#usr/lib/python2.7/test/test_popen.pyo
+#usr/lib/python2.7/test/test_popen2.py
+#usr/lib/python2.7/test/test_popen2.pyc
+#usr/lib/python2.7/test/test_popen2.pyo
+#usr/lib/python2.7/test/test_poplib.py
+#usr/lib/python2.7/test/test_poplib.pyc
+#usr/lib/python2.7/test/test_poplib.pyo
+#usr/lib/python2.7/test/test_posix.py
+#usr/lib/python2.7/test/test_posix.pyc
+#usr/lib/python2.7/test/test_posix.pyo
+#usr/lib/python2.7/test/test_posixpath.py
+#usr/lib/python2.7/test/test_posixpath.pyc
+#usr/lib/python2.7/test/test_posixpath.pyo
+#usr/lib/python2.7/test/test_pow.py
+#usr/lib/python2.7/test/test_pow.pyc
+#usr/lib/python2.7/test/test_pow.pyo
+#usr/lib/python2.7/test/test_pprint.py
+#usr/lib/python2.7/test/test_pprint.pyc
+#usr/lib/python2.7/test/test_pprint.pyo
+#usr/lib/python2.7/test/test_print.py
+#usr/lib/python2.7/test/test_print.pyc
+#usr/lib/python2.7/test/test_print.pyo
+#usr/lib/python2.7/test/test_profile.py
+#usr/lib/python2.7/test/test_profile.pyc
+#usr/lib/python2.7/test/test_profile.pyo
+#usr/lib/python2.7/test/test_property.py
+#usr/lib/python2.7/test/test_property.pyc
+#usr/lib/python2.7/test/test_property.pyo
+#usr/lib/python2.7/test/test_pstats.py
+#usr/lib/python2.7/test/test_pstats.pyc
+#usr/lib/python2.7/test/test_pstats.pyo
+#usr/lib/python2.7/test/test_pty.py
+#usr/lib/python2.7/test/test_pty.pyc
+#usr/lib/python2.7/test/test_pty.pyo
+#usr/lib/python2.7/test/test_pwd.py
+#usr/lib/python2.7/test/test_pwd.pyc
+#usr/lib/python2.7/test/test_pwd.pyo
+#usr/lib/python2.7/test/test_py3kwarn.py
+#usr/lib/python2.7/test/test_py3kwarn.pyc
+#usr/lib/python2.7/test/test_py3kwarn.pyo
+#usr/lib/python2.7/test/test_py_compile.py
+#usr/lib/python2.7/test/test_py_compile.pyc
+#usr/lib/python2.7/test/test_py_compile.pyo
+#usr/lib/python2.7/test/test_pyclbr.py
+#usr/lib/python2.7/test/test_pyclbr.pyc
+#usr/lib/python2.7/test/test_pyclbr.pyo
+#usr/lib/python2.7/test/test_pydoc.py
+#usr/lib/python2.7/test/test_pydoc.pyc
+#usr/lib/python2.7/test/test_pydoc.pyo
+#usr/lib/python2.7/test/test_pyexpat.py
+#usr/lib/python2.7/test/test_pyexpat.pyc
+#usr/lib/python2.7/test/test_pyexpat.pyo
+#usr/lib/python2.7/test/test_queue.py
+#usr/lib/python2.7/test/test_queue.pyc
+#usr/lib/python2.7/test/test_queue.pyo
+#usr/lib/python2.7/test/test_quopri.py
+#usr/lib/python2.7/test/test_quopri.pyc
+#usr/lib/python2.7/test/test_quopri.pyo
+#usr/lib/python2.7/test/test_random.py
+#usr/lib/python2.7/test/test_random.pyc
+#usr/lib/python2.7/test/test_random.pyo
+#usr/lib/python2.7/test/test_re.py
+#usr/lib/python2.7/test/test_re.pyc
+#usr/lib/python2.7/test/test_re.pyo
+#usr/lib/python2.7/test/test_readline.py
+#usr/lib/python2.7/test/test_readline.pyc
+#usr/lib/python2.7/test/test_readline.pyo
+#usr/lib/python2.7/test/test_repr.py
+#usr/lib/python2.7/test/test_repr.pyc
+#usr/lib/python2.7/test/test_repr.pyo
+#usr/lib/python2.7/test/test_resource.py
+#usr/lib/python2.7/test/test_resource.pyc
+#usr/lib/python2.7/test/test_resource.pyo
+#usr/lib/python2.7/test/test_rfc822.py
+#usr/lib/python2.7/test/test_rfc822.pyc
+#usr/lib/python2.7/test/test_rfc822.pyo
+#usr/lib/python2.7/test/test_richcmp.py
+#usr/lib/python2.7/test/test_richcmp.pyc
+#usr/lib/python2.7/test/test_richcmp.pyo
+#usr/lib/python2.7/test/test_rlcompleter.py
+#usr/lib/python2.7/test/test_rlcompleter.pyc
+#usr/lib/python2.7/test/test_rlcompleter.pyo
+#usr/lib/python2.7/test/test_robotparser.py
+#usr/lib/python2.7/test/test_robotparser.pyc
+#usr/lib/python2.7/test/test_robotparser.pyo
+#usr/lib/python2.7/test/test_runpy.py
+#usr/lib/python2.7/test/test_runpy.pyc
+#usr/lib/python2.7/test/test_runpy.pyo
+#usr/lib/python2.7/test/test_sax.py
+#usr/lib/python2.7/test/test_sax.pyc
+#usr/lib/python2.7/test/test_sax.pyo
+#usr/lib/python2.7/test/test_scope.py
+#usr/lib/python2.7/test/test_scope.pyc
+#usr/lib/python2.7/test/test_scope.pyo
+#usr/lib/python2.7/test/test_scriptpackages.py
+#usr/lib/python2.7/test/test_scriptpackages.pyc
+#usr/lib/python2.7/test/test_scriptpackages.pyo
+#usr/lib/python2.7/test/test_select.py
+#usr/lib/python2.7/test/test_select.pyc
+#usr/lib/python2.7/test/test_select.pyo
+#usr/lib/python2.7/test/test_set.py
+#usr/lib/python2.7/test/test_set.pyc
+#usr/lib/python2.7/test/test_set.pyo
+#usr/lib/python2.7/test/test_setcomps.py
+#usr/lib/python2.7/test/test_setcomps.pyc
+#usr/lib/python2.7/test/test_setcomps.pyo
+#usr/lib/python2.7/test/test_sets.py
+#usr/lib/python2.7/test/test_sets.pyc
+#usr/lib/python2.7/test/test_sets.pyo
+#usr/lib/python2.7/test/test_sgmllib.py
+#usr/lib/python2.7/test/test_sgmllib.pyc
+#usr/lib/python2.7/test/test_sgmllib.pyo
+#usr/lib/python2.7/test/test_sha.py
+#usr/lib/python2.7/test/test_sha.pyc
+#usr/lib/python2.7/test/test_sha.pyo
+#usr/lib/python2.7/test/test_shelve.py
+#usr/lib/python2.7/test/test_shelve.pyc
+#usr/lib/python2.7/test/test_shelve.pyo
+#usr/lib/python2.7/test/test_shlex.py
+#usr/lib/python2.7/test/test_shlex.pyc
+#usr/lib/python2.7/test/test_shlex.pyo
+#usr/lib/python2.7/test/test_shutil.py
+#usr/lib/python2.7/test/test_shutil.pyc
+#usr/lib/python2.7/test/test_shutil.pyo
+#usr/lib/python2.7/test/test_signal.py
+#usr/lib/python2.7/test/test_signal.pyc
+#usr/lib/python2.7/test/test_signal.pyo
+#usr/lib/python2.7/test/test_site.py
+#usr/lib/python2.7/test/test_site.pyc
+#usr/lib/python2.7/test/test_site.pyo
+#usr/lib/python2.7/test/test_slice.py
+#usr/lib/python2.7/test/test_slice.pyc
+#usr/lib/python2.7/test/test_slice.pyo
+#usr/lib/python2.7/test/test_smtplib.py
+#usr/lib/python2.7/test/test_smtplib.pyc
+#usr/lib/python2.7/test/test_smtplib.pyo
+#usr/lib/python2.7/test/test_smtpnet.py
+#usr/lib/python2.7/test/test_smtpnet.pyc
+#usr/lib/python2.7/test/test_smtpnet.pyo
+#usr/lib/python2.7/test/test_socket.py
+#usr/lib/python2.7/test/test_socket.pyc
+#usr/lib/python2.7/test/test_socket.pyo
+#usr/lib/python2.7/test/test_socketserver.py
+#usr/lib/python2.7/test/test_socketserver.pyc
+#usr/lib/python2.7/test/test_socketserver.pyo
+#usr/lib/python2.7/test/test_softspace.py
+#usr/lib/python2.7/test/test_softspace.pyc
+#usr/lib/python2.7/test/test_softspace.pyo
+#usr/lib/python2.7/test/test_sort.py
+#usr/lib/python2.7/test/test_sort.pyc
+#usr/lib/python2.7/test/test_sort.pyo
+#usr/lib/python2.7/test/test_spwd.py
+#usr/lib/python2.7/test/test_spwd.pyc
+#usr/lib/python2.7/test/test_spwd.pyo
+#usr/lib/python2.7/test/test_sqlite.py
+#usr/lib/python2.7/test/test_sqlite.pyc
+#usr/lib/python2.7/test/test_sqlite.pyo
+#usr/lib/python2.7/test/test_ssl.py
+#usr/lib/python2.7/test/test_ssl.pyc
+#usr/lib/python2.7/test/test_ssl.pyo
+#usr/lib/python2.7/test/test_startfile.py
+#usr/lib/python2.7/test/test_startfile.pyc
+#usr/lib/python2.7/test/test_startfile.pyo
+#usr/lib/python2.7/test/test_stat.py
+#usr/lib/python2.7/test/test_stat.pyc
+#usr/lib/python2.7/test/test_stat.pyo
+#usr/lib/python2.7/test/test_str.py
+#usr/lib/python2.7/test/test_str.pyc
+#usr/lib/python2.7/test/test_str.pyo
+#usr/lib/python2.7/test/test_strftime.py
+#usr/lib/python2.7/test/test_strftime.pyc
+#usr/lib/python2.7/test/test_strftime.pyo
+#usr/lib/python2.7/test/test_string.py
+#usr/lib/python2.7/test/test_string.pyc
+#usr/lib/python2.7/test/test_string.pyo
+#usr/lib/python2.7/test/test_stringprep.py
+#usr/lib/python2.7/test/test_stringprep.pyc
+#usr/lib/python2.7/test/test_stringprep.pyo
+#usr/lib/python2.7/test/test_strop.py
+#usr/lib/python2.7/test/test_strop.pyc
+#usr/lib/python2.7/test/test_strop.pyo
+#usr/lib/python2.7/test/test_strptime.py
+#usr/lib/python2.7/test/test_strptime.pyc
+#usr/lib/python2.7/test/test_strptime.pyo
+#usr/lib/python2.7/test/test_strtod.py
+#usr/lib/python2.7/test/test_strtod.pyc
+#usr/lib/python2.7/test/test_strtod.pyo
+#usr/lib/python2.7/test/test_struct.py
+#usr/lib/python2.7/test/test_struct.pyc
+#usr/lib/python2.7/test/test_struct.pyo
+#usr/lib/python2.7/test/test_structmembers.py
+#usr/lib/python2.7/test/test_structmembers.pyc
+#usr/lib/python2.7/test/test_structmembers.pyo
+#usr/lib/python2.7/test/test_structseq.py
+#usr/lib/python2.7/test/test_structseq.pyc
+#usr/lib/python2.7/test/test_structseq.pyo
+#usr/lib/python2.7/test/test_subprocess.py
+#usr/lib/python2.7/test/test_subprocess.pyc
+#usr/lib/python2.7/test/test_subprocess.pyo
+#usr/lib/python2.7/test/test_sunau.py
+#usr/lib/python2.7/test/test_sunau.pyc
+#usr/lib/python2.7/test/test_sunau.pyo
+#usr/lib/python2.7/test/test_sunaudiodev.py
+#usr/lib/python2.7/test/test_sunaudiodev.pyc
+#usr/lib/python2.7/test/test_sunaudiodev.pyo
+#usr/lib/python2.7/test/test_sundry.py
+#usr/lib/python2.7/test/test_sundry.pyc
+#usr/lib/python2.7/test/test_sundry.pyo
+#usr/lib/python2.7/test/test_support.py
+#usr/lib/python2.7/test/test_support.pyc
+#usr/lib/python2.7/test/test_support.pyo
+#usr/lib/python2.7/test/test_symtable.py
+#usr/lib/python2.7/test/test_symtable.pyc
+#usr/lib/python2.7/test/test_symtable.pyo
+#usr/lib/python2.7/test/test_syntax.py
+#usr/lib/python2.7/test/test_syntax.pyc
+#usr/lib/python2.7/test/test_syntax.pyo
+#usr/lib/python2.7/test/test_sys.py
+#usr/lib/python2.7/test/test_sys.pyc
+#usr/lib/python2.7/test/test_sys.pyo
+#usr/lib/python2.7/test/test_sys_setprofile.py
+#usr/lib/python2.7/test/test_sys_setprofile.pyc
+#usr/lib/python2.7/test/test_sys_setprofile.pyo
+#usr/lib/python2.7/test/test_sys_settrace.py
+#usr/lib/python2.7/test/test_sys_settrace.pyc
+#usr/lib/python2.7/test/test_sys_settrace.pyo
+#usr/lib/python2.7/test/test_sysconfig.py
+#usr/lib/python2.7/test/test_sysconfig.pyc
+#usr/lib/python2.7/test/test_sysconfig.pyo
+#usr/lib/python2.7/test/test_tarfile.py
+#usr/lib/python2.7/test/test_tarfile.pyc
+#usr/lib/python2.7/test/test_tarfile.pyo
+#usr/lib/python2.7/test/test_tcl.py
+#usr/lib/python2.7/test/test_tcl.pyc
+#usr/lib/python2.7/test/test_tcl.pyo
+#usr/lib/python2.7/test/test_telnetlib.py
+#usr/lib/python2.7/test/test_telnetlib.pyc
+#usr/lib/python2.7/test/test_telnetlib.pyo
+#usr/lib/python2.7/test/test_tempfile.py
+#usr/lib/python2.7/test/test_tempfile.pyc
+#usr/lib/python2.7/test/test_tempfile.pyo
+#usr/lib/python2.7/test/test_textwrap.py
+#usr/lib/python2.7/test/test_textwrap.pyc
+#usr/lib/python2.7/test/test_textwrap.pyo
+#usr/lib/python2.7/test/test_thread.py
+#usr/lib/python2.7/test/test_thread.pyc
+#usr/lib/python2.7/test/test_thread.pyo
+#usr/lib/python2.7/test/test_threaded_import.py
+#usr/lib/python2.7/test/test_threaded_import.pyc
+#usr/lib/python2.7/test/test_threaded_import.pyo
+#usr/lib/python2.7/test/test_threadedtempfile.py
+#usr/lib/python2.7/test/test_threadedtempfile.pyc
+#usr/lib/python2.7/test/test_threadedtempfile.pyo
+#usr/lib/python2.7/test/test_threading.py
+#usr/lib/python2.7/test/test_threading.pyc
+#usr/lib/python2.7/test/test_threading.pyo
+#usr/lib/python2.7/test/test_threading_local.py
+#usr/lib/python2.7/test/test_threading_local.pyc
+#usr/lib/python2.7/test/test_threading_local.pyo
+#usr/lib/python2.7/test/test_threadsignals.py
+#usr/lib/python2.7/test/test_threadsignals.pyc
+#usr/lib/python2.7/test/test_threadsignals.pyo
+#usr/lib/python2.7/test/test_time.py
+#usr/lib/python2.7/test/test_time.pyc
+#usr/lib/python2.7/test/test_time.pyo
+#usr/lib/python2.7/test/test_timeit.py
+#usr/lib/python2.7/test/test_timeit.pyc
+#usr/lib/python2.7/test/test_timeit.pyo
+#usr/lib/python2.7/test/test_timeout.py
+#usr/lib/python2.7/test/test_timeout.pyc
+#usr/lib/python2.7/test/test_timeout.pyo
+#usr/lib/python2.7/test/test_tk.py
+#usr/lib/python2.7/test/test_tk.pyc
+#usr/lib/python2.7/test/test_tk.pyo
+#usr/lib/python2.7/test/test_tokenize.py
+#usr/lib/python2.7/test/test_tokenize.pyc
+#usr/lib/python2.7/test/test_tokenize.pyo
+#usr/lib/python2.7/test/test_tools.py
+#usr/lib/python2.7/test/test_tools.pyc
+#usr/lib/python2.7/test/test_tools.pyo
+#usr/lib/python2.7/test/test_trace.py
+#usr/lib/python2.7/test/test_trace.pyc
+#usr/lib/python2.7/test/test_trace.pyo
+#usr/lib/python2.7/test/test_traceback.py
+#usr/lib/python2.7/test/test_traceback.pyc
+#usr/lib/python2.7/test/test_traceback.pyo
+#usr/lib/python2.7/test/test_transformer.py
+#usr/lib/python2.7/test/test_transformer.pyc
+#usr/lib/python2.7/test/test_transformer.pyo
+#usr/lib/python2.7/test/test_ttk_guionly.py
+#usr/lib/python2.7/test/test_ttk_guionly.pyc
+#usr/lib/python2.7/test/test_ttk_guionly.pyo
+#usr/lib/python2.7/test/test_ttk_textonly.py
+#usr/lib/python2.7/test/test_ttk_textonly.pyc
+#usr/lib/python2.7/test/test_ttk_textonly.pyo
+#usr/lib/python2.7/test/test_tuple.py
+#usr/lib/python2.7/test/test_tuple.pyc
+#usr/lib/python2.7/test/test_tuple.pyo
+#usr/lib/python2.7/test/test_typechecks.py
+#usr/lib/python2.7/test/test_typechecks.pyc
+#usr/lib/python2.7/test/test_typechecks.pyo
+#usr/lib/python2.7/test/test_types.py
+#usr/lib/python2.7/test/test_types.pyc
+#usr/lib/python2.7/test/test_types.pyo
+#usr/lib/python2.7/test/test_ucn.py
+#usr/lib/python2.7/test/test_ucn.pyc
+#usr/lib/python2.7/test/test_ucn.pyo
+#usr/lib/python2.7/test/test_unary.py
+#usr/lib/python2.7/test/test_unary.pyc
+#usr/lib/python2.7/test/test_unary.pyo
+#usr/lib/python2.7/test/test_undocumented_details.py
+#usr/lib/python2.7/test/test_undocumented_details.pyc
+#usr/lib/python2.7/test/test_undocumented_details.pyo
+#usr/lib/python2.7/test/test_unicode.py
+#usr/lib/python2.7/test/test_unicode.pyc
+#usr/lib/python2.7/test/test_unicode.pyo
+#usr/lib/python2.7/test/test_unicode_file.py
+#usr/lib/python2.7/test/test_unicode_file.pyc
+#usr/lib/python2.7/test/test_unicode_file.pyo
+#usr/lib/python2.7/test/test_unicodedata.py
+#usr/lib/python2.7/test/test_unicodedata.pyc
+#usr/lib/python2.7/test/test_unicodedata.pyo
+#usr/lib/python2.7/test/test_unittest.py
+#usr/lib/python2.7/test/test_unittest.pyc
+#usr/lib/python2.7/test/test_unittest.pyo
+#usr/lib/python2.7/test/test_univnewlines.py
+#usr/lib/python2.7/test/test_univnewlines.pyc
+#usr/lib/python2.7/test/test_univnewlines.pyo
+#usr/lib/python2.7/test/test_univnewlines2k.py
+#usr/lib/python2.7/test/test_univnewlines2k.pyc
+#usr/lib/python2.7/test/test_univnewlines2k.pyo
+#usr/lib/python2.7/test/test_unpack.py
+#usr/lib/python2.7/test/test_unpack.pyc
+#usr/lib/python2.7/test/test_unpack.pyo
+#usr/lib/python2.7/test/test_urllib.py
+#usr/lib/python2.7/test/test_urllib.pyc
+#usr/lib/python2.7/test/test_urllib.pyo
+#usr/lib/python2.7/test/test_urllib2.py
+#usr/lib/python2.7/test/test_urllib2.pyc
+#usr/lib/python2.7/test/test_urllib2.pyo
+#usr/lib/python2.7/test/test_urllib2_localnet.py
+#usr/lib/python2.7/test/test_urllib2_localnet.pyc
+#usr/lib/python2.7/test/test_urllib2_localnet.pyo
+#usr/lib/python2.7/test/test_urllib2net.py
+#usr/lib/python2.7/test/test_urllib2net.pyc
+#usr/lib/python2.7/test/test_urllib2net.pyo
+#usr/lib/python2.7/test/test_urllibnet.py
+#usr/lib/python2.7/test/test_urllibnet.pyc
+#usr/lib/python2.7/test/test_urllibnet.pyo
+#usr/lib/python2.7/test/test_urlparse.py
+#usr/lib/python2.7/test/test_urlparse.pyc
+#usr/lib/python2.7/test/test_urlparse.pyo
+#usr/lib/python2.7/test/test_userdict.py
+#usr/lib/python2.7/test/test_userdict.pyc
+#usr/lib/python2.7/test/test_userdict.pyo
+#usr/lib/python2.7/test/test_userlist.py
+#usr/lib/python2.7/test/test_userlist.pyc
+#usr/lib/python2.7/test/test_userlist.pyo
+#usr/lib/python2.7/test/test_userstring.py
+#usr/lib/python2.7/test/test_userstring.pyc
+#usr/lib/python2.7/test/test_userstring.pyo
+#usr/lib/python2.7/test/test_uu.py
+#usr/lib/python2.7/test/test_uu.pyc
+#usr/lib/python2.7/test/test_uu.pyo
+#usr/lib/python2.7/test/test_uuid.py
+#usr/lib/python2.7/test/test_uuid.pyc
+#usr/lib/python2.7/test/test_uuid.pyo
+#usr/lib/python2.7/test/test_wait3.py
+#usr/lib/python2.7/test/test_wait3.pyc
+#usr/lib/python2.7/test/test_wait3.pyo
+#usr/lib/python2.7/test/test_wait4.py
+#usr/lib/python2.7/test/test_wait4.pyc
+#usr/lib/python2.7/test/test_wait4.pyo
+#usr/lib/python2.7/test/test_warnings.py
+#usr/lib/python2.7/test/test_warnings.pyc
+#usr/lib/python2.7/test/test_warnings.pyo
+#usr/lib/python2.7/test/test_wave.py
+#usr/lib/python2.7/test/test_wave.pyc
+#usr/lib/python2.7/test/test_wave.pyo
+#usr/lib/python2.7/test/test_weakref.py
+#usr/lib/python2.7/test/test_weakref.pyc
+#usr/lib/python2.7/test/test_weakref.pyo
+#usr/lib/python2.7/test/test_weakset.py
+#usr/lib/python2.7/test/test_weakset.pyc
+#usr/lib/python2.7/test/test_weakset.pyo
+#usr/lib/python2.7/test/test_whichdb.py
+#usr/lib/python2.7/test/test_whichdb.pyc
+#usr/lib/python2.7/test/test_whichdb.pyo
+#usr/lib/python2.7/test/test_winreg.py
+#usr/lib/python2.7/test/test_winreg.pyc
+#usr/lib/python2.7/test/test_winreg.pyo
+#usr/lib/python2.7/test/test_winsound.py
+#usr/lib/python2.7/test/test_winsound.pyc
+#usr/lib/python2.7/test/test_winsound.pyo
+#usr/lib/python2.7/test/test_with.py
+#usr/lib/python2.7/test/test_with.pyc
+#usr/lib/python2.7/test/test_with.pyo
+#usr/lib/python2.7/test/test_wsgiref.py
+#usr/lib/python2.7/test/test_wsgiref.pyc
+#usr/lib/python2.7/test/test_wsgiref.pyo
+#usr/lib/python2.7/test/test_xdrlib.py
+#usr/lib/python2.7/test/test_xdrlib.pyc
+#usr/lib/python2.7/test/test_xdrlib.pyo
+#usr/lib/python2.7/test/test_xml_etree.py
+#usr/lib/python2.7/test/test_xml_etree.pyc
+#usr/lib/python2.7/test/test_xml_etree.pyo
+#usr/lib/python2.7/test/test_xml_etree_c.py
+#usr/lib/python2.7/test/test_xml_etree_c.pyc
+#usr/lib/python2.7/test/test_xml_etree_c.pyo
+#usr/lib/python2.7/test/test_xmllib.py
+#usr/lib/python2.7/test/test_xmllib.pyc
+#usr/lib/python2.7/test/test_xmllib.pyo
+#usr/lib/python2.7/test/test_xmlrpc.py
+#usr/lib/python2.7/test/test_xmlrpc.pyc
+#usr/lib/python2.7/test/test_xmlrpc.pyo
+#usr/lib/python2.7/test/test_xpickle.py
+#usr/lib/python2.7/test/test_xpickle.pyc
+#usr/lib/python2.7/test/test_xpickle.pyo
+#usr/lib/python2.7/test/test_xrange.py
+#usr/lib/python2.7/test/test_xrange.pyc
+#usr/lib/python2.7/test/test_xrange.pyo
+#usr/lib/python2.7/test/test_zipfile.py
+#usr/lib/python2.7/test/test_zipfile.pyc
+#usr/lib/python2.7/test/test_zipfile.pyo
+#usr/lib/python2.7/test/test_zipfile64.py
+#usr/lib/python2.7/test/test_zipfile64.pyc
+#usr/lib/python2.7/test/test_zipfile64.pyo
+#usr/lib/python2.7/test/test_zipimport.py
+#usr/lib/python2.7/test/test_zipimport.pyc
+#usr/lib/python2.7/test/test_zipimport.pyo
+#usr/lib/python2.7/test/test_zipimport_support.py
+#usr/lib/python2.7/test/test_zipimport_support.pyc
+#usr/lib/python2.7/test/test_zipimport_support.pyo
+#usr/lib/python2.7/test/test_zlib.py
+#usr/lib/python2.7/test/test_zlib.pyc
+#usr/lib/python2.7/test/test_zlib.pyo
+#usr/lib/python2.7/test/testall.py
+#usr/lib/python2.7/test/testall.pyc
+#usr/lib/python2.7/test/testall.pyo
+#usr/lib/python2.7/test/testcodec.py
+#usr/lib/python2.7/test/testcodec.pyc
+#usr/lib/python2.7/test/testcodec.pyo
+#usr/lib/python2.7/test/testimg.uue
+#usr/lib/python2.7/test/testimgr.uue
+#usr/lib/python2.7/test/testrgb.uue
+#usr/lib/python2.7/test/testtar.tar
+#usr/lib/python2.7/test/tf_inherit_check.py
+#usr/lib/python2.7/test/tf_inherit_check.pyc
+#usr/lib/python2.7/test/tf_inherit_check.pyo
+#usr/lib/python2.7/test/threaded_import_hangers.py
+#usr/lib/python2.7/test/threaded_import_hangers.pyc
+#usr/lib/python2.7/test/threaded_import_hangers.pyo
+#usr/lib/python2.7/test/time_hashlib.py
+#usr/lib/python2.7/test/time_hashlib.pyc
+#usr/lib/python2.7/test/time_hashlib.pyo
+#usr/lib/python2.7/test/tokenize_tests.txt
+#usr/lib/python2.7/test/tracedmodules
+#usr/lib/python2.7/test/tracedmodules/__init__.py
+#usr/lib/python2.7/test/tracedmodules/__init__.pyc
+#usr/lib/python2.7/test/tracedmodules/__init__.pyo
+#usr/lib/python2.7/test/tracedmodules/testmod.py
+#usr/lib/python2.7/test/tracedmodules/testmod.pyc
+#usr/lib/python2.7/test/tracedmodules/testmod.pyo
+#usr/lib/python2.7/test/warning_tests.py
+#usr/lib/python2.7/test/warning_tests.pyc
+#usr/lib/python2.7/test/warning_tests.pyo
+#usr/lib/python2.7/test/win_console_handler.py
+#usr/lib/python2.7/test/win_console_handler.pyc
+#usr/lib/python2.7/test/win_console_handler.pyo
+#usr/lib/python2.7/test/wrongcert.pem
+#usr/lib/python2.7/test/xmltestdata
+#usr/lib/python2.7/test/xmltestdata/simple-ns.xml
+#usr/lib/python2.7/test/xmltestdata/simple.xml
+#usr/lib/python2.7/test/xmltestdata/test.xml
+#usr/lib/python2.7/test/xmltestdata/test.xml.out
+#usr/lib/python2.7/test/xmltests.py
+#usr/lib/python2.7/test/xmltests.pyc
+#usr/lib/python2.7/test/xmltests.pyo
+#usr/lib/python2.7/test/zipdir.zip
+#usr/lib/python2.7/textwrap.py
+usr/lib/python2.7/textwrap.pyc
+#usr/lib/python2.7/textwrap.pyo
+#usr/lib/python2.7/this.py
+usr/lib/python2.7/this.pyc
+#usr/lib/python2.7/this.pyo
+#usr/lib/python2.7/threading.py
+usr/lib/python2.7/threading.pyc
+#usr/lib/python2.7/threading.pyo
+#usr/lib/python2.7/timeit.py
+usr/lib/python2.7/timeit.pyc
+#usr/lib/python2.7/timeit.pyo
+#usr/lib/python2.7/toaiff.py
+usr/lib/python2.7/toaiff.pyc
+#usr/lib/python2.7/toaiff.pyo
+#usr/lib/python2.7/token.py
+usr/lib/python2.7/token.pyc
+#usr/lib/python2.7/token.pyo
+#usr/lib/python2.7/tokenize.py
+usr/lib/python2.7/tokenize.pyc
+#usr/lib/python2.7/tokenize.pyo
+#usr/lib/python2.7/trace.py
+usr/lib/python2.7/trace.pyc
+#usr/lib/python2.7/trace.pyo
+#usr/lib/python2.7/traceback.py
+usr/lib/python2.7/traceback.pyc
+#usr/lib/python2.7/traceback.pyo
+#usr/lib/python2.7/tty.py
+usr/lib/python2.7/tty.pyc
+#usr/lib/python2.7/tty.pyo
+#usr/lib/python2.7/types.py
+usr/lib/python2.7/types.pyc
+#usr/lib/python2.7/types.pyo
+#usr/lib/python2.7/unittest
+#usr/lib/python2.7/unittest/__init__.py
+#usr/lib/python2.7/unittest/__init__.pyc
+#usr/lib/python2.7/unittest/__init__.pyo
+#usr/lib/python2.7/unittest/__main__.py
+#usr/lib/python2.7/unittest/__main__.pyc
+#usr/lib/python2.7/unittest/__main__.pyo
+#usr/lib/python2.7/unittest/case.py
+#usr/lib/python2.7/unittest/case.pyc
+#usr/lib/python2.7/unittest/case.pyo
+#usr/lib/python2.7/unittest/loader.py
+#usr/lib/python2.7/unittest/loader.pyc
+#usr/lib/python2.7/unittest/loader.pyo
+#usr/lib/python2.7/unittest/main.py
+#usr/lib/python2.7/unittest/main.pyc
+#usr/lib/python2.7/unittest/main.pyo
+#usr/lib/python2.7/unittest/result.py
+#usr/lib/python2.7/unittest/result.pyc
+#usr/lib/python2.7/unittest/result.pyo
+#usr/lib/python2.7/unittest/runner.py
+#usr/lib/python2.7/unittest/runner.pyc
+#usr/lib/python2.7/unittest/runner.pyo
+#usr/lib/python2.7/unittest/signals.py
+#usr/lib/python2.7/unittest/signals.pyc
+#usr/lib/python2.7/unittest/signals.pyo
+#usr/lib/python2.7/unittest/suite.py
+#usr/lib/python2.7/unittest/suite.pyc
+#usr/lib/python2.7/unittest/suite.pyo
+#usr/lib/python2.7/unittest/test
+#usr/lib/python2.7/unittest/test/__init__.py
+#usr/lib/python2.7/unittest/test/__init__.pyc
+#usr/lib/python2.7/unittest/test/__init__.pyo
+#usr/lib/python2.7/unittest/test/dummy.py
+#usr/lib/python2.7/unittest/test/dummy.pyc
+#usr/lib/python2.7/unittest/test/dummy.pyo
+#usr/lib/python2.7/unittest/test/support.py
+#usr/lib/python2.7/unittest/test/support.pyc
+#usr/lib/python2.7/unittest/test/support.pyo
+#usr/lib/python2.7/unittest/test/test_assertions.py
+#usr/lib/python2.7/unittest/test/test_assertions.pyc
+#usr/lib/python2.7/unittest/test/test_assertions.pyo
+#usr/lib/python2.7/unittest/test/test_break.py
+#usr/lib/python2.7/unittest/test/test_break.pyc
+#usr/lib/python2.7/unittest/test/test_break.pyo
+#usr/lib/python2.7/unittest/test/test_case.py
+#usr/lib/python2.7/unittest/test/test_case.pyc
+#usr/lib/python2.7/unittest/test/test_case.pyo
+#usr/lib/python2.7/unittest/test/test_discovery.py
+#usr/lib/python2.7/unittest/test/test_discovery.pyc
+#usr/lib/python2.7/unittest/test/test_discovery.pyo
+#usr/lib/python2.7/unittest/test/test_functiontestcase.py
+#usr/lib/python2.7/unittest/test/test_functiontestcase.pyc
+#usr/lib/python2.7/unittest/test/test_functiontestcase.pyo
+#usr/lib/python2.7/unittest/test/test_loader.py
+#usr/lib/python2.7/unittest/test/test_loader.pyc
+#usr/lib/python2.7/unittest/test/test_loader.pyo
+#usr/lib/python2.7/unittest/test/test_program.py
+#usr/lib/python2.7/unittest/test/test_program.pyc
+#usr/lib/python2.7/unittest/test/test_program.pyo
+#usr/lib/python2.7/unittest/test/test_result.py
+#usr/lib/python2.7/unittest/test/test_result.pyc
+#usr/lib/python2.7/unittest/test/test_result.pyo
+#usr/lib/python2.7/unittest/test/test_runner.py
+#usr/lib/python2.7/unittest/test/test_runner.pyc
+#usr/lib/python2.7/unittest/test/test_runner.pyo
+#usr/lib/python2.7/unittest/test/test_setups.py
+#usr/lib/python2.7/unittest/test/test_setups.pyc
+#usr/lib/python2.7/unittest/test/test_setups.pyo
+#usr/lib/python2.7/unittest/test/test_skipping.py
+#usr/lib/python2.7/unittest/test/test_skipping.pyc
+#usr/lib/python2.7/unittest/test/test_skipping.pyo
+#usr/lib/python2.7/unittest/test/test_suite.py
+#usr/lib/python2.7/unittest/test/test_suite.pyc
+#usr/lib/python2.7/unittest/test/test_suite.pyo
+#usr/lib/python2.7/unittest/util.py
+#usr/lib/python2.7/unittest/util.pyc
+#usr/lib/python2.7/unittest/util.pyo
+#usr/lib/python2.7/urllib.py
+usr/lib/python2.7/urllib.pyc
+#usr/lib/python2.7/urllib.pyo
+#usr/lib/python2.7/urllib2.py
+usr/lib/python2.7/urllib2.pyc
+#usr/lib/python2.7/urllib2.pyo
+#usr/lib/python2.7/urlparse.py
+usr/lib/python2.7/urlparse.pyc
+#usr/lib/python2.7/urlparse.pyo
+#usr/lib/python2.7/user.py
+usr/lib/python2.7/user.pyc
+#usr/lib/python2.7/user.pyo
+#usr/lib/python2.7/uu.py
+usr/lib/python2.7/uu.pyc
+#usr/lib/python2.7/uu.pyo
+#usr/lib/python2.7/uuid.py
+usr/lib/python2.7/uuid.pyc
+#usr/lib/python2.7/uuid.pyo
+#usr/lib/python2.7/warnings.py
+usr/lib/python2.7/warnings.pyc
+#usr/lib/python2.7/warnings.pyo
+#usr/lib/python2.7/wave.py
+usr/lib/python2.7/wave.pyc
+#usr/lib/python2.7/wave.pyo
+#usr/lib/python2.7/weakref.py
+usr/lib/python2.7/weakref.pyc
+#usr/lib/python2.7/weakref.pyo
+#usr/lib/python2.7/webbrowser.py
+usr/lib/python2.7/webbrowser.pyc
+#usr/lib/python2.7/webbrowser.pyo
+#usr/lib/python2.7/whichdb.py
+usr/lib/python2.7/whichdb.pyc
+#usr/lib/python2.7/whichdb.pyo
+#usr/lib/python2.7/wsgiref
+#usr/lib/python2.7/wsgiref.egg-info
+#usr/lib/python2.7/wsgiref/__init__.py
+usr/lib/python2.7/wsgiref/__init__.pyc
+#usr/lib/python2.7/wsgiref/__init__.pyo
+#usr/lib/python2.7/wsgiref/handlers.py
+usr/lib/python2.7/wsgiref/handlers.pyc
+#usr/lib/python2.7/wsgiref/handlers.pyo
+#usr/lib/python2.7/wsgiref/headers.py
+usr/lib/python2.7/wsgiref/headers.pyc
+#usr/lib/python2.7/wsgiref/headers.pyo
+#usr/lib/python2.7/wsgiref/simple_server.py
+usr/lib/python2.7/wsgiref/simple_server.pyc
+#usr/lib/python2.7/wsgiref/simple_server.pyo
+#usr/lib/python2.7/wsgiref/util.py
+usr/lib/python2.7/wsgiref/util.pyc
+#usr/lib/python2.7/wsgiref/util.pyo
+#usr/lib/python2.7/wsgiref/validate.py
+usr/lib/python2.7/wsgiref/validate.pyc
+#usr/lib/python2.7/wsgiref/validate.pyo
+#usr/lib/python2.7/xdrlib.py
+usr/lib/python2.7/xdrlib.pyc
+#usr/lib/python2.7/xdrlib.pyo
+#usr/lib/python2.7/xml
+#usr/lib/python2.7/xml/__init__.py
+usr/lib/python2.7/xml/__init__.pyc
+#usr/lib/python2.7/xml/__init__.pyo
+#usr/lib/python2.7/xml/dom
+#usr/lib/python2.7/xml/dom/NodeFilter.py
+usr/lib/python2.7/xml/dom/NodeFilter.pyc
+#usr/lib/python2.7/xml/dom/NodeFilter.pyo
+#usr/lib/python2.7/xml/dom/__init__.py
+usr/lib/python2.7/xml/dom/__init__.pyc
+#usr/lib/python2.7/xml/dom/__init__.pyo
+#usr/lib/python2.7/xml/dom/domreg.py
+usr/lib/python2.7/xml/dom/domreg.pyc
+#usr/lib/python2.7/xml/dom/domreg.pyo
+#usr/lib/python2.7/xml/dom/expatbuilder.py
+usr/lib/python2.7/xml/dom/expatbuilder.pyc
+#usr/lib/python2.7/xml/dom/expatbuilder.pyo
+#usr/lib/python2.7/xml/dom/minicompat.py
+usr/lib/python2.7/xml/dom/minicompat.pyc
+#usr/lib/python2.7/xml/dom/minicompat.pyo
+#usr/lib/python2.7/xml/dom/minidom.py
+usr/lib/python2.7/xml/dom/minidom.pyc
+#usr/lib/python2.7/xml/dom/minidom.pyo
+#usr/lib/python2.7/xml/dom/pulldom.py
+usr/lib/python2.7/xml/dom/pulldom.pyc
+#usr/lib/python2.7/xml/dom/pulldom.pyo
+#usr/lib/python2.7/xml/dom/xmlbuilder.py
+usr/lib/python2.7/xml/dom/xmlbuilder.pyc
+#usr/lib/python2.7/xml/dom/xmlbuilder.pyo
+#usr/lib/python2.7/xml/etree
+#usr/lib/python2.7/xml/etree/ElementInclude.py
+usr/lib/python2.7/xml/etree/ElementInclude.pyc
+#usr/lib/python2.7/xml/etree/ElementInclude.pyo
+#usr/lib/python2.7/xml/etree/ElementPath.py
+usr/lib/python2.7/xml/etree/ElementPath.pyc
+#usr/lib/python2.7/xml/etree/ElementPath.pyo
+#usr/lib/python2.7/xml/etree/ElementTree.py
+usr/lib/python2.7/xml/etree/ElementTree.pyc
+#usr/lib/python2.7/xml/etree/ElementTree.pyo
+#usr/lib/python2.7/xml/etree/__init__.py
+usr/lib/python2.7/xml/etree/__init__.pyc
+#usr/lib/python2.7/xml/etree/__init__.pyo
+#usr/lib/python2.7/xml/etree/cElementTree.py
+usr/lib/python2.7/xml/etree/cElementTree.pyc
+#usr/lib/python2.7/xml/etree/cElementTree.pyo
+#usr/lib/python2.7/xml/parsers
+#usr/lib/python2.7/xml/parsers/__init__.py
+usr/lib/python2.7/xml/parsers/__init__.pyc
+#usr/lib/python2.7/xml/parsers/__init__.pyo
+#usr/lib/python2.7/xml/parsers/expat.py
+usr/lib/python2.7/xml/parsers/expat.pyc
+#usr/lib/python2.7/xml/parsers/expat.pyo
+#usr/lib/python2.7/xml/sax
+#usr/lib/python2.7/xml/sax/__init__.py
+usr/lib/python2.7/xml/sax/__init__.pyc
+#usr/lib/python2.7/xml/sax/__init__.pyo
+#usr/lib/python2.7/xml/sax/_exceptions.py
+usr/lib/python2.7/xml/sax/_exceptions.pyc
+#usr/lib/python2.7/xml/sax/_exceptions.pyo
+#usr/lib/python2.7/xml/sax/expatreader.py
+usr/lib/python2.7/xml/sax/expatreader.pyc
+#usr/lib/python2.7/xml/sax/expatreader.pyo
+#usr/lib/python2.7/xml/sax/handler.py
+usr/lib/python2.7/xml/sax/handler.pyc
+#usr/lib/python2.7/xml/sax/handler.pyo
+#usr/lib/python2.7/xml/sax/saxutils.py
+usr/lib/python2.7/xml/sax/saxutils.pyc
+#usr/lib/python2.7/xml/sax/saxutils.pyo
+#usr/lib/python2.7/xml/sax/xmlreader.py
+usr/lib/python2.7/xml/sax/xmlreader.pyc
+#usr/lib/python2.7/xml/sax/xmlreader.pyo
+#usr/lib/python2.7/xmllib.py
+usr/lib/python2.7/xmllib.pyc
+#usr/lib/python2.7/xmllib.pyo
+#usr/lib/python2.7/xmlrpclib.py
+usr/lib/python2.7/xmlrpclib.pyc
+#usr/lib/python2.7/xmlrpclib.pyo
+#usr/lib/python2.7/zipfile.py
+usr/lib/python2.7/zipfile.pyc
+#usr/lib/python2.7/zipfile.pyo
+#usr/share/man/man1/python.1
+#usr/share/man/man1/python2.1
+#usr/share/man/man1/python2.7.1
diff --git a/config/rootfiles/common/x86_64/python-m2crypto b/config/rootfiles/common/x86_64/python-m2crypto
new file mode 100644 (file)
index 0000000..6352cab
--- /dev/null
@@ -0,0 +1 @@
+#usr/lib/python2.7/site-packages/M2Crypto-0.21.1-py2.7-linux-x86_64.egg
diff --git a/config/rootfiles/common/x86_64/stage2 b/config/rootfiles/common/x86_64/stage2
new file mode 100644 (file)
index 0000000..531daaa
--- /dev/null
@@ -0,0 +1,175 @@
+bin/bash
+bin/cat
+bin/echo
+bin/pwd
+bin/stty
+#boot
+etc/bashrc
+etc/certparams
+etc/e2fsck.conf
+etc/fstab
+etc/group
+etc/hddtemp.db
+etc/host.conf
+etc/inittab
+etc/inputrc
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/issue
+etc/ld.so.conf
+etc/logrotate.conf
+etc/mime.types
+etc/modprobe.d
+etc/modprobe.d/btmrvl_sdio.conf
+etc/modprobe.d/cfg80211.conf
+etc/modprobe.d/pcspeaker.conf
+etc/modules.conf
+etc/mtab
+etc/nsswitch.conf
+#etc/opt
+etc/passwd
+etc/profile
+#etc/profile.d
+etc/profile.d/colorls.sh
+etc/profile.d/extrapaths.sh
+etc/profile.d/glib2-locale.sh
+etc/profile.d/i18n.sh
+etc/profile.d/lang.sh
+etc/profile.d/readline.sh
+etc/profile.d/term256.sh
+etc/profile.d/umask.sh
+etc/resolv.conf
+etc/securetty
+etc/sysctl.conf
+etc/syslog.conf
+etc/system-release
+#home
+home/nobody
+#lib
+#lib/firmware
+#lib/firmware/brcm
+lib/firmware/brcm/brcmfmac43362-sdio.txt
+lib64
+#media
+media/cdrom
+media/floppy
+media/usbkey
+mnt
+#opt
+#opt/pakfire
+#opt/pakfire/db
+#opt/pakfire/db/core
+opt/pakfire/db/core/mine
+#root
+root/.bash_logout
+root/.bash_profile
+root/.bashrc
+root/ipfire
+run
+#sbin
+#srv
+#usr/bin
+#usr/bin/perl
+#usr/include
+#usr/lib
+usr/lib/firewall
+usr/lib/firewall/firewall-lib.pl
+usr/lib/firewall/ipsec-block
+usr/lib/firewall/rules.pl
+#usr/lib/libgcc_s.so
+usr/lib/libgcc_s.so.1
+#usr/lib/libstdc++.la
+#usr/lib/libstdc++.so
+usr/lib/libstdc++.so.6
+#usr/lib/sse2
+usr/lib64
+#usr/local
+#usr/local/bin
+#usr/local/bin/archive.files
+usr/local/bin/backupiso
+usr/local/bin/connscheduler
+usr/local/bin/consort.sh
+usr/local/bin/convert-ovpn
+usr/local/bin/hddshutdown
+usr/local/bin/httpscert
+usr/local/bin/makegraphs
+usr/local/bin/qosd
+usr/local/bin/readhash
+usr/local/bin/rebuild-initrd
+usr/local/bin/run-parts
+#usr/local/bin/sanedloop
+usr/local/bin/scanhd
+usr/local/bin/settime
+usr/local/bin/timecheck
+usr/local/bin/timezone-transition
+usr/local/bin/update-bootloader
+usr/local/bin/update-lang-cache
+usr/local/bin/xt_geoip_build
+usr/local/bin/xt_geoip_update
+#usr/local/include
+#usr/local/lib
+#usr/local/lib/sse2
+#usr/local/sbin
+#usr/local/share
+#usr/local/share/doc
+#usr/local/share/info
+#usr/local/share/locale
+#usr/local/share/man
+#usr/local/share/man/man1
+#usr/local/share/man/man2
+#usr/local/share/man/man3
+#usr/local/share/man/man4
+#usr/local/share/man/man5
+#usr/local/share/man/man6
+#usr/local/share/man/man7
+#usr/local/share/man/man8
+#usr/local/share/misc
+#usr/local/share/terminfo
+#usr/local/share/xt_geoip
+#usr/local/share/zoneinfo
+#usr/local/src
+#usr/sbin
+usr/sbin/ovpn-ccd-convert
+usr/sbin/ovpn-collectd-convert
+#usr/share
+#usr/share/doc
+#usr/share/doc/licenses
+usr/share/doc/licenses/GPLv3
+#usr/share/info
+#usr/share/locale
+#usr/share/man
+#usr/share/man/man1
+#usr/share/man/man2
+#usr/share/man/man3
+#usr/share/man/man4
+#usr/share/man/man5
+#usr/share/man/man6
+#usr/share/man/man7
+#usr/share/man/man8
+#usr/share/misc
+#usr/share/terminfo
+#usr/share/xt_geoip
+#usr/share/zoneinfo
+#var
+#var/cache
+var/empty
+#var/lib
+#var/lib/locate
+#var/lib/misc
+#var/local
+var/lock
+#var/log
+var/log/btmp
+var/log/calamaris
+var/log/counter
+var/log/lastlog
+#var/log/net-traffic.log
+var/log/wtmp
+var/mail
+#var/opt
+var/run
+#var/spool
+var/tmp
+dev/console
+dev/null
+tmp
diff --git a/config/rootfiles/common/x86_64/syslinux b/config/rootfiles/common/x86_64/syslinux
new file mode 100644 (file)
index 0000000..89cf5c8
--- /dev/null
@@ -0,0 +1,251 @@
+#sbin/extlinux
+#usr/bin/gethostip
+usr/bin/isohybrid
+#usr/bin/isohybrid.pl
+#usr/bin/keytab-lilo
+#usr/bin/lss16toppm
+#usr/bin/md5pass
+#usr/bin/memdiskfind
+#usr/bin/mkdiskimage
+#usr/bin/ppmtolss16
+#usr/bin/pxelinux-options
+#usr/bin/sha1pass
+#usr/bin/syslinux
+#usr/bin/syslinux2ansi
+#usr/man/man1/extlinux.1
+#usr/man/man1/gethostip.1
+#usr/man/man1/lss16toppm.1
+#usr/man/man1/ppmtolss16.1
+#usr/man/man1/syslinux.1
+#usr/man/man1/syslinux2ansi.1
+#usr/share/syslinux
+#usr/share/syslinux/altmbr.bin
+#usr/share/syslinux/altmbr_c.bin
+#usr/share/syslinux/altmbr_f.bin
+#usr/share/syslinux/cat.c32
+#usr/share/syslinux/chain.c32
+#usr/share/syslinux/cmd.c32
+#usr/share/syslinux/com32
+#usr/share/syslinux/com32/com32.ld
+#usr/share/syslinux/com32/include
+#usr/share/syslinux/com32/include/alloca.h
+#usr/share/syslinux/com32/include/assert.h
+#usr/share/syslinux/com32/include/bitsize
+#usr/share/syslinux/com32/include/bitsize/limits.h
+#usr/share/syslinux/com32/include/bitsize/stddef.h
+#usr/share/syslinux/com32/include/bitsize/stdint.h
+#usr/share/syslinux/com32/include/bitsize/stdintconst.h
+#usr/share/syslinux/com32/include/bitsize/stdintlimits.h
+#usr/share/syslinux/com32/include/bufprintf.h
+#usr/share/syslinux/com32/include/colortbl.h
+#usr/share/syslinux/com32/include/com32.h
+#usr/share/syslinux/com32/include/console.h
+#usr/share/syslinux/com32/include/cpufeature.h
+#usr/share/syslinux/com32/include/ctype.h
+#usr/share/syslinux/com32/include/dev.h
+#usr/share/syslinux/com32/include/dhcp.h
+#usr/share/syslinux/com32/include/dirent.h
+#usr/share/syslinux/com32/include/dprintf.h
+#usr/share/syslinux/com32/include/elf.h
+#usr/share/syslinux/com32/include/endian.h
+#usr/share/syslinux/com32/include/errno.h
+#usr/share/syslinux/com32/include/fcntl.h
+#usr/share/syslinux/com32/include/getopt.h
+#usr/share/syslinux/com32/include/gplinclude
+#usr/share/syslinux/com32/include/gplinclude/README
+#usr/share/syslinux/com32/include/gplinclude/acpi
+#usr/share/syslinux/com32/include/gplinclude/acpi/acpi.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/boot.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/dsdt.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/ecdt.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/facs.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/fadt.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/hpet.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/madt.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/mcfg.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/rsdp.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/rsdt.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/sbst.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/slic.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/ssdt.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/structs.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/tcpa.h
+#usr/share/syslinux/com32/include/gplinclude/acpi/xsdt.h
+#usr/share/syslinux/com32/include/gplinclude/cpuid.h
+#usr/share/syslinux/com32/include/gplinclude/disk
+#usr/share/syslinux/com32/include/gplinclude/disk/bootloaders.h
+#usr/share/syslinux/com32/include/gplinclude/disk/common.h
+#usr/share/syslinux/com32/include/gplinclude/disk/errno_disk.h
+#usr/share/syslinux/com32/include/gplinclude/disk/error.h
+#usr/share/syslinux/com32/include/gplinclude/disk/geom.h
+#usr/share/syslinux/com32/include/gplinclude/disk/mbrs.h
+#usr/share/syslinux/com32/include/gplinclude/disk/msdos.h
+#usr/share/syslinux/com32/include/gplinclude/disk/partition.h
+#usr/share/syslinux/com32/include/gplinclude/disk/read.h
+#usr/share/syslinux/com32/include/gplinclude/disk/swsusp.h
+#usr/share/syslinux/com32/include/gplinclude/disk/util.h
+#usr/share/syslinux/com32/include/gplinclude/disk/write.h
+#usr/share/syslinux/com32/include/gplinclude/dmi
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_base_board.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_battery.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_bios.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_cache.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_chassis.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_ipmi.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_memory.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_processor.h
+#usr/share/syslinux/com32/include/gplinclude/dmi/dmi_system.h
+#usr/share/syslinux/com32/include/gplinclude/memory.h
+#usr/share/syslinux/com32/include/gplinclude/vpd
+#usr/share/syslinux/com32/include/gplinclude/vpd/vpd.h
+#usr/share/syslinux/com32/include/gplinclude/zzjson
+#usr/share/syslinux/com32/include/gplinclude/zzjson/zzjson.h
+#usr/share/syslinux/com32/include/ilog2.h
+#usr/share/syslinux/com32/include/inttypes.h
+#usr/share/syslinux/com32/include/klibc
+#usr/share/syslinux/com32/include/klibc/archsetjmp.h
+#usr/share/syslinux/com32/include/klibc/compiler.h
+#usr/share/syslinux/com32/include/klibc/diverr.h
+#usr/share/syslinux/com32/include/klibc/endian.h
+#usr/share/syslinux/com32/include/klibc/extern.h
+#usr/share/syslinux/com32/include/klibc/sysconfig.h
+#usr/share/syslinux/com32/include/libansi.h
+#usr/share/syslinux/com32/include/limits.h
+#usr/share/syslinux/com32/include/math.h
+#usr/share/syslinux/com32/include/minmax.h
+#usr/share/syslinux/com32/include/netinet
+#usr/share/syslinux/com32/include/netinet/in.h
+#usr/share/syslinux/com32/include/png.h
+#usr/share/syslinux/com32/include/pngconf.h
+#usr/share/syslinux/com32/include/setjmp.h
+#usr/share/syslinux/com32/include/stdarg.h
+#usr/share/syslinux/com32/include/stdbool.h
+#usr/share/syslinux/com32/include/stddef.h
+#usr/share/syslinux/com32/include/stdint.h
+#usr/share/syslinux/com32/include/stdio.h
+#usr/share/syslinux/com32/include/stdlib.h
+#usr/share/syslinux/com32/include/string.h
+#usr/share/syslinux/com32/include/suffix_number.h
+#usr/share/syslinux/com32/include/sys
+#usr/share/syslinux/com32/include/sys/bitops.h
+#usr/share/syslinux/com32/include/sys/cpu.h
+#usr/share/syslinux/com32/include/sys/dirent.h
+#usr/share/syslinux/com32/include/sys/elf32.h
+#usr/share/syslinux/com32/include/sys/elf64.h
+#usr/share/syslinux/com32/include/sys/elfcommon.h
+#usr/share/syslinux/com32/include/sys/fpu.h
+#usr/share/syslinux/com32/include/sys/gpxe.h
+#usr/share/syslinux/com32/include/sys/io.h
+#usr/share/syslinux/com32/include/sys/pci.h
+#usr/share/syslinux/com32/include/sys/stat.h
+#usr/share/syslinux/com32/include/sys/time.h
+#usr/share/syslinux/com32/include/sys/times.h
+#usr/share/syslinux/com32/include/sys/types.h
+#usr/share/syslinux/com32/include/syslinux
+#usr/share/syslinux/com32/include/syslinux/adv.h
+#usr/share/syslinux/com32/include/syslinux/advconst.h
+#usr/share/syslinux/com32/include/syslinux/align.h
+#usr/share/syslinux/com32/include/syslinux/boot.h
+#usr/share/syslinux/com32/include/syslinux/bootpm.h
+#usr/share/syslinux/com32/include/syslinux/bootrm.h
+#usr/share/syslinux/com32/include/syslinux/config.h
+#usr/share/syslinux/com32/include/syslinux/disk.h
+#usr/share/syslinux/com32/include/syslinux/features.h
+#usr/share/syslinux/com32/include/syslinux/idle.h
+#usr/share/syslinux/com32/include/syslinux/io.h
+#usr/share/syslinux/com32/include/syslinux/keyboard.h
+#usr/share/syslinux/com32/include/syslinux/linux.h
+#usr/share/syslinux/com32/include/syslinux/loadfile.h
+#usr/share/syslinux/com32/include/syslinux/memscan.h
+#usr/share/syslinux/com32/include/syslinux/movebits.h
+#usr/share/syslinux/com32/include/syslinux/pmapi.h
+#usr/share/syslinux/com32/include/syslinux/pxe.h
+#usr/share/syslinux/com32/include/syslinux/pxe_api.h
+#usr/share/syslinux/com32/include/syslinux/reboot.h
+#usr/share/syslinux/com32/include/syslinux/resolve.h
+#usr/share/syslinux/com32/include/syslinux/vesacon.h
+#usr/share/syslinux/com32/include/syslinux/video.h
+#usr/share/syslinux/com32/include/syslinux/zio.h
+#usr/share/syslinux/com32/include/time.h
+#usr/share/syslinux/com32/include/tinyjpeg.h
+#usr/share/syslinux/com32/include/unistd.h
+#usr/share/syslinux/com32/include/zconf.h
+#usr/share/syslinux/com32/include/zlib.h
+#usr/share/syslinux/com32/libcom32.a
+#usr/share/syslinux/com32/libcom32gpl.a
+#usr/share/syslinux/com32/libcom32upload.a
+#usr/share/syslinux/com32/libutil_com.a
+#usr/share/syslinux/com32/libutil_lnx.a
+#usr/share/syslinux/config.c32
+#usr/share/syslinux/cpuid.c32
+#usr/share/syslinux/cpuidtest.c32
+#usr/share/syslinux/diag
+#usr/share/syslinux/diag/geodsp1s.img.xz
+#usr/share/syslinux/diag/geodspms.img.xz
+#usr/share/syslinux/diag/handoff.bin
+#usr/share/syslinux/disk.c32
+#usr/share/syslinux/dmitest.c32
+#usr/share/syslinux/dosutil
+#usr/share/syslinux/dosutil/copybs.com
+#usr/share/syslinux/dosutil/eltorito.sys
+#usr/share/syslinux/dosutil/mdiskchk.com
+#usr/share/syslinux/elf.c32
+#usr/share/syslinux/ethersel.c32
+#usr/share/syslinux/gfxboot.c32
+#usr/share/syslinux/gptmbr.bin
+#usr/share/syslinux/gptmbr_c.bin
+#usr/share/syslinux/gptmbr_f.bin
+#usr/share/syslinux/gpxecmd.c32
+#usr/share/syslinux/gpxelinux.0
+#usr/share/syslinux/gpxelinuxk.0
+#usr/share/syslinux/hdt.c32
+#usr/share/syslinux/host.c32
+#usr/share/syslinux/ifcpu.c32
+#usr/share/syslinux/ifcpu64.c32
+#usr/share/syslinux/ifmemdsk.c32
+#usr/share/syslinux/ifplop.c32
+#usr/share/syslinux/int18.com
+#usr/share/syslinux/isohdpfx.bin
+#usr/share/syslinux/isohdpfx_c.bin
+#usr/share/syslinux/isohdpfx_f.bin
+#usr/share/syslinux/isohdppx.bin
+#usr/share/syslinux/isohdppx_c.bin
+#usr/share/syslinux/isohdppx_f.bin
+#usr/share/syslinux/isolinux-debug.bin
+#usr/share/syslinux/isolinux.bin
+#usr/share/syslinux/kbdmap.c32
+#usr/share/syslinux/kontron_wdt.c32
+#usr/share/syslinux/linux.c32
+#usr/share/syslinux/ls.c32
+#usr/share/syslinux/lua.c32
+#usr/share/syslinux/mboot.c32
+#usr/share/syslinux/mbr.bin
+#usr/share/syslinux/mbr_c.bin
+#usr/share/syslinux/mbr_f.bin
+#usr/share/syslinux/memdisk
+#usr/share/syslinux/memdump.com
+#usr/share/syslinux/meminfo.c32
+#usr/share/syslinux/menu.c32
+#usr/share/syslinux/pcitest.c32
+#usr/share/syslinux/pmload.c32
+#usr/share/syslinux/poweroff.com
+#usr/share/syslinux/prdhcp.c32
+#usr/share/syslinux/pwd.c32
+#usr/share/syslinux/pxechain.com
+#usr/share/syslinux/pxechn.c32
+#usr/share/syslinux/pxelinux.0
+#usr/share/syslinux/reboot.c32
+#usr/share/syslinux/rosh.c32
+#usr/share/syslinux/sanboot.c32
+#usr/share/syslinux/sdi.c32
+#usr/share/syslinux/sysdump.c32
+#usr/share/syslinux/syslinux.com
+#usr/share/syslinux/syslinux.exe
+#usr/share/syslinux/syslinux64.exe
+#usr/share/syslinux/ver.com
+#usr/share/syslinux/vesainfo.c32
+#usr/share/syslinux/vesamenu.c32
+#usr/share/syslinux/vpdtest.c32
+#usr/share/syslinux/whichsys.c32
+#usr/share/syslinux/zzjson.c32
diff --git a/config/rootfiles/common/x86_64/util-linux b/config/rootfiles/common/x86_64/util-linux
new file mode 100644 (file)
index 0000000..28a5699
--- /dev/null
@@ -0,0 +1,300 @@
+bin/dmesg
+bin/findmnt
+bin/lsblk
+bin/more
+bin/mount
+bin/umount
+bin/wdctl
+#etc/fcron.daily
+etc/fcron.daily/trim
+lib/libblkid.so.1.1.0
+lib/libmount.so.1
+lib/libmount.so.1.1.0
+lib/libuuid.so.1.3.0
+sbin/agetty
+sbin/blkdiscard
+sbin/blockdev
+sbin/cfdisk
+sbin/chcpu
+sbin/ctrlaltdel
+sbin/fdisk
+#sbin/fsck.cramfs
+sbin/fsck.minix
+sbin/fsfreeze
+sbin/fstrim
+sbin/hwclock
+sbin/losetup
+sbin/mkfs
+#sbin/mkfs.bfs
+#sbin/mkfs.cramfs
+sbin/mkfs.minix
+sbin/mkswap
+sbin/nologin
+#sbin/pivot_root
+sbin/raw
+sbin/sfdisk
+sbin/swaplabel
+sbin/swapoff
+sbin/swapon
+sbin/switch_root
+sbin/wipefs
+#usr/bin/cal
+#usr/bin/chrt
+#usr/bin/col
+#usr/bin/colcrt
+#usr/bin/colrm
+#usr/bin/column
+#usr/bin/cytune
+usr/bin/eject
+usr/bin/fallocate
+usr/bin/flock
+usr/bin/getopt
+#usr/bin/hexdump
+#usr/bin/i386
+usr/bin/ionice
+#usr/bin/ipcmk
+#usr/bin/ipcrm
+#usr/bin/ipcs
+#usr/bin/isosize
+#usr/bin/linux32
+#usr/bin/linux64
+usr/bin/logger
+#usr/bin/look
+usr/bin/lscpu
+usr/bin/lslocks
+#usr/bin/mcookie
+#usr/bin/namei
+#usr/bin/nsenter
+usr/bin/pg
+usr/bin/prlimit
+usr/bin/rename
+usr/bin/renice
+#usr/bin/rev
+#usr/bin/script
+#usr/bin/scriptreplay
+#usr/bin/setarch
+usr/bin/setsid
+#usr/bin/setterm
+usr/bin/tailf
+#usr/bin/taskset
+#usr/bin/ul
+#usr/bin/unshare
+#usr/bin/whereis
+#usr/bin/x86_64
+#usr/include/libmount
+#usr/include/libmount/libmount.h
+#usr/lib/libblkid.la
+#usr/lib/libmount.a
+#usr/lib/libmount.la
+#usr/lib/libmount.so
+#usr/lib/libuuid.la
+#usr/lib/pkgconfig/mount.pc
+usr/sbin/addpart
+usr/sbin/delpart
+usr/sbin/fdformat
+usr/sbin/ldattach
+usr/sbin/partx
+#usr/sbin/readprofile
+usr/sbin/resizepart
+usr/sbin/rtcwake
+usr/share/bash-completion
+#usr/share/bash-completion/completions
+#usr/share/bash-completion/completions/addpart
+#usr/share/bash-completion/completions/blkdiscard
+#usr/share/bash-completion/completions/blkid
+#usr/share/bash-completion/completions/blockdev
+#usr/share/bash-completion/completions/cal
+#usr/share/bash-completion/completions/cfdisk
+#usr/share/bash-completion/completions/chcpu
+#usr/share/bash-completion/completions/chrt
+#usr/share/bash-completion/completions/col
+#usr/share/bash-completion/completions/colcrt
+#usr/share/bash-completion/completions/colrm
+#usr/share/bash-completion/completions/column
+#usr/share/bash-completion/completions/ctrlaltdel
+#usr/share/bash-completion/completions/cytune
+#usr/share/bash-completion/completions/delpart
+#usr/share/bash-completion/completions/dmesg
+#usr/share/bash-completion/completions/eject
+#usr/share/bash-completion/completions/fallocate
+#usr/share/bash-completion/completions/fdformat
+#usr/share/bash-completion/completions/fdisk
+#usr/share/bash-completion/completions/findmnt
+#usr/share/bash-completion/completions/flock
+#usr/share/bash-completion/completions/fsck
+#usr/share/bash-completion/completions/fsck.cramfs
+#usr/share/bash-completion/completions/fsck.minix
+#usr/share/bash-completion/completions/fsfreeze
+#usr/share/bash-completion/completions/fstrim
+#usr/share/bash-completion/completions/getopt
+#usr/share/bash-completion/completions/hexdump
+#usr/share/bash-completion/completions/hwclock
+#usr/share/bash-completion/completions/ionice
+#usr/share/bash-completion/completions/ipcrm
+#usr/share/bash-completion/completions/ipcs
+#usr/share/bash-completion/completions/isosize
+#usr/share/bash-completion/completions/ldattach
+#usr/share/bash-completion/completions/logger
+#usr/share/bash-completion/completions/look
+#usr/share/bash-completion/completions/losetup
+#usr/share/bash-completion/completions/lsblk
+#usr/share/bash-completion/completions/lscpu
+#usr/share/bash-completion/completions/lslocks
+#usr/share/bash-completion/completions/mcookie
+#usr/share/bash-completion/completions/mesg
+#usr/share/bash-completion/completions/mkfs
+#usr/share/bash-completion/completions/mkfs.bfs
+#usr/share/bash-completion/completions/mkfs.cramfs
+#usr/share/bash-completion/completions/mkfs.minix
+#usr/share/bash-completion/completions/mkswap
+#usr/share/bash-completion/completions/more
+#usr/share/bash-completion/completions/mountpoint
+#usr/share/bash-completion/completions/namei
+#usr/share/bash-completion/completions/nsenter
+#usr/share/bash-completion/completions/partx
+#usr/share/bash-completion/completions/pg
+#usr/share/bash-completion/completions/pivot_root
+#usr/share/bash-completion/completions/prlimit
+#usr/share/bash-completion/completions/raw
+#usr/share/bash-completion/completions/readprofile
+#usr/share/bash-completion/completions/rename
+#usr/share/bash-completion/completions/renice
+#usr/share/bash-completion/completions/resizepart
+#usr/share/bash-completion/completions/rev
+#usr/share/bash-completion/completions/rtcwake
+#usr/share/bash-completion/completions/script
+#usr/share/bash-completion/completions/scriptreplay
+#usr/share/bash-completion/completions/setarch
+#usr/share/bash-completion/completions/setsid
+#usr/share/bash-completion/completions/setterm
+#usr/share/bash-completion/completions/sfdisk
+#usr/share/bash-completion/completions/swaplabel
+#usr/share/bash-completion/completions/swapon
+#usr/share/bash-completion/completions/tailf
+#usr/share/bash-completion/completions/taskset
+#usr/share/bash-completion/completions/ul
+#usr/share/bash-completion/completions/unshare
+#usr/share/bash-completion/completions/utmpdump
+#usr/share/bash-completion/completions/uuidd
+#usr/share/bash-completion/completions/uuidgen
+#usr/share/bash-completion/completions/wall
+#usr/share/bash-completion/completions/wdctl
+#usr/share/bash-completion/completions/whereis
+#usr/share/bash-completion/completions/wipefs
+#usr/share/doc/util-linux
+#usr/share/doc/util-linux/getopt
+#usr/share/doc/util-linux/getopt/getopt-parse.bash
+#usr/share/doc/util-linux/getopt/getopt-parse.tcsh
+#usr/share/locale/ca/LC_MESSAGES/util-linux.mo
+#usr/share/locale/cs/LC_MESSAGES/util-linux.mo
+#usr/share/locale/da/LC_MESSAGES/util-linux.mo
+#usr/share/locale/de/LC_MESSAGES/util-linux.mo
+#usr/share/locale/es/LC_MESSAGES/util-linux.mo
+#usr/share/locale/et/LC_MESSAGES/util-linux.mo
+#usr/share/locale/eu/LC_MESSAGES/util-linux.mo
+#usr/share/locale/fi/LC_MESSAGES/util-linux.mo
+#usr/share/locale/fr/LC_MESSAGES/util-linux.mo
+#usr/share/locale/gl/LC_MESSAGES/util-linux.mo
+#usr/share/locale/hr/LC_MESSAGES/util-linux.mo
+#usr/share/locale/hu/LC_MESSAGES/util-linux.mo
+#usr/share/locale/id/LC_MESSAGES/util-linux.mo
+#usr/share/locale/it/LC_MESSAGES/util-linux.mo
+#usr/share/locale/ja/LC_MESSAGES/util-linux.mo
+#usr/share/locale/nl/LC_MESSAGES/util-linux.mo
+#usr/share/locale/pl/LC_MESSAGES/util-linux.mo
+#usr/share/locale/pt_BR/LC_MESSAGES/util-linux.mo
+#usr/share/locale/ru/LC_MESSAGES/util-linux.mo
+#usr/share/locale/sl/LC_MESSAGES/util-linux.mo
+#usr/share/locale/sv/LC_MESSAGES/util-linux.mo
+#usr/share/locale/tr/LC_MESSAGES/util-linux.mo
+#usr/share/locale/uk/LC_MESSAGES/util-linux.mo
+#usr/share/locale/vi/LC_MESSAGES/util-linux.mo
+#usr/share/locale/zh_CN/LC_MESSAGES/util-linux.mo
+#usr/share/locale/zh_TW/LC_MESSAGES/util-linux.mo
+#usr/share/man/man1/cal.1
+#usr/share/man/man1/chrt.1
+#usr/share/man/man1/col.1
+#usr/share/man/man1/colcrt.1
+#usr/share/man/man1/colrm.1
+#usr/share/man/man1/column.1
+#usr/share/man/man1/dmesg.1
+#usr/share/man/man1/eject.1
+#usr/share/man/man1/fallocate.1
+#usr/share/man/man1/flock.1
+#usr/share/man/man1/getopt.1
+#usr/share/man/man1/hexdump.1
+#usr/share/man/man1/ionice.1
+#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
+#usr/share/man/man1/more.1
+#usr/share/man/man1/namei.1
+#usr/share/man/man1/nsenter.1
+#usr/share/man/man1/pg.1
+#usr/share/man/man1/prlimit.1
+#usr/share/man/man1/rename.1
+#usr/share/man/man1/renice.1
+#usr/share/man/man1/rev.1
+#usr/share/man/man1/script.1
+#usr/share/man/man1/scriptreplay.1
+#usr/share/man/man1/setsid.1
+#usr/share/man/man1/setterm.1
+#usr/share/man/man1/tailf.1
+#usr/share/man/man1/taskset.1
+#usr/share/man/man1/ul.1
+#usr/share/man/man1/unshare.1
+#usr/share/man/man1/whereis.1
+#usr/share/man/man3/uuid_generate_time_safe.3
+#usr/share/man/man5/fstab.5
+#usr/share/man/man8/addpart.8
+#usr/share/man/man8/agetty.8
+#usr/share/man/man8/blkdiscard.8
+#usr/share/man/man8/blockdev.8
+#usr/share/man/man8/cfdisk.8
+#usr/share/man/man8/chcpu.8
+#usr/share/man/man8/ctrlaltdel.8
+#usr/share/man/man8/cytune.8
+#usr/share/man/man8/delpart.8
+#usr/share/man/man8/fdformat.8
+#usr/share/man/man8/fdisk.8
+#usr/share/man/man8/findmnt.8
+#usr/share/man/man8/fsck.cramfs.8
+#usr/share/man/man8/fsck.minix.8
+#usr/share/man/man8/fsfreeze.8
+#usr/share/man/man8/fstrim.8
+#usr/share/man/man8/hwclock.8
+#usr/share/man/man8/i386.8
+#usr/share/man/man8/isosize.8
+#usr/share/man/man8/ldattach.8
+#usr/share/man/man8/linux32.8
+#usr/share/man/man8/linux64.8
+#usr/share/man/man8/losetup.8
+#usr/share/man/man8/lsblk.8
+#usr/share/man/man8/lslocks.8
+#usr/share/man/man8/mkfs.8
+#usr/share/man/man8/mkfs.bfs.8
+#usr/share/man/man8/mkfs.cramfs.8
+#usr/share/man/man8/mkfs.minix.8
+#usr/share/man/man8/mkswap.8
+#usr/share/man/man8/mount.8
+#usr/share/man/man8/nologin.8
+#usr/share/man/man8/partx.8
+#usr/share/man/man8/pivot_root.8
+#usr/share/man/man8/raw.8
+#usr/share/man/man8/readprofile.8
+#usr/share/man/man8/resizepart.8
+#usr/share/man/man8/rtcwake.8
+#usr/share/man/man8/setarch.8
+#usr/share/man/man8/sfdisk.8
+#usr/share/man/man8/swaplabel.8
+#usr/share/man/man8/swapoff.8
+#usr/share/man/man8/swapon.8
+#usr/share/man/man8/switch_root.8
+#usr/share/man/man8/umount.8
+#usr/share/man/man8/wdctl.8
+#usr/share/man/man8/wipefs.8
+#usr/share/man/man8/x86_64.8
index 7c83de7c7626553dc1fc7ec27ed15c295b6fbff3..b4053d9b71c40a42ad15ec9062d9c5e68720bee2 100644 (file)
@@ -33,7 +33,7 @@ usr/bin/xzmore
 #usr/include/lzma/hardware.h
 #usr/include/lzma/index.h
 #usr/include/lzma/index_hash.h
-#usr/include/lzma/lzma.h
+#usr/include/lzma/lzma12.h
 #usr/include/lzma/stream_flags.h
 #usr/include/lzma/version.h
 #usr/include/lzma/vli.h
@@ -41,7 +41,7 @@ usr/bin/xzmore
 #usr/lib/liblzma.la
 usr/lib/liblzma.so
 usr/lib/liblzma.so.5
-usr/lib/liblzma.so.5.0.5
+usr/lib/liblzma.so.5.2.1
 #usr/lib/pkgconfig/liblzma.pc
 #usr/share/doc/xz
 #usr/share/doc/xz/AUTHORS
@@ -56,6 +56,7 @@ usr/lib/liblzma.so.5.0.5
 #usr/share/doc/xz/examples/01_compress_easy.c
 #usr/share/doc/xz/examples/02_decompress.c
 #usr/share/doc/xz/examples/03_compress_custom.c
+#usr/share/doc/xz/examples/04_compress_easy_mt.c
 #usr/share/doc/xz/examples/Makefile
 #usr/share/doc/xz/examples_old
 #usr/share/doc/xz/examples_old/xz_pipe_comp.c
@@ -69,6 +70,7 @@ usr/lib/liblzma.so.5.0.5
 #usr/share/locale/fr/LC_MESSAGES/xz.mo
 #usr/share/locale/it/LC_MESSAGES/xz.mo
 #usr/share/locale/pl/LC_MESSAGES/xz.mo
+#usr/share/locale/vi/LC_MESSAGES/xz.mo
 #usr/share/man/man1/lzcat.1
 #usr/share/man/man1/lzcmp.1
 #usr/share/man/man1/lzdiff.1
diff --git a/config/rootfiles/core/97/exclude b/config/rootfiles/core/97/exclude
new file mode 100644 (file)
index 0000000..d87f175
--- /dev/null
@@ -0,0 +1,25 @@
+boot/config.txt
+etc/alternatives
+etc/collectd.custom
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/snort/snort.conf
+etc/ssh/ssh_config
+etc/ssh/sshd_config
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/dma
+var/ipfire/time
+var/ipfire/ovpn
+var/lib/alternatives
+var/log/cache
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/core/97/filelists/bind b/config/rootfiles/core/97/filelists/bind
new file mode 120000 (symlink)
index 0000000..48a0eba
--- /dev/null
@@ -0,0 +1 @@
+../../../common/bind
\ No newline at end of file
diff --git a/config/rootfiles/core/97/filelists/files b/config/rootfiles/core/97/filelists/files
new file mode 100644 (file)
index 0000000..40bbbcf
--- /dev/null
@@ -0,0 +1,8 @@
+etc/system-release
+etc/issue
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
+srv/web/ipfire/cgi-bin/qos.cgi
+srv/web/ipfire/cgi-bin/webaccess.cgi
+usr/bin/pgrep
+usr/local/bin/qosctrl
+usr/local/bin/timectrl
diff --git a/config/rootfiles/core/97/filelists/ntp b/config/rootfiles/core/97/filelists/ntp
new file mode 120000 (symlink)
index 0000000..7542d86
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ntp
\ No newline at end of file
diff --git a/config/rootfiles/core/97/filelists/openvpn b/config/rootfiles/core/97/filelists/openvpn
new file mode 120000 (symlink)
index 0000000..493f3f7
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openvpn
\ No newline at end of file
diff --git a/config/rootfiles/core/97/update.sh b/config/rootfiles/core/97/update.sh
new file mode 100644 (file)
index 0000000..4cd6abe
--- /dev/null
@@ -0,0 +1,66 @@
+#!/bin/bash
+############################################################################
+#                                                                          #
+# This file is part of the IPFire Firewall.                                #
+#                                                                          #
+# IPFire 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.                                      #
+#                                                                          #
+# IPFire 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 IPFire; if not, write to the Free Software                    #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
+#                                                                          #
+# Copyright (C) 2015 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+# Remove old core updates from pakfire cache to save space...
+core=97
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+/etc/init.d/dnsmasq stop
+
+# Extract files
+extract_files
+
+# Fix hardening flags in grub
+paxctl -mpexs /usr/bin/grub-script-check
+
+# Update Language cache
+# /usr/local/bin/update-lang-cache
+
+# Start services
+/etc/init.d/dnsmasq start
+/etc/init.d/sshd restart
+
+# Delete old QoS enabled indicator
+rm -f /var/ipfire/qos/enable
+
+# This update need a reboot...
+#touch /var/run/need_reboot
+
+# Finish
+/etc/init.d/fireinfo start
+sendprofile
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+       grub-mkconfig -o /boot/grub/grub.cfg
+fi
+sync
+
+# Don't report the exitcode last command
+exit 0
diff --git a/config/rootfiles/oldcore/89/filelists/openssh b/config/rootfiles/oldcore/89/filelists/openssh
new file mode 120000 (symlink)
index 0000000..d8c77fd
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssh
\ No newline at end of file
similarity index 91%
rename from config/rootfiles/core/89/update.sh
rename to config/rootfiles/oldcore/89/update.sh
index 90a6d776b09e0434967660d186635a4836265500..13c645a1a2ffacdac7a34bc62ade0b2816bb2a27 100644 (file)
@@ -75,15 +75,17 @@ chown nobody.nobody \
        /var/run/ovpnserver.log
 
 # Update OpenVPN/collectd configuration
-files=`find /var/ipfire/ovpn/n2nconf/ -type d`
-for i in $files;
-do
-       if ! grep -q "status-version" $i/${i##*/}.conf; then
-               echo "# Logfile" >> $i/${i##*/}.conf
-               echo "status-version 1" >> $i/${i##*/}.conf
+for i in /var/ipfire/ovpn/n2nconf/*/*.conf; do
+       name="${i##*/}"
+       name="${name%*.conf}"
+
+       if ! grep -qE "^status-version" ${i}; then
+               echo "# Logfile" >> ${i}
+               echo "status-version 1" >> ${i}
        fi
-       if ! grep -q "status " $i/${i##*/}.conf; then
-               echo "status /var/run/openvpn/${i##*/}-n2n 10" >> $i/${i##*/}.conf
+
+       if ! grep -qE "^status " ${i}; then
+               echo "status /var/run/openvpn/${name}-n2n 10" >> ${i}
        fi
 done
 
similarity index 92%
rename from config/rootfiles/core/90/exclude
rename to config/rootfiles/oldcore/90/exclude
index 56e840d8cc430f92a45b03e2c122fadc2061050e..73b7b73e630fb896f20e3af5331ebde0476121f5 100644 (file)
@@ -15,7 +15,6 @@ etc/sudoers
 etc/sysconfig/firewall.local
 etc/sysconfig/modules
 etc/sysconfig/rc.local
-etc/udev/rules.d/30-persistent-network.rules
 srv/web/ipfire/html/proxy.pac
 var/ipfire/firewall/geoipblock
 var/ipfire/fwhosts/custmgeoipgrp
diff --git a/config/rootfiles/oldcore/90/filelists/Locale-Country b/config/rootfiles/oldcore/90/filelists/Locale-Country
new file mode 120000 (symlink)
index 0000000..025c278
--- /dev/null
@@ -0,0 +1 @@
+../../../common/Locale-Country
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/armv5tel/glibc b/config/rootfiles/oldcore/90/filelists/armv5tel/glibc
new file mode 120000 (symlink)
index 0000000..4c70d72
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/armv5tel/glibc
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/ddns b/config/rootfiles/oldcore/90/filelists/ddns
new file mode 120000 (symlink)
index 0000000..7395164
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ddns
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/dnsmasq b/config/rootfiles/oldcore/90/filelists/dnsmasq
new file mode 120000 (symlink)
index 0000000..d469c74
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dnsmasq
\ No newline at end of file
similarity index 71%
rename from config/rootfiles/core/90/filelists/files
rename to config/rootfiles/oldcore/90/filelists/files
index 7635acfb078393a5c8dd5f250c2abbbe6f4d4ced..ee596a070133cc46cb21cde91802c64dd1738777 100644 (file)
@@ -5,10 +5,18 @@ etc/rc.d/init.d/network-trigger
 etc/rc.d/init.d/networking/functions.network
 etc/rc.d/init.d/networking/red.up/99-geoip-database
 etc/rc.d/rcsysinit.d/S90network-trigger
+opt/pakfire/pakfire
+opt/pakfire/lib/functions.pl
+srv/web/ipfire/cgi-bin/country.cgi
+srv/web/ipfire/cgi-bin/ddns.cgi
 srv/web/ipfire/cgi-bin/firewall.cgi
 srv/web/ipfire/cgi-bin/fwhosts.cgi
 srv/web/ipfire/cgi-bin/geoip-block.cgi
 srv/web/ipfire/cgi-bin/index.cgi
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllog.dat
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllogcountry.dat
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllogip.dat
+srv/web/ipfire/cgi-bin/netovpnsrv.cgi
 srv/web/ipfire/cgi-bin/ovpnmain.cgi
 srv/web/ipfire/cgi-bin/vpnmain.cgi
 srv/web/ipfire/html/themes/darkdos/include/style.css
@@ -17,6 +25,9 @@ srv/web/ipfire/html/themes/ipfire/include/css/style.css
 srv/web/ipfire/html/themes/maniac/include/style.css
 usr/lib/firewall/firewall-lib.pl
 usr/lib/firewall/rules.pl
+usr/local/bin/backupiso
+usr/local/bin/ddnsctrl
+usr/local/bin/ipsecctrl
 usr/local/bin/xt_geoip_build
 usr/local/bin/xt_geoip_update
 var/ipfire/general-functions.pl
diff --git a/config/rootfiles/oldcore/90/filelists/fireinfo b/config/rootfiles/oldcore/90/filelists/fireinfo
new file mode 120000 (symlink)
index 0000000..c461155
--- /dev/null
@@ -0,0 +1 @@
+../../../common/fireinfo
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/flag-icons b/config/rootfiles/oldcore/90/filelists/flag-icons
new file mode 120000 (symlink)
index 0000000..8776b6b
--- /dev/null
@@ -0,0 +1 @@
+../../../common/flag-icons
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/i586/glibc b/config/rootfiles/oldcore/90/filelists/i586/glibc
new file mode 120000 (symlink)
index 0000000..943021f
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/glibc
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/i586/openssl-sse2 b/config/rootfiles/oldcore/90/filelists/i586/openssl-sse2
new file mode 120000 (symlink)
index 0000000..f424713
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/openssl-sse2
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/openldap b/config/rootfiles/oldcore/90/filelists/openldap
new file mode 120000 (symlink)
index 0000000..80c324f
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openldap
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/openssl-0.9.8-files b/config/rootfiles/oldcore/90/filelists/openssl-0.9.8-files
new file mode 100644 (file)
index 0000000..e80a57d
--- /dev/null
@@ -0,0 +1,19 @@
+lib/security/pam_mysql.so
+usr/lib/gnupg/gpgkeys_ldap
+usr/lib/gnupg/gpgkeys_hkp
+usr/lib/gnupg/gpgkeys_curl
+usr/lib/apache/libphp5.so
+usr/lib/squid/digest_ldap_auth
+usr/lib/squid/basic_ldap_auth
+usr/lib/squid/ext_kerberos_ldap_group_acl
+usr/lib/squid/ext_edirectory_userip_acl
+usr/lib/squid/ext_ldap_group_acl
+usr/lib/python2.7/lib-dynload/_ssl.so
+usr/lib/python2.7/lib-dynload/_hashlib.so
+usr/lib/collectd/write_http.so
+usr/lib/collectd/ascent.so
+usr/lib/collectd/curl_xml.so
+usr/lib/collectd/apache.so
+usr/lib/collectd/bind.so
+usr/lib/collectd/curl.so
+usr/bin/php
diff --git a/config/rootfiles/oldcore/90/filelists/squid b/config/rootfiles/oldcore/90/filelists/squid
new file mode 120000 (symlink)
index 0000000..2dc8372
--- /dev/null
@@ -0,0 +1 @@
+../../../common/squid
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/tzdata b/config/rootfiles/oldcore/90/filelists/tzdata
new file mode 120000 (symlink)
index 0000000..5a6e325
--- /dev/null
@@ -0,0 +1 @@
+../../../common/tzdata
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/filelists/xz b/config/rootfiles/oldcore/90/filelists/xz
new file mode 120000 (symlink)
index 0000000..734e926
--- /dev/null
@@ -0,0 +1 @@
+../../../common/xz
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/90/meta b/config/rootfiles/oldcore/90/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
similarity index 87%
rename from config/rootfiles/core/90/update.sh
rename to config/rootfiles/oldcore/90/update.sh
index 270da2137e2a2397d6ecab505abde65812f1e4a8..34dacf1134654caab5f8ef8a23e6c0bc26175717 100644 (file)
@@ -132,10 +132,20 @@ esac
 /etc/init.d/ipsec stop
 /etc/init.d/apache stop
 
+# Drop old flag icons, before extracting the new ones.
+rm /srv/web/ipfire/html/images/flags/*
+
 #
 #Extract files
 tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
 
+#
+# restart init because glibc was updated.
+telinit u
+
+# Remove old openssl libraries
+rm -vf /usr/lib/libcrypto.so.0.9.8 /usr/lib/libssl.so.0.9.8
+
 # Check diskspace on boot
 BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
 
@@ -173,7 +183,7 @@ if [ ! -e "/var/ipfire/fwhosts/customgeoipgrp" ]; then
 fi
 
 #Fix BUG10812 (openvpn server.conf has wrong collectd logfile path)
-if grep -q "status /var/log/ovpnserver.log 30" /var/ipfire/ovpnserver.conf; then
+if grep -q "status /var/log/ovpnserver.log 30" /var/ipfire/ovpn/server.conf; then
        sed -i "s/\/var\/log\/ovpnserver.log 30/\/var\/run\/ovpnserver.log 30/" /var/ipfire/ovpn/server.conf
 fi
 
@@ -189,10 +199,22 @@ EOF
 
 fcrontab -z &>/dev/null
 
+# Generate ddns configuration file
+sudo -u nobody /srv/web/ipfire/cgi-bin/ddns.cgi
+
+# Regenerate IPsec configuration
+sudo -u nobody /srv/web/ipfire/cgi-bin/vpnmain.cgi
 
 # Update Language cache
 perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
 
+# Remove old udev configuration
+rm -vf /etc/udev/rules.d/30-persistent-network.rules
+
+# Remove pids from dhcp client because it hang at normal shutdown
+# so let the sysvinit kill it
+rm -f /run/dhcpcd-*.pid
+
 #
 # Start services
 #
@@ -203,25 +225,23 @@ if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then
        /etc/init.d/ipsec start
 fi
 
-case "$(uname -m)" in
-       i?86)
-       case "$(find_device "/")" in
-               xvd* )
-                       echo Skip remove grub2 files, because pygrub fail.
-                       rm -f /boot/grub/*
-                       echo config will recreated by linux-pae install.
-                       ;;
-               * )
-                       #
-                       # Update to GRUB2 config
-                       #
-                       grub-mkconfig > /boot/grub/grub.cfg
-                       ;;
-       esac
-esac
+if [ -e /boot/grub/grub.cfg ]; then
+               grub-mkconfig > /boot/grub/grub.cfg
+fi
+
+# Upadate Kernel version uEnv.txt
+if [ -e /boot/uEnv.txt ]; then
+       sed -i -e "s/KVER=.*/KVER=${KVER}/g" /boot/uEnv.txt
+fi
+
+# call user update script (needed for some arm boards)
+if [ -e /boot/pakfire-kernel-update ]; then
+       /boot/pakfire-kernel-update ${KVER}
+fi
+
 
 # Force (re)install pae kernel if pae is supported
-rm -rf /opt/pakfire/db/*/meta-linux-pae
+rm -rf /opt/pakfire/db/installed/meta-linux-pae
 if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
        ROOTSPACE=`df / -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
        BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
@@ -232,9 +252,7 @@ if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
                echo "Name: linux-pae" > /opt/pakfire/db/installed/meta-linux-pae
                echo "ProgVersion: 0" >> /opt/pakfire/db/installed/meta-linux-pae
                echo "Release: 0"     >> /opt/pakfire/db/installed/meta-linux-pae
-               echo "Name: linux-pae" > /opt/pakfire/db/meta/meta-linux-pae
-               echo "ProgVersion: 0" >> /opt/pakfire/db/meta/meta-linux-pae
-               echo "Release: 0"     >> /opt/pakfire/db/meta/meta-linux-pae
+#              rm -f /opt/pakfire/db/meta/meta-linux-pae 2>&1 > /dev/null
        fi
 fi
 
diff --git a/config/rootfiles/oldcore/91/exclude b/config/rootfiles/oldcore/91/exclude
new file mode 100644 (file)
index 0000000..18e9b4d
--- /dev/null
@@ -0,0 +1,20 @@
+boot/config.txt
+etc/collectd.custom
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/ssh/ssh_config
+etc/ssh/sshd_config
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/ovpn
+var/log/cache
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/oldcore/91/filelists/files b/config/rootfiles/oldcore/91/filelists/files
new file mode 100644 (file)
index 0000000..7cc5aa2
--- /dev/null
@@ -0,0 +1,7 @@
+etc/system-release
+etc/issue
+opt/pakfire/lib/functions.pl
+srv/web/ipfire/cgi-bin/connections.cgi
+srv/web/ipfire/cgi-bin/dhcp.cgi
+srv/web/ipfire/cgi-bin/pppsetup.cgi
+var/ipfire/langs
diff --git a/config/rootfiles/oldcore/91/filelists/i586/openssl-sse2 b/config/rootfiles/oldcore/91/filelists/i586/openssl-sse2
new file mode 120000 (symlink)
index 0000000..f424713
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/openssl-sse2
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/i586/strongswan-padlock b/config/rootfiles/oldcore/91/filelists/i586/strongswan-padlock
new file mode 120000 (symlink)
index 0000000..2412824
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/strongswan-padlock
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/libnet b/config/rootfiles/oldcore/91/filelists/libnet
new file mode 120000 (symlink)
index 0000000..26e5f79
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnet
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/libtool b/config/rootfiles/oldcore/91/filelists/libtool
new file mode 120000 (symlink)
index 0000000..54f5666
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libtool
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/libxml2 b/config/rootfiles/oldcore/91/filelists/libxml2
new file mode 120000 (symlink)
index 0000000..242e69f
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libxml2
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/libxslt b/config/rootfiles/oldcore/91/filelists/libxslt
new file mode 120000 (symlink)
index 0000000..bf9d766
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libxslt
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/newt b/config/rootfiles/oldcore/91/filelists/newt
new file mode 120000 (symlink)
index 0000000..fb3eb20
--- /dev/null
@@ -0,0 +1 @@
+../../../common/newt
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/openssh b/config/rootfiles/oldcore/91/filelists/openssh
new file mode 120000 (symlink)
index 0000000..d8c77fd
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssh
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/openssl b/config/rootfiles/oldcore/91/filelists/openssl
new file mode 120000 (symlink)
index 0000000..e011a92
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssl
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/pcre b/config/rootfiles/oldcore/91/filelists/pcre
new file mode 120000 (symlink)
index 0000000..b390d9a
--- /dev/null
@@ -0,0 +1 @@
+../../../common/pcre
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/slang b/config/rootfiles/oldcore/91/filelists/slang
new file mode 120000 (symlink)
index 0000000..228e45e
--- /dev/null
@@ -0,0 +1 @@
+../../../common/slang
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/filelists/strongswan b/config/rootfiles/oldcore/91/filelists/strongswan
new file mode 120000 (symlink)
index 0000000..90c727e
--- /dev/null
@@ -0,0 +1 @@
+../../../common/strongswan
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/91/meta b/config/rootfiles/oldcore/91/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/91/update.sh b/config/rootfiles/oldcore/91/update.sh
new file mode 100644 (file)
index 0000000..1104c9f
--- /dev/null
@@ -0,0 +1,70 @@
+#!/bin/bash
+############################################################################
+#                                                                          #
+# This file is part of the IPFire Firewall.                                #
+#                                                                          #
+# IPFire 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.                                      #
+#                                                                          #
+# IPFire 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 IPFire; if not, write to the Free Software                    #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
+#                                                                          #
+# Copyright (C) 2015 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+# Remove old core updates from pakfire cache to save space...
+core=91
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+/etc/init.d/ipsec stop
+
+# Extract files
+extract_files
+
+# Create some missing graphs folders (core90)
+mkdir -p /srv/web/ipfire/html/{accounting,graphs}
+chmod 777 /srv/web/ipfire/html/{accounting,graphs}
+
+# Update Language cache
+/usr/local/bin/update-lang-cache
+
+# Regenerate IPsec configuration
+sudo -u nobody /srv/web/ipfire/cgi-bin/vpnmain.cgi
+
+sync
+
+# Start services
+if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then
+       /etc/init.d/ipsec start
+fi
+
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+       grub-mkconfig > /boot/grub/grub.cfg
+fi
+
+# This update need a reboot...
+touch /var/run/need_reboot
+
+# Finish
+/etc/init.d/fireinfo start
+sendprofile
+
+# Don't report the exitcode last command
+exit 0
diff --git a/config/rootfiles/oldcore/92/exclude b/config/rootfiles/oldcore/92/exclude
new file mode 100644 (file)
index 0000000..18e9b4d
--- /dev/null
@@ -0,0 +1,20 @@
+boot/config.txt
+etc/collectd.custom
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/ssh/ssh_config
+etc/ssh/sshd_config
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/ovpn
+var/log/cache
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/oldcore/92/filelists/ca-certificates b/config/rootfiles/oldcore/92/filelists/ca-certificates
new file mode 120000 (symlink)
index 0000000..320fea8
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ca-certificates
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/conntrack-tools b/config/rootfiles/oldcore/92/filelists/conntrack-tools
new file mode 120000 (symlink)
index 0000000..88fbe06
--- /dev/null
@@ -0,0 +1 @@
+../../../common/conntrack-tools
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/curl b/config/rootfiles/oldcore/92/filelists/curl
new file mode 120000 (symlink)
index 0000000..4b84bef
--- /dev/null
@@ -0,0 +1 @@
+../../../common/curl
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/dnsmasq b/config/rootfiles/oldcore/92/filelists/dnsmasq
new file mode 120000 (symlink)
index 0000000..d469c74
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dnsmasq
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/files b/config/rootfiles/oldcore/92/filelists/files
new file mode 100644 (file)
index 0000000..9c5a302
--- /dev/null
@@ -0,0 +1,10 @@
+etc/system-release
+etc/issue
+srv/web/ipfire/cgi-bin/connections.cgi
+srv/web/ipfire/cgi-bin/dhcp.cgi
+srv/web/ipfire/cgi-bin/vpnmain.cgi
+srv/web/ipfire/cgi-bin/webaccess.cgi
+var/ipfire/graphs.pl
+var/ipfire/network-functions.pl
+var/ipfire/langs
+var/ipfire/urlfilter/bin/autoupdate.pl
diff --git a/config/rootfiles/oldcore/92/filelists/iptables b/config/rootfiles/oldcore/92/filelists/iptables
new file mode 120000 (symlink)
index 0000000..8caf12b
--- /dev/null
@@ -0,0 +1 @@
+../../../common/iptables
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libgcrypt b/config/rootfiles/oldcore/92/filelists/libgcrypt
new file mode 120000 (symlink)
index 0000000..2df12a2
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libgcrypt
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libgpg-error b/config/rootfiles/oldcore/92/filelists/libgpg-error
new file mode 120000 (symlink)
index 0000000..cad4313
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libgpg-error
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libnetfilter_conntrack b/config/rootfiles/oldcore/92/filelists/libnetfilter_conntrack
new file mode 120000 (symlink)
index 0000000..6ef5cc4
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnetfilter_conntrack
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libnetfilter_cthelper b/config/rootfiles/oldcore/92/filelists/libnetfilter_cthelper
new file mode 120000 (symlink)
index 0000000..02fac03
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnetfilter_cthelper
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libnetfilter_cttimeout b/config/rootfiles/oldcore/92/filelists/libnetfilter_cttimeout
new file mode 120000 (symlink)
index 0000000..6b1b980
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnetfilter_cttimeout
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libnetfilter_queue b/config/rootfiles/oldcore/92/filelists/libnetfilter_queue
new file mode 120000 (symlink)
index 0000000..9344b04
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnetfilter_queue
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libnfnetlink b/config/rootfiles/oldcore/92/filelists/libnfnetlink
new file mode 120000 (symlink)
index 0000000..605e72d
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnfnetlink
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libpcap b/config/rootfiles/oldcore/92/filelists/libpcap
new file mode 120000 (symlink)
index 0000000..c7f9f52
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libpcap
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libusb b/config/rootfiles/oldcore/92/filelists/libusb
new file mode 120000 (symlink)
index 0000000..edbe8c2
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libusb
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/libusb-compat b/config/rootfiles/oldcore/92/filelists/libusb-compat
new file mode 120000 (symlink)
index 0000000..35c3237
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libusb-compat
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/openssh b/config/rootfiles/oldcore/92/filelists/openssh
new file mode 120000 (symlink)
index 0000000..d8c77fd
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssh
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/openssl b/config/rootfiles/oldcore/92/filelists/openssl
new file mode 120000 (symlink)
index 0000000..e011a92
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssl
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/python b/config/rootfiles/oldcore/92/filelists/python
new file mode 120000 (symlink)
index 0000000..ffe6e2c
--- /dev/null
@@ -0,0 +1 @@
+../../../common/python
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/rrdtool b/config/rootfiles/oldcore/92/filelists/rrdtool
new file mode 120000 (symlink)
index 0000000..7a82e41
--- /dev/null
@@ -0,0 +1 @@
+../../../common/rrdtool
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/filelists/squid b/config/rootfiles/oldcore/92/filelists/squid
new file mode 120000 (symlink)
index 0000000..2dc8372
--- /dev/null
@@ -0,0 +1 @@
+../../../common/squid
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/92/meta b/config/rootfiles/oldcore/92/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/92/update.sh b/config/rootfiles/oldcore/92/update.sh
new file mode 100644 (file)
index 0000000..083561f
--- /dev/null
@@ -0,0 +1,68 @@
+#!/bin/bash
+############################################################################
+#                                                                          #
+# This file is part of the IPFire Firewall.                                #
+#                                                                          #
+# IPFire 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.                                      #
+#                                                                          #
+# IPFire 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 IPFire; if not, write to the Free Software                    #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
+#                                                                          #
+# Copyright (C) 2015 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+# Remove old core updates from pakfire cache to save space...
+core=92
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+/etc/init.d/squid stop
+/etc/init.d/ipsec stop
+
+# Extract files
+extract_files
+
+# Update Language cache
+/usr/local/bin/update-lang-cache
+
+# Regenerate IPsec configuration
+sudo -u nobody /srv/web/ipfire/cgi-bin/vpnmain.cgi
+
+rm -f /bin/[
+
+# Start services
+if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then
+       /etc/init.d/ipsec start
+fi
+/etc/init.d/squid start
+
+# This update need a reboot...
+touch /var/run/need_reboot
+
+# Finish
+/etc/init.d/fireinfo start
+sendprofile
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+       grub-mkconfig > /boot/grub/grub.cfg
+fi
+sync
+
+# Don't report the exitcode last command
+exit 0
diff --git a/config/rootfiles/oldcore/93/exclude b/config/rootfiles/oldcore/93/exclude
new file mode 100644 (file)
index 0000000..18e9b4d
--- /dev/null
@@ -0,0 +1,20 @@
+boot/config.txt
+etc/collectd.custom
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/ssh/ssh_config
+etc/ssh/sshd_config
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/ovpn
+var/log/cache
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/oldcore/93/filelists/bind b/config/rootfiles/oldcore/93/filelists/bind
new file mode 120000 (symlink)
index 0000000..48a0eba
--- /dev/null
@@ -0,0 +1 @@
+../../../common/bind
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/daq b/config/rootfiles/oldcore/93/filelists/daq
new file mode 120000 (symlink)
index 0000000..d0e0956
--- /dev/null
@@ -0,0 +1 @@
+../../../common/daq
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/ddns b/config/rootfiles/oldcore/93/filelists/ddns
new file mode 120000 (symlink)
index 0000000..7395164
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ddns
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/dnsmasq b/config/rootfiles/oldcore/93/filelists/dnsmasq
new file mode 120000 (symlink)
index 0000000..d469c74
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dnsmasq
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/files b/config/rootfiles/oldcore/93/filelists/files
new file mode 100644 (file)
index 0000000..bec26b8
--- /dev/null
@@ -0,0 +1,11 @@
+etc/system-release
+etc/issue
+opt/pakfire/pakfire
+opt/pakfire/lib/functions.pl
+srv/web/ipfire/html/themes/darkdos/include/functions.pl
+srv/web/ipfire/html/themes/ipfire/include/css/style.css
+srv/web/ipfire/html/themes/ipfire/include/functions.pl
+srv/web/ipfire/html/themes/ipfire-legacy/include/functions.pl
+srv/web/ipfire/html/themes/maniac/include/functions.pl
+var/ipfire/backup/include
+var/ipfire/langs
diff --git a/config/rootfiles/oldcore/93/filelists/libevent2 b/config/rootfiles/oldcore/93/filelists/libevent2
new file mode 120000 (symlink)
index 0000000..42edc99
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libevent2
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/libpcap b/config/rootfiles/oldcore/93/filelists/libpcap
new file mode 120000 (symlink)
index 0000000..c7f9f52
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libpcap
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/nettle b/config/rootfiles/oldcore/93/filelists/nettle
new file mode 120000 (symlink)
index 0000000..f0dba7a
--- /dev/null
@@ -0,0 +1 @@
+../../../common/nettle
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/pcre b/config/rootfiles/oldcore/93/filelists/pcre
new file mode 120000 (symlink)
index 0000000..b390d9a
--- /dev/null
@@ -0,0 +1 @@
+../../../common/pcre
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/filelists/squid b/config/rootfiles/oldcore/93/filelists/squid
new file mode 120000 (symlink)
index 0000000..2dc8372
--- /dev/null
@@ -0,0 +1 @@
+../../../common/squid
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/93/meta b/config/rootfiles/oldcore/93/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/93/update.sh b/config/rootfiles/oldcore/93/update.sh
new file mode 100644 (file)
index 0000000..4644543
--- /dev/null
@@ -0,0 +1,65 @@
+#!/bin/bash
+############################################################################
+#                                                                          #
+# This file is part of the IPFire Firewall.                                #
+#                                                                          #
+# IPFire 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.                                      #
+#                                                                          #
+# IPFire 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 IPFire; if not, write to the Free Software                    #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
+#                                                                          #
+# Copyright (C) 2015 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+# Remove old core updates from pakfire cache to save space...
+core=93
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+/etc/init.d/dnsmasq stop
+/etc/init.d/squid stop
+
+# Extract files
+extract_files
+
+# Remove libevent2 addon meta and rootfile. libevent2 is now in core.
+rm -f /opt/pakfire/db/*/meta-libevent2
+rm -f /opt/pakfire/db/rootfiles/libevent2
+
+# Update Language cache
+/usr/local/bin/update-lang-cache
+
+# Start services
+/etc/init.d/squid start
+/etc/init.d/dnsmasq start
+
+# This update need a reboot...
+#touch /var/run/need_reboot
+
+# Finish
+/etc/init.d/fireinfo start
+sendprofile
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+       grub-mkconfig -o /boot/grub/grub.cfg
+fi
+sync
+
+# Don't report the exitcode last command
+exit 0
diff --git a/config/rootfiles/oldcore/94/exclude b/config/rootfiles/oldcore/94/exclude
new file mode 100644 (file)
index 0000000..4c7aa5a
--- /dev/null
@@ -0,0 +1,22 @@
+boot/config.txt
+etc/alternatives
+etc/collectd.custom
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/ssh/ssh_config
+etc/ssh/sshd_config
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/ovpn
+var/lib/alternatives
+var/log/cache
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/oldcore/94/filelists/armv5tel/glibc b/config/rootfiles/oldcore/94/filelists/armv5tel/glibc
new file mode 120000 (symlink)
index 0000000..4c70d72
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/armv5tel/glibc
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/bind b/config/rootfiles/oldcore/94/filelists/bind
new file mode 120000 (symlink)
index 0000000..48a0eba
--- /dev/null
@@ -0,0 +1 @@
+../../../common/bind
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/chkconfig b/config/rootfiles/oldcore/94/filelists/chkconfig
new file mode 120000 (symlink)
index 0000000..00ef4cf
--- /dev/null
@@ -0,0 +1 @@
+../../../common/chkconfig
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/coreutils b/config/rootfiles/oldcore/94/filelists/coreutils
new file mode 120000 (symlink)
index 0000000..7351ed2
--- /dev/null
@@ -0,0 +1 @@
+../../../common/coreutils
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/dma b/config/rootfiles/oldcore/94/filelists/dma
new file mode 120000 (symlink)
index 0000000..60f4682
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dma
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/dnsmasq b/config/rootfiles/oldcore/94/filelists/dnsmasq
new file mode 120000 (symlink)
index 0000000..d469c74
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dnsmasq
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/file b/config/rootfiles/oldcore/94/filelists/file
new file mode 120000 (symlink)
index 0000000..0c60e43
--- /dev/null
@@ -0,0 +1 @@
+../../../common/file
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/files b/config/rootfiles/oldcore/94/filelists/files
new file mode 100644 (file)
index 0000000..9ef227b
--- /dev/null
@@ -0,0 +1,27 @@
+etc/system-release
+etc/issue
+etc/rc.d/init.d/networking/red
+etc/rc.d/init.d/snort
+etc/rc.d/init.d/sshd
+srv/web/ipfire/cgi-bin/connscheduler.cgi
+srv/web/ipfire/cgi-bin/dhcp.cgi
+srv/web/ipfire/cgi-bin/dnsforward.cgi
+srv/web/ipfire/cgi-bin/hosts.cgi
+srv/web/ipfire/cgi-bin/logs.cgi/log.dat
+srv/web/ipfire/cgi-bin/mac.cgi
+srv/web/ipfire/cgi-bin/mail.cgi
+srv/web/ipfire/cgi-bin/modem.cgi
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
+srv/web/ipfire/cgi-bin/pppsetup.cgi
+srv/web/ipfire/cgi-bin/proxy.cgi
+srv/web/ipfire/cgi-bin/qos.cgi
+srv/web/ipfire/cgi-bin/time.cgi
+srv/web/ipfire/cgi-bin/updatexlrator.cgi
+srv/web/ipfire/cgi-bin/urlfilter.cgi
+srv/web/ipfire/cgi-bin/vpnmain.cgi
+srv/web/ipfire/cgi-bin/wakeonlan.cgi
+srv/web/ipfire/cgi-bin/wireless.cgi
+var/ipfire/langs
+var/ipfire/menu.d/10-system.menu
+var/ipfire/menu.d/40-services.menu
+var/ipfire/network-functions.pl
diff --git a/config/rootfiles/oldcore/94/filelists/fireinfo b/config/rootfiles/oldcore/94/filelists/fireinfo
new file mode 120000 (symlink)
index 0000000..c461155
--- /dev/null
@@ -0,0 +1 @@
+../../../common/fireinfo
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/hdparm b/config/rootfiles/oldcore/94/filelists/hdparm
new file mode 120000 (symlink)
index 0000000..b644751
--- /dev/null
@@ -0,0 +1 @@
+../../../common/hdparm
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/i586/glibc b/config/rootfiles/oldcore/94/filelists/i586/glibc
new file mode 120000 (symlink)
index 0000000..943021f
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/glibc
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/iproute2 b/config/rootfiles/oldcore/94/filelists/iproute2
new file mode 120000 (symlink)
index 0000000..05f0f71
--- /dev/null
@@ -0,0 +1 @@
+../../../common/iproute2
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/libgcrypt b/config/rootfiles/oldcore/94/filelists/libgcrypt
new file mode 120000 (symlink)
index 0000000..2df12a2
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libgcrypt
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/libgpg-error b/config/rootfiles/oldcore/94/filelists/libgpg-error
new file mode 120000 (symlink)
index 0000000..cad4313
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libgpg-error
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/openssh b/config/rootfiles/oldcore/94/filelists/openssh
new file mode 120000 (symlink)
index 0000000..d8c77fd
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssh
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/pcre b/config/rootfiles/oldcore/94/filelists/pcre
new file mode 120000 (symlink)
index 0000000..b390d9a
--- /dev/null
@@ -0,0 +1 @@
+../../../common/pcre
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/perl-Email-Date-Format b/config/rootfiles/oldcore/94/filelists/perl-Email-Date-Format
new file mode 120000 (symlink)
index 0000000..9980811
--- /dev/null
@@ -0,0 +1 @@
+../../../common/perl-Email-Date-Format
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/perl-MIME-Lite b/config/rootfiles/oldcore/94/filelists/perl-MIME-Lite
new file mode 120000 (symlink)
index 0000000..aa0aa6b
--- /dev/null
@@ -0,0 +1 @@
+../../../common/perl-MIME-Lite
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/rrdtool b/config/rootfiles/oldcore/94/filelists/rrdtool
new file mode 120000 (symlink)
index 0000000..7a82e41
--- /dev/null
@@ -0,0 +1 @@
+../../../common/rrdtool
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/setup b/config/rootfiles/oldcore/94/filelists/setup
new file mode 120000 (symlink)
index 0000000..209374b
--- /dev/null
@@ -0,0 +1 @@
+../../../common/setup
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/filelists/squid b/config/rootfiles/oldcore/94/filelists/squid
new file mode 120000 (symlink)
index 0000000..2dc8372
--- /dev/null
@@ -0,0 +1 @@
+../../../common/squid
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/94/meta b/config/rootfiles/oldcore/94/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/94/update.sh b/config/rootfiles/oldcore/94/update.sh
new file mode 100644 (file)
index 0000000..99aa046
--- /dev/null
@@ -0,0 +1,106 @@
+#!/bin/bash
+############################################################################
+#                                                                          #
+# This file is part of the IPFire Firewall.                                #
+#                                                                          #
+# IPFire 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.                                      #
+#                                                                          #
+# IPFire 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 IPFire; if not, write to the Free Software                    #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
+#                                                                          #
+# Copyright (C) 2015 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+# Remove old core updates from pakfire cache to save space...
+core=94
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+/etc/init.d/squid stop
+/etc/init.d/sshd stop
+/etc/init.d/dnsmasq stop
+
+# Extract files
+extract_files
+
+# Restart init after glibc update
+telinit u
+
+# Update Language cache
+/usr/local/bin/update-lang-cache
+
+# Update SSH configuration
+sed -i /etc/ssh/sshd_config \
+       -e 's/^#PermitRootLogin yes$/PermitRootLogin yes/' \
+       -e 's|^#\?HostKey /etc/ssh/ssh_host_dsa_key$||' \
+       -e 's|^#\?HostKey /etc/ssh/ssh_host_ecdsa_key$||' \
+       -e 's|^#\?HostKey /etc/ssh/ssh_host_ed25519_key$||' \
+       -e 's|^#\?HostKey /etc/ssh/ssh_host_rsa_key$|HostKey /etc/ssh/ssh_host_ecdsa_key\nHostKey /etc/ssh/ssh_host_ed25519_key\nHostKey /etc/ssh/ssh_host_rsa_key|' \
+
+# Move away old and unsupported keys
+mv -f /etc/ssh/ssh_host_dsa_key{,.old}
+# Regenerating weak RSA keys
+mv -f /etc/ssh/ssh_host_key{,.old}
+mv -f /etc/ssh/ssh_host_rsa_key{,.old}
+
+# Update crontab
+sed -i /var/spool/cron/root.orig -e "/Force an update once a month/d"
+sed -i /var/spool/cron/root.orig -e "/ddns update-all --force/d"
+
+grep -q "dma -q" /var/spool/cron/root.orig || cat <<EOF >> /var/spool/cron/root.orig
+
+# Retry sending spooled mails regularly
+%hourly * /usr/sbin/dma -q
+
+# Cleanup the mail spool directory
+%weekly * * /usr/sbin/dma-cleanup-spool
+EOF
+
+fcrontab -z &>/dev/null
+
+# DMA - reconfigure Postfix if exists
+if [ -e /etc/postfix/main.cf ] && [ ! -e "/usr/sbin/sendmail.postfix" ]; then
+       mv /usr/sbin/sendmail /usr/sbin/sendmail.postfix
+       /usr/sbin/alternatives --install /usr/sbin/sendmail sendmail /usr/sbin/sendmail.postfix 15
+       sed -i 's/usr\/sbin\/sendmail/usr/sbin/sendmail.postfix/' /opt/pakfire/db/rootfiles/postfix
+fi
+# DMA - configure dma as default mta
+mkdir -p /etc/alternatives
+mkdir -p /var/lib/alternatives
+/usr/sbin/alternatives --install /usr/sbin/sendmail sendmail /usr/sbin/sendmail.dma 20
+
+# Start services
+/etc/init.d/dnsmasq start
+/etc/init.d/sshd start
+/etc/init.d/squid start
+
+# This update need a reboot...
+#touch /var/run/need_reboot
+
+# Finish
+/etc/init.d/fireinfo start
+sendprofile
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+       grub-mkconfig -o /boot/grub/grub.cfg
+fi
+sync
+
+# Don't report the exitcode last command
+exit 0
diff --git a/config/rootfiles/oldcore/95/exclude b/config/rootfiles/oldcore/95/exclude
new file mode 100644 (file)
index 0000000..fe5e6a5
--- /dev/null
@@ -0,0 +1,24 @@
+boot/config.txt
+etc/alternatives
+etc/collectd.custom
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/ssh/ssh_config
+etc/ssh/sshd_config
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/dma
+var/ipfire/time
+var/ipfire/ovpn
+var/lib/alternatives
+var/log/cache
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/oldcore/95/filelists/armv5tel/linux-kirkwood b/config/rootfiles/oldcore/95/filelists/armv5tel/linux-kirkwood
new file mode 120000 (symlink)
index 0000000..7217107
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/armv5tel/linux-kirkwood
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/armv5tel/linux-multi b/config/rootfiles/oldcore/95/filelists/armv5tel/linux-multi
new file mode 120000 (symlink)
index 0000000..204eb4c
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/armv5tel/linux-multi
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/armv5tel/linux-rpi b/config/rootfiles/oldcore/95/filelists/armv5tel/linux-rpi
new file mode 120000 (symlink)
index 0000000..a651a49
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/armv5tel/linux-rpi
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/ddns b/config/rootfiles/oldcore/95/filelists/ddns
new file mode 120000 (symlink)
index 0000000..7395164
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ddns
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/dma b/config/rootfiles/oldcore/95/filelists/dma
new file mode 120000 (symlink)
index 0000000..60f4682
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dma
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/files b/config/rootfiles/oldcore/95/filelists/files
new file mode 100644 (file)
index 0000000..2c458a1
--- /dev/null
@@ -0,0 +1,27 @@
+etc/system-release
+etc/issue
+etc/rc.d/init.d/dnsmasq
+etc/rc.d/init.d/firewall
+etc/rc.d/init.d/networking/red.up/99-geoip-database
+lib/udev/network-hotplug-vlan
+lib/udev/rules.d/60-net.rules
+srv/web/ipfire/cgi-bin/connections.cgi
+srv/web/ipfire/cgi-bin/credits.cgi
+srv/web/ipfire/cgi-bin/dhcp.cgi
+srv/web/ipfire/cgi-bin/firewall.cgi
+srv/web/ipfire/cgi-bin/ids.cgi
+srv/web/ipfire/cgi-bin/logs.cgi/firewalllogcountry.dat
+srv/web/ipfire/cgi-bin/mail.cgi
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
+srv/web/ipfire/cgi-bin/pppsetup.cgi
+srv/web/ipfire/cgi-bin/routing.cgi
+srv/web/ipfire/cgi-bin/vpnmain.cgi
+usr/lib/firewall/firewall-lib.pl
+usr/lib/firewall/ipsec-block
+usr/local/bin/ipsecctrl
+usr/local/bin/settime
+usr/local/bin/timecheck
+var/ipfire/backup/exclude
+var/ipfire/dhcpc/dhcpcd.conf
+var/ipfire/langs
+var/ipfire/network-functions.pl
diff --git a/config/rootfiles/oldcore/95/filelists/i586/linux b/config/rootfiles/oldcore/95/filelists/i586/linux
new file mode 120000 (symlink)
index 0000000..693ec4b
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/linux
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/i586/linux-initrd b/config/rootfiles/oldcore/95/filelists/i586/linux-initrd
new file mode 120000 (symlink)
index 0000000..32a03e6
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/linux-initrd
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/i586/strongswan-padlock b/config/rootfiles/oldcore/95/filelists/i586/strongswan-padlock
new file mode 120000 (symlink)
index 0000000..2412824
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/strongswan-padlock
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/ipset b/config/rootfiles/oldcore/95/filelists/ipset
new file mode 120000 (symlink)
index 0000000..2b43691
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ipset
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/lzo b/config/rootfiles/oldcore/95/filelists/lzo
new file mode 120000 (symlink)
index 0000000..8e11e78
--- /dev/null
@@ -0,0 +1 @@
+../../../common/lzo
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/ntp b/config/rootfiles/oldcore/95/filelists/ntp
new file mode 120000 (symlink)
index 0000000..7542d86
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ntp
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/snort b/config/rootfiles/oldcore/95/filelists/snort
new file mode 120000 (symlink)
index 0000000..9406ce0
--- /dev/null
@@ -0,0 +1 @@
+../../../common/snort
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/strongswan b/config/rootfiles/oldcore/95/filelists/strongswan
new file mode 120000 (symlink)
index 0000000..90c727e
--- /dev/null
@@ -0,0 +1 @@
+../../../common/strongswan
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/x86_64/linux b/config/rootfiles/oldcore/95/filelists/x86_64/linux
new file mode 120000 (symlink)
index 0000000..0615b5b
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/x86_64/linux
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/filelists/x86_64/linux-initrd b/config/rootfiles/oldcore/95/filelists/x86_64/linux-initrd
new file mode 120000 (symlink)
index 0000000..1b9fff7
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/x86_64/linux-initrd
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/95/meta b/config/rootfiles/oldcore/95/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/95/update.sh b/config/rootfiles/oldcore/95/update.sh
new file mode 100644 (file)
index 0000000..538a074
--- /dev/null
@@ -0,0 +1,256 @@
+#!/bin/bash
+############################################################################
+#                                                                          #
+# This file is part of the IPFire Firewall.                                #
+#                                                                          #
+# IPFire 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.                                      #
+#                                                                          #
+# IPFire 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 IPFire; if not, write to the Free Software                    #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
+#                                                                          #
+# Copyright (C) 2015 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+
+function find_device() {
+       local mountpoint="${1}"
+
+       local root
+       local dev mp fs flags rest
+       while read -r dev mp fs flags rest; do
+               # Skip unwanted entries
+               [ "${dev}" = "rootfs" ] && continue
+
+               if [ "${mp}" = "${mountpoint}" ] && [ -b "${dev}" ]; then
+                       root="$(basename "${dev}")"
+                       break
+               fi
+       done < /proc/mounts
+
+       # Get the actual device from the partition that holds /
+       while [ -n "${root}" ]; do
+               if [ -e "/sys/block/${root}" ]; then
+                       echo "${root}"
+                       return 0
+               fi
+
+               # Remove last character
+               root="${root::-1}"
+       done
+
+       return 1
+}
+
+
+#
+# Remove old core updates from pakfire cache to save space...
+core=95
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+#
+# Do some sanity checks.
+case $(uname -r) in
+       *-ipfire-versatile )
+               /usr/bin/logger -p syslog.emerg -t ipfire \
+                       "core-update-${core}: ERROR cannot update. versatile support is dropped."
+               # Report no error to pakfire. So it does not try to install it again.
+               exit 0
+               ;;
+       *-ipfire* )
+               # Ok.
+               ;;
+       * )
+               /usr/bin/logger -p syslog.emerg -t ipfire \
+                       "core-update-${core}: ERROR cannot update. No IPFire Kernel."
+               exit 1
+       ;;
+esac
+
+
+#
+#
+KVER="xxxKVERxxx"
+
+# Check diskspace on root
+ROOTSPACE=`df / -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
+
+if [ $ROOTSPACE -lt 100000 ]; then
+       /usr/bin/logger -p syslog.emerg -t ipfire \
+               "core-update-${core}: ERROR cannot update because not enough free space on root."
+       exit 2
+fi
+
+
+echo
+echo Update Kernel to $KVER ...
+#
+# Remove old kernel, configs, initrd, modules, dtb's ...
+#
+rm -rf /boot/System.map-*
+rm -rf /boot/config-*
+rm -rf /boot/ipfirerd-*
+rm -rf /boot/initramfs-*
+rm -rf /boot/vmlinuz-*
+rm -rf /boot/uImage-ipfire-*
+rm -rf /boot/uInit-ipfire-*
+rm -rf /boot/dtb-*-ipfire-*
+rm -rf /lib/modules
+
+case "$(uname -m)" in
+       armv*)
+               # Backup uEnv.txt if exist
+               if [ -e /boot/uEnv.txt ]; then
+                       cp -vf /boot/uEnv.txt /boot/uEnv.txt.org
+               fi
+
+               # work around the u-boot folder detection bug
+               mkdir -pv /boot/dtb-$KVER-ipfire-kirkwood
+               mkdir -pv /boot/dtb-$KVER-ipfire-multi
+               ;;
+esac
+
+# Remove files
+rm -f /etc/rc.d/init.d/network-vlans
+rm -f /etc/rc.d/rcsysinit.d/S91network-vlans
+
+#
+#Stop services
+/etc/init.d/snort stop
+/etc/init.d/squid stop
+/etc/init.d/ipsec stop
+/etc/init.d/ntp stop
+/etc/init.d/apache stop
+
+#
+#Extract files
+tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
+
+# Check diskspace on boot
+BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
+
+if [ $BOOTSPACE -lt 1000 ]; then
+       case $(uname -r) in
+               *-ipfire-kirkwood )
+                       # Special handling for old kirkwood images.
+                       # (install only kirkwood kernel)
+                       rm -rf /boot/*
+                       # work around the u-boot folder detection bug
+                       mkdir -pv /boot/dtb-$KVER-ipfire-kirkwood
+                       tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p \
+                               --numeric-owner -C / --wildcards 'boot/*-kirkwood*'
+                       ;;
+               * )
+                       /usr/bin/logger -p syslog.emerg -t ipfire \
+                               "core-update-${core}: FATAL-ERROR space run out on boot. System is not bootable..."
+                       /etc/init.d/apache start
+                       exit 4
+                       ;;
+       esac
+fi
+
+# Regenerate IPsec configuration
+sudo -u nobody /srv/web/ipfire/cgi-bin/vpnmain.cgi
+
+# Update Language cache
+/usr/local/bin/update-lang-cache
+
+#
+# Start services
+#
+/etc/init.d/apache start
+/etc/init.d/ntp start
+/etc/init.d/squid start
+/etc/init.d/snort start
+if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then
+       /etc/init.d/ipsec start
+fi
+
+if [ -e /boot/grub/grub.cfg ]; then
+               grub-mkconfig > /boot/grub/grub.cfg
+fi
+
+# Upadate Kernel version uEnv.txt
+if [ -e /boot/uEnv.txt ]; then
+       sed -i -e "s/KVER=.*/KVER=${KVER}/g" /boot/uEnv.txt
+fi
+
+# call user update script (needed for some arm boards)
+if [ -e /boot/pakfire-kernel-update ]; then
+       /boot/pakfire-kernel-update ${KVER}
+fi
+
+case "$(uname -m)" in
+       i?86)
+               # Force (re)install pae kernel if pae is supported
+               rm -rf /opt/pakfire/db/installed/meta-linux-pae
+               if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
+                       ROOTSPACE=`df / -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
+                       BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
+                       if [ $BOOTSPACE -lt 12000 -o $ROOTSPACE -lt 90000 ]; then
+                               /usr/bin/logger -p syslog.emerg -t ipfire \
+                               "core-update-${core}: WARNING not enough space for pae kernel."
+                       else
+                               echo "Name: linux-pae" > /opt/pakfire/db/installed/meta-linux-pae
+                               echo "ProgVersion: 0" >> /opt/pakfire/db/installed/meta-linux-pae
+                               echo "Release: 0"     >> /opt/pakfire/db/installed/meta-linux-pae
+                       fi
+               fi
+               ;;
+esac
+#
+# After pakfire has ended run it again and update the lists and do upgrade
+#
+echo '#!/bin/bash'                                        >  /tmp/pak_update
+echo 'while [ "$(ps -A | grep " update.sh")" != "" ]; do' >> /tmp/pak_update
+echo '    sleep 1'                                        >> /tmp/pak_update
+echo 'done'                                               >> /tmp/pak_update
+echo 'while [ "$(ps -A | grep " pakfire")" != "" ]; do'   >> /tmp/pak_update
+echo '    sleep 1'                                        >> /tmp/pak_update
+echo 'done'                                               >> /tmp/pak_update
+echo '/opt/pakfire/pakfire update -y --force'             >> /tmp/pak_update
+echo '/opt/pakfire/pakfire upgrade -y'                    >> /tmp/pak_update
+echo '/opt/pakfire/pakfire upgrade -y'                    >> /tmp/pak_update
+echo '/opt/pakfire/pakfire upgrade -y'                    >> /tmp/pak_update
+echo '/usr/bin/logger -p syslog.emerg -t ipfire "Core-upgrade finished. If you use a customized grub/uboot config"' >> /tmp/pak_update
+echo '/usr/bin/logger -p syslog.emerg -t ipfire "Check it before reboot !!!"' >> /tmp/pak_update
+echo '/usr/bin/logger -p syslog.emerg -t ipfire " *** Please reboot... *** "' >> /tmp/pak_update
+echo 'touch /var/run/need_reboot ' >> /tmp/pak_update
+#
+killall -KILL pak_update
+chmod +x /tmp/pak_update
+/tmp/pak_update &
+
+sync
+
+#
+#Finish
+/etc/init.d/fireinfo start
+sendprofile
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+       grub-mkconfig -o /boot/grub/grub.cfg
+fi
+sync
+
+echo
+echo Please wait until pakfire has ended...
+echo
+
+# Don't report the exitcode last command
+exit 0
diff --git a/config/rootfiles/oldcore/96/exclude b/config/rootfiles/oldcore/96/exclude
new file mode 100644 (file)
index 0000000..d87f175
--- /dev/null
@@ -0,0 +1,25 @@
+boot/config.txt
+etc/alternatives
+etc/collectd.custom
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+etc/localtime
+etc/shadow
+etc/snort/snort.conf
+etc/ssh/ssh_config
+etc/ssh/sshd_config
+etc/ssl/openssl.cnf
+etc/sudoers
+etc/sysconfig/firewall.local
+etc/sysconfig/rc.local
+etc/udev/rules.d/30-persistent-network.rules
+srv/web/ipfire/html/proxy.pac
+var/ipfire/dma
+var/ipfire/time
+var/ipfire/ovpn
+var/lib/alternatives
+var/log/cache
+var/state/dhcp/dhcpd.leases
+var/updatecache
diff --git a/config/rootfiles/oldcore/96/filelists/curl b/config/rootfiles/oldcore/96/filelists/curl
new file mode 120000 (symlink)
index 0000000..4b84bef
--- /dev/null
@@ -0,0 +1 @@
+../../../common/curl
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/dma b/config/rootfiles/oldcore/96/filelists/dma
new file mode 120000 (symlink)
index 0000000..60f4682
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dma
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/dnsmasq b/config/rootfiles/oldcore/96/filelists/dnsmasq
new file mode 120000 (symlink)
index 0000000..d469c74
--- /dev/null
@@ -0,0 +1 @@
+../../../common/dnsmasq
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/files b/config/rootfiles/oldcore/96/filelists/files
new file mode 100644 (file)
index 0000000..85fb05a
--- /dev/null
@@ -0,0 +1,17 @@
+etc/system-release
+etc/issue
+etc/rc.d/init.d/snort
+etc/vnstat.conf
+etc/rc.d/init.d/cleanfs
+etc/rc.d/init.d/collectd
+etc/rc.d/init.d/functions
+etc/rc.d/init.d/vnstat
+etc/rc.d/rc0.d/K51vnstat
+etc/rc.d/rc3.d/S01vnstat
+etc/rc.d/rc6.d/K51vnstat
+opt/pakfire/lib/functions.pl
+srv/web/ipfire/cgi-bin/connections.cgi
+srv/web/ipfire/cgi-bin/routing.cgi
+usr/lib/firewall/rules.pl
+usr/sbin/convert-portfw
+var/ipfire/general-functions.pl
diff --git a/config/rootfiles/oldcore/96/filelists/i586/grub b/config/rootfiles/oldcore/96/filelists/i586/grub
new file mode 120000 (symlink)
index 0000000..feb236a
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/grub
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/i586/openssl-sse2 b/config/rootfiles/oldcore/96/filelists/i586/openssl-sse2
new file mode 120000 (symlink)
index 0000000..f424713
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/openssl-sse2
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/i586/strongswan-padlock b/config/rootfiles/oldcore/96/filelists/i586/strongswan-padlock
new file mode 120000 (symlink)
index 0000000..2412824
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/strongswan-padlock
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/libnet b/config/rootfiles/oldcore/96/filelists/libnet
new file mode 120000 (symlink)
index 0000000..26e5f79
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnet
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/mdadm b/config/rootfiles/oldcore/96/filelists/mdadm
new file mode 120000 (symlink)
index 0000000..465808b
--- /dev/null
@@ -0,0 +1 @@
+../../../common/mdadm
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/ntp b/config/rootfiles/oldcore/96/filelists/ntp
new file mode 120000 (symlink)
index 0000000..7542d86
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ntp
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/openssl b/config/rootfiles/oldcore/96/filelists/openssl
new file mode 120000 (symlink)
index 0000000..e011a92
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssl
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/rrdtool b/config/rootfiles/oldcore/96/filelists/rrdtool
new file mode 120000 (symlink)
index 0000000..7a82e41
--- /dev/null
@@ -0,0 +1 @@
+../../../common/rrdtool
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/strongswan b/config/rootfiles/oldcore/96/filelists/strongswan
new file mode 120000 (symlink)
index 0000000..90c727e
--- /dev/null
@@ -0,0 +1 @@
+../../../common/strongswan
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/filelists/x86_64/grub b/config/rootfiles/oldcore/96/filelists/x86_64/grub
new file mode 120000 (symlink)
index 0000000..78d3bd7
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/x86_64/grub
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/96/meta b/config/rootfiles/oldcore/96/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/96/update.sh b/config/rootfiles/oldcore/96/update.sh
new file mode 100644 (file)
index 0000000..a3cf5cf
--- /dev/null
@@ -0,0 +1,104 @@
+#!/bin/bash
+############################################################################
+#                                                                          #
+# This file is part of the IPFire Firewall.                                #
+#                                                                          #
+# IPFire 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.                                      #
+#                                                                          #
+# IPFire 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 IPFire; if not, write to the Free Software                    #
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
+#                                                                          #
+# Copyright (C) 2015 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+# Remove old core updates from pakfire cache to save space...
+core=96
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+/etc/init.d/fcron stop
+/etc/init.d/collectd stop
+qosctrl stop
+
+# Backup RRDs
+if [ -d "/var/log/rrd.bak" ]; then
+       # Umount ramdisk
+       umount -l "/var/log/rrd"
+       rm -f "/var/log/rrd"
+
+       mv "/var/log/rrd.bak/vnstat" "/var/log/vnstat"
+       mv "/var/log/rrd.bak" "/var/log/rrd"
+fi
+
+# Remove old scripts
+rm -f /etc/rc.d/init.d/tmpfs \
+       /etc/rc.d/rc0.d/K85tmpfs \
+       /etc/rc.d/rc3.d/S01tmpfs \
+       /etc/rc.d/rc6.d/K85tmpfs
+
+# Extract files
+extract_files
+
+# Update Language cache
+# /usr/local/bin/update-lang-cache
+
+# Keep (almost) old ramdisk behaviour
+if [ ! -e "/etc/sysconfig/ramdisk" ]; then
+       echo "RAMDISK_MODE=2" > /etc/sysconfig/ramdisk
+fi
+
+if [ -L "/var/spool/cron" ]; then
+       rm -f /var/spool/cron
+       mv /var/log/rrd/cron /var/spool/cron
+       chown cron:cron /var/spool/cron
+
+       # Add new crontab entries
+       sed -i /var/spool/cron/root.orig -e "/tmpfs backup/d"
+       grep -q "collectd backup" /var/spool/cron/root.orig || cat <<EOF >> /var/spool/cron/root.orig
+# Backup ramdisks if necessary
+%nightly,random * 23-4  /etc/init.d/collectd backup &>/dev/null
+%nightly,random * 23-4  /etc/init.d/vnstat backup &>/dev/null
+EOF
+       fcrontab -z
+fi
+
+# Start services
+/etc/init.d/collectd start
+/etc/init.d/vnstat start
+/etc/init.d/fcron start
+/etc/init.d/dnsmasq restart
+qosctrl start
+
+# Disable loading of cryptodev
+sed -e "s/^cryptodev/# &/g" -i /etc/sysconfig/modules
+
+# This update need a reboot...
+#touch /var/run/need_reboot
+
+# Finish
+/etc/init.d/fireinfo start
+sendprofile
+# Update grub config to display new core version
+if [ -e /boot/grub/grub.cfg ]; then
+       grub-mkconfig -o /boot/grub/grub.cfg
+fi
+sync
+
+# Don't report the exitcode last command
+exit 0
index ff0eea841a6baea6830b078f653ff2c9d9cd2f08..15d9515c84a081b47191891e106b8fb206b760c5 100644 (file)
@@ -9,55 +9,65 @@ usr/local/lib/p7zip
 #usr/local/man/man1/7zr.1
 #usr/local/share/doc/p7zip
 #usr/local/share/doc/p7zip/ChangeLog
-#usr/local/share/doc/p7zip/DOCS
-#usr/local/share/doc/p7zip/DOCS/7zC.txt
-#usr/local/share/doc/p7zip/DOCS/7zFormat.txt
-#usr/local/share/doc/p7zip/DOCS/License.txt
-#usr/local/share/doc/p7zip/DOCS/MANUAL
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/add.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/bench.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/delete.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/extract.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/extract_full.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/index.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/list.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/style.css
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/test.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/commands/update.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/exit_codes.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/index.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/style.css
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/ar_exclude.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/ar_include.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/ar_no.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/charset.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/exclude.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/include.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/index.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/list_tech.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/method.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/output_dir.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/overwrite.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/password.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/recurse.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/sfx.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/ssc.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/stdin.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/stdout.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/stop_switch.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/style.css
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/type.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/update.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/volume.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/working_dir.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/switches/yes.htm
-#usr/local/share/doc/p7zip/DOCS/MANUAL/syntax.htm
-#usr/local/share/doc/p7zip/DOCS/Methods.txt
-#usr/local/share/doc/p7zip/DOCS/copying.txt
-#usr/local/share/doc/p7zip/DOCS/history.txt
-#usr/local/share/doc/p7zip/DOCS/lzma.txt
-#usr/local/share/doc/p7zip/DOCS/readme.txt
-#usr/local/share/doc/p7zip/DOCS/unRarLicense.txt
+#usr/local/share/doc/p7zip/DOC
+#usr/local/share/doc/p7zip/DOC/7zC.txt
+#usr/local/share/doc/p7zip/DOC/7zFormat.txt
+#usr/local/share/doc/p7zip/DOC/License.txt
+#usr/local/share/doc/p7zip/DOC/MANUAL
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/add.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/bench.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/delete.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/extract.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/extract_full.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/hash.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/index.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/list.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/rename.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/style.css
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/test.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/commands/update.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/exit_codes.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/index.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/style.css
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/ar_exclude.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/ar_include.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/ar_no.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/charset.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/exclude.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/include.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/index.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/large_pages.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/list_tech.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/method.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/output_dir.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/overwrite.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/password.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/recurse.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/sa.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/scrc.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/sdel.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/sfx.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/sni.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/sns.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/spf.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/ssc.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/stdin.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/stdout.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/stl.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/stop_switch.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/style.css
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/type.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/update.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/volume.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/working_dir.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/switches/yes.htm
+#usr/local/share/doc/p7zip/DOC/MANUAL/syntax.htm
+#usr/local/share/doc/p7zip/DOC/Methods.txt
+#usr/local/share/doc/p7zip/DOC/copying.txt
+#usr/local/share/doc/p7zip/DOC/lzma.txt
+#usr/local/share/doc/p7zip/DOC/readme.txt
+#usr/local/share/doc/p7zip/DOC/src-history.txt
+#usr/local/share/doc/p7zip/DOC/unRarLicense.txt
 #usr/local/share/doc/p7zip/README
old mode 100755 (executable)
new mode 100644 (file)
index 6654621..1d5c2a0
@@ -1,6 +1,5 @@
 etc/asterisk
 etc/logrotate.d/asterisk
-etc/rc.d/init.d/asterisk
 etc/rc.d/rc0.d/K30asterisk
 etc/rc.d/rc3.d/S30asterisk
 etc/rc.d/rc6.d/K30asterisk
@@ -152,6 +151,7 @@ etc/rc.d/rc6.d/K30asterisk
 #usr/include/asterisk/ulaw.h
 #usr/include/asterisk/unaligned.h
 #usr/include/asterisk/utils.h
+#usr/include/asterisk/vector.h
 #usr/include/asterisk/version.h
 #usr/include/asterisk/xml.h
 #usr/include/asterisk/xmldoc.h
@@ -835,15 +835,15 @@ var/lib/asterisk/sounds/digits/de/xh-8x.gsm
 var/lib/asterisk/sounds/digits/de/xh-9x.gsm
 var/lib/asterisk/sounds/digits/de/yesterday.gsm
 var/lib/asterisk/sounds/en
-var/lib/asterisk/sounds/en/.asterisk-core-sounds-en-gsm-1.4.26
+var/lib/asterisk/sounds/en/.asterisk-core-sounds-en-gsm-1.4.27
 var/lib/asterisk/sounds/en/.asterisk-extra-sounds-en-gsm-1.4.15
 var/lib/asterisk/sounds/en/1-for-am-2-for-pm.gsm
 var/lib/asterisk/sounds/en/1-yes-2-no.gsm
-#var/lib/asterisk/sounds/en/CHANGES-asterisk-core-en-1.4.26
+#var/lib/asterisk/sounds/en/CHANGES-asterisk-core-en-1.4.27
 #var/lib/asterisk/sounds/en/CHANGES-asterisk-extra-en-1.4.15
-#var/lib/asterisk/sounds/en/CREDITS-asterisk-core-en-1.4.26
+#var/lib/asterisk/sounds/en/CREDITS-asterisk-core-en-1.4.27
 #var/lib/asterisk/sounds/en/CREDITS-asterisk-extra-en-1.4.15
-#var/lib/asterisk/sounds/en/LICENSE-asterisk-core-en-1.4.26
+#var/lib/asterisk/sounds/en/LICENSE-asterisk-core-en-1.4.27
 #var/lib/asterisk/sounds/en/LICENSE-asterisk-extra-en-1.4.15
 var/lib/asterisk/sounds/en/OfficeSpace.gsm
 var/lib/asterisk/sounds/en/Randulo-allison.gsm
@@ -956,6 +956,7 @@ var/lib/asterisk/sounds/en/bar.gsm
 var/lib/asterisk/sounds/en/barn.gsm
 var/lib/asterisk/sounds/en/barns.gsm
 var/lib/asterisk/sounds/en/barometric.gsm
+var/lib/asterisk/sounds/en/basic-pbx-ivr-main.gsm
 var/lib/asterisk/sounds/en/bearing.gsm
 var/lib/asterisk/sounds/en/beaufort.gsm
 var/lib/asterisk/sounds/en/because-paranoid.gsm
@@ -2855,3 +2856,4 @@ var/spool/asterisk/voicemail/default/1234/INBOX
 var/spool/asterisk/voicemail/default/1234/en
 var/spool/asterisk/voicemail/default/1234/en/busy.gsm
 var/spool/asterisk/voicemail/default/1234/en/unavail.gsm
+etc/rc.d/init.d/asterisk
index 73533130058563a3a2454e24ae3c2a32f47316ef..d7636e9835cd46ae687a62802efafe613cb53c48 100644 (file)
@@ -10,16 +10,16 @@ usr/bin/sigtool
 #usr/include/clamav.h
 #usr/lib/libclamav.la
 usr/lib/libclamav.so
-usr/lib/libclamav.so.6
-usr/lib/libclamav.so.6.1.25
+usr/lib/libclamav.so.7
+usr/lib/libclamav.so.7.1.1
 #usr/lib/libclamunrar.la
 usr/lib/libclamunrar.so
-usr/lib/libclamunrar.so.6
-usr/lib/libclamunrar.so.6.1.25
+usr/lib/libclamunrar.so.7
+usr/lib/libclamunrar.so.7.1.1
 #usr/lib/libclamunrar_iface.la
 usr/lib/libclamunrar_iface.so
-usr/lib/libclamunrar_iface.so.6
-usr/lib/libclamunrar_iface.so.6.1.25
+usr/lib/libclamunrar_iface.so.7
+usr/lib/libclamunrar_iface.so.7.1.1
 #usr/lib/pkgconfig/libclamav.pc
 usr/sbin/clamd
 usr/share/clamav
index 56ee1f2f19ffa9697f9da48dda19481d3b7e00de..0604867e9c4e5a93dc76c68cf1cfcd32586f04b1 100644 (file)
@@ -1,4 +1,3 @@
-#etc/dbus-1/system.d/cups.conf
 etc/pam.d/cups
 etc/rc.d/init.d/cups
 #etc/rc0.d
@@ -19,7 +18,6 @@ usr/bin/cupstestppd
 usr/bin/ipptool
 usr/bin/lp
 usr/bin/lpoptions
-usr/bin/lppasswd
 usr/bin/lpq
 usr/bin/lpr
 usr/bin/lprm
@@ -52,9 +50,7 @@ usr/bin/ppdpo
 usr/lib/cups
 usr/lib/cups/backend
 usr/lib/cups/backend/http
-usr/lib/cups/backend/https
 usr/lib/cups/backend/ipp
-usr/lib/cups/backend/ipps
 usr/lib/cups/backend/lpd
 usr/lib/cups/backend/smb
 usr/lib/cups/backend/snmp
@@ -183,77 +179,6 @@ usr/share/cups/templates/add-class.tmpl
 usr/share/cups/templates/add-printer.tmpl
 usr/share/cups/templates/add-rss-subscription.tmpl
 usr/share/cups/templates/admin.tmpl
-usr/share/cups/templates/ca
-usr/share/cups/templates/ca/add-class.tmpl
-usr/share/cups/templates/ca/add-printer.tmpl
-usr/share/cups/templates/ca/add-rss-subscription.tmpl
-usr/share/cups/templates/ca/admin.tmpl
-usr/share/cups/templates/ca/choose-device.tmpl
-usr/share/cups/templates/ca/choose-make.tmpl
-usr/share/cups/templates/ca/choose-model.tmpl
-usr/share/cups/templates/ca/choose-serial.tmpl
-usr/share/cups/templates/ca/choose-uri.tmpl
-usr/share/cups/templates/ca/class-added.tmpl
-usr/share/cups/templates/ca/class-confirm.tmpl
-usr/share/cups/templates/ca/class-deleted.tmpl
-usr/share/cups/templates/ca/class-jobs-header.tmpl
-usr/share/cups/templates/ca/class-modified.tmpl
-usr/share/cups/templates/ca/class.tmpl
-usr/share/cups/templates/ca/classes-header.tmpl
-usr/share/cups/templates/ca/classes.tmpl
-usr/share/cups/templates/ca/command.tmpl
-usr/share/cups/templates/ca/edit-config.tmpl
-usr/share/cups/templates/ca/error-op.tmpl
-usr/share/cups/templates/ca/error.tmpl
-usr/share/cups/templates/ca/header.tmpl
-usr/share/cups/templates/ca/help-header.tmpl
-usr/share/cups/templates/ca/help-printable.tmpl
-usr/share/cups/templates/ca/help-trailer.tmpl
-usr/share/cups/templates/ca/job-cancel.tmpl
-usr/share/cups/templates/ca/job-hold.tmpl
-usr/share/cups/templates/ca/job-move.tmpl
-usr/share/cups/templates/ca/job-moved.tmpl
-usr/share/cups/templates/ca/job-release.tmpl
-usr/share/cups/templates/ca/job-restart.tmpl
-usr/share/cups/templates/ca/jobs-header.tmpl
-usr/share/cups/templates/ca/jobs.tmpl
-usr/share/cups/templates/ca/list-available-printers.tmpl
-usr/share/cups/templates/ca/modify-class.tmpl
-usr/share/cups/templates/ca/modify-printer.tmpl
-usr/share/cups/templates/ca/norestart.tmpl
-usr/share/cups/templates/ca/option-boolean.tmpl
-usr/share/cups/templates/ca/option-conflict.tmpl
-usr/share/cups/templates/ca/option-header.tmpl
-usr/share/cups/templates/ca/option-pickmany.tmpl
-usr/share/cups/templates/ca/option-pickone.tmpl
-usr/share/cups/templates/ca/option-trailer.tmpl
-usr/share/cups/templates/ca/pager.tmpl
-usr/share/cups/templates/ca/printer-accept.tmpl
-usr/share/cups/templates/ca/printer-added.tmpl
-usr/share/cups/templates/ca/printer-configured.tmpl
-usr/share/cups/templates/ca/printer-confirm.tmpl
-usr/share/cups/templates/ca/printer-default.tmpl
-usr/share/cups/templates/ca/printer-deleted.tmpl
-usr/share/cups/templates/ca/printer-jobs-header.tmpl
-usr/share/cups/templates/ca/printer-modified.tmpl
-usr/share/cups/templates/ca/printer-purge.tmpl
-usr/share/cups/templates/ca/printer-reject.tmpl
-usr/share/cups/templates/ca/printer-start.tmpl
-usr/share/cups/templates/ca/printer-stop.tmpl
-usr/share/cups/templates/ca/printer.tmpl
-usr/share/cups/templates/ca/printers-header.tmpl
-usr/share/cups/templates/ca/printers.tmpl
-usr/share/cups/templates/ca/restart.tmpl
-usr/share/cups/templates/ca/samba-export.tmpl
-usr/share/cups/templates/ca/samba-exported.tmpl
-usr/share/cups/templates/ca/search.tmpl
-usr/share/cups/templates/ca/set-printer-options-header.tmpl
-usr/share/cups/templates/ca/set-printer-options-trailer.tmpl
-usr/share/cups/templates/ca/subscription-added.tmpl
-usr/share/cups/templates/ca/subscription-canceled.tmpl
-usr/share/cups/templates/ca/test-page.tmpl
-usr/share/cups/templates/ca/trailer.tmpl
-usr/share/cups/templates/ca/users.tmpl
 usr/share/cups/templates/choose-device.tmpl
 usr/share/cups/templates/choose-make.tmpl
 usr/share/cups/templates/choose-model.tmpl
@@ -268,77 +193,76 @@ usr/share/cups/templates/class.tmpl
 usr/share/cups/templates/classes-header.tmpl
 usr/share/cups/templates/classes.tmpl
 usr/share/cups/templates/command.tmpl
-usr/share/cups/templates/cs
-usr/share/cups/templates/cs/add-class.tmpl
-usr/share/cups/templates/cs/add-printer.tmpl
-usr/share/cups/templates/cs/add-rss-subscription.tmpl
-usr/share/cups/templates/cs/admin.tmpl
-usr/share/cups/templates/cs/choose-device.tmpl
-usr/share/cups/templates/cs/choose-make.tmpl
-usr/share/cups/templates/cs/choose-model.tmpl
-usr/share/cups/templates/cs/choose-serial.tmpl
-usr/share/cups/templates/cs/choose-uri.tmpl
-usr/share/cups/templates/cs/class-added.tmpl
-usr/share/cups/templates/cs/class-confirm.tmpl
-usr/share/cups/templates/cs/class-deleted.tmpl
-usr/share/cups/templates/cs/class-jobs-header.tmpl
-usr/share/cups/templates/cs/class-modified.tmpl
-usr/share/cups/templates/cs/class.tmpl
-usr/share/cups/templates/cs/classes-header.tmpl
-usr/share/cups/templates/cs/classes.tmpl
-usr/share/cups/templates/cs/command.tmpl
-usr/share/cups/templates/cs/edit-config.tmpl
-usr/share/cups/templates/cs/error-op.tmpl
-usr/share/cups/templates/cs/error.tmpl
-usr/share/cups/templates/cs/header.tmpl
-usr/share/cups/templates/cs/help-header.tmpl
-usr/share/cups/templates/cs/help-printable.tmpl
-usr/share/cups/templates/cs/help-trailer.tmpl
-usr/share/cups/templates/cs/job-cancel.tmpl
-usr/share/cups/templates/cs/job-hold.tmpl
-usr/share/cups/templates/cs/job-move.tmpl
-usr/share/cups/templates/cs/job-moved.tmpl
-usr/share/cups/templates/cs/job-release.tmpl
-usr/share/cups/templates/cs/job-restart.tmpl
-usr/share/cups/templates/cs/jobs-header.tmpl
-usr/share/cups/templates/cs/jobs.tmpl
-usr/share/cups/templates/cs/list-available-printers.tmpl
-usr/share/cups/templates/cs/modify-class.tmpl
-usr/share/cups/templates/cs/modify-printer.tmpl
-usr/share/cups/templates/cs/norestart.tmpl
-usr/share/cups/templates/cs/option-boolean.tmpl
-usr/share/cups/templates/cs/option-conflict.tmpl
-usr/share/cups/templates/cs/option-header.tmpl
-usr/share/cups/templates/cs/option-pickmany.tmpl
-usr/share/cups/templates/cs/option-pickone.tmpl
-usr/share/cups/templates/cs/option-trailer.tmpl
-usr/share/cups/templates/cs/pager.tmpl
-usr/share/cups/templates/cs/printer-accept.tmpl
-usr/share/cups/templates/cs/printer-added.tmpl
-usr/share/cups/templates/cs/printer-configured.tmpl
-usr/share/cups/templates/cs/printer-confirm.tmpl
-usr/share/cups/templates/cs/printer-default.tmpl
-usr/share/cups/templates/cs/printer-deleted.tmpl
-usr/share/cups/templates/cs/printer-jobs-header.tmpl
-usr/share/cups/templates/cs/printer-modified.tmpl
-usr/share/cups/templates/cs/printer-purge.tmpl
-usr/share/cups/templates/cs/printer-reject.tmpl
-usr/share/cups/templates/cs/printer-start.tmpl
-usr/share/cups/templates/cs/printer-stop.tmpl
-usr/share/cups/templates/cs/printer.tmpl
-usr/share/cups/templates/cs/printers-header.tmpl
-usr/share/cups/templates/cs/printers.tmpl
-usr/share/cups/templates/cs/restart.tmpl
-usr/share/cups/templates/cs/samba-export.tmpl
-usr/share/cups/templates/cs/samba-exported.tmpl
-usr/share/cups/templates/cs/search.tmpl
-usr/share/cups/templates/cs/set-printer-options-header.tmpl
-usr/share/cups/templates/cs/set-printer-options-trailer.tmpl
-usr/share/cups/templates/cs/subscription-added.tmpl
-usr/share/cups/templates/cs/subscription-canceled.tmpl
-usr/share/cups/templates/cs/test-page.tmpl
-usr/share/cups/templates/cs/trailer.tmpl
-usr/share/cups/templates/cs/users.tmpl
+usr/share/cups/templates/de
+usr/share/cups/templates/de/add-class.tmpl
+usr/share/cups/templates/de/add-printer.tmpl
+usr/share/cups/templates/de/add-rss-subscription.tmpl
+usr/share/cups/templates/de/admin.tmpl
+usr/share/cups/templates/de/choose-device.tmpl
+usr/share/cups/templates/de/choose-make.tmpl
+usr/share/cups/templates/de/choose-model.tmpl
+usr/share/cups/templates/de/choose-serial.tmpl
+usr/share/cups/templates/de/choose-uri.tmpl
+usr/share/cups/templates/de/class-added.tmpl
+usr/share/cups/templates/de/class-confirm.tmpl
+usr/share/cups/templates/de/class-deleted.tmpl
+usr/share/cups/templates/de/class-jobs-header.tmpl
+usr/share/cups/templates/de/class-modified.tmpl
+usr/share/cups/templates/de/class.tmpl
+usr/share/cups/templates/de/classes-header.tmpl
+usr/share/cups/templates/de/classes.tmpl
+usr/share/cups/templates/de/command.tmpl
+usr/share/cups/templates/de/edit-config.tmpl
+usr/share/cups/templates/de/error-op.tmpl
+usr/share/cups/templates/de/error.tmpl
+usr/share/cups/templates/de/header.tmpl
+usr/share/cups/templates/de/help-header.tmpl
+usr/share/cups/templates/de/help-printable.tmpl
+usr/share/cups/templates/de/job-cancel.tmpl
+usr/share/cups/templates/de/job-hold.tmpl
+usr/share/cups/templates/de/job-move.tmpl
+usr/share/cups/templates/de/job-moved.tmpl
+usr/share/cups/templates/de/job-release.tmpl
+usr/share/cups/templates/de/job-restart.tmpl
+usr/share/cups/templates/de/jobs-header.tmpl
+usr/share/cups/templates/de/jobs.tmpl
+usr/share/cups/templates/de/list-available-printers.tmpl
+usr/share/cups/templates/de/modify-class.tmpl
+usr/share/cups/templates/de/modify-printer.tmpl
+usr/share/cups/templates/de/norestart.tmpl
+usr/share/cups/templates/de/option-boolean.tmpl
+usr/share/cups/templates/de/option-conflict.tmpl
+usr/share/cups/templates/de/option-header.tmpl
+usr/share/cups/templates/de/option-pickmany.tmpl
+usr/share/cups/templates/de/option-pickone.tmpl
+usr/share/cups/templates/de/option-trailer.tmpl
+usr/share/cups/templates/de/pager.tmpl
+usr/share/cups/templates/de/printer-accept.tmpl
+usr/share/cups/templates/de/printer-added.tmpl
+usr/share/cups/templates/de/printer-cancel-jobs.tmpl
+usr/share/cups/templates/de/printer-configured.tmpl
+usr/share/cups/templates/de/printer-confirm.tmpl
+usr/share/cups/templates/de/printer-default.tmpl
+usr/share/cups/templates/de/printer-deleted.tmpl
+usr/share/cups/templates/de/printer-jobs-header.tmpl
+usr/share/cups/templates/de/printer-modified.tmpl
+usr/share/cups/templates/de/printer-reject.tmpl
+usr/share/cups/templates/de/printer-start.tmpl
+usr/share/cups/templates/de/printer-stop.tmpl
+usr/share/cups/templates/de/printer.tmpl
+usr/share/cups/templates/de/printers-header.tmpl
+usr/share/cups/templates/de/printers.tmpl
+usr/share/cups/templates/de/restart.tmpl
+usr/share/cups/templates/de/samba-export.tmpl
+usr/share/cups/templates/de/samba-exported.tmpl
+usr/share/cups/templates/de/search.tmpl
+usr/share/cups/templates/de/set-printer-options-header.tmpl
+usr/share/cups/templates/de/set-printer-options-trailer.tmpl
+usr/share/cups/templates/de/subscription-added.tmpl
+usr/share/cups/templates/de/subscription-canceled.tmpl
+usr/share/cups/templates/de/test-page.tmpl
+usr/share/cups/templates/de/trailer.tmpl
+usr/share/cups/templates/de/users.tmpl
 usr/share/cups/templates/edit-config.tmpl
 usr/share/cups/templates/error-op.tmpl
 usr/share/cups/templates/error.tmpl
@@ -389,13 +313,13 @@ usr/share/cups/templates/es/option-trailer.tmpl
 usr/share/cups/templates/es/pager.tmpl
 usr/share/cups/templates/es/printer-accept.tmpl
 usr/share/cups/templates/es/printer-added.tmpl
+usr/share/cups/templates/es/printer-cancel-jobs.tmpl
 usr/share/cups/templates/es/printer-configured.tmpl
 usr/share/cups/templates/es/printer-confirm.tmpl
 usr/share/cups/templates/es/printer-default.tmpl
 usr/share/cups/templates/es/printer-deleted.tmpl
 usr/share/cups/templates/es/printer-jobs-header.tmpl
 usr/share/cups/templates/es/printer-modified.tmpl
-usr/share/cups/templates/es/printer-purge.tmpl
 usr/share/cups/templates/es/printer-reject.tmpl
 usr/share/cups/templates/es/printer-start.tmpl
 usr/share/cups/templates/es/printer-stop.tmpl
@@ -413,152 +337,10 @@ usr/share/cups/templates/es/subscription-canceled.tmpl
 usr/share/cups/templates/es/test-page.tmpl
 usr/share/cups/templates/es/trailer.tmpl
 usr/share/cups/templates/es/users.tmpl
-usr/share/cups/templates/fr
-usr/share/cups/templates/fr/add-class.tmpl
-usr/share/cups/templates/fr/add-printer.tmpl
-usr/share/cups/templates/fr/add-rss-subscription.tmpl
-usr/share/cups/templates/fr/admin.tmpl
-usr/share/cups/templates/fr/choose-device.tmpl
-usr/share/cups/templates/fr/choose-make.tmpl
-usr/share/cups/templates/fr/choose-model.tmpl
-usr/share/cups/templates/fr/choose-serial.tmpl
-usr/share/cups/templates/fr/choose-uri.tmpl
-usr/share/cups/templates/fr/class-added.tmpl
-usr/share/cups/templates/fr/class-confirm.tmpl
-usr/share/cups/templates/fr/class-deleted.tmpl
-usr/share/cups/templates/fr/class-jobs-header.tmpl
-usr/share/cups/templates/fr/class-modified.tmpl
-usr/share/cups/templates/fr/class.tmpl
-usr/share/cups/templates/fr/classes-header.tmpl
-usr/share/cups/templates/fr/classes.tmpl
-usr/share/cups/templates/fr/command.tmpl
-usr/share/cups/templates/fr/edit-config.tmpl
-usr/share/cups/templates/fr/error-op.tmpl
-usr/share/cups/templates/fr/error.tmpl
-usr/share/cups/templates/fr/header.tmpl
-usr/share/cups/templates/fr/help-header.tmpl
-usr/share/cups/templates/fr/help-printable.tmpl
-usr/share/cups/templates/fr/help-trailer.tmpl
-usr/share/cups/templates/fr/job-cancel.tmpl
-usr/share/cups/templates/fr/job-hold.tmpl
-usr/share/cups/templates/fr/job-move.tmpl
-usr/share/cups/templates/fr/job-moved.tmpl
-usr/share/cups/templates/fr/job-release.tmpl
-usr/share/cups/templates/fr/job-restart.tmpl
-usr/share/cups/templates/fr/jobs-header.tmpl
-usr/share/cups/templates/fr/jobs.tmpl
-usr/share/cups/templates/fr/list-available-printers.tmpl
-usr/share/cups/templates/fr/modify-class.tmpl
-usr/share/cups/templates/fr/modify-printer.tmpl
-usr/share/cups/templates/fr/norestart.tmpl
-usr/share/cups/templates/fr/option-boolean.tmpl
-usr/share/cups/templates/fr/option-conflict.tmpl
-usr/share/cups/templates/fr/option-header.tmpl
-usr/share/cups/templates/fr/option-pickmany.tmpl
-usr/share/cups/templates/fr/option-pickone.tmpl
-usr/share/cups/templates/fr/option-trailer.tmpl
-usr/share/cups/templates/fr/pager.tmpl
-usr/share/cups/templates/fr/printer-accept.tmpl
-usr/share/cups/templates/fr/printer-added.tmpl
-usr/share/cups/templates/fr/printer-configured.tmpl
-usr/share/cups/templates/fr/printer-confirm.tmpl
-usr/share/cups/templates/fr/printer-default.tmpl
-usr/share/cups/templates/fr/printer-deleted.tmpl
-usr/share/cups/templates/fr/printer-jobs-header.tmpl
-usr/share/cups/templates/fr/printer-modified.tmpl
-usr/share/cups/templates/fr/printer-purge.tmpl
-usr/share/cups/templates/fr/printer-reject.tmpl
-usr/share/cups/templates/fr/printer-start.tmpl
-usr/share/cups/templates/fr/printer-stop.tmpl
-usr/share/cups/templates/fr/printer.tmpl
-usr/share/cups/templates/fr/printers-header.tmpl
-usr/share/cups/templates/fr/printers.tmpl
-usr/share/cups/templates/fr/restart.tmpl
-usr/share/cups/templates/fr/samba-export.tmpl
-usr/share/cups/templates/fr/samba-exported.tmpl
-usr/share/cups/templates/fr/search.tmpl
-usr/share/cups/templates/fr/set-printer-options-header.tmpl
-usr/share/cups/templates/fr/set-printer-options-trailer.tmpl
-usr/share/cups/templates/fr/subscription-added.tmpl
-usr/share/cups/templates/fr/subscription-canceled.tmpl
-usr/share/cups/templates/fr/test-page.tmpl
-usr/share/cups/templates/fr/trailer.tmpl
-usr/share/cups/templates/fr/users.tmpl
 usr/share/cups/templates/header.tmpl
 usr/share/cups/templates/help-header.tmpl
 usr/share/cups/templates/help-printable.tmpl
 usr/share/cups/templates/help-trailer.tmpl
-usr/share/cups/templates/it
-usr/share/cups/templates/it/add-class.tmpl
-usr/share/cups/templates/it/add-printer.tmpl
-usr/share/cups/templates/it/add-rss-subscription.tmpl
-usr/share/cups/templates/it/admin.tmpl
-usr/share/cups/templates/it/choose-device.tmpl
-usr/share/cups/templates/it/choose-make.tmpl
-usr/share/cups/templates/it/choose-model.tmpl
-usr/share/cups/templates/it/choose-serial.tmpl
-usr/share/cups/templates/it/choose-uri.tmpl
-usr/share/cups/templates/it/class-added.tmpl
-usr/share/cups/templates/it/class-confirm.tmpl
-usr/share/cups/templates/it/class-deleted.tmpl
-usr/share/cups/templates/it/class-jobs-header.tmpl
-usr/share/cups/templates/it/class-modified.tmpl
-usr/share/cups/templates/it/class.tmpl
-usr/share/cups/templates/it/classes-header.tmpl
-usr/share/cups/templates/it/classes.tmpl
-usr/share/cups/templates/it/command.tmpl
-usr/share/cups/templates/it/edit-config.tmpl
-usr/share/cups/templates/it/error-op.tmpl
-usr/share/cups/templates/it/error.tmpl
-usr/share/cups/templates/it/header.tmpl
-usr/share/cups/templates/it/help-header.tmpl
-usr/share/cups/templates/it/help-printable.tmpl
-usr/share/cups/templates/it/help-trailer.tmpl
-usr/share/cups/templates/it/job-cancel.tmpl
-usr/share/cups/templates/it/job-hold.tmpl
-usr/share/cups/templates/it/job-move.tmpl
-usr/share/cups/templates/it/job-moved.tmpl
-usr/share/cups/templates/it/job-release.tmpl
-usr/share/cups/templates/it/job-restart.tmpl
-usr/share/cups/templates/it/jobs-header.tmpl
-usr/share/cups/templates/it/jobs.tmpl
-usr/share/cups/templates/it/list-available-printers.tmpl
-usr/share/cups/templates/it/modify-class.tmpl
-usr/share/cups/templates/it/modify-printer.tmpl
-usr/share/cups/templates/it/norestart.tmpl
-usr/share/cups/templates/it/option-boolean.tmpl
-usr/share/cups/templates/it/option-conflict.tmpl
-usr/share/cups/templates/it/option-header.tmpl
-usr/share/cups/templates/it/option-pickmany.tmpl
-usr/share/cups/templates/it/option-pickone.tmpl
-usr/share/cups/templates/it/option-trailer.tmpl
-usr/share/cups/templates/it/pager.tmpl
-usr/share/cups/templates/it/printer-accept.tmpl
-usr/share/cups/templates/it/printer-added.tmpl
-usr/share/cups/templates/it/printer-configured.tmpl
-usr/share/cups/templates/it/printer-confirm.tmpl
-usr/share/cups/templates/it/printer-default.tmpl
-usr/share/cups/templates/it/printer-deleted.tmpl
-usr/share/cups/templates/it/printer-jobs-header.tmpl
-usr/share/cups/templates/it/printer-modified.tmpl
-usr/share/cups/templates/it/printer-purge.tmpl
-usr/share/cups/templates/it/printer-reject.tmpl
-usr/share/cups/templates/it/printer-start.tmpl
-usr/share/cups/templates/it/printer-stop.tmpl
-usr/share/cups/templates/it/printer.tmpl
-usr/share/cups/templates/it/printers-header.tmpl
-usr/share/cups/templates/it/printers.tmpl
-usr/share/cups/templates/it/restart.tmpl
-usr/share/cups/templates/it/samba-export.tmpl
-usr/share/cups/templates/it/samba-exported.tmpl
-usr/share/cups/templates/it/search.tmpl
-usr/share/cups/templates/it/set-printer-options-header.tmpl
-usr/share/cups/templates/it/set-printer-options-trailer.tmpl
-usr/share/cups/templates/it/subscription-added.tmpl
-usr/share/cups/templates/it/subscription-canceled.tmpl
-usr/share/cups/templates/it/test-page.tmpl
-usr/share/cups/templates/it/trailer.tmpl
-usr/share/cups/templates/it/users.tmpl
 usr/share/cups/templates/ja
 usr/share/cups/templates/ja/add-class.tmpl
 usr/share/cups/templates/ja/add-printer.tmpl
@@ -606,13 +388,13 @@ usr/share/cups/templates/ja/option-trailer.tmpl
 usr/share/cups/templates/ja/pager.tmpl
 usr/share/cups/templates/ja/printer-accept.tmpl
 usr/share/cups/templates/ja/printer-added.tmpl
+usr/share/cups/templates/ja/printer-cancel-jobs.tmpl
 usr/share/cups/templates/ja/printer-configured.tmpl
 usr/share/cups/templates/ja/printer-confirm.tmpl
 usr/share/cups/templates/ja/printer-default.tmpl
 usr/share/cups/templates/ja/printer-deleted.tmpl
 usr/share/cups/templates/ja/printer-jobs-header.tmpl
 usr/share/cups/templates/ja/printer-modified.tmpl
-usr/share/cups/templates/ja/printer-purge.tmpl
 usr/share/cups/templates/ja/printer-reject.tmpl
 usr/share/cups/templates/ja/printer-start.tmpl
 usr/share/cups/templates/ja/printer-stop.tmpl
@@ -651,13 +433,13 @@ usr/share/cups/templates/option-trailer.tmpl
 usr/share/cups/templates/pager.tmpl
 usr/share/cups/templates/printer-accept.tmpl
 usr/share/cups/templates/printer-added.tmpl
+usr/share/cups/templates/printer-cancel-jobs.tmpl
 usr/share/cups/templates/printer-configured.tmpl
 usr/share/cups/templates/printer-confirm.tmpl
 usr/share/cups/templates/printer-default.tmpl
 usr/share/cups/templates/printer-deleted.tmpl
 usr/share/cups/templates/printer-jobs-header.tmpl
 usr/share/cups/templates/printer-modified.tmpl
-usr/share/cups/templates/printer-purge.tmpl
 usr/share/cups/templates/printer-reject.tmpl
 usr/share/cups/templates/printer-start.tmpl
 usr/share/cups/templates/printer-stop.tmpl
@@ -690,7 +472,6 @@ usr/share/cups/templates/ru/error.tmpl
 usr/share/cups/templates/ru/header.tmpl
 usr/share/cups/templates/ru/help-header.tmpl
 usr/share/cups/templates/ru/help-printable.tmpl
-usr/share/cups/templates/ru/help-trailer.tmpl
 usr/share/cups/templates/ru/job-cancel.tmpl
 usr/share/cups/templates/ru/job-hold.tmpl
 usr/share/cups/templates/ru/job-move.tmpl
@@ -712,13 +493,13 @@ usr/share/cups/templates/ru/option-trailer.tmpl
 usr/share/cups/templates/ru/pager.tmpl
 usr/share/cups/templates/ru/printer-accept.tmpl
 usr/share/cups/templates/ru/printer-added.tmpl
+usr/share/cups/templates/ru/printer-cancel-jobs.tmpl
 usr/share/cups/templates/ru/printer-configured.tmpl
 usr/share/cups/templates/ru/printer-confirm.tmpl
 usr/share/cups/templates/ru/printer-default.tmpl
 usr/share/cups/templates/ru/printer-deleted.tmpl
 usr/share/cups/templates/ru/printer-jobs-header.tmpl
 usr/share/cups/templates/ru/printer-modified.tmpl
-usr/share/cups/templates/ru/printer-purge.tmpl
 usr/share/cups/templates/ru/printer-reject.tmpl
 usr/share/cups/templates/ru/printer-start.tmpl
 usr/share/cups/templates/ru/printer-stop.tmpl
@@ -749,16 +530,13 @@ usr/share/cups/templates/users.tmpl
 usr/share/cups/usb
 usr/share/cups/usb/org.cups.usb-quirks
 usr/share/doc/cups
-usr/share/doc/cups/ca
-usr/share/doc/cups/ca/index.html
-usr/share/doc/cups/cs
-usr/share/doc/cups/cs/index.html
+usr/share/doc/cups/apple-touch-icon.png
 usr/share/doc/cups/cups-printable.css
 usr/share/doc/cups/cups.css
+usr/share/doc/cups/de
+usr/share/doc/cups/de/index.html
 usr/share/doc/cups/es
 usr/share/doc/cups/es/index.html
-usr/share/doc/cups/fr
-usr/share/doc/cups/fr/index.html
 usr/share/doc/cups/help
 usr/share/doc/cups/help/accounting.html
 usr/share/doc/cups/help/api-array.html
@@ -779,11 +557,18 @@ usr/share/doc/cups/help/kerberos.html
 usr/share/doc/cups/help/license.html
 usr/share/doc/cups/help/man-backend.html
 usr/share/doc/cups/help/man-cancel.html
+usr/share/doc/cups/help/man-classes.conf.html
+usr/share/doc/cups/help/man-client.conf.html
 usr/share/doc/cups/help/man-cups-config.html
+usr/share/doc/cups/help/man-cups-files.conf.html
 usr/share/doc/cups/help/man-cups-lpd.html
 usr/share/doc/cups/help/man-cups-snmp.html
+usr/share/doc/cups/help/man-cups.html
 usr/share/doc/cups/help/man-cupsaccept.html
 usr/share/doc/cups/help/man-cupsaddsmb.html
+usr/share/doc/cups/help/man-cupsd-helper.html
+usr/share/doc/cups/help/man-cupsd-logs.html
+usr/share/doc/cups/help/man-cupsd.conf.html
 usr/share/doc/cups/help/man-cupsd.html
 usr/share/doc/cups/help/man-cupsenable.html
 usr/share/doc/cups/help/man-cupstestdsc.html
@@ -797,7 +582,6 @@ usr/share/doc/cups/help/man-lpc.html
 usr/share/doc/cups/help/man-lpinfo.html
 usr/share/doc/cups/help/man-lpmove.html
 usr/share/doc/cups/help/man-lpoptions.html
-usr/share/doc/cups/help/man-lppasswd.html
 usr/share/doc/cups/help/man-lpq.html
 usr/share/doc/cups/help/man-lpr.html
 usr/share/doc/cups/help/man-lprm.html
@@ -810,6 +594,8 @@ usr/share/doc/cups/help/man-ppdhtml.html
 usr/share/doc/cups/help/man-ppdi.html
 usr/share/doc/cups/help/man-ppdmerge.html
 usr/share/doc/cups/help/man-ppdpo.html
+usr/share/doc/cups/help/man-printers.conf.html
+usr/share/doc/cups/help/man-subscriptions.conf.html
 usr/share/doc/cups/help/network.html
 usr/share/doc/cups/help/options.html
 usr/share/doc/cups/help/overview.html
@@ -817,18 +603,7 @@ usr/share/doc/cups/help/policies.html
 usr/share/doc/cups/help/postscript-driver.html
 usr/share/doc/cups/help/ppd-compiler.html
 usr/share/doc/cups/help/raster-driver.html
-usr/share/doc/cups/help/ref-access_log.html
-usr/share/doc/cups/help/ref-classes-conf.html
-usr/share/doc/cups/help/ref-client-conf.html
-usr/share/doc/cups/help/ref-cups-files-conf.html
-usr/share/doc/cups/help/ref-cupsd-conf.html
-usr/share/doc/cups/help/ref-error_log.html
-usr/share/doc/cups/help/ref-mailto-conf.html
-usr/share/doc/cups/help/ref-page_log.html
 usr/share/doc/cups/help/ref-ppdcfile.html
-usr/share/doc/cups/help/ref-printers-conf.html
-usr/share/doc/cups/help/ref-snmp-conf.html
-usr/share/doc/cups/help/ref-subscriptions-conf.html
 usr/share/doc/cups/help/security.html
 usr/share/doc/cups/help/sharing.html
 usr/share/doc/cups/help/spec-banner.html
@@ -842,7 +617,6 @@ usr/share/doc/cups/help/spec-ppd.html
 usr/share/doc/cups/help/spec-raster.html
 usr/share/doc/cups/help/spec-stp.html
 usr/share/doc/cups/help/translation.html
-usr/share/doc/cups/help/whatsnew.html
 usr/share/doc/cups/images
 usr/share/doc/cups/images/color-wheel.png
 usr/share/doc/cups/images/cups-block-diagram.png
@@ -851,6 +625,7 @@ usr/share/doc/cups/images/cups-icon.png
 usr/share/doc/cups/images/cups-postscript-chain.png
 usr/share/doc/cups/images/cups-raster-chain.png
 usr/share/doc/cups/images/cups.png
+usr/share/doc/cups/images/generic.png
 usr/share/doc/cups/images/left.gif
 usr/share/doc/cups/images/raster-organization.png
 usr/share/doc/cups/images/raster.png
@@ -861,8 +636,6 @@ usr/share/doc/cups/images/smiley.jpg
 usr/share/doc/cups/images/unsel.gif
 usr/share/doc/cups/images/wait.gif
 usr/share/doc/cups/index.html
-usr/share/doc/cups/it
-usr/share/doc/cups/it/index.html
 usr/share/doc/cups/ja
 usr/share/doc/cups/ja/index.html
 usr/share/doc/cups/robots.txt
@@ -870,6 +643,7 @@ usr/share/doc/cups/ru
 usr/share/doc/cups/ru/index.html
 usr/share/locale/ca/cups_ca.po
 usr/share/locale/cs/cups_cs.po
+usr/share/locale/de/cups_de.po
 usr/share/locale/es/cups_es.po
 usr/share/locale/fr/cups_fr.po
 usr/share/locale/it/cups_it.po
@@ -877,12 +651,12 @@ usr/share/locale/ja/cups_ja.po
 usr/share/locale/ru/cups_ru.po
 #usr/share/man/man1/cancel.1.gz
 #usr/share/man/man1/cups-config.1.gz
+#usr/share/man/man1/cups.1.gz
 #usr/share/man/man1/cupstestdsc.1.gz
 #usr/share/man/man1/cupstestppd.1.gz
 #usr/share/man/man1/ipptool.1.gz
 #usr/share/man/man1/lp.1.gz
 #usr/share/man/man1/lpoptions.1.gz
-#usr/share/man/man1/lppasswd.1.gz
 #usr/share/man/man1/lpq.1.gz
 #usr/share/man/man1/lpr.1.gz
 #usr/share/man/man1/lprm.1.gz
@@ -896,6 +670,7 @@ usr/share/locale/ru/cups_ru.po
 #usr/share/man/man5/client.conf.5.gz
 #usr/share/man/man5/cups-files.conf.5.gz
 #usr/share/man/man5/cups-snmp.conf.5.gz
+#usr/share/man/man5/cupsd-logs.5.gz
 #usr/share/man/man5/cupsd.conf.5.gz
 #usr/share/man/man5/ipptoolfile.5.gz
 #usr/share/man/man5/mailto.conf.5.gz
@@ -910,11 +685,13 @@ usr/share/locale/ru/cups_ru.po
 #usr/share/man/man8/accept.8.gz
 #usr/share/man/man8/cups-deviced.8.gz
 #usr/share/man/man8/cups-driverd.8.gz
+#usr/share/man/man8/cups-exec.8.gz
 #usr/share/man/man8/cups-lpd.8.gz
 #usr/share/man/man8/cups-snmp.8.gz
 #usr/share/man/man8/cupsaccept.8.gz
 #usr/share/man/man8/cupsaddsmb.8.gz
 #usr/share/man/man8/cupsctl.8.gz
+#usr/share/man/man8/cupsd-helper.8.gz
 #usr/share/man/man8/cupsd.8.gz
 #usr/share/man/man8/cupsdisable.8.gz
 #usr/share/man/man8/cupsenable.8.gz
@@ -936,7 +713,5 @@ var/ipfire/cups/ppd
 var/ipfire/cups/snmp.conf
 var/ipfire/cups/ssl
 var/log/cups
-#var/run/cups
-#var/run/cups/certs
 var/spool/cups
 var/spool/cups/tmp
index 0c0485e4ef685cb8eea4c2ba9f27cc76b6dfe196..bbaec3ffb05ca2690c2a0d48863a0403f1f8d5ed 100644 (file)
@@ -146,6 +146,7 @@ var/imap/msg
 var/imap/proc
 var/imap/ptclient
 var/imap/socket
+var/ipfire/backup/addons/includes/cyrus-imapd
 var/ipfire/cyrusimap
 var/ipfire/cyrusimap/cyrus.conf
 var/ipfire/cyrusimap/imapd.conf
diff --git a/config/rootfiles/packages/dnsdist b/config/rootfiles/packages/dnsdist
new file mode 100644 (file)
index 0000000..ba7381f
--- /dev/null
@@ -0,0 +1,3 @@
+usr/bin/dnsdist
+#usr/share/man/man1/dnsdist.1
+etc/rc.d/init.d/dnsdist
index 5584c25758f05359a5f68d513f45879e0ddaa510..e168483c13610c58650aa616702c8da6a7b48a61 100644 (file)
@@ -95,8 +95,8 @@ usr/libexec/git-core/git-index-pack
 usr/libexec/git-core/git-init
 usr/libexec/git-core/git-init-db
 usr/libexec/git-core/git-instaweb
+usr/libexec/git-core/git-interpret-trailers
 usr/libexec/git-core/git-log
-usr/libexec/git-core/git-lost-found
 usr/libexec/git-core/git-ls-files
 usr/libexec/git-core/git-ls-remote
 usr/libexec/git-core/git-ls-tree
@@ -126,7 +126,6 @@ usr/libexec/git-core/git-pack-redundant
 usr/libexec/git-core/git-pack-refs
 usr/libexec/git-core/git-parse-remote
 usr/libexec/git-core/git-patch-id
-usr/libexec/git-core/git-peek-remote
 usr/libexec/git-core/git-prune
 usr/libexec/git-core/git-prune-packed
 usr/libexec/git-core/git-pull
@@ -150,7 +149,6 @@ usr/libexec/git-core/git-remote-https
 usr/libexec/git-core/git-remote-testsvn
 usr/libexec/git-core/git-repack
 usr/libexec/git-core/git-replace
-usr/libexec/git-core/git-repo-config
 usr/libexec/git-core/git-request-pull
 usr/libexec/git-core/git-rerere
 usr/libexec/git-core/git-reset
@@ -177,7 +175,6 @@ usr/libexec/git-core/git-submodule
 usr/libexec/git-core/git-svn
 usr/libexec/git-core/git-symbolic-ref
 usr/libexec/git-core/git-tag
-usr/libexec/git-core/git-tar-tree
 usr/libexec/git-core/git-unpack-file
 usr/libexec/git-core/git-unpack-objects
 usr/libexec/git-core/git-update-index
@@ -186,6 +183,7 @@ usr/libexec/git-core/git-update-server-info
 usr/libexec/git-core/git-upload-archive
 usr/libexec/git-core/git-upload-pack
 usr/libexec/git-core/git-var
+usr/libexec/git-core/git-verify-commit
 usr/libexec/git-core/git-verify-pack
 usr/libexec/git-core/git-verify-tag
 usr/libexec/git-core/git-web--browse
@@ -193,6 +191,7 @@ usr/libexec/git-core/git-whatchanged
 usr/libexec/git-core/git-write-tree
 usr/libexec/git-core/mergetools
 usr/libexec/git-core/mergetools/araxis
+usr/libexec/git-core/mergetools/bc
 usr/libexec/git-core/mergetools/bc3
 usr/libexec/git-core/mergetools/codecompare
 usr/libexec/git-core/mergetools/deltawalker
@@ -202,6 +201,7 @@ usr/libexec/git-core/mergetools/ecmerge
 usr/libexec/git-core/mergetools/emerge
 usr/libexec/git-core/mergetools/gvimdiff
 usr/libexec/git-core/mergetools/gvimdiff2
+usr/libexec/git-core/mergetools/gvimdiff3
 usr/libexec/git-core/mergetools/kdiff3
 usr/libexec/git-core/mergetools/kompare
 usr/libexec/git-core/mergetools/meld
@@ -211,6 +211,7 @@ usr/libexec/git-core/mergetools/tkdiff
 usr/libexec/git-core/mergetools/tortoisemerge
 usr/libexec/git-core/mergetools/vimdiff
 usr/libexec/git-core/mergetools/vimdiff2
+usr/libexec/git-core/mergetools/vimdiff3
 usr/libexec/git-core/mergetools/xxdiff
 usr/share/git-core
 usr/share/git-core/templates
@@ -257,6 +258,7 @@ usr/share/git-core/templates/info/exclude
 #usr/share/git-gui/lib/merge.tcl
 #usr/share/git-gui/lib/mergetool.tcl
 #usr/share/git-gui/lib/msgs
+#usr/share/git-gui/lib/msgs/bg.msg
 #usr/share/git-gui/lib/msgs/de.msg
 #usr/share/git-gui/lib/msgs/el.msg
 #usr/share/git-gui/lib/msgs/fr.msg
@@ -267,6 +269,7 @@ usr/share/git-core/templates/info/exclude
 #usr/share/git-gui/lib/msgs/pt_br.msg
 #usr/share/git-gui/lib/msgs/ru.msg
 #usr/share/git-gui/lib/msgs/sv.msg
+#usr/share/git-gui/lib/msgs/vi.msg
 #usr/share/git-gui/lib/msgs/zh_cn.msg
 #usr/share/git-gui/lib/option.tcl
 #usr/share/git-gui/lib/remote.tcl
@@ -287,6 +290,8 @@ usr/share/git-core/templates/info/exclude
 #usr/share/gitk
 #usr/share/gitk/lib
 #usr/share/gitk/lib/msgs
+#usr/share/gitk/lib/msgs/bg.msg
+#usr/share/gitk/lib/msgs/ca.msg
 #usr/share/gitk/lib/msgs/de.msg
 #usr/share/gitk/lib/msgs/es.msg
 #usr/share/gitk/lib/msgs/fr.msg
@@ -296,6 +301,7 @@ usr/share/git-core/templates/info/exclude
 #usr/share/gitk/lib/msgs/pt_br.msg
 #usr/share/gitk/lib/msgs/ru.msg
 #usr/share/gitk/lib/msgs/sv.msg
+#usr/share/gitk/lib/msgs/vi.msg
 #usr/share/gitweb
 #usr/share/gitweb/gitweb.cgi
 #usr/share/gitweb/static
@@ -303,15 +309,14 @@ usr/share/git-core/templates/info/exclude
 #usr/share/gitweb/static/git-logo.png
 #usr/share/gitweb/static/gitweb.css
 #usr/share/gitweb/static/gitweb.js
-#usr/share/locale/da/LC_MESSAGES/git.mo
+#usr/share/locale/bg/LC_MESSAGES/git.mo
+#usr/share/locale/ca/LC_MESSAGES/git.mo
 #usr/share/locale/de/LC_MESSAGES/git.mo
 #usr/share/locale/fr/LC_MESSAGES/git.mo
 #usr/share/locale/is/LC_MESSAGES/git.mo
 #usr/share/locale/it/LC_MESSAGES/git.mo
-#usr/share/locale/nl/LC_MESSAGES/git.mo
-#usr/share/locale/pt_PT
-#usr/share/locale/pt_PT/LC_MESSAGES
 #usr/share/locale/pt_PT/LC_MESSAGES/git.mo
+#usr/share/locale/ru/LC_MESSAGES/git.mo
 #usr/share/locale/sv/LC_MESSAGES/git.mo
 #usr/share/locale/vi/LC_MESSAGES/git.mo
 #usr/share/locale/zh_CN/LC_MESSAGES/git.mo
index 410128b8bfd3154e9708853c78df218682416ae4..88cfeed67a5d80a93916a78424482718bbdcd4bb 100644 (file)
@@ -26,12 +26,12 @@ etc/keepalived/samples
 #etc/keepalived/samples/keepalived.conf.vrrp.sync
 #etc/keepalived/samples/root.pem
 #etc/keepalived/samples/sample.misccheck.smbcheck.sh
-#etc/rc.d/init.d/keepalived
-#etc/sysconfig
 #etc/sysconfig/keepalived
 usr/bin/genhash
 usr/sbin/keepalived
 #usr/share/man/man1/genhash.1
 #usr/share/man/man5/keepalived.conf.5
 #usr/share/man/man8/keepalived.8
+#usr/share/snmp/mibs/KEEPALIVED-MIB
+#usr/share/snmp/mibs/VRRP-MIB
 var/ipfire/backup/addons/includes/keepalived
index 79b74ca6a5b1e0c3bb14a95bb716b7bb0be9ac58..9c7aadbb9f5b6f8430d0fa6b203f26ed125d29c5 100644 (file)
@@ -3,6 +3,6 @@ usr/bin/libassuan-config
 #usr/lib/libassuan.la
 usr/lib/libassuan.so
 usr/lib/libassuan.so.0
-usr/lib/libassuan.so.0.4.3
+usr/lib/libassuan.so.0.5.0
 #usr/share/aclocal/libassuan.m4
 #usr/share/info/assuan.info
index 105f3f00e7e2dbfd5223108cce460c5694ffa010..3ee2e3b64c71f3e1b37d3704c2557be7a37e73ad 100644 (file)
@@ -37,4 +37,5 @@
 #usr/include/srtp/ut_sim.h
 #usr/include/srtp/xfm.h
 usr/lib/libsrtp.so
+usr/lib/libsrtp.so.1
 #usr/lib/pkgconfig/libsrtp.pc
index 1b308be8cbb5f1f1db122d0a0674d641d618a128..ebdca7ea29d7838691cbbf26b811a1199a4ce663 100644 (file)
@@ -1,14 +1,6 @@
 usr/bin/make
-#usr/info/make.info
-#usr/info/make.info-1
-#usr/info/make.info-10
-#usr/info/make.info-11
-#usr/info/make.info-2
-#usr/info/make.info-3
-#usr/info/make.info-4
-#usr/info/make.info-5
-#usr/info/make.info-6
-#usr/info/make.info-7
-#usr/info/make.info-8
-#usr/info/make.info-9
-#usr/man/man1/make.1
+#usr/include/gnumake.h
+#usr/share/info/make.info
+#usr/share/info/make.info-1
+#usr/share/info/make.info-2
+#usr/share/man/man1/make.1
index c612edf52f9135be8c3e5cc1418df2a8258ac063..d09a21b14d318dced5f0c902cda467f9deb24158 100644 (file)
@@ -181,6 +181,7 @@ usr/share/mc/syntax/po.syntax
 usr/share/mc/syntax/povray.syntax
 usr/share/mc/syntax/procmail.syntax
 usr/share/mc/syntax/properties.syntax
+usr/share/mc/syntax/puppet.syntax
 usr/share/mc/syntax/python.syntax
 usr/share/mc/syntax/ruby.syntax
 usr/share/mc/syntax/sh.syntax
index 815c3fac7fda262866a2da40e3be8416881160d4..3582f36184fa9afad8e6579d3ef0339d707a55d3 100644 (file)
@@ -3,40 +3,55 @@ etc/nano/nanorc.sample
 usr/bin/nano
 usr/bin/pico
 usr/bin/rnano
+#usr/share/doc/nano
+#usr/share/doc/nano/faq.html
+#usr/share/doc/nano/nano.1.html
+#usr/share/doc/nano/nanorc.5.html
+#usr/share/doc/nano/rnano.1.html
 #usr/share/info/nano.info
 #usr/share/man/man1/nano.1
 #usr/share/man/man1/rnano.1
 #usr/share/man/man5/nanorc.5
 #usr/share/nano
 usr/share/nano/asm.nanorc
+usr/share/nano/autoconf.nanorc
 usr/share/nano/awk.nanorc
 usr/share/nano/c.nanorc
+#usr/share/nano/changelog.nanorc
 usr/share/nano/cmake.nanorc
 usr/share/nano/css.nanorc
 usr/share/nano/debian.nanorc
+usr/share/nano/default.nanorc
+usr/share/nano/elisp.nanorc
 usr/share/nano/fortran.nanorc
 usr/share/nano/gentoo.nanorc
+#usr/share/nano/go.nanorc
 usr/share/nano/groff.nanorc
+usr/share/nano/guile.nanorc
 usr/share/nano/html.nanorc
 usr/share/nano/java.nanorc
+#usr/share/nano/javascript.nanorc
+#usr/share/nano/json.nanorc
+#usr/share/nano/lua.nanorc
 usr/share/nano/makefile.nanorc
-#usr/share/nano/man-html
-#usr/share/nano/man-html/nano.1.html
-#usr/share/nano/man-html/nanorc.5.html
-#usr/share/nano/man-html/rnano.1.html
 usr/share/nano/man.nanorc
 usr/share/nano/mgp.nanorc
 usr/share/nano/mutt.nanorc
 usr/share/nano/nanorc.nanorc
+usr/share/nano/nftables.nanorc
 usr/share/nano/objc.nanorc
 usr/share/nano/ocaml.nanorc
 usr/share/nano/patch.nanorc
 usr/share/nano/perl.nanorc
 usr/share/nano/php.nanorc
+usr/share/nano/po.nanorc
+usr/share/nano/postgresql.nanorc
 usr/share/nano/pov.nanorc
 usr/share/nano/python.nanorc
 usr/share/nano/ruby.nanorc
 usr/share/nano/sh.nanorc
+usr/share/nano/spec.nanorc
 usr/share/nano/tcl.nanorc
 usr/share/nano/tex.nanorc
+usr/share/nano/texinfo.nanorc
 usr/share/nano/xml.nanorc
index 30dbf93bce894309f53d25b9cda0182f5cbb56a6..63289492223b9c7ee176c023f81dbb766eb2ed60 100644 (file)
@@ -2,12 +2,16 @@ etc/rc.d/rc0.d/K02netsnmpd
 etc/rc.d/rc3.d/S65netsnmpd
 etc/rc.d/rc6.d/K02netsnmpd
 etc/snmpd.conf
+usr/bin/agentxtrap
 usr/bin/encode_keychange
 usr/bin/fixproc
 usr/bin/ipf-mod.pl
 usr/bin/mib2c
 usr/bin/mib2c-update
+usr/bin/net-snmp-cert
 usr/bin/net-snmp-config
+usr/bin/net-snmp-create-v3-user
+usr/bin/snmp-bridge-mib
 usr/bin/snmpbulkget
 usr/bin/snmpbulkwalk
 usr/bin/snmpcheck
@@ -37,6 +41,7 @@ usr/bin/traptoemail
 #usr/include/net-snmp/agent/agent_module_config.h
 #usr/include/net-snmp/agent/agent_read_config.h
 #usr/include/net-snmp/agent/agent_registry.h
+#usr/include/net-snmp/agent/agent_sysORTable.h
 #usr/include/net-snmp/agent/agent_trap.h
 #usr/include/net-snmp/agent/all_helpers.h
 #usr/include/net-snmp/agent/auto_nlist.h
@@ -62,9 +67,12 @@ usr/bin/traptoemail
 #usr/include/net-snmp/agent/serialize.h
 #usr/include/net-snmp/agent/set_helper.h
 #usr/include/net-snmp/agent/snmp_agent.h
+#usr/include/net-snmp/agent/snmp_get_statistic.h
 #usr/include/net-snmp/agent/snmp_vars.h
 #usr/include/net-snmp/agent/stash_cache.h
 #usr/include/net-snmp/agent/stash_to_next.h
+#usr/include/net-snmp/agent/struct.h
+#usr/include/net-snmp/agent/sysORTable.h
 #usr/include/net-snmp/agent/table.h
 #usr/include/net-snmp/agent/table_array.h
 #usr/include/net-snmp/agent/table_container.h
@@ -72,7 +80,11 @@ usr/bin/traptoemail
 #usr/include/net-snmp/agent/table_dataset.h
 #usr/include/net-snmp/agent/table_iterator.h
 #usr/include/net-snmp/agent/table_tdata.h
+#usr/include/net-snmp/agent/util_funcs
 #usr/include/net-snmp/agent/util_funcs.h
+#usr/include/net-snmp/agent/util_funcs/MIB_STATS_CACHE_TIMEOUT.h
+#usr/include/net-snmp/agent/util_funcs/header_generic.h
+#usr/include/net-snmp/agent/util_funcs/header_simple_table.h
 #usr/include/net-snmp/agent/var_struct.h
 #usr/include/net-snmp/agent/watcher.h
 #usr/include/net-snmp/config_api.h
@@ -81,8 +93,8 @@ usr/bin/traptoemail
 #usr/include/net-snmp/library/README
 #usr/include/net-snmp/library/asn1.h
 #usr/include/net-snmp/library/callback.h
+#usr/include/net-snmp/library/cert_util.h
 #usr/include/net-snmp/library/check_varbind.h
-#usr/include/net-snmp/library/cmu_compat.h
 #usr/include/net-snmp/library/container.h
 #usr/include/net-snmp/library/container_binary_array.h
 #usr/include/net-snmp/library/container_iterator.h
@@ -90,25 +102,34 @@ usr/bin/traptoemail
 #usr/include/net-snmp/library/container_null.h
 #usr/include/net-snmp/library/data_list.h
 #usr/include/net-snmp/library/default_store.h
+#usr/include/net-snmp/library/dir_utils.h
 #usr/include/net-snmp/library/factory.h
 #usr/include/net-snmp/library/fd_event_manager.h
 #usr/include/net-snmp/library/file_utils.h
 #usr/include/net-snmp/library/getopt.h
 #usr/include/net-snmp/library/int64.h
 #usr/include/net-snmp/library/keytools.h
+#usr/include/net-snmp/library/large_fd_set.h
 #usr/include/net-snmp/library/lcd_time.h
 #usr/include/net-snmp/library/md5.h
 #usr/include/net-snmp/library/mib.h
 #usr/include/net-snmp/library/mt_support.h
+#usr/include/net-snmp/library/oid.h
 #usr/include/net-snmp/library/oid_stash.h
 #usr/include/net-snmp/library/parse.h
 #usr/include/net-snmp/library/read_config.h
 #usr/include/net-snmp/library/scapi.h
 #usr/include/net-snmp/library/snmp-tc.h
 #usr/include/net-snmp/library/snmp.h
+#usr/include/net-snmp/library/snmpAliasDomain.h
 #usr/include/net-snmp/library/snmpCallbackDomain.h
+#usr/include/net-snmp/library/snmpIPv4BaseDomain.h
+#usr/include/net-snmp/library/snmpSocketBaseDomain.h
+#usr/include/net-snmp/library/snmpTCPBaseDomain.h
 #usr/include/net-snmp/library/snmpTCPDomain.h
+#usr/include/net-snmp/library/snmpUDPBaseDomain.h
 #usr/include/net-snmp/library/snmpUDPDomain.h
+#usr/include/net-snmp/library/snmpUDPIPv4BaseDomain.h
 #usr/include/net-snmp/library/snmpUnixDomain.h
 #usr/include/net-snmp/library/snmp_alarm.h
 #usr/include/net-snmp/library/snmp_api.h
@@ -129,6 +150,7 @@ usr/bin/traptoemail
 #usr/include/net-snmp/library/text_utils.h
 #usr/include/net-snmp/library/tools.h
 #usr/include/net-snmp/library/transform_oids.h
+#usr/include/net-snmp/library/types.h
 #usr/include/net-snmp/library/ucd_compat.h
 #usr/include/net-snmp/library/vacm.h
 #usr/include/net-snmp/library/winpipe.h
@@ -137,6 +159,7 @@ usr/bin/traptoemail
 #usr/include/net-snmp/machine/generic.h
 #usr/include/net-snmp/mib_api.h
 #usr/include/net-snmp/net-snmp-config.h
+#usr/include/net-snmp/net-snmp-features.h
 #usr/include/net-snmp/net-snmp-includes.h
 #usr/include/net-snmp/output_api.h
 #usr/include/net-snmp/pdu_api.h
@@ -150,17 +173,24 @@ usr/bin/traptoemail
 #usr/include/net-snmp/system/bsdi4.h
 #usr/include/net-snmp/system/cygwin.h
 #usr/include/net-snmp/system/darwin.h
+#usr/include/net-snmp/system/darwin10.h
 #usr/include/net-snmp/system/darwin7.h
 #usr/include/net-snmp/system/darwin8.h
 #usr/include/net-snmp/system/darwin9.h
 #usr/include/net-snmp/system/dragonfly.h
 #usr/include/net-snmp/system/dynix.h
 #usr/include/net-snmp/system/freebsd.h
+#usr/include/net-snmp/system/freebsd10.h
+#usr/include/net-snmp/system/freebsd11.h
+#usr/include/net-snmp/system/freebsd12.h
 #usr/include/net-snmp/system/freebsd2.h
 #usr/include/net-snmp/system/freebsd3.h
 #usr/include/net-snmp/system/freebsd4.h
 #usr/include/net-snmp/system/freebsd5.h
 #usr/include/net-snmp/system/freebsd6.h
+#usr/include/net-snmp/system/freebsd7.h
+#usr/include/net-snmp/system/freebsd8.h
+#usr/include/net-snmp/system/freebsd9.h
 #usr/include/net-snmp/system/generic.h
 #usr/include/net-snmp/system/hpux.h
 #usr/include/net-snmp/system/irix.h
@@ -169,6 +199,8 @@ usr/bin/traptoemail
 #usr/include/net-snmp/system/mips.h
 #usr/include/net-snmp/system/netbsd.h
 #usr/include/net-snmp/system/openbsd.h
+#usr/include/net-snmp/system/openbsd4.h
+#usr/include/net-snmp/system/openbsd5.h
 #usr/include/net-snmp/system/osf5.h
 #usr/include/net-snmp/system/solaris.h
 #usr/include/net-snmp/system/solaris2.3.h
@@ -186,28 +218,28 @@ usr/bin/traptoemail
 #usr/lib/libnetsnmp.a
 #usr/lib/libnetsnmp.la
 usr/lib/libnetsnmp.so
-usr/lib/libnetsnmp.so.15
-usr/lib/libnetsnmp.so.15.1.2
+usr/lib/libnetsnmp.so.30
+usr/lib/libnetsnmp.so.30.0.3
 #usr/lib/libnetsnmpagent.a
 #usr/lib/libnetsnmpagent.la
 usr/lib/libnetsnmpagent.so
-usr/lib/libnetsnmpagent.so.15
-usr/lib/libnetsnmpagent.so.15.1.2
+usr/lib/libnetsnmpagent.so.30
+usr/lib/libnetsnmpagent.so.30.0.3
 #usr/lib/libnetsnmphelpers.a
 #usr/lib/libnetsnmphelpers.la
 usr/lib/libnetsnmphelpers.so
-usr/lib/libnetsnmphelpers.so.15
-usr/lib/libnetsnmphelpers.so.15.1.2
+usr/lib/libnetsnmphelpers.so.30
+usr/lib/libnetsnmphelpers.so.30.0.3
 #usr/lib/libnetsnmpmibs.a
 #usr/lib/libnetsnmpmibs.la
 usr/lib/libnetsnmpmibs.so
-usr/lib/libnetsnmpmibs.so.15
-usr/lib/libnetsnmpmibs.so.15.1.2
+usr/lib/libnetsnmpmibs.so.30
+usr/lib/libnetsnmpmibs.so.30.0.3
 #usr/lib/libnetsnmptrapd.a
 #usr/lib/libnetsnmptrapd.la
 usr/lib/libnetsnmptrapd.so
-usr/lib/libnetsnmptrapd.so.15
-usr/lib/libnetsnmptrapd.so.15.1.2
+usr/lib/libnetsnmptrapd.so.30
+usr/lib/libnetsnmptrapd.so.30.0.3
 #usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Bundle
 #usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Bundle/Makefile.subs.pl
 #usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/NetSNMP
@@ -253,159 +285,37 @@ usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/NetSNMP/default_s
 #usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/SNMP/SNMP.bs
 usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/SNMP/SNMP.so
 #usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/SNMP/autosplit.ix
-#usr/man/man1/encode_keychange.1
-#usr/man/man1/fixproc.1
-#usr/man/man1/mib2c-update.1
-#usr/man/man1/mib2c.1
-#usr/man/man1/net-snmp-config.1
-#usr/man/man1/snmpbulkget.1
-#usr/man/man1/snmpbulkwalk.1
-#usr/man/man1/snmpcmd.1
-#usr/man/man1/snmpconf.1
-#usr/man/man1/snmpdelta.1
-#usr/man/man1/snmpdf.1
-#usr/man/man1/snmpget.1
-#usr/man/man1/snmpgetnext.1
-#usr/man/man1/snmpinform.1
-#usr/man/man1/snmpnetstat.1
-#usr/man/man1/snmpset.1
-#usr/man/man1/snmpstatus.1
-#usr/man/man1/snmptable.1
-#usr/man/man1/snmptest.1
-#usr/man/man1/snmptranslate.1
-#usr/man/man1/snmptrap.1
-#usr/man/man1/snmpusm.1
-#usr/man/man1/snmpvacm.1
-#usr/man/man1/snmpwalk.1
-#usr/man/man1/tkmib.1
-#usr/man/man1/traptoemail.1
-#usr/man/man3/add_mibdir.3
-#usr/man/man3/add_module_replacement.3
-#usr/man/man3/config_perror.3
-#usr/man/man3/config_pwarn.3
-#usr/man/man3/default_store.3
-#usr/man/man3/fprint_description.3
-#usr/man/man3/fprint_objid.3
-#usr/man/man3/fprint_value.3
-#usr/man/man3/fprint_variable.3
-#usr/man/man3/get_module_node.3
-#usr/man/man3/init_mib.3
-#usr/man/man3/init_mib_internals.3
-#usr/man/man3/mib_api.3
-#usr/man/man3/netsnmp_Container_iterator.3
-#usr/man/man3/netsnmp_agent.3
-#usr/man/man3/netsnmp_baby_steps.3
-#usr/man/man3/netsnmp_bulk_to_next.3
-#usr/man/man3/netsnmp_cache_handler.3
-#usr/man/man3/netsnmp_container.3
-#usr/man/man3/netsnmp_debug.3
-#usr/man/man3/netsnmp_ds_get_boolean.3
-#usr/man/man3/netsnmp_ds_get_int.3
-#usr/man/man3/netsnmp_ds_get_string.3
-#usr/man/man3/netsnmp_ds_register_config.3
-#usr/man/man3/netsnmp_ds_register_premib.3
-#usr/man/man3/netsnmp_ds_set_boolean.3
-#usr/man/man3/netsnmp_ds_set_int.3
-#usr/man/man3/netsnmp_ds_set_string.3
-#usr/man/man3/netsnmp_ds_shutdown.3
-#usr/man/man3/netsnmp_example_scalar_int.3
-#usr/man/man3/netsnmp_handler.3
-#usr/man/man3/netsnmp_instance.3
-#usr/man/man3/netsnmp_iterator_info_s.3
-#usr/man/man3/netsnmp_leaf.3
-#usr/man/man3/netsnmp_library.3
-#usr/man/man3/netsnmp_mib_handler_methods.3
-#usr/man/man3/netsnmp_mib_utilities.3
-#usr/man/man3/netsnmp_mode_end_call.3
-#usr/man/man3/netsnmp_multiplexer.3
-#usr/man/man3/netsnmp_old_api.3
-#usr/man/man3/netsnmp_read_only.3
-#usr/man/man3/netsnmp_row_merge.3
-#usr/man/man3/netsnmp_scalar.3
-#usr/man/man3/netsnmp_scalar_group_group.3
-#usr/man/man3/netsnmp_serialize.3
-#usr/man/man3/netsnmp_stash_cache.3
-#usr/man/man3/netsnmp_table.3
-#usr/man/man3/netsnmp_table_array.3
-#usr/man/man3/netsnmp_table_data.3
-#usr/man/man3/netsnmp_table_dataset.3
-#usr/man/man3/netsnmp_table_iterator.3
-#usr/man/man3/netsnmp_utilities.3
-#usr/man/man3/netsnmp_watcher.3
-#usr/man/man3/print_description.3
-#usr/man/man3/print_mib.3
-#usr/man/man3/print_objid.3
-#usr/man/man3/print_value.3
-#usr/man/man3/print_variable.3
-#usr/man/man3/read_all_mibs.3
-#usr/man/man3/read_config.3
-#usr/man/man3/read_config_print_usage.3
-#usr/man/man3/read_configs.3
-#usr/man/man3/read_mib.3
-#usr/man/man3/read_module.3
-#usr/man/man3/read_module_node.3
-#usr/man/man3/read_objid.3
-#usr/man/man3/read_premib_configs.3
-#usr/man/man3/register_app_config_handler.3
-#usr/man/man3/register_app_premib_handler.3
-#usr/man/man3/register_config_handler.3
-#usr/man/man3/register_mib_handlers.3
-#usr/man/man3/register_premib_handler.3
-#usr/man/man3/send_easy_trap.3
-#usr/man/man3/send_trap_vars.3
-#usr/man/man3/send_v2trap.3
-#usr/man/man3/shutdown_mib.3
-#usr/man/man3/snmp_agent_api.3
-#usr/man/man3/snmp_alarm.3
-#usr/man/man3/snmp_alarm_register.3
-#usr/man/man3/snmp_alarm_register_hr.3
-#usr/man/man3/snmp_alarm_unregister.3
-#usr/man/man3/snmp_api.3
-#usr/man/man3/snmp_api_errstring.3
-#usr/man/man3/snmp_close.3
-#usr/man/man3/snmp_error.3
-#usr/man/man3/snmp_free_pdu.3
-#usr/man/man3/snmp_open.3
-#usr/man/man3/snmp_perror.3
-#usr/man/man3/snmp_read.3
-#usr/man/man3/snmp_select_info.3
-#usr/man/man3/snmp_send.3
-#usr/man/man3/snmp_sess_api.3
-#usr/man/man3/snmp_sess_async_send.3
-#usr/man/man3/snmp_sess_close.3
-#usr/man/man3/snmp_sess_error.3
-#usr/man/man3/snmp_sess_init.3
-#usr/man/man3/snmp_sess_open.3
-#usr/man/man3/snmp_sess_perror.3
-#usr/man/man3/snmp_sess_read.3
-#usr/man/man3/snmp_sess_select_info.3
-#usr/man/man3/snmp_sess_send.3
-#usr/man/man3/snmp_sess_session.3
-#usr/man/man3/snmp_sess_timeout.3
-#usr/man/man3/snmp_set_mib_warnings.3
-#usr/man/man3/snmp_set_save_descriptions.3
-#usr/man/man3/snmp_timeout.3
-#usr/man/man3/snmp_trap_api.3
-#usr/man/man3/snprint_objid.3
-#usr/man/man3/snprint_value.3
-#usr/man/man3/snprint_variable.3
-#usr/man/man3/sprint_realloc_objid.3
-#usr/man/man3/sprint_realloc_value.3
-#usr/man/man3/sprint_realloc_variable.3
-#usr/man/man3/unregister_app_config_handler.3
-#usr/man/man3/unregister_config_handler.3
-#usr/man/man5/mib2c.conf.5
-#usr/man/man5/snmp.conf.5
-#usr/man/man5/snmp_config.5
-#usr/man/man5/snmpd.conf.5
-#usr/man/man5/snmpd.examples.5
-#usr/man/man5/snmpd.internal.5
-#usr/man/man5/snmptrapd.conf.5
-#usr/man/man5/variables.5
-#usr/man/man8/snmpd.8
-#usr/man/man8/snmptrapd.8
 usr/sbin/snmpd
 usr/sbin/snmptrapd
+#usr/share/man/man1/agentxtrap.1
+#usr/share/man/man1/encode_keychange.1
+#usr/share/man/man1/fixproc.1
+#usr/share/man/man1/mib2c-update.1
+#usr/share/man/man1/mib2c.1
+#usr/share/man/man1/net-snmp-config.1
+#usr/share/man/man1/net-snmp-create-v3-user.1
+#usr/share/man/man1/snmp-bridge-mib.1
+#usr/share/man/man1/snmpbulkget.1
+#usr/share/man/man1/snmpbulkwalk.1
+#usr/share/man/man1/snmpcmd.1
+#usr/share/man/man1/snmpconf.1
+#usr/share/man/man1/snmpdelta.1
+#usr/share/man/man1/snmpdf.1
+#usr/share/man/man1/snmpget.1
+#usr/share/man/man1/snmpgetnext.1
+#usr/share/man/man1/snmpinform.1
+#usr/share/man/man1/snmpnetstat.1
+#usr/share/man/man1/snmpset.1
+#usr/share/man/man1/snmpstatus.1
+#usr/share/man/man1/snmptable.1
+#usr/share/man/man1/snmptest.1
+#usr/share/man/man1/snmptranslate.1
+#usr/share/man/man1/snmptrap.1
+#usr/share/man/man1/snmpusm.1
+#usr/share/man/man1/snmpvacm.1
+#usr/share/man/man1/snmpwalk.1
+#usr/share/man/man1/tkmib.1
+#usr/share/man/man1/traptoemail.1
 #usr/share/man/man3/NetSNMP::ASN.3
 #usr/share/man/man3/NetSNMP::OID.3
 #usr/share/man/man3/NetSNMP::TrapReceiver.3
@@ -414,6 +324,109 @@ usr/sbin/snmptrapd
 #usr/share/man/man3/NetSNMP::default_store.3
 #usr/share/man/man3/NetSNMP::netsnmp_request_infoPtr.3
 #usr/share/man/man3/SNMP.3
+#usr/share/man/man3/add_mibdir.3
+#usr/share/man/man3/add_module_replacement.3
+#usr/share/man/man3/config_perror.3
+#usr/share/man/man3/config_pwarn.3
+#usr/share/man/man3/default_store.3
+#usr/share/man/man3/fprint_description.3
+#usr/share/man/man3/fprint_objid.3
+#usr/share/man/man3/fprint_value.3
+#usr/share/man/man3/fprint_variable.3
+#usr/share/man/man3/get_module_node.3
+#usr/share/man/man3/netsnmp_agent_api.3
+#usr/share/man/man3/netsnmp_config_api.3
+#usr/share/man/man3/netsnmp_init_mib.3
+#usr/share/man/man3/netsnmp_mib_api.3
+#usr/share/man/man3/netsnmp_pdu_api.3
+#usr/share/man/man3/netsnmp_read_module.3
+#usr/share/man/man3/netsnmp_sess_api.3
+#usr/share/man/man3/netsnmp_session_api.3
+#usr/share/man/man3/netsnmp_trap_api.3
+#usr/share/man/man3/netsnmp_varbind_api.3
+#usr/share/man/man3/print_description.3
+#usr/share/man/man3/print_mib.3
+#usr/share/man/man3/print_objid.3
+#usr/share/man/man3/print_value.3
+#usr/share/man/man3/print_variable.3
+#usr/share/man/man3/read_all_mibs.3
+#usr/share/man/man3/read_config_print_usage.3
+#usr/share/man/man3/read_configs.3
+#usr/share/man/man3/read_mib.3
+#usr/share/man/man3/read_objid.3
+#usr/share/man/man3/read_premib_configs.3
+#usr/share/man/man3/register_app_config_handler.3
+#usr/share/man/man3/register_app_prenetsnmp_mib_handler.3
+#usr/share/man/man3/register_config_handler.3
+#usr/share/man/man3/register_const_config_handler.3
+#usr/share/man/man3/register_mib_handlers.3
+#usr/share/man/man3/register_prenetsnmp_mib_handler.3
+#usr/share/man/man3/send_easy_trap.3
+#usr/share/man/man3/send_trap_vars.3
+#usr/share/man/man3/send_v2trap.3
+#usr/share/man/man3/shutdown_mib.3
+#usr/share/man/man3/snmp_add_null_var.3
+#usr/share/man/man3/snmp_alarm.3
+#usr/share/man/man3/snmp_alarm_register.3
+#usr/share/man/man3/snmp_alarm_register_hr.3
+#usr/share/man/man3/snmp_alarm_unregister.3
+#usr/share/man/man3/snmp_api_errstring.3
+#usr/share/man/man3/snmp_async_send.3
+#usr/share/man/man3/snmp_clone_pdu.3
+#usr/share/man/man3/snmp_clone_varbind.3
+#usr/share/man/man3/snmp_close.3
+#usr/share/man/man3/snmp_error.3
+#usr/share/man/man3/snmp_fix_pdu.3
+#usr/share/man/man3/snmp_free_pdu.3
+#usr/share/man/man3/snmp_free_var.3
+#usr/share/man/man3/snmp_free_varbind.3
+#usr/share/man/man3/snmp_open.3
+#usr/share/man/man3/snmp_parse_oid.3
+#usr/share/man/man3/snmp_pdu_add_variable.3
+#usr/share/man/man3/snmp_pdu_create.3
+#usr/share/man/man3/snmp_perror.3
+#usr/share/man/man3/snmp_read.3
+#usr/share/man/man3/snmp_select_info.3
+#usr/share/man/man3/snmp_send.3
+#usr/share/man/man3/snmp_sess_async_send.3
+#usr/share/man/man3/snmp_sess_close.3
+#usr/share/man/man3/snmp_sess_error.3
+#usr/share/man/man3/snmp_sess_init.3
+#usr/share/man/man3/snmp_sess_open.3
+#usr/share/man/man3/snmp_sess_perror.3
+#usr/share/man/man3/snmp_sess_read.3
+#usr/share/man/man3/snmp_sess_select_info.3
+#usr/share/man/man3/snmp_sess_send.3
+#usr/share/man/man3/snmp_sess_session.3
+#usr/share/man/man3/snmp_sess_synch_response.3
+#usr/share/man/man3/snmp_sess_timeout.3
+#usr/share/man/man3/snmp_set_mib_errors.3
+#usr/share/man/man3/snmp_set_mib_warnings.3
+#usr/share/man/man3/snmp_set_save_descriptions.3
+#usr/share/man/man3/snmp_set_var_objid.3
+#usr/share/man/man3/snmp_set_var_typed_integer.3
+#usr/share/man/man3/snmp_set_var_typed_value.3
+#usr/share/man/man3/snmp_set_var_value.3
+#usr/share/man/man3/snmp_synch_response.3
+#usr/share/man/man3/snmp_timeout.3
+#usr/share/man/man3/snmp_varlist_add_variable.3
+#usr/share/man/man3/snprint_description.3
+#usr/share/man/man3/snprint_objid.3
+#usr/share/man/man3/snprint_value.3
+#usr/share/man/man3/snprint_variable.3
+#usr/share/man/man3/unregister_all_config_handlers.3
+#usr/share/man/man3/unregister_app_config_handler.3
+#usr/share/man/man3/unregister_config_handler.3
+#usr/share/man/man5/mib2c.conf.5
+#usr/share/man/man5/snmp.conf.5
+#usr/share/man/man5/snmp_config.5
+#usr/share/man/man5/snmpd.conf.5
+#usr/share/man/man5/snmpd.examples.5
+#usr/share/man/man5/snmpd.internal.5
+#usr/share/man/man5/snmptrapd.conf.5
+#usr/share/man/man5/variables.5
+#usr/share/man/man8/snmpd.8
+#usr/share/man/man8/snmptrapd.8
 usr/share/snmp
 usr/share/snmp/mib2c-data
 usr/share/snmp/mib2c-data/default-mfd-top.m2c
@@ -425,6 +438,7 @@ usr/share/snmp/mib2c-data/generic-ctx-get.m2i
 usr/share/snmp/mib2c-data/generic-ctx-set.m2i
 usr/share/snmp/mib2c-data/generic-data-allocate.m2i
 usr/share/snmp/mib2c-data/generic-data-context.m2i
+usr/share/snmp/mib2c-data/generic-get-U64.m2i
 usr/share/snmp/mib2c-data/generic-get-char.m2i
 usr/share/snmp/mib2c-data/generic-get-decl-bot.m2i
 usr/share/snmp/mib2c-data/generic-get-decl.m2i
@@ -500,10 +514,12 @@ usr/share/snmp/mib2c.mfd.conf
 usr/share/snmp/mib2c.notify.conf
 usr/share/snmp/mib2c.old-api.conf
 usr/share/snmp/mib2c.perl.conf
+usr/share/snmp/mib2c.raw-table.conf
 usr/share/snmp/mib2c.scalar.conf
 usr/share/snmp/mib2c.table_data.conf
 usr/share/snmp/mibs
 usr/share/snmp/mibs/AGENTX-MIB.txt
+usr/share/snmp/mibs/BRIDGE-MIB.txt
 usr/share/snmp/mibs/DISMAN-EVENT-MIB.txt
 usr/share/snmp/mibs/DISMAN-SCHEDULE-MIB.txt
 usr/share/snmp/mibs/DISMAN-SCRIPT-MIB.txt
@@ -520,6 +536,7 @@ usr/share/snmp/mibs/IF-MIB.txt
 usr/share/snmp/mibs/INET-ADDRESS-MIB.txt
 usr/share/snmp/mibs/IP-FORWARD-MIB.txt
 usr/share/snmp/mibs/IP-MIB.txt
+usr/share/snmp/mibs/IPV6-FLOW-LABEL-MIB.txt
 usr/share/snmp/mibs/IPV6-ICMP-MIB.txt
 usr/share/snmp/mibs/IPV6-MIB.txt
 usr/share/snmp/mibs/IPV6-TC.txt
@@ -529,6 +546,7 @@ usr/share/snmp/mibs/NET-SNMP-AGENT-MIB.txt
 usr/share/snmp/mibs/NET-SNMP-EXAMPLES-MIB.txt
 usr/share/snmp/mibs/NET-SNMP-EXTEND-MIB.txt
 usr/share/snmp/mibs/NET-SNMP-MIB.txt
+usr/share/snmp/mibs/NET-SNMP-PASS-MIB.txt
 usr/share/snmp/mibs/NET-SNMP-TC.txt
 usr/share/snmp/mibs/NET-SNMP-VACM-MIB.txt
 usr/share/snmp/mibs/NOTIFICATION-LOG-MIB.txt
@@ -544,6 +562,8 @@ usr/share/snmp/mibs/SNMP-MPD-MIB.txt
 usr/share/snmp/mibs/SNMP-NOTIFICATION-MIB.txt
 usr/share/snmp/mibs/SNMP-PROXY-MIB.txt
 usr/share/snmp/mibs/SNMP-TARGET-MIB.txt
+usr/share/snmp/mibs/SNMP-TLS-TM-MIB.txt
+usr/share/snmp/mibs/SNMP-TSM-MIB.txt
 usr/share/snmp/mibs/SNMP-USER-BASED-SM-MIB.txt
 usr/share/snmp/mibs/SNMP-USM-AES-MIB.txt
 usr/share/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.txt
@@ -555,6 +575,7 @@ usr/share/snmp/mibs/SNMPv2-TC.txt
 usr/share/snmp/mibs/SNMPv2-TM.txt
 usr/share/snmp/mibs/TCP-MIB.txt
 usr/share/snmp/mibs/TRANSPORT-ADDRESS-MIB.txt
+usr/share/snmp/mibs/TUNNEL-MIB.txt
 usr/share/snmp/mibs/UCD-DEMO-MIB.txt
 usr/share/snmp/mibs/UCD-DISKIO-MIB.txt
 usr/share/snmp/mibs/UCD-DLMOD-MIB.txt
@@ -586,4 +607,5 @@ usr/share/snmp/snmpconf-data/snmptrapd-data/logging
 usr/share/snmp/snmpconf-data/snmptrapd-data/runtime
 usr/share/snmp/snmpconf-data/snmptrapd-data/snmpconf-config
 usr/share/snmp/snmpconf-data/snmptrapd-data/traphandle
+var/ipfire/backup/addons/includes/netsnmpd
 etc/rc.d/init.d/netsnmpd
index 29f11770fc7a7f67eaa3a7e37c094942f2e087e3..caeb568f184239311beab225ec9de16a327ebbcc 100644 (file)
@@ -3,37 +3,71 @@ etc/rc.d/rc0.d/K01openvmtools
 etc/rc.d/rc3.d/S60openvmtools
 etc/rc.d/rc6.d/K01openvmtools
 etc/vmware-tools
-etc/vmware-tools/plugins
+etc/vmware-tools/guestproxy-ssl.conf
 etc/vmware-tools/poweroff-vm-default
 etc/vmware-tools/poweron-vm-default
 etc/vmware-tools/resume-vm-default
+etc/vmware-tools/scripts
+etc/vmware-tools/scripts/vmware
+etc/vmware-tools/scripts/vmware/network
+etc/vmware-tools/statechange.subr
 etc/vmware-tools/suspend-vm-default
 etc/vmware-tools/vm-support
 sbin/mount.vmhgfs
+usr/bin/vmhgfs-fuse
 usr/bin/vmtoolsd
 usr/bin/vmware-checkvm
+usr/bin/vmware-guestproxycerttool
 usr/bin/vmware-hgfsclient
 usr/bin/vmware-rpctool
 usr/bin/vmware-toolbox-cmd
 usr/bin/vmware-vmblock-fuse
 usr/bin/vmware-xferlogs
-usr/lib/libguestlib.a
-usr/lib/libguestlib.la
-usr/lib/libguestlib.so
+#usr/include/vmGuestLib
+#usr/include/vmGuestLib/includeCheck.h
+#usr/include/vmGuestLib/vmGuestLib.h
+#usr/include/vmGuestLib/vmSessionId.h
+#usr/include/vmGuestLib/vm_basic_types.h
+#usr/lib/libguestlib.a
+#usr/lib/libguestlib.la
+#usr/lib/libguestlib.so
 usr/lib/libguestlib.so.0
 usr/lib/libguestlib.so.0.0.0
-usr/lib/libvmtools.a
-usr/lib/libvmtools.la
-usr/lib/libvmtools.so
+#usr/lib/libhgfs.a
+#usr/lib/libhgfs.la
+#usr/lib/libhgfs.so
+usr/lib/libhgfs.so.0
+usr/lib/libhgfs.so.0.0.0
+#usr/lib/libvmtools.a
+#usr/lib/libvmtools.la
+#usr/lib/libvmtools.so
 usr/lib/libvmtools.so.0
 usr/lib/libvmtools.so.0.0.0
 usr/lib/open-vm-tools
 usr/lib/open-vm-tools/plugins
+#usr/lib/open-vm-tools/plugins/common
+#usr/lib/open-vm-tools/plugins/common/libhgfsServer.la
+usr/lib/open-vm-tools/plugins/common/libhgfsServer.so
+#usr/lib/open-vm-tools/plugins/common/libvix.la
+usr/lib/open-vm-tools/plugins/common/libvix.so
 usr/lib/open-vm-tools/plugins/vmsvc
+usr/lib/open-vm-tools/plugins/vmsvc/libgrabbitmqProxy.so
 usr/lib/open-vm-tools/plugins/vmsvc/libguestInfo.so
-usr/lib/open-vm-tools/plugins/vmsvc/libhgfsServer.so
 usr/lib/open-vm-tools/plugins/vmsvc/libpowerOps.so
 usr/lib/open-vm-tools/plugins/vmsvc/libtimeSync.so
-usr/lib/open-vm-tools/plugins/vmsvc/libvix.so
 usr/lib/open-vm-tools/plugins/vmsvc/libvmbackup.so
+#usr/lib/pkgconfig/vmguestlib.pc
 usr/sbin/mount.vmhgfs
+#usr/share/open-vm-tools
+#usr/share/open-vm-tools/messages
+#usr/share/open-vm-tools/messages/de
+#usr/share/open-vm-tools/messages/de/toolboxcmd.vmsg
+#usr/share/open-vm-tools/messages/de/vmtoolsd.vmsg
+#usr/share/open-vm-tools/messages/ja
+#usr/share/open-vm-tools/messages/ja/toolboxcmd.vmsg
+#usr/share/open-vm-tools/messages/ja/vmtoolsd.vmsg
+#usr/share/open-vm-tools/messages/ko
+#usr/share/open-vm-tools/messages/ko/toolboxcmd.vmsg
+#usr/share/open-vm-tools/messages/ko/vmtoolsd.vmsg
+#usr/share/open-vm-tools/messages/zh_CN
+#usr/share/open-vm-tools/messages/zh_CN/toolboxcmd.vmsg
index 5ce778929daceede65a59e9fb5092bdca1940c6b..9ea21e352811a0843d8afa4544def6d84009167c 100644 (file)
@@ -8,7 +8,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/Console/Getopt.php
 #srv/web/owncloud/3rdparty/Jcrop
 #srv/web/owncloud/3rdparty/Jcrop/MIT-LICENSE.txt
-#srv/web/owncloud/3rdparty/Jcrop/README.md
 #srv/web/owncloud/3rdparty/Jcrop/css
 #srv/web/owncloud/3rdparty/Jcrop/css/Jcrop.gif
 #srv/web/owncloud/3rdparty/Jcrop/css/jquery.Jcrop.css
@@ -220,7 +219,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/Patchwork/PHP/Shim/unidata/compatibilityDecomposition.ser
 #srv/web/owncloud/3rdparty/Patchwork/PHP/Shim/unidata/lowerCase.ser
 #srv/web/owncloud/3rdparty/Patchwork/PHP/Shim/unidata/upperCase.ser
-#srv/web/owncloud/3rdparty/Patchwork/README.md
 #srv/web/owncloud/3rdparty/Patchwork/Utf8
 #srv/web/owncloud/3rdparty/Patchwork/Utf8.php
 #srv/web/owncloud/3rdparty/Patchwork/Utf8/Bootup
@@ -253,13 +251,11 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/css/chosen/chosen.css
 #srv/web/owncloud/3rdparty/css/strengthify
 #srv/web/owncloud/3rdparty/css/strengthify/LICENSE
-#srv/web/owncloud/3rdparty/css/strengthify/README.md
 #srv/web/owncloud/3rdparty/css/strengthify/strengthify.css
 #srv/web/owncloud/3rdparty/doctrine
 #srv/web/owncloud/3rdparty/doctrine/common
 #srv/web/owncloud/3rdparty/doctrine/common/.gitmodules
 #srv/web/owncloud/3rdparty/doctrine/common/LICENSE
-#srv/web/owncloud/3rdparty/doctrine/common/README.md
 #srv/web/owncloud/3rdparty/doctrine/common/UPGRADE_TO_2_1
 #srv/web/owncloud/3rdparty/doctrine/common/UPGRADE_TO_2_2
 #srv/web/owncloud/3rdparty/doctrine/common/build.properties
@@ -498,7 +494,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/doctrine/dbal
 #srv/web/owncloud/3rdparty/doctrine/dbal/.gitmodules
 #srv/web/owncloud/3rdparty/doctrine/dbal/LICENSE
-#srv/web/owncloud/3rdparty/doctrine/dbal/README.md
 #srv/web/owncloud/3rdparty/doctrine/dbal/UPGRADE
 #srv/web/owncloud/3rdparty/doctrine/dbal/bin
 #srv/web/owncloud/3rdparty/doctrine/dbal/bin/doctrine-dbal
@@ -512,7 +507,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs/design/SHARDING.md
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs/examples
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs/examples/sharding
-#srv/web/owncloud/3rdparty/doctrine/dbal/docs/examples/sharding/README.md
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs/examples/sharding/bootstrap.php
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs/examples/sharding/composer.json
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs/examples/sharding/create_schema.php
@@ -847,7 +841,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/doctrine/dbal/tests/travis/pgsql.travis.xml
 #srv/web/owncloud/3rdparty/doctrine/dbal/tests/travis/sqlite.travis.xml
 #srv/web/owncloud/3rdparty/fontawesome
-#srv/web/owncloud/3rdparty/fontawesome/README.md
 #srv/web/owncloud/3rdparty/fontawesome/css
 #srv/web/owncloud/3rdparty/fontawesome/css/font-awesome-ie7.min.css
 #srv/web/owncloud/3rdparty/fontawesome/css/font-awesome.css
@@ -970,7 +963,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/james-heinrich
 #srv/web/owncloud/3rdparty/james-heinrich/getid3
 #srv/web/owncloud/3rdparty/james-heinrich/getid3/.gitattributes
-#srv/web/owncloud/3rdparty/james-heinrich/getid3/README.md
 #srv/web/owncloud/3rdparty/james-heinrich/getid3/changelog.txt
 #srv/web/owncloud/3rdparty/james-heinrich/getid3/composer.json
 #srv/web/owncloud/3rdparty/james-heinrich/getid3/dependencies.txt
@@ -1061,19 +1053,16 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/js
 #srv/web/owncloud/3rdparty/js/chosen
 #srv/web/owncloud/3rdparty/js/chosen/LICENSE.md
-#srv/web/owncloud/3rdparty/js/chosen/README.md
 #srv/web/owncloud/3rdparty/js/chosen/VERSION
 #srv/web/owncloud/3rdparty/js/chosen/chosen.jquery.js
 #srv/web/owncloud/3rdparty/js/chosen/chosen.jquery.min.js
 #srv/web/owncloud/3rdparty/js/chosen/chosen.proto.js
 #srv/web/owncloud/3rdparty/js/chosen/chosen.proto.min.js
 #srv/web/owncloud/3rdparty/js/md5
-#srv/web/owncloud/3rdparty/js/md5/README.md
 #srv/web/owncloud/3rdparty/js/md5/md5.js
 #srv/web/owncloud/3rdparty/js/md5/md5.min.js
 #srv/web/owncloud/3rdparty/js/strengthify
 #srv/web/owncloud/3rdparty/js/strengthify/LICENSE
-#srv/web/owncloud/3rdparty/js/strengthify/README.md
 #srv/web/owncloud/3rdparty/js/strengthify/jquery.strengthify.js
 #srv/web/owncloud/3rdparty/kriswallsmith
 #srv/web/owncloud/3rdparty/kriswallsmith/assetic
@@ -1083,7 +1072,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/kriswallsmith/assetic/CHANGELOG-1.2.md
 #srv/web/owncloud/3rdparty/kriswallsmith/assetic/Gemfile
 #srv/web/owncloud/3rdparty/kriswallsmith/assetic/LICENSE
-#srv/web/owncloud/3rdparty/kriswallsmith/assetic/README.md
 #srv/web/owncloud/3rdparty/kriswallsmith/assetic/composer.json
 #srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs
 #srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/en
@@ -1400,7 +1388,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/mcnetic
 #srv/web/owncloud/3rdparty/mcnetic/phpzipstreamer
 #srv/web/owncloud/3rdparty/mcnetic/phpzipstreamer/COPYING
-#srv/web/owncloud/3rdparty/mcnetic/phpzipstreamer/README.md
 #srv/web/owncloud/3rdparty/mcnetic/phpzipstreamer/ZipStreamer.php
 #srv/web/owncloud/3rdparty/miniColors
 #srv/web/owncloud/3rdparty/miniColors/GPL-LICENSE.txt
@@ -1421,7 +1408,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/phpmailer/phpmailer
 #srv/web/owncloud/3rdparty/phpmailer/phpmailer/LICENSE
 #srv/web/owncloud/3rdparty/phpmailer/phpmailer/PHPMailerAutoload.php
-#srv/web/owncloud/3rdparty/phpmailer/phpmailer/README.md
 #srv/web/owncloud/3rdparty/phpmailer/phpmailer/changelog.md
 #srv/web/owncloud/3rdparty/phpmailer/phpmailer/class.phpmailer.php
 #srv/web/owncloud/3rdparty/phpmailer/phpmailer/class.pop3.php
@@ -1538,7 +1524,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/phpseclib/phpseclib/.gitattributes
 #srv/web/owncloud/3rdparty/phpseclib/phpseclib/AUTHORS
 #srv/web/owncloud/3rdparty/phpseclib/phpseclib/LICENSE
-#srv/web/owncloud/3rdparty/phpseclib/phpseclib/README.md
 #srv/web/owncloud/3rdparty/phpseclib/phpseclib/build
 #srv/web/owncloud/3rdparty/phpseclib/phpseclib/build/code-sniffer-ruleset-tests.xml
 #srv/web/owncloud/3rdparty/phpseclib/phpseclib/build/code-sniffer-ruleset.xml
@@ -1606,7 +1591,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/.coveralls.yml
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/CONTRIBUTING.md
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/LICENSE
-#srv/web/owncloud/3rdparty/rackspace/php-opencloud/README.md
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/composer.json
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/changelog
@@ -1647,7 +1631,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Identity/Users.md
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Iterators.md
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/LoadBalancer
-#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/LoadBalancer/README.md
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/LoadBalancer/USERGUIDE.md
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore
 #srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/Access.md
@@ -2186,7 +2169,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/sabre/dav
 #srv/web/owncloud/3rdparty/sabre/dav/ChangeLog
 #srv/web/owncloud/3rdparty/sabre/dav/LICENSE
-#srv/web/owncloud/3rdparty/sabre/dav/README.md
 #srv/web/owncloud/3rdparty/sabre/dav/bin
 #srv/web/owncloud/3rdparty/sabre/dav/bin/googlecode_upload.py
 #srv/web/owncloud/3rdparty/sabre/dav/bin/migrateto17.php
@@ -2645,7 +2627,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/sabre/vobject
 #srv/web/owncloud/3rdparty/sabre/vobject/ChangeLog
 #srv/web/owncloud/3rdparty/sabre/vobject/LICENSE
-#srv/web/owncloud/3rdparty/sabre/vobject/README.md
 #srv/web/owncloud/3rdparty/sabre/vobject/bin
 #srv/web/owncloud/3rdparty/sabre/vobject/bin/bench.php
 #srv/web/owncloud/3rdparty/sabre/vobject/bin/generateicalendardata.php
@@ -2786,7 +2767,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Output/Output.php
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Output/OutputInterface.php
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Output/StreamOutput.php
-#srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/README.md
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Shell.php
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Tester
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Tester/ApplicationTester.php
@@ -2939,7 +2919,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/GenericEvent.php
 #srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/ImmutableEventDispatcher.php
 #srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/LICENSE
-#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md
 #srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests
 #srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/ContainerAwareEventDispatcherTest.php
 #srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/Debug
@@ -2973,7 +2952,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/ProcessBuilder.php
 #srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/ProcessPipes.php
 #srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/ProcessUtils.php
-#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/README.md
 #srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests
 #srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/AbstractProcessTest.php
 #srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/NonStopableProcess.php
@@ -3034,7 +3012,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component/Routing/Matcher/RedirectableUrlMatcherInterface.php
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component/Routing/Matcher/UrlMatcher.php
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component/Routing/Matcher/UrlMatcherInterface.php
-#srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component/Routing/README.md
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component/Routing/RequestContext.php
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component/Routing/RequestContextAwareInterface.php
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component/Routing/Route.php
@@ -3107,7 +3084,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/timepicker/releases.txt
 #srv/web/owncloud/3rdparty/zxcvbn
 #srv/web/owncloud/3rdparty/zxcvbn/LICENSE.txt
-#srv/web/owncloud/3rdparty/zxcvbn/README.md
 #srv/web/owncloud/3rdparty/zxcvbn/js
 #srv/web/owncloud/3rdparty/zxcvbn/js/zxcvbn.js
 #srv/web/owncloud/3rdparty/zxcvbn/js/zxcvbn.min.js
@@ -3115,7 +3091,6 @@ srv/web/owncloud
 #srv/web/owncloud/COPYING-AGPL
 #srv/web/owncloud/apps
 #srv/web/owncloud/apps/activity
-#srv/web/owncloud/apps/activity/README.md
 #srv/web/owncloud/apps/activity/ajax
 #srv/web/owncloud/apps/activity/ajax/fetch.php
 #srv/web/owncloud/apps/activity/ajax/rssfeed.php
@@ -3124,6 +3099,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/activity/appinfo/app.php
 #srv/web/owncloud/apps/activity/appinfo/database.xml
 #srv/web/owncloud/apps/activity/appinfo/info.xml
+#srv/web/owncloud/apps/activity/appinfo/preupdate.php
 #srv/web/owncloud/apps/activity/appinfo/routes.php
 #srv/web/owncloud/apps/activity/appinfo/update.php
 #srv/web/owncloud/apps/activity/appinfo/version
@@ -3296,78 +3272,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/activity/tests/parameterhelpertest.php
 #srv/web/owncloud/apps/activity/tests/phpunit.xml
 #srv/web/owncloud/apps/activity/tests/usersettingstest.php
-#srv/web/owncloud/apps/admin_dependencies_chk
-#srv/web/owncloud/apps/admin_dependencies_chk/appinfo
-#srv/web/owncloud/apps/admin_dependencies_chk/appinfo/app.php
-#srv/web/owncloud/apps/admin_dependencies_chk/appinfo/info.xml
-#srv/web/owncloud/apps/admin_dependencies_chk/appinfo/version
-#srv/web/owncloud/apps/admin_dependencies_chk/css
-#srv/web/owncloud/apps/admin_dependencies_chk/css/style.css
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ar.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ast.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/bg_BG.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/bn_BD.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ca.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/cs_CZ.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/da.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/de.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/de_CH.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/de_DE.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/el.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/en_GB.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/eo.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/es.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/es_AR.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/es_CL.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/es_MX.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/et_EE.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/eu.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/eu_ES.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/fa.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/fi_FI.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/fr.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/gl.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/hu_HU.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/id.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/is.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/it.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ja.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ja_JP.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/jv.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ka_GE.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/km.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ko.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/lb.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/lt_LT.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/lv.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/mk.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/nb_NO.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/nl.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/nn_NO.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/pl.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/pt_BR.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/pt_PT.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ro.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ru.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/si_LK.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/sk_SK.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/sl.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/sq.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/sr.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/sr@latin.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/sv.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ta_LK.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/th_TH.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/tr.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/ug.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/uk.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/vi.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/zh_CN.php
-#srv/web/owncloud/apps/admin_dependencies_chk/l10n/zh_TW.php
-#srv/web/owncloud/apps/admin_dependencies_chk/settings.php
-#srv/web/owncloud/apps/admin_dependencies_chk/templates
-#srv/web/owncloud/apps/admin_dependencies_chk/templates/settings.php
 #srv/web/owncloud/apps/bookmarks
 #srv/web/owncloud/apps/bookmarks/3rdparty
 #srv/web/owncloud/apps/bookmarks/3rdparty/css
@@ -3375,7 +3279,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/3rdparty/js
 #srv/web/owncloud/apps/bookmarks/3rdparty/js/js_tpl.js
 #srv/web/owncloud/apps/bookmarks/3rdparty/js/tag-it.js
-#srv/web/owncloud/apps/bookmarks/README.md
 #srv/web/owncloud/apps/bookmarks/addBm.php
 #srv/web/owncloud/apps/bookmarks/ajax
 #srv/web/owncloud/apps/bookmarks/ajax/delBookmark.php
@@ -3640,7 +3543,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/3rdparty/fullcalendar/js/fullcalendar.js
 #srv/web/owncloud/apps/calendar/3rdparty/fullcalendar/js/fullcalendar.min.js
 #srv/web/owncloud/apps/calendar/3rdparty/fullcalendar/js/gcal.js
-#srv/web/owncloud/apps/calendar/README.md
 #srv/web/owncloud/apps/calendar/ajax
 #srv/web/owncloud/apps/calendar/ajax/cache
 #srv/web/owncloud/apps/calendar/ajax/cache/rescan.php
@@ -4073,10 +3975,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/tests
 #srv/web/owncloud/apps/calendar/tests/calendar.php
 #srv/web/owncloud/apps/contacts
-#srv/web/owncloud/apps/contacts/.jshintrc
 #srv/web/owncloud/apps/contacts/COPYING-README
 #srv/web/owncloud/apps/contacts/Changelog
-#srv/web/owncloud/apps/contacts/README.md
 #srv/web/owncloud/apps/contacts/admin.php
 #srv/web/owncloud/apps/contacts/appinfo
 #srv/web/owncloud/apps/contacts/appinfo/app.php
@@ -4551,7 +4451,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/tests/preseed-config.php
 #srv/web/owncloud/apps/contacts/tests/setup_owncloud.sh
 #srv/web/owncloud/apps/documents
-#srv/web/owncloud/apps/documents/README.md
 #srv/web/owncloud/apps/documents/admin.php
 #srv/web/owncloud/apps/documents/ajax
 #srv/web/owncloud/apps/documents/ajax/admin.php
@@ -5154,6 +5053,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/js/3rdparty/resources/dojo/resources/images/dndNoCopy.png
 #srv/web/owncloud/apps/documents/js/3rdparty/resources/dojo/resources/images/dndNoMove.png
 #srv/web/owncloud/apps/documents/js/3rdparty/resources/dojox
+#srv/web/owncloud/apps/documents/js/3rdparty/resources/dojox/html
+#srv/web/owncloud/apps/documents/js/3rdparty/resources/dojox/html/entities.js
 #srv/web/owncloud/apps/documents/js/3rdparty/resources/dojox/layout
 #srv/web/owncloud/apps/documents/js/3rdparty/resources/dojox/layout/resources
 #srv/web/owncloud/apps/documents/js/3rdparty/resources/dojox/layout/resources/DndGridContainer.css
@@ -6008,6 +5909,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_encryption/tests/proxy.php
 #srv/web/owncloud/apps/files_encryption/tests/share.php
 #srv/web/owncloud/apps/files_encryption/tests/stream.php
+#srv/web/owncloud/apps/files_encryption/tests/testcase.php
 #srv/web/owncloud/apps/files_encryption/tests/trashbin.php
 #srv/web/owncloud/apps/files_encryption/tests/util.php
 #srv/web/owncloud/apps/files_encryption/tests/webdav.php
@@ -6028,7 +5930,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_external/3rdparty/Dropbox/OAuth/Consumer
 #srv/web/owncloud/apps/files_external/3rdparty/Dropbox/OAuth/Consumer/Dropbox.php
 #srv/web/owncloud/apps/files_external/3rdparty/Dropbox/OAuth/Curl.php
-#srv/web/owncloud/apps/files_external/3rdparty/Dropbox/README.md
 #srv/web/owncloud/apps/files_external/3rdparty/Dropbox/autoload.php
 #srv/web/owncloud/apps/files_external/3rdparty/aws-sdk-php
 #srv/web/owncloud/apps/files_external/3rdparty/aws-sdk-php/Aws
@@ -7142,7 +7043,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_pdfviewer/3rdparty/pdfjs/pdf.worker.js
 #srv/web/owncloud/apps/files_pdfviewer/3rdparty/pdfjs/viewer.css
 #srv/web/owncloud/apps/files_pdfviewer/3rdparty/pdfjs/viewer.js
-#srv/web/owncloud/apps/files_pdfviewer/README.md
 #srv/web/owncloud/apps/files_pdfviewer/appinfo
 #srv/web/owncloud/apps/files_pdfviewer/appinfo/app.php
 #srv/web/owncloud/apps/files_pdfviewer/appinfo/info.xml
@@ -7281,6 +7181,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/lib/proxy.php
 #srv/web/owncloud/apps/files_sharing/lib/readonlycache.php
 #srv/web/owncloud/apps/files_sharing/lib/readonlywrapper.php
+#srv/web/owncloud/apps/files_sharing/lib/scanner.php
 #srv/web/owncloud/apps/files_sharing/lib/share
 #srv/web/owncloud/apps/files_sharing/lib/share/file.php
 #srv/web/owncloud/apps/files_sharing/lib/share/folder.php
@@ -7310,6 +7211,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/tests/js/shareSpec.js
 #srv/web/owncloud/apps/files_sharing/tests/js/sharedfilelistSpec.js
 #srv/web/owncloud/apps/files_sharing/tests/permissions.php
+#srv/web/owncloud/apps/files_sharing/tests/propagation.php
 #srv/web/owncloud/apps/files_sharing/tests/proxy.php
 #srv/web/owncloud/apps/files_sharing/tests/share.php
 #srv/web/owncloud/apps/files_sharing/tests/sharedmount.php
@@ -7318,7 +7220,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/tests/updater.php
 #srv/web/owncloud/apps/files_sharing/tests/watcher.php
 #srv/web/owncloud/apps/files_texteditor
-#srv/web/owncloud/apps/files_texteditor/README.md
 #srv/web/owncloud/apps/files_texteditor/ajax
 #srv/web/owncloud/apps/files_texteditor/ajax/loadfile.php
 #srv/web/owncloud/apps/files_texteditor/ajax/savefile.php
@@ -7677,6 +7578,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_trashbin/appinfo/app.php
 #srv/web/owncloud/apps/files_trashbin/appinfo/database.xml
 #srv/web/owncloud/apps/files_trashbin/appinfo/info.xml
+#srv/web/owncloud/apps/files_trashbin/appinfo/preupdate.php
 #srv/web/owncloud/apps/files_trashbin/appinfo/routes.php
 #srv/web/owncloud/apps/files_trashbin/appinfo/update.php
 #srv/web/owncloud/apps/files_trashbin/appinfo/version
@@ -7923,7 +7825,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_videoviewer/src/silverlight/SilverlightMediaElement.csproj.user
 #srv/web/owncloud/apps/files_videoviewer/src/silverlight/SilverlightMediaElement.sln
 #srv/web/owncloud/apps/firstrunwizard
-#srv/web/owncloud/apps/firstrunwizard/README.md
 #srv/web/owncloud/apps/firstrunwizard/ajax
 #srv/web/owncloud/apps/firstrunwizard/ajax/disable.php
 #srv/web/owncloud/apps/firstrunwizard/ajax/enable.php
@@ -8016,7 +7917,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/firstrunwizard/templates/wizard.php
 #srv/web/owncloud/apps/firstrunwizard/wizard.php
 #srv/web/owncloud/apps/gallery
-#srv/web/owncloud/apps/gallery/README.md
 #srv/web/owncloud/apps/gallery/ajax
 #srv/web/owncloud/apps/gallery/ajax/gallery.php
 #srv/web/owncloud/apps/gallery/ajax/getimages.php
@@ -8696,7 +8596,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/templateeditor/templates/settings-admin.php
 #srv/web/owncloud/apps/updater
 #srv/web/owncloud/apps/updater/COPYING-AGPL
-#srv/web/owncloud/apps/updater/README.md
 #srv/web/owncloud/apps/updater/admin.php
 #srv/web/owncloud/apps/updater/ajax
 #srv/web/owncloud/apps/updater/ajax/backup
@@ -8817,7 +8716,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/templates/update.php
 #srv/web/owncloud/apps/updater/update.php
 #srv/web/owncloud/apps/user_external
-#srv/web/owncloud/apps/user_external/README.md
 #srv/web/owncloud/apps/user_external/appinfo
 #srv/web/owncloud/apps/user_external/appinfo/app.php
 #srv/web/owncloud/apps/user_external/appinfo/database.xml
@@ -8851,8 +8749,11 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/appinfo/update.php
 #srv/web/owncloud/apps/user_ldap/appinfo/version
 #srv/web/owncloud/apps/user_ldap/command
+#srv/web/owncloud/apps/user_ldap/command/checkuser.php
+#srv/web/owncloud/apps/user_ldap/command/search.php
 #srv/web/owncloud/apps/user_ldap/command/setconfig.php
 #srv/web/owncloud/apps/user_ldap/command/showconfig.php
+#srv/web/owncloud/apps/user_ldap/command/showremnants.php
 #srv/web/owncloud/apps/user_ldap/command/testconfig.php
 #srv/web/owncloud/apps/user_ldap/css
 #srv/web/owncloud/apps/user_ldap/css/settings.css
@@ -8986,14 +8887,18 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/lib/filesystemhelper.php
 #srv/web/owncloud/apps/user_ldap/lib/helper.php
 #srv/web/owncloud/apps/user_ldap/lib/ildapwrapper.php
+#srv/web/owncloud/apps/user_ldap/lib/jobs
 #srv/web/owncloud/apps/user_ldap/lib/jobs.php
+#srv/web/owncloud/apps/user_ldap/lib/jobs/cleanup.php
 #srv/web/owncloud/apps/user_ldap/lib/ldap.php
 #srv/web/owncloud/apps/user_ldap/lib/ldaputility.php
 #srv/web/owncloud/apps/user_ldap/lib/logwrapper.php
 #srv/web/owncloud/apps/user_ldap/lib/proxy.php
 #srv/web/owncloud/apps/user_ldap/lib/user
+#srv/web/owncloud/apps/user_ldap/lib/user/deletedusersindex.php
 #srv/web/owncloud/apps/user_ldap/lib/user/iusertools.php
 #srv/web/owncloud/apps/user_ldap/lib/user/manager.php
+#srv/web/owncloud/apps/user_ldap/lib/user/offlineuser.php
 #srv/web/owncloud/apps/user_ldap/lib/user/user.php
 #srv/web/owncloud/apps/user_ldap/lib/wizard.php
 #srv/web/owncloud/apps/user_ldap/lib/wizardresult.php
@@ -9009,10 +8914,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/tests
 #srv/web/owncloud/apps/user_ldap/tests/access.php
 #srv/web/owncloud/apps/user_ldap/tests/connection.php
-#srv/web/owncloud/apps/user_ldap/tests/data
-#srv/web/owncloud/apps/user_ldap/tests/data/sid.dat
 #srv/web/owncloud/apps/user_ldap/tests/group_ldap.php
 #srv/web/owncloud/apps/user_ldap/tests/helper.php
+#srv/web/owncloud/apps/user_ldap/tests/jobs
+#srv/web/owncloud/apps/user_ldap/tests/jobs/cleanup.php
 #srv/web/owncloud/apps/user_ldap/tests/user
 #srv/web/owncloud/apps/user_ldap/tests/user/manager.php
 #srv/web/owncloud/apps/user_ldap/tests/user/user.php
@@ -9132,6 +9037,7 @@ srv/web/owncloud
 #srv/web/owncloud/core/command/status.php
 #srv/web/owncloud/core/command/upgrade.php
 #srv/web/owncloud/core/command/user
+#srv/web/owncloud/core/command/user/delete.php
 #srv/web/owncloud/core/command/user/lastseen.php
 #srv/web/owncloud/core/command/user/report.php
 #srv/web/owncloud/core/command/user/resetpassword.php
@@ -9170,243 +9076,277 @@ srv/web/owncloud
 #srv/web/owncloud/core/css/styles.css
 #srv/web/owncloud/core/doc
 #srv/web/owncloud/core/doc/admin
-#srv/web/owncloud/core/doc/admin/_images
-#srv/web/owncloud/core/doc/admin/_images/antivirus-app.png
-#srv/web/owncloud/core/doc/admin/_images/antivirus-config.png
-#srv/web/owncloud/core/doc/admin/_images/antivirus-daemon-socket.png
-#srv/web/owncloud/core/doc/admin/_images/antivirus-executable.png
-#srv/web/owncloud/core/doc/admin/_images/antivirus-logging.png
-#srv/web/owncloud/core/doc/admin/_images/create_public_share.png
-#srv/web/owncloud/core/doc/admin/_images/documents_app_enable.png
-#srv/web/owncloud/core/doc/admin/_images/encryption1.png
-#srv/web/owncloud/core/doc/admin/_images/encryption2.png
-#srv/web/owncloud/core/doc/admin/_images/encryption3.png
-#srv/web/owncloud/core/doc/admin/_images/encryption4.png
-#srv/web/owncloud/core/doc/admin/_images/encryption5.png
-#srv/web/owncloud/core/doc/admin/_images/encryption6.png
-#srv/web/owncloud/core/doc/admin/_images/encryption7.png
-#srv/web/owncloud/core/doc/admin/_images/encryption8.png
-#srv/web/owncloud/core/doc/admin/_images/encryption9.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-amazons3.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-app-add.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-app-enable.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-app-local.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-app-usermounts.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-dropbox-allowshare.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-dropbox-app.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-dropbox-configapp.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-dropbox-oc.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-dropbox.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-ftp.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive-0auth.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive-9.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive-sdk.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive1.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive2.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive5.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive7.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-google-drive8.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-smb.png
-#srv/web/owncloud/core/doc/admin/_images/external-storage-webdav.png
-#srv/web/owncloud/core/doc/admin/_images/install-wizard-advanced.png
-#srv/web/owncloud/core/doc/admin/_images/install-wizard.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-advanced-1-connection.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-advanced-2-directory.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-advanced-3-attributes.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-expert.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-fetched-avatar.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-settings-invalid-oc45.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-settings-valid-oc45.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-wizard-1-server.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-wizard-2-user.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-wizard-3-login.png
-#srv/web/owncloud/core/doc/admin/_images/ldap-wizard-4-group.png
-#srv/web/owncloud/core/doc/admin/_images/lucene-search-enable.png
-#srv/web/owncloud/core/doc/admin/_images/lucene-search-user.png
-#srv/web/owncloud/core/doc/admin/_images/oc_admin_app_page.png
-#srv/web/owncloud/core/doc/admin/_images/preview_images.png
-#srv/web/owncloud/core/doc/admin/_images/remote_shares.png
-#srv/web/owncloud/core/doc/admin/_images/sharing-admin.png
-#srv/web/owncloud/core/doc/admin/_images/sharing-user-local.png
-#srv/web/owncloud/core/doc/admin/_images/sharing-user.png
-#srv/web/owncloud/core/doc/admin/_images/smtp-config-php-sendmail.png
-#srv/web/owncloud/core/doc/admin/_images/smtp-config-smtp.png
-#srv/web/owncloud/core/doc/admin/_images/smtp-config-wizard.png
-#srv/web/owncloud/core/doc/admin/_images/ucs-app-center-install.png
-#srv/web/owncloud/core/doc/admin/_images/ucs-app-center-module.png
-#srv/web/owncloud/core/doc/admin/_images/ucsint.png
-#srv/web/owncloud/core/doc/admin/_images/ucsint1.png
-#srv/web/owncloud/core/doc/admin/_images/ucsint2.png
-#srv/web/owncloud/core/doc/admin/_images/untrusted-domain.png
-#srv/web/owncloud/core/doc/admin/_images/updater-1.png
-#srv/web/owncloud/core/doc/admin/_images/updater-2.png
-#srv/web/owncloud/core/doc/admin/_images/updater-3.png
-#srv/web/owncloud/core/doc/admin/_images/updater-4.png
-#srv/web/owncloud/core/doc/admin/_images/updater-5.png
-#srv/web/owncloud/core/doc/admin/_images/updater-6.png
-#srv/web/owncloud/core/doc/admin/_images/updater-7.png
-#srv/web/owncloud/core/doc/admin/_images/users-config.png
-#srv/web/owncloud/core/doc/admin/_images/users-create.png
-#srv/web/owncloud/core/doc/admin/_images/users-groups.png
-#srv/web/owncloud/core/doc/admin/_images/win7features.jpg
-#srv/web/owncloud/core/doc/admin/_images/winserverroles.jpg
-#srv/web/owncloud/core/doc/admin/_sources
-#srv/web/owncloud/core/doc/admin/_sources/configuration
-#srv/web/owncloud/core/doc/admin/_sources/configuration/auth_ldap.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/background_jobs.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration-antivirus.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_3rdparty.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_apps.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_assets.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_automation.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_config_sample_php.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_custom_clients.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_database.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_encryption.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_file_sharing.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_files_locking.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_knowledgebase.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_language.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_logging.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_mail.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_preview.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_reverseproxy.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuration_users.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuring_big_file_upload.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuring_documents.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/configuring_search.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/custom_mount_config.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/custom_mount_config_gui.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/custom_user_backend.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/index.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/server_to_server_managing.txt
-#srv/web/owncloud/core/doc/admin/_sources/configuration/xsendfile.txt
-#srv/web/owncloud/core/doc/admin/_sources/contents.txt
-#srv/web/owncloud/core/doc/admin/_sources/index.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation
-#srv/web/owncloud/core/doc/admin/_sources/installation/configuration_hiawatha.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/configuration_lighttpd.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/configuration_nginx.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/configuration_yaws.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/index.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_appliance.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_linux.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_macos.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_others.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_source.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_ucs.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_windows.txt
-#srv/web/owncloud/core/doc/admin/_sources/installation/installation_wizard.txt
-#srv/web/owncloud/core/doc/admin/_sources/issues
-#srv/web/owncloud/core/doc/admin/_sources/issues/index.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/backup.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/convert_db.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/enable_maintenance.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/index.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/migrating.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/restore.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/update.txt
-#srv/web/owncloud/core/doc/admin/_sources/maintenance/upgrade.txt
-#srv/web/owncloud/core/doc/admin/_sources/whats_new_admin.txt
-#srv/web/owncloud/core/doc/admin/_static
-#srv/web/owncloud/core/doc/admin/_static/ajax-loader.gif
-#srv/web/owncloud/core/doc/admin/_static/basic.css
-#srv/web/owncloud/core/doc/admin/_static/bootstrap-responsive.css
-#srv/web/owncloud/core/doc/admin/_static/bootstrap-sphinx.css
-#srv/web/owncloud/core/doc/admin/_static/bootstrap.css
-#srv/web/owncloud/core/doc/admin/_static/bootstrap.js
-#srv/web/owncloud/core/doc/admin/_static/comment-bright.png
-#srv/web/owncloud/core/doc/admin/_static/comment-close.png
-#srv/web/owncloud/core/doc/admin/_static/comment.png
-#srv/web/owncloud/core/doc/admin/_static/doctools.js
-#srv/web/owncloud/core/doc/admin/_static/down-pressed.png
-#srv/web/owncloud/core/doc/admin/_static/down.png
-#srv/web/owncloud/core/doc/admin/_static/file.png
-#srv/web/owncloud/core/doc/admin/_static/img
-#srv/web/owncloud/core/doc/admin/_static/img/glyphicons-halflings-white.png
-#srv/web/owncloud/core/doc/admin/_static/img/glyphicons-halflings.png
-#srv/web/owncloud/core/doc/admin/_static/img/note.svg
-#srv/web/owncloud/core/doc/admin/_static/img/todo.svg
-#srv/web/owncloud/core/doc/admin/_static/jquery.js
-#srv/web/owncloud/core/doc/admin/_static/logo-blue.pdf
-#srv/web/owncloud/core/doc/admin/_static/logo-blue.png
-#srv/web/owncloud/core/doc/admin/_static/minus.png
-#srv/web/owncloud/core/doc/admin/_static/plus.png
-#srv/web/owncloud/core/doc/admin/_static/pygments.css
-#srv/web/owncloud/core/doc/admin/_static/searchtools.js
-#srv/web/owncloud/core/doc/admin/_static/style.css
-#srv/web/owncloud/core/doc/admin/_static/underscore.js
-#srv/web/owncloud/core/doc/admin/_static/up-pressed.png
-#srv/web/owncloud/core/doc/admin/_static/up.png
-#srv/web/owncloud/core/doc/admin/_static/websupport.js
-#srv/web/owncloud/core/doc/admin/configuration
-#srv/web/owncloud/core/doc/admin/configuration/auth_ldap.html
-#srv/web/owncloud/core/doc/admin/configuration/background_jobs.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration-antivirus.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_3rdparty.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_apps.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_assets.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_automation.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_config_sample_php.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_custom_clients.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_database.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_encryption.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_file_sharing.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_files_locking.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_knowledgebase.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_language.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_logging.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_mail.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_preview.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_reverseproxy.html
-#srv/web/owncloud/core/doc/admin/configuration/configuration_users.html
-#srv/web/owncloud/core/doc/admin/configuration/configuring_big_file_upload.html
-#srv/web/owncloud/core/doc/admin/configuration/configuring_documents.html
-#srv/web/owncloud/core/doc/admin/configuration/configuring_search.html
-#srv/web/owncloud/core/doc/admin/configuration/custom_mount_config.html
-#srv/web/owncloud/core/doc/admin/configuration/custom_mount_config_gui.html
-#srv/web/owncloud/core/doc/admin/configuration/custom_user_backend.html
-#srv/web/owncloud/core/doc/admin/configuration/index.html
-#srv/web/owncloud/core/doc/admin/configuration/server_to_server_managing.html
-#srv/web/owncloud/core/doc/admin/configuration/xsendfile.html
-#srv/web/owncloud/core/doc/admin/contents.html
-#srv/web/owncloud/core/doc/admin/genindex.html
 #srv/web/owncloud/core/doc/admin/index.html
-#srv/web/owncloud/core/doc/admin/installation
-#srv/web/owncloud/core/doc/admin/installation/configuration_hiawatha.html
-#srv/web/owncloud/core/doc/admin/installation/configuration_lighttpd.html
-#srv/web/owncloud/core/doc/admin/installation/configuration_nginx.html
-#srv/web/owncloud/core/doc/admin/installation/configuration_yaws.html
-#srv/web/owncloud/core/doc/admin/installation/index.html
-#srv/web/owncloud/core/doc/admin/installation/installation_appliance.html
-#srv/web/owncloud/core/doc/admin/installation/installation_linux.html
-#srv/web/owncloud/core/doc/admin/installation/installation_macos.html
-#srv/web/owncloud/core/doc/admin/installation/installation_others.html
-#srv/web/owncloud/core/doc/admin/installation/installation_source.html
-#srv/web/owncloud/core/doc/admin/installation/installation_ucs.html
-#srv/web/owncloud/core/doc/admin/installation/installation_windows.html
-#srv/web/owncloud/core/doc/admin/installation/installation_wizard.html
-#srv/web/owncloud/core/doc/admin/issues
-#srv/web/owncloud/core/doc/admin/issues/index.html
-#srv/web/owncloud/core/doc/admin/maintenance
-#srv/web/owncloud/core/doc/admin/maintenance/backup.html
-#srv/web/owncloud/core/doc/admin/maintenance/convert_db.html
-#srv/web/owncloud/core/doc/admin/maintenance/enable_maintenance.html
-#srv/web/owncloud/core/doc/admin/maintenance/index.html
-#srv/web/owncloud/core/doc/admin/maintenance/migrating.html
-#srv/web/owncloud/core/doc/admin/maintenance/restore.html
-#srv/web/owncloud/core/doc/admin/maintenance/update.html
-#srv/web/owncloud/core/doc/admin/maintenance/upgrade.html
-#srv/web/owncloud/core/doc/admin/objects.inv
-#srv/web/owncloud/core/doc/admin/search.html
-#srv/web/owncloud/core/doc/admin/searchindex.js
-#srv/web/owncloud/core/doc/admin/whats_new_admin.html
+#srv/web/owncloud/core/doc/admin/release
+#srv/web/owncloud/core/doc/admin/release/.buildinfo
+#srv/web/owncloud/core/doc/admin/release/_images
+#srv/web/owncloud/core/doc/admin/release/_images/antivirus-app.png
+#srv/web/owncloud/core/doc/admin/release/_images/antivirus-config.png
+#srv/web/owncloud/core/doc/admin/release/_images/antivirus-daemon-socket.png
+#srv/web/owncloud/core/doc/admin/release/_images/antivirus-executable.png
+#srv/web/owncloud/core/doc/admin/release/_images/antivirus-logging.png
+#srv/web/owncloud/core/doc/admin/release/_images/create_public_share.png
+#srv/web/owncloud/core/doc/admin/release/_images/documents_app_enable.png
+#srv/web/owncloud/core/doc/admin/release/_images/documents_apply_test.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption1.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption2.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption3.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption4.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption5.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption6.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption7.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption8.png
+#srv/web/owncloud/core/doc/admin/release/_images/encryption9.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-sites-1.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-sites-2.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-sites-3.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-sites-4.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-sites-5.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-amazons3.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-app-add.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-app-enable.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-app-local.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-app-usermounts.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-dropbox-allowshare.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-dropbox-app.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-dropbox-configapp.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-dropbox-oc.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-dropbox.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-ftp.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive-0auth.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive-9.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive-sdk.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive1.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive2.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive5.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive7.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-google-drive8.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-smb.png
+#srv/web/owncloud/core/doc/admin/release/_images/external-storage-webdav.png
+#srv/web/owncloud/core/doc/admin/release/_images/install-wizard-advanced.png
+#srv/web/owncloud/core/doc/admin/release/_images/install-wizard.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-advanced-1-connection.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-advanced-2-directory.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-advanced-3-attributes.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-expert.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-fetched-avatar.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-settings-invalid-oc45.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-settings-valid-oc45.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-wizard-1-server.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-wizard-2-user.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-wizard-3-login.png
+#srv/web/owncloud/core/doc/admin/release/_images/ldap-wizard-4-group.png
+#srv/web/owncloud/core/doc/admin/release/_images/lucene-search-enable.png
+#srv/web/owncloud/core/doc/admin/release/_images/lucene-search-user.png
+#srv/web/owncloud/core/doc/admin/release/_images/oc-video-1.png
+#srv/web/owncloud/core/doc/admin/release/_images/oc-video-2.png
+#srv/web/owncloud/core/doc/admin/release/_images/oc_admin_app_page.png
+#srv/web/owncloud/core/doc/admin/release/_images/preview_images.png
+#srv/web/owncloud/core/doc/admin/release/_images/remote_shares.png
+#srv/web/owncloud/core/doc/admin/release/_images/sharing-admin.png
+#srv/web/owncloud/core/doc/admin/release/_images/sharing-user-local.png
+#srv/web/owncloud/core/doc/admin/release/_images/sharing-user.png
+#srv/web/owncloud/core/doc/admin/release/_images/smtp-config-php-sendmail.png
+#srv/web/owncloud/core/doc/admin/release/_images/smtp-config-smtp.png
+#srv/web/owncloud/core/doc/admin/release/_images/smtp-config-wizard.png
+#srv/web/owncloud/core/doc/admin/release/_images/ucs-app-center-install.png
+#srv/web/owncloud/core/doc/admin/release/_images/ucs-app-center-module.png
+#srv/web/owncloud/core/doc/admin/release/_images/ucsint.png
+#srv/web/owncloud/core/doc/admin/release/_images/ucsint1.png
+#srv/web/owncloud/core/doc/admin/release/_images/ucsint2.png
+#srv/web/owncloud/core/doc/admin/release/_images/untrusted-domain.png
+#srv/web/owncloud/core/doc/admin/release/_images/updater-1.png
+#srv/web/owncloud/core/doc/admin/release/_images/updater-2.png
+#srv/web/owncloud/core/doc/admin/release/_images/updater-3.png
+#srv/web/owncloud/core/doc/admin/release/_images/updater-4.png
+#srv/web/owncloud/core/doc/admin/release/_images/updater-5.png
+#srv/web/owncloud/core/doc/admin/release/_images/updater-6.png
+#srv/web/owncloud/core/doc/admin/release/_images/updater-7.png
+#srv/web/owncloud/core/doc/admin/release/_images/users-config.png
+#srv/web/owncloud/core/doc/admin/release/_images/users-create.png
+#srv/web/owncloud/core/doc/admin/release/_images/users-groups.png
+#srv/web/owncloud/core/doc/admin/release/_images/win7features.jpg
+#srv/web/owncloud/core/doc/admin/release/_images/winserverroles.jpg
+#srv/web/owncloud/core/doc/admin/release/_sources
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/activity_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/antivirus_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/automatic_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/background_jobs_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/big_file_upload_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/collaborative_documents_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/config_sample_php_parameters.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/custom_client_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/database_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/email_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/encryption_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/external_sites.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/external_storage_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/external_storage_configuration_gui.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/file_sharing_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/files_locking_enabling.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/harden_server.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/index.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/js_css_asset_management_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/knowledgebase_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/language_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/logging_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/occ_command.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/performance_tips.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/previews_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/reset_admin_password.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/reverse_proxy_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/search_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/server_to_server_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/serving_static_files_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/thirdparty_php_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/user_auth_ftp_smb_imap.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/user_auth_ldap.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/user_auth_ldap_cleanup.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/configuration/user_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/contents.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/index.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/appliance_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/apps_management_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/hiawatha_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/index.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/installation_wizard.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/lighttpd_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/linux_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/macos_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/nginx_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/others_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/selinux_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/source_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/ucs_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/windows_installation.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/installation/yaws_configuration.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/issues
+#srv/web/owncloud/core/doc/admin/release/_sources/issues/index.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/backup.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/convert_db.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/enable_maintenance.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/index.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/migrating.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/restore.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/update.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/maintenance/upgrade.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/release_notes.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/videos.txt
+#srv/web/owncloud/core/doc/admin/release/_sources/whats_new_admin.txt
+#srv/web/owncloud/core/doc/admin/release/_static
+#srv/web/owncloud/core/doc/admin/release/_static/ajax-loader.gif
+#srv/web/owncloud/core/doc/admin/release/_static/basic.css
+#srv/web/owncloud/core/doc/admin/release/_static/bootstrap-responsive.css
+#srv/web/owncloud/core/doc/admin/release/_static/bootstrap-sphinx.css
+#srv/web/owncloud/core/doc/admin/release/_static/bootstrap.css
+#srv/web/owncloud/core/doc/admin/release/_static/bootstrap.js
+#srv/web/owncloud/core/doc/admin/release/_static/comment-bright.png
+#srv/web/owncloud/core/doc/admin/release/_static/comment-close.png
+#srv/web/owncloud/core/doc/admin/release/_static/comment.png
+#srv/web/owncloud/core/doc/admin/release/_static/doctools.js
+#srv/web/owncloud/core/doc/admin/release/_static/down-pressed.png
+#srv/web/owncloud/core/doc/admin/release/_static/down.png
+#srv/web/owncloud/core/doc/admin/release/_static/file.png
+#srv/web/owncloud/core/doc/admin/release/_static/img
+#srv/web/owncloud/core/doc/admin/release/_static/img/glyphicons-halflings-white.png
+#srv/web/owncloud/core/doc/admin/release/_static/img/glyphicons-halflings.png
+#srv/web/owncloud/core/doc/admin/release/_static/img/note.svg
+#srv/web/owncloud/core/doc/admin/release/_static/img/todo.svg
+#srv/web/owncloud/core/doc/admin/release/_static/jquery.js
+#srv/web/owncloud/core/doc/admin/release/_static/logo-blue.pdf
+#srv/web/owncloud/core/doc/admin/release/_static/logo-blue.png
+#srv/web/owncloud/core/doc/admin/release/_static/minus.png
+#srv/web/owncloud/core/doc/admin/release/_static/plus.png
+#srv/web/owncloud/core/doc/admin/release/_static/pygments.css
+#srv/web/owncloud/core/doc/admin/release/_static/searchtools.js
+#srv/web/owncloud/core/doc/admin/release/_static/style.css
+#srv/web/owncloud/core/doc/admin/release/_static/underscore.js
+#srv/web/owncloud/core/doc/admin/release/_static/up-pressed.png
+#srv/web/owncloud/core/doc/admin/release/_static/up.png
+#srv/web/owncloud/core/doc/admin/release/_static/websupport.js
+#srv/web/owncloud/core/doc/admin/release/configuration
+#srv/web/owncloud/core/doc/admin/release/configuration/activity_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/antivirus_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/automatic_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/background_jobs_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/big_file_upload_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/collaborative_documents_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/config_sample_php_parameters.html
+#srv/web/owncloud/core/doc/admin/release/configuration/custom_client_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/database_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/email_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/encryption_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/external_sites.html
+#srv/web/owncloud/core/doc/admin/release/configuration/external_storage_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/external_storage_configuration_gui.html
+#srv/web/owncloud/core/doc/admin/release/configuration/file_sharing_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/files_locking_enabling.html
+#srv/web/owncloud/core/doc/admin/release/configuration/harden_server.html
+#srv/web/owncloud/core/doc/admin/release/configuration/index.html
+#srv/web/owncloud/core/doc/admin/release/configuration/js_css_asset_management_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/knowledgebase_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/language_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/logging_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/occ_command.html
+#srv/web/owncloud/core/doc/admin/release/configuration/performance_tips.html
+#srv/web/owncloud/core/doc/admin/release/configuration/previews_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/reset_admin_password.html
+#srv/web/owncloud/core/doc/admin/release/configuration/reverse_proxy_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/search_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/server_to_server_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/serving_static_files_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/thirdparty_php_configuration.html
+#srv/web/owncloud/core/doc/admin/release/configuration/user_auth_ftp_smb_imap.html
+#srv/web/owncloud/core/doc/admin/release/configuration/user_auth_ldap.html
+#srv/web/owncloud/core/doc/admin/release/configuration/user_auth_ldap_cleanup.html
+#srv/web/owncloud/core/doc/admin/release/configuration/user_configuration.html
+#srv/web/owncloud/core/doc/admin/release/contents.html
+#srv/web/owncloud/core/doc/admin/release/genindex.html
+#srv/web/owncloud/core/doc/admin/release/index.html
+#srv/web/owncloud/core/doc/admin/release/installation
+#srv/web/owncloud/core/doc/admin/release/installation/appliance_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/apps_management_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/hiawatha_configuration.html
+#srv/web/owncloud/core/doc/admin/release/installation/index.html
+#srv/web/owncloud/core/doc/admin/release/installation/installation_wizard.html
+#srv/web/owncloud/core/doc/admin/release/installation/lighttpd_configuration.html
+#srv/web/owncloud/core/doc/admin/release/installation/linux_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/macos_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/nginx_configuration.html
+#srv/web/owncloud/core/doc/admin/release/installation/others_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/selinux_configuration.html
+#srv/web/owncloud/core/doc/admin/release/installation/source_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/ucs_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/windows_installation.html
+#srv/web/owncloud/core/doc/admin/release/installation/yaws_configuration.html
+#srv/web/owncloud/core/doc/admin/release/issues
+#srv/web/owncloud/core/doc/admin/release/issues/index.html
+#srv/web/owncloud/core/doc/admin/release/maintenance
+#srv/web/owncloud/core/doc/admin/release/maintenance/backup.html
+#srv/web/owncloud/core/doc/admin/release/maintenance/convert_db.html
+#srv/web/owncloud/core/doc/admin/release/maintenance/enable_maintenance.html
+#srv/web/owncloud/core/doc/admin/release/maintenance/index.html
+#srv/web/owncloud/core/doc/admin/release/maintenance/migrating.html
+#srv/web/owncloud/core/doc/admin/release/maintenance/restore.html
+#srv/web/owncloud/core/doc/admin/release/maintenance/update.html
+#srv/web/owncloud/core/doc/admin/release/maintenance/upgrade.html
+#srv/web/owncloud/core/doc/admin/release/objects.inv
+#srv/web/owncloud/core/doc/admin/release/release_notes.html
+#srv/web/owncloud/core/doc/admin/release/search.html
+#srv/web/owncloud/core/doc/admin/release/searchindex.js
+#srv/web/owncloud/core/doc/admin/release/videos.html
+#srv/web/owncloud/core/doc/admin/release/whats_new_admin.html
 #srv/web/owncloud/core/doc/user
 #srv/web/owncloud/core/doc/user/_images
 #srv/web/owncloud/core/doc/user/_images/bookmark_addurl.png
 #srv/web/owncloud/core/doc/user/_images/bookmark_setting.png
+#srv/web/owncloud/core/doc/user/_images/calendar_caldav_icon.png
+#srv/web/owncloud/core/doc/user/_images/calendar_caldav_ios.png
+#srv/web/owncloud/core/doc/user/_images/calendar_caldav_link.png
 #srv/web/owncloud/core/doc/user/_images/calendar_create_event.png
 #srv/web/owncloud/core/doc/user/_images/calendar_create_event_repeat.png
 #srv/web/owncloud/core/doc/user/_images/calendar_create_event_share.png
@@ -9431,9 +9371,7 @@ srv/web/owncloud
 #srv/web/owncloud/core/doc/user/_images/contact_vcfpick.jpg
 #srv/web/owncloud/core/doc/user/_images/contacts_empty.png
 #srv/web/owncloud/core/doc/user/_images/contacts_settings.png
-#srv/web/owncloud/core/doc/user/_images/deleted_files.png
 #srv/web/owncloud/core/doc/user/_images/documents_personal_settings.png
-#srv/web/owncloud/core/doc/user/_images/dolphin_webdav.png
 #srv/web/owncloud/core/doc/user/_images/download.png
 #srv/web/owncloud/core/doc/user/_images/email_address_personal_settings.png
 #srv/web/owncloud/core/doc/user/_images/encryption1.png
@@ -9444,7 +9382,7 @@ srv/web/owncloud
 #srv/web/owncloud/core/doc/user/_images/explorer_webdav.png
 #srv/web/owncloud/core/doc/user/_images/files_versioning.png
 #srv/web/owncloud/core/doc/user/_images/full_name.png
-#srv/web/owncloud/core/doc/user/_images/gnome3_nautilus_webdav.png
+#srv/web/owncloud/core/doc/user/_images/gear.png
 #srv/web/owncloud/core/doc/user/_images/kdes.png
 #srv/web/owncloud/core/doc/user/_images/kdes1.png
 #srv/web/owncloud/core/doc/user/_images/kdes2.png
@@ -9484,6 +9422,10 @@ srv/web/owncloud
 #srv/web/owncloud/core/doc/user/_images/users-share-local.png
 #srv/web/owncloud/core/doc/user/_images/users-share-local2.png
 #srv/web/owncloud/core/doc/user/_images/users-share-public.png
+#srv/web/owncloud/core/doc/user/_images/users-share-public2.jpg
+#srv/web/owncloud/core/doc/user/_images/users-share-public3.jpg
+#srv/web/owncloud/core/doc/user/_images/webdav_dolphin.png
+#srv/web/owncloud/core/doc/user/_images/webdav_gnome3_nautilus.png
 #srv/web/owncloud/core/doc/user/_sources
 #srv/web/owncloud/core/doc/user/_sources/bookmarks.txt
 #srv/web/owncloud/core/doc/user/_sources/contents.txt
@@ -9502,7 +9444,6 @@ srv/web/owncloud
 #srv/web/owncloud/core/doc/user/_sources/files/sync.txt
 #srv/web/owncloud/core/doc/user/_sources/files/versioncontrol.txt
 #srv/web/owncloud/core/doc/user/_sources/index.txt
-#srv/web/owncloud/core/doc/user/_sources/installing_apps.txt
 #srv/web/owncloud/core/doc/user/_sources/pim
 #srv/web/owncloud/core/doc/user/_sources/pim/calendar.txt
 #srv/web/owncloud/core/doc/user/_sources/pim/contacts.txt
@@ -9564,7 +9505,6 @@ srv/web/owncloud
 #srv/web/owncloud/core/doc/user/files/versioncontrol.html
 #srv/web/owncloud/core/doc/user/genindex.html
 #srv/web/owncloud/core/doc/user/index.html
-#srv/web/owncloud/core/doc/user/installing_apps.html
 #srv/web/owncloud/core/doc/user/objects.inv
 #srv/web/owncloud/core/doc/user/pim
 #srv/web/owncloud/core/doc/user/pim/calendar.html
@@ -9840,7 +9780,6 @@ srv/web/owncloud
 #srv/web/owncloud/core/js/placeholders.js
 #srv/web/owncloud/core/js/select2
 #srv/web/owncloud/core/js/select2/LICENSE
-#srv/web/owncloud/core/js/select2/README.md
 #srv/web/owncloud/core/js/select2/bower.json
 #srv/web/owncloud/core/js/select2/component.json
 #srv/web/owncloud/core/js/select2/composer.json
@@ -10083,6 +10022,8 @@ srv/web/owncloud
 #srv/web/owncloud/core/templates/untrustedDomain.php
 #srv/web/owncloud/core/templates/update.admin.php
 #srv/web/owncloud/core/templates/update.user.php
+#srv/web/owncloud/core/user
+#srv/web/owncloud/core/user/controller.php
 #srv/web/owncloud/cron.php
 #srv/web/owncloud/data
 #srv/web/owncloud/db_structure.xml
@@ -11650,7 +11591,6 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/tzm.php
 #srv/web/owncloud/lib/l10n/ug.php
 #srv/web/owncloud/lib/l10n/uk.php
-#srv/web/owncloud/lib/l10n/ur.php
 #srv/web/owncloud/lib/l10n/ur_PK.php
 #srv/web/owncloud/lib/l10n/uz.php
 #srv/web/owncloud/lib/l10n/vi.php
@@ -11897,7 +11837,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/preview
 #srv/web/owncloud/lib/private/preview.php
 #srv/web/owncloud/lib/private/preview/image.php
-#srv/web/owncloud/lib/private/preview/movies.php
+#srv/web/owncloud/lib/private/preview/movie.php
 #srv/web/owncloud/lib/private/preview/mp3.php
 #srv/web/owncloud/lib/private/preview/office-cl.php
 #srv/web/owncloud/lib/private/preview/office.php
@@ -11923,7 +11863,11 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/search/result/file.php
 #srv/web/owncloud/lib/private/search/result/folder.php
 #srv/web/owncloud/lib/private/search/result/image.php
+#srv/web/owncloud/lib/private/security
+#srv/web/owncloud/lib/private/security/crypto.php
+#srv/web/owncloud/lib/private/security/stringutils.php
 #srv/web/owncloud/lib/private/server.php
+#srv/web/owncloud/lib/private/servernotavailableexception.php
 #srv/web/owncloud/lib/private/serviceunavailableexception.php
 #srv/web/owncloud/lib/private/session
 #srv/web/owncloud/lib/private/session/internal.php
@@ -11956,6 +11900,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/template/resourcelocator.php
 #srv/web/owncloud/lib/private/template/templatefilelocator.php
 #srv/web/owncloud/lib/private/templatelayout.php
+#srv/web/owncloud/lib/private/tempmanager.php
 #srv/web/owncloud/lib/private/updater.php
 #srv/web/owncloud/lib/private/urlgenerator.php
 #srv/web/owncloud/lib/private/user
@@ -11967,6 +11912,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/user/http.php
 #srv/web/owncloud/lib/private/user/interface.php
 #srv/web/owncloud/lib/private/user/manager.php
+#srv/web/owncloud/lib/private/user/nouserexception.php
 #srv/web/owncloud/lib/private/user/session.php
 #srv/web/owncloud/lib/private/user/user.php
 #srv/web/owncloud/lib/private/util.php
@@ -12057,6 +12003,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/public/isession.php
 #srv/web/owncloud/lib/public/itagmanager.php
 #srv/web/owncloud/lib/public/itags.php
+#srv/web/owncloud/lib/public/itempmanager.php
 #srv/web/owncloud/lib/public/iurlgenerator.php
 #srv/web/owncloud/lib/public/iuser.php
 #srv/web/owncloud/lib/public/iusermanager.php
@@ -12069,6 +12016,9 @@ srv/web/owncloud
 #srv/web/owncloud/lib/public/search
 #srv/web/owncloud/lib/public/search/provider.php
 #srv/web/owncloud/lib/public/search/result.php
+#srv/web/owncloud/lib/public/security
+#srv/web/owncloud/lib/public/security/icrypto.php
+#srv/web/owncloud/lib/public/security/stringutils.php
 #srv/web/owncloud/lib/public/share.php
 #srv/web/owncloud/lib/public/template.php
 #srv/web/owncloud/lib/public/user.php
@@ -12078,6 +12028,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/repair/collation.php
 #srv/web/owncloud/lib/repair/innodb.php
 #srv/web/owncloud/lib/repair/preview.php
+#srv/web/owncloud/lib/repair/repairconfig.php
 #srv/web/owncloud/lib/repair/repairmimetypes.php
 #srv/web/owncloud/lib/repair/searchlucenetables.php
 #srv/web/owncloud/occ
diff --git a/config/rootfiles/packages/perl-Authen-SASL b/config/rootfiles/packages/perl-Authen-SASL
new file mode 100644 (file)
index 0000000..a44b726
--- /dev/null
@@ -0,0 +1,28 @@
+#usr/lib/perl5/site_perl/5.12.3/Authen
+#usr/lib/perl5/site_perl/5.12.3/Authen/SASL
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL.pm
+#usr/lib/perl5/site_perl/5.12.3/Authen/SASL.pod
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/CRAM_MD5.pm
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/EXTERNAL.pm
+#usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl.pm
+#usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl.pod
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl/ANONYMOUS.pm
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl/CRAM_MD5.pm
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl/DIGEST_MD5.pm
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl/EXTERNAL.pm
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl/GSSAPI.pm
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl/LOGIN.pm
+usr/lib/perl5/site_perl/5.12.3/Authen/SASL/Perl/PLAIN.pm
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Authen
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Authen/SASL
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Authen/SASL/.packlist
+#usr/share/man/man3/Authen::SASL.3
+#usr/share/man/man3/Authen::SASL::Perl.3
+#usr/share/man/man3/Authen::SASL::Perl::ANONYMOUS.3
+#usr/share/man/man3/Authen::SASL::Perl::CRAM_MD5.3
+#usr/share/man/man3/Authen::SASL::Perl::DIGEST_MD5.3
+#usr/share/man/man3/Authen::SASL::Perl::EXTERNAL.3
+#usr/share/man/man3/Authen::SASL::Perl::GSSAPI.3
+#usr/share/man/man3/Authen::SASL::Perl::LOGIN.3
+#usr/share/man/man3/Authen::SASL::Perl::PLAIN.3
diff --git a/config/rootfiles/packages/perl-MIME-Base64 b/config/rootfiles/packages/perl-MIME-Base64
new file mode 100644 (file)
index 0000000..59ca61f
--- /dev/null
@@ -0,0 +1,7 @@
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/MIME
+usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/MIME/Base64.pm
+usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/MIME/QuotedPrint.pm
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/MIME/Base64
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/MIME/Base64/.packlist
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/MIME/Base64/Base64.bs
+usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/MIME/Base64/Base64.so
diff --git a/config/rootfiles/packages/perl-Net-SMTP-SSL b/config/rootfiles/packages/perl-Net-SMTP-SSL
new file mode 100644 (file)
index 0000000..c39425e
--- /dev/null
@@ -0,0 +1,6 @@
+#usr/lib/perl5/site_perl/5.12.3/Net/SMTP
+usr/lib/perl5/site_perl/5.12.3/Net/SMTP/SSL.pm
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Net/SMTP
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Net/SMTP/SSL
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Net/SMTP/SSL/.packlist
+#usr/share/man/man3/Net::SMTP::SSL.3
index c347bb8a3b84ee0e4264c17c3d22e37594c3a956..bc4739d0b781f902b595b9cb7f27a279a2632f62 100644 (file)
@@ -68,7 +68,7 @@ usr/sbin/postmap
 usr/sbin/postmulti
 usr/sbin/postqueue
 usr/sbin/postsuper
-usr/sbin/sendmail
+usr/sbin/sendmail.postfix
 #usr/share/man/man1/mailq.1
 #usr/share/man/man1/newaliases.1
 #usr/share/man/man1/postalias.1
index 1bf6f250d8d0b60365d0eaa4da6225c80942501a..b7d2550a6e1b7a5fcdc4a1e63afd226e2c2ac761 100644 (file)
@@ -1,17 +1,22 @@
-usr/bin/powertop
-#usr/share/locale/de/LC_MESSAGES/powertop.mo
-#usr/share/locale/es/LC_MESSAGES/powertop.mo
-#usr/share/locale/fi/LC_MESSAGES/powertop.mo
-#usr/share/locale/fr/LC_MESSAGES/powertop.mo
-#usr/share/locale/hu/LC_MESSAGES/powertop.mo
-#usr/share/locale/id/LC_MESSAGES/powertop.mo
-#usr/share/locale/it/LC_MESSAGES/powertop.mo
-#usr/share/locale/ja/LC_MESSAGES/powertop.mo
-#usr/share/locale/nl/LC_MESSAGES/powertop.mo
-#usr/share/locale/pl/LC_MESSAGES/powertop.mo
-#usr/share/locale/pt_BR/LC_MESSAGES/powertop.mo
-#usr/share/locale/ro/LC_MESSAGES/powertop.mo
-#usr/share/locale/ru/LC_MESSAGES/powertop.mo
-#usr/share/locale/zh_CN/LC_MESSAGES/powertop.mo
+usr/sbin/powertop
+#usr/share/locale/ca/LC_MESSAGES/powertop.mo
+#usr/share/locale/cs_CZ/LC_MESSAGES/powertop.mo
+#usr/share/locale/de_DE
+#usr/share/locale/de_DE/LC_MESSAGES
+#usr/share/locale/de_DE/LC_MESSAGES/powertop.mo
+#usr/share/locale/en_GB/LC_MESSAGES/powertop.mo
+#usr/share/locale/en_US/LC_MESSAGES/powertop.mo
+#usr/share/locale/es_ES
+#usr/share/locale/es_ES/LC_MESSAGES
+#usr/share/locale/es_ES/LC_MESSAGES/powertop.mo
+#usr/share/locale/hu_HU
+#usr/share/locale/hu_HU/LC_MESSAGES
+#usr/share/locale/hu_HU/LC_MESSAGES/powertop.mo
+#usr/share/locale/id_ID
+#usr/share/locale/id_ID/LC_MESSAGES
+#usr/share/locale/id_ID/LC_MESSAGES/powertop.mo
+#usr/share/locale/nl_NL
+#usr/share/locale/nl_NL/LC_MESSAGES
+#usr/share/locale/nl_NL/LC_MESSAGES/powertop.mo
 #usr/share/locale/zh_TW/LC_MESSAGES/powertop.mo
-#usr/share/man/man8/powertop.8.gz
+#usr/share/man/man8/powertop.8
index 50620663a059e9de2d0e63f90798c5d8b6c0a292..482087b7b20688744cd1e53a6df0b855b8465dc5 100644 (file)
@@ -1,25 +1,40 @@
-#etc/qemu
-etc/qemu/target-x86_64.conf
 usr/bin/qemu
+usr/bin/qemu-arm
 usr/bin/qemu-ga
 usr/bin/qemu-i386
 usr/bin/qemu-img
 usr/bin/qemu-io
 usr/bin/qemu-nbd
 usr/bin/qemu-system-arm
+usr/bin/qemu-system-i386
+usr/bin/qemu-system-x86_64
+usr/bin/qemu-x86_64
+usr/libexec/qemu-bridge-helper
 #usr/share/doc/qemu
 #usr/share/doc/qemu/qemu-doc.html
 #usr/share/doc/qemu/qemu-tech.html
+#usr/share/doc/qemu/qmp-commands.txt
 #usr/share/man/man1/qemu-img.1
 #usr/share/man/man1/qemu.1
 #usr/share/man/man8/qemu-nbd.8
-usr/share/qemu
+#usr/share/qemu
+usr/share/qemu/QEMU,cgthree.bin
+usr/share/qemu/QEMU,tcx.bin
+usr/share/qemu/acpi-dsdt.aml
 usr/share/qemu/bamboo.dtb
+usr/share/qemu/bios-256k.bin
 usr/share/qemu/bios.bin
-usr/share/qemu/extboot.bin
+usr/share/qemu/efi-e1000.rom
+usr/share/qemu/efi-eepro100.rom
+usr/share/qemu/efi-ne2k_pci.rom
+usr/share/qemu/efi-pcnet.rom
+usr/share/qemu/efi-rtl8139.rom
+usr/share/qemu/efi-virtio.rom
 usr/share/qemu/keymaps
 usr/share/qemu/keymaps/ar
+usr/share/qemu/keymaps/bepo
 usr/share/qemu/keymaps/common
+usr/share/qemu/keymaps/cz
 usr/share/qemu/keymaps/da
 usr/share/qemu/keymaps/de
 usr/share/qemu/keymaps/de-ch
@@ -53,12 +68,13 @@ usr/share/qemu/keymaps/sl
 usr/share/qemu/keymaps/sv
 usr/share/qemu/keymaps/th
 usr/share/qemu/keymaps/tr
+usr/share/qemu/kvmvapic.bin
 usr/share/qemu/linuxboot.bin
-usr/share/qemu/mpc8544ds.dtb
 usr/share/qemu/multiboot.bin
 usr/share/qemu/openbios-ppc
 usr/share/qemu/openbios-sparc32
 usr/share/qemu/openbios-sparc64
+usr/share/qemu/palcode-clipper
 usr/share/qemu/petalogix-ml605.dtb
 usr/share/qemu/petalogix-s3adsp1800.dtb
 usr/share/qemu/ppc_rom.bin
@@ -68,12 +84,21 @@ usr/share/qemu/pxe-ne2k_pci.rom
 usr/share/qemu/pxe-pcnet.rom
 usr/share/qemu/pxe-rtl8139.rom
 usr/share/qemu/pxe-virtio.rom
+usr/share/qemu/q35-acpi-dsdt.aml
+usr/share/qemu/qemu-icon.bmp
+usr/share/qemu/qemu_logo_no_text.svg
+usr/share/qemu/s390-ccw.img
 usr/share/qemu/s390-zipl.rom
+usr/share/qemu/sgabios.bin
 usr/share/qemu/slof.bin
 usr/share/qemu/spapr-rtas.bin
-usr/share/qemu/vapic.bin
+usr/share/qemu/trace-events
+usr/share/qemu/u-boot.e500
 usr/share/qemu/vgabios-cirrus.bin
 usr/share/qemu/vgabios-qxl.bin
 usr/share/qemu/vgabios-stdvga.bin
+usr/share/qemu/vgabios-virtio.bin
 usr/share/qemu/vgabios-vmware.bin
 usr/share/qemu/vgabios.bin
+#usr/var/run
+
diff --git a/config/rootfiles/packages/tripwire b/config/rootfiles/packages/tripwire
deleted file mode 100644 (file)
index b30e843..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#etc/rc.d/init.d/tripwire
-usr/local/bin/tripwirectrl
-usr/sbin/siggen
-usr/sbin/tripwire
-usr/sbin/twadmin
-usr/sbin/twprint
-var/ipfire/tripwire
-#var/ipfire/tripwire/twcfg.default
-#var/ipfire/tripwire/twcfg.txt
-#var/ipfire/tripwire/twpol.default
-#var/ipfire/tripwire/twpol.txt
-srv/web/ipfire/cgi-bin/tripwire.cgi
-var/ipfire/menu.d/EX-tripwire.menu
diff --git a/config/rootfiles/packages/x86_64/directfb b/config/rootfiles/packages/x86_64/directfb
new file mode 100644 (file)
index 0000000..1f48350
--- /dev/null
@@ -0,0 +1,249 @@
+usr/bin/dfbdump
+usr/bin/dfbfx
+usr/bin/dfbg
+usr/bin/dfbinfo
+usr/bin/dfbinput
+usr/bin/dfblayer
+usr/bin/dfbpenmount
+usr/bin/dfbscreen
+usr/bin/directfb-config
+usr/bin/directfb-csource
+usr/bin/mkdfiff
+usr/bin/mkdgiff
+#usr/include/directfb
+#usr/include/directfb-internal
+#usr/include/directfb-internal/core
+#usr/include/directfb-internal/core/clipboard.h
+#usr/include/directfb-internal/core/colorhash.h
+#usr/include/directfb-internal/core/core.h
+#usr/include/directfb-internal/core/core_parts.h
+#usr/include/directfb-internal/core/core_system.h
+#usr/include/directfb-internal/core/coredefs.h
+#usr/include/directfb-internal/core/coretypes.h
+#usr/include/directfb-internal/core/fonts.h
+#usr/include/directfb-internal/core/gfxcard.h
+#usr/include/directfb-internal/core/graphics_driver.h
+#usr/include/directfb-internal/core/input.h
+#usr/include/directfb-internal/core/input_driver.h
+#usr/include/directfb-internal/core/layer_context.h
+#usr/include/directfb-internal/core/layer_control.h
+#usr/include/directfb-internal/core/layer_region.h
+#usr/include/directfb-internal/core/layers.h
+#usr/include/directfb-internal/core/layers_internal.h
+#usr/include/directfb-internal/core/palette.h
+#usr/include/directfb-internal/core/screen.h
+#usr/include/directfb-internal/core/screens.h
+#usr/include/directfb-internal/core/screens_internal.h
+#usr/include/directfb-internal/core/state.h
+#usr/include/directfb-internal/core/surface.h
+#usr/include/directfb-internal/core/surface_buffer.h
+#usr/include/directfb-internal/core/surface_pool.h
+#usr/include/directfb-internal/core/system.h
+#usr/include/directfb-internal/core/windows.h
+#usr/include/directfb-internal/core/windows_internal.h
+#usr/include/directfb-internal/core/windowstack.h
+#usr/include/directfb-internal/core/wm.h
+#usr/include/directfb-internal/core/wm_module.h
+#usr/include/directfb-internal/devmem
+#usr/include/directfb-internal/devmem/devmem.h
+#usr/include/directfb-internal/devmem/surfacemanager.h
+#usr/include/directfb-internal/display
+#usr/include/directfb-internal/display/idirectfbdisplaylayer.h
+#usr/include/directfb-internal/display/idirectfbpalette.h
+#usr/include/directfb-internal/display/idirectfbscreen.h
+#usr/include/directfb-internal/display/idirectfbsurface.h
+#usr/include/directfb-internal/display/idirectfbsurface_layer.h
+#usr/include/directfb-internal/display/idirectfbsurface_window.h
+#usr/include/directfb-internal/fbdev
+#usr/include/directfb-internal/fbdev/agp.h
+#usr/include/directfb-internal/fbdev/fb.h
+#usr/include/directfb-internal/fbdev/fbdev.h
+#usr/include/directfb-internal/fbdev/surfacemanager.h
+#usr/include/directfb-internal/fbdev/vt.h
+#usr/include/directfb-internal/gfx
+#usr/include/directfb-internal/gfx/clip.h
+#usr/include/directfb-internal/gfx/convert.h
+#usr/include/directfb-internal/gfx/generic
+#usr/include/directfb-internal/gfx/generic/generic.h
+#usr/include/directfb-internal/gfx/util.h
+#usr/include/directfb-internal/idirectfb.h
+#usr/include/directfb-internal/input
+#usr/include/directfb-internal/input/idirectfbinputbuffer.h
+#usr/include/directfb-internal/input/idirectfbinputdevice.h
+#usr/include/directfb-internal/media
+#usr/include/directfb-internal/media/idirectfbdatabuffer.h
+#usr/include/directfb-internal/media/idirectfbfont.h
+#usr/include/directfb-internal/media/idirectfbimageprovider.h
+#usr/include/directfb-internal/media/idirectfbvideoprovider.h
+#usr/include/directfb-internal/misc
+#usr/include/directfb-internal/misc/conf.h
+#usr/include/directfb-internal/misc/gfx_util.h
+#usr/include/directfb-internal/misc/util.h
+#usr/include/directfb-internal/windows
+#usr/include/directfb-internal/windows/idirectfbwindow.h
+#usr/include/directfb/dfb_types.h
+#usr/include/directfb/dfiff.h
+#usr/include/directfb/dgiff.h
+#usr/include/directfb/direct
+#usr/include/directfb/direct/build.h
+#usr/include/directfb/direct/clock.h
+#usr/include/directfb/direct/conf.h
+#usr/include/directfb/direct/debug.h
+#usr/include/directfb/direct/direct.h
+#usr/include/directfb/direct/hash.h
+#usr/include/directfb/direct/interface.h
+#usr/include/directfb/direct/interface_implementation.h
+#usr/include/directfb/direct/list.h
+#usr/include/directfb/direct/log.h
+#usr/include/directfb/direct/mem.h
+#usr/include/directfb/direct/memcpy.h
+#usr/include/directfb/direct/messages.h
+#usr/include/directfb/direct/modules.h
+#usr/include/directfb/direct/serial.h
+#usr/include/directfb/direct/signals.h
+#usr/include/directfb/direct/stream.h
+#usr/include/directfb/direct/system.h
+#usr/include/directfb/direct/thread.h
+#usr/include/directfb/direct/trace.h
+#usr/include/directfb/direct/tree.h
+#usr/include/directfb/direct/types.h
+#usr/include/directfb/direct/utf8.h
+#usr/include/directfb/direct/util.h
+#usr/include/directfb/directfb.h
+#usr/include/directfb/directfb_keyboard.h
+#usr/include/directfb/directfb_keynames.h
+#usr/include/directfb/directfb_strings.h
+#usr/include/directfb/directfb_util.h
+#usr/include/directfb/directfb_version.h
+#usr/include/directfb/directfbgl.h
+#usr/include/directfb/fusion
+#usr/include/directfb/fusion/arena.h
+#usr/include/directfb/fusion/build.h
+#usr/include/directfb/fusion/call.h
+#usr/include/directfb/fusion/conf.h
+#usr/include/directfb/fusion/fusion.h
+#usr/include/directfb/fusion/fusion_internal.h
+#usr/include/directfb/fusion/hash.h
+#usr/include/directfb/fusion/lock.h
+#usr/include/directfb/fusion/object.h
+#usr/include/directfb/fusion/property.h
+#usr/include/directfb/fusion/protocol.h
+#usr/include/directfb/fusion/reactor.h
+#usr/include/directfb/fusion/ref.h
+#usr/include/directfb/fusion/shm
+#usr/include/directfb/fusion/shm/pool.h
+#usr/include/directfb/fusion/shm/shm.h
+#usr/include/directfb/fusion/shm/shm_internal.h
+#usr/include/directfb/fusion/shmalloc.h
+#usr/include/directfb/fusion/types.h
+#usr/include/directfb/fusion/vector.h
+#usr/lib/directfb-1.1-0
+#usr/lib/directfb-1.1-0/gfxdrivers
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_ati128.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_ati128.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_cle266.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_cle266.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_cyber5k.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_cyber5k.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_i810.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_i810.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_i830.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_i830.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_mach64.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_mach64.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_neomagic.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_neomagic.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_nsc.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_nsc.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_nvidia.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_nvidia.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_radeon.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_radeon.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_savage.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_savage.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_sdlgraphics.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_sdlgraphics.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_sh7722.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_sh7722.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_sis315.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_sis315.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_tdfx.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_tdfx.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_unichrome.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_unichrome.so
+#usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_vmware.la
+usr/lib/directfb-1.1-0/gfxdrivers/libdirectfb_vmware.so
+#usr/lib/directfb-1.1-0/inputdrivers
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_joystick.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_joystick.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_keyboard.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_keyboard.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_linux_input.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_linux_input.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_lirc.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_lirc.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_mutouch.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_mutouch.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_penmount.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_penmount.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_ps2mouse.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_ps2mouse.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_sdlinput.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_sdlinput.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_serialmouse.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_serialmouse.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_sonypi.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_sonypi.so
+#usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_wm97xx_ts.la
+usr/lib/directfb-1.1-0/inputdrivers/libdirectfb_wm97xx_ts.so
+#usr/lib/directfb-1.1-0/interfaces
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBFont
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBFont/libidirectfbfont_default.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBFont/libidirectfbfont_default.so
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBFont/libidirectfbfont_ft2.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBFont/libidirectfbfont_ft2.so
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.so
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.so
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_jpeg.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_jpeg.so
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_mpeg2.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_mpeg2.so
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_png.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_png.so
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBVideoProvider
+#usr/lib/directfb-1.1-0/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.la
+usr/lib/directfb-1.1-0/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.so
+#usr/lib/directfb-1.1-0/systems
+#usr/lib/directfb-1.1-0/systems/libdirectfb_devmem.la
+usr/lib/directfb-1.1-0/systems/libdirectfb_devmem.so
+#usr/lib/directfb-1.1-0/systems/libdirectfb_fbdev.la
+usr/lib/directfb-1.1-0/systems/libdirectfb_fbdev.so
+#usr/lib/directfb-1.1-0/systems/libdirectfb_sdl.la
+usr/lib/directfb-1.1-0/systems/libdirectfb_sdl.so
+#usr/lib/directfb-1.1-0/wm
+#usr/lib/directfb-1.1-0/wm/libdirectfbwm_default.la
+usr/lib/directfb-1.1-0/wm/libdirectfbwm_default.so
+usr/lib/libdirect-1.1.so.0
+usr/lib/libdirect-1.1.so.0.1.0
+#usr/lib/libdirect.la
+usr/lib/libdirect.so
+usr/lib/libdirectfb-1.1.so.0
+usr/lib/libdirectfb-1.1.so.0.1.0
+#usr/lib/libdirectfb.la
+usr/lib/libdirectfb.so
+usr/lib/libfusion-1.1.so.0
+usr/lib/libfusion-1.1.so.0.1.0
+#usr/lib/libfusion.la
+usr/lib/libfusion.so
+#usr/lib/pkgconfig/direct.pc
+#usr/lib/pkgconfig/directfb-internal.pc
+#usr/lib/pkgconfig/directfb.pc
+#usr/lib/pkgconfig/fusion.pc
+#usr/share/directfb-1.1.1
+usr/share/directfb-1.1.1/cursor.dat
+#usr/share/man/man1/dfbg.1
+#usr/share/man/man1/directfb-csource.1
+#usr/share/man/man5/directfbrc.5
diff --git a/config/rootfiles/packages/x86_64/vdr_dvbapi b/config/rootfiles/packages/x86_64/vdr_dvbapi
new file mode 100644 (file)
index 0000000..0748137
--- /dev/null
@@ -0,0 +1,3 @@
+etc/sysconfig/vdr-plugins.d/dvbapi.conf
+etc/vdr/plugins/dvbapi
+usr/lib/vdr/libvdr-dvbapi.so.2.0.0
diff --git a/config/tripwire/settings b/config/tripwire/settings
deleted file mode 100755 (executable)
index e69de29..0000000
diff --git a/config/tripwire/twcfg.txt b/config/tripwire/twcfg.txt
deleted file mode 100644 (file)
index 195819c..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-ROOT                   =/usr/sbin
-POLFILE                =/var/ipfire/tripwire/tw.pol
-DBFILE                 =/var/ipfire/tripwire/$(HOSTNAME).twd
-REPORTFILE             =/var/ipfire/tripwire/report/$(DATE).twr
-SITEKEYFILE            =/var/ipfire/tripwire/site.key
-LOCALKEYFILE           =/var/ipfire/tripwire/local.key
-EDITOR                 =/usr/bin/vi
-LATEPROMPTING          =false
-LOOSEDIRECTORYCHECKING =false
-MAILNOVIOLATIONS       =false
-EMAILREPORTLEVEL       =3
-REPORTLEVEL            =3
-#MAILMETHOD             =SENDMAIL
-#MAILMETHOD             =SMTP
-#SMTPHOST               =phoenix.e-vector.com
-#SMTPPORT             =25
-SYSLOGREPORTING        =false
-#MAILPROGRAM            =/usr/sbin/sendmail -oi -t
diff --git a/config/tripwire/twpol.txt b/config/tripwire/twpol.txt
deleted file mode 100644 (file)
index 9cdcce8..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-@@section GLOBAL
-TWROOT=/usr/sbin;
-TWBIN=/usr/sbin;
-TWPOL="/var/ipfire/tripwire";
-TWDB="/var/ipfire/tripwire";
-TWSKEY="/var/ipfire/tripwire";
-TWLKEY="/var/ipfire/tripwire";
-TWREPORT="/var/ipfire/tripwire/report";
-HOSTNAME=ipfire;
-
-@@section FS
-SEC_CRIT      = $(IgnoreNone)-SHa ;  # Critical files that cannot change
-SEC_CONFIG    = $(Dynamic) ;         # Config files that are changed infrequently but accessed often
-SEC_LOG       = $(Growing) ;         # Files that grow, but that should never change ownership
-SEC_INVARIANT = +tpug ;              # Directories that should never change permission or ownership
-SIG_LOW       = 33 ;                 # Non-critical files that are of minimal security impact
-SIG_MED       = 66 ;                 # Non-critical files that are of significant security impact
-SIG_HI        = 100 ;                # Critical files that are significant points of vulnerability
-
-# System Files
-
-(
-  rulename = "System Files",
-  severity = $(SIG_HI)
-)
-{
-  $(TWDB)                          -> $(SEC_CRIT) ;
-  $(TWPOL)/tw.pol                  -> $(SEC_CRIT) -i ;
-  $(TWPOL)/tw.cfg                  -> $(SEC_CRIT) -i ;
-  $(TWLKEY)/local.key              -> $(SEC_CRIT) ;
-  $(TWSKEY)/site.key               -> $(SEC_CRIT) ;
-
-  /bin                                  -> $(SEC_CRIT) ;
-  /boot                            -> $(SEC_CRIT) ;
-  /etc                             -> $(SEC_CRIT) ;
-  /etc/snort/rules/                -> $(Dynamic)  ;
-  /lib                             -> $(SEC_CRIT) ;
-  /root                            -> $(SEC_CRIT) ;
-  /root/.bash_history              -> $(Dynamic)  ;
-  /sbin                            -> $(SEC_CRIT) ;
-  /usr                             -> $(SEC_CRIT) ;
-  /usr/share/clamav                -> $(Dynamic)  ;
-  /etc/mtab                        -> $(SEC_CONFIG) -i ; # Inode number changes on any mount/unmount
-
-  #don't scan the individual reports
-  $(TWREPORT)                      -> $(SEC_CONFIG) (recurse=0) ;
-}
-
-# Commonly accessed directories that should remain static with regards to owner and group
-(
-  rulename = "Invariant Directories",
-  severity = $(SIG_MED)
-)
-{
-  /                               -> $(SEC_INVARIANT) (recurse = 0) ;
-  /home                           -> $(SEC_INVARIANT) (recurse = 0) ;
-  /tmp                            -> $(SEC_INVARIANT) ;
-}
-
-# Critical Devices
-
-(
-  rulename = "Critical devices",
-  severity = $(SIG_HI),
-  recurse = false
-)
-{
-     /dev/console                 -> $(SEC_CONFIG) -u ; # User ID may change on console login/logout.
-     /dev/initctl                 -> $(SEC_CONFIG) ;     /dev/log                     -> $(SEC_CONFIG) ;
-     /proc/modules                -> $(Device) ;
-     /proc/mounts                 -> $(Device) ;
-     /proc/filesystems            -> $(Device) ;
-     /proc/misc                   -> $(Device) ;
-     /var/log                     -> $(SEC_LOG) ;
-}
index 4f22a1e306ee105561c389fb1ded8c042275d69f..dc39ff09b3c6440ef314cf0a8d11fb9460e3cc19 100644 (file)
@@ -1,3 +1,7 @@
 # Call a script that checks for the right name of the new device.
 # If it matches the configuration it will be renamed accordingly.
 ACTION=="add", SUBSYSTEM=="net", PROGRAM="/lib/udev/network-hotplug-rename", RESULT=="?*", NAME="$result"
+
+# Call a script that will create all virtual devices for a parent device
+# that has just come up.
+ACTION=="add", SUBSYSTEM=="net", PROGRAM="/lib/udev/network-hotplug-vlan"
similarity index 60%
rename from src/initscripts/init.d/network-vlans
rename to config/udev/network-hotplug-vlan
index a6a75c35f8a85aff2e43a073b98dcb6a8bb11b11..f7b6a9de1525dc5eb35604e06f8775b18696fc26 100644 (file)
 # along with IPFire; if not, write to the Free Software                    #
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
 #                                                                          #
-# Copyright (C) 2012 IPFire Team <info@ipfire.org>                         #
+# Copyright (C) 2015 IPFire Team <info@ipfire.org>                         #
 #                                                                          #
 ############################################################################
 
+[ -n "${INTERFACE}" ] || exit 2
+
 CONFIG_FILE="/var/ipfire/ethernet/vlans"
 
 # Skip immediately if no configuration file has been found.
@@ -28,9 +30,6 @@ CONFIG_FILE="/var/ipfire/ethernet/vlans"
 
 eval $(/usr/local/bin/readhash ${CONFIG_FILE})
 
-# This is start or stop.
-action=${1}
-
 for interface in green0 red0 blue0 orange0; do
        case "${interface}" in
                green*)
@@ -55,59 +54,34 @@ for interface in green0 red0 blue0 orange0; do
                        ;;
        esac
 
-       case "${action}" in
-               start)
-                       # If no parent device has been configured, we assume
-                       # that this interface is not set up for VLANs and
-                       # silently go on.
-                       [ -z "${PARENT_DEV}" ] && continue
-
-                       # Check if the interface does already exists.
-                       # If so, we skip creating it.
-                       if [ -d "/sys/class/net/${interface}" ]; then
-                               echo "Interface ${interface} already exists." >&2
-                               continue
-                       fi
-
-                       # Check if the parent interface exists.
-                       if [ ! -d "/sys/class/net/${PARENT_DEV}" ]; then
-                               echo "${interface}: Parent device is not set or does not exist: ${PARENT_DEV}" >&2
-                               continue
-                       fi
-
-                       if [ -z "${VLAN_ID}" ]; then
-                               echo "${interface}: You did not set the VLAN ID." >&2
-                               continue
-                       fi
+       # If the parent device does not match the interface that
+       # has just come up, we will go on for the next one.
+       [ "${PARENT_DEV}" = "${INTERFACE}" ] || continue
 
-                       # Build command line.
-                       command="ip link add link ${PARENT_DEV} name ${interface}"
-                       if [ -n "${MAC_ADDRESS}" ]; then
-                               command="${command} address ${MAC_ADDRESS}"
-                       fi
-                       command="${command} type vlan id ${VLAN_ID}"
+       # Check if the interface does already exists.
+       # If so, we skip creating it.
+       if [ -d "/sys/class/net/${interface}" ]; then
+               echo "Interface ${interface} already exists." >&2
+               continue
+       fi
 
-                       echo "Creating VLAN interface ${interface}..."
-                       ${command}
+       if [ -z "${VLAN_ID}" ]; then
+               echo "${interface}: You did not set the VLAN ID." >&2
+               continue
+       fi
 
-                       # Bring up the parent device.
-                       ip link set ${PARENT_DEV} up
-                       ;;
+       # Build command line.
+       command="ip link add link ${PARENT_DEV} name ${interface}"
+       if [ -n "${MAC_ADDRESS}" ]; then
+               command="${command} address ${MAC_ADDRESS}"
+       fi
+       command="${command} type vlan id ${VLAN_ID}"
 
-               stop)
-                       if [ ! -e "/proc/net/vlan/${interface}" ]; then
-                               echo "${interface} is not a VLAN interface. Skipping."
-                               continue
-                       fi
+       echo "Creating VLAN interface ${interface}..."
+       ${command}
 
-                       echo "Removing VLAN interface ${interface}..."
-                       ip link set ${interface} down
-                       ip link delete ${interface}
-                       ;;
-               
-               *)
-                       echo "Invalid action: ${action}"
-                       exit 1
-                       ;;
-       esac
+       # Bring up the parent device.
+       ip link set ${PARENT_DEV} up
 done
+
+exit 0
index fa6ec91dd0473d696a6134e8e80ce7968a5470c8..39b9b4f0b572f9fb0c6e1a68f851e86101d9cc69 100644 (file)
@@ -8,6 +8,8 @@
 #
 use strict;
 
+require "/var/ipfire/general-functions.pl";
+
 my $make_clean = 1;
 
 my $swroot = "/var/ipfire";
@@ -72,6 +74,7 @@ unless ($blacklist_url eq '')
        if (-d $target) { system("rm -rf $target"); }
        system("mkdir $target");
 
+       &Network::setup_upstream_proxy();
        system("/usr/bin/wget -o $target/wget.log -O $blacklist $blacklist_url");
 
        if (-e $blacklist)
index 90accb3c006af286c1d56470df931d1734683a65..36603567e0ff21abd2af028d91cf27a96cf7ae14 100644 (file)
@@ -13,6 +13,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -82,6 +83,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: ccd err iroute
@@ -127,6 +129,8 @@ WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default ip
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -164,7 +168,12 @@ WARNING: translation string unused: edit network
 WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
+WARNING: translation string unused: email error
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: email subject
+WARNING: translation string unused: email success
+WARNING: translation string unused: email text
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -259,6 +268,10 @@ WARNING: translation string unused: fwhost reset
 WARNING: translation string unused: fwhost wo subnet
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: geoipblock country code
 WARNING: translation string unused: geoipblock country name
@@ -313,11 +326,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -334,6 +350,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -474,9 +492,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -504,8 +524,11 @@ WARNING: translation string unused: shaping list options
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -580,12 +603,21 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unblock
 WARNING: translation string unused: unblock all
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -643,11 +675,14 @@ WARNING: untranslated string: emerging rules
 WARNING: untranslated string: fwhost cust geoipgrp
 WARNING: untranslated string: fwhost err hostip
 WARNING: untranslated string: ike lifetime should be between 1 and 8 hours
+WARNING: untranslated string: info messages
 WARNING: untranslated string: no data
+WARNING: untranslated string: none
 WARNING: untranslated string: qos add subclass
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
 WARNING: untranslated string: show tls-auth key
+WARNING: untranslated string: vpn force mobike
 WARNING: untranslated string: vpn statistics n2n
index 1f1c78d611d429299eeece9aaa2f4a1975cf77f5..a419afa9d3b438676c617e9746bee3dfc6ecb7b5 100644 (file)
@@ -13,6 +13,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -100,6 +101,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: ccd err iroute
@@ -146,6 +148,8 @@ WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default ip
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -187,7 +191,12 @@ WARNING: translation string unused: edit network
 WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
+WARNING: translation string unused: email error
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: email subject
+WARNING: translation string unused: email success
+WARNING: translation string unused: email text
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -284,6 +293,10 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: geoipblock country code
 WARNING: translation string unused: geoipblock country name
@@ -339,11 +352,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -360,6 +376,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -501,9 +519,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -534,8 +554,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -613,12 +636,21 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unblock
 WARNING: translation string unused: unblock all
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -675,6 +707,7 @@ WARNING: untranslated string: bytes
 WARNING: untranslated string: fwhost cust geoipgrp
 WARNING: untranslated string: fwhost err hostip
 WARNING: untranslated string: ike lifetime should be between 1 and 8 hours
+WARNING: untranslated string: info messages
 WARNING: untranslated string: no data
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
index 270f1b6eee209055dc76b47af00a1ec8057cc240..f3c46504f585f8a4ec62a882e4fb88c7660db791 100644 (file)
@@ -14,6 +14,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -95,6 +96,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: cfg restart
@@ -138,6 +140,8 @@ WARNING: translation string unused: debugme
 WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -179,6 +183,7 @@ WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -232,6 +237,10 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: geoipblock country code
 WARNING: translation string unused: geoipblock country name
@@ -286,11 +295,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -307,6 +319,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -432,9 +446,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -465,8 +481,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -536,10 +555,19 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -669,6 +697,12 @@ 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: dhcp dns enable update
+WARNING: untranslated string: dhcp dns key name
+WARNING: untranslated string: dhcp dns update
+WARNING: untranslated string: dhcp dns update algo
+WARNING: untranslated string: dhcp dns update secret
+WARNING: untranslated string: dl client arch insecure
 WARNING: untranslated string: dnat address
 WARNING: untranslated string: dns servers
 WARNING: untranslated string: dnsforward
@@ -691,6 +725,22 @@ WARNING: untranslated string: drop action1
 WARNING: untranslated string: drop action2
 WARNING: untranslated string: drop forward
 WARNING: untranslated string: drop outgoing
+WARNING: untranslated string: email config
+WARNING: untranslated string: email empty field
+WARNING: untranslated string: email invalid
+WARNING: untranslated string: email invalid mailfqdn
+WARNING: untranslated string: email invalid mailip
+WARNING: untranslated string: email invalid mailport
+WARNING: untranslated string: email mailaddr
+WARNING: untranslated string: email mailpass
+WARNING: untranslated string: email mailport
+WARNING: untranslated string: email mailrcpt
+WARNING: untranslated string: email mailsender
+WARNING: untranslated string: email mailuser
+WARNING: untranslated string: email settings
+WARNING: untranslated string: email testmail
+WARNING: untranslated string: email tls
+WARNING: untranslated string: email usemail
 WARNING: untranslated string: emerging rules
 WARNING: untranslated string: encryption
 WARNING: untranslated string: entropy
@@ -880,6 +930,7 @@ WARNING: untranslated string: imsi
 WARNING: untranslated string: incoming compression in bytes per second
 WARNING: untranslated string: incoming firewall access
 WARNING: untranslated string: incoming overhead in bytes per second
+WARNING: untranslated string: info messages
 WARNING: untranslated string: integrity
 WARNING: untranslated string: invalid input for dpd delay
 WARNING: untranslated string: invalid input for dpd timeout
@@ -918,6 +969,7 @@ WARNING: untranslated string: most preferred
 WARNING: untranslated string: nameserver
 WARNING: untranslated string: no data
 WARNING: untranslated string: no hardware random number generator
+WARNING: untranslated string: none
 WARNING: untranslated string: not a valid dh key
 WARNING: untranslated string: notice
 WARNING: untranslated string: openvpn default
@@ -961,6 +1013,9 @@ WARNING: untranslated string: ovpn routes push options
 WARNING: untranslated string: p2p block
 WARNING: untranslated string: p2p block save notice
 WARNING: untranslated string: pakfire ago
+WARNING: untranslated string: pptp netconfig
+WARNING: untranslated string: pptp peer
+WARNING: untranslated string: pptp route
 WARNING: untranslated string: proxy reports
 WARNING: untranslated string: proxy reports daily
 WARNING: untranslated string: proxy reports monthly
@@ -969,12 +1024,14 @@ WARNING: untranslated string: proxy reports weekly
 WARNING: untranslated string: qos enter bandwidths
 WARNING: untranslated string: random number generator daemon
 WARNING: untranslated string: red1
+WARNING: untranslated string: required field
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
 WARNING: untranslated string: samba join a domain
 WARNING: untranslated string: samba join domain
+WARNING: untranslated string: search
 WARNING: untranslated string: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
@@ -1043,6 +1100,7 @@ WARNING: untranslated string: uptime load average
 WARNING: untranslated string: urlfilter redirect template
 WARNING: untranslated string: vendor
 WARNING: untranslated string: visit us at
+WARNING: untranslated string: vpn force mobike
 WARNING: untranslated string: vpn keyexchange
 WARNING: untranslated string: vpn statistic n2n
 WARNING: untranslated string: vpn statistic rw
index fa190de0db88e4afc6fe0bd35008fb8f68216009..38f3d26aa79b11e7c52334f5e34fad41422987d9 100644 (file)
@@ -14,6 +14,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -95,6 +96,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: cfg restart
@@ -138,6 +140,8 @@ WARNING: translation string unused: debugme
 WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -179,6 +183,7 @@ WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -232,6 +237,10 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: green interface
 WARNING: translation string unused: gz with key
@@ -283,11 +292,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -304,6 +316,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -440,9 +454,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -473,8 +489,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -544,10 +563,19 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -676,6 +704,12 @@ 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: dhcp dns enable update
+WARNING: untranslated string: dhcp dns key name
+WARNING: untranslated string: dhcp dns update
+WARNING: untranslated string: dhcp dns update algo
+WARNING: untranslated string: dhcp dns update secret
+WARNING: untranslated string: dl client arch insecure
 WARNING: untranslated string: dnat address
 WARNING: untranslated string: dns address deleted txt
 WARNING: untranslated string: dns servers
@@ -699,6 +733,22 @@ WARNING: untranslated string: drop action1
 WARNING: untranslated string: drop action2
 WARNING: untranslated string: drop forward
 WARNING: untranslated string: drop outgoing
+WARNING: untranslated string: email config
+WARNING: untranslated string: email empty field
+WARNING: untranslated string: email invalid
+WARNING: untranslated string: email invalid mailfqdn
+WARNING: untranslated string: email invalid mailip
+WARNING: untranslated string: email invalid mailport
+WARNING: untranslated string: email mailaddr
+WARNING: untranslated string: email mailpass
+WARNING: untranslated string: email mailport
+WARNING: untranslated string: email mailrcpt
+WARNING: untranslated string: email mailsender
+WARNING: untranslated string: email mailuser
+WARNING: untranslated string: email settings
+WARNING: untranslated string: email testmail
+WARNING: untranslated string: email tls
+WARNING: untranslated string: email usemail
 WARNING: untranslated string: emerging rules
 WARNING: untranslated string: encryption
 WARNING: untranslated string: entropy
@@ -895,6 +945,7 @@ WARNING: untranslated string: imsi
 WARNING: untranslated string: incoming compression in bytes per second
 WARNING: untranslated string: incoming firewall access
 WARNING: untranslated string: incoming overhead in bytes per second
+WARNING: untranslated string: info messages
 WARNING: untranslated string: integrity
 WARNING: untranslated string: invalid input for dpd delay
 WARNING: untranslated string: invalid input for dpd timeout
@@ -933,6 +984,7 @@ WARNING: untranslated string: most preferred
 WARNING: untranslated string: nameserver
 WARNING: untranslated string: no data
 WARNING: untranslated string: no hardware random number generator
+WARNING: untranslated string: none
 WARNING: untranslated string: not a valid dh key
 WARNING: untranslated string: notice
 WARNING: untranslated string: ntp common settings
@@ -972,6 +1024,9 @@ WARNING: untranslated string: ovpn port in root range
 WARNING: untranslated string: p2p block
 WARNING: untranslated string: p2p block save notice
 WARNING: untranslated string: pakfire ago
+WARNING: untranslated string: pptp netconfig
+WARNING: untranslated string: pptp peer
+WARNING: untranslated string: pptp route
 WARNING: untranslated string: proxy reports
 WARNING: untranslated string: proxy reports daily
 WARNING: untranslated string: proxy reports monthly
@@ -980,12 +1035,14 @@ WARNING: untranslated string: proxy reports weekly
 WARNING: untranslated string: qos enter bandwidths
 WARNING: untranslated string: random number generator daemon
 WARNING: untranslated string: red1
+WARNING: untranslated string: required field
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
 WARNING: untranslated string: samba join a domain
 WARNING: untranslated string: samba join domain
+WARNING: untranslated string: search
 WARNING: untranslated string: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
@@ -1058,6 +1115,7 @@ WARNING: untranslated string: urlfilter mode block
 WARNING: untranslated string: urlfilter redirect template
 WARNING: untranslated string: vendor
 WARNING: untranslated string: visit us at
+WARNING: untranslated string: vpn force mobike
 WARNING: untranslated string: vpn keyexchange
 WARNING: untranslated string: vpn statistic n2n
 WARNING: untranslated string: vpn statistic rw
index c369e6c97e7f7e7bd5eeaec7348c9c183a9f9445..fd64d95641a25251e70b9bf9fcd583b2e3cea235 100644 (file)
@@ -14,6 +14,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -99,6 +100,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: ccd err iroute
@@ -145,6 +147,8 @@ WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default ip
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -187,6 +191,7 @@ WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -282,6 +287,10 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: green interface
 WARNING: translation string unused: gz with key
@@ -334,11 +343,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -355,6 +367,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -496,9 +510,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -529,8 +545,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -608,10 +627,19 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -675,6 +703,28 @@ WARNING: untranslated string: advproxy group required
 WARNING: untranslated string: application layer gateways
 WARNING: untranslated string: bytes
 WARNING: untranslated string: check all
+WARNING: untranslated string: dhcp dns enable update
+WARNING: untranslated string: dhcp dns key name
+WARNING: untranslated string: dhcp dns update
+WARNING: untranslated string: dhcp dns update algo
+WARNING: untranslated string: dhcp dns update secret
+WARNING: untranslated string: dl client arch insecure
+WARNING: untranslated string: email config
+WARNING: untranslated string: email empty field
+WARNING: untranslated string: email invalid
+WARNING: untranslated string: email invalid mailfqdn
+WARNING: untranslated string: email invalid mailip
+WARNING: untranslated string: email invalid mailport
+WARNING: untranslated string: email mailaddr
+WARNING: untranslated string: email mailpass
+WARNING: untranslated string: email mailport
+WARNING: untranslated string: email mailrcpt
+WARNING: untranslated string: email mailsender
+WARNING: untranslated string: email mailuser
+WARNING: untranslated string: email settings
+WARNING: untranslated string: email testmail
+WARNING: untranslated string: email tls
+WARNING: untranslated string: email usemail
 WARNING: untranslated string: fwdfw err concon
 WARNING: untranslated string: fwdfw err ratecon
 WARNING: untranslated string: fwdfw limitconcon
@@ -697,6 +747,7 @@ WARNING: untranslated string: geoipblock enable feature
 WARNING: untranslated string: ike lifetime should be between 1 and 8 hours
 WARNING: untranslated string: incoming compression in bytes per second
 WARNING: untranslated string: incoming overhead in bytes per second
+WARNING: untranslated string: info messages
 WARNING: untranslated string: invalid input for valid till days
 WARNING: untranslated string: masquerade blue
 WARNING: untranslated string: masquerade green
@@ -706,16 +757,23 @@ WARNING: untranslated string: masquerading disabled
 WARNING: untranslated string: masquerading enabled
 WARNING: untranslated string: messages
 WARNING: untranslated string: no data
+WARNING: untranslated string: none
 WARNING: untranslated string: outgoing compression in bytes per second
 WARNING: untranslated string: outgoing overhead in bytes per second
 WARNING: untranslated string: ovpn add conf
+WARNING: untranslated string: pptp netconfig
+WARNING: untranslated string: pptp peer
+WARNING: untranslated string: pptp route
+WARNING: untranslated string: required field
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
 WARNING: untranslated string: samba join a domain
 WARNING: untranslated string: samba join domain
+WARNING: untranslated string: search
 WARNING: untranslated string: uncheck all
+WARNING: untranslated string: vpn force mobike
 WARNING: untranslated string: vpn statistic n2n
 WARNING: untranslated string: vpn statistic rw
 WARNING: untranslated string: vpn statistics n2n
index d818973dbb811a1bd2964003fd94cedde8cbd753..8052e1ff82134eb51d511c29949ef4e36d10afb1 100644 (file)
@@ -14,6 +14,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -99,6 +100,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: ccd err iroute
@@ -145,6 +147,8 @@ WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default ip
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -186,6 +190,7 @@ WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -281,6 +286,10 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: green interface
 WARNING: translation string unused: gz with key
@@ -333,11 +342,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -354,6 +366,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -493,9 +507,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -526,8 +542,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -604,10 +623,19 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -680,6 +708,12 @@ 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: dhcp dns enable update
+WARNING: untranslated string: dhcp dns key name
+WARNING: untranslated string: dhcp dns update
+WARNING: untranslated string: dhcp dns update algo
+WARNING: untranslated string: dhcp dns update secret
+WARNING: untranslated string: dl client arch insecure
 WARNING: untranslated string: dns servers
 WARNING: untranslated string: dnssec aware
 WARNING: untranslated string: dnssec information
@@ -687,6 +721,22 @@ WARNING: untranslated string: dnssec not supported
 WARNING: untranslated string: dnssec validating
 WARNING: untranslated string: download tls-auth key
 WARNING: untranslated string: drop outgoing
+WARNING: untranslated string: email config
+WARNING: untranslated string: email empty field
+WARNING: untranslated string: email invalid
+WARNING: untranslated string: email invalid mailfqdn
+WARNING: untranslated string: email invalid mailip
+WARNING: untranslated string: email invalid mailport
+WARNING: untranslated string: email mailaddr
+WARNING: untranslated string: email mailpass
+WARNING: untranslated string: email mailport
+WARNING: untranslated string: email mailrcpt
+WARNING: untranslated string: email mailsender
+WARNING: untranslated string: email mailuser
+WARNING: untranslated string: email settings
+WARNING: untranslated string: email testmail
+WARNING: untranslated string: email tls
+WARNING: untranslated string: email usemail
 WARNING: untranslated string: firewall logs country
 WARNING: untranslated string: fwdfw err concon
 WARNING: untranslated string: fwdfw err ratecon
@@ -714,6 +764,7 @@ WARNING: untranslated string: imei
 WARNING: untranslated string: imsi
 WARNING: untranslated string: incoming compression in bytes per second
 WARNING: untranslated string: incoming overhead in bytes per second
+WARNING: untranslated string: info messages
 WARNING: untranslated string: invalid input for valid till days
 WARNING: untranslated string: masquerade blue
 WARNING: untranslated string: masquerade green
@@ -738,6 +789,7 @@ WARNING: untranslated string: modem status
 WARNING: untranslated string: monitor interface
 WARNING: untranslated string: nameserver
 WARNING: untranslated string: no data
+WARNING: untranslated string: none
 WARNING: untranslated string: not a valid dh key
 WARNING: untranslated string: outgoing compression in bytes per second
 WARNING: untranslated string: outgoing overhead in bytes per second
@@ -750,13 +802,18 @@ WARNING: untranslated string: ovpn dh upload
 WARNING: untranslated string: ovpn generating the root and host certificates
 WARNING: untranslated string: ovpn ha
 WARNING: untranslated string: ovpn hmac
+WARNING: untranslated string: pptp netconfig
+WARNING: untranslated string: pptp peer
+WARNING: untranslated string: pptp route
 WARNING: untranslated string: random number generator daemon
+WARNING: untranslated string: required field
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
 WARNING: untranslated string: samba join a domain
 WARNING: untranslated string: samba join domain
+WARNING: untranslated string: search
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
 WARNING: untranslated string: software version
@@ -765,6 +822,7 @@ WARNING: untranslated string: ta key
 WARNING: untranslated string: uncheck all
 WARNING: untranslated string: upload dh key
 WARNING: untranslated string: vendor
+WARNING: untranslated string: vpn force mobike
 WARNING: untranslated string: vpn statistic n2n
 WARNING: untranslated string: vpn statistic rw
 WARNING: untranslated string: vpn statistics n2n
index 270f1b6eee209055dc76b47af00a1ec8057cc240..f3c46504f585f8a4ec62a882e4fb88c7660db791 100644 (file)
@@ -14,6 +14,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -95,6 +96,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: cfg restart
@@ -138,6 +140,8 @@ WARNING: translation string unused: debugme
 WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -179,6 +183,7 @@ WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -232,6 +237,10 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: geoipblock country code
 WARNING: translation string unused: geoipblock country name
@@ -286,11 +295,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -307,6 +319,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -432,9 +446,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -465,8 +481,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -536,10 +555,19 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -669,6 +697,12 @@ 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: dhcp dns enable update
+WARNING: untranslated string: dhcp dns key name
+WARNING: untranslated string: dhcp dns update
+WARNING: untranslated string: dhcp dns update algo
+WARNING: untranslated string: dhcp dns update secret
+WARNING: untranslated string: dl client arch insecure
 WARNING: untranslated string: dnat address
 WARNING: untranslated string: dns servers
 WARNING: untranslated string: dnsforward
@@ -691,6 +725,22 @@ WARNING: untranslated string: drop action1
 WARNING: untranslated string: drop action2
 WARNING: untranslated string: drop forward
 WARNING: untranslated string: drop outgoing
+WARNING: untranslated string: email config
+WARNING: untranslated string: email empty field
+WARNING: untranslated string: email invalid
+WARNING: untranslated string: email invalid mailfqdn
+WARNING: untranslated string: email invalid mailip
+WARNING: untranslated string: email invalid mailport
+WARNING: untranslated string: email mailaddr
+WARNING: untranslated string: email mailpass
+WARNING: untranslated string: email mailport
+WARNING: untranslated string: email mailrcpt
+WARNING: untranslated string: email mailsender
+WARNING: untranslated string: email mailuser
+WARNING: untranslated string: email settings
+WARNING: untranslated string: email testmail
+WARNING: untranslated string: email tls
+WARNING: untranslated string: email usemail
 WARNING: untranslated string: emerging rules
 WARNING: untranslated string: encryption
 WARNING: untranslated string: entropy
@@ -880,6 +930,7 @@ WARNING: untranslated string: imsi
 WARNING: untranslated string: incoming compression in bytes per second
 WARNING: untranslated string: incoming firewall access
 WARNING: untranslated string: incoming overhead in bytes per second
+WARNING: untranslated string: info messages
 WARNING: untranslated string: integrity
 WARNING: untranslated string: invalid input for dpd delay
 WARNING: untranslated string: invalid input for dpd timeout
@@ -918,6 +969,7 @@ WARNING: untranslated string: most preferred
 WARNING: untranslated string: nameserver
 WARNING: untranslated string: no data
 WARNING: untranslated string: no hardware random number generator
+WARNING: untranslated string: none
 WARNING: untranslated string: not a valid dh key
 WARNING: untranslated string: notice
 WARNING: untranslated string: openvpn default
@@ -961,6 +1013,9 @@ WARNING: untranslated string: ovpn routes push options
 WARNING: untranslated string: p2p block
 WARNING: untranslated string: p2p block save notice
 WARNING: untranslated string: pakfire ago
+WARNING: untranslated string: pptp netconfig
+WARNING: untranslated string: pptp peer
+WARNING: untranslated string: pptp route
 WARNING: untranslated string: proxy reports
 WARNING: untranslated string: proxy reports daily
 WARNING: untranslated string: proxy reports monthly
@@ -969,12 +1024,14 @@ WARNING: untranslated string: proxy reports weekly
 WARNING: untranslated string: qos enter bandwidths
 WARNING: untranslated string: random number generator daemon
 WARNING: untranslated string: red1
+WARNING: untranslated string: required field
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
 WARNING: untranslated string: samba join a domain
 WARNING: untranslated string: samba join domain
+WARNING: untranslated string: search
 WARNING: untranslated string: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
@@ -1043,6 +1100,7 @@ WARNING: untranslated string: uptime load average
 WARNING: untranslated string: urlfilter redirect template
 WARNING: untranslated string: vendor
 WARNING: untranslated string: visit us at
+WARNING: untranslated string: vpn force mobike
 WARNING: untranslated string: vpn keyexchange
 WARNING: untranslated string: vpn statistic n2n
 WARNING: untranslated string: vpn statistic rw
index b4d702b3389dacfe0ed1d2e39d61bc0b80dac859..b9dd90c2160e6064643c81322cea95b1a3f2f7d1 100644 (file)
@@ -14,6 +14,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -95,6 +96,7 @@ WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: cfg restart
@@ -137,6 +139,8 @@ WARNING: translation string unused: debugme
 WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -178,6 +182,7 @@ WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -228,6 +233,10 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
 WARNING: translation string unused: green interface
 WARNING: translation string unused: gz with key
@@ -278,11 +287,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -299,6 +311,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -434,9 +448,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -467,8 +483,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -538,10 +557,19 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -670,7 +698,13 @@ 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: dhcp dns enable update
+WARNING: untranslated string: dhcp dns key name
+WARNING: untranslated string: dhcp dns update
+WARNING: untranslated string: dhcp dns update algo
+WARNING: untranslated string: dhcp dns update secret
 WARNING: untranslated string: disk access per
+WARNING: untranslated string: dl client arch insecure
 WARNING: untranslated string: dnat address
 WARNING: untranslated string: dns servers
 WARNING: untranslated string: dnsforward
@@ -693,6 +727,22 @@ WARNING: untranslated string: drop action1
 WARNING: untranslated string: drop action2
 WARNING: untranslated string: drop forward
 WARNING: untranslated string: drop outgoing
+WARNING: untranslated string: email config
+WARNING: untranslated string: email empty field
+WARNING: untranslated string: email invalid
+WARNING: untranslated string: email invalid mailfqdn
+WARNING: untranslated string: email invalid mailip
+WARNING: untranslated string: email invalid mailport
+WARNING: untranslated string: email mailaddr
+WARNING: untranslated string: email mailpass
+WARNING: untranslated string: email mailport
+WARNING: untranslated string: email mailrcpt
+WARNING: untranslated string: email mailsender
+WARNING: untranslated string: email mailuser
+WARNING: untranslated string: email settings
+WARNING: untranslated string: email testmail
+WARNING: untranslated string: email tls
+WARNING: untranslated string: email usemail
 WARNING: untranslated string: emerging rules
 WARNING: untranslated string: encryption
 WARNING: untranslated string: entropy
@@ -880,6 +930,7 @@ WARNING: untranslated string: incoming compression in bytes per second
 WARNING: untranslated string: incoming firewall access
 WARNING: untranslated string: incoming overhead in bytes per second
 WARNING: untranslated string: incoming traffic in bytes per second
+WARNING: untranslated string: info messages
 WARNING: untranslated string: integrity
 WARNING: untranslated string: invalid input for dpd delay
 WARNING: untranslated string: invalid input for dpd timeout
@@ -918,6 +969,7 @@ WARNING: untranslated string: most preferred
 WARNING: untranslated string: nameserver
 WARNING: untranslated string: no data
 WARNING: untranslated string: no hardware random number generator
+WARNING: untranslated string: none
 WARNING: untranslated string: not a valid dh key
 WARNING: untranslated string: notice
 WARNING: untranslated string: openvpn default
@@ -955,6 +1007,9 @@ WARNING: untranslated string: ovpn no connections
 WARNING: untranslated string: ovpn port in root range
 WARNING: untranslated string: p2p block
 WARNING: untranslated string: p2p block save notice
+WARNING: untranslated string: pptp netconfig
+WARNING: untranslated string: pptp peer
+WARNING: untranslated string: pptp route
 WARNING: untranslated string: proxy reports
 WARNING: untranslated string: proxy reports daily
 WARNING: untranslated string: proxy reports monthly
@@ -963,12 +1018,14 @@ WARNING: untranslated string: proxy reports weekly
 WARNING: untranslated string: qos enter bandwidths
 WARNING: untranslated string: random number generator daemon
 WARNING: untranslated string: red1
+WARNING: untranslated string: required field
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
 WARNING: untranslated string: samba join a domain
 WARNING: untranslated string: samba join domain
+WARNING: untranslated string: search
 WARNING: untranslated string: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
@@ -1036,6 +1093,7 @@ WARNING: untranslated string: uptime load average
 WARNING: untranslated string: urlfilter redirect template
 WARNING: untranslated string: vendor
 WARNING: untranslated string: visit us at
+WARNING: untranslated string: vpn force mobike
 WARNING: untranslated string: vpn keyexchange
 WARNING: untranslated string: vpn statistic n2n
 WARNING: untranslated string: vpn statistic rw
index c692a46e5bfda5bbcedf19755711a61b792bcb60..b701bdf93f6a9aeb04b676741ac58461e042394b 100644 (file)
@@ -13,6 +13,7 @@ WARNING: translation string unused: Verbose
 WARNING: translation string unused: access allowed
 WARNING: translation string unused: access refused with this oinkcode
 WARNING: translation string unused: add a new rule
+WARNING: translation string unused: add cron
 WARNING: translation string unused: add network
 WARNING: translation string unused: add new ovpn
 WARNING: translation string unused: add service
@@ -93,12 +94,14 @@ WARNING: translation string unused: bewan adsl pci st
 WARNING: translation string unused: bewan adsl usb
 WARNING: translation string unused: bitrate
 WARNING: translation string unused: bleeding rules
+WARNING: translation string unused: block
 WARNING: translation string unused: blue access use hint
 WARNING: translation string unused: blue interface
 WARNING: translation string unused: cache management
 WARNING: translation string unused: cache size
 WARNING: translation string unused: calamaris report interval (in minutes)
 WARNING: translation string unused: calc traffic all x minutes
+WARNING: translation string unused: cannot enable both nat traversal and compression
 WARNING: translation string unused: cant enable xtaccess
 WARNING: translation string unused: capsinactive
 WARNING: translation string unused: ccd err iroute
@@ -145,6 +148,8 @@ WARNING: translation string unused: deep scan directories
 WARNING: translation string unused: default ip
 WARNING: translation string unused: default networks
 WARNING: translation string unused: default services
+WARNING: translation string unused: defaultwarning
+WARNING: translation string unused: delete cron
 WARNING: translation string unused: description
 WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
@@ -186,7 +191,12 @@ WARNING: translation string unused: edit network
 WARNING: translation string unused: edit service
 WARNING: translation string unused: editor
 WARNING: translation string unused: eg
+WARNING: translation string unused: email error
 WARNING: translation string unused: email server can not be empty
+WARNING: translation string unused: email subject
+WARNING: translation string unused: email success
+WARNING: translation string unused: email text
+WARNING: translation string unused: emailreportlevel
 WARNING: translation string unused: enable javascript
 WARNING: translation string unused: enable wildcards
 WARNING: translation string unused: enabled on
@@ -266,6 +276,7 @@ WARNING: translation string unused: fwhost Standard Network
 WARNING: translation string unused: fwhost attention
 WARNING: translation string unused: fwhost blue
 WARNING: translation string unused: fwhost changeremark
+WARNING: translation string unused: fwhost cust geoip
 WARNING: translation string unused: fwhost err addrgrp
 WARNING: translation string unused: fwhost err hostorip
 WARNING: translation string unused: fwhost err mac
@@ -282,7 +293,14 @@ WARNING: translation string unused: g.dtm
 WARNING: translation string unused: g.lite
 WARNING: translation string unused: gen static key
 WARNING: translation string unused: generate
+WARNING: translation string unused: generate tripwire keys and init
+WARNING: translation string unused: generatekeys
+WARNING: translation string unused: generatepolicy
+WARNING: translation string unused: generatereport
 WARNING: translation string unused: genkey
+WARNING: translation string unused: geoipblock country code
+WARNING: translation string unused: geoipblock country name
+WARNING: translation string unused: geoipblock flag
 WARNING: translation string unused: green interface
 WARNING: translation string unused: gz with key
 WARNING: translation string unused: hint
@@ -334,11 +352,14 @@ WARNING: translation string unused: javascript menu error1
 WARNING: translation string unused: javascript menu error2
 WARNING: translation string unused: kernel version
 WARNING: translation string unused: key stuff
+WARNING: translation string unused: keyreset
+WARNING: translation string unused: keys
 WARNING: translation string unused: lateprompting
 WARNING: translation string unused: length
 WARNING: translation string unused: line
 WARNING: translation string unused: loaded modules
 WARNING: translation string unused: local hard disk
+WARNING: translation string unused: localkey
 WARNING: translation string unused: localkeyfile
 WARNING: translation string unused: log enabled
 WARNING: translation string unused: log viewer
@@ -355,6 +376,8 @@ WARNING: translation string unused: ls_pam_unix
 WARNING: translation string unused: ls_sshd
 WARNING: translation string unused: ls_syslogd
 WARNING: translation string unused: mac address error not 00
+WARNING: translation string unused: mailmethod
+WARNING: translation string unused: mailprogramm
 WARNING: translation string unused: manage ovpn
 WARNING: translation string unused: manual control and status
 WARNING: translation string unused: marked
@@ -496,9 +519,11 @@ WARNING: translation string unused: refresh update list
 WARNING: translation string unused: released
 WARNING: translation string unused: removable device advice
 WARNING: translation string unused: reportfile
+WARNING: translation string unused: reportlevel
 WARNING: translation string unused: requested data
 WARNING: translation string unused: reserved dst port
 WARNING: translation string unused: reserved src port
+WARNING: translation string unused: resetpolicy
 WARNING: translation string unused: restore hardware settings
 WARNING: translation string unused: root
 WARNING: translation string unused: root path
@@ -529,8 +554,11 @@ WARNING: translation string unused: show lines
 WARNING: translation string unused: shutdown ask
 WARNING: translation string unused: shutdown sure
 WARNING: translation string unused: shutdown2
+WARNING: translation string unused: sitekey
 WARNING: translation string unused: sitekeyfile
 WARNING: translation string unused: smbreload
+WARNING: translation string unused: smtphost
+WARNING: translation string unused: smtpport
 WARNING: translation string unused: source ip bad
 WARNING: translation string unused: source ip in use
 WARNING: translation string unused: source ip or net
@@ -608,10 +636,21 @@ WARNING: translation string unused: trafficsum
 WARNING: translation string unused: trafficto
 WARNING: translation string unused: transfer limits
 WARNING: translation string unused: transparent on
+WARNING: translation string unused: tripwire
+WARNING: translation string unused: tripwire cronjob
+WARNING: translation string unused: tripwire functions
+WARNING: translation string unused: tripwire reports
+WARNING: translation string unused: tripwireoperating
+WARNING: translation string unused: tripwirewarningdatabase
+WARNING: translation string unused: tripwirewarningkeys
+WARNING: translation string unused: tripwirewarningpolicy
 WARNING: translation string unused: umount
 WARNING: translation string unused: umount removable media before to unplug
+WARNING: translation string unused: unblock
+WARNING: translation string unused: unblock all
 WARNING: translation string unused: unencrypted
 WARNING: translation string unused: update transcript
+WARNING: translation string unused: updatedatabase
 WARNING: translation string unused: updates
 WARNING: translation string unused: updates is old1
 WARNING: translation string unused: updates is old2
@@ -666,33 +705,13 @@ WARNING: translation string unused: yearly firewallhits
 WARNING: untranslated string: Scan for Songs
 WARNING: untranslated string: application layer gateways
 WARNING: untranslated string: bytes
-WARNING: untranslated string: check all
-WARNING: untranslated string: fwhost addgeoipgrp
-WARNING: untranslated string: fwhost cust geoipgroup
 WARNING: untranslated string: fwhost cust geoipgrp
-WARNING: untranslated string: fwhost cust geoiplocation
 WARNING: untranslated string: fwhost err hostip
-WARNING: untranslated string: fwhost newgeoipgrp
-WARNING: untranslated string: geoip
-WARNING: untranslated string: geoipblock
-WARNING: untranslated string: geoipblock block countries
-WARNING: untranslated string: geoipblock configuration
-WARNING: untranslated string: geoipblock country is allowed
-WARNING: untranslated string: geoipblock country is blocked
-WARNING: untranslated string: geoipblock enable feature
 WARNING: untranslated string: ike lifetime should be between 1 and 8 hours
-WARNING: untranslated string: incoming compression in bytes per second
-WARNING: untranslated string: incoming overhead in bytes per second
-WARNING: untranslated string: invalid input for valid till days
+WARNING: untranslated string: info messages
 WARNING: untranslated string: no data
-WARNING: untranslated string: outgoing compression in bytes per second
-WARNING: untranslated string: outgoing overhead in bytes per second
-WARNING: untranslated string: ovpn add conf
 WARNING: untranslated string: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
-WARNING: untranslated string: uncheck all
-WARNING: untranslated string: vpn statistic n2n
-WARNING: untranslated string: vpn statistic rw
 WARNING: untranslated string: vpn statistics n2n
index 21aa756c63322782e90cf29231bfa2e98e238f53..32e1e48ecc43d8d8f6774a23363397606fcc8ab4 100644 (file)
 < deprecated fs warn
 < details
 < dh
+< dhcp dns enable update
+< dhcp dns key name
+< dhcp dns update
+< dhcp dns update algo
+< dhcp dns update secret
 < dh key move failed
 < dh key warn
 < dh key warn1
 < dh parameter
+< dl client arch insecure
 < dnat address
 < dns address deleted txt
 < dnsforward
 < drop action2
 < drop forward
 < drop outgoing
+< email config
+< email empty field
+< email error
+< email invalid
+< email invalid mailfqdn
+< email invalid mailip
+< email invalid mailport
+< email mailaddr
+< email mailpass
+< email mailport
+< email mailrcpt
+< email mailsender
+< email mailuser
+< email settings
+< email subject
+< email success
+< email testmail
+< email text
+< email tls
+< email usemail
 < encryption
 < entropy
 < entropy graphs
 < ovpn reneg sec
 < p2p block
 < p2p block save notice
+< pptp netconfig
+< pptp peer
+< pptp route
 < proxy reports
 < proxy reports daily
 < proxy reports monthly
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< required field
 < samba join a domain
 < samba join domain
+< search
 < server restart
 < show dh
 < snat new source ip address
 < deprecated fs warn
 < details
 < dh
+< dhcp dns enable update
+< dhcp dns key name
+< dhcp dns update
+< dhcp dns update algo
+< dhcp dns update secret
 < dh key move failed
 < dh key warn
 < dh key warn1
 < dh parameter
+< dl client arch insecure
 < dnat address
 < dnsforward
 < dnsforward add a new entry
 < drop action2
 < drop forward
 < drop outgoing
+< email config
+< email empty field
+< email error
+< email invalid
+< email invalid mailfqdn
+< email invalid mailip
+< email invalid mailport
+< email mailaddr
+< email mailpass
+< email mailport
+< email mailrcpt
+< email mailsender
+< email mailuser
+< email settings
+< email subject
+< email success
+< email testmail
+< email text
+< email tls
+< email usemail
 < encryption
 < entropy
 < entropy graphs
 < ovpn routes push options
 < p2p block
 < p2p block save notice
+< pptp netconfig
+< pptp peer
+< pptp route
 < proxy reports
 < proxy reports daily
 < proxy reports monthly
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< required field
 < samba join a domain
 < samba join domain
+< search
 < server restart
 < Set time on boot
 < show dh
 < deprecated fs warn
 < details
 < dh
+< dhcp dns enable update
+< dhcp dns key name
+< dhcp dns update
+< dhcp dns update algo
+< dhcp dns update secret
 < dh key move failed
 < dh key warn
 < dh key warn1
 < dh parameter
+< dl client arch insecure
 < dnat address
 < dnsforward
 < dnsforward add a new entry
 < drop action2
 < drop forward
 < drop outgoing
+< email config
+< email empty field
+< email error
+< email invalid
+< email invalid mailfqdn
+< email invalid mailip
+< email invalid mailport
+< email mailaddr
+< email mailpass
+< email mailport
+< email mailrcpt
+< email mailsender
+< email mailuser
+< email settings
+< email subject
+< email success
+< email testmail
+< email text
+< email tls
+< email usemail
 < encryption
 < entropy
 < entropy graphs
 < ovpn routes push options
 < p2p block
 < p2p block save notice
+< pptp netconfig
+< pptp peer
+< pptp route
 < proxy reports
 < proxy reports daily
 < proxy reports monthly
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< required field
 < samba join a domain
 < samba join domain
+< search
 < server restart
 < show dh
 < snat new source ip address
 < deprecated fs warn
 < details
 < dh
+< dhcp dns enable update
+< dhcp dns key name
+< dhcp dns update
+< dhcp dns update algo
+< dhcp dns update secret
 < dh key move failed
 < dh key warn
 < dh key warn1
 < dh parameter
 < disk access per
+< dl client arch insecure
 < dnat address
 < dnsforward
 < dnsforward add a new entry
 < drop forward
 < drop outgoing
 < Edit an existing route
+< email config
+< email empty field
+< email error
+< email invalid
+< email invalid mailfqdn
+< email invalid mailip
+< email invalid mailport
+< email mailaddr
+< email mailpass
+< email mailport
+< email mailrcpt
+< email mailsender
+< email mailuser
+< email settings
+< email subject
+< email success
+< email testmail
+< email text
+< email tls
+< email usemail
 < encryption
 < entropy
 < entropy graphs
 < ovpn reneg sec
 < p2p block
 < p2p block save notice
+< pptp netconfig
+< pptp peer
+< pptp route
 < proxy reports
 < proxy reports daily
 < proxy reports monthly
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< required field
 < samba join a domain
 < samba join domain
+< search
 < server restart
 < show dh
 < snat new source ip address
index 5c17d33e276a51c4a90bda383e2c616af012c818..96f09012b7bf3c21c3456d90eab8f20adfd91ddb 100644 (file)
@@ -261,15 +261,19 @@ close(IPSEC);
 
 foreach my $line (@ipsec) {
        my @vpn = split(',', $line);
-       my ($network, $mask) = split("/", $vpn[12]);
 
-       if (!&General::validip($mask)) {
-               $mask = ipv4_cidr2msk($mask);
-       }
+       my @subnets = split(/\|/, $vpn[12]);
+       for my $subnet (@subnets) {
+               my ($network, $mask) = split("/", $subnet);
+
+               if (!&General::validip($mask)) {
+                       $mask = ipv4_cidr2msk($mask);
+               }
 
-       push(@network, $network);
-       push(@masklen, $mask);
-       push(@colour, ${Header::colourvpn});
+               push(@network, $network);
+               push(@masklen, $mask);
+               push(@colour, ${Header::colourvpn});
+       }
 }
 
 if (-e "${General::swroot}/ovpn/n2nconf") {
@@ -540,7 +544,7 @@ foreach my $line (@conntrack) {
        $ttl = format_time($ttl);
 
        my $sip_extra;
-       if ($sip ne $sip_ret) {
+       if ($sip_ret && $sip ne $sip_ret) {
                $sip_extra = "<span style='color:#FFFFFF;'>&gt;</span> ";
                $sip_extra .= "<a href='/cgi-bin/ipinfo.cgi?ip=$sip_ret'>";
                $sip_extra .= " <span style='color:#FFFFFF;'>$sip_ret</span>";
@@ -548,7 +552,7 @@ foreach my $line (@conntrack) {
        }
 
        my $dip_extra;
-       if ($dip ne $dip_ret) {
+       if ($dip_ret && $dip ne $dip_ret) {
                $dip_extra = "<span style='color:#FFFFFF;'>&gt;</span> ";
                $dip_extra .= "<a href='/cgi-bin/ipinfo.cgi?ip=$dip_ret'>";
                $dip_extra .= " <span style='color:#FFFFFF;'>$dip_ret</span>";
@@ -661,15 +665,17 @@ sub ipcolour($) {
        my ($ip) = $_[0];
        my $found = 0;
 
-       foreach my $line (@network) {
-               if ($network[$id] eq '') {
-                       $id++;
-               } else {
-                       if (!$found && ipv4_in_network($network[$id], $masklen[$id], $ip) ) {
-                               $found = 1;
-                               $colour = $colour[$id];
+       if ($ip) {
+               foreach my $line (@network) {
+                       if ($network[$id] eq '') {
+                               $id++;
+                       } else {
+                               if (!$found && ipv4_in_network($network[$id], $masklen[$id], $ip) ) {
+                                       $found = 1;
+                                       $colour = $colour[$id];
+                               }
+                               $id++;
                        }
-                       $id++;
                }
        }
 
index c3bd0bc3ca504c0f72b7fa3b4789b3743d57002b..90aae52fbe0835421be74f51b091b1b52894fc2a 100644 (file)
@@ -275,7 +275,7 @@ print <<END
 <form method='post' name='addevent' action='$ENV{'SCRIPT_NAME'}'>
 <table width='100%' border='0' cellspacing='6' cellpadding='0'>
 <tr>
-<td width='15%' class='base'>$Lang::tr{'ConnSched time'}</td>
+<td width='15%' class='base'>$Lang::tr{'ConnSched time'}&nbsp;<img src='/blob.gif' alt='*' /></td>
 <td><select name='ACTION_HOUR'>
 END
 ;
@@ -308,7 +308,7 @@ for ($minute = 0; $minute <= 55; $minute += 5)
 print <<END
 </select></td></tr>
 <tr><td colspan='2'><br><br></td></tr>
-<tr><td width='15%' class='base'>$Lang::tr{'ConnSched action'}</td><td>
+<tr><td width='15%' class='base'>$Lang::tr{'ConnSched action'}&nbsp;<img src='/blob.gif' alt='*' /></td><td>
 <input type='radio' value='CONNECT' name='ACTION_ACTION' $checked_connect />&nbsp;<select name='ACTION_CONNECT'>
 <option value='reconnect' $selected{'reconnect'}>$Lang::tr{'ConnSched reconnect'}</option>
 <option value='dial' $selected{'dial'}>$Lang::tr{'ConnSched dial'}</option>
@@ -336,7 +336,7 @@ for ($i = 1; $i <= $CONNSCHED::maxprofiles; $i++)
 print <<END
 </select></td></tr>
 <tr><td colspan='2'><br><br></td></tr>
-<tr><td width='15%' class='base'>$Lang::tr{'ConnSched days'}</td>
+<tr><td width='15%' class='base'>$Lang::tr{'ConnSched days'}&nbsp;<img src='/blob.gif' alt='*' /></td>
 <td><input type='radio' value='DAYS' name='ACTION_DAYSTYPE' $checked_days />&nbsp;<select name='ACTION_DAYSTART'>
 END
 ;
@@ -376,13 +376,13 @@ print <<END
 &nbsp;&nbsp;<input type='checkbox' name='Sun' $checked_sun />$Lang::tr{'sunday'}
 </td></tr>
 <tr><td colspan='2'><br></td></tr>
-<tr><td width='15%' class='base'>$Lang::tr{'remark title'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+<tr><td width='15%' class='base'>$Lang::tr{'remark title'}</td>
 <td><input type='text' name='ACTION_COMMENT' size='40' value='$comment' /></td></tr></table>
 <br>
 <hr>
 <table width='100%'><tr>
   <td class='base' valign='top'><img src='/blob.gif' alt='*' /></td>
-  <td width='55%' class='base'>$Lang::tr{'this field may be blank'}</td>
+  <td width='55%' class='base'>$Lang::tr{'required field'}</td>
   <td width='40%' align='right'><input type='submit' name='SUBMIT' value='$buttontext' />
   <input type='hidden' name='ACTION' value='$hiddenvalue' /></td>
   <input type='hidden' name='UPDATE_ID' value='$cgiparams{'ID'}' /></td>
index 76035fb46d76ad0c4775e300e8d4c975dcc2b36f..f2ae81300905ee5fafb995224471cdbe5a09aa54 100644 (file)
 
 use strict;
 
-use Locale::Country;
+use Locale::Codes::Country;
 
-my $flagdir = '/srv/web/ipfire/html/images/flags';
+my $col;
 my $lines = '1';
 my $lines2 = '';
-my @flaglist=();
-my @flaglistfiles=();
-my $flag = '';
 
 require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/geoip-functions.pl";
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -40,40 +38,41 @@ require "${General::swroot}/header.pl";
 &Header::openbigbox('100%', 'left');
 
 &Header::openbox('100%', 'left', $Lang::tr{'country codes and flags'});
-print "<table class='tbl'>";
-print "<tr><th style='width=5%;'><b>$Lang::tr{'flag'}</b></th>";
-print "<th style='width=5%;'><b>$Lang::tr{'countrycode'}</b></th>";
-print "<th style='width=40%; text-align:left;'><b>$Lang::tr{'country'}</b></th>";
-print "<th>&nbsp;</th>";
-print "<th style='width=5%;'><b>$Lang::tr{'flag'}</b></th>";
-print "<th style='width=5%;'><b>$Lang::tr{'countrycode'}</b></th>";
-print "<th style='width=40%; text-align:left;'><b>$Lang::tr{'country'}</b></th></tr>";
-
-@flaglist = <$flagdir/*>;
-
-undef @flaglistfiles;
-
-foreach (@flaglist)
-{
-       if (!-d) { push(@flaglistfiles,substr($_,rindex($_,"/")+1));    }
-}
-my $col="";
-foreach $flag (@flaglistfiles)
-{
+
+print<<END;
+<table class='tbl'>
+       <tr>
+               <th style='width=5%'><b>$Lang::tr{'flag'}</b></th>
+               <th style='width=5%'><b>$Lang::tr{'countrycode'}</b></th>
+               <th style='width=40% text-align:left'><b>$Lang::tr{'country'}</b></th>
+               <th>&nbsp;</th>
+               <th style='width=5%'><b>$Lang::tr{'flag'}</b></th>
+               <th style='width=5%;'><b>$Lang::tr{'countrycode'}</b></th>
+               <th style='width=40% text-align:left;'><b>$Lang::tr{'country'}</b></th>
+       </tr>
+END
+
+# Get a list of all supported country codes.
+my @countries = Locale::Codes::Country::all_country_codes();
+
+# Loop through whole country list.
+foreach my $country (@countries) {
        $lines++;
 
-       my $flagcode = uc(substr($flag, 0, 2));
-       my $fcode = lc($flagcode);
-       my $country = Locale::Country::code2country($fcode);
-       if($fcode eq 'eu') { $country = 'Europe'; }
-       if($fcode eq 'tp') { $country = 'East Timor'; }
-       if($fcode eq 'yu') { $country = 'Yugoslavia'; }
+       # Convert country code into upper case.
+       my $country_uc = uc($country);
+
+       # Get flag icon for of the country.
+       my $flag_icon = &GeoIP::get_flag_icon($country);
+
+       # Get country name.
+       my $name = &GeoIP::get_full_country_name($country);
+
        if ($lines % 2) {
-               print "<td $col><a id='$fcode'><img src='/images/flags/$fcode.png' alt='$flagcode' title='$flagcode'/></a></td>";
-               print "<td $col>$flagcode</td>";
-               print "<td $col>$country</td></tr>\n";
-       }
-       else {
+               print "<td $col><a id='$country'><img src='$flag_icon' alt='$country_uc' title='$country_uc'/></a></td>";
+               print "<td $col>$country_uc</td>";
+               print "<td $col>$name</td></tr>\n";
+       } else {
                $lines2++;
                if($lines2 % 2) {
                        $col="style='background-color:${Header::table2colour};'";
@@ -81,25 +80,25 @@ foreach $flag (@flaglistfiles)
                        $col="style='background-color:${Header::table1colour};'";
                }
                print "<tr>";
-               print "<td $col><a id='$fcode'><img src='/images/flags/$fcode.png' alt='$flagcode' title='$flagcode'/></a></td>";
-               print "<td $col>$flagcode</td>";
-               print "<td $col>$country</td>";
+               print "<td $col><a id='$country'><img src='$flag_icon' alt='$country_uc' title='$country_uc'/></a></td>";
+               print "<td $col>$country_uc</td>";
+               print "<td $col>$name</td>";
                print "<td $col>&nbsp;</td>";
+
+               # Finish column when the last element in the array has passed and we have an uneven amount of items.
+               if ( $country eq $countries[-1] ) {
+                       print "<td $col>&nbsp;</td>\n";
+                       print "<td $col>&nbsp;</td>\n";
+                       print "<td $col>&nbsp;</td></tr>\n";
+               }
        }
 }
-
-
 print "</table>";
 &Header::closebox();
 
 &Header::closebigbox();
 
-print <<END
-<div style='text-align:center'>
-<a href='$ENV{'HTTP_REFERER'}'>$Lang::tr{'back'}</a>
-</div>
-END
-; 
+print "<div style='text-align:center'><a href='$ENV{'HTTP_REFERER'}'>$Lang::tr{'back'}</a></div>\n";
 
 &Header::closepage();
 
index 19fae9bb995585816bba61239de74b6cfb450aed..f370e80b68daa4c5d8709b490c45feb2b46a833b 100644 (file)
@@ -58,40 +58,75 @@ print <<END
 </center>
 <br><br>
 
-<p><b>Development:</b><br />
-
-Arne Fitzenreiter
-(<a href='mailto:arne.fitzenreiter\@ipfire.org'>arne.fitzenreiter\@ipfire.org</a>)  - Maintainer IPFire 2.x <br />
-Michael Tremer
-(<a href='mailto:michael.tremer\@ipfire.org'>michael.tremer\@ipfire.org</a>) - Project Leader <br />
-Christian Schmidt
-(<a href='mailto:christian.schmidt\@ipfire.org'>christian.schmidt\@ipfire.org</a>) - Vice Project Leader <br />
-Stefan Schantl
-(<a href='mailto:stefan.schantl\@ipfire.org'>stefan.schantl\@ipfire.org</a>)<br />
-Alexander Marx
-(<a href='mailto:alexander.marx\@ipfire.org'>alexander.marx\@ipfire.org</a>)<br />
-Heiner Schmeling
-(<a href='mailto:heiner.schmeling\@ipfire.org'>heiner.schmeling\@ipfire.org</a>)<br />
-Ronald Wiesinger
-(<a href='mailto:ronald.wiesinger\@ipfire.org'>ronald.wiesinger\@ipfire.org</a>)<br />
-Silvio Rechenbach
-(<a href='mailto:silvio.rechenbach\@ipfire.org'>silvio.rechenbach\@ipfire.org</a>)<br />
-Dirk Wagner
-(<a href='mailto:dirk.wagner\@ipfire.org'>dirk.wagner\@ipfire.org</a>)<br />
-Erik Kapfer
-(<a href='mailto:erik.kapfer\@ipfire.org'>erik.kapfer\@ipfire.org</a>)<br />
-Alfred Haas
-(<a href='mailto:alfred.haas\@ipfire.org'>alfred.haas\@ipfire.org</a>)<br />
-
-<p><b>Inactive:</b><br />
-
-Peter Pfeiffer
-(<a href='mailto:peter.pfeifer\@ipfire.org'>peter.pfeifer\@ipfire.org</a>)<br />
-Peter Sch&auml;lchli
-(<a href='mailto:peter.schaelchli\@ipfire.org'>peter.schaelchli\@ipfire.org</a>)<br />
-Jan Paul T&uuml;cking
-(<a href='mailto:jan.tuecking\@ipfire.org'>jan.tuecking\@ipfire.org</a>)<br />
+<p>
+       <strong>Core Developers:</strong>
 </p>
+
+<ul style="list-style: none">
+       <li>
+               Michael Tremer
+               (<a href='mailto:michael.tremer\@ipfire.org'>michael.tremer\@ipfire.org</a>)
+       </li>
+       <li>
+               Arne Fitzenreiter
+               (<a href='mailto:arne.fitzenreiter\@ipfire.org'>arne.fitzenreiter\@ipfire.org</a>)
+       </li>
+       <li>
+               Stefan Schantl
+               (<a href='mailto:stefan.schantl\@ipfire.org'>stefan.schantl\@ipfire.org</a>)
+       </li>
+       <li>
+               Alexander Marx
+               (<a href='mailto:alexander.marx\@ipfire.org'>alexander.marx\@ipfire.org</a>)
+       </li>
+</ul>
+
+<p>
+       <strong>Community Developers:</strong>
+</p>
+
+<ul style="list-style: none">
+       <li>
+               Christian Schmidt
+               (<a href='mailto:christian.schmidt\@ipfire.org'>christian.schmidt\@ipfire.org</a>)
+       </li>
+       <li>
+               Jan Paul T&uuml;cking
+               (<a href='mailto:jan.tuecking\@ipfire.org'>jan.tuecking\@ipfire.org</a>)
+       </li>
+       <li>
+               Heiner Schmeling
+               (<a href='mailto:heiner.schmeling\@ipfire.org'>heiner.schmeling\@ipfire.org</a>)
+       </li>
+       <li>
+               Ronald Wiesinger
+               (<a href='mailto:ronald.wiesinger\@ipfire.org'>ronald.wiesinger\@ipfire.org</a>)
+       </li>
+       <li>
+               Silvio Rechenbach
+               (<a href='mailto:silvio.rechenbach\@ipfire.org'>silvio.rechenbach\@ipfire.org</a>)
+       </li>
+       <li>
+               Dirk Wagner
+               (<a href='mailto:dirk.wagner\@ipfire.org'>dirk.wagner\@ipfire.org</a>)
+       </li>
+       <li>
+               Erik Kapfer
+               (<a href='mailto:erik.kapfer\@ipfire.org'>erik.kapfer\@ipfire.org</a>)
+       </li>
+       <li>
+               Alfred Haas
+               (<a href='mailto:alfred.haas\@ipfire.org'>alfred.haas\@ipfire.org</a>)
+       </li>
+       <li>
+               Peter Pfeiffer
+               (<a href='mailto:peter.pfeifer\@ipfire.org'>peter.pfeifer\@ipfire.org</a>)
+       </li>
+       <li>
+               Peter Sch&auml;lchli
+               (<a href='mailto:peter.schaelchli\@ipfire.org'>peter.schaelchli\@ipfire.org</a>)
+       </li>
+</ul>
 END
 ;
 &Header::closebox();
index 3e6f72f987838359e4d740111fc878b67d0400d0..73a41d903fae41b47024f38ce18237adca36556c 100644 (file)
@@ -44,10 +44,8 @@ my $settingsfile = "${General::swroot}/ddns/settings";
 # Config file to store the configured ddns providers.
 my $datafile = "${General::swroot}/ddns/config";
 
-# Dynamic ddns programm call.
-my @ddnsprog = ("/usr/bin/ddns", "--config",
-               "/var/ipfire/ddns/ddns.conf",
-               "update-all");
+# Call the ddnsctrl helper binary to perform the update.
+my @ddnsprog = ("/usr/local/bin/ddnsctrl", "update-all");
 
 my %settings=();
 my $errormessage = '';
index 9a7d983eefd0233693a9e647a4c692ef2ef05442..3eb5349a9f70ec7efee12ff0a40f2f5ae11041c7 100644 (file)
@@ -70,11 +70,17 @@ foreach my $itf (@ITFs) {
     $dhcpsettings{"NTP2_${itf}"} = '';
     $dhcpsettings{"NEXT_${itf}"} = '';
     $dhcpsettings{"FILE_${itf}"} = '';
+    $dhcpsettings{"DNS_UPDATE_KEY_NAME_${itf}"} = '';
+    $dhcpsettings{"DNS_UPDATE_KEY_SECRET_${itf}"} = '';
+    $dhcpsettings{"DNS_UPDATE_KEY_ALGO_${itf}"} = '';
 }
 
 $dhcpsettings{'SORT_FLEASELIST'} = 'FIPADDR';
 $dhcpsettings{'SORT_LEASELIST'} = 'IPADDR';
 
+# DNS Update settings
+$dhcpsettings{'DNS_UPDATE_ENABLED'} = 'off';
+
 #Settings2 for editing the multi-line list
 #Must not be saved with writehash !
 $dhcpsettings{'FIX_MAC'} = '';
@@ -244,7 +250,7 @@ if ($dhcpsettings{'ACTION'} eq $Lang::tr{'save'}) {
        } # enabled
     }#loop interface verify
 
-    map (delete ($dhcpsettings{$_}) ,@nosaved,'ACTION','KEY1','KEY2'); # Must not be saved 
+    map (delete ($dhcpsettings{$_}) ,@nosaved,'ACTION','KEY1','KEY2','q');     # Must not be saved
     &General::writehash($setting, \%dhcpsettings);             # Save good settings
     $dhcpsettings{'ACTION'} = $Lang::tr{'save'};               # create an 'ACTION'
     map ($dhcpsettings{$_} = '',@nosaved,'KEY1','KEY2');       # and reinit vars to empty
@@ -267,7 +273,7 @@ if ($ENV{'QUERY_STRING'} =~ /^FETHER|^FIPADDR/ ) {
        $newsort.=$Rev;
     }
     $dhcpsettings{'SORT_FLEASELIST'}=$newsort;
-    map (delete ($dhcpsettings{$_}) ,@nosaved,'ACTION','KEY1','KEY2'); # Must never be saved 
+    map (delete ($dhcpsettings{$_}) ,@nosaved,'ACTION','KEY1','KEY2', 'q');    # Must never be saved
     &General::writehash($setting, \%dhcpsettings);
     &sortcurrent2;
     $dhcpsettings{'ACTION'} = 'SORT';                  # create an 'ACTION'
@@ -438,6 +444,9 @@ if ($dhcpsettings{'ACTION'} eq $Lang::tr{'add'}.'2') {
        if ($dhcpsettings{'KEY2'} eq '') { #add or edit ?
            unshift (@current2, "$dhcpsettings{'FIX_MAC'},$dhcpsettings{'FIX_ADDR'},$dhcpsettings{'FIX_ENABLED'},$dhcpsettings{'FIX_NEXTADDR'},$dhcpsettings{'FIX_FILENAME'},$dhcpsettings{'FIX_ROOTPATH'},$dhcpsettings{'FIX_REMARK'}\n");
            &General::log($Lang::tr{'fixed ip lease added'});
+
+           # Enter edit mode
+           $dhcpsettings{'KEY2'} = $key;
        } else {
            @current2[$dhcpsettings{'KEY2'}] = "$dhcpsettings{'FIX_MAC'},$dhcpsettings{'FIX_ADDR'},$dhcpsettings{'FIX_ENABLED'},$dhcpsettings{'FIX_NEXTADDR'},$dhcpsettings{'FIX_FILENAME'},$dhcpsettings{'FIX_ROOTPATH'},$dhcpsettings{'FIX_REMARK'}\n";
            $dhcpsettings{'KEY2'} = '';       # End edit mode
@@ -544,39 +553,39 @@ print <<END
     <input type='checkbox' name='ENABLE_${itf}' $checked{'ENABLE'}{'on'} /></td>
     <td width='25%' class='base'>$Lang::tr{'ip address'}<br />$Lang::tr{'netmask'}:</td><td><b>$netsettings{"${itf}_ADDRESS"}<br />$netsettings{"${itf}_NETMASK"}</b></td>
 </tr><tr>
-    <td width='25%' class='base'>$Lang::tr{'start address'}</td>
+    <td width='25%' class='base'>$Lang::tr{'start address'}&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td width='25%'><input type='text' name='START_ADDR_${itf}' value='$dhcpsettings{"START_ADDR_${itf}"}' /></td>
-    <td width='25%' class='base'>$Lang::tr{'end address'}</td>
+    <td width='25%' class='base'>$Lang::tr{'end address'}&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td width='25%'><input type='text' name='END_ADDR_${itf}' value='$dhcpsettings{"END_ADDR_${itf}"}' /></td>
 </tr><tr>
-    <td class='base'>$Lang::tr{'default lease time'}</td>
+    <td class='base'>$Lang::tr{'default lease time'}&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='DEFAULT_LEASE_TIME_${itf}' value='$dhcpsettings{"DEFAULT_LEASE_TIME_${itf}"}' /></td>
-    <td class='base'>$Lang::tr{'max lease time'}</td>
+    <td class='base'>$Lang::tr{'max lease time'}&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='MAX_LEASE_TIME_${itf}' value='$dhcpsettings{"MAX_LEASE_TIME_${itf}"}' /></td>
 </tr><tr>
-    <td class='base'>$Lang::tr{'domain name suffix'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'domain name suffix'}</td>
     <td><input type='text' name='DOMAIN_NAME_${itf}' value='$dhcpsettings{"DOMAIN_NAME_${itf}"}' /></td>
     <td>$Lang::tr{'dhcp allow bootp'}:</td>
     <td><input type='checkbox' name='ENABLEBOOTP_${itf}' $checked{'ENABLEBOOTP'}{'on'} /></td>
 </tr><tr>
-    <td class='base'>$Lang::tr{'primary dns'}</td>
+    <td class='base'>$Lang::tr{'primary dns'}&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='DNS1_${itf}' value='$dhcpsettings{"DNS1_${itf}"}' /></td>
-    <td class='base'>$Lang::tr{'secondary dns'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'secondary dns'}</td>
     <td><input type='text' name='DNS2_${itf}' value='$dhcpsettings{"DNS2_${itf}"}' /></td>
 </tr><tr>
-    <td class='base'>$Lang::tr{'primary ntp server'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'primary ntp server'}:</td>
     <td><input type='text' name='NTP1_${itf}' value='$dhcpsettings{"NTP1_${itf}"}' /></td>
-    <td class='base'>$Lang::tr{'secondary ntp server'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'secondary ntp server'}:</td>
     <td><input type='text' name='NTP2_${itf}' value='$dhcpsettings{"NTP2_${itf}"}' /></td>
 </tr><tr>
-    <td class='base'>$Lang::tr{'primary wins server address'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'primary wins server address'}:</td>
     <td><input type='text' name='WINS1_${itf}' value='$dhcpsettings{"WINS1_${itf}"}' /></td>
-    <td class='base'>$Lang::tr{'secondary wins server address'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'secondary wins server address'}:</td>
     <td><input type='text' name='WINS2_${itf}' value='$dhcpsettings{"WINS2_${itf}"}' /></td>
 </tr><tr>
-    <td class='base'>next-server:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>next-server:</td>
     <td><input type='text' name='NEXT_${itf}' value='$dhcpsettings{"NEXT_${itf}"}' /></td>
-    <td class='base'>filename:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>filename:</td>
     <td><input type='text' name='FILE_${itf}' value='$dhcpsettings{"FILE_${itf}"}' /></td>
 </tr>
 </table>
@@ -588,11 +597,83 @@ END
 print <<END
 <table width='100%'>
 <tr>
-    <td class='base' width='25%'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td>
+    <td class='base' width='25%'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'required field'}</td>
     <td class='base' width='30%'>$warnNTPmessage</td>
     <td width='40%' align='right'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' /></td>
 </tr>
 </table>
+END
+;
+&Header::closebox();
+
+# DHCP DNS update support (RFC2136)
+&Header::openbox('100%', 'left', $Lang::tr{'dhcp dns update'});
+
+my %checked = ();
+$checked{'DNS_UPDATE_ENABLED'}{'on'} = ( $dhcpsettings{'DNS_UPDATE_ENABLED'} ne 'on') ? '' : "checked='checked'";
+
+print <<END
+<table  width='100%'>
+       <tr>
+               <td width='25%' class='boldbase'>$Lang::tr{'dhcp dns enable update'}</td>
+               <td class='base'><input type='checkbox' name='DNS_UPDATE_ENABLED' $checked{'DNS_UPDATE_ENABLED'}{'on'}>
+               </td>
+       <tr>
+</table>
+
+<table width='100%'>
+END
+;
+       my @domains = ();
+
+       # Print options for each interface.
+       foreach my $itf (@ITFs) {
+               # Check if DHCP for this interface is enabled.
+               if ($dhcpsettings{"ENABLE_${itf}"} eq 'on') {
+                       # Check for same domain name.
+                       next if ($dhcpsettings{"DOMAIN_NAME_${itf}"} ~~ @domains);
+                       my $lc_itf = lc($itf);
+
+                       # Select previously configured update algorithm.
+                       my %selected = ();
+                       $selected{'DNS_UPDATE_ALGO_${inf}'}{$dhcpsettings{'DNS_UPDATE_ALGO_${inf}'}} = 'selected';
+
+print <<END
+       <tr>
+               <td colspan='6'>&nbsp;</td>
+       </tr>
+       <tr>
+               <td colspan='6' class='boldbase'><b>$dhcpsettings{"DOMAIN_NAME_${itf}"}</b></td>
+       </tr>
+       <tr>
+               <td width='10%' class='boldbase'>$Lang::tr{'dhcp dns key name'}:</td>
+               <td width='20%'><input type='text' name='DNS_UPDATE_KEY_NAME_${itf}' value='$dhcpsettings{"DNS_UPDATE_KEY_NAME_${itf}"}'></td>
+               <td width='10%' class='boldbase' align='right'>$Lang::tr{'dhcp dns update secret'}:&nbsp;&nbsp;</td>
+               <td width='20%'><input type='password' name='DNS_UPDATE_KEY_SECRET_${itf}' value='$dhcpsettings{"DNS_UPDATE_KEY_SECRET_${itf}"}'></td>
+               <td width='10%' class='boldbase' align='right'>$Lang::tr{'dhcp dns update algo'}:&nbsp;&nbsp;</td>
+               <td width='20%'>
+                       <select name='DNS_UPDATE_KEY_ALGO_${itf}'>
+                               <!-- <option value='hmac-sha1' $selected{'DNS_UPDATE_KEY_ALGO_${itf}'}{'hmac-sha1'}>HMAC-SHA1</option> -->
+                               <option value='hmac-md5' $selected{'DNS_UPDATE_KEY_ALGO_${itf}'}{'hmac-md5'}>HMAC-MD5</option>
+                       </select>
+               </td>
+       </tr>
+END
+;
+       }
+
+       # Store configured domain based on the interface
+       # in the temporary variable.
+       push(@domains, $dhcpsettings{"DOMAIN_NAME_${itf}"});
+}
+print <<END
+</table>
+<hr>
+<table width='100%'>
+       <tr>
+               <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' /></td>
+       </tr>
+</table>
 </form>
 END
 ;
@@ -622,13 +703,13 @@ if ($opt ne '') {
 }
 print <<END
 <tr>
-    <td class='base'>$Lang::tr{'dhcp advopt name'}:</td>
+    <td class='base'>$Lang::tr{'dhcp advopt name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='ADVOPT_NAME' value='$dhcpsettings{'ADVOPT_NAME'}' size='18' /></td>
-    <td class='base'>$Lang::tr{'dhcp advopt value'}:</td>
+    <td class='base'>$Lang::tr{'dhcp advopt value'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='ADVOPT_DATA' value='$dhcpsettings{'ADVOPT_DATA'}' size='40' /></td>
 </tr>$opt<tr>
     <td class='base'>$Lang::tr{'enabled'}</td><td><input type='checkbox' name='ADVOPT_ENABLED' $checked{'ADVOPT_ENABLED'}{'on'} /></td>
-    <td class='base'>$Lang::tr{'dhcp advopt scope'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'dhcp advopt scope'}:</td>
     <td>
 END
 ;
@@ -649,7 +730,7 @@ print <<END
 <hr />
 <table width='100%'>
 <tr>
-    <td class='base' width='50%'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'dhcp advopt scope help'}</td>
+    <td class='base' width='50%'>$Lang::tr{'dhcp advopt scope help'}</td>
     <td width='50%' align='right'>
     <input type='hidden' name='ACTION' value='$Lang::tr{'add'}1' />
     <input type='submit' name='SUBMIT' value='$buttontext' />
@@ -827,29 +908,29 @@ if ($dhcpsettings{'KEY2'} ne '') {
 }
 print <<END
 <tr>
-    <td class='base'>$Lang::tr{'mac address'}:</td>
+    <td class='base'>$Lang::tr{'mac address'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='FIX_MAC' value='$dhcpsettings{'FIX_MAC'}' size='18' /></td>
-    <td class='base'>$Lang::tr{'ip address'}:</td>
+    <td class='base'>$Lang::tr{'ip address'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='FIX_ADDR' value='$dhcpsettings{'FIX_ADDR'}' size='18' /></td>
-    <td class='base'>$Lang::tr{'remark'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'remark'}:</td>
     <td><input type='text' name='FIX_REMARK' value='$dhcpsettings{'FIX_REMARK'}' size='18' /></td>
 </tr><tr>
     <td class='base'>$Lang::tr{'enabled'}</td><td><input type='checkbox' name='FIX_ENABLED' $checked{'FIX_ENABLED'}{'on'} /></td>
 </tr><tr>
     <td colspan = '3'><b>$Lang::tr{'dhcp bootp pxe data'}</b></td>
 </tr><tr>
-    <td class='base'>next-server:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>next-server:</td>
     <td><input type='text' name='FIX_NEXTADDR' value='$dhcpsettings{'FIX_NEXTADDR'}' size='18' /></td>
-    <td class='base'>filename:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>filename:</td>
     <td><input type='text' name='FIX_FILENAME' value='$dhcpsettings{'FIX_FILENAME'}' size='18' /></td>
-    <td class='base'>root path:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>root path:</td>
     <td><input type='text' name='FIX_ROOTPATH' value='$dhcpsettings{'FIX_ROOTPATH'}' size='18' /></td>
 </tr>
 </table>
 <hr />
 <table width='100%'>
 <tr>
-    <td class='base' width='50%'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td>
+    <td class='base' width='50%'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'required field'}</td>
     <td width='50%' align='right'>
        <input type='hidden' name='ACTION' value='$Lang::tr{'add'}2' />
        <input type='submit' name='SUBMIT' value='$buttontext' />
@@ -861,8 +942,26 @@ END
 ;
 #Edited line number (KEY2) passed until cleared by 'save' or 'remove' or 'new sort order'
 
+# Search for static leases
+my $search_query = $dhcpsettings{'q'};
+
+if (scalar @current2 >= 10) {
+       print <<END;
+               <form method="POST" action="#search">
+                       <a name="search"></a>
+                       <table width='100%'>
+                               <tr>
+                                       <td>
+                                               <input type="text" name="q" value="$search_query">
+                                               <input type="submit" value="$Lang::tr{'search'}">
+                                       </td>
+                               </tr>
+                       </table>
+               </form>
+END
+}
+
 print <<END
-<hr />
 <table width='100%' class='tbl'>
 <tr>
     <th width='20%' align='center'><a href='$ENV{'SCRIPT_NAME'}?FETHER'><b>$Lang::tr{'mac address'}</b></a></th>
@@ -918,6 +1017,14 @@ foreach my $line (@current2) {
        $gdesc = $Lang::tr{'click to enable'}; 
     }
 
+    # Skip all entries that do not match the search query
+    if ($search_query ne "") {
+       if (!grep(/$search_query/, @temp)) {
+               $key++;
+               next;
+       }
+    }
+
     if ($dhcpsettings{'KEY2'} eq $key) {
        print "<tr>";
        $col="bgcolor='${Header::colouryellow}'";
@@ -1102,9 +1209,19 @@ sub buildconf {
     flock(FILE, 2);
 
     # Global settings
-    print FILE "ddns-update-style none;\n";
     print FILE "deny bootp;    #default\n";
     print FILE "authoritative;\n";
+
+    # DNS Update settings
+    if ($dhcpsettings{'DNS_UPDATE_ENABLED'} eq 'on') {
+        print FILE "ddns-updates           on;\n";
+        print FILE "ddns-update-style      interim;\n";
+        print FILE "ddns-ttl               60; # 1 min\n";
+        print FILE "ignore                 client-updates;\n";
+        print FILE "update-static-leases   on;\n";
+    } else {
+        print FILE "ddns-update-style none;\n";
+    }
     
     # Write first new option definition
     foreach my $line (@current1) {
@@ -1133,12 +1250,13 @@ sub buildconf {
            }
        }# on    
     }# foreach line
+    print FILE "\n";
 
     #Subnet range definition
     foreach my $itf (@ITFs) {
        my $lc_itf=lc($itf);
        if ($dhcpsettings{"ENABLE_${itf}"} eq 'on' ){
-           print FILE "\nsubnet " . $netsettings{"${itf}_NETADDRESS"} . " netmask ". $netsettings{"${itf}_NETMASK"} . " #$itf\n";
+           print FILE "subnet " . $netsettings{"${itf}_NETADDRESS"} . " netmask ". $netsettings{"${itf}_NETMASK"} . " #$itf\n";
            print FILE "{\n";
            print FILE "\trange " . $dhcpsettings{"START_ADDR_${itf}"} . ' ' . $dhcpsettings{"END_ADDR_${itf}"}.";\n" if ($dhcpsettings{"START_ADDR_${itf}"});
            print FILE "\toption subnet-mask "   . $netsettings{"${itf}_NETMASK"} . ";\n";
@@ -1175,7 +1293,18 @@ sub buildconf {
                    }
                }# on    
            }# foreach line
-           print FILE "} #$itf\n";
+           print FILE "} #$itf\n\n";
+
+           if (($dhcpsettings{"DNS_UPDATE_ENABLED"} eq "on") && ($dhcpsettings{"DNS_UPDATE_KEY_NAME_${itf}"} ne "")) {
+               print FILE "key " . $dhcpsettings{"DNS_UPDATE_KEY_NAME_${itf}"} . " {\n";
+               print FILE "\talgorithm " . $dhcpsettings{"DNS_UPDATE_KEY_ALGO_${itf}"} . ";\n";
+               print FILE "\tsecret \"" . $dhcpsettings{"DNS_UPDATE_KEY_SECRET_${itf}"} . "\";\n";
+               print FILE "};\n\n";
+
+               print FILE "zone " . $dhcpsettings{"DOMAIN_NAME_${itf}"} . ". {\n";
+               print FILE "\tkey " . $dhcpsettings{"DNS_UPDATE_KEY_NAME_${itf}"} . ";\n";
+               print FILE "}\n\n";
+           }
 
            system ('/usr/bin/touch', "${General::swroot}/dhcp/enable_${lc_itf}");
            &General::log("DHCP on ${itf}: " . $Lang::tr{'dhcp server enabled'})
index b66fa467b25b6f6bf402c4feb112ef85ec676030..1afc55f75479940c24934a1b0346d2c5ecc2bb00 100644 (file)
@@ -207,20 +207,20 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'edit'}) {
 print <<END
 <table width='100%'>
        <tr>
-               <td width='20%' class='base'>$Lang::tr{'dnsforward zone'}:</td>
+               <td width='20%' class='base'>$Lang::tr{'dnsforward zone'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td><input type='text' name='ZONE' value='$cgiparams{'ZONE'}' size='24' /></td>
                <td width='30%' class='base'>$Lang::tr{'enabled'}<input type='checkbox' name='ENABLED' $checked{'ENABLED'}{'on'} /></td>
        </tr>
 
        <tr>
-               <td width='20%' class='base'>$Lang::tr{'dnsforward forward_server'}:</td>
+               <td width='20%' class='base'>$Lang::tr{'dnsforward forward_server'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td><input type='text' name='FORWARD_SERVER' value='$cgiparams{'FORWARD_SERVER'}' size='24' /></td>
        </tr>
 </table>
 
 <table width='100%'>
        <tr>
-               <td width ='20%' class='base'>$Lang::tr{'remark'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+               <td width ='20%' class='base'>$Lang::tr{'remark'}:</td>
                <td><input type='text' name='REMARK' value='$cgiparams{'REMARK'}' size='40' maxlength='50' /></td>
        </tr>
 </table>
@@ -229,7 +229,7 @@ print <<END
 
 <table width='100%'>
        <tr>
-               <td class='base' width='55%'><img src='/blob.gif' alt ='*' align='top' />&nbsp;$Lang::tr{'this field may be blank'}</td>
+               <td class='base' width='55%'><img src='/blob.gif' alt ='*' align='top' />&nbsp;$Lang::tr{'required field'}</td>
                <td width='40%' align='right'>
                        <input type='hidden' name='ACTION' value='$Lang::tr{'add'}' />
                        <input type='submit' name='SUBMIT' value='$buttontext' />
index c207ec74873aff8c68185fe199eb9ca30afcdb7d..8007182e9d0f079d490d1f88e6f32a5aed00a80e 100644 (file)
@@ -31,6 +31,7 @@ no warnings 'uninitialized';
 #use CGI::Carp 'fatalsToBrowser';
 
 require '/var/ipfire/general-functions.pl';
+require '/var/ipfire/network-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 require "${General::swroot}/geoip-functions.pl";
@@ -465,6 +466,9 @@ sub checksource
                        }
                }
                if ($fwdfwsettings{'isip'} eq 'on'){
+                       #remove leading zero
+                       $ip = &Network::ip_remove_zero($ip);
+
                        ##check if ip is valid
                        if (! &General::validip($ip)){
                                $errormessage.=$Lang::tr{'fwdfw err src_addr'}."<br>";
@@ -569,11 +573,15 @@ sub checktarget
                        ($ip,$subnet)=split (/\//,$fwdfwsettings{'tgt_addr'});
                        $subnet = &General::iporsubtocidr($subnet);
                }
+
                #check if only ip
                if($fwdfwsettings{'tgt_addr'}=~/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/){
                        $ip=$fwdfwsettings{'tgt_addr'};
                        $subnet='32';
                }
+               #remove leading zero
+               $ip = &Network::ip_remove_zero($ip);
+
                #check if ip is valid
                if (! &General::validip($ip)){
                        $errormessage.=$Lang::tr{'fwdfw err tgt_addr'}."<br>";
@@ -597,7 +605,7 @@ sub checktarget
                &General::readhasharray("$confighost", \%customhost);
                foreach my $grpkey (sort keys %customgrp){
                        foreach my $hostkey (sort keys %customhost){
-                               if ($customgrp{$grpkey}[2] eq $customhost{$hostkey}[0] && $customhost{$hostkey}[1] eq 'mac'){
+                               if ($customgrp{$grpkey}[2] eq $customhost{$hostkey}[0] && $customgrp{$grpkey}[2] eq $fwdfwsettings{$fwdfwsettings{'grp2'}} && $customhost{$hostkey}[1] eq 'mac'){
                                        $hint=$Lang::tr{'fwdfw hint mac'};
                                        return $hint;
                                }
index 994a50a1048c581a7259c20de4e578d59af0b62e..35afad3e446616f48c7856a15b03ec3ecb4f2d4d 100644 (file)
@@ -27,6 +27,7 @@ use Sort::Naturally;
 use CGI::Carp 'fatalsToBrowser';
 no warnings 'uninitialized';
 require '/var/ipfire/general-functions.pl';
+require '/var/ipfire/network-functions.pl';
 require "/var/ipfire/geoip-functions.pl";
 require "/usr/lib/firewall/firewall-lib.pl";
 require "${General::swroot}/lang.pl";
@@ -277,6 +278,9 @@ if ($fwhostsettings{'ACTION'} eq 'savenet' )
                &addnet;
                &viewtablenet;
        }else{
+               #convert ip if leading '0' exists
+               $fwhostsettings{'IP'} = &Network::ip_remove_zero($fwhostsettings{'IP'});
+
                #check valid ip 
                if (!&General::validipandmask($fwhostsettings{'IP'}."/".$fwhostsettings{'SUBNET'}))
                {
@@ -372,9 +376,6 @@ if ($fwhostsettings{'ACTION'} eq 'savenet' )
                        foreach my $i (0 .. 3) { $customnetwork{$key}[$i] = "";}
                        $fwhostsettings{'SUBNET'}       = &General::iporsubtocidr($fwhostsettings{'SUBNET'});
                        $customnetwork{$key}[0]         = $fwhostsettings{'HOSTNAME'};
-                       #convert ip when leading '0' in byte
-                       $fwhostsettings{'IP'}           =&General::ip2dec($fwhostsettings{'IP'});
-                       $fwhostsettings{'IP'}           =&General::dec2ip($fwhostsettings{'IP'});
                        $customnetwork{$key}[1]         = &General::getnetworkip($fwhostsettings{'IP'},$fwhostsettings{'SUBNET'}) ;
                        $customnetwork{$key}[2]         = &General::iporsubtodec($fwhostsettings{'SUBNET'}) ;
                        $customnetwork{$key}[3]         = $fwhostsettings{'NETREMARK'};
@@ -423,6 +424,9 @@ if ($fwhostsettings{'ACTION'} eq 'savehost')
                }
                #CHECK IP-PART
                if ($fwhostsettings{'type'} eq 'ip'){
+                       #convert ip if leading '0' exists
+                       $fwhostsettings{'IP'} = &Network::ip_remove_zero($fwhostsettings{'IP'});
+
                        #check for subnet
                        if (rindex($fwhostsettings{'IP'},'/') eq '-1' ){
                                if($fwhostsettings{'type'} eq 'ip' && !&General::validipandmask($fwhostsettings{'IP'}."/32"))
@@ -503,9 +507,6 @@ if ($fwhostsettings{'ACTION'} eq 'savehost')
                        $customhost{$key}[0] = $fwhostsettings{'HOSTNAME'} ;
                        $customhost{$key}[1] = $fwhostsettings{'type'} ;
                        if ($fwhostsettings{'type'} eq 'ip'){
-                               #convert ip when leading '0' in byte
-                               $fwhostsettings{'IP'}=&General::ip2dec($fwhostsettings{'IP'});
-                               $fwhostsettings{'IP'}=&General::dec2ip($fwhostsettings{'IP'});
                                $customhost{$key}[2] = $fwhostsettings{'IP'}."/".&General::iporsubtodec($fwhostsettings{'SUBNET'});
                        }else{
                                $customhost{$key}[2] = $fwhostsettings{'IP'};
index ccbfa926a0ad3c576217107f0fbc7842edf1cfc4..056b333e8c955eee667a982c2b227804c75c2d0b 100644 (file)
@@ -225,7 +225,16 @@ foreach my $location (@locations) {
        print "<td align='center' $col>$flag</td>\n";
        print "<td align='center' $col>$ccode_uc</td>\n";
        print "<td align='left' $col>$cname</td>$line_end\n";
-                       
+
+       # Finish column when the last element in the array has passed and we have an uneven amount of items.
+       if(! ($lines2 % 2) && ($location eq $locations[-1] )) {
+               print "<td $col>&nbsp;</td>\n";
+               print "<td $col>&nbsp;</td>\n";
+               print "<td $col>&nbsp;</td>\n";
+               print "<td $col>&nbsp;</td>\n";
+               print "<td $col>&nbsp;</td></tr>\n";
+       }
+
 $lines2++;
 }
 
index bb7df1fffa56203d358ec189688f37d0f84497a2..e3463d1ac2e2842b5003247249ecabddfa5e4a52 100644 (file)
@@ -223,7 +223,7 @@ if ($errormessage) {
 #<table width='100%'>
 #<hr />
 #<tr>
-#    <td class='base' width='25%'><!--<img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td>-->
+#    <td class='base' width='25%'><!--<img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'required field'}</td>-->
 #    <td class='base' width='25%'>$warnmessage</td>
 #    <td width='50%' align='center'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' disabled='disabled' /></td>
 #</tr>
@@ -253,12 +253,12 @@ print <<END
 <input type='hidden' name='KEY1' value='$settings{'KEY1'}' />
 <table width='100%'>
 <tr>
-    <td class='base'>$Lang::tr{'host ip'}:&nbsp;</td>
+    <td class='base'>$Lang::tr{'host ip'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='IP' value='$settings{'IP'}' /></td>
-    <td class='base'>$Lang::tr{'hostname'}:</td>
+    <td class='base'>$Lang::tr{'hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
     <td><input type='text' name='HOST' value='$settings{'HOST'}' /></td>
 </tr><tr>
-    <td class='base'>$Lang::tr{'domain name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+    <td class='base'>$Lang::tr{'domain name'}:</td>
     <td><input type='text' name='DOM' value='$settings{'DOM'}' /></td>
     <td class='base'>$Lang::tr{'enabled'}</td>
     <td><input type='checkbox' name='EN' $checked{'EN'}{'on'} /></td>
@@ -268,7 +268,7 @@ print <<END
 <hr />
 <table width='100%'>
 <tr>
-    <td class='base' width='50%'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td>
+    <td class='base' width='50%'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'required field'}</td>
     <td width='50%' align='right'><input type='hidden' name='ACTION' value='$Lang::tr{'add'}' /><input type='submit' name='SUBMIT' value='$buttontext' /></td>
 </tr>
 </table>
index 5ada91128446de7e15896197730d20a701f05653..f17b16a799f17b7e8912de8bc7e472368196bb92 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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        #
@@ -263,9 +263,9 @@ if (-e "/etc/snort/snort.conf") {
 #######################  End added for snort rules control  #################################
 
 if ($snortsettings{'RULES'} eq 'subscripted') {
-       $url=" https://www.snort.org/rules/snortrules-snapshot-2970.tar.gz?oinkcode=$snortsettings{'OINKCODE'}";
+       $url=" https://www.snort.org/rules/snortrules-snapshot-2976.tar.gz?oinkcode=$snortsettings{'OINKCODE'}";
 } elsif ($snortsettings{'RULES'} eq 'registered') {
-       $url=" https://www.snort.org/rules/snortrules-snapshot-2970.tar.gz?oinkcode=$snortsettings{'OINKCODE'}";
+       $url=" https://www.snort.org/rules/snortrules-snapshot-2976.tar.gz?oinkcode=$snortsettings{'OINKCODE'}";
 } elsif ($snortsettings{'RULES'} eq 'community') {
        $url=" https://www.snort.org/rules/community";
 } else {
index 7525626668b6aa595b1a6dca0221a385032210b4..5a584d60debb6bdcd9709ea0525ca273e4db4bdc 100644 (file)
@@ -21,6 +21,7 @@ use Getopt::Std;
 #use CGI::Carp 'fatalsToBrowser';
 
 require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/geoip-functions.pl";
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -372,10 +373,15 @@ foreach $_ (@log)
         <td align='center' $col>$srcport<br/>$dstport</td>
 END
 ;
-        if ( $fcode ne "" ){
-        print "<td align='center' $col><a href='../country.cgi#$fcode'><img src='/images/flags/$fcode.png' border='0' align='absmiddle' alt='$ccode'></a></td>";}
-        else {
-        print "<td align='center' $col></td>";}
+       # Get flag icon for of the country.
+       my $flag_icon = &GeoIP::get_flag_icon($fcode);
+
+        if ( $flag_icon) {
+               print "<td align='center' $col><a href='../country.cgi#$fcode'><img src='$flag_icon' border='0' align='absmiddle' alt='$ccode'></a></td>";
+       } else {
+               print "<td align='center' $col></td>";
+       }
+
         print <<END
         <td align='center' $col>$macaddr</td>
 </tr>
index 3a774f92298f198b50ebf82c61b81a83967cd75e..f998a6201f344b01a56a3d4e137a3828fd0c3556 100644 (file)
@@ -19,6 +19,7 @@ use Getopt::Std;
 #use CGI::Carp 'fatalsToBrowser';
 
 require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/geoip-functions.pl";
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -455,16 +456,30 @@ for($s=0;$s<$lines;$s++)
   $color++;
   print "<tr>";
 
-  print "<td align='center' $col><form method='post' action='showrequestfromcountry.dat'><input type='hidden' name='MONTH' value='$cgiparams{'MONTH'}'> <input type='hidden' name='DAY' value='$cgiparams{'DAY'}'> <input type='hidden' name='country' value='$key[$s]'> <input type='submit' value='details'></form></td>";
+  print "<td align='center' $col>";
+
+  # Dont show details button for "unknown" location.
+  if ($key[$s] ne 'unknown') {
+       print"<form method='post' action='showrequestfromcountry.dat'>";
+       print"<input type='hidden' name='MONTH' value='$cgiparams{'MONTH'}'>";
+       print"<input type='hidden' name='DAY' value='$cgiparams{'DAY'}'>";
+       print"<input type='hidden' name='country' value='$key[$s]'>";
+       print"<input type='submit' value='details'></form>";
+  }
+
   if($key[$s] eq 'blue0' || $key[$s] eq 'green0' || $key[$s] eq 'orange0') {
       print "<td align='center' $col>$key[$s]</td>";
   }
   else {
-      if($key[$s] ne 'unknown' ) {
-          my $fcode = lc($key[$s]);
-          print "<td align='center' $col><a href='/cgi-bin/country.cgi#$fcode'><img src='/images/flags/$fcode.png' border='0' align='absmiddle' alt='$key[$s]' title='$key[$s]'></a></td>";}
-      else {
-          print "<td align='center' $col>$key[$s]</td>";
+       my $fcode = lc($key[$s]);
+
+       # Get flag icon for of the country.
+       my $flag_icon = &GeoIP::get_flag_icon($fcode);
+
+       if($flag_icon) {
+               print "<td align='center' $col><a href='/cgi-bin/country.cgi#$fcode'><img src='$flag_icon' border='0' align='absmiddle' alt='$key[$s]' title='$key[$s]'></a></td>";
+       } else {
+               print "<td align='center' $col>$key[$s]</td>";
       }
   }
   print "<td align='center' $col>$value[$s]</td>";
index 07bcc77f813bdfd2ed17988103c717584dd37c23..7d82d20e725e07f3569921a51ef030650b5e2510 100644 (file)
@@ -19,6 +19,7 @@ use Getopt::Std;
 #use CGI::Carp 'fatalsToBrowser';
 
 require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/geoip-functions.pl";
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -441,13 +442,19 @@ for($s=0;$s<$lines;$s++)
   $color++;
   print "<td align='center' $col><form method='post' action='showrequestfromip.dat'><input type='hidden' name='MONTH' value='$cgiparams{'MONTH'}'> <input type='hidden' name='DAY' value='$cgiparams{'DAY'}'> <input type='hidden' name='ip' value='$key[$s]'> <input type='submit' value='$Lang::tr{'details'}'></form></td>";
   print "<td align='center' $col><a href='/cgi-bin/ipinfo.cgi?ip=$key[$s]'>$key[$s]</a></td>";
-  if ( $fcode ne "" ){
-    print "<td align='center' $col><a href='/cgi-bin/country.cgi#$fcode'><img src='/images/flags/$fcode.png' border='0' align='absmiddle' alt='$ccode' title='$ccode'></a></td>";}
-  else {
-    print "<td align='center' $col></td>";}
-    print "<td align='center' $col>$value[$s]</td>";
-    print "<td align='center' $col>$percent</td>";
-    print "</tr>";
+
+  # Get flag icon for of the country.
+  my $flag_icon = &GeoIP::get_flag_icon($ccode);
+
+  if ( $flag_icon ) {
+       print "<td align='center' $col><a href='/cgi-bin/country.cgi#$fcode'><img src='$flag_icon' border='0' align='absmiddle' alt='$ccode' title='$ccode'></a></td>";
+  } else {
+       print "<td align='center' $col></td>";
+  }
+
+  print "<td align='center' $col>$value[$s]</td>";
+  print "<td align='center' $col>$percent</td>";
+  print "</tr>";
   }
 
 if($cgiparams{'otherspie'} == 2 ){}
index 1813862fe0eeacc15266f95feb0c0b4ff469f2b5..e8635d7a3b38c150a7d228f978fda649b5ac1f12 100644 (file)
@@ -53,6 +53,7 @@ my %sections = (
         'red' => '(red:|pppd\[.*\]: |chat\[.*\]|pppoe\[.*\]|pptp\[.*\]|pppoa\[.*\]|pppoa3\[.*\]|pppoeci\[.*\]|ipppd|ipppd\[.*\]|kernel: ippp\d|kernel: isdn.*|ibod\[.*\]|dhcpcd\[.*\]|modem_run\[.*\])',
         'ddns' => '(ddns\[\d+\]:)',
         'dns' => '(dnsmasq\[.*\]: )',
+        'dma' => '(dma\[.*\]: )',
         'dhcp' => '(dhcpd: )',
         'clamav' => '(clamd\[.*\]: |freshclam\[.*\]: )',
         'collectd' => '(collectd\[.*\]: )',
@@ -73,6 +74,7 @@ my %trsections = (
         'red' => 'RED',
         'ddns' => $Lang::tr{'dynamic dns'},
         'dns' => 'DNS',
+        'dma' => 'Mail',
         'dhcp' => "$Lang::tr{'dhcp server'}",
         'cron' => 'Cron',
         'collectd' => 'Collectd',
@@ -192,8 +194,10 @@ while ($gzindex >=0 && $loop) {
         # calculate file name
         if ($gzindex == 0) {
             $filestr = "/var/log/messages";
+            $filestr = "/var/log/mail" if (${section} =~ 'dma');
         } else {
             $filestr = "/var/log/messages.$gzindex";
+            $filestr = "/var/log/mail.$gzindex" if (${section} =~ 'dma');
            $filestr = "$filestr.gz" if -f "$filestr.gz";
         }
        # now read file if existing
index 1d3436320c765ac45a68a6bc3bd6f767872bcfd9..161be3421e0689ee8e3ab6be48389d70a374e888 100644 (file)
@@ -134,7 +134,7 @@ print <<END
     <td colspan="2">&nbsp;</td>
   </tr>
   <tr>
-    <td width="25%"><font class='base'>$Lang::tr{'mac new'}&nbsp;</font></td><td>
+    <td width="25%"><font class='base'>$Lang::tr{'mac new'}&nbsp;<img src='/blob.gif' alt='*' /></font></td><td>
 END
 ;
 if ($macsettings{'ACTION'} eq $Lang::tr{'delete'} ) {
@@ -159,12 +159,12 @@ END
 ;
 if ($macsettings{'ACTION'} eq $Lang::tr{'delete'} ) {
 print <<END 
-      <input type="text" name="MAC1" maxlength="17" value=''/><img src='/blob.gif' alt='*' /></td>
+      <input type="text" name="MAC1" maxlength="17" value=''/></td>
 END
 ;
 } else {   
 print <<END
-      <input type="text" name="MAC1" maxlength="17" value='$macsettings{"MAC1"}'/><img src='/blob.gif' alt='*' /></td>
+      <input type="text" name="MAC1" maxlength="17" value='$macsettings{"MAC1"}'/></td>
 END
 ;  
 } 
@@ -179,12 +179,12 @@ END
 ;
 if ($macsettings{'ACTION'} eq $Lang::tr{'delete'} ) {
 print <<END 
-      <input type="text" name="MAC2" maxlength="17" value=''/><img src='/blob.gif' alt='*' /></td>
+      <input type="text" name="MAC2" maxlength="17" value=''/></td>
 END
 ;
 } else {   
 print <<END
-      <input type="text" name="MAC2" maxlength="17" value='$macsettings{"MAC2"}'/><img src='/blob.gif' alt='*' /></td>
+      <input type="text" name="MAC2" maxlength="17" value='$macsettings{"MAC2"}'/></td>
 END
 ;  
 } 
@@ -195,7 +195,7 @@ print <<END
     <td colspan="2"><br><hr /></td>
   </tr>
   <tr>
-    <td align='left'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td><div align="right"></td>
+    <td align='left'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'required field'}</td><div align="right"></td>
     <td align='right'>
 END
 ;
diff --git a/html/cgi-bin/mail.cgi b/html/cgi-bin/mail.cgi
new file mode 100755 (executable)
index 0000000..9cf14ca
--- /dev/null
@@ -0,0 +1,336 @@
+#!/usr/bin/perl
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  IPFire Team  <alexander.marx@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/>.       #
+#                                                                             #
+###############################################################################
+use MIME::Lite;
+#enable only the following on debugging purpose
+#use warnings;
+#use CGI::Carp 'fatalsToBrowser';
+
+require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/lang.pl";
+require "${General::swroot}/header.pl";
+
+#Initialize variables and hashes
+my $dmafile="${General::swroot}/dma/dma.conf";
+my $authfile="${General::swroot}/dma/auth.conf";
+my $mailfile="${General::swroot}/dma/mail.conf";
+my %dma=();
+my %auth=();
+my %mail=();
+my %mainsettings=();
+my %cgiparams=();
+my $errormessage='';
+
+#Read all parameters for site
+&Header::getcgihash(\%cgiparams);
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
+
+#Show Headers
+&Header::showhttpheaders();
+
+#Check configfiles
+if ( -f $dmafile){
+       open (FILE, "<", $dmafile) or die $!;
+       foreach my $line (<FILE>) {
+               $line =~ m/^([A-Z]+)\s+?(.*)?$/;
+               my $key = $1;
+               my $val = $2;
+               $dma{$key}=$val;
+       }
+}else{
+       open(FILE, ">$dmafile") or die $!;
+}
+close FILE;
+
+if (exists $dma{'AUTHPATH'}){
+       open (FILE, "<", $dma{'AUTHPATH'}) or die "$dma{'AUTHPATH'} nicht gefunden $! ";
+       my $authline;
+       foreach my $line (<FILE>) {
+               $authline = $line;
+       }
+       my @part1 = split(/\|/,$authline);
+       my @part2 = split(/\:/,$part1[1]);
+       $auth{'AUTHNAME'} = $part1[0];
+       $auth{'AUTHHOST'} = $part2[0];
+       $auth{'AUTHPASS'} = $part2[1];
+}
+
+if ( -f $mailfile){
+       &General::readhash($mailfile, \%mail);
+}
+
+#ACTIONS
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ #SaveButton on configsite
+       #Check fields
+       if ($cgiparams{'USEMAIL'} eq 'on'){
+               $errormessage=&checkmailsettings;
+       }else{
+               $cgiparams{'txt_mailserver'}='';
+               $cgiparams{'txt_mailport'}='';
+               $cgiparams{'txt_mailuser'}='';
+               $cgiparams{'txt_mailpass'}='';
+               $cgiparams{'mail_tls'}='';
+               $cgiparams{'txt_mailsender'}='';
+               $cgiparams{'txt_recipient'}='';
+       }
+       if(!$errormessage){
+               #clear hashes
+               %auth=();
+               %dma=();
+               %mail=();
+
+               #clear configfiles
+               open (TXT, ">$dmafile") or die("Could not open /var/ipfire/dma/dma.conf: $!\n");
+               open (TXT1, ">$authfile") or die("Could not open /var/ipfire/dma/auth.conf: $!\n");
+               open (TXT2, ">$mailfile") or die("Could not open /var/ipfire/dma/mail.conf: $!\n");
+               close TXT2;
+
+               #Fill hashes with actual values
+               $mail{'USEMAIL'}                = $cgiparams{'USEMAIL'};
+               $mail{'SENDER'}                 = $cgiparams{'txt_mailsender'};
+               $mail{'RECIPIENT'}              = $cgiparams{'txt_recipient'};
+
+               if ($cgiparams{'txt_mailuser'} && $cgiparams{'txt_mailpass'}) {
+                       $auth{'AUTHNAME'}               = $cgiparams{'txt_mailuser'};
+                       $auth{'AUTHPASS'}               = $cgiparams{'txt_mailpass'};
+                       $auth{'AUTHHOST'}               = $cgiparams{'txt_mailserver'};
+                       print TXT1 "$auth{'AUTHNAME'}|$auth{'AUTHHOST'}:$auth{'AUTHPASS'}\n";
+               }
+
+               $dma{'SMARTHOST'}               = $cgiparams{'txt_mailserver'};
+               $dma{'PORT'}                    = $cgiparams{'txt_mailport'};
+               $dma{'STARTTLS'}                = '' if ($cgiparams{'mail_tls'});
+               $dma{'SECURETRANSFER'}  = '' if exists $dma{'STARTTLS'};
+               $dma{'SPOOLDIR'}                = "/var/spool/dma";
+               $dma{'FULLBOUNCE'}              = '';
+               $dma{'MAILNAME'}                = "$mainsettings{'HOSTNAME'}.$mainsettings{DOMAINNAME}";
+               $dma{'AUTHPATH'}                = "$authfile" if exists $auth{'AUTHNAME'};
+
+               #Create new configfiles
+               &General::writehash("$mailfile", \%mail);
+               while ( ($k,$v) = each %dma ) {
+                       print TXT "$k $v\n";
+               }
+               close TXT;
+               close TXT1;
+               close TXT2;
+
+       }else{
+               $cgiparams{'update'}='on';
+               &configsite;
+       }
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'email testmail'}"){ #Testmail button on configsite
+       &testmail;
+}
+
+#Show site
+&configsite;
+
+#FUNCTIONS
+sub configsite{
+       
+
+       #If update set fieldvalues new
+       if($cgiparams{'update'} eq 'on'){
+               $mail{'USEMAIL'}        = 'on';
+               $mail{'SENDER'}         =  $cgiparams{'txt_mailsender'};
+               $mail{'RECIPIENT'}      =  $cgiparams{'txt_recipient'};
+               $dma{'SMARTHOST'}       = $cgiparams{'txt_mailserver'};
+               $dma{'PORT'}            = $cgiparams{'txt_mailport'};
+               $auth{'AUTHNAME'}       = $cgiparams{'txt_mailuser'};
+               $auth{'AUTHHOST'}       = $cgiparams{'txt_mailserver'};
+               $auth{'AUTHPASS'}       = $cgiparams{'txt_mailpass'};
+               $dma{'STARTTLS'}        = $cgiparams{'mail_tls'};
+       }
+       #find preselections
+       $checked{'usemail'}{$mail{'USEMAIL'}}   = 'CHECKED';
+       $checked{'mail_tls'}{'on'}                              = 'CHECKED' if exists $dma{'STARTTLS'};
+       
+       #Open site
+       &Header::openpage($Lang::tr{'email settings'}, 1, '');
+       &Header::openbigbox('100%', 'center');
+       &error;
+       &info;
+       &Header::openbox('100%', 'left', $Lang::tr{'email config'});
+       
+       #### JAVA SCRIPT ####
+       print<<END;
+<script>
+       \$(document).ready(function() {
+               // Show/Hide elements when USEMAIL checkbox is checked.
+               if (\$("#MAIL").attr("checked")) {
+                       \$(".MAILSRV").show();
+               } else {
+                       \$(".MAILSRV").hide();
+               }
+
+               // Toggle MAIL elements when "USEMAIL" checkbox is clicked
+               \$("#MAIL").change(function() {
+                       \$(".MAILSRV").toggle();
+               });
+       });
+</script>
+END
+       ##### JAVA SCRIPT END ####
+       my $col="style='background-color:$color{'color22'}'";
+       print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%' border='0'>
+       <tr>
+               <th colspan='3'></th>
+       </tr>
+       <tr>
+               <td style='width:24em'>$Lang::tr{'email usemail'}</td>
+               <td><label><input type='checkbox' name='USEMAIL' id='MAIL' $checked{'usemail'}{'on'}></label></td>
+               <td></td>
+       </tr>
+       </table><br>
+
+       <div class="MAILSRV">
+               <table style='width:100%;'>
+               <tr>
+                       <td>$Lang::tr{'email mailsender'}<img src='/blob.gif' alt='*' /></td>
+                       <td><input type='text' name='txt_mailsender' value='$mail{'SENDER'}' style='width:22em;'></td>
+               </tr>
+               <tr>
+                       <td>$Lang::tr{'email mailrcpt'}<img src='/blob.gif' alt='*' /></td>
+                       <td><input type='text' name='txt_recipient' value='$mail{'RECIPIENT'}' style='width:22em;'></td>
+               </tr>
+               <tr>
+                       <td style='width:24em'>$Lang::tr{'email mailaddr'}<img src='/blob.gif' alt='*' /></td>
+                       <td><input type='text' name='txt_mailserver' value='$dma{'SMARTHOST'}' style='width:22em;'></td>
+               </tr>
+               <tr>
+                       <td>$Lang::tr{'email mailport'}<img src='/blob.gif' alt='*' /></td>
+                       <td><input type='text' name='txt_mailport' value='$dma{'PORT'}' size='3'></td>
+               </tr>
+               <tr>
+                       <td>$Lang::tr{'email mailuser'}</td>
+                       <td><input type='text' name='txt_mailuser' value='$auth{'AUTHNAME'}' style='width:22em;'></td>
+               </tr>
+               <tr>
+                       <td>$Lang::tr{'email mailpass'}</td>
+                       <td><input type='password' name='txt_mailpass' value='$auth{'AUTHPASS'}' style='width:22em;' ></td>
+               </tr>
+               <tr>
+                       <td>$Lang::tr{'email tls'}</td>
+                       <td><input type='checkbox' name='mail_tls' $checked{'mail_tls'}{'on'}></td>
+               </tr>
+END
+               if (! -z $dmafile && $mail{'USEMAIL'} eq 'on' && !$errormessage){
+                       print "<tr>";
+                       print "<td></td>";
+                       print "<td><input type='submit' name='ACTION' value='$Lang::tr{'email testmail'}'></td>";
+                       print "</tr>";
+               }
+               print<<END;;
+               <tr>
+                       <td colspan='2'>&nbsp;</td>
+               </tr>
+               </table>
+       </div>
+
+       <table style='width:100%;'>
+       <tr>
+               <td colspan='3' display:inline align='right'><input type='submit' name='ACTION' value='$Lang::tr{'save'}'></td>
+       </tr>
+       </table>
+       <br>
+       </form>
+END
+       &Header::closebox();
+       &Header::closebigbox(); 
+       &Header::closepage();
+       exit 0;
+}
+
+sub checkmailsettings {
+       #Check if mailserver is an ip address or a domain
+       if ($cgiparams{'txt_mailserver'} =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/){
+               if (! &General::validip($cgiparams{'txt_mailserver'})){
+                       $errormessage.="$Lang::tr{'email invalid mailip'} $cgiparams{'txt_mailserver'}<br>";
+               }
+       }elsif(! &General::validfqdn($cgiparams{'txt_mailserver'})){
+                       $errormessage.="$Lang::tr{'email invalid mailfqdn'} $cgiparams{'txt_mailserver'}<br>";
+       }
+       #Check valid mailserverport
+       if($cgiparams{'txt_mailport'} < 1 || $cgiparams{'txt_mailport'} > 65535){
+               $errormessage.="$Lang::tr{'email invalid mailport'} $cgiparams{'txt_mailport'}<br>";
+       }
+       #Check valid sender
+       if(! $cgiparams{'txt_mailsender'}){
+               $errormessage.="$Lang::tr{'email empty field'} $Lang::tr{'email mailsender'}<br>";
+       }else{
+               if (! &General::validemail($cgiparams{'txt_mailsender'})){
+                       $errormessage.="<br>$Lang::tr{'email invalid'} $Lang::tr{'email mailsender'}<br>";
+               }
+       }
+       return $errormessage;
+}
+
+sub testmail {
+       ### Create a new multipart message:
+       $msg = MIME::Lite->new(
+               From    => $mail{'SENDER'},
+               To              => $mail{'RECIPIENT'},
+               #Cc             => 'some@other.com, some@more.com',
+               Subject => 'IPFire Testmail',
+               Type    => 'multipart/mixed'
+       );
+
+       ### Add parts (each "attach" has same arguments as "new"):
+       $msg->attach(
+               Type    => 'TEXT',
+               Data    => "This is the IPFire test mail."
+       );
+
+       ### Add attachment for testing
+       #$msg->attach(
+       #       Type     => 'application/txt',
+       #       Encoding => 'base64',
+       #       Path     => '/var/ipfire/dma/dma.conf',
+       #       Filename => 'dma.conf',
+       #       Disposition => 'attachment'
+       #);
+
+       $msg->send_by_sendmail;
+}
+
+sub info {
+       if ($infomessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'info messages'});
+               print "<class name='base'>$infomessage\n";
+               print "&nbsp;</class>\n";
+               &Header::closebox();
+       }
+}
+
+sub error {
+       if ($errormessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
+               print "<class name='base'>$errormessage\n";
+               print "&nbsp;</class>\n";
+               &Header::closebox();
+       }
+}
index 48d1260e88e26a73777de923d04ef42b27da17b1..a13f8b2654a72376888496be6c35390fbc51077b 100644 (file)
@@ -78,25 +78,25 @@ print "<form method='post' action='$ENV{'SCRIPT_NAME'}'>\n";
 print <<END
 <table width='100%'>
 <tr>
-       <td width='25%' class='base'>$Lang::tr{'init string'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td width='25%' class='base'>$Lang::tr{'init string'}</td>
        <td width='25%'><input type='text' name='INIT' value='$modemsettings{'INIT'}' /></td>
-       <td width='25%' class='base'>$Lang::tr{'hangup string'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td width='25%' class='base'>$Lang::tr{'hangup string'}</td>
        <td width='25%'><input type='text' name='HANGUP' value='$modemsettings{'HANGUP'}' /></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'speaker on'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'speaker on'}</td>
        <td><input type='text' name='SPEAKER_ON' value='$modemsettings{'SPEAKER_ON'}' /></td>
-       <td class='base'>$Lang::tr{'speaker off'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'speaker off'}</td>
        <td><input type='text' name='SPEAKER_OFF' value='$modemsettings{'SPEAKER_OFF'}' /></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'tone dial'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'tone dial'}</td>
        <td><input type='text' name='TONE_DIAL' value='$modemsettings{'TONE_DIAL'}' /></td>
-       <td class='base'>$Lang::tr{'pulse dial'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'pulse dial'}</td>
        <td><input type='text' name='PULSE_DIAL' value='$modemsettings{'PULSE_DIAL'}' /></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'connect timeout'}</td>
+       <td class='base'>$Lang::tr{'connect timeout'}&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='TIMEOUT' value='$modemsettings{'TIMEOUT'}' /></td>
        <td class='base'>&nbsp;</td>
        <td>&nbsp;</td>
@@ -107,8 +107,7 @@ print <<END
 <hr />
 <tr>
        <td width='33%'>
-               <img src='/blob.gif' align='top' alt='*' />&nbsp;
-               <font class='base'>$Lang::tr{'this field may be blank'}</font>
+               <img src='/blob.gif' align='top' alt='*' />&nbsp;<font class='base'>$Lang::tr{'required field'}</font>
        </td>
        <td width='33%' align='center'>
                <input type='submit' name='ACTION' value='$Lang::tr{'restore defaults'}' />
index ddf41771a5b5226b3eb254b2cb3e136996c9512e..15a95b6b9f7e063627484836482b5e19fd3a0d73 100755 (executable)
@@ -59,7 +59,7 @@ if ( $querry[0] ne ""){
        if (@vpns){
                foreach (@vpns) {
                        &Header::openbox('100%', 'center', "$_ $Lang::tr{'graph'}");
-                       &Graphs::makegraphbox("netovpnsrv.cgi",$_, "day");
+                       &Graphs::makegraphbox("netovpnsrv.cgi",$_, "day",320);
                        &Header::closebox();
                }
        }else{
index 6bf7b2bfd520f5abfd0a90c1ef31e38fd9a199c0..037894d50bf941d870e55e311932a71c04dbf94b 100644 (file)
@@ -926,6 +926,7 @@ unless(-d "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}"){mkdir "${General
   print SERVERCONF "ifconfig $ovsubnet.1 $ovsubnet.2\n"; 
   print SERVERCONF "# Client Gateway Network\n"; 
   print SERVERCONF "route $remsubnet[0] $remsubnet[1]\n";
+  print SERVERCONF "up \"/etc/init.d/static-routes start\"\n";
   print SERVERCONF "# tun Device\n"; 
   print SERVERCONF "dev tun\n"; 
   print SERVERCONF "#Logfile for statistics\n";
@@ -1025,8 +1026,12 @@ unless(-d "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}"){mkdir "${General
   print CLIENTCONF "ifconfig $ovsubnet.2 $ovsubnet.1\n"; 
   print CLIENTCONF "# Server Gateway Network\n"; 
   print CLIENTCONF "route $remsubnet[0] $remsubnet[1]\n"; 
+  print CLIENTCONF "up \"/etc/init.d/static-routes start\"\n";
   print CLIENTCONF "# tun Device\n"; 
   print CLIENTCONF "dev tun\n"; 
+  print CLIENTCONF "#Logfile for statistics\n";
+  print CLIENTCONF "status-version 1\n";
+  print CLIENTCONF "status /var/run/openvpn/$cgiparams{'NAME'}-n2n 10\n";
   print CLIENTCONF "# Port and Protokol\n"; 
   print CLIENTCONF "port $cgiparams{'DEST_PORT'}\n"; 
 
@@ -1956,22 +1961,22 @@ END
        print <<END;
        <form method='post' enctype='multipart/form-data'>
        <table width='100%' border='0' cellspacing='1' cellpadding='0'>
-       <tr><td width='30%' class='base'>$Lang::tr{'organization name'}:</td>
+       <tr><td width='30%' class='base'>$Lang::tr{'organization name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
            <td width='35%' class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_ORGANIZATION' value='$cgiparams{'ROOTCERT_ORGANIZATION'}' size='32' /></td>
            <td width='35%' colspan='2'>&nbsp;</td></tr>
-       <tr><td class='base'>$Lang::tr{'ipfires hostname'}:</td>
+       <tr><td class='base'>$Lang::tr{'ipfires hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
            <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_HOSTNAME' value='$cgiparams{'ROOTCERT_HOSTNAME'}' size='32' /></td>
            <td colspan='2'>&nbsp;</td></tr>
-       <tr><td class='base'>$Lang::tr{'your e-mail'}:&nbsp;<img src='/blob.gif' alt'*' /></td>
+       <tr><td class='base'>$Lang::tr{'your e-mail'}:</td>
            <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_EMAIL' value='$cgiparams{'ROOTCERT_EMAIL'}' size='32' /></td>
            <td colspan='2'>&nbsp;</td></tr>
-       <tr><td class='base'>$Lang::tr{'your department'}:&nbsp;<img src='/blob.gif' alt'*' /></td>
+       <tr><td class='base'>$Lang::tr{'your department'}:</td>
            <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_OU' value='$cgiparams{'ROOTCERT_OU'}' size='32' /></td>
            <td colspan='2'>&nbsp;</td></tr>
-       <tr><td class='base'>$Lang::tr{'city'}:&nbsp;<img src='/blob.gif' alt'*' /></td>
+       <tr><td class='base'>$Lang::tr{'city'}:</td>
            <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_CITY' value='$cgiparams{'ROOTCERT_CITY'}' size='32' /></td>
            <td colspan='2'>&nbsp;</td></tr>
-       <tr><td class='base'>$Lang::tr{'state or province'}:&nbsp;<img src='/blob.gif' alt'*' /></td>
+       <tr><td class='base'>$Lang::tr{'state or province'}:</td>
            <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_STATE' value='$cgiparams{'ROOTCERT_STATE'}' size='32' /></td>
            <td colspan='2'>&nbsp;</td></tr>
        <tr><td class='base'>$Lang::tr{'country'}:</td>
@@ -2002,7 +2007,7 @@ END
            <td><input type='submit' name='ACTION' value='$Lang::tr{'generate root/host certificates'}' /></td>
            <td>&nbsp;</td><td>&nbsp;</td></tr> 
        <tr><td class='base' colspan='4' align='left'>
-           <img src='/blob.gif' valign='top' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td></tr>
+           <img src='/blob.gif' valign='top' alt='*' />&nbsp;$Lang::tr{'required field'}</td></tr>
        <tr><td colspan='2'><br></td></tr>
        <table width='100%'>
        <tr>
@@ -2018,17 +2023,17 @@ END
 
        <table width='100%'>
        <tr><td colspan='4'><hr></td></tr>
-       <tr><td class='base' nowrap='nowrap'>$Lang::tr{'upload p12 file'}:</td>
+       <tr><td class='base' nowrap='nowrap'>$Lang::tr{'upload p12 file'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
            <td nowrap='nowrap'><input type='file' name='FH' size='32'></td>
            <td colspan='2'>&nbsp;</td></tr>
-       <tr><td class='base'>$Lang::tr{'pkcs12 file password'}:&nbsp;<img src='/blob.gif' alt='*' ></td>
+       <tr><td class='base'>$Lang::tr{'pkcs12 file password'}:</td>
            <td class='base' nowrap='nowrap'><input type='password' name='P12_PASS' value='$cgiparams{'P12_PASS'}' size='32' /></td>
             <td colspan='2'>&nbsp;</td></tr>
        <tr><td>&nbsp;</td>
            <td><input type='submit' name='ACTION' value='$Lang::tr{'upload p12 file'}' /></td>
             <td colspan='2'>&nbsp;</td></tr>
        <tr><td class='base' colspan='4' align='left'>
-           <img src='/blob.gif' valign='top' al='*' >&nbsp;$Lang::tr{'this field may be blank'}</td>
+           <img src='/blob.gif' valign='top' alt='*' >&nbsp;$Lang::tr{'required field'}</td>
        </tr>
        </form></table>
 END
@@ -2138,6 +2143,9 @@ if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){
    print CLIENTCONF "route $remsubnet[0] $remsubnet[1]\n";
    print CLIENTCONF "# tun Device\n"; 
    print CLIENTCONF "dev tun\n"; 
+   print CLIENTCONF "#Logfile for statistics\n";
+   print CLIENTCONF "status-version 1\n";
+   print CLIENTCONF "status /var/run/openvpn/$cgiparams{'NAME'}-n2n 10\n";
    print CLIENTCONF "# Port and Protokoll\n"; 
    print CLIENTCONF "port $confighash{$cgiparams{'KEY'}}[29]\n"; 
    
@@ -2265,9 +2273,41 @@ else
        print CLIENTCONF "remote $netsettings{'ORANGE_ADDRESS'} $vpnsettings{'DDEST_PORT'}\r\n";
     }
                        
+    my $file_crt = new File::Temp( UNLINK => 1 );
+    my $file_key = new File::Temp( UNLINK => 1 );
+    my $include_certs = 0;
+
     if ($confighash{$cgiparams{'KEY'}}[4] eq 'cert' && -f "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12") { 
-       print CLIENTCONF "pkcs12 $confighash{$cgiparams{'KEY'}}[1].p12\r\n";
-       $zip->addFile( "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12", "$confighash{$cgiparams{'KEY'}}[1].p12") or die "Can't add file $confighash{$cgiparams{'KEY'}}[1].p12\n";
+       if ($cgiparams{'MODE'} eq 'insecure') {
+               $include_certs = 1;
+
+               # Add the CA
+               print CLIENTCONF ";ca cacert.pem\r\n";
+               $zip->addFile("${General::swroot}/ovpn/ca/cacert.pem", "cacert.pem")  or die "Can't add file cacert.pem\n";
+
+               # Extract the certificate
+               system('/usr/bin/openssl', 'pkcs12', '-in', "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12",
+                       '-clcerts', '-nokeys', '-nodes', '-out', "$file_crt" , '-passin', 'pass:');
+               if ($?) {
+                       die "openssl error: $?";
+               }
+
+               $zip->addFile("$file_crt", "$confighash{$cgiparams{'KEY'}}[1].pem") or die;
+               print CLIENTCONF ";cert $confighash{$cgiparams{'KEY'}}[1].pem\r\n";
+
+               # Extract the key
+               system('/usr/bin/openssl', 'pkcs12', '-in', "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12",
+                       '-nocerts', '-nodes', '-out', "$file_key", '-passin', 'pass:');
+               if ($?) {
+                       die "openssl error: $?";
+               }
+
+               $zip->addFile("$file_key", "$confighash{$cgiparams{'KEY'}}[1].key") or die;
+               print CLIENTCONF ";key $confighash{$cgiparams{'KEY'}}[1].key\r\n";
+       } else {
+               print CLIENTCONF "pkcs12 $confighash{$cgiparams{'KEY'}}[1].p12\r\n";
+               $zip->addFile( "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12", "$confighash{$cgiparams{'KEY'}}[1].p12") or die "Can't add file $confighash{$cgiparams{'KEY'}}[1].p12\n";
+       }
     } else {
        print CLIENTCONF "ca cacert.pem\r\n";
        print CLIENTCONF "cert $confighash{$cgiparams{'KEY'}}[1]cert.pem\r\n";
@@ -2282,6 +2322,9 @@ else
        print CLIENTCONF "auth $vpnsettings{'DAUTH'}\r\n";
     }
     if ($vpnsettings{'TLSAUTH'} eq 'on') {
+       if ($cgiparams{'MODE'} eq 'insecure') {
+               print CLIENTCONF ";";
+       }
        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";
     }
@@ -2290,7 +2333,7 @@ else
     }
     print CLIENTCONF "verb 3\r\n";
     print CLIENTCONF "ns-cert-type server\r\n";
-    print CLIENTCONF "tls-remote $vpnsettings{ROOTCERT_HOSTNAME}\r\n"; 
+    print CLIENTCONF "verify-x509-name $vpnsettings{ROOTCERT_HOSTNAME} name\r\n";
     if ($vpnsettings{MSSFIX} eq 'on') {
        print CLIENTCONF "mssfix\r\n";
     }
@@ -2306,6 +2349,53 @@ else
                print CLIENTCONF "mtu-disc $vpnsettings{'PMTU_DISCOVERY'}\r\n";
        }
     }
+
+    if ($include_certs) {
+       print CLIENTCONF "\r\n";
+
+       # CA
+       open(FILE, "<${General::swroot}/ovpn/ca/cacert.pem");
+       print CLIENTCONF "<ca>\r\n";
+       while (<FILE>) {
+               chomp($_);
+               print CLIENTCONF "$_\r\n";
+       }
+       print CLIENTCONF "</ca>\r\n\r\n";
+       close(FILE);
+
+       # Cert
+       open(FILE, "<$file_crt");
+       print CLIENTCONF "<cert>\r\n";
+       while (<FILE>) {
+               chomp($_);
+               print CLIENTCONF "$_\r\n";
+       }
+       print CLIENTCONF "</cert>\r\n\r\n";
+       close(FILE);
+
+       # Key
+       open(FILE, "<$file_key");
+       print CLIENTCONF "<key>\r\n";
+       while (<FILE>) {
+               chomp($_);
+               print CLIENTCONF "$_\r\n";
+       }
+       print CLIENTCONF "</key>\r\n\r\n";
+       close(FILE);
+
+       # TLS auth
+       if ($vpnsettings{'TLSAUTH'} eq 'on') {
+               open(FILE, "<${General::swroot}/ovpn/certs/ta.key");
+               print CLIENTCONF "<tls-auth>\r\n";
+               while (<FILE>) {
+                       chomp($_);
+                       print CLIENTCONF "$_\r\n";
+               }
+               print CLIENTCONF "</tls-auth>\r\n\r\n";
+               close(FILE);
+       }
+    }
+
     # Print client.conf.local if entries exist to client.ovpn
     if (!-z $local_clientconf && $vpnsettings{'ADDITIONAL_CONFIGS'} eq 'on') {
        open (LCC, "$local_clientconf");
@@ -2346,7 +2436,9 @@ else
        &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", \%confighash);
 
        if ($confighash{$cgiparams{'KEY'}}) {
+               # Revoke certificate if certificate was deleted and rewrite the CRL
                my $temp = `/usr/bin/openssl ca -revoke ${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem -config ${General::swroot}/ovpn/openssl/ovpn.cnf`;
+               my $tempA = `/usr/bin/openssl ca -gencrl -out ${General::swroot}/ovpn/crls/cacrl.pem -config ${General::swroot}/ovpn/openssl/ovpn.cnf`;
 
 ###
 # m.a.d net2net
@@ -3099,11 +3191,10 @@ if ( -s "${General::swroot}/ovpn/settings") {
                <tr><td><input type='radio' name='TYPE' value='net2net' /></td>         
                <td class='base'>$Lang::tr{'net to net vpn'} (Upload Client Package)</td></tr>
          <tr><td>&nbsp;</td><td class='base'><input type='file' name='FH' size='30'></td></tr>
-         <tr><td>&nbsp;</td><td>Import Connection Name <img src='/blob.gif' /></td></tr>
+         <tr><td>&nbsp;</td><td>Import Connection Name</td></tr>
     <tr><td>&nbsp;</td><td class='base'><input type='text' name='n2nname' size='30'>$Lang::tr{'openvpn default'}: Client Packagename</td></tr>
          <tr><td colspan='3'><hr /></td></tr>
     <tr><td align='right' colspan='3'><input type='submit' name='ACTION' value='$Lang::tr{'add'}' /></td></tr>
-         <tr><td class='base' colspan='3' align='left'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td></tr>
            </form></table>
 END
        ;
@@ -4250,6 +4341,10 @@ if ($cgiparams{'TYPE'} eq 'net') {
        $confighash{$key}[39]           = $cgiparams{'DAUTH'};
        $confighash{$key}[40]           = $cgiparams{'DCIPHER'};
 
+       if (($cgiparams{'TYPE'} eq 'host') && ($cgiparams{'CERT_PASS1'} eq "")) {
+               $confighash{$key}[41] = "no-pass";
+       }
+
        &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", \%confighash);
        
        if ($cgiparams{'CHECK1'} ){
@@ -4485,7 +4580,7 @@ if ($cgiparams{'TYPE'} eq 'net') {
        &Header::openbox('100%', 'LEFT', "$Lang::tr{'connection'}:");
        print "<table width='100%'  border='0'>\n";
 
-       print "<tr><td width='14%' class='boldbase'>$Lang::tr{'name'}: </td>";
+       print "<tr><td width='14%' class='boldbase'>$Lang::tr{'name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>";
        
        if ($cgiparams{'TYPE'} eq 'host') {
            if ($cgiparams{'KEY'}) {
@@ -4524,14 +4619,14 @@ if ($cgiparams{'TYPE'} eq 'net') {
                <td><input type='TEXT' name='REMOTE' value='$cgiparams{'REMOTE'}' /></td>
        </tr>
 
-       <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'local subnet'}</td>
+       <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'local subnet'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td><input type='TEXT' name='LOCAL_SUBNET' value='$cgiparams{'LOCAL_SUBNET'}' /></td>
 
-               <td class='boldbase' nowrap='nowrap'>$Lang::tr{'remote subnet'}</td>
+               <td class='boldbase' nowrap='nowrap'>$Lang::tr{'remote subnet'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td><input type='text' name='REMOTE_SUBNET' value='$cgiparams{'REMOTE_SUBNET'}' /></td>
        </tr>
 
-       <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'ovpn subnet'}</td>
+       <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'ovpn subnet'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td><input type='TEXT' name='OVPN_SUBNET' value='$cgiparams{'OVPN_SUBNET'}' /></td>
 
                <td class='boldbase' nowrap='nowrap'>$Lang::tr{'protocol'}</td>
@@ -4541,10 +4636,10 @@ if ($cgiparams{'TYPE'} eq 'net') {
        </tr>
        
        <tr>
-               <td class='boldbase'>$Lang::tr{'destination port'}:</td>
+               <td class='boldbase'>$Lang::tr{'destination port'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td><input type='TEXT' name='DEST_PORT' value='$cgiparams{'DEST_PORT'}' size='5' /></td>
 
-               <td class='boldbase' nowrap='nowrap'>Management Port ($Lang::tr{'openvpn default'}: <span class="base">$Lang::tr{'destination port'}): &nbsp;<img src='/blob.gif' /></td>
+               <td class='boldbase' nowrap='nowrap'>Management Port ($Lang::tr{'openvpn default'}: <span class="base">$Lang::tr{'destination port'}):</td>
                <td> <input type='TEXT' name='OVPN_MGMT' VALUE='$cgiparams{'OVPN_MGMT'}'size='5' /></td>
        </tr>
 
@@ -4554,22 +4649,22 @@ if ($cgiparams{'TYPE'} eq 'net') {
                <td class'base'><b>$Lang::tr{'MTU settings'}</b></td>
        </tr>
 
-        <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'MTU'}&nbsp;<img src='/blob.gif' /></td>
+        <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'MTU'}</td>
                <td><input type='TEXT' name='MTU' VALUE='$cgiparams{'MTU'}'size='5' /></td>
                <td colspan='2'>$Lang::tr{'openvpn default'}: udp/tcp <span class="base">1500/1400</span></td>
        </tr>
 
-       <tr><td class='boldbase' nowrap='nowrap'>fragment &nbsp;<img src='/blob.gif' /></td>
+       <tr><td class='boldbase' nowrap='nowrap'>fragment:</td>
                <td><input type='TEXT' name='FRAGMENT' VALUE='$cgiparams{'FRAGMENT'}'size='5' /></td>
                <td>$Lang::tr{'openvpn default'}: <span class="base">1300</span></td>
        </tr>
 
-       <tr><td class='boldbase' nowrap='nowrap'>mssfix &nbsp;<img src='/blob.gif' /></td>
+       <tr><td class='boldbase' nowrap='nowrap'>mssfix:</td>
                <td><input type='checkbox' name='MSSFIX' $checked{'MSSFIX'}{'on'} /></td>
                <td>$Lang::tr{'openvpn default'}: <span class="base">on</span></td>
        </tr>
 
-        <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'comp-lzo'} &nbsp;<img src='/blob.gif'</td>
+        <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'comp-lzo'}</td>
                <td><input type='checkbox' name='COMPLZO' $checked{'COMPLZO'}{'on'} /></td>
        </tr>
 
@@ -4620,7 +4715,7 @@ END
 ;
        }
 #jumper
-       print "<tr><td class='boldbase'>$Lang::tr{'remark title'}&nbsp;<img src='/blob.gif' /></td>";
+       print "<tr><td class='boldbase'>$Lang::tr{'remark title'}</td>";
        print "<td colspan='3'><input type='text' name='REMARK' value='$cgiparams{'REMARK'}' size='55' maxlength='50' /></td></tr></table>";
        
        if ($cgiparams{'TYPE'} eq 'host') {
@@ -4687,12 +4782,12 @@ if ($cgiparams{'TYPE'} eq 'host') {
       <tr><td colspan='3'><hr /></td></tr>
       <tr><td colspan='3'>&nbsp;</td></tr>
            <tr><td><input type='radio' name='AUTH' value='certgen' $checked{'AUTH'}{'certgen'} $cakeydisabled /></td><td class='base'>$Lang::tr{'generate a certificate'}</td><td>&nbsp;</td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users fullname or system hostname'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users email'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users department'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'organization name'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'city'}:&nbsp;<img src='/blob.gif'></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'state or province'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users fullname or system hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users email'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users department'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'organization name'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'city'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'state or province'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' SIZE='32' $cakeydisabled /></td></tr>
            <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'country'}:</td><td class='base'><select name='CERT_COUNTRY' $cakeydisabled>
 END
 ;
@@ -4707,12 +4802,12 @@ END
            <table width='100%' cellpadding='0' cellspacing='5' border='0'>
       
            <tr><td><input type='radio' name='AUTH' value='certgen' $checked{'AUTH'}{'certgen'} $cakeydisabled /></td><td class='base'>$Lang::tr{'generate a certificate'}</td><td>&nbsp;</td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users fullname or system hostname'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users email'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users department'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'organization name'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'city'}:&nbsp;<img src='/blob.gif'></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' SIZE='32' $cakeydisabled /></td></tr>
-           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'state or province'}:&nbsp;<img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users fullname or system hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users email'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'users department'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'organization name'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'city'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' SIZE='32' $cakeydisabled /></td></tr>
+           <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'state or province'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' SIZE='32' $cakeydisabled /></td></tr>
            <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'country'}:</td><td class='base'><select name='CERT_COUNTRY' $cakeydisabled>
           
       
@@ -4748,7 +4843,7 @@ if ($cgiparams{'TYPE'} eq 'host') {
                <td class='base' nowrap='nowrap'><input type='password' name='CERT_PASS2' value='$cgiparams{'CERT_PASS2'}' size='32' $cakeydisabled /></td></tr>
                <tr><td colspan='3'>&nbsp;</td></tr>
                <tr><td colspan='3'><hr /></td></tr>
-               <tr><td class='base' colspan='3' align='left'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td></tr>
+               <tr><td class='base' colspan='3' align='left'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'required field'}</td></tr>
        </table>
 END
 }else{
@@ -4759,7 +4854,7 @@ END
                <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                <tr><td colspan='3'><hr /></td></tr>
-               <tr><td class='base' colspan='3' align='left'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td></tr>
+               <tr><td class='base' colspan='3' align='left'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'required field'}</td></tr>
        </table>
  
 END
@@ -5126,7 +5221,7 @@ END
        <th width='15%' class='boldbase' align='center'><b>$Lang::tr{'type'}</b></th>
        <th width='20%' class='boldbase' align='center'><b>$Lang::tr{'remark'}</b></th>
        <th width='10%' class='boldbase' align='center'><b>$Lang::tr{'status'}</b></th>
-       <th width='5%' class='boldbase' colspan='6' align='center'><b>$Lang::tr{'action'}</b></th>
+       <th width='5%' class='boldbase' colspan='7' align='center'><b>$Lang::tr{'action'}</b></th>
 </tr>
 END
                }
@@ -5140,7 +5235,7 @@ END
        <th width='15%' class='boldbase' align='center'><b>$Lang::tr{'type'}</b></th>
        <th width='20%' class='boldbase' align='center'><b>$Lang::tr{'remark'}</b></th>
        <th width='10%' class='boldbase' align='center'><b>$Lang::tr{'status'}</b></th>
-       <th width='5%' class='boldbase' colspan='6' align='center'><b>$Lang::tr{'action'}</b></th>
+       <th width='5%' class='boldbase' colspan='7' align='center'><b>$Lang::tr{'action'}</b></th>
 </tr>
 END
                }
@@ -5239,6 +5334,21 @@ END
        </td></form>
 END
        ;
+
+       if ($confighash{$key}[41] eq "no-pass") {
+               print <<END;
+                       <form method='post' name='frm${key}g'><td align='center' $col>
+                               <input type='image'  name='$Lang::tr{'dl client arch insecure'}' src='/images/openvpn.png'
+                                       alt='$Lang::tr{'dl client arch insecure'}' title='$Lang::tr{'dl client arch insecure'}' border='0' />
+                               <input type='hidden' name='ACTION' value='$Lang::tr{'dl client arch'}' />
+                               <input type='hidden' name='MODE' value='insecure' />
+                               <input type='hidden' name='KEY' value='$key' />
+                       </td></form>
+END
+       } else {
+               print "<td $col>&nbsp;</td>";
+       }
+
        if ($confighash{$key}[4] eq 'cert') {
            print <<END;
            <form method='post' name='frm${key}b'><td align='center' $col>
index 33f521e7569adcb7bf640ce44e0b81c59be280ab..36d0ced90db1d2df274ede47fb15dd8f0339ab7d 100644 (file)
@@ -693,7 +693,7 @@ END
 ;
                 }
                 if ($pppsettings{'TYPE'} =~ /^(modem)$/ ) {
-                        print "<tr><td colspan='3' width='75%'>$Lang::tr{'number'}</td>\n";
+                        print "<tr><td colspan='3' width='75%'>$Lang::tr{'number'}&nbsp;<img src='/blob.gif' alt='*' /></td>\n";
                         print "<td width='25%'><input type='text' name='TELEPHONE' value='$pppsettings{'TELEPHONE'}'></td><tr>\n";
                         if ($pppsettings{'TYPE'} eq 'modem' ) {
                                 print "<tr><td colspan='3' width='75%'>$Lang::tr{'modem speaker on'}</td>\n";
@@ -711,15 +711,15 @@ END
         </select></td>
 </tr>
 <tr>
-        <td colspan='3' width='75%'>$Lang::tr{'optional at cmd'}&nbsp;1&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td colspan='3' width='75%'>$Lang::tr{'optional at cmd'}&nbsp;1</td>
         <td width='25%'><input type='text' name='ADD_AT1' value='$pppsettings{'ADD_AT1'}'></td>
 </tr>
 <tr>
-        <td colspan='3' width='75%'>$Lang::tr{'optional at cmd'}&nbsp;2&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td colspan='3' width='75%'>$Lang::tr{'optional at cmd'}&nbsp;2</td>
         <td width='25%'><input type='text' name='ADD_AT2' value='$pppsettings{'ADD_AT2'}'></td>
 </tr>
 <tr>
-        <td colspan='3' width='75%'>$Lang::tr{'optional at cmd'}&nbsp;3&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td colspan='3' width='75%'>$Lang::tr{'optional at cmd'}&nbsp;3</td>
         <td width='25%'><input type='text' name='ADD_AT3' value='$pppsettings{'ADD_AT3'}'></td>
 </tr>
 <tr>
@@ -732,7 +732,7 @@ END
 
 print <<END
 <tr>
-        <td colspan='3' width='75%'>$Lang::tr{'idle timeout'}</td>
+        <td colspan='3' width='75%'>$Lang::tr{'idle timeout'}&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td width='25%'><input type='text' name='TIMEOUT' value='$pppsettings{'TIMEOUT'}' /></td>
 </tr>
  <tr>
@@ -774,11 +774,11 @@ print <<END
   <td width='25%'><input type='checkbox' name='DIALONDEMANDDNS' $checked{'DIALONDEMANDDNS'}{'on'} /></td>
 </tr>
 <tr>
-        <td colspan='3' width='75%'>$Lang::tr{'holdoff'}:</td>
+        <td colspan='3' width='75%'>$Lang::tr{'holdoff'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td width='25%'><input type='text' name='HOLDOFF' value='$pppsettings{'HOLDOFF'}' /></td>
 </tr>
 <tr>
-        <td colspan='3' width='75%'>$Lang::tr{'maximum retries'}</td>
+        <td colspan='3' width='75%'>$Lang::tr{'maximum retries'}&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td width='25%'><input type='text' name='MAXRETRIES' value='$pppsettings{'MAXRETRIES'}' /></td>
 </tr>
 END
@@ -793,15 +793,15 @@ print <<END
         <td colspan='4' width='100%' bgcolor='$color{'color20'}'><b>$Lang::tr{'pptp settings'}</b></td>
 </tr>
 <tr>
-        <td width='25%'>Peer</td>
+        <td width='25%'>$Lang::tr{'pptp peer'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td colspan='3'><input size=50 type='text' name='PPTP_PEER' value='$pppsettings{'PPTP_PEER'}' /></td>
 </tr>
 <tr>
-        <td width='25%'>My Netconfig</td>
+        <td width='25%'>$Lang::tr{'pptp netconfig'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td colspan='3'><input size=50 type='text' name='PPTP_NICCFG' value='$pppsettings{'PPTP_NICCFG'}' /></td>
 </tr>
 <tr>
-        <td width='25%'>PPTP Route&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td width='25%'>$Lang::tr{'pptp route'}:</td>
         <td colspan='3'><input size=50 type='text' name='PPTP_ROUTE' value='$pppsettings{'PPTP_ROUTE'}' /></td>
 </tr>
 
@@ -889,12 +889,12 @@ print <<END
         <td colspan='4' width='100%' bgcolor='$color{'color20'}'><b>$Lang::tr{'pppoe settings'}</b></td>
 </tr>
 <tr>
-        <td width='25%'>$Lang::tr{'service name'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td width='25%'>$Lang::tr{'service name'}</td>
         <td colspan='2' width='50%'></td>
         <td width='25%'><input type='text' name='SERVICENAME' value='$pppsettings{'SERVICENAME'}' /></td>
 </tr>
 <tr>
-        <td width='25%'>$Lang::tr{'concentrator name'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td width='25%'>$Lang::tr{'concentrator name'}</td>
         <td colspan='2' width='50%'></td>
         <td width='25%'><input type='text' name='CONCENTRATORNAME' value='$pppsettings{'CONCENTRATORNAME'}' /></td>
 </tr>
@@ -909,11 +909,11 @@ print <<END
 </tr>
 <tr>
 <tr>
-        <td width='25%'>MTU&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td width='25%'>MTU:</td>
         <td width='25%'><input type='text' name='MTU' value='$pppsettings{'MTU'}' /></td>
 </tr>
 <tr>
-        <td width='25%'>MRU&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td width='25%'>MRU:</td>
         <td width='25%'><input type='text' name='MRU' value='$pppsettings{'MRU'}' /></td>
 </tr>
 END
@@ -925,9 +925,9 @@ print <<END
         <td bgcolor='$color{'color20'}' colspan='4' width='100%'><b>$Lang::tr{'authentication'}</b></td>
 </tr>
 <tr>
-        <td width='25%'>$Lang::tr{'username'}</td>
+        <td width='25%'>$Lang::tr{'username'}&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td width='25%'><input type='text' name='USERNAME' value='$pppsettings{'USERNAME'}' /></td>
-        <td width='25%'>$Lang::tr{'password'}</td>
+        <td width='25%'>$Lang::tr{'password'}&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td width='25%'><input type='password' name='PASSWORD' value='$pppsettings{'PASSWORD'}' /></td>
 </tr>
 <tr>
@@ -948,7 +948,7 @@ END
 }
 print <<END
         </select></td>
-        <td width='25%'>$Lang::tr{'script name'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+        <td width='25%'>$Lang::tr{'script name'}</td>
         <td width='25%'><input type='text' name='LOGINSCRIPT' value='$pppsettings{'LOGINSCRIPT'}' /></td>
 </tr>
 <tr><td colspan='4' width='100%'><br></br></td></tr>
@@ -969,7 +969,7 @@ print <<END
 </tr>
 <tr><td colspan='4' width='100%'><br></br><hr></hr><br></br></td></tr>
 <tr>
-        <td width='25%'>$Lang::tr{'profile name'}</td>
+        <td width='25%'>$Lang::tr{'profile name'}&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td width='25%'><input type='text' name='PROFILENAME' value='$pppsettings{'PROFILENAME'}'>
         <td colspan='2' width='50%'></td>
 </tr>
@@ -978,14 +978,16 @@ print <<END
 </tr>
 <tr>
         <td colspan='2' width='50%'>$Lang::tr{'legend'}:</td>
-        <td colspan='2' width='50%'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td>
+        <td colspan='2' width='50%'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'required field'}</td>
 </tr>
-</table>
 END
 ;
-&Header::closebox();
 }
 
+print "</table>";
+
+&Header::closebox();
+
 print "</form>\n";
 
 &Header::closebigbox();
index ba2455a96ca17dcf966ffc5cb2ecb81049552887..6c4e2b05d1e2f1cbc99bd0551ab88950b5a1af51 100644 (file)
@@ -969,13 +969,13 @@ print <<END
 <tr>
        <td width='25%' class='base'>$Lang::tr{'advproxy enabled on'} <font color="$Header::colourgreen">Green</font>:</td>
        <td width='20%'><input type='checkbox' name='ENABLE' $checked{'ENABLE'}{'on'} /></td>
-       <td width='25%' class='base'>$Lang::tr{'advproxy proxy port'}:</td>
+       <td width='25%' class='base'>$Lang::tr{'advproxy proxy port'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td width='30%'><input type='text' name='PROXY_PORT' value='$proxysettings{'PROXY_PORT'}' size='5' /></td>
 </tr>
 <tr>
        <td class='base'>$Lang::tr{'advproxy transparent on'} <font color="$Header::colourgreen">Green</font>:</td>
        <td><input type='checkbox' name='TRANSPARENT' $checked{'TRANSPARENT'}{'on'} /></td>
-       <td width='25%' class='base'>$Lang::tr{'advproxy proxy port transparent'}:</td>
+       <td width='25%' class='base'>$Lang::tr{'advproxy proxy port transparent'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td width='30%'><input type='text' name='TRANSPARENT_PORT' value='$proxysettings{'TRANSPARENT_PORT'}' size='5' /></td>
 </tr>
 <tr>
@@ -988,7 +988,7 @@ if ($netsettings{'BLUE_DEV'}) {
        print "<td colspan='2'>&nbsp;</td>";
 }
 print <<END
-       <td class='base'>$Lang::tr{'advproxy visible hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy visible hostname'}:</td>
        <td><input type='text' name='VISIBLE_HOSTNAME' value='$proxysettings{'VISIBLE_HOSTNAME'}' /></td>
 </tr>
 <tr>
@@ -1035,7 +1035,7 @@ print <<END
 <hr size='1'>
 <table width='100%'>
 <tr><td class='base' colspan='4'><b>$Lang::tr{'advproxy redirector children'}</b></td></tr>
-<tr><td class='base' >$Lang::tr{'processes'}<input type='text' name='CHILDREN' value='$proxysettings{'CHILDREN'}' size='5' /></td>
+<tr><td class='base' >$Lang::tr{'processes'}:&nbsp;<img src='/blob.gif' alt='*' /><input type='text' name='CHILDREN' value='$proxysettings{'CHILDREN'}' size='5' /></td>
 END
 ;
 my $count = `ip n| wc -l`;
@@ -1071,19 +1071,19 @@ print <<END
 <tr>
        <td width='25%' class='base'>$Lang::tr{'advproxy via forwarding'}:</td>
        <td width='20%'><input type='checkbox' name='FORWARD_VIA' $checked{'FORWARD_VIA'}{'on'} /></td>
-       <td width='25%' class='base'>$Lang::tr{'advproxy upstream proxy host:port'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td width='25%' class='base'>$Lang::tr{'advproxy upstream proxy host:port'}:</td>
        <td width='30%'><input type='text' name='UPSTREAM_PROXY' value='$proxysettings{'UPSTREAM_PROXY'}' /></td>
 </tr>
 <tr>
        <td class='base'>$Lang::tr{'advproxy client IP forwarding'}:</td>
        <td><input type='checkbox' name='FORWARD_IPADDRESS' $checked{'FORWARD_IPADDRESS'}{'on'} /></td>
-       <td class='base'>$Lang::tr{'advproxy upstream username'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy upstream username'}:</td>
        <td><input type='text' name='UPSTREAM_USER' value='$proxysettings{'UPSTREAM_USER'}' /></td>
 </tr>
 <tr>
        <td class='base'>$Lang::tr{'advproxy username forwarding'}:</td>
        <td><input type='checkbox' name='FORWARD_USERNAME' $checked{'FORWARD_USERNAME'}{'on'} /></td>
-       <td class='base'>$Lang::tr{'advproxy upstream password'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy upstream password'}:</td>
        <td><input type='password' name='UPSTREAM_PASSWORD' value='$proxysettings{'UPSTREAM_PASSWORD'}' /></td>
 </tr>
 <tr>
@@ -1119,28 +1119,28 @@ print <<END
 <tr>
        <td class='base'>$Lang::tr{'proxy cachemgr'}:</td>
        <td><input type='checkbox' name='CACHEMGR' $checked{'CACHEMGR'}{'on'} /></td>
-       <td class='base'>$Lang::tr{'advproxy admin mail'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy admin mail'}:</td>
        <td><input type='text' name='ADMIN_MAIL_ADDRESS' value='$proxysettings{'ADMIN_MAIL_ADDRESS'}' /></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'proxy filedescriptors'}:</td>
+       <td class='base'>$Lang::tr{'proxy filedescriptors'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='FILEDESCRIPTORS' value='$proxysettings{'FILEDESCRIPTORS'}' size='5' /></td>
-       <td class='base'>$Lang::tr{'proxy admin password'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'proxy admin password'}:</td>
        <td><input type='text' name='ADMIN_PASSWORD' value='$proxysettings{'ADMIN_PASSWORD'}' /></td>
 </tr>
 <tr>
        <td width='25%'></td> <td width='20%'> </td><td width='25%'> </td><td width='30%'></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'advproxy ram cache size'}:</td>
+       <td class='base'>$Lang::tr{'advproxy ram cache size'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='CACHE_MEM' value='$proxysettings{'CACHE_MEM'}' size='5' /></td>
-       <td class='base'>$Lang::tr{'advproxy hdd cache size'}:</td>
+       <td class='base'>$Lang::tr{'advproxy hdd cache size'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='CACHE_SIZE' value='$proxysettings{'CACHE_SIZE'}' size='5' /></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'advproxy min size'}:</td>
+       <td class='base'>$Lang::tr{'advproxy min size'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='MIN_SIZE' value='$proxysettings{'MIN_SIZE'}' size='5' /></td>
-       <td class='base'>$Lang::tr{'advproxy max size'}:</td>
+       <td class='base'>$Lang::tr{'advproxy max size'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='MAX_SIZE' value='$proxysettings{'MAX_SIZE'}' size='5' /></td>
 </tr>
 <tr>
@@ -1158,7 +1158,7 @@ print <<END
                                <!-- intentionally left empty -->
                        </tr>
                        <tr>
-                       <td>$Lang::tr{'advproxy no cache sites'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                       <td>$Lang::tr{'advproxy no cache sites'}:</td>
                        </tr>
                        <tr>
                                <!-- intentionally left empty -->
@@ -1218,8 +1218,8 @@ print <<END
        <td width='25%' align='center'></td> <td width='20%' align='center'></td><td width='25%' align='center'></td><td width='30%' align='center'></td>
 </tr>
 <tr>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy standard ports'}:</td>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy ssl ports'}:</td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy standard ports'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy ssl ports'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
 </tr>
 <tr>
        <td colspan='2'><textarea name='PORTS_SAFE' cols='32' rows='6' wrap='off'>
@@ -1247,7 +1247,7 @@ print <<END
        <td width='25%'></td> <td width='20%'> </td><td width='25%'> </td><td width='30%'></td>
 </tr>
 <tr>
-       <td colspan='4' class='base'>$Lang::tr{'advproxy allowed subnets'}:</td>
+       <td colspan='4' class='base'>$Lang::tr{'advproxy allowed subnets'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
 </tr>
 <tr>
        <td colspan='2' rowspan='4'><textarea name='SRC_SUBNETS' cols='32' rows='3' wrap='off'>
@@ -1300,8 +1300,8 @@ print <<END
        <td width='25%'></td> <td width='20%'> </td><td width='25%'> </td><td width='30%'></td>
 </tr>
 <tr>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy unrestricted ip clients'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy unrestricted mac clients'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy unrestricted ip clients'}:</td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy unrestricted mac clients'}:</td>
 </tr>
 <tr>
        <td colspan='2'><textarea name='SRC_UNRESTRICTED_IP' cols='32' rows='3' wrap='off'>
@@ -1327,8 +1327,8 @@ print <<END
        <td width='25%'></td> <td width='20%'> </td><td width='25%'> </td><td width='30%'></td>
 </tr>
 <tr>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy banned ip clients'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy banned mac clients'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy banned ip clients'}:</td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy banned mac clients'}:</td>
 </tr>
 <tr>
        <td colspan='2'><textarea name='SRC_BANNED_IP' cols='32' rows='3' wrap='off'>
@@ -1373,12 +1373,12 @@ END
 ;
 if ($proxysettings{'CLASSROOM_EXT'} eq 'on'){
 print <<END
-       <td class='base'>$Lang::tr{'advproxy supervisor password'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy supervisor password'}:</td>
        <td><input type='password' name='SUPERVISOR_PASSWORD' value='$proxysettings{'SUPERVISOR_PASSWORD'}' size='12' /></td>
 </tr>
 <tr>
        <td colspan='2' class='base'>$Lang::tr{'advproxy cre group definitions'}:</td>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy cre supervisors'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy cre supervisors'}:</td>
 END
 ;
 }
@@ -1512,9 +1512,9 @@ print <<END
        <td colspan='4'><b>$Lang::tr{'advproxy transfer limits'}</b></td>
 </tr>
 <tr>
-       <td width='25%' class='base'>$Lang::tr{'advproxy max download size'}:</td>
+       <td width='25%' class='base'>$Lang::tr{'advproxy max download size'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td width='20%'><input type='text' name='MAX_INCOMING_SIZE' value='$proxysettings{'MAX_INCOMING_SIZE'}' size='5' /></td>
-       <td width='25%' class='base'>$Lang::tr{'advproxy max upload size'}:</td>
+       <td width='25%' class='base'>$Lang::tr{'advproxy max upload size'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td width='30%'><input type='text' name='MAX_OUTGOING_SIZE' value='$proxysettings{'MAX_OUTGOING_SIZE'}' size='5' /></td>
 </tr>
 </table>
@@ -1619,7 +1619,7 @@ END
 if ( $proxysettings{'ENABLE_MIME_FILTER'} eq 'on' ){
 print <<END
 <tr>
-       <td  colspan='2' class='base'>$Lang::tr{'advproxy MIME block types'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td  colspan='2' class='base'>$Lang::tr{'advproxy MIME block types'}:</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
 </tr>
@@ -1683,8 +1683,8 @@ print <<END
        <td><b>$Lang::tr{'advproxy privacy'}</b></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'advproxy fake useragent'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-       <td class='base'>$Lang::tr{'advproxy fake referer'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy fake useragent'}:</td>
+       <td class='base'>$Lang::tr{'advproxy fake referer'}:</td>
 </tr>
 <tr>
        <td><input type='text' name='FAKE_USERAGENT' value='$proxysettings{'FAKE_USERAGENT'}' size='40%' /></td>
@@ -1742,7 +1742,7 @@ if (!($proxysettings{'AUTH_METHOD'} eq 'none')) { if (!($proxysettings{'AUTH_MET
        <td colspan='2' rowspan= '6' valign='top' class='base'>
                <table cellpadding='0' cellspacing='0'>
                        <tr>
-                       <td class='base'>$Lang::tr{'advproxy AUTH realm'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                       <td class='base'>$Lang::tr{'advproxy AUTH realm'}:</td>
                        </tr>
                        <tr>
                                <!-- intentionally left empty -->
@@ -1760,7 +1760,7 @@ if (!($proxysettings{'AUTH_METHOD'} eq 'none')) { if (!($proxysettings{'AUTH_MET
                                <!-- intentionally left empty -->
                        </tr>
                        <tr>
-                       <td>$Lang::tr{'advproxy AUTH no auth'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                       <td>$Lang::tr{'advproxy AUTH no auth'}:</td>
                        </tr>
                        <tr>
                                <!-- intentionally left empty -->
@@ -1786,7 +1786,7 @@ print <<END
        <td><input type='text' name='AUTH_CACHE_TTL' value='$proxysettings{'AUTH_CACHE_TTL'}' size='5' /></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'advproxy AUTH limit of IP addresses'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy AUTH limit of IP addresses'}:</td>
        <td><input type='text' name='AUTH_MAX_USERIP' value='$proxysettings{'AUTH_MAX_USERIP'}' size='5' /></td>
 </tr>
 <tr>
@@ -1856,7 +1856,7 @@ print <<END
 </tr>
 <tr>
        <td colspan='2' class='base'>$Lang::tr{'advproxy IDENT aware hosts'}:</td>
-       <td colspan='2' class='base'>$Lang::tr{'advproxy AUTH no auth'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2' class='base'>$Lang::tr{'advproxy AUTH no auth'}:</td>
 </tr>
 <tr>
        <td colspan='2'><textarea name='IDENT_HOSTS' cols='32' rows='6' wrap='off'>
@@ -1942,7 +1942,7 @@ print <<END
        <td><input type='text' name='NTLM_DOMAIN' value='$proxysettings{'NTLM_DOMAIN'}' size='15' /></td>
        <td class='base'>$Lang::tr{'advproxy NTLM PDC hostname'}:</td>
        <td><input type='text' name='NTLM_PDC' value='$proxysettings{'NTLM_PDC'}' size='14' /></td>
-       <td class='base'>$Lang::tr{'advproxy NTLM BDC hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy NTLM BDC hostname'}:</td>
        <td><input type='text' name='NTLM_BDC' value='$proxysettings{'NTLM_BDC'}' size='14' /></td>
 </tr>
 </table>
@@ -2020,7 +2020,7 @@ if ($proxysettings{'AUTH_METHOD'} eq 'ntlm-auth') {
                                <td colspan='4'><b>$Lang::tr{'advproxy group access control'}</b></td>
                        </tr>
                        <tr>
-                               <td width='20%' class='base'>$Lang::tr{'advproxy group required'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                               <td width='20%' class='base'>$Lang::tr{'advproxy group required'}:</td>
                                <td width='40%'><input type='text' name='NTLM_AUTH_GROUP' value='$proxysettings{'NTLM_AUTH_GROUP'}' size='37' /></td>
                                <td>&nbsp;</td>
                                <td>&nbsp;</td>
@@ -2076,7 +2076,7 @@ print <<END
        <td colspan='4'><b>$Lang::tr{'advproxy LDAP group access control'}</b></td>
 </tr>
 <tr>
-       <td width='20%' class='base'>$Lang::tr{'advproxy LDAP group required'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td width='20%' class='base'>$Lang::tr{'advproxy LDAP group required'}:</td>
        <td width='40%'><input type='text' name='LDAP_GROUP' value='$proxysettings{'LDAP_GROUP'}' size='37' /></td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
@@ -2103,7 +2103,7 @@ print <<END
        <td width='30%'><input type='text' name='RADIUS_PORT' value='$proxysettings{'RADIUS_PORT'}' size='3' /></td>
 </tr>
 <tr>
-       <td class='base'>$Lang::tr{'advproxy RADIUS identifier'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'advproxy RADIUS identifier'}:</td>
        <td><input type='text' name='RADIUS_IDENTIFIER' value='$proxysettings{'RADIUS_IDENTIFIER'}' size='14' /></td>
        <td class='base'>$Lang::tr{'advproxy RADIUS secret'}:</td>
        <td><input type='password' name='RADIUS_SECRET' value='$proxysettings{'RADIUS_SECRET'}' size='14' /></td>
@@ -2259,9 +2259,7 @@ print <<END
 <br />
 <table width='100%'>
 <tr>
-       <td><img src='/blob.gif' align='top' alt='*' />&nbsp;
-       <font class='base'>$Lang::tr{'this field may be blank'}</font>
-       </td>
+       <td><img src='/blob.gif' align='top' alt='*' />&nbsp;<font class='base'>$Lang::tr{'required field'}</font></td>
        <td align='right'>&nbsp;</td>
 </tr>
 </table>
index 5542f65309d7863e9f14489d73cde0373f6d1658..590ad15bff37e60e45b8fa2b8a34b0763d56da8b 100644 (file)
@@ -463,18 +463,16 @@ if ($qossettings{'ACTION'} eq $Lang::tr{'start'})
        $qossettings{'ENABLED'} = 'on';
        &General::writehash("${General::swroot}/qos/settings", \%qossettings);
        system("/usr/local/bin/qosctrl generate >/dev/null 2>&1");
-       system("/usr/bin/touch /var/ipfire/qos/enable");
        system("/usr/local/bin/qosctrl start >/dev/null 2>&1");
        system("logger -t ipfire 'QoS started'");
 }
 elsif ($qossettings{'ACTION'} eq $Lang::tr{'stop'})
 {
-       system("/usr/local/bin/qosctrl stop >/dev/null 2>&1");
-       unlink "/var/ipfire/qos/bin/qos.sh";
-       unlink "/var/ipfire/qos/enable";
-       system("logger -t ipfire 'QoS stopped'");
        $qossettings{'ENABLED'} = 'off';
        &General::writehash("${General::swroot}/qos/settings", \%qossettings);
+       system("/usr/local/bin/qosctrl stop >/dev/null 2>&1");
+       system("/usr/local/bin/qosctrl generate >/dev/null 2>&1");
+       system("logger -t ipfire 'QoS stopped'");
 }
 elsif ($qossettings{'ACTION'} eq $Lang::tr{'restart'})
 {
@@ -587,7 +585,6 @@ END
                $qossettings{'ENABLED'} = 'on';
                &General::writehash("${General::swroot}/qos/settings", \%qossettings);
                system("/usr/local/bin/qosctrl generate >/dev/null 2>&1");
-               system("/usr/bin/touch /var/ipfire/qos/enable");
                system("/usr/local/bin/qosctrl start >/dev/null 2>&1");
                system("logger -t ipfire 'QoS started'");
        } else {
@@ -938,7 +935,7 @@ END
                <tr><td width='33%' align='right'>$Lang::tr{'guaranteed bandwith'}:
                    <td width='33%' align='left'><input type='text' size='20' name='MINBWDTH' maxlength='8' required='1' value="$qossettings{'MINBWDTH'}" />
                    <td width='33%' align='center'>&nbsp;
-               <tr><td width='33%' align='right'>$Lang::tr{'max bandwith'}:
+               <tr><td width='33%' align='right'>$Lang::tr{'max bandwith'}&nbsp;<img src='/blob.gif' alt='*' />:
                    <td width='33%' align='left'><input type='text' size='20' name='MAXBWDTH' maxlength='8' required='1' value="$qossettings{'MAXBWDTH'}" />
                    <td width='33%' align='center'>&nbsp;
                <tr><td width='33%' align='right'>Burst:
@@ -960,8 +957,8 @@ print <<END
                                <option value='1' $selected{'TOS'}{'1'}>$Lang::tr{'min costs'} (1)</option></select>
                    <td width='33%' align='center'>&nbsp;
                <tr><td width='33%' align='right'>$Lang::tr{'remark'}:
-                   <td width='66%' colspan='2' align='left'><input type='text' name='REMARK' size='40' maxlength='40' value="$qossettings{'REMARK'}" /> <img alt="" alt='blob' src='/blob.gif' />
-               <tr><td width='33%' align='right'>&nbsp;
+                   <td width='66%' colspan='2' align='left'><input type='text' name='REMARK' size='40' maxlength='40' value="$qossettings{'REMARK'}" />
+               <tr><td width='33%' align='right'><img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'required field'}
                    <td width='33%' align='left'>&nbsp;
                    <td width='33%' align='center'><input type='submit' name='DOCLASS' value='$Lang::tr{'save'}' />&nbsp;<input type='reset' value='$Lang::tr{'reset'}' />
                </table></form>
index c460a74e7ca1ab56d4d2dd44f8ecc9d69f9df6c2..15989bd27dad212e0881d1bfd973a0ee9df019b4 100644 (file)
@@ -118,12 +118,15 @@ if ($settings{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
 }
 
 if ($settings{'ACTION'} eq $Lang::tr{'add'}) {
-       # Convert subnet masks to CIDR notation.
-       $settings{'IP'} = &General::iporsubtocidr($settings{'IP'});
-
-# Validate inputs
-       if (( !&General::validip($settings{'IP'})) and ( !&General::validipandmask($settings{'IP'}))){
-       $errormessage = $Lang::tr{'invalid ip'}." / ".$Lang::tr{'invalid netmask'};
+       # Validate inputs
+       if (!&General::validipandmask($settings{'IP'})){
+               $errormessage = $Lang::tr{'invalid ip'}." / ".$Lang::tr{'invalid netmask'};
+       }else{
+               #set networkip if not already correctly defined
+               my($ip,$cidr) = split(/\//,$settings{'IP'});
+               $cidr = &General::iporsubtocidr($cidr);
+               my $netip=&General::getnetworkip($ip,$cidr);
+               $settings{'IP'} = "$netip/$cidr";
        }
 
        if ($settings{'IP'} =~ /^0\.0\.0\.0/){
@@ -146,7 +149,7 @@ if ($settings{'ACTION'} eq $Lang::tr{'add'}) {
                $temp[2] ='' unless defined $temp[2]; # not always populated
                $temp[3] ='' unless defined $temp[2]; # not always populated
                #Same ip already used?
-               if($temp[1] eq $settings{'IP'}){
+               if($temp[1] eq $settings{'IP'} && $settings{'KEY1'} eq ''){
                        $errormessage = $Lang::tr{'ccd err irouteexist'};
                        last;
                }
index 39d71f84257b9c353d9ee884c13d959f5c2ae148..8363b995123864129322b302844fd7e3beab6f51 100644 (file)
@@ -263,9 +263,9 @@ print <<END
 </td></tr>
 <tr>
        <td>&nbsp;</td>
-       <td width='25%' class='base'>$Lang::tr{'primary ntp server'}:</td>
+       <td width='25%' class='base'>$Lang::tr{'primary ntp server'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td width='25%'><input type='text' name='NTP_ADDR_1' value='$timesettings{'NTP_ADDR_1'}' /></td>
-       <td width='25%' class='base'>$Lang::tr{'secondary ntp server'}: &nbsp;<img src='/blob.gif' align='top' alt='*' /></td>
+       <td width='25%' class='base'>$Lang::tr{'secondary ntp server'}:</td>
        <td width='25%'><input type='text' name='NTP_ADDR_2' value='$timesettings{'NTP_ADDR_2'}' /></td>
 </tr>
 <tr>
@@ -319,7 +319,7 @@ print <<END
 <hr />
 <table width='100%'>
 <tr>
-       <td width='30%'><img src='/blob.gif' alt='*' /> $Lang::tr{'this field may be blank'}</td>
+       <td width='30%'><img src='/blob.gif' alt='*' /> $Lang::tr{'required field'}</td>
        <td width='65%' align='right'><input type='submit' name='ACTION' value='$Lang::tr{'set time now'}' /></td>
        <td width='5%' align='right'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' /></td>
 </tr>
index 228b5d48c2ca14598a22cc3431b02adf85dfb766..193e4059f6de97a9481d6c36a48d0d6ddc3e4af9 100644 (file)
 ###############################################################################
 
 use strict;
-use Locale::Country;
+use Locale::Codes::Country;
 
 # enable only the following on debugging purpose
 use warnings;
 use CGI::Carp 'fatalsToBrowser';
 
 require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/geoip-functions.pl";
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -266,7 +267,7 @@ if ( ($memory != 0) && (@pid[0] ne "///") ){
                        <tr>
                                <td width='25%' class='base'>$Lang::tr{'tor enabled'}:</td>
                                <td width='30%'><input type='checkbox' name='TOR_ENABLED' $checked{'TOR_ENABLED'}{'on'} /></td>
-                               <td width='25%' class='base'>$Lang::tr{'tor socks port'}:</td>
+                               <td width='25%' class='base'>$Lang::tr{'tor socks port'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td width='20%'><input type='text' name='TOR_SOCKS_PORT' value='$settings{'TOR_SOCKS_PORT'}' size='5' /></td>
                        </tr>
                        <tr>
@@ -323,9 +324,9 @@ END
                                                <option value=''>- $Lang::tr{'tor exit country any'} -</option>
 END
 
-               my @country_names = Locale::Country::all_country_names();
+               my @country_names = Locale::Codes::Country::all_country_names();
                foreach my $country_name (sort @country_names) {
-                       my $country_code = Locale::Country::country2code($country_name);
+                       my $country_code = Locale::Codes::Country::country2code($country_name);
                        $country_code = uc($country_code);
                        print "<option value='$country_code'";
 
@@ -386,17 +387,17 @@ END
                                                <option value='private-bridge' $selected{'TOR_RELAY_MODE'}{'private-bridge'}>$Lang::tr{'tor relay mode private bridge'}</option>
                                        </select>
                                </td>
-                               <td width='25%' class='base'>$Lang::tr{'tor relay nickname'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                               <td width='25%' class='base'>$Lang::tr{'tor relay nickname'}:</td>
                                <td width='20%'>
                                        <input type='text' name='TOR_RELAY_NICKNAME' value='$settings{'TOR_RELAY_NICKNAME'}' maxlength='19' />
                                </td>
                        </tr>
                        <tr>
-                               <td width='25%' class='base'>$Lang::tr{'tor relay address'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                               <td width='25%' class='base'>$Lang::tr{'tor relay address'}:</td>
                                <td width='30%'>
                                        <input type='text' name='TOR_RELAY_ADDRESS' value='$settings{'TOR_RELAY_ADDRESS'}' />
                                </td>
-                               <td width='25%' class='base'>$Lang::tr{'tor relay port'}:</td>
+                               <td width='25%' class='base'>$Lang::tr{'tor relay port'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td width='20%'>
                                        <input type='text' name='TOR_RELAY_PORT' value='$settings{'TOR_RELAY_PORT'}' size='5' />
                                </td>
@@ -404,13 +405,13 @@ END
                        <tr>
                                <td width='25%'>&nbsp;</td>
                                <td width='30%'>&nbsp;</td>
-                               <td width='25%' class='base'>$Lang::tr{'tor directory port'}:</td>
+                               <td width='25%' class='base'>$Lang::tr{'tor directory port'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td width='20%'>
                                        <input type='text' name='TOR_RELAY_DIRPORT' value='$settings{'TOR_RELAY_DIRPORT'}' size='5' />&nbsp;$Lang::tr{'tor 0 = disabled'}
                                </td>
                        </tr>
                        <tr>
-                               <td width='25%' class='base'>$Lang::tr{'tor contact info'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                               <td width='25%' class='base'>$Lang::tr{'tor contact info'}:</td>
                                <td width='75%' colspan='3'>
                                        <input type='text' name='TOR_RELAY_CONTACT_INFO' value='$settings{'TOR_RELAY_CONTACT_INFO'}' style='width: 98%;' />
                                </td>
@@ -441,7 +442,7 @@ END
                                                <option value='0' $selected{'TOR_RELAY_BANDWIDTH_RATE'}{'0'}>$Lang::tr{'tor bandwidth unlimited'}</option>
                                        </select>
                                </td>
-                               <td width='25%' class='base'>$Lang::tr{'tor accounting limit'}:</td>
+                               <td width='25%' class='base'>$Lang::tr{'tor accounting limit'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td width='20%'>
                                        <input type='text' name='TOR_RELAY_ACCOUNTING_LIMIT' value='$settings{'TOR_RELAY_ACCOUNTING_LIMIT'}' size='12' />
                                </td>
@@ -484,9 +485,7 @@ END
        print <<END;
                <table width='95%'>
                        <tr>
-                               <td>
-                                       <img src='/blob.gif' align='top' alt='*' />&nbsp;<font class='base'>$Lang::tr{'this field may be blank'}</font>
-                               </td>
+                               <td><img src='/blob.gif' align='top' alt='*' />&nbsp;<font class='base'>$Lang::tr{'required field'}</font></td>
                                <td align='right'>&nbsp;</td>
                        </tr>
                </table>
@@ -621,10 +620,14 @@ END
 END
 
                                if (exists($node->{'country_code'})) {
-                                       if (!$node->{'country_code'} or $node->{'country_code'} eq '??') {
-                                               print "<img src='/images/flags/blank.png' border='0' align='absmiddle'/>";
+                                       # Get the flag icon of the country.
+                                       my $flag_icon = &GeoIP::get_flag_icon($node->{'country_code'});
+
+                                       # Check if a flag for the given country is available.
+                                       if ($flag_icon) {
+                                               print "<a href='country.cgi#$node->{'country_code'}'><img src='$flag_icon' border='0' align='absmiddle' alt='$node->{'country_code'}'></a>";
                                        } else {
-                                               print "<a href='country.cgi#$node->{'country_code'}'><img src='/images/flags/$node->{'country_code'}.png' border='0' align='absmiddle' alt='$node->{'country_code'}'></a>";
+                                               print "<img src='/images/flags/blank.png' border='0' align='absmiddle'/>";
                                        }
                                }
 
diff --git a/html/cgi-bin/tripwire.cgi b/html/cgi-bin/tripwire.cgi
deleted file mode 100644 (file)
index fb48a27..0000000
+++ /dev/null
@@ -1,540 +0,0 @@
-#!/usr/bin/perl
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-use strict;
-# enable only the following on debugging purpose
-#use warnings;
-#use CGI::Carp 'fatalsToBrowser';
-
-require '/var/ipfire/general-functions.pl';
-require "${General::swroot}/lang.pl";
-require "${General::swroot}/header.pl";
-
-my %tripwiresettings = ();
-my %checked = ();
-my %netsettings = ();
-my $message = "";
-my $errormessage = "";
-my @Logs = `ls -r /var/ipfire/tripwire/report/ 2>/dev/null`;
-my $file = `ls -tr /var/ipfire/tripwire/report/ | tail -1 2>/dev/null`;
-my @cronjobs = `ls /etc/fcron.daily/tripwire* 2>/dev/null`;
-my $Log =$Lang::tr{'no log selected'};
-
-my %color = ();
-my %mainsettings = ();
-&General::readhash("${General::swroot}/main/settings", \%mainsettings);
-&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
-
-############################################################################################################################
-################################################# Tripwire Default Variablen ################################################
-
-$tripwiresettings{'ROOT'} = '/usr/sbin';
-$tripwiresettings{'POLFILE'} = '/var/ipfire/tripwire/tw.pol';
-$tripwiresettings{'DBFILE'} = '/var/ipfire/tripwire/$(HOSTNAME).twd';
-$tripwiresettings{'REPORTFILE'} = '/var/ipfire/tripwire/report/$(DATE).twr';
-$tripwiresettings{'SITEKEYFILE'} = '/var/ipfire/tripwire/site.key';
-$tripwiresettings{'LOCALKEYFILE'} = '/var/ipfire/tripwire/local.key';
-$tripwiresettings{'EDITOR'} = '/usr/bin/vi';
-$tripwiresettings{'LATEPROMPTING'} = 'false';
-$tripwiresettings{'LOOSEDIRECTORYCHECKING'} = 'false';
-$tripwiresettings{'MAILNOVIOLATIONS'} = 'false';
-$tripwiresettings{'EMAILREPORTLEVEL'} = '3';
-$tripwiresettings{'REPORTLEVEL'} = '3';
-$tripwiresettings{'MAILMETHOD'} = 'SENDMAIL';
-$tripwiresettings{'SMTPHOST'} = 'ipfire.myipfire.de';
-$tripwiresettings{'SMTPPORT'} = '25';
-$tripwiresettings{'SYSLOGREPORTING'} = 'false';
-$tripwiresettings{'MAILPROGRAM'} = '/usr/sbin/sendmail -oi -t';
-$tripwiresettings{'SITEKEY'} = 'ipfire';
-$tripwiresettings{'LOCALKEY'} = 'ipfire';
-$tripwiresettings{'ACTION'} = '';
-
-&General::readhash("${General::swroot}/tripwire/settings", \%tripwiresettings);
-
-############################################################################################################################
-######################################################### Tripwire HTML Part ###############################################
-
-&Header::showhttpheaders();
-
-&Header::getcgihash(\%tripwiresettings);
-&Header::openpage('Tripwire', 1,);
-&Header::openbigbox('100%', 'left', '', $errormessage);
-
-############################################################################################################################
-############################################### Tripwire Config Datei erstellen ############################################
-
-if ($tripwiresettings{'ACTION'} eq $Lang::tr{'save'})
-{
-system("/usr/local/bin/tripwirectrl readconfig  >/dev/null 2>&1");
-open (FILE, ">${General::swroot}/tripwire/twcfg.txt") or die "Can't save tripwire config: $!";
-flock (FILE, 2);
-
-print FILE <<END
-
-ROOT                   =$tripwiresettings{'ROOT'}
-POLFILE                =$tripwiresettings{'POLFILE'}
-DBFILE                 =$tripwiresettings{'DBFILE'}
-REPORTFILE             =$tripwiresettings{'REPORTFILE'}
-SITEKEYFILE            =$tripwiresettings{'SITEKEYFILE'}
-LOCALKEYFILE           =$tripwiresettings{'LOCALKEYFILE'}
-EDITOR                 =$tripwiresettings{'EDITOR'}
-LATEPROMPTING          =$tripwiresettings{'LATEPROMPTING'}
-LOOSEDIRECTORYCHECKING =$tripwiresettings{'LOOSEDIRECTORYCHECKING'}
-MAILNOVIOLATIONS       =$tripwiresettings{'MAILNOVIOLATIONS'}
-EMAILREPORTLEVEL       =$tripwiresettings{'EMAILREPORTLEVEL'}
-REPORTLEVEL            =$tripwiresettings{'REPORTLEVEL'}
-MAILMETHOD             =$tripwiresettings{'MAILMETHOD'}
-SMTPHOST               =$tripwiresettings{'SMTPHOST'}
-SMTPPORT               =$tripwiresettings{'SMTPPORT'}
-SYSLOGREPORTING        =$tripwiresettings{'SYSLOGREPORTING'}
-MAILPROGRAM            =$tripwiresettings{'MAILPROGRAM'}
-
-END
-;
-close FILE;
-
-&General::writehash("${General::swroot}/tripwire/settings", \%tripwiresettings);
-system("/usr/local/bin/tripwirectrl lockconfig  >/dev/null 2>&1");
-}
-
-############################################################################################################################
-################################################## Sicherheitsabfrage für CGI ##############################################
-
-if ($tripwiresettings{'ACTION'} eq 'addcron')
-       {
-       print <<END
-       <br />
-       <table width='95%' cellspacing='0'>
-       <tr><td bgcolor='$color{'color20'}' colspan='2' align='center'><b>$Lang::tr{'add cron'}</b>
-       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-       <tr><td align='center' colspan='2'>HH<input type='text' size='2' name='HOUR' value='08'/>MM<input type='text' size='2' name='MINUTE' value='00'/><br /><br /></td></tr>
-       <tr><td align='right' width='50%'>
-                                        $Lang::tr{'ok'} <input type='image' alt='$Lang::tr{'ok'}' title='$Lang::tr{'ok'}' src='/images/edit-redo.png' />
-                                       <input type='hidden' name='ACTION' value='addcronyes' /></form></td>
-                       <td align='left'  width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                       <input type='image' alt='$Lang::tr{'cancel'}' title='$Lang::tr{'cancel'}' src='/images/dialog-error.png' /> $Lang::tr{'cancel'} 
-                                       <input type='hidden' name='ACTION' value='cancel' /></form></td>
-       </tr>
-       </table>
-END
-;
-}
-
-if ($tripwiresettings{'ACTION'} eq 'globalreset')
-       {
-       print <<END
-       <br />
-       <table width='95%' cellspacing='0'>
-       <tr><td bgcolor='$color{'color20'}' colspan='2' align='center'><b>$Lang::tr{'resetglobals'}</b>
-       <tr><td colspan='2' align='center'><font color=red>$Lang::tr{'defaultwarning'}<br /><br /></font></td></tr>
-       <tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                        $Lang::tr{'ok'} <input type='image' alt='$Lang::tr{'ok'}' title='$Lang::tr{'ok'}' src='/images/edit-redo.png' />
-                                       <input type='hidden' name='ACTION' value='globalresetyes' /></form></td>
-                       <td align='left'  width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                       <input type='image' alt='$Lang::tr{'cancel'}' title='$Lang::tr{'cancel'}' src='/images/dialog-error.png' /> $Lang::tr{'cancel'} 
-                                       <input type='hidden' name='ACTION' value='cancel' /></form></td>
-       </tr>
-       </table>
-END
-;
-}
-
-if ($tripwiresettings{'ACTION'} eq 'generatepolicypw')
-       {
-       print <<END
-       <br />
-       <table width='95%' cellspacing='0'>
-       <tr><td bgcolor='$color{'color20'}' colspan='2' align='center'><b>$Lang::tr{'generatepolicy'}</b>
-       <tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningpolicy'}<br /><br /></font></td></tr>
-       <tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'sitekey'}</td><td align='left'><input type='password' name='SITEKEY' value='$tripwiresettings{'SITEKEY'}' size="30" /></td></tr>
-       <tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'localkey'}</td><td align='left'><input type='password' name='LOCALKEY' value='$tripwiresettings{'LOCALKEY'}' size="30" /><br /><br /></td></tr>
-       <tr><td align='right' width='50%'>
-                                        $Lang::tr{'ok'} <input type='image' alt='$Lang::tr{'ok'}' title='$Lang::tr{'ok'}' src='/images/edit-redo.png' />
-                                       <input type='hidden' name='ACTION' value='generatepolicyyes' /></form></td>
-                       <td align='left'  width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                       <input type='image' alt='$Lang::tr{'cancel'}' title='$Lang::tr{'cancel'}' src='/images/dialog-error.png' /> $Lang::tr{'cancel'} 
-                                       <input type='hidden' name='ACTION' value='cancel' /></form></td>
-       </tr>
-       </table>
-END
-;
-}
-
-if ($tripwiresettings{'ACTION'} eq 'policyresetpw')
-       {
-       print <<END
-       <br />
-       <table width='95%' cellspacing='0'>
-       <tr><td bgcolor='$color{'color20'}' colspan='2' align='center'><b>$Lang::tr{'resetpolicy'}</b>
-       <tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningpolicy'}<br /><br /></font></td></tr>
-       <tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'sitekey'}</td><td align='left'><input type='password' name='SITEKEY' value='$tripwiresettings{'SITEKEY'}' size="30" /></td></tr>
-       <tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'localkey'}</td><td align='left'><input type='password' name='LOCALKEY' value='$tripwiresettings{'LOCALKEY'}' size="30" /><br /><br /></td></tr>
-       <tr><td align='right' width='50%'>
-                                        $Lang::tr{'ok'} <input type='image' alt='$Lang::tr{'ok'}' title='$Lang::tr{'ok'}' src='/images/edit-redo.png' />
-                                       <input type='hidden' name='ACTION' value='resetpolicyyes' /></form></td>
-                       <td align='left'  width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                       <input type='image' alt='$Lang::tr{'cancel'}' title='$Lang::tr{'cancel'}' src='/images/dialog-error.png' /> $Lang::tr{'cancel'} 
-                                       <input type='hidden' name='ACTION' value='cancel' /></form></td>
-       </tr>
-       </table>
-END
-;
-}
-
-if ($tripwiresettings{'ACTION'} eq 'updatedatabasepw')
-       {
-       print <<END
-       <br />
-       <table width='95%' cellspacing='0'>
-       <tr><td bgcolor='$color{'color20'}' colspan='2' align='center'><b>$Lang::tr{'updatedatabase'}</b>
-       <tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningdatabase'}<br /><br /></font></td></tr>
-       <tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'localkey'}</td><td align='left'><input type='password' name='LOCALKEY' value='$tripwiresettings{'LOCALKEY'}' size="30" /><br /><br /></td></tr>
-       <tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                        $Lang::tr{'ok'} <input type='image' alt='$Lang::tr{'ok'}' title='$Lang::tr{'ok'}' src='/images/edit-redo.png' />
-                                       <input type='hidden' name='ACTION' value='updatedatabaseyes' /></form></td>
-                       <td align='left'  width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                       <input type='image' alt='$Lang::tr{'cancel'}' title='$Lang::tr{'cancel'}' src='/images/dialog-error.png' /> $Lang::tr{'cancel'} 
-                                       <input type='hidden' name='ACTION' value='cancel' /></form></td>
-       </tr>
-       </table>
-END
-;
-}
-if ($tripwiresettings{'ACTION'} eq 'keyreset')
-       {
-       print <<END
-       <br />
-       <table width='95%' cellspacing='0'>
-       <tr><td bgcolor='$color{'color20'}' colspan='2' align='center'><b>$Lang::tr{'keyreset'}</b>
-       <tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningkeys'}<br /><br /></font></td></tr>
-       <tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                        $Lang::tr{'ok'} <input type='image' alt='$Lang::tr{'ok'}' title='$Lang::tr{'ok'}' src='/images/edit-redo.png' />
-                                       <input type='hidden' name='ACTION' value='keyresetyes' /></form></td>
-                       <td align='left'  width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                       <input type='image' alt='$Lang::tr{'cancel'}' title='$Lang::tr{'cancel'}' src='/images/dialog-error.png' /> $Lang::tr{'cancel'} 
-                                       <input type='hidden' name='ACTION' value='cancel' /></form></td>
-       </tr>
-       </table>
-END
-;
-}
-
-if ($tripwiresettings{'ACTION'} eq 'generatekeys')
-       {
-       print <<END
-       <br />
-       <table width='95%' cellspacing='0'>
-       <tr><td bgcolor='$color{'color20'}' colspan='2' align='center'><b>$Lang::tr{'generatekeys'}</b>
-       <tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningkeys'}<br /><br /></font></td></tr>
-       <tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                        $Lang::tr{'ok'} <input type='image' alt='$Lang::tr{'ok'}' title='$Lang::tr{'ok'}' src='/images/edit-redo.png' />
-                                       <input type='hidden' name='ACTION' value='generatekeysyes' /></form></td>
-                       <td align='left'  width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                       <input type='image' alt='$Lang::tr{'cancel'}' title='$Lang::tr{'cancel'}' src='/images/dialog-error.png' /> $Lang::tr{'cancel'} 
-                                       <input type='hidden' name='ACTION' value='cancel' /></form></td>
-       </tr>
-       </table>
-END
-;
-}
-
-############################################################################################################################
-######################################################## Tripwire Funktionen ###############################################
-
-if ($tripwiresettings{'ACTION'} eq 'globalresetyes')
-{
-&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='1;'>" );print "<center><img src='/images/clock.gif' alt='' /><br/><font color='red'>$Lang::tr{'tripwireoperating'}</font></center>";&Header::closebox();
-$tripwiresettings{'ROOT'} = '/usr/sbin';
-$tripwiresettings{'POLFILE'} = '/var/ipfire/tripwire/tw.pol';
-$tripwiresettings{'DBFILE'} = '/var/ipfire/tripwire/$(HOSTNAME).twd';
-$tripwiresettings{'REPORTFILE'} = '/var/ipfire/tripwire/report/$(DATE).twr';
-$tripwiresettings{'SITEKEYFILE'} = '/var/ipfire/tripwire/site.key';
-$tripwiresettings{'LOCALKEYFILE'} = '/var/ipfire/tripwire/local.key';
-$tripwiresettings{'EDITOR'} = '/usr/bin/vi';
-$tripwiresettings{'LATEPROMPTING'} = 'false';
-$tripwiresettings{'LOOSEDIRECTORYCHECKING'} = 'false';
-$tripwiresettings{'MAILNOVIOLATIONS'} = 'false';
-$tripwiresettings{'EMAILREPORTLEVEL'} = '3';
-$tripwiresettings{'REPORTLEVEL'} = '3';
-$tripwiresettings{'MAILMETHOD'} = 'SENDMAIL';
-$tripwiresettings{'SMTPHOST'} = 'ipfire.myipfire.de';
-$tripwiresettings{'SMTPPORT'} = '25';
-$tripwiresettings{'SYSLOGREPORTING'} = 'false';
-$tripwiresettings{'MAILPROGRAM'} = '/usr/sbin/sendmail -oi -t';
-$tripwiresettings{'SITEKEY'} = 'ipfire';
-$tripwiresettings{'LOCALKEY'} = 'ipfire';
-$tripwiresettings{'ACTION'} = '';
-system("/usr/local/bin/tripwirectrl readconfig  >/dev/null 2>&1");
-open (FILE, ">${General::swroot}/tripwire/twcfg.txt") or die "Can't save tripwire config: $!";
-flock (FILE, 2);
-print FILE <<END
-
-ROOT                   =$tripwiresettings{'ROOT'}
-POLFILE                =$tripwiresettings{'POLFILE'}
-DBFILE                 =$tripwiresettings{'DBFILE'}
-REPORTFILE             =$tripwiresettings{'REPORTFILE'}
-SITEKEYFILE            =$tripwiresettings{'SITEKEYFILE'}
-LOCALKEYFILE           =$tripwiresettings{'LOCALKEYFILE'}
-EDITOR                 =$tripwiresettings{'EDITOR'}
-LATEPROMPTING          =$tripwiresettings{'LATEPROMPTING'}
-LOOSEDIRECTORYCHECKING =$tripwiresettings{'LOOSEDIRECTORYCHECKING'}
-MAILNOVIOLATIONS       =$tripwiresettings{'MAILNOVIOLATIONS'}
-EMAILREPORTLEVEL       =$tripwiresettings{'EMAILREPORTLEVEL'}
-REPORTLEVEL            =$tripwiresettings{'REPORTLEVEL'}
-MAILMETHOD             =$tripwiresettings{'MAILMETHOD'}
-SMTPHOST               =$tripwiresettings{'SMTPHOST'}
-SMTPPORT               =$tripwiresettings{'SMTPPORT'}
-SYSLOGREPORTING        =$tripwiresettings{'SYSLOGREPORTING'}
-MAILPROGRAM            =$tripwiresettings{'MAILPROGRAM'}
-
-END
-;
-close FILE;
-&General::writehash("${General::swroot}/tripwire/settings", \%tripwiresettings);
-system("/usr/local/bin/tripwirectrl lockconfig  >/dev/null 2>&1l");
-system("/usr/local/bin/tripwirectrl keys ipfire ipfire  >/dev/null 2>&1");$tripwiresettings{'SITEKEY'} = 'ipfire';$tripwiresettings{'LOCALKEY'} = 'ipfire';
-}
-if ($tripwiresettings{'ACTION'} eq 'generatekeysyes'){&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='1;'>" );print "<center><img src='/images/clock.gif' alt='' /><br/><font color='red'>$Lang::tr{'tripwireoperating'}</font></center>";system("/usr/local/bin/tripwirectrl keys $tripwiresettings{'SITEKEY'} $tripwiresettings{'LOCALKEY'}  >/dev/null 2>&1");$tripwiresettings{'SITEKEY'} = 'ipfire';$tripwiresettings{'LOCALKEY'} = 'ipfire';}
-if ($tripwiresettings{'ACTION'} eq 'keyresetyes'){&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='1;'>" );print "<center><img src='/images/clock.gif' alt='' /><br/><font color='red'>$Lang::tr{'tripwireoperating'}</font></center>";system("/usr/local/bin/tripwirectrl keys ipfire ipfire  >/dev/null 2>&1");$tripwiresettings{'SITEKEY'} = 'ipfire';$tripwiresettings{'LOCALKEY'} = 'ipfire';}
-if ($tripwiresettings{'ACTION'} eq 'resetpolicyyes'){&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='1;'>" );print "<center><img src='/images/clock.gif' alt='' /><br/><font color='red'>$Lang::tr{'tripwireoperating'}</font></center>";system("/usr/local/bin/tripwirectrl resetpolicy tripwiresettings{'SITEKEY'} $tripwiresettings{'LOCALKEY'}  >/dev/null 2>&1");$tripwiresettings{'SITEKEY'} = 'ipfire';$tripwiresettings{'LOCALKEY'} = 'ipfire';}
-if ($tripwiresettings{'ACTION'} eq 'generatepolicyyes'){&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='1;'>" );print "<center><img src='/images/clock.gif' alt='' /><br/><font color='red'>$Lang::tr{'tripwireoperating'}</font></center>";system("/usr/local/bin/tripwirectrl generatepolicy $tripwiresettings{'SITEKEY'} $tripwiresettings{'LOCALKEY'}  >/dev/null 2>&1");$tripwiresettings{'SITEKEY'} = 'ipfire';$tripwiresettings{'LOCALKEY'} = 'ipfire';}
-if ($tripwiresettings{'ACTION'} eq 'updatedatabaseyes'){&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='1;'>" );print "<center><img src='/images/clock.gif' alt='' /><br/><font color='red'>$Lang::tr{'tripwireoperating'}</font></center>";system("/usr/local/bin/tripwirectrl updatedatabase $tripwiresettings{'LOCALKEY'} /var/ipfire/tripwire/report/$file  >/dev/null 2>&1");$tripwiresettings{'LOCALKEY'} = 'ipfire';}
-if ($tripwiresettings{'ACTION'} eq 'generatereport'){&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='1;'>" );print "<center><img src='/images/clock.gif' alt='' /><br/><font color='red'>$Lang::tr{'tripwireoperating'}</font></center>";system("/usr/local/bin/tripwirectrl generatereport  >/dev/null 2>&1");}
-if ($tripwiresettings{'ACTION'} eq 'addcronyes'){system("/usr/local/bin/tripwirectrl addcron $tripwiresettings{'HOUR'} $tripwiresettings{'MINUTE'}  >/dev/null 2>&1");}
-if ($tripwiresettings{'ACTION'} eq 'deletecron'){system("/usr/local/bin/tripwirectrl disablecron $tripwiresettings{'CRON'} >/dev/null 2>&1");@cronjobs = `ls /etc/fcron.daily/tripwire* 2>/dev/null`;}
-
-############################################################################################################################
-##################################################### Tripwire globale Optionen ############################################
-
-&Header::openbox('100%', 'center', 'Tripwire');
-print <<END
-<br />
-
-<form method='post' action='$ENV{'SCRIPT_NAME'}'>
-<table width='95%' cellspacing='0'>
-<tr bgcolor='$color{'color20'}'><td colspan='2' align='left'><b>$Lang::tr{'basic options'}</b></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'emailreportlevel'}</td><td align='left'><input type='text' name='EMAILREPORTLEVEL' value='$tripwiresettings{'EMAILREPORTLEVEL'}' size="30" /></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'reportlevel'}</td><td align='left'><input type='text' name='REPORTLEVEL' value='$tripwiresettings{'REPORTLEVEL'}' size="30" /></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'mailmethod'}</td><td align='left'><input type='text' name='MAILMETHOD' value='$tripwiresettings{'MAILMETHOD'}' size="30" /></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'smtphost'}</td><td align='left'><input type='text' name='SMTPHOST' value='$tripwiresettings{'SMTPHOST'}' size="30" /></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'smtpport'}</td><td align='left'><input type='text' name='SMTPPORT' value='$tripwiresettings{'SMTPPORT'}' size="30" /></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'mailprogramm'}</td><td align='left'><input type='text' name='MAILPROGRAM' value='$tripwiresettings{'MAILPROGRAM'}' size="30" /></td></tr>
-</table>
-<br />
-<table width='10%' cellspacing='0'>
-<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                                               <input type='hidden' name='ACTION' value=$Lang::tr{'save'} />
-                                                                                               <input type='image' alt='$Lang::tr{'save'}' title='$Lang::tr{'save'}' src='/images/media-floppy.png' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='globalreset' />
-                                                                               <input type='image' alt='$Lang::tr{'reset'}' title='$Lang::tr{'reset'}' src='/images/reload.gif' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='globalcaption' />
-                                                                               <input type='image' alt='$Lang::tr{'caption'}' title='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
-</table>
-</from>
-END
-;
-if ($tripwiresettings{'ACTION'} eq 'globalcaption')
-{
-print <<END
-<br />
-<table width='95%' cellspacing='0'>
-<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
-<tr><td align='right' width='33%'><img src='/images/media-floppy.png' alt='$Lang::tr{'save settings'}' /></td><td align='left'>$Lang::tr{'save settings'}</td></tr>
-<tr><td align='right' width='33%'><img src='/images/reload.gif' alt='$Lang::tr{'restore settings'}' /></td><td align='left'>$Lang::tr{'restore settings'}</td></tr>
-</table>
-END
-;
-
-}
-
-&Header::closebox();
-
-############################################################################################################################
-################################################### Tripwire Init Policy and keygen ########################################
-
-&Header::openbox('100%', 'center', $Lang::tr{'generate tripwire keys and init'});
-print <<END
-<br />
-
-<form method='post' action='$ENV{'SCRIPT_NAME'}'>
-<table width='95%' cellspacing='0'>
-<tr bgcolor='$color{'color20'}'><td colspan='2' align='left'><b>$Lang::tr{'keys'}</b></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'sitekey'}</td><td align='left'><input type='password' name='SITEKEY' value='$tripwiresettings{'SITEKEY'}' size="30" /></td></tr>
-<tr><td align='left' width='40%'>$Lang::tr{'localkey'}</td><td align='left'><input type='password' name='LOCALKEY' value='$tripwiresettings{'LOCALKEY'}' size="30" /></td></tr>
-</table>
-<br />
-<table width='10%' cellspacing='0'>
-<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                                               <input type='hidden' name='ACTION' value='generatekeys'/>
-                                                                                               <input type='image' alt='$Lang::tr{'generatekeys'}' title='$Lang::tr{'generatekeys'}' src='/images/system-lock-screen.png' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='keyreset' />
-                                                                               <input type='image' alt='$Lang::tr{'reset'}' title='$Lang::tr{'reset'}' src='/images/reload.gif' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='keycaption' />
-                                                                               <input type='image' alt='$Lang::tr{'caption'}' title='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
-</table>
-</from>
-END
-;
-if ($tripwiresettings{'ACTION'} eq 'keycaption')
-{
-print <<END
-<br />
-<table width='95%' cellspacing='0'>
-<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
-<tr><td align='right' width='33%'><img src='/images/system-lock-screen.png' alt='$Lang::tr{'generatekeys'}' /></td><td align='left'>$Lang::tr{'generatekeys'}</td></tr>
-<tr><td align='right' width='33%'><img src='/images/reload.gif' alt='$Lang::tr{'keyreset'}' /></td><td align='left'>$Lang::tr{'keyreset'}</td></tr>
-</table>
-END
-;
-
-}
-
-&Header::closebox();
-
-############################################################################################################################
-################################################# Tripwire general functions ###############################################
-
-&Header::openbox('100%', 'center', $Lang::tr{'tripwire functions'});
-print <<END
-<br />
-
-<table width='95%' cellspacing='0'>
-<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                                               <input type='hidden' name='ACTION' value='generatepolicypw'/>
-                                                                                               <input type='image' alt='$Lang::tr{'generatepolicy'}' title='$Lang::tr{'generatepolicy'}' src='/images/document-new.png' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='policyresetpw' />
-                                                                               <input type='image' alt='$Lang::tr{'resetpolicy'}' title='$Lang::tr{'resetpolicy'}' src='/images/reload.gif' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='generatereport' />
-                                                                               <input type='image' alt='$Lang::tr{'generatereport'}' title='$Lang::tr{'generatereport'}' src='/images/document-properties.png' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='updatedatabasepw' />
-                                                                               <input type='image' alt='$Lang::tr{'updatedatabase'}' title='$Lang::tr{'updatedatabase'}' src='/images/network-server.png' /></form></td>
-<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-                                                                               <input type='hidden' name='ACTION' value='policycaption' />
-                                                                               <input type='image' alt='$Lang::tr{'caption'}' title='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
-</table>
-END
-;
-if ($tripwiresettings{'ACTION'} eq 'policycaption')
-{
-print <<END
-<br />
-<table width='95%' cellspacing='0'>
-<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
-<tr><td align='right' width='33%'><img src='/images/document-new.png' alt='$Lang::tr{'generatepolicy'}' /></td><td align='left'>$Lang::tr{'generatepolicy'}</td></tr>
-<tr><td align='right' width='33%'><img src='/images/reload.gif' alt='$Lang::tr{'resetpolicy'}' /></td><td align='left'>$Lang::tr{'resetpolicy'}</td></tr>
-<tr><td align='right' width='33%'><img src='/images/document-properties.png' alt='$Lang::tr{'generatereport'}' /></td><td align='left'>$Lang::tr{'generatereport'}</td></tr>
-<tr><td align='right' width='33%'><img src='/images/network-server.png' alt='$Lang::tr{'updatedatabase'}' /></td><td align='left'>$Lang::tr{'updatedatabase'}</td></tr>
-</table>
-END
-;
-
-}
-&Header::closebox();
-
-############################################################################################################################
-####################################################### Tripwire Log View ##################################################
-
-&Header::openbox('100%', 'center', $Lang::tr{'tripwire reports'});
-print <<END
-<a name="$Lang::tr{'log view'}"</a>
-<br />
-<form method='post' action='$ENV{'SCRIPT_NAME'}#$Lang::tr{'log view'}'>
-<table width='95%' cellspacing='0'>
-<tr><td bgcolor='$color{'color20'}' colspan='3' align='left'><b>$Lang::tr{'log view'}</b></td></tr>
-<tr><td colspan='3'  align='left'><br /></td></tr>
-<tr><td  align='left'><select name='LOG' style="width: 500px">
-END
-;
-foreach my $log (@Logs) {chomp $log;print"<option value='$log'>$log</option>";}
-print <<END
-
-</select></td><td  align='left'><input type='hidden' name='ACTION' value='showlog' /><input type='image' alt='view Log' title='view log' src='/images/format-justify-fill.png' /></td></tr>
-</table>
-</form>
-END
-;
-if ($tripwiresettings{'ACTION'} eq 'showlog')
-{
-$Log = qx(/usr/local/bin/tripwirectrl tripwirelog $tripwiresettings{'LOG'});
-$Log=~s/--cfgfile \/var\/ipfire\/tripwire\/tw.cfg --polfile \/var\/ipfire\/tripwire\/tw.pol//g;
-print <<END
-<table width='95%' cellspacing='0'>
-<tr><td><br /></td></tr>
-<tr><td><pre>$Log</pre></td></tr>
-<tr><td><br /></td></tr>
-<tr><td align='center'>$tripwiresettings{'LOG'}</td></tr>
-</table>
-END
-;
-
-}
-
-&Header::closebox();
-
-############################################################################################################################
-####################################################### Tripwire Cronjob ##################################################
-#
-#&Header::openbox('100%', 'center', $Lang::tr{'tripwire cronjob'});
-#print <<END
-#<br />
-#<table width='95%' cellspacing='0'>
-#<tr><td colspan='3'  align='left'><br /></td></tr>
-#END
-#;
-#foreach my $cronjob (@cronjobs) {chomp $cronjob;my $time=$cronjob; $time=~s/\/etc\/fcron.daily\/tripwire//g;print"<form method='post' action='$ENV{'SCRIPT_NAME'}'><tr><td  align='left' colspan='2'>$cronjob at $time daily</td><td><input type='hidden' name='ACTION' value='deletecron' /><input type='hidden' name='CRON' value='$time' /><input type='image' alt='delete cron' title='delete cron' src='/images/user-trash.png' /></td></tr></form>";}
-#print <<END
-#</table>
-#<br />
-#<table width='10%' cellspacing='0'>
-#<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-#                                                                                              <input type='hidden' name='ACTION' value='addcron'/>
-#                                                                                              <input type='image' alt='$Lang::tr{'add cron'}' title='$Lang::tr{'add cron'}' src='/images/appointment-new.png' /></form></td>
-#<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
-#                                                                              <input type='hidden' name='ACTION' value='croncaption' />
-#                                                                              <input type='image' alt='$Lang::tr{'caption'}' title='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
-#</table>
-#END
-#;
-
-#if ($tripwiresettings{'ACTION'} eq 'croncaption')
-#{
-#print <<END
-#<br />
-#<table width='95%' cellspacing='0'>
-#<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
-#<tr><td align='right' width='33%'><img src='/images/appointment-new.png' /></td><td align='left'>$Lang::tr{'add cron'}</td></tr>
-#<tr><td align='right' width='33%'><img src='/images/user-trash.png' /></td><td align='left'>$Lang::tr{'delete cron'}</td></tr>
-#</table>
-#END
-#;
-#}
-#
-#&Header::closebox();
-
-&Header::closebigbox();
-&Header::closepage();
index 6cd9668db893ccee7162c3747eeeb07c83f3cb4f..c94c34ec1e6e8f7b4e607513bf798b7d8d549967 100644 (file)
@@ -397,7 +397,7 @@ print <<END
 <tr>
        <td class='base'>$Lang::tr{'updxlrtr passive mode'}:</td>
        <td class='base'><input type='checkbox' name='PASSIVE_MODE' $checked{'PASSIVE_MODE'}{'on'} /></td>
-       <td class='base'>$Lang::tr{'updxlrtr max disk usage'}:</td>
+       <td class='base'>$Lang::tr{'updxlrtr max disk usage'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td class='base'><input type='text' name='MAX_DISK_USAGE' value='$xlratorsettings{'MAX_DISK_USAGE'}' size='1' /> %</td>
 </tr>
 </table>
@@ -409,7 +409,7 @@ print <<END
 <tr>
        <td class='base' width='25%'>$Lang::tr{'updxlrtr low download priority'}:</td>
        <td class='base' width='20%'><input type='checkbox' name='LOW_DOWNLOAD_PRIORITY' $checked{'LOW_DOWNLOAD_PRIORITY'}{'on'} /></td>
-       <td class='base' width='25%'>$Lang::tr{'updxlrtr max download rate'}:&nbsp;<img src='/blob.gif' alt='*' </td>
+       <td class='base' width='25%'>$Lang::tr{'updxlrtr max download rate'}:</td>
        <td class='base' width='30%'><input type='text' name='MAX_DOWNLOAD_RATE' value='$xlratorsettings{'MAX_DOWNLOAD_RATE'}' size='5' /></td>
 </tr>
 </table>
index 1e50de92879f99d52c9be94bbefa6cad60520f59..c3c327eec2a40096a3cd01ac42fdd6bc645919ca 100644 (file)
@@ -1214,8 +1214,8 @@ print <<END
         <td>&nbsp;</td>
 </tr>
 <tr>
-       <td colspan='2'>$Lang::tr{'urlfilter blocked domains'}&nbsp;<img src='/blob.gif' alt='*' /></td>
-       <td colspan='2'>$Lang::tr{'urlfilter blocked urls'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2'>$Lang::tr{'urlfilter blocked domains'}</td>
+       <td colspan='2'>$Lang::tr{'urlfilter blocked urls'}</td>
 </tr>
 <tr>
        <td colspan='2'>$Lang::tr{'urlfilter example'}</td>
@@ -1257,8 +1257,8 @@ print <<END
         <td>&nbsp;</td>
 </tr>
 <tr>
-       <td colspan='2'>$Lang::tr{'urlfilter allowed domains'}&nbsp;<img src='/blob.gif' alt='*' /></td>
-       <td colspan='2'>$Lang::tr{'urlfilter allowed urls'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2'>$Lang::tr{'urlfilter allowed domains'}</td>
+       <td colspan='2'>$Lang::tr{'urlfilter allowed urls'}</td>
 </tr>
 <tr>
        <td colspan='2'>$Lang::tr{'urlfilter example'}</td>
@@ -1297,7 +1297,7 @@ print <<END
         <td colspan='4'><b>$Lang::tr{'urlfilter custom expression list'}</b></td>
 </tr>
 <tr>
-       <td colspan='4'>$Lang::tr{'urlfilter blocked expressions'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='4'>$Lang::tr{'urlfilter blocked expressions'}</td>
 </tr>
 <tr>
        <td colspan='4'><textarea name='CUSTOM_EXPRESSIONS' cols='70' rows='3' wrap='off'>
@@ -1360,8 +1360,8 @@ print <<END
         <td>&nbsp;</td>
 </tr>
 <tr>
-       <td colspan='2'>$Lang::tr{'urlfilter unfiltered clients'}&nbsp;<img src='/blob.gif' alt='*' /></td>
-       <td colspan='2'>$Lang::tr{'urlfilter banned clients'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td colspan='2'>$Lang::tr{'urlfilter unfiltered clients'}</td>
+       <td colspan='2'>$Lang::tr{'urlfilter banned clients'}</td>
 </tr>
 <tr>
        <td colspan='2' width='50%'><textarea name='UNFILTERED_CLIENTS' cols='32' rows='6' wrap='off'>
@@ -1440,25 +1440,25 @@ print <<END
 <tr>
        <td width='25%' class='base'>$Lang::tr{'urlfilter show category'}:</td>
        <td width='12%'><input type='checkbox' name='SHOW_CATEGORY' $checked{'SHOW_CATEGORY'}{'on'} /></td>
-       <td width='25%' class='base'>$Lang::tr{'urlfilter redirectpage'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td width='25%' class='base'>$Lang::tr{'urlfilter redirectpage'}:</td>
        <td><input type='text' name='REDIRECT_PAGE' value='$filtersettings{'REDIRECT_PAGE'}' size='40' /></td>
 </tr>
 <tr>
        <td class='base'>$Lang::tr{'urlfilter show url'}:</td>
        <td><input type='checkbox' name='SHOW_URL' $checked{'SHOW_URL'}{'on'} /></td>
-       <td class='base'>$Lang::tr{'urlfilter msg text 1'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'urlfilter msg text 1'}:</td>
        <td><input type='text' name='MSG_TEXT_1' value='$filtersettings{'MSG_TEXT_1'}' size='40' /></td>
 </tr>
 <tr>
        <td class='base'>$Lang::tr{'urlfilter show ip'}:</td>
        <td><input type='checkbox' name='SHOW_IP' $checked{'SHOW_IP'}{'on'} /></td>
-       <td class='base'>$Lang::tr{'urlfilter msg text 2'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'urlfilter msg text 2'}:</td>
        <td><input type='text' name='MSG_TEXT_2' value='$filtersettings{'MSG_TEXT_2'}' size='40' /></td>
 </tr>
 <tr>
        <td class='base'>$Lang::tr{'urlfilter show dnserror'}:</td>
        <td><input type='checkbox' name='ENABLE_DNSERROR' $checked{'ENABLE_DNSERROR'}{'on'} /></td>
-       <td class='base'>$Lang::tr{'urlfilter msg text 3'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       <td class='base'>$Lang::tr{'urlfilter msg text 3'}:</td>
        <td><input type='text' name='MSG_TEXT_3' value='$filtersettings{'MSG_TEXT_3'}' size='40' /></td>
 </tr>
 </table>
@@ -1499,12 +1499,8 @@ print <<END
 <hr size='1'>
 <table width='100%'>
 <tr>
-       <td>
-       <img src='/blob.gif' align='top' alt='*' />&nbsp;
-       <font class='base'>$Lang::tr{'this field may be blank'}</font>
-       </td>
-       <td align='right'>&nbsp;
-       </td>
+       <td><img src='/blob.gif' align='top' alt='*' />&nbsp;<font class='base'>$Lang::tr{'required field'}</font></td>
+       <td align='right'>&nbsp;</td>
 </tr>
 </table>
 <table width='100%'>
@@ -1880,9 +1876,9 @@ print <<END
 
 <table width='100%'>
        <tr>
-               <td width='5%'>$Lang::tr{'urlfilter source'}</td>
+               <td width='5%'>$Lang::tr{'urlfilter source'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td width='1%'>&nbsp;&nbsp;</td>
-               <td width='5%'>$Lang::tr{'urlfilter dst'}&nbsp;<img src='/blob.gif' alt='*'><img src='/blob.gif' alt='*'></td>
+               <td width='5%'>$Lang::tr{'urlfilter dst'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td width='1%'>&nbsp;&nbsp;</td>
                <td width='5%'>$Lang::tr{'urlfilter access'}</td>
                <td>&nbsp;</td>
@@ -1943,7 +1939,7 @@ print <<END
                <td>&nbsp;</td>
        </tr>
        <tr>
-               <td>$Lang::tr{'remark'}&nbsp;<img src='/blob.gif' alt='*'></td>
+               <td>$Lang::tr{'remark'}</td>
                <td>&nbsp;</td>
                <td>&nbsp;</td>
                <td>&nbsp;</td>
@@ -1982,10 +1978,10 @@ print <<END
 <table width='100%'>
        <tr>
                <td width='1%' align='right'> <img src='/blob.gif' align='top' alt='*' />&nbsp;</td>
-               <td><font class='base'>$Lang::tr{'this field may be blank'}</font></td>
+               <td><font class='base'>$Lang::tr{'required field'}</font></td>
        </tr>
        <tr>
-               <td width='1%' align='right'><img src='/blob.gif' align='top' alt='*' /><img src='/blob.gif' align='top' alt='*' />&nbsp;</td>
+               <td width='1%' align='right'>&nbsp;</td>
                <td><font class='base'>$Lang::tr{'urlfilter select multi'}</font></td>
        </tr>
 </table>
@@ -2168,7 +2164,7 @@ print <<END
        <td width='25%'></td> <td width='20%'> </td><td width='25%'> </td><td width='30%'></td>
 </tr>
 <tr>
-        <td class='base'>$Lang::tr{'urlfilter user time quota'}:</td>
+        <td class='base'>$Lang::tr{'urlfilter user time quota'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
         <td><input type='text' name='TIME_QUOTA' value='$uqsettings{'TIME_QUOTA'}' size='5' /></td>
        <td colspan='2' rowspan= '5' valign='top' class='base'>
                <table cellpadding='0' cellspacing='0'>
@@ -2176,7 +2172,7 @@ print <<END
                                <!-- intentionally left empty -->
                        </tr>
                        <tr>
-                       <td>$Lang::tr{'urlfilter assigned quota users'}:</td>
+                       <td>$Lang::tr{'urlfilter assigned quota users'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                        </tr>
                        <tr>
                                <!-- intentionally left empty -->
@@ -2374,7 +2370,7 @@ print <<END
                <td class='base'><b>$Lang::tr{'urlfilter blacklist name'}</b></td>
 </tr>
 <tr>
-               <td class='base'>$Lang::tr{'urlfilter blacklist category name'}:</td>
+               <td class='base'>$Lang::tr{'urlfilter blacklist category name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='BE_NAME' value='$besettings{'BE_NAME'}' size='12' /></td>
 </tr>
 </table>
@@ -2384,7 +2380,7 @@ print <<END
        <td width='25%'></td> <td width='20%'> </td><td width='25%'> </td><td width='20%'></td>
 </tr>
 <tr>
-               <td class='base' colspan='4'><b>$Lang::tr{'urlfilter edit domains urls expressions'}</b></td>
+               <td class='base' colspan='4'><b>$Lang::tr{'urlfilter edit domains urls expressions'}</b>&nbsp;<img src='/blob.gif' alt='*' /></td>
 </tr>
 <tr>
        <td colspan='2'>$Lang::tr{'urlfilter domains'}</td>
index 0d23d0d0917fa8de6f2ac938c27a43cffa48d9b6..f1cffb88448155cc2a9f5c8ad4793e6b8c187b5e 100644 (file)
@@ -40,8 +40,7 @@ undef (@dummy);
 ###
 ### Initialize variables
 ###
-my $sleepDelay = 4;    # after a call to ipsecctrl S or R, wait this delay (seconds) before reading status
-                       # (let the ipsec do its job)
+my $sleepDelay = 4; # after a call to ipsecctrl S or R, wait this delay (seconds) before reading status (let the ipsec do its job)
 my %netsettings=();
 our %cgiparams=();
 our %vpnsettings=();
@@ -108,6 +107,7 @@ $cgiparams{'ROOTCERT_STATE'} = '';
 $cgiparams{'RW_NET'} = '';
 $cgiparams{'DPD_DELAY'} = '30';
 $cgiparams{'DPD_TIMEOUT'} = '120';
+$cgiparams{'FORCE_MOBIKE'} = 'off';
 &Header::getcgihash(\%cgiparams, {'wantfile' => 1, 'filevar' => 'FH'});
 
 ###
@@ -131,285 +131,300 @@ sub valid_dns_host {
 ### Just return true is one interface is vpn enabled
 ###
 sub vpnenabled {
-    return ($vpnsettings{'ENABLED'} eq 'on');
+       return ($vpnsettings{'ENABLED'} eq 'on');
 }
 ###
-### old version: maintain serial number to one, without explication. 
-### this            : let the counter go, so that each cert is numbered.
+### old version: maintain serial number to one, without explication.
+### this: let the counter go, so that each cert is numbered.
 ###
-sub cleanssldatabase
-{
-    if (open(FILE, ">${General::swroot}/certs/serial")) {
-       print FILE "01";
-       close FILE;
-    }
-    if (open(FILE, ">${General::swroot}/certs/index.txt")) {
-       print FILE "";
-       close FILE;
-    }
-    unlink ("${General::swroot}/certs/index.txt.old");
-    unlink ("${General::swroot}/certs/serial.old");
-    unlink ("${General::swroot}/certs/01.pem");
+sub cleanssldatabase {
+       if (open(FILE, ">${General::swroot}/certs/serial")) {
+               print FILE "01";
+               close FILE;
+       }
+       if (open(FILE, ">${General::swroot}/certs/index.txt")) {
+               print FILE "";
+               close FILE;
+       }
+       unlink ("${General::swroot}/certs/index.txt.old");
+       unlink ("${General::swroot}/certs/serial.old");
+       unlink ("${General::swroot}/certs/01.pem");
 }
-sub newcleanssldatabase
-{
-    if (! -s "${General::swroot}/certs/serial" )  {
-        open(FILE, ">${General::swroot}/certs/serial");
-       print FILE "01";
-       close FILE;
-    }
-    if (! -s ">${General::swroot}/certs/index.txt") {
-       system ("touch ${General::swroot}/certs/index.txt");
-    }
-    unlink ("${General::swroot}/certs/index.txt.old");
-    unlink ("${General::swroot}/certs/serial.old");
-#   unlink ("${General::swroot}/certs/01.pem");                numbering evolves. Wrong place to delete
+sub newcleanssldatabase {
+       if (! -s "${General::swroot}/certs/serial" ) {
+               open(FILE, ">${General::swroot}/certs/serial");
+               print FILE "01";
+               close FILE;
+       }
+       if (! -s ">${General::swroot}/certs/index.txt") {
+               system ("touch ${General::swroot}/certs/index.txt");
+       }
+       unlink ("${General::swroot}/certs/index.txt.old");
+       unlink ("${General::swroot}/certs/serial.old");
+#      unlink ("${General::swroot}/certs/01.pem");             numbering evolves. Wrong place to delete
 }
 
 ###
 ### Call openssl and return errormessage if any
 ###
 sub callssl ($) {
-    my $opt = shift;
-    my $retssl =  `/usr/bin/openssl $opt 2>&1`;        #redirect stderr
-    my $ret = '';
-    foreach my $line (split (/\n/, $retssl)) {
-       &General::log("ipsec", "$line") if (0);         # 1 for verbose logging
-       $ret .= '<br>'.$line if ( $line =~ /error|unknown/ );
-    }
-    if ($ret) {
-        $ret= &Header::cleanhtml($ret);
-    }
-    return $ret ? "$Lang::tr{'openssl produced an error'}: $ret" : '' ;
+       my $opt = shift;
+       my $retssl = `/usr/bin/openssl $opt 2>&1`; #redirect stderr
+       my $ret = '';
+       foreach my $line (split (/\n/, $retssl)) {
+               &General::log("ipsec", "$line") if (0); # 1 for verbose logging
+               $ret .= '<br>'.$line if ( $line =~ /error|unknown/ );
+       }
+       if ($ret) {
+               $ret= &Header::cleanhtml($ret);
+       }
+       return $ret ? "$Lang::tr{'openssl produced an error'}: $ret" : '' ;
 }
 ###
 ### Obtain a CN from given cert
 ###
 sub getCNfromcert ($) {
-    #&General::log("ipsec", "Extracting name from $_[0]...");
-    my $temp = `/usr/bin/openssl x509 -text -in $_[0]`;
-    $temp =~ /Subject:.*CN=(.*)[\n]/;
-    $temp = $1;
-    $temp =~ s+/Email+, E+;
-    $temp =~ s/ ST=/ S=/;
-    $temp =~ s/,//g;
-    $temp =~ s/\'//g;
-    return $temp;
+       #&General::log("ipsec", "Extracting name from $_[0]...");
+       my $temp = `/usr/bin/openssl x509 -text -in $_[0]`;
+       $temp =~ /Subject:.*CN=(.*)[\n]/;
+       $temp = $1;
+       $temp =~ s+/Email+, E+;
+       $temp =~ s/ ST=/ S=/;
+       $temp =~ s/,//g;
+       $temp =~ s/\'//g;
+       return $temp;
 }
 ###
 ### Obtain Subject from given cert
 ###
 sub getsubjectfromcert ($) {
-    #&General::log("ipsec", "Extracting subject from $_[0]...");
-    my $temp = `/usr/bin/openssl x509 -text -in $_[0]`;
-    $temp =~ /Subject: (.*)[\n]/;
-    $temp = $1;
-    $temp =~ s+/Email+, E+;
-    $temp =~ s/ ST=/ S=/;
-    return $temp;
+       #&General::log("ipsec", "Extracting subject from $_[0]...");
+       my $temp = `/usr/bin/openssl x509 -text -in $_[0]`;
+       $temp =~ /Subject: (.*)[\n]/;
+       $temp = $1;
+       $temp =~ s+/Email+, E+;
+       $temp =~ s/ ST=/ S=/;
+       return $temp;
 }
 ###
-### Combine local subnet and connection name to make a unique name for each connection section 
+### Combine local subnet and connection name to make a unique name for each connection section
 ### (this sub is not used now)
 ###
 sub makeconnname ($) {
-    my $conn = shift;
-    my $subnet = shift;
-
-    $subnet =~ /^(.*?)\/(.*?)$/;       # $1=IP $2=mask
-    my $ip = unpack('N', &Socket::inet_aton($1));
-    if (length ($2) > 2) {
-       my $mm =  unpack('N', &Socket::inet_aton($2));
-       while ( ($mm & 1)==0 ) {
-           $ip >>= 1; 
-           $mm >>= 1;
-       };
-    } else {
-       $ip >>=  (32 - $2);
-    }
-    return sprintf ("%s-%X", $conn, $ip);
+       my $conn = shift;
+       my $subnet = shift;
+
+       $subnet =~ /^(.*?)\/(.*?)$/; # $1=IP $2=mask
+       my $ip = unpack('N', &Socket::inet_aton($1));
+       if (length ($2) > 2) {
+               my $mm = unpack('N', &Socket::inet_aton($2));
+               while ( ($mm & 1)==0 ) {
+                       $ip >>= 1;
+                       $mm >>= 1;
+               };
+       } else {
+               $ip >>= (32 - $2);
+       }
+       return sprintf ("%s-%X", $conn, $ip);
 }
 ###
 ### Write a config file.
 ###
 ###Type=Host : GUI can choose the interface used (RED,GREEN,BLUE) and
 ###            the side is always defined as 'left'.
-###            configihash[14]: 'VHOST' is allowed
 ###
 
 sub writeipsecfiles {
-    my %lconfighash = ();
-    my %lvpnsettings = ();
-    &General::readhasharray("${General::swroot}/vpn/config", \%lconfighash);
-    &General::readhash("${General::swroot}/vpn/settings", \%lvpnsettings);
-
-    open(CONF,    ">${General::swroot}/vpn/ipsec.conf") or die "Unable to open ${General::swroot}/vpn/ipsec.conf: $!";
-    open(SECRETS, ">${General::swroot}/vpn/ipsec.secrets") or die "Unable to open ${General::swroot}/vpn/ipsec.secrets: $!";
-    flock CONF, 2;
-    flock SECRETS, 2;
-    print CONF "version 2\n\n";
-    print CONF "conn %default\n";
-    print CONF "\tkeyingtries=%forever\n";
-    print CONF "\n";
-
-    # Add user includes to config file
-    print CONF "include /etc/ipsec.user.conf\n";
-    print CONF "\n";
-
-    print SECRETS "include /etc/ipsec.user.secrets\n";
-
-    if (-f "${General::swroot}/certs/hostkey.pem") {
-        print SECRETS ": RSA ${General::swroot}/certs/hostkey.pem\n"
-    }
-    my $last_secrets = ''; # old the less specifics connections
-    
-    foreach my $key (keys %lconfighash) {
-       next if ($lconfighash{$key}[0] ne 'on');
-
-       #remote peer is not set? => use '%any'
-       $lconfighash{$key}[10] = '%any' if ($lconfighash{$key}[10] eq '');
-
-       my $localside;
-       if ($lconfighash{$key}[26] eq 'BLUE') {
-               $localside = $netsettings{'BLUE_ADDRESS'};
-       } elsif ($lconfighash{$key}[26] eq 'GREEN') {
-               $localside = $netsettings{'GREEN_ADDRESS'};
-       } elsif ($lconfighash{$key}[26] eq 'ORANGE') {
-               $localside = $netsettings{'ORANGE_ADDRESS'};
-       } else {        # it is RED
-               $localside = $lvpnsettings{'VPN_IP'};
-       }
-
-       print CONF "conn $lconfighash{$key}[1]\n";
-       print CONF "\tleft=$localside\n";
-       my $cidr_net=&General::ipcidr($lconfighash{$key}[8]);
-       print CONF "\tleftsubnet=$cidr_net\n";
-       print CONF "\tleftfirewall=yes\n";
-       print CONF "\tlefthostaccess=yes\n";
-
-       print CONF "\tright=$lconfighash{$key}[10]\n";
-       if ($lconfighash{$key}[3] eq 'net') {
-           my $cidr_net=&General::ipcidr($lconfighash{$key}[11]);
-           print CONF "\trightsubnet=$cidr_net\n";
-       } elsif ($lconfighash{$key}[10] eq '%any' && $lconfighash{$key}[14] eq 'on') { #vhost allowed for roadwarriors?
-           print CONF "\trightsubnet=vhost:%no,%priv\n";
-       }
-
-       # Local Cert and Remote Cert (unless auth is DN dn-auth)
-       if ($lconfighash{$key}[4] eq 'cert') {
-           print CONF "\tleftcert=${General::swroot}/certs/hostcert.pem\n";
-           print CONF "\trightcert=${General::swroot}/certs/$lconfighash{$key}[1]cert.pem\n" if ($lconfighash{$key}[2] ne '%auth-dn');
-       }
-
-       # Local and Remote IDs
-       print CONF "\tleftid=\"$lconfighash{$key}[7]\"\n" if ($lconfighash{$key}[7]);
-       print CONF "\trightid=\"$lconfighash{$key}[9]\"\n" if ($lconfighash{$key}[9]);
-
-       # Is PFS enabled?
-       my $pfs = $lconfighash{$key}[28] eq 'on' ? 'on' : 'off';
-
-       # Algorithms
-       if ($lconfighash{$key}[18] && $lconfighash{$key}[19] && $lconfighash{$key}[20]) {
-               my @encs   = split('\|', $lconfighash{$key}[18]);
-               my @ints   = split('\|', $lconfighash{$key}[19]);
-               my @groups = split('\|', $lconfighash{$key}[20]);
-
-               my @algos = &make_algos("ike", \@encs, \@ints, \@groups, 1);
-               print CONF "\tike=" . join(",", @algos);
-
-               if ($lconfighash{$key}[24] eq 'on') {   #only proposed algorythms?
-                       print CONF "!\n";
-               } else {
-                       print CONF "\n";
-               }
+       my %lconfighash = ();
+       my %lvpnsettings = ();
+       &General::readhasharray("${General::swroot}/vpn/config", \%lconfighash);
+       &General::readhash("${General::swroot}/vpn/settings", \%lvpnsettings);
+
+       open(CONF, ">${General::swroot}/vpn/ipsec.conf") or die "Unable to open ${General::swroot}/vpn/ipsec.conf: $!";
+       open(SECRETS, ">${General::swroot}/vpn/ipsec.secrets") or die "Unable to open ${General::swroot}/vpn/ipsec.secrets: $!";
+       flock CONF, 2;
+       flock SECRETS, 2;
+       print CONF "version 2\n\n";
+       print CONF "conn %default\n";
+       print CONF "\tkeyingtries=%forever\n";
+       print CONF "\n";
+
+       # Add user includes to config file
+       if (-e "/etc/ipsec.user.conf") {
+               print CONF "include /etc/ipsec.user.conf\n";
+               print CONF "\n";
        }
 
-       if ($lconfighash{$key}[21] && $lconfighash{$key}[22]) {
-               my @encs   = split('\|', $lconfighash{$key}[21]);
-               my @ints   = split('\|', $lconfighash{$key}[22]);
-               my @groups = split('\|', $lconfighash{$key}[20]);
+       print SECRETS "include /etc/ipsec.user.secrets\n";
 
-               my @algos = &make_algos("esp", \@encs, \@ints, \@groups, ($pfs eq "on"));
-               print CONF "\tesp=" . join(",", @algos);
+       if (-f "${General::swroot}/certs/hostkey.pem") {
+               print SECRETS ": RSA ${General::swroot}/certs/hostkey.pem\n"
+       }
+       my $last_secrets = ''; # old the less specifics connections
 
-               if ($lconfighash{$key}[24] eq 'on') {   #only proposed algorythms?
-                       print CONF "!\n";
-               } else {
-                       print CONF "\n";
+       foreach my $key (keys %lconfighash) {
+               next if ($lconfighash{$key}[0] ne 'on');
+
+               #remote peer is not set? => use '%any'
+               $lconfighash{$key}[10] = '%any' if ($lconfighash{$key}[10] eq '');
+
+               my $localside;
+               if ($lconfighash{$key}[26] eq 'BLUE') {
+                       $localside = $netsettings{'BLUE_ADDRESS'};
+               } elsif ($lconfighash{$key}[26] eq 'GREEN') {
+                       $localside = $netsettings{'GREEN_ADDRESS'};
+               } elsif ($lconfighash{$key}[26] eq 'ORANGE') {
+                       $localside = $netsettings{'ORANGE_ADDRESS'};
+               } else { # it is RED
+                       $localside = $lvpnsettings{'VPN_IP'};
                }
-       }
 
-       # IKE V1 or V2
-       if (! $lconfighash{$key}[29]) {
-          $lconfighash{$key}[29] = "ikev1";
-       }
-       print CONF "\tkeyexchange=$lconfighash{$key}[29]\n";
+               print CONF "conn $lconfighash{$key}[1]\n";
+               print CONF "\tleft=$localside\n";
+               print CONF "\tleftsubnet=" . &make_subnets($lconfighash{$key}[8]) . "\n";
+               print CONF "\tleftfirewall=yes\n";
+               print CONF "\tlefthostaccess=yes\n";
+               print CONF "\tright=$lconfighash{$key}[10]\n";
+
+               if ($lconfighash{$key}[3] eq 'net') {
+                       print CONF "\trightsubnet=" . &make_subnets($lconfighash{$key}[11]) . "\n";
+               }
+
+               # Local Cert and Remote Cert (unless auth is DN dn-auth)
+               if ($lconfighash{$key}[4] eq 'cert') {
+                       print CONF "\tleftcert=${General::swroot}/certs/hostcert.pem\n";
+                       print CONF "\trightcert=${General::swroot}/certs/$lconfighash{$key}[1]cert.pem\n" if ($lconfighash{$key}[2] ne '%auth-dn');
+               }
 
-       # Lifetimes
-       print CONF "\tikelifetime=$lconfighash{$key}[16]h\n" if ($lconfighash{$key}[16]);
-       print CONF "\tkeylife=$lconfighash{$key}[17]h\n" if ($lconfighash{$key}[17]);
+               # Local and Remote IDs
+               print CONF "\tleftid=\"$lconfighash{$key}[7]\"\n" if ($lconfighash{$key}[7]);
+               print CONF "\trightid=\"$lconfighash{$key}[9]\"\n" if ($lconfighash{$key}[9]);
 
-       # Compression
-       print CONF "\tcompress=yes\n" if ($lconfighash{$key}[13] eq 'on');
+               # Is PFS enabled?
+               my $pfs = $lconfighash{$key}[28] eq 'on' ? 'on' : 'off';
 
-       # Dead Peer Detection
-       my $dpdaction = $lconfighash{$key}[27];
-       print CONF "\tdpdaction=$dpdaction\n";
+               # Algorithms
+               if ($lconfighash{$key}[18] && $lconfighash{$key}[19] && $lconfighash{$key}[20]) {
+                       my @encs        = split('\|', $lconfighash{$key}[18]);
+                       my @ints        = split('\|', $lconfighash{$key}[19]);
+                       my @groups      = split('\|', $lconfighash{$key}[20]);
 
-       # If the dead peer detection is disabled and IKEv2 is used,
-       # dpddelay must be set to zero, too.
-       if ($dpdaction eq "none") {
-               if ($lconfighash{$key}[29] eq "ikev2") {
-                       print CONF "\tdpddelay=0\n";
+                       my @algos = &make_algos("ike", \@encs, \@ints, \@groups, 1);
+                       print CONF "\tike=" . join(",", @algos);
+
+                       if ($lconfighash{$key}[24] eq 'on') { #only proposed algorythms?
+                               print CONF "!\n";
+                       } else {
+                               print CONF "\n";
+                       }
                }
-       } else {
-               my $dpddelay = $lconfighash{$key}[30];
-               if (!$dpddelay) {
-                       $dpddelay = 30;
-               }
-               print CONF "\tdpddelay=$dpddelay\n";
-               my $dpdtimeout = $lconfighash{$key}[31];
-               if (!$dpdtimeout) {
-                       $dpdtimeout = 120;
-               }
-               print CONF "\tdpdtimeout=$dpdtimeout\n";
-       }
-
-       # Build Authentication details:  LEFTid RIGHTid : PSK psk
-       my $psk_line;
-       if ($lconfighash{$key}[4] eq 'psk') {
-           $psk_line = ($lconfighash{$key}[7] ? $lconfighash{$key}[7] : $localside) . " " ;
-           $psk_line .= $lconfighash{$key}[9] ? $lconfighash{$key}[9] : $lconfighash{$key}[10];  #remoteid or remote address?
-           $psk_line .= " : PSK '$lconfighash{$key}[5]'\n";
-           # if the line contains %any, it is less specific than two IP or ID, so move it at end of file.
-           if ($psk_line =~ /%any/) {
-               $last_secrets .= $psk_line;
-           } else {
-               print SECRETS $psk_line;
-           }
-           print CONF "\tauthby=secret\n";
-       } else {
-           print CONF "\tauthby=rsasig\n";
-           print CONF "\tleftrsasigkey=%cert\n";
-           print CONF "\trightrsasigkey=%cert\n";
-       }
 
-       # Automatically start only if a net-to-net connection
-       if ($lconfighash{$key}[3] eq 'host') {
-           print CONF "\tauto=add\n";
-           print CONF "\trightsourceip=$lvpnsettings{'RW_NET'}\n";
-       } else {
-           print CONF "\tauto=start\n";
-       }
+               if ($lconfighash{$key}[21] && $lconfighash{$key}[22]) {
+                       my @encs        = split('\|', $lconfighash{$key}[21]);
+                       my @ints        = split('\|', $lconfighash{$key}[22]);
+                       my @groups      = split('\|', $lconfighash{$key}[23]);
 
-       # Fragmentation
-       print CONF "\tfragmentation=yes\n";
+                       # Use IKE grouptype if no ESP group type has been selected
+                       # (for backwards compatibility)
+                       if ($lconfighash{$key}[23] eq "") {
+                               @groups = split('\|', $lconfighash{$key}[20]);
+                       }
 
-       print CONF "\n";
-    }#foreach key
-    print SECRETS $last_secrets if ($last_secrets);
-    close(CONF);
-    close(SECRETS);
+                       my @algos = &make_algos("esp", \@encs, \@ints, \@groups, ($pfs eq "on"));
+                       print CONF "\tesp=" . join(",", @algos);
+
+                       if ($lconfighash{$key}[24] eq 'on') { #only proposed algorythms?
+                               print CONF "!\n";
+                       } else {
+                               print CONF "\n";
+                       }
+               }
+
+               # IKE V1 or V2
+               if (! $lconfighash{$key}[29]) {
+                       $lconfighash{$key}[29] = "ikev1";
+               }
+
+               print CONF "\tkeyexchange=$lconfighash{$key}[29]\n";
+
+               # Lifetimes
+               print CONF "\tikelifetime=$lconfighash{$key}[16]h\n" if ($lconfighash{$key}[16]);
+               print CONF "\tkeylife=$lconfighash{$key}[17]h\n" if ($lconfighash{$key}[17]);
+
+               # Compression
+               print CONF "\tcompress=yes\n" if ($lconfighash{$key}[13] eq 'on');
+
+               # Force MOBIKE?
+               if (($lconfighash{$key}[29] eq "ikev2") && ($lconfighash{$key}[32] eq 'on')) {
+                       print CONF "\tmobike=yes\n";
+               }
+
+               # Dead Peer Detection
+               my $dpdaction = $lconfighash{$key}[27];
+               print CONF "\tdpdaction=$dpdaction\n";
+
+               # If the dead peer detection is disabled and IKEv2 is used,
+               # dpddelay must be set to zero, too.
+               if ($dpdaction eq "none") {
+                       if ($lconfighash{$key}[29] eq "ikev2") {
+                               print CONF "\tdpddelay=0\n";
+                       }
+               } else {
+                       my $dpddelay = $lconfighash{$key}[31];
+                       if (!$dpddelay) {
+                               $dpddelay = 30;
+                       }
+                       print CONF "\tdpddelay=$dpddelay\n";
+                       my $dpdtimeout = $lconfighash{$key}[30];
+                       if (!$dpdtimeout) {
+                               $dpdtimeout = 120;
+                       }
+                       print CONF "\tdpdtimeout=$dpdtimeout\n";
+               }
+
+               # Build Authentication details: LEFTid RIGHTid : PSK psk
+               my $psk_line;
+               if ($lconfighash{$key}[4] eq 'psk') {
+                       $psk_line = ($lconfighash{$key}[7] ? $lconfighash{$key}[7] : $localside) . " " ;
+                       $psk_line .= $lconfighash{$key}[9] ? $lconfighash{$key}[9] : $lconfighash{$key}[10]; #remoteid or remote address?
+                       $psk_line .= " : PSK '$lconfighash{$key}[5]'\n";
+                       # if the line contains %any, it is less specific than two IP or ID, so move it at end of file.
+                       if ($psk_line =~ /%any/) {
+                               $last_secrets .= $psk_line;
+                       } else {
+                               print SECRETS $psk_line;
+                       }
+                       print CONF "\tauthby=secret\n";
+               } else {
+                       print CONF "\tauthby=rsasig\n";
+                       print CONF "\tleftrsasigkey=%cert\n";
+                       print CONF "\trightrsasigkey=%cert\n";
+               }
+
+               # Automatically start only if a net-to-net connection
+               if ($lconfighash{$key}[3] eq 'host') {
+                       print CONF "\tauto=add\n";
+                       print CONF "\trightsourceip=$lvpnsettings{'RW_NET'}\n";
+               } else {
+                       print CONF "\tauto=start\n";
+               }
+
+               # Fragmentation
+               print CONF "\tfragmentation=yes\n";
+
+               print CONF "\n";
+       } #foreach key
+
+       # Add post user includes to config file
+       # After the GUI-connections allows to patch connections.
+       if (-e "/etc/ipsec.user-post.conf") {
+               print CONF "include /etc/ipsec.user-post.conf\n";
+               print CONF "\n";
+       }
+
+       print SECRETS $last_secrets if ($last_secrets);
+       close(CONF);
+       close(SECRETS);
 }
 
 # Hook to regenerate the configuration files.
@@ -422,779 +437,779 @@ if ($ENV{"REMOTE_ADDR"} eq "") {
 ### Save main settings
 ###
 if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cgiparams{'KEY'} eq '') {
-    &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
-    unless (&General::validfqdn($cgiparams{'VPN_IP'}) || &General::validip($cgiparams{'VPN_IP'})
-           || $cgiparams{'VPN_IP'} eq '%defaultroute' ) {
-       $errormessage = $Lang::tr{'invalid input for hostname'};
-       goto SAVE_ERROR;
-    }
-
-    unless ($cgiparams{'VPN_DELAYED_START'} =~ /^[0-9]{1,3}$/ ) { #allow 0-999 seconds !
-       $errormessage = $Lang::tr{'invalid time period'};
-       goto SAVE_ERROR;
-    }
-
-    if ( $cgiparams{'RW_NET'} ne '' and !&General::validipandmask($cgiparams{'RW_NET'}) ) {
-       $errormessage = $Lang::tr{'urlfilter invalid ip or mask error'};
-       goto SAVE_ERROR;
-    }
-
-    $vpnsettings{'ENABLED'} = $cgiparams{'ENABLED'};
-    $vpnsettings{'VPN_IP'} = $cgiparams{'VPN_IP'};
-    $vpnsettings{'VPN_DELAYED_START'} = $cgiparams{'VPN_DELAYED_START'};
-    $vpnsettings{'RW_NET'} = $cgiparams{'RW_NET'};
-    &General::writehash("${General::swroot}/vpn/settings", \%vpnsettings);
-    &writeipsecfiles();
-    if (&vpnenabled) {
-       system('/usr/local/bin/ipsecctrl', 'S');
-    } else {
-       system('/usr/local/bin/ipsecctrl', 'D');
-    }
-    sleep $sleepDelay;
-    SAVE_ERROR:
+       &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
+
+       unless (&General::validfqdn($cgiparams{'VPN_IP'}) || &General::validip($cgiparams{'VPN_IP'})
+       || $cgiparams{'VPN_IP'} eq '%defaultroute' ) {
+               $errormessage = $Lang::tr{'invalid input for hostname'};
+               goto SAVE_ERROR;
+       }
+
+       unless ($cgiparams{'VPN_DELAYED_START'} =~ /^[0-9]{1,3}$/ ) { #allow 0-999 seconds !
+               $errormessage = $Lang::tr{'invalid time period'};
+               goto SAVE_ERROR;
+       }
+
+       if ( $cgiparams{'RW_NET'} ne '' and !&General::validipandmask($cgiparams{'RW_NET'}) ) {
+               $errormessage = $Lang::tr{'urlfilter invalid ip or mask error'};
+               goto SAVE_ERROR;
+       }
+
+       $vpnsettings{'ENABLED'} = $cgiparams{'ENABLED'};
+       $vpnsettings{'VPN_IP'} = $cgiparams{'VPN_IP'};
+       $vpnsettings{'VPN_DELAYED_START'} = $cgiparams{'VPN_DELAYED_START'};
+       $vpnsettings{'RW_NET'} = $cgiparams{'RW_NET'};
+       &General::writehash("${General::swroot}/vpn/settings", \%vpnsettings);
+       &writeipsecfiles();
+       if (&vpnenabled) {
+               system('/usr/local/bin/ipsecctrl', 'S');
+       } else {
+               system('/usr/local/bin/ipsecctrl', 'D');
+       }
+       sleep $sleepDelay;
+       SAVE_ERROR:
 ###
 ### Reset all step 2
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'remove x509'} && $cgiparams{'AREUSURE'} eq 'yes') {
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-
-    foreach my $key (keys %confighash) {
-       if ($confighash{$key}[4] eq 'cert') {
-           delete $confighash{$key};
-       }
-    }
-    while (my $file = glob("${General::swroot}/{ca,certs,crls,private}/*")) {
-       unlink $file
-    }
-    &cleanssldatabase();
-    if (open(FILE, ">${General::swroot}/vpn/caconfig")) {
-        print FILE "";
-        close FILE;
-    }
-    &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
-    &writeipsecfiles();
-    system('/usr/local/bin/ipsecctrl', 'R');
-    sleep $sleepDelay;
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+
+       foreach my $key (keys %confighash) {
+               if ($confighash{$key}[4] eq 'cert') {
+                       delete $confighash{$key};
+               }
+       }
+       while (my $file = glob("${General::swroot}/{ca,certs,crls,private}/*")) {
+               unlink $file
+       }
+       &cleanssldatabase();
+       if (open(FILE, ">${General::swroot}/vpn/caconfig")) {
+               print FILE "";
+               close FILE;
+       }
+       &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
+       &writeipsecfiles();
+       system('/usr/local/bin/ipsecctrl', 'R');
+       sleep $sleepDelay;
 
 ###
 ### Reset all step 1
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'remove x509'}) {
-    &Header::showhttpheaders();
-    &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-    &Header::openbigbox('100%', 'left', '', '');
-    &Header::openbox('100%', 'left', $Lang::tr{'are you sure'});
-    print <<END
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+       &Header::openbigbox('100%', 'left', '', '');
+       &Header::openbox('100%', 'left', $Lang::tr{'are you sure'});
+       print <<END
        <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-       <table width='100%'>
-           <tr>
-               <td align='center'>
-               <input type='hidden' name='AREUSURE' value='yes' />
-               <b><font color='${Header::colourred}'>$Lang::tr{'capswarning'}</font></b>:
-               $Lang::tr{'resetting the vpn configuration will remove the root ca, the host certificate and all certificate based connections'}</td>
-           </tr><tr>
-               <td align='center'>
-               <input type='submit' name='ACTION' value='$Lang::tr{'remove x509'}' />
+               <table width='100%'>
+                       <tr>
+                               <td align='center'>
+                                       <input type='hidden' name='AREUSURE' value='yes' />
+                                       <b><font color='${Header::colourred}'>$Lang::tr{'capswarning'}</font></b>:&nbsp;$Lang::tr{'resetting the vpn configuration will remove the root ca, the host certificate and all certificate based connections'}
+                               </td>
+                       </tr><tr>
+                               <td align='center'>
+                                       <input type='submit' name='ACTION' value='$Lang::tr{'remove x509'}' />
                <input type='submit' name='ACTION' value='$Lang::tr{'cancel'}' /></td>
-           </tr>
-       </table>
+                       </tr>
+               </table>
        </form>
 END
-    ;
-    &Header::closebox();
-    &Header::closebigbox();
-    &Header::closepage();
-    exit (0);
+;
+       &Header::closebox();
+       &Header::closebigbox();
+       &Header::closepage();
+       exit (0);
 
 ###
 ### Upload CA Certificate
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'upload ca certificate'}) {
-    &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
-
-    if ($cgiparams{'CA_NAME'} !~ /^[a-zA-Z0-9]+$/) {
-       $errormessage = $Lang::tr{'name must only contain characters'};
-       goto UPLOADCA_ERROR;
-    }
-
-    if (length($cgiparams{'CA_NAME'}) >60) {
-       $errormessage = $Lang::tr{'name too long'};
-       goto VPNCONF_ERROR;
-    }
-
-    if ($cgiparams{'CA_NAME'} eq 'ca') {
-       $errormessage = $Lang::tr{'name is invalid'};
-       goto UPLOAD_CA_ERROR;
-    }
-
-    # Check if there is no other entry with this name
-    foreach my $key (keys %cahash) {
-       if ($cahash{$key}[0] eq $cgiparams{'CA_NAME'}) {
-           $errormessage = $Lang::tr{'a ca certificate with this name already exists'};
-           goto UPLOADCA_ERROR;
-       }
-    }
-
-    if (ref ($cgiparams{'FH'}) ne 'Fh') {
-       $errormessage = $Lang::tr{'there was no file upload'};
-       goto UPLOADCA_ERROR;
-    }
-    # Move uploaded ca to a temporary file
-    (my $fh, my $filename) = tempfile( );
-    if (copy ($cgiparams{'FH'}, $fh) != 1) {
-       $errormessage = $!;
-       goto UPLOADCA_ERROR;
-    }
-    my $temp = `/usr/bin/openssl x509 -text -in $filename`;
-    if ($temp !~ /CA:TRUE/i) {
-       $errormessage = $Lang::tr{'not a valid ca certificate'};
-       unlink ($filename);
-       goto UPLOADCA_ERROR;
-    } else {
-       move($filename, "${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem");
-       if ($? ne 0) {
-           $errormessage = "$Lang::tr{'certificate file move failed'}: $!";
-           unlink ($filename);
-           goto UPLOADCA_ERROR;
-       }
-    }
-
-    my $key = &General::findhasharraykey (\%cahash);
-    $cahash{$key}[0] = $cgiparams{'CA_NAME'};
-    $cahash{$key}[1] = &Header::cleanhtml(getsubjectfromcert ("${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem"));
-    &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
-
-    system('/usr/local/bin/ipsecctrl', 'R');
-    sleep $sleepDelay;
-
-    UPLOADCA_ERROR:
+       &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
+
+       if ($cgiparams{'CA_NAME'} !~ /^[a-zA-Z0-9]+$/) {
+               $errormessage = $Lang::tr{'name must only contain characters'};
+               goto UPLOADCA_ERROR;
+       }
+
+       if (length($cgiparams{'CA_NAME'}) >60) {
+               $errormessage = $Lang::tr{'name too long'};
+               goto VPNCONF_ERROR;
+       }
+
+       if ($cgiparams{'CA_NAME'} eq 'ca') {
+               $errormessage = $Lang::tr{'name is invalid'};
+               goto UPLOAD_CA_ERROR;
+       }
+
+       # Check if there is no other entry with this name
+       foreach my $key (keys %cahash) {
+               if ($cahash{$key}[0] eq $cgiparams{'CA_NAME'}) {
+                       $errormessage = $Lang::tr{'a ca certificate with this name already exists'};
+                       goto UPLOADCA_ERROR;
+               }
+       }
+
+       if (ref ($cgiparams{'FH'}) ne 'Fh') {
+               $errormessage = $Lang::tr{'there was no file upload'};
+               goto UPLOADCA_ERROR;
+       }
+       # Move uploaded ca to a temporary file
+       (my $fh, my $filename) = tempfile( );
+       if (copy ($cgiparams{'FH'}, $fh) != 1) {
+               $errormessage = $!;
+               goto UPLOADCA_ERROR;
+       }
+       my $temp = `/usr/bin/openssl x509 -text -in $filename`;
+       if ($temp !~ /CA:TRUE/i) {
+               $errormessage = $Lang::tr{'not a valid ca certificate'};
+               unlink ($filename);
+               goto UPLOADCA_ERROR;
+       } else {
+               move($filename, "${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem");
+               if ($? ne 0) {
+                       $errormessage = "$Lang::tr{'certificate file move failed'}: $!";
+                       unlink ($filename);
+                       goto UPLOADCA_ERROR;
+               }
+       }
+
+       my $key = &General::findhasharraykey (\%cahash);
+       $cahash{$key}[0] = $cgiparams{'CA_NAME'};
+       $cahash{$key}[1] = &Header::cleanhtml(getsubjectfromcert ("${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem"));
+       &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
+
+       system('/usr/local/bin/ipsecctrl', 'R');
+       sleep $sleepDelay;
+
+       UPLOADCA_ERROR:
 
 ###
 ### Display ca certificate
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'show ca certificate'}) {
-    &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
-
-    if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem") {
-       &Header::showhttpheaders();
-       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-       &Header::openbigbox('100%', 'left', '', '');
-       &Header::openbox('100%', 'left', "$Lang::tr{'ca certificate'}:");
-       my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`;
-       $output = &Header::cleanhtml($output,"y");
-       print "<pre>$output</pre>\n";
-       &Header::closebox();
-       print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>";
-       &Header::closebigbox();
-       &Header::closepage();
-       exit(0);
-    } else {
-       $errormessage = $Lang::tr{'invalid key'};
-    }
+       &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
+
+       if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem") {
+               &Header::showhttpheaders();
+               &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+               &Header::openbigbox('100%', 'left', '', '');
+               &Header::openbox('100%', 'left', "$Lang::tr{'ca certificate'}:");
+               my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`;
+               $output = &Header::cleanhtml($output,"y");
+               print "<pre>$output</pre>\n";
+               &Header::closebox();
+               print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>";
+               &Header::closebigbox();
+               &Header::closepage();
+               exit(0);
+       } else {
+               $errormessage = $Lang::tr{'invalid key'};
+       }
 
 ###
 ### Export ca certificate to browser
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'download ca certificate'}) {
-    &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
-
-    if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) {
-       print "Content-Type: application/force-download\n";
-       print "Content-Type: application/octet-stream\r\n";
-       print "Content-Disposition: attachment; filename=$cahash{$cgiparams{'KEY'}}[0]cert.pem\r\n\r\n";
-       print `/usr/bin/openssl x509 -in ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`;
-       exit(0);
-    } else {
-       $errormessage = $Lang::tr{'invalid key'};
-    }
+       &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
+
+       if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) {
+               print "Content-Type: application/force-download\n";
+               print "Content-Type: application/octet-stream\r\n";
+               print "Content-Disposition: attachment; filename=$cahash{$cgiparams{'KEY'}}[0]cert.pem\r\n\r\n";
+               print `/usr/bin/openssl x509 -in ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`;
+               exit(0);
+       } else {
+               $errormessage = $Lang::tr{'invalid key'};
+       }
 
 ###
 ### Remove ca certificate (step 2)
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'remove ca certificate'} && $cgiparams{'AREUSURE'} eq 'yes') {
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-    &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
-
-    if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) {
-       foreach my $key (keys %confighash) {
-           my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/certs/$confighash{$key}[1]cert.pem`;
-           if ($test =~ /: OK/) {
-               # Delete connection
-               system('/usr/local/bin/ipsecctrl', 'D', $key) if (&vpnenabled);
-               unlink ("${General::swroot}/certs/$confighash{$key}[1]cert.pem");
-               unlink ("${General::swroot}/certs/$confighash{$key}[1].p12");
-               delete $confighash{$key};
-               &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
-               &writeipsecfiles();
-           }
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+       &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
+
+       if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) {
+               foreach my $key (keys %confighash) {
+                       my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/certs/$confighash{$key}[1]cert.pem`;
+                       if ($test =~ /: OK/) {
+                               # Delete connection
+                               system('/usr/local/bin/ipsecctrl', 'D', $key) if (&vpnenabled);
+                               unlink ("${General::swroot}/certs/$confighash{$key}[1]cert.pem");
+                               unlink ("${General::swroot}/certs/$confighash{$key}[1].p12");
+                               delete $confighash{$key};
+                               &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
+                               &writeipsecfiles();
+                       }
+               }
+               unlink ("${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem");
+               delete $cahash{$cgiparams{'KEY'}};
+               &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
+               system('/usr/local/bin/ipsecctrl', 'R');
+               sleep $sleepDelay;
+       } else {
+               $errormessage = $Lang::tr{'invalid key'};
        }
-       unlink ("${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem");
-       delete $cahash{$cgiparams{'KEY'}};
-       &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
-       system('/usr/local/bin/ipsecctrl', 'R');
-       sleep $sleepDelay;
-    } else {
-       $errormessage = $Lang::tr{'invalid key'};
-    }
 ###
 ### Remove ca certificate (step 1)
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'remove ca certificate'}) {
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-    &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
-
-    my $assignedcerts = 0;
-    if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) {
-       foreach my $key (keys %confighash) {
-           my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/certs/$confighash{$key}[1]cert.pem`;
-           if ($test =~ /: OK/) {
-               $assignedcerts++;
-           }
-       }
-       if ($assignedcerts) {
-           &Header::showhttpheaders();
-           &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-           &Header::openbigbox('100%', 'left', '', '');
-           &Header::openbox('100%', 'left', $Lang::tr{'are you sure'});
-           print <<END
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <table width='100%'>
-               <tr>
-                   <td align='center'>
-                   <input type='hidden' name='KEY' value='$cgiparams{'KEY'}' />
-                   <input type='hidden' name='AREUSURE' value='yes' /></td>
-               </tr><tr>
-                   <td align='center'>
-                   <b><font color='${Header::colourred}'>$Lang::tr{'capswarning'}</font></b>
-                   $Lang::tr{'connections are associated with this ca.  deleting the ca will delete these connections as well.'}</td>
-               </tr><tr>
-                   <td align='center'>
-                   <input type='submit' name='ACTION' value='$Lang::tr{'remove ca certificate'}' />
-                   <input type='submit' name='ACTION' value='$Lang::tr{'cancel'}' /></td>
-               </tr>
-           </table>
-           </form>
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+       &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
+
+       my $assignedcerts = 0;
+       if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) {
+               foreach my $key (keys %confighash) {
+                       my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/certs/$confighash{$key}[1]cert.pem`;
+                       if ($test =~ /: OK/) {
+                               $assignedcerts++;
+                       }
+               }
+               if ($assignedcerts) {
+                       &Header::showhttpheaders();
+                       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+                       &Header::openbigbox('100%', 'left', '', '');
+                       &Header::openbox('100%', 'left', $Lang::tr{'are you sure'});
+                       print <<END
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                               <table width='100%'>
+                                       <tr>
+                                               <td align='center'>
+                                                       <input type='hidden' name='KEY' value='$cgiparams{'KEY'}' />
+                       <input type='hidden' name='AREUSURE' value='yes' /></td>
+                                       </tr><tr>
+                                               <td align='center'>
+                                                       <b><font color='${Header::colourred}'>$Lang::tr{'capswarning'}</font></b>&nbsp;$Lang::tr{'connections are associated with this ca.  deleting the ca will delete these connections as well.'}</td>
+                                       </tr><tr>
+                                               <td align='center'>
+                                                       <input type='submit' name='ACTION' value='$Lang::tr{'remove ca certificate'}' />
+                       <input type='submit' name='ACTION' value='$Lang::tr{'cancel'}' /></td>
+                                       </tr>
+                               </table>
+                       </form>
 END
-           ;
-           &Header::closebox();
-           &Header::closebigbox();
-           &Header::closepage();
-           exit (0);
+;
+                       &Header::closebox();
+                       &Header::closebigbox();
+                       &Header::closepage();
+                       exit (0);
+               } else {
+                       unlink ("${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem");
+                       delete $cahash{$cgiparams{'KEY'}};
+                       &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
+                       system('/usr/local/bin/ipsecctrl', 'R');
+                       sleep $sleepDelay;
+               }
        } else {
-           unlink ("${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem");
-           delete $cahash{$cgiparams{'KEY'}};
-           &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
-           system('/usr/local/bin/ipsecctrl', 'R');
-           sleep $sleepDelay;
+               $errormessage = $Lang::tr{'invalid key'};
        }
-    } else {
-       $errormessage = $Lang::tr{'invalid key'};
-    }
 
 ###
 ### Display root certificate
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'show root certificate'} ||
        $cgiparams{'ACTION'} eq $Lang::tr{'show host certificate'}) {
-    my $output;
-    &Header::showhttpheaders();
-    &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-    &Header::openbigbox('100%', 'left', '', '');
-    if ($cgiparams{'ACTION'} eq $Lang::tr{'show root certificate'}) {
-       &Header::openbox('100%', 'left', "$Lang::tr{'root certificate'}:");
-       $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ca/cacert.pem`;
-    } else {
-       &Header::openbox('100%', 'left', "$Lang::tr{'host certificate'}:");
-       $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/certs/hostcert.pem`;
-    }
-    $output = &Header::cleanhtml($output,"y");
-    print "<pre>$output</pre>\n";
-    &Header::closebox();
-    print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>";
-    &Header::closebigbox();
-    &Header::closepage();
-    exit(0);
+       my $output;
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+       &Header::openbigbox('100%', 'left', '', '');
+       if ($cgiparams{'ACTION'} eq $Lang::tr{'show root certificate'}) {
+               &Header::openbox('100%', 'left', "$Lang::tr{'root certificate'}:");
+               $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ca/cacert.pem`;
+       } else {
+               &Header::openbox('100%', 'left', "$Lang::tr{'host certificate'}:");
+               $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/certs/hostcert.pem`;
+       }
+       $output = &Header::cleanhtml($output,"y");
+       print "<pre>$output</pre>\n";
+       &Header::closebox();
+       print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>";
+       &Header::closebigbox();
+       &Header::closepage();
+       exit(0);
 
 ###
 ### Export root certificate to browser
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'download root certificate'}) {
-    if ( -f "${General::swroot}/ca/cacert.pem" ) {
-       print "Content-Type: application/force-download\n";
-       print "Content-Disposition: attachment; filename=cacert.pem\r\n\r\n";
-       print `/usr/bin/openssl x509 -in ${General::swroot}/ca/cacert.pem`;
-       exit(0);
-    }
+       if ( -f "${General::swroot}/ca/cacert.pem" ) {
+               print "Content-Type: application/force-download\n";
+               print "Content-Disposition: attachment; filename=cacert.pem\r\n\r\n";
+               print `/usr/bin/openssl x509 -in ${General::swroot}/ca/cacert.pem`;
+               exit(0);
+       }
 ###
 ### Export host certificate to browser
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'download host certificate'}) {
-    if ( -f "${General::swroot}/certs/hostcert.pem" ) {
-       print "Content-Type: application/force-download\n";
-       print "Content-Disposition: attachment; filename=hostcert.pem\r\n\r\n";
-       print `/usr/bin/openssl x509 -in ${General::swroot}/certs/hostcert.pem`;
-       exit(0);
-    }
+       if ( -f "${General::swroot}/certs/hostcert.pem" ) {
+               print "Content-Type: application/force-download\n";
+               print "Content-Disposition: attachment; filename=hostcert.pem\r\n\r\n";
+               print `/usr/bin/openssl x509 -in ${General::swroot}/certs/hostcert.pem`;
+               exit(0);
+       }
 ###
 ### Form for generating/importing the caroot+host certificate
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'generate root/host certificates'} ||
-        $cgiparams{'ACTION'} eq $Lang::tr{'upload p12 file'}) {
-
-    if (-f "${General::swroot}/ca/cacert.pem") {
-       $errormessage = $Lang::tr{'valid root certificate already exists'};
-       goto ROOTCERT_SKIP;
-    }
-
-    &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
-    # fill in initial values
-    if ($cgiparams{'ROOTCERT_HOSTNAME'} eq '') {
-       if (-e "${General::swroot}/red/active" && open(IPADDR, "${General::swroot}/red/local-ipaddress")) {
-           my $ipaddr = <IPADDR>;
-           close IPADDR;
-           chomp ($ipaddr);
-           $cgiparams{'ROOTCERT_HOSTNAME'} = (gethostbyaddr(pack("C4", split(/\./, $ipaddr)), 2))[0];
-           if ($cgiparams{'ROOTCERT_HOSTNAME'} eq '') {
-               $cgiparams{'ROOTCERT_HOSTNAME'} = $ipaddr;
-           }
-       }
-       $cgiparams{'ROOTCERT_COUNTRY'} = $vpnsettings{'ROOTCERT_COUNTRY'} if (!$cgiparams{'ROOTCERT_COUNTRY'});
-    } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'upload p12 file'}) {
-       &General::log("ipsec", "Importing from p12...");
+       $cgiparams{'ACTION'} eq $Lang::tr{'upload p12 file'}) {
+
+       if (-f "${General::swroot}/ca/cacert.pem") {
+               $errormessage = $Lang::tr{'valid root certificate already exists'};
+               goto ROOTCERT_SKIP;
+       }
+
+       &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
+       # fill in initial values
+       if ($cgiparams{'ROOTCERT_HOSTNAME'} eq '') {
+               if (-e "${General::swroot}/red/active" && open(IPADDR, "${General::swroot}/red/local-ipaddress")) {
+                       my $ipaddr = <IPADDR>;
+                       close IPADDR;
+                       chomp ($ipaddr);
+                       $cgiparams{'ROOTCERT_HOSTNAME'} = (gethostbyaddr(pack("C4", split(/\./, $ipaddr)), 2))[0];
+                       if ($cgiparams{'ROOTCERT_HOSTNAME'} eq '') {
+                               $cgiparams{'ROOTCERT_HOSTNAME'} = $ipaddr;
+                       }
+               }
+               $cgiparams{'ROOTCERT_COUNTRY'} = $vpnsettings{'ROOTCERT_COUNTRY'} if (!$cgiparams{'ROOTCERT_COUNTRY'});
+       } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'upload p12 file'}) {
+               &General::log("ipsec", "Importing from p12...");
 
-       if (ref ($cgiparams{'FH'}) ne 'Fh') {
-           $errormessage = $Lang::tr{'there was no file upload'};
-           goto ROOTCERT_ERROR;
-       }
+               if (ref ($cgiparams{'FH'}) ne 'Fh') {
+                       $errormessage = $Lang::tr{'there was no file upload'};
+                       goto ROOTCERT_ERROR;
+               }
 
-       # Move uploaded certificate request to a temporary file
-       (my $fh, my $filename) = tempfile( );
-       if (copy ($cgiparams{'FH'}, $fh) != 1) {
-           $errormessage = $!;
-           goto ROOTCERT_ERROR;
-       }
+               # Move uploaded certificate request to a temporary file
+               (my $fh, my $filename) = tempfile( );
+               if (copy ($cgiparams{'FH'}, $fh) != 1) {
+                       $errormessage = $!;
+                       goto ROOTCERT_ERROR;
+               }
 
-       # Extract the CA certificate from the file
-       &General::log("ipsec", "Extracting caroot from p12...");
-       if (open(STDIN, "-|")) {
-           my  $opt  = " pkcs12 -cacerts -nokeys";
-               $opt .= " -in $filename";
-               $opt .= " -out /tmp/newcacert";
-           $errormessage = &callssl ($opt);
-       } else {        #child
-           print "$cgiparams{'P12_PASS'}\n";
-           exit (0);
-       }
-
-       # Extract the Host certificate from the file
-       if (!$errormessage) {
-           &General::log("ipsec", "Extracting host cert from p12...");
-           if (open(STDIN, "-|")) {
-               my  $opt  = " pkcs12 -clcerts -nokeys";
-                   $opt .= " -in $filename";
-                   $opt .= " -out /tmp/newhostcert";
-               $errormessage = &callssl ($opt);
-           } else {    #child
-               print "$cgiparams{'P12_PASS'}\n";
-               exit (0);
-           }
-       }
-
-       # Extract the Host key from the file
-       if (!$errormessage) {
-           &General::log("ipsec", "Extracting private key from p12...");
-           if (open(STDIN, "-|")) {
-               my  $opt  = " pkcs12 -nocerts -nodes";
-                   $opt .= " -in $filename";
-                   $opt .= " -out /tmp/newhostkey";
-               $errormessage = &callssl ($opt);
-           } else {    #child
-               print "$cgiparams{'P12_PASS'}\n";
-               exit (0);
-           }
-       }
-
-       if (!$errormessage) {
-           &General::log("ipsec", "Moving cacert...");
-           move("/tmp/newcacert", "${General::swroot}/ca/cacert.pem");
-           $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
-       }
-
-       if (!$errormessage) {
-           &General::log("ipsec", "Moving host cert...");
-           move("/tmp/newhostcert", "${General::swroot}/certs/hostcert.pem");
-           $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
-        }
-
-       if (!$errormessage) {
-           &General::log("ipsec", "Moving private key...");
-           move("/tmp/newhostkey", "${General::swroot}/certs/hostkey.pem");
-           $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
-        }
-       
-       #cleanup temp files
-       unlink ($filename);
-       unlink ('/tmp/newcacert');
-       unlink ('/tmp/newhostcert');
-       unlink ('/tmp/newhostkey');
-       if ($errormessage) {
-           unlink ("${General::swroot}/ca/cacert.pem");
-           unlink ("${General::swroot}/certs/hostcert.pem");
-           unlink ("${General::swroot}/certs/hostkey.pem");
-           goto ROOTCERT_ERROR;
-       }
+               # Extract the CA certificate from the file
+               &General::log("ipsec", "Extracting caroot from p12...");
+               if (open(STDIN, "-|")) {
+                       my $opt = " pkcs12 -cacerts -nokeys";
+                       $opt .= " -in $filename";
+                       $opt .= " -out /tmp/newcacert";
+                       $errormessage = &callssl ($opt);
+               } else { #child
+                       print "$cgiparams{'P12_PASS'}\n";
+                       exit (0);
+               }
 
-       # Create empty CRL cannot be done because we don't have
-       # the private key for this CAROOT
-       # IPFire can only import certificates
+               # Extract the Host certificate from the file
+               if (!$errormessage) {
+                       &General::log("ipsec", "Extracting host cert from p12...");
+                       if (open(STDIN, "-|")) {
+                               my $opt = " pkcs12 -clcerts -nokeys";
+                               $opt .= " -in $filename";
+                               $opt .= " -out /tmp/newhostcert";
+                               $errormessage = &callssl ($opt);
+                       } else { #child
+                               print "$cgiparams{'P12_PASS'}\n";
+                               exit (0);
+                       }
+               }
 
-       &General::log("ipsec", "p12 import completed!");
-       &cleanssldatabase();
-       goto ROOTCERT_SUCCESS;
-
-    } elsif ($cgiparams{'ROOTCERT_COUNTRY'} ne '') {
-
-       # Validate input since the form was submitted
-       if ($cgiparams{'ROOTCERT_ORGANIZATION'} eq ''){
-           $errormessage = $Lang::tr{'organization cant be empty'};
-           goto ROOTCERT_ERROR;
-       }
-       if (length($cgiparams{'ROOTCERT_ORGANIZATION'}) >60) {
-           $errormessage = $Lang::tr{'organization too long'};
-           goto ROOTCERT_ERROR;
-       }
-       if ($cgiparams{'ROOTCERT_ORGANIZATION'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
-           $errormessage = $Lang::tr{'invalid input for organization'};
-           goto ROOTCERT_ERROR;
-       }
-       if ($cgiparams{'ROOTCERT_HOSTNAME'} eq ''){
-           $errormessage = $Lang::tr{'hostname cant be empty'};
-           goto ROOTCERT_ERROR;
-       }
-       unless (&General::validfqdn($cgiparams{'ROOTCERT_HOSTNAME'}) || &General::validip($cgiparams{'ROOTCERT_HOSTNAME'})) {
-           $errormessage = $Lang::tr{'invalid input for hostname'};
-           goto ROOTCERT_ERROR;
-       }
-       if ($cgiparams{'ROOTCERT_EMAIL'} ne '' && (! &General::validemail($cgiparams{'ROOTCERT_EMAIL'}))) {
-           $errormessage = $Lang::tr{'invalid input for e-mail address'};
-           goto ROOTCERT_ERROR;
-       }
-       if (length($cgiparams{'ROOTCERT_EMAIL'}) > 40) {
-           $errormessage = $Lang::tr{'e-mail address too long'};
-           goto ROOTCERT_ERROR;
-       }
-       if ($cgiparams{'ROOTCERT_OU'} ne '' && $cgiparams{'ROOTCERT_OU'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
-           $errormessage = $Lang::tr{'invalid input for department'};
-           goto ROOTCERT_ERROR;
-       }
-       if ($cgiparams{'ROOTCERT_CITY'} ne '' && $cgiparams{'ROOTCERT_CITY'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
-           $errormessage = $Lang::tr{'invalid input for city'};
-           goto ROOTCERT_ERROR;
-       }
-       if ($cgiparams{'ROOTCERT_STATE'} ne '' && $cgiparams{'ROOTCERT_STATE'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
-           $errormessage = $Lang::tr{'invalid input for state or province'};
-           goto ROOTCERT_ERROR;
-       }
-       if ($cgiparams{'ROOTCERT_COUNTRY'} !~ /^[A-Z]*$/) {
-           $errormessage = $Lang::tr{'invalid input for country'};
-           goto ROOTCERT_ERROR;
-       }
-       #the exact syntax is a list comma separated of 
-       #  email:any-validemail
-       #       URI: a uniform resource indicator
-       #   DNS: a DNS domain name
-       #   RID: a registered OBJECT IDENTIFIER
-       #   IP: an IP address
-       # example: email:franck@foo.com,IP:10.0.0.10,DNS:franck.foo.com
-
-       if ($cgiparams{'SUBJECTALTNAME'} ne '' && $cgiparams{'SUBJECTALTNAME'} !~ /^(email|URI|DNS|RID|IP):[a-zA-Z0-9 :\/,\.\-_@]*$/) {
-           $errormessage = $Lang::tr{'vpn altname syntax'};
-           goto VPNCONF_ERROR;
-       }
-
-       # Copy the cgisettings to vpnsettings and save the configfile
-       $vpnsettings{'ROOTCERT_ORGANIZATION'}   = $cgiparams{'ROOTCERT_ORGANIZATION'};
-       $vpnsettings{'ROOTCERT_HOSTNAME'}       = $cgiparams{'ROOTCERT_HOSTNAME'};
-       $vpnsettings{'ROOTCERT_EMAIL'}          = $cgiparams{'ROOTCERT_EMAIL'};
-       $vpnsettings{'ROOTCERT_OU'}             = $cgiparams{'ROOTCERT_OU'};
-       $vpnsettings{'ROOTCERT_CITY'}           = $cgiparams{'ROOTCERT_CITY'};
-       $vpnsettings{'ROOTCERT_STATE'}          = $cgiparams{'ROOTCERT_STATE'};
-       $vpnsettings{'ROOTCERT_COUNTRY'}        = $cgiparams{'ROOTCERT_COUNTRY'};
-       &General::writehash("${General::swroot}/vpn/settings", \%vpnsettings);
+               # Extract the Host key from the file
+               if (!$errormessage) {
+                       &General::log("ipsec", "Extracting private key from p12...");
+                       if (open(STDIN, "-|")) {
+                               my $opt = " pkcs12 -nocerts -nodes";
+                               $opt .= " -in $filename";
+                               $opt .= " -out /tmp/newhostkey";
+                               $errormessage = &callssl ($opt);
+                       } else { #child
+                               print "$cgiparams{'P12_PASS'}\n";
+                               exit (0);
+                       }
+               }
 
-       # Replace empty strings with a .
-       (my $ou = $cgiparams{'ROOTCERT_OU'}) =~ s/^\s*$/\./;
-       (my $city = $cgiparams{'ROOTCERT_CITY'}) =~ s/^\s*$/\./;
-       (my $state = $cgiparams{'ROOTCERT_STATE'}) =~ s/^\s*$/\./;
-
-       # Create the CA certificate
-       if (!$errormessage) {
-           &General::log("ipsec", "Creating cacert...");
-           if (open(STDIN, "-|")) {
-               my $opt  = " req -x509 -sha256 -nodes";
-                  $opt .= " -days 999999";
-                  $opt .= " -newkey rsa:4096";
-                  $opt .= " -keyout ${General::swroot}/private/cakey.pem";
-                  $opt .= " -out ${General::swroot}/ca/cacert.pem";
-
-               $errormessage = &callssl ($opt);
-           } else {    #child
-               print  "$cgiparams{'ROOTCERT_COUNTRY'}\n";
-               print  "$state\n";
-               print  "$city\n";
-               print  "$cgiparams{'ROOTCERT_ORGANIZATION'}\n";
-               print  "$ou\n";
-               print  "$cgiparams{'ROOTCERT_ORGANIZATION'} CA\n";
-               print  "$cgiparams{'ROOTCERT_EMAIL'}\n";
-               exit (0);
-           }
-       }
-
-       # Create the Host certificate request
-       if (!$errormessage) {
-           &General::log("ipsec", "Creating host cert...");
-           if (open(STDIN, "-|")) {
-               my $opt  = " req -sha256 -nodes";
-                  $opt .= " -newkey rsa:2048";
-                  $opt .= " -keyout ${General::swroot}/certs/hostkey.pem";
-                  $opt .= " -out ${General::swroot}/certs/hostreq.pem";
-               $errormessage = &callssl ($opt);
-           } else {    #child
-               print  "$cgiparams{'ROOTCERT_COUNTRY'}\n";
-               print  "$state\n";
-               print  "$city\n";
-               print  "$cgiparams{'ROOTCERT_ORGANIZATION'}\n";
-               print  "$ou\n";
-               print  "$cgiparams{'ROOTCERT_HOSTNAME'}\n";
-               print  "$cgiparams{'ROOTCERT_EMAIL'}\n";
-               print  ".\n";
-               print  ".\n";
-               exit (0);
-           }
-       }
+               if (!$errormessage) {
+                       &General::log("ipsec", "Moving cacert...");
+                       move("/tmp/newcacert", "${General::swroot}/ca/cacert.pem");
+                       $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
+               }
+
+               if (!$errormessage) {
+                       &General::log("ipsec", "Moving host cert...");
+                       move("/tmp/newhostcert", "${General::swroot}/certs/hostcert.pem");
+                       $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
+               }
+
+               if (!$errormessage) {
+                       &General::log("ipsec", "Moving private key...");
+                       move("/tmp/newhostkey", "${General::swroot}/certs/hostkey.pem");
+                       $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
+               }
+
+               #cleanup temp files
+               unlink ($filename);
+               unlink ('/tmp/newcacert');
+               unlink ('/tmp/newhostcert');
+               unlink ('/tmp/newhostkey');
+               if ($errormessage) {
+                       unlink ("${General::swroot}/ca/cacert.pem");
+                       unlink ("${General::swroot}/certs/hostcert.pem");
+                       unlink ("${General::swroot}/certs/hostkey.pem");
+                       goto ROOTCERT_ERROR;
+               }
+
+               # Create empty CRL cannot be done because we don't have
+               # the private key for this CAROOT
+               # IPFire can only import certificates
 
-       # Sign the host certificate request
-       if (!$errormessage) {
-           &General::log("ipsec", "Self signing host cert...");
+               &General::log("ipsec", "p12 import completed!");
+               &cleanssldatabase();
+               goto ROOTCERT_SUCCESS;
+
+       } elsif ($cgiparams{'ROOTCERT_COUNTRY'} ne '') {
 
-           #No easy way for specifying the contain of subjectAltName without writing a config file...
-           my ($fh, $v3extname) = tempfile ('/tmp/XXXXXXXX');
-           print $fh <<END
-           basicConstraints=CA:FALSE
-           nsComment="OpenSSL Generated Certificate"
-           subjectKeyIdentifier=hash
-           authorityKeyIdentifier=keyid,issuer:always
-           extendedKeyUsage = serverAuth
+               # Validate input since the form was submitted
+               if ($cgiparams{'ROOTCERT_ORGANIZATION'} eq ''){
+                       $errormessage = $Lang::tr{'organization cant be empty'};
+                       goto ROOTCERT_ERROR;
+               }
+               if (length($cgiparams{'ROOTCERT_ORGANIZATION'}) >60) {
+                       $errormessage = $Lang::tr{'organization too long'};
+                       goto ROOTCERT_ERROR;
+               }
+               if ($cgiparams{'ROOTCERT_ORGANIZATION'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for organization'};
+                       goto ROOTCERT_ERROR;
+               }
+               if ($cgiparams{'ROOTCERT_HOSTNAME'} eq ''){
+                       $errormessage = $Lang::tr{'hostname cant be empty'};
+                       goto ROOTCERT_ERROR;
+               }
+               unless (&General::validfqdn($cgiparams{'ROOTCERT_HOSTNAME'}) || &General::validip($cgiparams{'ROOTCERT_HOSTNAME'})) {
+                       $errormessage = $Lang::tr{'invalid input for hostname'};
+                       goto ROOTCERT_ERROR;
+               }
+               if ($cgiparams{'ROOTCERT_EMAIL'} ne '' && (! &General::validemail($cgiparams{'ROOTCERT_EMAIL'}))) {
+                       $errormessage = $Lang::tr{'invalid input for e-mail address'};
+                       goto ROOTCERT_ERROR;
+               }
+               if (length($cgiparams{'ROOTCERT_EMAIL'}) > 40) {
+                       $errormessage = $Lang::tr{'e-mail address too long'};
+                       goto ROOTCERT_ERROR;
+               }
+               if ($cgiparams{'ROOTCERT_OU'} ne '' && $cgiparams{'ROOTCERT_OU'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for department'};
+                       goto ROOTCERT_ERROR;
+               }
+               if ($cgiparams{'ROOTCERT_CITY'} ne '' && $cgiparams{'ROOTCERT_CITY'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for city'};
+                       goto ROOTCERT_ERROR;
+               }
+               if ($cgiparams{'ROOTCERT_STATE'} ne '' && $cgiparams{'ROOTCERT_STATE'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for state or province'};
+                       goto ROOTCERT_ERROR;
+               }
+               if ($cgiparams{'ROOTCERT_COUNTRY'} !~ /^[A-Z]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for country'};
+                       goto ROOTCERT_ERROR;
+               }
+               #the exact syntax is a list comma separated of
+               #       email:any-validemail
+               #       URI: a uniform resource indicator
+               #       DNS: a DNS domain name
+               #       RID: a registered OBJECT IDENTIFIER
+               #       IP: an IP address
+               # example: email:franck@foo.com,IP:10.0.0.10,DNS:franck.foo.com
+
+               if ($cgiparams{'SUBJECTALTNAME'} ne '' && $cgiparams{'SUBJECTALTNAME'} !~ /^(email|URI|DNS|RID|IP):[a-zA-Z0-9 :\/,\.\-_@]*$/) {
+                       $errormessage = $Lang::tr{'vpn altname syntax'};
+                       goto VPNCONF_ERROR;
+               }
+
+               # Copy the cgisettings to vpnsettings and save the configfile
+               $vpnsettings{'ROOTCERT_ORGANIZATION'}   = $cgiparams{'ROOTCERT_ORGANIZATION'};
+               $vpnsettings{'ROOTCERT_HOSTNAME'}               = $cgiparams{'ROOTCERT_HOSTNAME'};
+               $vpnsettings{'ROOTCERT_EMAIL'}                  = $cgiparams{'ROOTCERT_EMAIL'};
+               $vpnsettings{'ROOTCERT_OU'}                             = $cgiparams{'ROOTCERT_OU'};
+               $vpnsettings{'ROOTCERT_CITY'}                   = $cgiparams{'ROOTCERT_CITY'};
+               $vpnsettings{'ROOTCERT_STATE'}                  = $cgiparams{'ROOTCERT_STATE'};
+               $vpnsettings{'ROOTCERT_COUNTRY'}                = $cgiparams{'ROOTCERT_COUNTRY'};
+               &General::writehash("${General::swroot}/vpn/settings", \%vpnsettings);
+
+               # Replace empty strings with a .
+               (my $ou = $cgiparams{'ROOTCERT_OU'}) =~ s/^\s*$/\./;
+               (my $city = $cgiparams{'ROOTCERT_CITY'}) =~ s/^\s*$/\./;
+               (my $state = $cgiparams{'ROOTCERT_STATE'}) =~ s/^\s*$/\./;
+
+               # Create the CA certificate
+               if (!$errormessage) {
+                       &General::log("ipsec", "Creating cacert...");
+                       if (open(STDIN, "-|")) {
+                               my $opt = " req -x509 -sha256 -nodes";
+                               $opt .= " -days 999999";
+                               $opt .= " -newkey rsa:4096";
+                               $opt .= " -keyout ${General::swroot}/private/cakey.pem";
+                               $opt .= " -out ${General::swroot}/ca/cacert.pem";
+
+                               $errormessage = &callssl ($opt);
+                       } else { #child
+                               print "$cgiparams{'ROOTCERT_COUNTRY'}\n";
+                               print "$state\n";
+                               print "$city\n";
+                               print "$cgiparams{'ROOTCERT_ORGANIZATION'}\n";
+                               print "$ou\n";
+                               print "$cgiparams{'ROOTCERT_ORGANIZATION'} CA\n";
+                               print "$cgiparams{'ROOTCERT_EMAIL'}\n";
+                               exit (0);
+                       }
+               }
+
+               # Create the Host certificate request
+               if (!$errormessage) {
+                       &General::log("ipsec", "Creating host cert...");
+                       if (open(STDIN, "-|")) {
+                               my $opt = " req -sha256 -nodes";
+                               $opt .= " -newkey rsa:2048";
+                               $opt .= " -keyout ${General::swroot}/certs/hostkey.pem";
+                               $opt .= " -out ${General::swroot}/certs/hostreq.pem";
+                               $errormessage = &callssl ($opt);
+                       } else { #child
+                               print "$cgiparams{'ROOTCERT_COUNTRY'}\n";
+                               print "$state\n";
+                               print "$city\n";
+                               print "$cgiparams{'ROOTCERT_ORGANIZATION'}\n";
+                               print "$ou\n";
+                               print "$cgiparams{'ROOTCERT_HOSTNAME'}\n";
+                               print "$cgiparams{'ROOTCERT_EMAIL'}\n";
+                               print ".\n";
+                               print ".\n";
+                               exit (0);
+                       }
+               }
+
+               # Sign the host certificate request
+               if (!$errormessage) {
+                       &General::log("ipsec", "Self signing host cert...");
+
+                       #No easy way for specifying the contain of subjectAltName without writing a config file...
+                       my ($fh, $v3extname) = tempfile ('/tmp/XXXXXXXX');
+                       print $fh <<END
+                       basicConstraints=CA:FALSE
+                       nsComment="OpenSSL Generated Certificate"
+                       subjectKeyIdentifier=hash
+                       authorityKeyIdentifier=keyid,issuer:always
+                       extendedKeyUsage = serverAuth
 END
 ;
-           print $fh "subjectAltName=$cgiparams{'SUBJECTALTNAME'}" if ($cgiparams{'SUBJECTALTNAME'});
-           close ($fh);
-           
-           my  $opt  = " ca -md sha256 -days 999999";
-               $opt .= " -batch -notext";
-               $opt .= " -in ${General::swroot}/certs/hostreq.pem";
-               $opt .= " -out ${General::swroot}/certs/hostcert.pem";
-               $opt .= " -extfile $v3extname";
-           $errormessage = &callssl ($opt);
-           unlink ("${General::swroot}/certs/hostreq.pem"); #no more needed
-           unlink ($v3extname);
-       }
-
-       # Create an empty CRL
-       if (!$errormessage) {
-           &General::log("ipsec", "Creating emptycrl...");
-           my  $opt  = " ca -gencrl";
-               $opt .= " -out ${General::swroot}/crls/cacrl.pem";
-           $errormessage = &callssl ($opt);
-       }
-       
-       # Successfully build CA / CERT!
-       if (!$errormessage) {
-           &cleanssldatabase();
-           goto ROOTCERT_SUCCESS;
-       }
-       
-       #Cleanup
-       unlink ("${General::swroot}/ca/cacert.pem");
-       unlink ("${General::swroot}/certs/hostkey.pem");
-       unlink ("${General::swroot}/certs/hostcert.pem");
-       unlink ("${General::swroot}/crls/cacrl.pem");
-       &cleanssldatabase();
-    }
-
-    ROOTCERT_ERROR:
-    &Header::showhttpheaders();
-    &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-    &Header::openbigbox('100%', 'left', '', $errormessage);
-    if ($errormessage) {
-        &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
-        print "<class name='base'>$errormessage";
-        print "&nbsp;</class>";
-        &Header::closebox();
-    }
-    &Header::openbox('100%', 'left', "$Lang::tr{'generate root/host certificates'}:");
-    print <<END
-    <form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>
-    <table width='100%' border='0' cellspacing='1' cellpadding='0'>
-    <tr><td width='40%' class='base'>$Lang::tr{'organization name'}:</td>
-        <td width='60%' class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_ORGANIZATION' value='$cgiparams{'ROOTCERT_ORGANIZATION'}' size='32' /></td></tr>
-    <tr><td class='base'>$Lang::tr{'ipfires hostname'}:</td>
-        <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_HOSTNAME' value='$cgiparams{'ROOTCERT_HOSTNAME'}' size='32' /></td></tr>
-    <tr><td class='base'>$Lang::tr{'your e-mail'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-        <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_EMAIL' value='$cgiparams{'ROOTCERT_EMAIL'}' size='32' /></td></tr>
-    <tr><td class='base'>$Lang::tr{'your department'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-        <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_OU' value='$cgiparams{'ROOTCERT_OU'}' size='32' /></td></tr>
-    <tr><td class='base'>$Lang::tr{'city'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-        <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_CITY' value='$cgiparams{'ROOTCERT_CITY'}' size='32' /></td></tr>
-    <tr><td class='base'>$Lang::tr{'state or province'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-        <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_STATE' value='$cgiparams{'ROOTCERT_STATE'}' size='32' /></td></tr>
-    <tr><td class='base'>$Lang::tr{'country'}:</td>
-        <td class='base'><select name='ROOTCERT_COUNTRY'>
+                       print $fh "subjectAltName=$cgiparams{'SUBJECTALTNAME'}" if ($cgiparams{'SUBJECTALTNAME'});
+                       close ($fh);
+
+                       my $opt = " ca -md sha256 -days 999999";
+                       $opt .= " -batch -notext";
+                       $opt .= " -in ${General::swroot}/certs/hostreq.pem";
+                       $opt .= " -out ${General::swroot}/certs/hostcert.pem";
+                       $opt .= " -extfile $v3extname";
+                       $errormessage = &callssl ($opt);
+                       unlink ("${General::swroot}/certs/hostreq.pem"); #no more needed
+                       unlink ($v3extname);
+               }
+
+               # Create an empty CRL
+               if (!$errormessage) {
+                       &General::log("ipsec", "Creating emptycrl...");
+                       my $opt = " ca -gencrl";
+                       $opt .= " -out ${General::swroot}/crls/cacrl.pem";
+                       $errormessage = &callssl ($opt);
+               }
+
+               # Successfully build CA / CERT!
+               if (!$errormessage) {
+                       &cleanssldatabase();
+                       goto ROOTCERT_SUCCESS;
+               }
+
+               #Cleanup
+               unlink ("${General::swroot}/ca/cacert.pem");
+               unlink ("${General::swroot}/certs/hostkey.pem");
+               unlink ("${General::swroot}/certs/hostcert.pem");
+               unlink ("${General::swroot}/crls/cacrl.pem");
+               &cleanssldatabase();
+       }
+
+       ROOTCERT_ERROR:
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+       &Header::openbigbox('100%', 'left', '', $errormessage);
+       if ($errormessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
+               print "<class name='base'>$errormessage";
+               print "&nbsp;</class>";
+               &Header::closebox();
+       }
+       &Header::openbox('100%', 'left', "$Lang::tr{'generate root/host certificates'}:");
+       print <<END
+       <form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>
+               <table width='100%' border='0' cellspacing='1' cellpadding='0'>
+       <tr><td width='40%' class='base'>$Lang::tr{'organization name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+               <td width='60%' class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_ORGANIZATION' value='$cgiparams{'ROOTCERT_ORGANIZATION'}' size='32' /></td></tr>
+       <tr><td class='base'>$Lang::tr{'ipfires hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+               <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_HOSTNAME' value='$cgiparams{'ROOTCERT_HOSTNAME'}' size='32' /></td></tr>
+       <tr><td class='base'>$Lang::tr{'your e-mail'}:</td>
+               <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_EMAIL' value='$cgiparams{'ROOTCERT_EMAIL'}' size='32' /></td></tr>
+       <tr><td class='base'>$Lang::tr{'your department'}:</td>
+               <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_OU' value='$cgiparams{'ROOTCERT_OU'}' size='32' /></td></tr>
+       <tr><td class='base'>$Lang::tr{'city'}:</td>
+               <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_CITY' value='$cgiparams{'ROOTCERT_CITY'}' size='32' /></td></tr>
+       <tr><td class='base'>$Lang::tr{'state or province'}:</td>
+               <td class='base' nowrap='nowrap'><input type='text' name='ROOTCERT_STATE' value='$cgiparams{'ROOTCERT_STATE'}' size='32' /></td></tr>
+       <tr><td class='base'>$Lang::tr{'country'}:</td>
+               <td class='base'><select name='ROOTCERT_COUNTRY'>
 END
-    ;
-    foreach my $country (sort keys %{Countries::countries}) {
-        print "<option value='$Countries::countries{$country}'";
-        if ( $Countries::countries{$country} eq $cgiparams{'ROOTCERT_COUNTRY'} ) {
-            print " selected='selected'";
-        }
-        print ">$country</option>";
-    }
-    print <<END
-        </select></td></tr>
-    <tr><td class='base'>$Lang::tr{'vpn subjectaltname'} (subjectAltName=email:*,URI:*,DNS:*,RID:*) <img src='/blob.gif' alt='*' /></td>
+;
+       foreach my $country (sort keys %{Countries::countries}) {
+               print "<option value='$Countries::countries{$country}'";
+               if ( $Countries::countries{$country} eq $cgiparams{'ROOTCERT_COUNTRY'} ) {
+                       print " selected='selected'";
+               }
+               print ">$country</option>";
+       }
+       print <<END
+               </select></td></tr>
+       <tr><td class='base'>$Lang::tr{'vpn subjectaltname'} (subjectAltName=email:*,URI:*,DNS:*,RID:*)</td>
        <td class='base' nowrap='nowrap'><input type='text' name='SUBJECTALTNAME' value='$cgiparams{'SUBJECTALTNAME'}' size='32' /></td></tr>
-    <tr><td>&nbsp;</td>
-        <td><br /><input type='submit' name='ACTION' value='$Lang::tr{'generate root/host certificates'}' /><br /><br /></td></tr>
-    <tr><td class='base' colspan='2' align='left'>
-        <b><font color='${Header::colourred}'>$Lang::tr{'capswarning'}</font></b>: 
-        $Lang::tr{'generating the root and host certificates may take a long time. it can take up to several minutes on older hardware. please be patient'}
-    </td></tr>
-    <tr><td colspan='2'><hr></td></tr>
-    <tr><td class='base' nowrap='nowrap'>$Lang::tr{'upload p12 file'}:</td>
-        <td nowrap='nowrap'><input type='file' name='FH' size='32' /></td></tr>
-    <tr><td class='base'>$Lang::tr{'pkcs12 file password'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-        <td class='base' nowrap='nowrap'><input type='password' name='P12_PASS' value='$cgiparams{'P12_PASS'}' size='32' /></td></tr>
-    <tr><td>&nbsp;</td>
-        <td><input type='submit' name='ACTION' value='$Lang::tr{'upload p12 file'}' /></td></tr>
-    <tr><td class='base' colspan='2' align='left'>
-        <img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'this field may be blank'}</td></tr>
-    </table></form>
+       <tr><td>&nbsp;</td>
+               <td><br /><input type='submit' name='ACTION' value='$Lang::tr{'generate root/host certificates'}' /><br /><br /></td></tr>
+       <tr><td class='base' colspan='2' align='left'>
+               <b><font color='${Header::colourred}'>$Lang::tr{'capswarning'}</font></b>:
+               $Lang::tr{'generating the root and host certificates may take a long time. it can take up to several minutes on older hardware. please be patient'}
+       </td></tr>
+       <tr><td colspan='2'><hr></td></tr>
+       <tr><td class='base' nowrap='nowrap'>$Lang::tr{'upload p12 file'}:</td>
+               <td nowrap='nowrap'><input type='file' name='FH' size='32' /></td></tr>
+       <tr><td class='base'>$Lang::tr{'pkcs12 file password'}:</td>
+               <td class='base' nowrap='nowrap'><input type='password' name='P12_PASS' value='$cgiparams{'P12_PASS'}' size='32' /></td></tr>
+       <tr><td>&nbsp;</td>
+               <td><input type='submit' name='ACTION' value='$Lang::tr{'upload p12 file'}' /></td></tr>
+       <tr><td class='base' colspan='2' align='left'>
+               <img src='/blob.gif' alt='*' />&nbsp;$Lang::tr{'required field'}</td></tr>
+       </table></form>
 END
-    ;
-    &Header::closebox();
-    &Header::closebigbox();
-    &Header::closepage();
-    exit(0);
-
-    ROOTCERT_SUCCESS:
-    if (&vpnenabled) {
-       system('/usr/local/bin/ipsecctrl', 'S');
-       sleep $sleepDelay;
-    }
-    ROOTCERT_SKIP:
+;
+       &Header::closebox();
+       &Header::closebigbox();
+       &Header::closepage();
+       exit(0);
+
+       ROOTCERT_SUCCESS:
+       if (&vpnenabled) {
+               system('/usr/local/bin/ipsecctrl', 'S');
+               sleep $sleepDelay;
+       }
+       ROOTCERT_SKIP:
 ###
 ### Export PKCS12 file to browser
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'download pkcs12 file'}) {
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-    print "Content-Type: application/force-download\n";
-    print "Content-Disposition: attachment; filename=" . $confighash{$cgiparams{'KEY'}}[1] . ".p12\r\n";
-    print "Content-Type: application/octet-stream\r\n\r\n";
-    print `/bin/cat ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1].p12`;
-    exit (0);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+       print "Content-Type: application/force-download\n";
+       print "Content-Disposition: attachment; filename=" . $confighash{$cgiparams{'KEY'}}[1] . ".p12\r\n";
+       print "Content-Type: application/octet-stream\r\n\r\n";
+       print `/bin/cat ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1].p12`;
+       exit (0);
 
 ###
 ### Display certificate
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'show certificate'}) {
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-
-    if ( -f "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem") {
-       &Header::showhttpheaders();
-       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-       &Header::openbigbox('100%', 'left', '', '');
-       &Header::openbox('100%', 'left', "$Lang::tr{'cert'}:");
-       my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`;
-       $output = &Header::cleanhtml($output,"y");
-       print "<pre>$output</pre>\n";
-       &Header::closebox();
-       print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>";
-       &Header::closebigbox();
-       &Header::closepage();
-       exit(0);
-    }
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+
+       if ( -f "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem") {
+               &Header::showhttpheaders();
+               &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+               &Header::openbigbox('100%', 'left', '', '');
+               &Header::openbox('100%', 'left', "$Lang::tr{'cert'}:");
+               my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`;
+               $output = &Header::cleanhtml($output,"y");
+               print "<pre>$output</pre>\n";
+               &Header::closebox();
+               print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>";
+               &Header::closebigbox();
+               &Header::closepage();
+               exit(0);
+       }
 
 ###
 ### Export Certificate to browser
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'download certificate'}) {
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
 
-    if ( -f "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem") {
-       print "Content-Type: application/force-download\n";
-       print "Content-Disposition: attachment; filename=" . $confighash{$cgiparams{'KEY'}}[1] . "cert.pem\n\n";
-       print `/bin/cat ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`;
-       exit (0);
-    }
+       if ( -f "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem") {
+               print "Content-Type: application/force-download\n";
+               print "Content-Disposition: attachment; filename=" . $confighash{$cgiparams{'KEY'}}[1] . "cert.pem\n\n";
+               print `/bin/cat ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`;
+               exit (0);
+       }
 
 ###
 ### Enable/Disable connection
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
-    
-    &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-
-    if ($confighash{$cgiparams{'KEY'}}) {
-       if ($confighash{$cgiparams{'KEY'}}[0] eq 'off') {
-           $confighash{$cgiparams{'KEY'}}[0] = 'on';
-           &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
-           &writeipsecfiles();
-           system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}) if (&vpnenabled);
+
+       &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+
+       if ($confighash{$cgiparams{'KEY'}}) {
+               if ($confighash{$cgiparams{'KEY'}}[0] eq 'off') {
+                       $confighash{$cgiparams{'KEY'}}[0] = 'on';
+                       &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
+                       &writeipsecfiles();
+                       system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}) if (&vpnenabled);
+               } else {
+                       system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled);
+                       $confighash{$cgiparams{'KEY'}}[0] = 'off';
+                       &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
+                       &writeipsecfiles();
+               }
+               sleep $sleepDelay;
        } else {
-           system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled);
-           $confighash{$cgiparams{'KEY'}}[0] = 'off';
-           &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
-           &writeipsecfiles();
+               $errormessage = $Lang::tr{'invalid key'};
        }
-       sleep $sleepDelay;
-    } else {
-       $errormessage = $Lang::tr{'invalid key'};
-    }
 
 ###
 ### Restart connection
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'restart'}) {
-    &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+       &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
 
-    if ($confighash{$cgiparams{'KEY'}}) {
-       if (&vpnenabled) {
-           system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'});
-           sleep $sleepDelay;
+       if ($confighash{$cgiparams{'KEY'}}) {
+               if (&vpnenabled) {
+                       system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'});
+                       sleep $sleepDelay;
+               }
+       } else {
+               $errormessage = $Lang::tr{'invalid key'};
        }
-    } else {
-       $errormessage = $Lang::tr{'invalid key'};
-    }
 
 ###
 ### Remove connection
 ###
 } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'remove'}) {
-    &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-
-    if ($confighash{$cgiparams{'KEY'}}) {
-       system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled);
-       unlink ("${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem");
-       unlink ("${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1].p12");
-       delete $confighash{$cgiparams{'KEY'}};
-       &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
-       &writeipsecfiles();
-    } else {
-       $errormessage = $Lang::tr{'invalid key'};
-    }
+       &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+
+       if ($confighash{$cgiparams{'KEY'}}) {
+               system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled);
+               unlink ("${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem");
+               unlink ("${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1].p12");
+               delete $confighash{$cgiparams{'KEY'}};
+               &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
+               &writeipsecfiles();
+       } else {
+               $errormessage = $Lang::tr{'invalid key'};
+       }
        &General::firewall_reload();
 ###
 ### Choose between adding a host-net or net-net connection
@@ -1205,531 +1220,545 @@ END
        &Header::openbigbox('100%', 'left', '', '');
        &Header::openbox('100%', 'left', $Lang::tr{'connection type'});
        print <<END
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <b>$Lang::tr{'connection type'}:</b><br />
-           <table>
-           <tr><td><input type='radio' name='TYPE' value='host' checked='checked' /></td>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+               <b>$Lang::tr{'connection type'}:</b><br />
+               <table>
+               <tr><td><input type='radio' name='TYPE' value='host' checked='checked' /></td>
                <td class='base'>$Lang::tr{'host to net vpn'}</td>
-           </tr><tr>
+               </tr><tr>
                <td><input type='radio' name='TYPE' value='net' /></td>
                <td class='base'>$Lang::tr{'net to net vpn'}</td>
-           </tr><tr>
+               </tr><tr>
                <td align='center' colspan='2'><input type='submit' name='ACTION' value='$Lang::tr{'add'}' /></td>
-           </tr>
-           </table></form>
+               </tr>
+               </table></form>
 END
-       ;
+;
        &Header::closebox();
        &Header::closebigbox();
        &Header::closepage();
        exit (0);
 ###
-### Adding/Editing/Saving a  connection
+### Adding/Editing/Saving a connection
 ###
 } elsif (($cgiparams{'ACTION'} eq $Lang::tr{'add'}) ||
-        ($cgiparams{'ACTION'} eq $Lang::tr{'edit'}) ||
-        ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'ADVANCED'} eq '')) {
-
-    &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
-    &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-
-    if ($cgiparams{'ACTION'} eq $Lang::tr{'edit'}) {
-       if (! $confighash{$cgiparams{'KEY'}}[0]) {
-           $errormessage = $Lang::tr{'invalid key'};
-           goto VPNCONF_END;
-       }
-       $cgiparams{'ENABLED'}           = $confighash{$cgiparams{'KEY'}}[0];
-       $cgiparams{'NAME'}              = $confighash{$cgiparams{'KEY'}}[1];
-       $cgiparams{'TYPE'}              = $confighash{$cgiparams{'KEY'}}[3];
-       $cgiparams{'AUTH'}              = $confighash{$cgiparams{'KEY'}}[4];
-       $cgiparams{'PSK'}               = $confighash{$cgiparams{'KEY'}}[5];
-       #$cgiparams{'free'}             = $confighash{$cgiparams{'KEY'}}[6];
-       $cgiparams{'LOCAL_ID'}          = $confighash{$cgiparams{'KEY'}}[7];
-       $cgiparams{'LOCAL_SUBNET'}      = $confighash{$cgiparams{'KEY'}}[8];
-       $cgiparams{'REMOTE_ID'}         = $confighash{$cgiparams{'KEY'}}[9];
-       $cgiparams{'REMOTE'}            = $confighash{$cgiparams{'KEY'}}[10];
-       $cgiparams{'REMOTE_SUBNET'}     = $confighash{$cgiparams{'KEY'}}[11];
-       $cgiparams{'REMARK'}            = $confighash{$cgiparams{'KEY'}}[25];
-       $cgiparams{'DPD_ACTION'}        = $confighash{$cgiparams{'KEY'}}[27];
-       $cgiparams{'IKE_VERSION'}       = $confighash{$cgiparams{'KEY'}}[29];
-       $cgiparams{'IKE_ENCRYPTION'}    = $confighash{$cgiparams{'KEY'}}[18];
-       $cgiparams{'IKE_INTEGRITY'}     = $confighash{$cgiparams{'KEY'}}[19];
-       $cgiparams{'IKE_GROUPTYPE'}     = $confighash{$cgiparams{'KEY'}}[20];
-       $cgiparams{'IKE_LIFETIME'}      = $confighash{$cgiparams{'KEY'}}[16];
-       $cgiparams{'ESP_ENCRYPTION'}    = $confighash{$cgiparams{'KEY'}}[21];
-       $cgiparams{'ESP_INTEGRITY'}     = $confighash{$cgiparams{'KEY'}}[22];
-       $cgiparams{'ESP_GROUPTYPE'}     = $confighash{$cgiparams{'KEY'}}[23];
-       $cgiparams{'ESP_KEYLIFE'}       = $confighash{$cgiparams{'KEY'}}[17];
-       $cgiparams{'COMPRESSION'}       = $confighash{$cgiparams{'KEY'}}[13];
-       $cgiparams{'ONLY_PROPOSED'}     = $confighash{$cgiparams{'KEY'}}[24];
-       $cgiparams{'PFS'}               = $confighash{$cgiparams{'KEY'}}[28];
-       $cgiparams{'VHOST'}             = $confighash{$cgiparams{'KEY'}}[14];
-       $cgiparams{'DPD_TIMEOUT'}               = $confighash{$cgiparams{'KEY'}}[30];
-       $cgiparams{'DPD_DELAY'}         = $confighash{$cgiparams{'KEY'}}[31];
+       ($cgiparams{'ACTION'} eq $Lang::tr{'edit'}) ||
+       ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'ADVANCED'} eq '')) {
 
-       if (!$cgiparams{'DPD_DELAY'}) {
-               $cgiparams{'DPD_DELAY'} = 30;
-       }
+       &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
+       &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
 
-       if (!$cgiparams{'DPD_TIMEOUT'}) {
-               $cgiparams{'DPD_TIMEOUT'} = 120;
-       }
+       if ($cgiparams{'ACTION'} eq $Lang::tr{'edit'}) {
+               if (! $confighash{$cgiparams{'KEY'}}[0]) {
+                       $errormessage = $Lang::tr{'invalid key'};
+                       goto VPNCONF_END;
+               }
+               $cgiparams{'ENABLED'}                   = $confighash{$cgiparams{'KEY'}}[0];
+               $cgiparams{'NAME'}                              = $confighash{$cgiparams{'KEY'}}[1];
+               $cgiparams{'TYPE'}                              = $confighash{$cgiparams{'KEY'}}[3];
+               $cgiparams{'AUTH'}                              = $confighash{$cgiparams{'KEY'}}[4];
+               $cgiparams{'PSK'}                               = $confighash{$cgiparams{'KEY'}}[5];
+               #$cgiparams{'free'}                             = $confighash{$cgiparams{'KEY'}}[6];
+               $cgiparams{'LOCAL_ID'}                  = $confighash{$cgiparams{'KEY'}}[7];
+               my @local_subnets = split(",", $confighash{$cgiparams{'KEY'}}[8]);
+               $cgiparams{'LOCAL_SUBNET'}              = join(/\|/, @local_subnets);
+               $cgiparams{'REMOTE_ID'}                 = $confighash{$cgiparams{'KEY'}}[9];
+               $cgiparams{'REMOTE'}                    = $confighash{$cgiparams{'KEY'}}[10];
+               my @remote_subnets = split(",", $confighash{$cgiparams{'KEY'}}[11]);
+               $cgiparams{'REMOTE_SUBNET'}             = join(/\|/, @remote_subnets);
+               $cgiparams{'REMARK'}                    = $confighash{$cgiparams{'KEY'}}[25];
+               $cgiparams{'DPD_ACTION'}                = $confighash{$cgiparams{'KEY'}}[27];
+               $cgiparams{'IKE_VERSION'}               = $confighash{$cgiparams{'KEY'}}[29];
+               $cgiparams{'IKE_ENCRYPTION'}    = $confighash{$cgiparams{'KEY'}}[18];
+               $cgiparams{'IKE_INTEGRITY'}             = $confighash{$cgiparams{'KEY'}}[19];
+               $cgiparams{'IKE_GROUPTYPE'}             = $confighash{$cgiparams{'KEY'}}[20];
+               $cgiparams{'IKE_LIFETIME'}              = $confighash{$cgiparams{'KEY'}}[16];
+               $cgiparams{'ESP_ENCRYPTION'}    = $confighash{$cgiparams{'KEY'}}[21];
+               $cgiparams{'ESP_INTEGRITY'}             = $confighash{$cgiparams{'KEY'}}[22];
+               $cgiparams{'ESP_GROUPTYPE'}             = $confighash{$cgiparams{'KEY'}}[23];
+               if ($cgiparams{'ESP_GROUPTYPE'} eq "") {
+                       $cgiparams{'ESP_GROUPTYPE'}     = $cgiparams{'IKE_GROUPTYPE'};
+               }
+               $cgiparams{'ESP_KEYLIFE'}               = $confighash{$cgiparams{'KEY'}}[17];
+               $cgiparams{'COMPRESSION'}               = $confighash{$cgiparams{'KEY'}}[13];
+               $cgiparams{'ONLY_PROPOSED'}             = $confighash{$cgiparams{'KEY'}}[24];
+               $cgiparams{'PFS'}                               = $confighash{$cgiparams{'KEY'}}[28];
+               $cgiparams{'DPD_TIMEOUT'}               = $confighash{$cgiparams{'KEY'}}[30];
+               $cgiparams{'DPD_DELAY'}                 = $confighash{$cgiparams{'KEY'}}[31];
+               $cgiparams{'FORCE_MOBIKE'}              = $confighash{$cgiparams{'KEY'}}[32];
+
+               if (!$cgiparams{'DPD_DELAY'}) {
+                       $cgiparams{'DPD_DELAY'} = 30;
+               }
 
-    } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) {
-       $cgiparams{'REMARK'} = &Header::cleanhtml($cgiparams{'REMARK'});
-       if ($cgiparams{'TYPE'} !~ /^(host|net)$/) {
-           $errormessage = $Lang::tr{'connection type is invalid'};
-           goto VPNCONF_ERROR;
-       }
+               if (!$cgiparams{'DPD_TIMEOUT'}) {
+                       $cgiparams{'DPD_TIMEOUT'} = 120;
+               }
 
-       if ($cgiparams{'NAME'} !~ /^[a-zA-Z0-9]+$/) {
-           $errormessage = $Lang::tr{'name must only contain characters'};
-           goto VPNCONF_ERROR;
-       }
+       } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) {
+               $cgiparams{'REMARK'} = &Header::cleanhtml($cgiparams{'REMARK'});
+               if ($cgiparams{'TYPE'} !~ /^(host|net)$/) {
+                       $errormessage = $Lang::tr{'connection type is invalid'};
+                       goto VPNCONF_ERROR;
+               }
 
-       if ($cgiparams{'NAME'} =~ /^(host|01|block|private|clear|packetdefault)$/) {
-           $errormessage = $Lang::tr{'name is invalid'};
-           goto VPNCONF_ERROR;
-       }
+               if ($cgiparams{'NAME'} !~ /^[a-zA-Z0-9]+$/) {
+                       $errormessage = $Lang::tr{'name must only contain characters'};
+                       goto VPNCONF_ERROR;
+               }
 
-       if (length($cgiparams{'NAME'}) >60) {
-           $errormessage = $Lang::tr{'name too long'};
-           goto VPNCONF_ERROR;
-       }
+               if ($cgiparams{'NAME'} =~ /^(host|01|block|private|clear|packetdefault)$/) {
+                       $errormessage = $Lang::tr{'name is invalid'};
+                       goto VPNCONF_ERROR;
+               }
 
-       # Check if there is no other entry with this name
-       if (! $cgiparams{'KEY'}) {  #only for add
-           foreach my $key (keys %confighash) {
-               if ($confighash{$key}[1] eq $cgiparams{'NAME'}) {
-                   $errormessage = $Lang::tr{'a connection with this name already exists'};
-                   goto VPNCONF_ERROR;
+               if (length($cgiparams{'NAME'}) >60) {
+                       $errormessage = $Lang::tr{'name too long'};
+                       goto VPNCONF_ERROR;
                }
-           }
-       }
 
-       if (($cgiparams{'TYPE'} eq 'net') && (! $cgiparams{'REMOTE'})) {
-           $errormessage = $Lang::tr{'invalid input for remote host/ip'};
-           goto VPNCONF_ERROR;
-       }
+               # Check if there is no other entry with this name
+               if (! $cgiparams{'KEY'}) { #only for add
+                       foreach my $key (keys %confighash) {
+                               if ($confighash{$key}[1] eq $cgiparams{'NAME'}) {
+                                       $errormessage = $Lang::tr{'a connection with this name already exists'};
+                                       goto VPNCONF_ERROR;
+                               }
+                       }
+               }
 
-       if ($cgiparams{'REMOTE'}) {
-           if (($cgiparams{'REMOTE'} ne '%any') && (! &General::validip($cgiparams{'REMOTE'}))) {
-               if (! &General::validfqdn ($cgiparams{'REMOTE'}))  {
-                   $errormessage = $Lang::tr{'invalid input for remote host/ip'};
-                   goto VPNCONF_ERROR;
-               } else {
-                   if (&valid_dns_host($cgiparams{'REMOTE'})) {
-                       $warnmessage = "$Lang::tr{'check vpn lr'} $cgiparams{'REMOTE'}. $Lang::tr{'dns check failed'}";
-                   }
+               if (($cgiparams{'TYPE'} eq 'net') && (! $cgiparams{'REMOTE'})) {
+                       $errormessage = $Lang::tr{'invalid input for remote host/ip'};
+                       goto VPNCONF_ERROR;
                }
-           }
-       }
 
-        unless (&General::validipandmask($cgiparams{'LOCAL_SUBNET'})) {
-            $errormessage = $Lang::tr{'local subnet is invalid'};
-           goto VPNCONF_ERROR;
-       }
+               if ($cgiparams{'REMOTE'}) {
+                       if (($cgiparams{'REMOTE'} ne '%any') && (! &General::validip($cgiparams{'REMOTE'}))) {
+                               if (! &General::validfqdn ($cgiparams{'REMOTE'})) {
+                                       $errormessage = $Lang::tr{'invalid input for remote host/ip'};
+                                       goto VPNCONF_ERROR;
+                               } else {
+                                       if (&valid_dns_host($cgiparams{'REMOTE'})) {
+                                               $warnmessage = "$Lang::tr{'check vpn lr'} $cgiparams{'REMOTE'}. $Lang::tr{'dns check failed'}";
+                                       }
+                               }
+                       }
+               }
 
-       # Allow only one roadwarrior/psk without remote IP-address
-       if ($cgiparams{'REMOTE'} eq '' && $cgiparams{'AUTH'} eq 'psk') {
-           foreach my $key (keys %confighash) {
-               if ( ($cgiparams{'KEY'} ne $key) && 
-                     ($confighash{$key}[4] eq 'psk') && 
-                     ($confighash{$key}[10] eq '') ) {
-                       $errormessage = $Lang::tr{'you can only define one roadwarrior connection when using pre-shared key authentication'};
-                       goto VPNCONF_ERROR;
+               my @local_subnets = split(",", $cgiparams{'LOCAL_SUBNET'});
+               foreach my $subnet (@local_subnets) {
+                       unless (&Network::check_subnet($subnet)) {
+                               $errormessage = $Lang::tr{'local subnet is invalid'};
+                               goto VPNCONF_ERROR;
+                       }
                }
-           }
-       }
-       if (($cgiparams{'TYPE'} eq 'net') && (! &General::validipandmask($cgiparams{'REMOTE_SUBNET'}))) {
-            $errormessage = $Lang::tr{'remote subnet is invalid'};
-           goto VPNCONF_ERROR;
-       }
 
-       if ($cgiparams{'ENABLED'} !~ /^(on|off)$/) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto VPNCONF_ERROR;
-       }
-       if ($cgiparams{'EDIT_ADVANCED'} !~ /^(on|off)$/) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto VPNCONF_ERROR;
-       }
+               # Allow only one roadwarrior/psk without remote IP-address
+               if ($cgiparams{'REMOTE'} eq '' && $cgiparams{'AUTH'} eq 'psk') {
+                       foreach my $key (keys %confighash) {
+                               if ( ($cgiparams{'KEY'} ne $key) &&
+                                       ($confighash{$key}[4] eq 'psk') &&
+                                       ($confighash{$key}[10] eq '') ) {
+                                       $errormessage = $Lang::tr{'you can only define one roadwarrior connection when using pre-shared key authentication'};
+                                       goto VPNCONF_ERROR;
+                               }
+                       }
+               }
 
-       # Allow nothing or a string (DN,FDQN,) beginning with @
-       # with no comma but slashes between RID eg @O=FR/C=Paris/OU=myhome/CN=franck
-       if ( ($cgiparams{'LOCAL_ID'} !~ /^(|[\w.-]*@[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
-           ($cgiparams{'REMOTE_ID'} !~ /^(|[\w.-]*@[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
-           (($cgiparams{'REMOTE_ID'} eq $cgiparams{'LOCAL_ID'}) && ($cgiparams{'LOCAL_ID'} ne ''))
-          ) {
-           $errormessage = $Lang::tr{'invalid local-remote id'} . '<br />' .
-           'DER_ASN1_DN: @c=FR/ou=Paris/ou=Home/cn=*<br />' .
-           'FQDN: @ipfire.org<br />' .
-           'USER_FQDN: info@ipfire.org<br />' .
-           'IPV4_ADDR: 123.123.123.123';
-           goto VPNCONF_ERROR;
-       }
-       # If Auth is DN, verify existance of Remote ID.
-       if ( $cgiparams{'REMOTE_ID'} eq '' && (
-               $cgiparams{'AUTH'} eq 'auth-dn'||                  # while creation
-               $confighash{$cgiparams{'KEY'}}[2] eq '%auth-dn')){ # while editing
-           $errormessage = $Lang::tr{'vpn missing remote id'};
-           goto VPNCONF_ERROR;
-       }
+               if ($cgiparams{'TYPE'} eq 'net') {
+                       my @remote_subnets = split(",", $cgiparams{'REMOTE_SUBNET'});
+                       foreach my $subnet (@remote_subnets) {
+                               unless (&Network::check_subnet($subnet)) {
+                                       $errormessage = $Lang::tr{'remote subnet is invalid'};
+                                       goto VPNCONF_ERROR;
+                               }
+                       }
+               }
 
-       if ($cgiparams{'TYPE'} eq 'net'){
-               $warnmessage=&General::checksubnets('',$cgiparams{'REMOTE_SUBNET'},'ipsec');
-               if ($warnmessage ne ''){
-                       $warnmessage=$Lang::tr{'remote subnet'}." ($cgiparams{'REMOTE_SUBNET'}) <br>".$warnmessage;
+               if ($cgiparams{'ENABLED'} !~ /^(on|off)$/) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'EDIT_ADVANCED'} !~ /^(on|off)$/) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto VPNCONF_ERROR;
                }
-       }
 
-       if ($cgiparams{'AUTH'} eq 'psk') {
-           if (! length($cgiparams{'PSK'}) ) {
-               $errormessage = $Lang::tr{'pre-shared key is too short'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'PSK'} =~ /'/) {
-                $cgiparams{'PSK'} =~ tr/'/ /;
-               $errormessage = $Lang::tr{'invalid characters found in pre-shared key'};
-               goto VPNCONF_ERROR;
-           }
+               # Allow nothing or a string (DN,FDQN,) beginning with @
+               # with no comma but slashes between RID eg @O=FR/C=Paris/OU=myhome/CN=franck
+               if ( ($cgiparams{'LOCAL_ID'} !~ /^(|[\w.-]*@[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
+                       ($cgiparams{'REMOTE_ID'} !~ /^(|[\w.-]*@[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
+                       (($cgiparams{'REMOTE_ID'} eq $cgiparams{'LOCAL_ID'}) && ($cgiparams{'LOCAL_ID'} ne ''))
+               ) {
+                       $errormessage = $Lang::tr{'invalid local-remote id'} . '<br />' .
+                       'DER_ASN1_DN: @c=FR/ou=Paris/ou=Home/cn=*<br />' .
+                       'FQDN: @ipfire.org<br />' .
+                       'USER_FQDN: info@ipfire.org<br />' .
+                       'IPV4_ADDR: 123.123.123.123';
+                       goto VPNCONF_ERROR;
+               }
+               # If Auth is DN, verify existance of Remote ID.
+               if ( $cgiparams{'REMOTE_ID'} eq '' && (
+                       $cgiparams{'AUTH'} eq 'auth-dn'|| # while creation
+                       $confighash{$cgiparams{'KEY'}}[2] eq '%auth-dn')){ # while editing
+                               $errormessage = $Lang::tr{'vpn missing remote id'};
+                               goto VPNCONF_ERROR;
+               }
+
+               if ($cgiparams{'TYPE'} eq 'net'){
+                       $warnmessage=&General::checksubnets('',$cgiparams{'REMOTE_SUBNET'},'ipsec');
+                       if ($warnmessage ne ''){
+                               $warnmessage=$Lang::tr{'remote subnet'}." ($cgiparams{'REMOTE_SUBNET'}) <br>".$warnmessage;
+                       }
+               }
+
+               if ($cgiparams{'AUTH'} eq 'psk') {
+                       if (! length($cgiparams{'PSK'}) ) {
+                               $errormessage = $Lang::tr{'pre-shared key is too short'};
+                               goto VPNCONF_ERROR;
+                       }
+                       if ($cgiparams{'PSK'} =~ /'/) {
+                               $cgiparams{'PSK'} =~ tr/'/ /;
+                               $errormessage = $Lang::tr{'invalid characters found in pre-shared key'};
+                               goto VPNCONF_ERROR;
+                       }
        } elsif ($cgiparams{'AUTH'} eq 'certreq') {
-           if ($cgiparams{'KEY'}) {
-               $errormessage = $Lang::tr{'cant change certificates'};
-               goto VPNCONF_ERROR;
-           }
-           if (ref ($cgiparams{'FH'}) ne 'Fh') {
-               $errormessage = $Lang::tr{'there was no file upload'};
-               goto VPNCONF_ERROR;
-           }
+               if ($cgiparams{'KEY'}) {
+                       $errormessage = $Lang::tr{'cant change certificates'};
+                       goto VPNCONF_ERROR;
+               }
+               if (ref ($cgiparams{'FH'}) ne 'Fh') {
+                       $errormessage = $Lang::tr{'there was no file upload'};
+                       goto VPNCONF_ERROR;
+               }
 
-           # Move uploaded certificate request to a temporary file
-           (my $fh, my $filename) = tempfile( );
-           if (copy ($cgiparams{'FH'}, $fh) != 1) {
-               $errormessage = $!;
-               goto VPNCONF_ERROR;
-           }
+               # Move uploaded certificate request to a temporary file
+               (my $fh, my $filename) = tempfile( );
+               if (copy ($cgiparams{'FH'}, $fh) != 1) {
+                       $errormessage = $!;
+                       goto VPNCONF_ERROR;
+               }
 
-           # Sign the certificate request
-           &General::log("ipsec", "Signing your cert $cgiparams{'NAME'}...");
-           my  $opt  = " ca -md sha256 -days 999999";
+               # Sign the certificate request
+               &General::log("ipsec", "Signing your cert $cgiparams{'NAME'}...");
+               my $opt = " ca -md sha256 -days 999999";
                $opt .= " -batch -notext";
                $opt .= " -in $filename";
                $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}cert.pem";
 
-           if ( $errormessage = &callssl ($opt) ) {
-               unlink ($filename);
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-               &cleanssldatabase();
-               goto VPNCONF_ERROR;
-           } else {
-               unlink ($filename);
-               &cleanssldatabase();
-           }
-
-           $cgiparams{'CERT_NAME'} = getCNfromcert ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-           if ($cgiparams{'CERT_NAME'} eq '') {
-               $errormessage = $Lang::tr{'could not retrieve common name from certificate'};
-               goto VPNCONF_ERROR;
-           }
+               if ( $errormessage = &callssl ($opt) ) {
+                       unlink ($filename);
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+                       &cleanssldatabase();
+                       goto VPNCONF_ERROR;
+               } else {
+                       unlink ($filename);
+                       &cleanssldatabase();
+               }
+
+               $cgiparams{'CERT_NAME'} = getCNfromcert ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+               if ($cgiparams{'CERT_NAME'} eq '') {
+                       $errormessage = $Lang::tr{'could not retrieve common name from certificate'};
+                       goto VPNCONF_ERROR;
+               }
        } elsif ($cgiparams{'AUTH'} eq 'pkcs12') {
                &General::log("ipsec", "Importing from p12...");
 
                if (ref ($cgiparams{'FH'}) ne 'Fh') {
-                   $errormessage = $Lang::tr{'there was no file upload'};
-                   goto ROOTCERT_ERROR;
+                       $errormessage = $Lang::tr{'there was no file upload'};
+                       goto ROOTCERT_ERROR;
                }
 
                # Move uploaded certificate request to a temporary file
                (my $fh, my $filename) = tempfile( );
                if (copy ($cgiparams{'FH'}, $fh) != 1) {
-                   $errormessage = $!;
-                   goto ROOTCERT_ERROR;
+                       $errormessage = $!;
+                       goto ROOTCERT_ERROR;
                }
 
                # Extract the CA certificate from the file
                &General::log("ipsec", "Extracting caroot from p12...");
                if (open(STDIN, "-|")) {
-                   my  $opt  = " pkcs12 -cacerts -nokeys";
+                       my $opt = " pkcs12 -cacerts -nokeys";
                        $opt .= " -in $filename";
                        $opt .= " -out /tmp/newcacert";
-                   $errormessage = &callssl ($opt);
-               } else {        #child
-                   print "$cgiparams{'P12_PASS'}\n";
-                   exit (0);
-               }
-
-               # Extract the Host certificate from the file
-               if (!$errormessage) {
-                   &General::log("ipsec", "Extracting host cert from p12...");
-                   if (open(STDIN, "-|")) {
-                       my  $opt  = " pkcs12 -clcerts -nokeys";
-                       $opt .= " -in $filename";
-                       $opt .= " -out /tmp/newhostcert";
                        $errormessage = &callssl ($opt);
-                   } else {    #child
+               } else { #child
                        print "$cgiparams{'P12_PASS'}\n";
                        exit (0);
-                   }
-               }
-
-               if (!$errormessage) {           
-                   &General::log("ipsec", "Moving cacert...");
-                   #If CA have new subject, add it to our list of CA
-                   my $casubject = &Header::cleanhtml(getsubjectfromcert ('/tmp/newcacert'));
-                   my @names;
-                   foreach my $x (keys %cahash) {
-                       $casubject='' if ($cahash{$x}[1] eq $casubject);
-                       unshift (@names,$cahash{$x}[0]);
-                   }
-                   if ($casubject) { # a new one!
-                       my $temp = `/usr/bin/openssl x509 -text -in /tmp/newcacert`;
-                       if ($temp !~ /CA:TRUE/i) {
-                           $errormessage = $Lang::tr{'not a valid ca certificate'};
-                       } else {
-                           #compute a name for it
-                           my $idx=0;
-                           while (grep(/Imported-$idx/, @names) ) {$idx++};
-                           $cgiparams{'CA_NAME'}="Imported-$idx";
-                           $cgiparams{'CERT_NAME'}=&Header::cleanhtml(getCNfromcert ('/tmp/newhostcert'));
-                           move("/tmp/newcacert", "${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem");
-                           $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
-                           if (!$errormessage) {
-                               my $key = &General::findhasharraykey (\%cahash);
-                               $cahash{$key}[0] = $cgiparams{'CA_NAME'};
-                               $cahash{$key}[1] = $casubject;
-                               &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
-                               system('/usr/local/bin/ipsecctrl', 'R');
-                           }
-                       }
-                   }   
+               }
+
+               # Extract the Host certificate from the file
+               if (!$errormessage) {
+                       &General::log("ipsec", "Extracting host cert from p12...");
+                       if (open(STDIN, "-|")) {
+                               my $opt = " pkcs12 -clcerts -nokeys";
+                               $opt .= " -in $filename";
+                               $opt .= " -out /tmp/newhostcert";
+                               $errormessage = &callssl ($opt);
+                       } else { #child
+                               print "$cgiparams{'P12_PASS'}\n";
+                               exit (0);
+                       }
+               }
+
+               if (!$errormessage) {
+                       &General::log("ipsec", "Moving cacert...");
+                       #If CA have new subject, add it to our list of CA
+                       my $casubject = &Header::cleanhtml(getsubjectfromcert ('/tmp/newcacert'));
+                       my @names;
+                       foreach my $x (keys %cahash) {
+                               $casubject='' if ($cahash{$x}[1] eq $casubject);
+                               unshift (@names,$cahash{$x}[0]);
+                       }
+                       if ($casubject) { # a new one!
+                               my $temp = `/usr/bin/openssl x509 -text -in /tmp/newcacert`;
+                               if ($temp !~ /CA:TRUE/i) {
+                                       $errormessage = $Lang::tr{'not a valid ca certificate'};
+                               } else {
+                                       #compute a name for it
+                                       my $idx=0;
+                                       while (grep(/Imported-$idx/, @names) ) {$idx++};
+                                       $cgiparams{'CA_NAME'}="Imported-$idx";
+                                       $cgiparams{'CERT_NAME'}=&Header::cleanhtml(getCNfromcert ('/tmp/newhostcert'));
+                                       move("/tmp/newcacert", "${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem");
+                                       $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
+                                       if (!$errormessage) {
+                                               my $key = &General::findhasharraykey (\%cahash);
+                                               $cahash{$key}[0] = $cgiparams{'CA_NAME'};
+                                               $cahash{$key}[1] = $casubject;
+                                               &General::writehasharray("${General::swroot}/vpn/caconfig", \%cahash);
+                                               system('/usr/local/bin/ipsecctrl', 'R');
+                                       }
+                               }
+                       }
                }
                if (!$errormessage) {
-                   &General::log("ipsec", "Moving host cert...");
-                   move("/tmp/newhostcert", "${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-                   $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
-               }
+                       &General::log("ipsec", "Moving host cert...");
+                       move("/tmp/newhostcert", "${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+                       $errormessage = "$Lang::tr{'certificate file move failed'}: $!" if ($? ne 0);
+               }
 
                #cleanup temp files
                unlink ($filename);
                unlink ('/tmp/newcacert');
                unlink ('/tmp/newhostcert');
                if ($errormessage) {
-                   unlink ("${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem");
-                   unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-                   goto VPNCONF_ERROR;
+                       unlink ("${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem");
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+                       goto VPNCONF_ERROR;
                }
                &General::log("ipsec", "p12 import completed!");
        } elsif ($cgiparams{'AUTH'} eq 'certfile') {
-           if ($cgiparams{'KEY'}) {
-               $errormessage = $Lang::tr{'cant change certificates'};
-               goto VPNCONF_ERROR;
-           }
-           if (ref ($cgiparams{'FH'}) ne 'Fh') {
-               $errormessage = $Lang::tr{'there was no file upload'};
-               goto VPNCONF_ERROR;
-           }
-           # Move uploaded certificate to a temporary file
-           (my $fh, my $filename) = tempfile( );
-           if (copy ($cgiparams{'FH'}, $fh) != 1) {
-               $errormessage = $!;
-               goto VPNCONF_ERROR;
-           }
-
-           # Verify the certificate has a valid CA and move it
-           &General::log("ipsec", "Validating imported cert against our known CA...");
-           my $validca = 1;  #assume ok
-           my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/cacert.pem $filename`;
-           if ($test !~ /: OK/) {
-               my $validca = 0;
-               foreach my $key (keys %cahash) {
-                   $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$key}[0]cert.pem $filename`;
-                   if ($test =~ /: OK/) {
-                       $validca = 1;
-                       last;
-                   }
-               }
-           }
-           if (! $validca) {
-               $errormessage = $Lang::tr{'certificate does not have a valid ca associated with it'};
-               unlink ($filename);
-               goto VPNCONF_ERROR;
-           } else {
-               move($filename, "${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-               if ($? ne 0) {
-                   $errormessage = "$Lang::tr{'certificate file move failed'}: $!";
-                   unlink ($filename);
-                   goto VPNCONF_ERROR;
+               if ($cgiparams{'KEY'}) {
+                       $errormessage = $Lang::tr{'cant change certificates'};
+                       goto VPNCONF_ERROR;
+               }
+               if (ref ($cgiparams{'FH'}) ne 'Fh') {
+                       $errormessage = $Lang::tr{'there was no file upload'};
+                       goto VPNCONF_ERROR;
+               }
+               # Move uploaded certificate to a temporary file
+               (my $fh, my $filename) = tempfile( );
+               if (copy ($cgiparams{'FH'}, $fh) != 1) {
+                       $errormessage = $!;
+                       goto VPNCONF_ERROR;
                }
-           }
 
-           $cgiparams{'CERT_NAME'} = getCNfromcert ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-           if ($cgiparams{'CERT_NAME'} eq '') {
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-               $errormessage = $Lang::tr{'could not retrieve common name from certificate'};
-               goto VPNCONF_ERROR;
-           }
+               # Verify the certificate has a valid CA and move it
+               &General::log("ipsec", "Validating imported cert against our known CA...");
+               my $validca = 1; #assume ok
+               my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/cacert.pem $filename`;
+               if ($test !~ /: OK/) {
+                       my $validca = 0;
+                       foreach my $key (keys %cahash) {
+                               $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$key}[0]cert.pem $filename`;
+                               if ($test =~ /: OK/) {
+                                       $validca = 1;
+                                       last;
+                               }
+                       }
+               }
+               if (! $validca) {
+                       $errormessage = $Lang::tr{'certificate does not have a valid ca associated with it'};
+                       unlink ($filename);
+                       goto VPNCONF_ERROR;
+               } else {
+                       move($filename, "${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+                       if ($? ne 0) {
+                               $errormessage = "$Lang::tr{'certificate file move failed'}: $!";
+                               unlink ($filename);
+                               goto VPNCONF_ERROR;
+                       }
+               }
+
+               $cgiparams{'CERT_NAME'} = getCNfromcert ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+               if ($cgiparams{'CERT_NAME'} eq '') {
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+                       $errormessage = $Lang::tr{'could not retrieve common name from certificate'};
+                       goto VPNCONF_ERROR;
+               }
        } elsif ($cgiparams{'AUTH'} eq 'certgen') {
-           if ($cgiparams{'KEY'}) {
-               $errormessage = $Lang::tr{'cant change certificates'};
-               goto VPNCONF_ERROR;
-           }
-           # Validate input since the form was submitted
-           if (length($cgiparams{'CERT_NAME'}) >60) {
-               $errormessage = $Lang::tr{'name too long'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_NAME'} !~ /^[a-zA-Z0-9 ,\.\-_]+$/) {
-               $errormessage = $Lang::tr{'invalid input for name'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_EMAIL'} ne '' && (! &General::validemail($cgiparams{'CERT_EMAIL'}))) {
-               $errormessage = $Lang::tr{'invalid input for e-mail address'};
-               goto VPNCONF_ERROR;
-           }
-           if (length($cgiparams{'CERT_EMAIL'}) > 40) {
-               $errormessage = $Lang::tr{'e-mail address too long'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_OU'} ne '' && $cgiparams{'CERT_OU'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
-               $errormessage = $Lang::tr{'invalid input for department'};
-               goto VPNCONF_ERROR;
-           }
-           if (length($cgiparams{'CERT_ORGANIZATION'}) >60) {
-               $errormessage = $Lang::tr{'organization too long'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_ORGANIZATION'} !~ /^[a-zA-Z0-9 ,\.\-_]+$/) {
-               $errormessage = $Lang::tr{'invalid input for organization'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_CITY'} ne '' && $cgiparams{'CERT_CITY'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
-               $errormessage = $Lang::tr{'invalid input for city'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_STATE'} ne '' && $cgiparams{'CERT_STATE'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
-               $errormessage = $Lang::tr{'invalid input for state or province'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_COUNTRY'} !~ /^[A-Z]*$/) {
-               $errormessage = $Lang::tr{'invalid input for country'};
-               goto VPNCONF_ERROR;
-           }
-           #the exact syntax is a list comma separated of 
-           #  email:any-validemail
-           #   URI: a uniform resource indicator
-           #   DNS: a DNS domain name
-           #   RID: a registered OBJECT IDENTIFIER
-           #   IP: an IP address
-           # example: email:franck@foo.com,IP:10.0.0.10,DNS:franck.foo.com
-
-           if ($cgiparams{'SUBJECTALTNAME'} ne '' && $cgiparams{'SUBJECTALTNAME'} !~ /^(email|URI|DNS|RID|IP):[a-zA-Z0-9 :\/,\.\-_@]*$/) {
-               $errormessage = $Lang::tr{'vpn altname syntax'};
-               goto VPNCONF_ERROR;
-           }
+               if ($cgiparams{'KEY'}) {
+                       $errormessage = $Lang::tr{'cant change certificates'};
+                       goto VPNCONF_ERROR;
+               }
+               # Validate input since the form was submitted
+               if (length($cgiparams{'CERT_NAME'}) >60) {
+                       $errormessage = $Lang::tr{'name too long'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_NAME'} !~ /^[a-zA-Z0-9 ,\.\-_]+$/) {
+                       $errormessage = $Lang::tr{'invalid input for name'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_EMAIL'} ne '' && (! &General::validemail($cgiparams{'CERT_EMAIL'}))) {
+                       $errormessage = $Lang::tr{'invalid input for e-mail address'};
+                       goto VPNCONF_ERROR;
+               }
+               if (length($cgiparams{'CERT_EMAIL'}) > 40) {
+                       $errormessage = $Lang::tr{'e-mail address too long'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_OU'} ne '' && $cgiparams{'CERT_OU'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for department'};
+                       goto VPNCONF_ERROR;
+               }
+               if (length($cgiparams{'CERT_ORGANIZATION'}) >60) {
+                       $errormessage = $Lang::tr{'organization too long'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_ORGANIZATION'} !~ /^[a-zA-Z0-9 ,\.\-_]+$/) {
+                       $errormessage = $Lang::tr{'invalid input for organization'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_CITY'} ne '' && $cgiparams{'CERT_CITY'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for city'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_STATE'} ne '' && $cgiparams{'CERT_STATE'} !~ /^[a-zA-Z0-9 ,\.\-_]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for state or province'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_COUNTRY'} !~ /^[A-Z]*$/) {
+                       $errormessage = $Lang::tr{'invalid input for country'};
+                       goto VPNCONF_ERROR;
+               }
+               #the exact syntax is a list comma separated of
+               #       email:any-validemail
+               #       URI: a uniform resource indicator
+               #       DNS: a DNS domain name
+               #       RID: a registered OBJECT IDENTIFIER
+               #       IP: an IP address
+               # example: email:franck@foo.com,IP:10.0.0.10,DNS:franck.foo.com
+
+               if ($cgiparams{'SUBJECTALTNAME'} ne '' && $cgiparams{'SUBJECTALTNAME'} !~ /^(email|URI|DNS|RID|IP):[a-zA-Z0-9 :\/,\.\-_@]*$/) {
+                       $errormessage = $Lang::tr{'vpn altname syntax'};
+                       goto VPNCONF_ERROR;
+               }
 
-           if (length($cgiparams{'CERT_PASS1'}) < 5) {
-               $errormessage = $Lang::tr{'password too short'};
-               goto VPNCONF_ERROR;
-           }
-           if ($cgiparams{'CERT_PASS1'} ne $cgiparams{'CERT_PASS2'}) {
-               $errormessage = $Lang::tr{'passwords do not match'};
-               goto VPNCONF_ERROR;
-           }
+               if (length($cgiparams{'CERT_PASS1'}) < 5) {
+                       $errormessage = $Lang::tr{'password too short'};
+                       goto VPNCONF_ERROR;
+               }
+               if ($cgiparams{'CERT_PASS1'} ne $cgiparams{'CERT_PASS2'}) {
+                       $errormessage = $Lang::tr{'passwords do not match'};
+                       goto VPNCONF_ERROR;
+               }
 
-           # Replace empty strings with a .
-           (my $ou = $cgiparams{'CERT_OU'}) =~ s/^\s*$/\./;
-           (my $city = $cgiparams{'CERT_CITY'}) =~ s/^\s*$/\./;
-           (my $state = $cgiparams{'CERT_STATE'}) =~ s/^\s*$/\./;
+               # Replace empty strings with a .
+               (my $ou = $cgiparams{'CERT_OU'}) =~ s/^\s*$/\./;
+               (my $city = $cgiparams{'CERT_CITY'}) =~ s/^\s*$/\./;
+               (my $state = $cgiparams{'CERT_STATE'}) =~ s/^\s*$/\./;
 
-           # Create the Client certificate request
-           &General::log("ipsec", "Creating a cert...");
+               # Create the Client certificate request
+               &General::log("ipsec", "Creating a cert...");
 
-           if (open(STDIN, "-|")) {
-               my $opt  = " req -nodes -rand /proc/interrupts:/proc/net/rt_cache";
-                  $opt .= " -newkey rsa:2048";
-                  $opt .= " -keyout ${General::swroot}/certs/$cgiparams{'NAME'}key.pem";
-                  $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}req.pem";
+               if (open(STDIN, "-|")) {
+                       my $opt = " req -nodes -rand /proc/interrupts:/proc/net/rt_cache";
+                       $opt .= " -newkey rsa:2048";
+                       $opt .= " -keyout ${General::swroot}/certs/$cgiparams{'NAME'}key.pem";
+                       $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}req.pem";
+
+                       if ( $errormessage = &callssl ($opt) ) {
+                               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
+                               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}req.pem");
+                               goto VPNCONF_ERROR;
+                       }
+               } else { #child
+                       print "$cgiparams{'CERT_COUNTRY'}\n";
+                       print "$state\n";
+                       print "$city\n";
+                       print "$cgiparams{'CERT_ORGANIZATION'}\n";
+                       print "$ou\n";
+                       print "$cgiparams{'CERT_NAME'}\n";
+                       print "$cgiparams{'CERT_EMAIL'}\n";
+                       print ".\n";
+                       print ".\n";
+                       exit (0);
+               }
 
-               if ( $errormessage = &callssl ($opt) ) {
-                   unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
-                   unlink ("${General::swroot}/certs/$cgiparams{'NAME'}req.pem");
-                   goto VPNCONF_ERROR;
-               }
-           } else {    #child
-               print  "$cgiparams{'CERT_COUNTRY'}\n";
-               print  "$state\n";
-               print  "$city\n";
-               print  "$cgiparams{'CERT_ORGANIZATION'}\n";
-               print  "$ou\n";
-               print  "$cgiparams{'CERT_NAME'}\n";
-               print  "$cgiparams{'CERT_EMAIL'}\n";
-               print  ".\n";
-               print  ".\n";
-               exit (0);
-           }
-           
-           # Sign the client certificate request
-           &General::log("ipsec", "Signing the cert $cgiparams{'NAME'}...");
-
-           #No easy way for specifying the contain of subjectAltName without writing a config file...
-           my ($fh, $v3extname) = tempfile ('/tmp/XXXXXXXX');
-           print $fh <<END
-           basicConstraints=CA:FALSE
-           nsComment="OpenSSL Generated Certificate"
-           subjectKeyIdentifier=hash
-           extendedKeyUsage=clientAuth
-           authorityKeyIdentifier=keyid,issuer:always
+               # Sign the client certificate request
+               &General::log("ipsec", "Signing the cert $cgiparams{'NAME'}...");
+
+               #No easy way for specifying the contain of subjectAltName without writing a config file...
+               my ($fh, $v3extname) = tempfile ('/tmp/XXXXXXXX');
+               print $fh <<END
+               basicConstraints=CA:FALSE
+               nsComment="OpenSSL Generated Certificate"
+               subjectKeyIdentifier=hash
+               extendedKeyUsage=clientAuth
+               authorityKeyIdentifier=keyid,issuer:always
 END
 ;
-           print $fh "subjectAltName=$cgiparams{'SUBJECTALTNAME'}" if ($cgiparams{'SUBJECTALTNAME'});
-           close ($fh);
-
-           my $opt  = " ca -md sha256 -days 999999 -batch -notext";
-              $opt .= " -in ${General::swroot}/certs/$cgiparams{'NAME'}req.pem";
-              $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}cert.pem";
-              $opt .= " -extfile $v3extname";
-
-           if ( $errormessage = &callssl ($opt) ) {
-               unlink ($v3extname);
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}req.pem");
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-               &cleanssldatabase();
-               goto VPNCONF_ERROR;
-           } else {
-               unlink ($v3extname);
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}req.pem");
-               &cleanssldatabase();
-           }
-
-           # Create the pkcs12 file
-           &General::log("ipsec", "Packing a pkcs12 file...");
-              $opt  = " pkcs12 -export"; 
-              $opt .= " -inkey ${General::swroot}/certs/$cgiparams{'NAME'}key.pem";
-              $opt .= " -in ${General::swroot}/certs/$cgiparams{'NAME'}cert.pem";
-              $opt .= " -name \"$cgiparams{'NAME'}\"";
-              $opt .= " -passout pass:$cgiparams{'CERT_PASS1'}";
-              $opt .= " -certfile ${General::swroot}/ca/cacert.pem";
-              $opt .= " -caname \"$vpnsettings{'ROOTCERT_ORGANIZATION'} CA\"";
-              $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}.p12";
-
-           if ( $errormessage = &callssl ($opt) ) {
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}.p12");
-               goto VPNCONF_ERROR;
-           } else {
-               unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
-           }
+               print $fh "subjectAltName=$cgiparams{'SUBJECTALTNAME'}" if ($cgiparams{'SUBJECTALTNAME'});
+               close ($fh);
+
+               my $opt = " ca -md sha256 -days 999999 -batch -notext";
+               $opt .= " -in ${General::swroot}/certs/$cgiparams{'NAME'}req.pem";
+               $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}cert.pem";
+               $opt .= " -extfile $v3extname";
+
+               if ( $errormessage = &callssl ($opt) ) {
+                       unlink ($v3extname);
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}req.pem");
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+                       &cleanssldatabase();
+                       goto VPNCONF_ERROR;
+               } else {
+                       unlink ($v3extname);
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}req.pem");
+                       &cleanssldatabase();
+               }
+
+               # Create the pkcs12 file
+               &General::log("ipsec", "Packing a pkcs12 file...");
+               $opt = " pkcs12 -export";
+               $opt .= " -inkey ${General::swroot}/certs/$cgiparams{'NAME'}key.pem";
+               $opt .= " -in ${General::swroot}/certs/$cgiparams{'NAME'}cert.pem";
+               $opt .= " -name \"$cgiparams{'NAME'}\"";
+               $opt .= " -passout pass:$cgiparams{'CERT_PASS1'}";
+               $opt .= " -certfile ${General::swroot}/ca/cacert.pem";
+               $opt .= " -caname \"$vpnsettings{'ROOTCERT_ORGANIZATION'} CA\"";
+               $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}.p12";
+
+               if ( $errormessage = &callssl ($opt) ) {
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}cert.pem");
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}.p12");
+                       goto VPNCONF_ERROR;
+               } else {
+                       unlink ("${General::swroot}/certs/$cgiparams{'NAME'}key.pem");
+               }
        } elsif ($cgiparams{'AUTH'} eq 'cert') {
-           ;# Nothing, just editing
+               ;# Nothing, just editing
        } elsif ($cgiparams{'AUTH'} eq 'auth-dn') {
-           $cgiparams{'CERT_NAME'} = '%auth-dn';       # a special value saying 'no cert file'     
+               $cgiparams{'CERT_NAME'} = '%auth-dn'; # a special value saying 'no cert file'
        } else {
-           $errormessage = $Lang::tr{'invalid input for authentication method'};
-           goto VPNCONF_ERROR;
+               $errormessage = $Lang::tr{'invalid input for authentication method'};
+               goto VPNCONF_ERROR;
        }
 
        # 1)Error message here is not accurate.
@@ -1737,37 +1766,39 @@ END
        # 3)Present since initial version (1.3.2.11), it isn't a bug correction
        # Check if there is no other entry with this certificate name
        #if ((! $cgiparams{'KEY'}) && ($cgiparams{'AUTH'} ne 'psk') && ($cgiparams{'AUTH'} ne 'auth-dn')) {
-       #    foreach my $key (keys %confighash) {
+       #       foreach my $key (keys %confighash) {
        #       if ($confighash{$key}[2] eq $cgiparams{'CERT_NAME'}) {
-       #           $errormessage = $Lang::tr{'a connection with this common name already exists'};
-       #           goto VPNCONF_ERROR;
+       #               $errormessage = $Lang::tr{'a connection with this common name already exists'};
+       #               goto VPNCONF_ERROR;
+       #       }
        #       }
-       #    }
        #}
-        # Save the config
+               # Save the config
 
        my $key = $cgiparams{'KEY'};
        if (! $key) {
-           $key = &General::findhasharraykey (\%confighash);
-           foreach my $i (0 .. 31) { $confighash{$key}[$i] = "";}
+               $key = &General::findhasharraykey (\%confighash);
+               foreach my $i (0 .. 32) { $confighash{$key}[$i] = "";}
        }
        $confighash{$key}[0] = $cgiparams{'ENABLED'};
        $confighash{$key}[1] = $cgiparams{'NAME'};
        if ((! $cgiparams{'KEY'}) && $cgiparams{'AUTH'} ne 'psk') {
-           $confighash{$key}[2] = $cgiparams{'CERT_NAME'};
+               $confighash{$key}[2] = $cgiparams{'CERT_NAME'};
        }
        $confighash{$key}[3] = $cgiparams{'TYPE'};
        if ($cgiparams{'AUTH'} eq 'psk') {
-           $confighash{$key}[4] = 'psk';
-           $confighash{$key}[5] = $cgiparams{'PSK'};
+               $confighash{$key}[4] = 'psk';
+               $confighash{$key}[5] = $cgiparams{'PSK'};
        } else {
-           $confighash{$key}[4] = 'cert';
+               $confighash{$key}[4] = 'cert';
        }
        if ($cgiparams{'TYPE'} eq 'net') {
-           $confighash{$key}[11] = $cgiparams{'REMOTE_SUBNET'};
+               my @remote_subnets = split(",", $cgiparams{'REMOTE_SUBNET'});
+               $confighash{$key}[11] = join('|', @remote_subnets);
        }
        $confighash{$key}[7] = $cgiparams{'LOCAL_ID'};
-       $confighash{$key}[8] = $cgiparams{'LOCAL_SUBNET'};
+       my @local_subnets = split(",", $cgiparams{'LOCAL_SUBNET'});
+       $confighash{$key}[8] = join('|', @local_subnets);
        $confighash{$key}[9] = $cgiparams{'REMOTE_ID'};
        $confighash{$key}[10] = $cgiparams{'REMOTE'};
        $confighash{$key}[25] = $cgiparams{'REMARK'};
@@ -1775,7 +1806,7 @@ END
        $confighash{$key}[27] = $cgiparams{'DPD_ACTION'};
        $confighash{$key}[29] = $cgiparams{'IKE_VERSION'};
 
-       #dont forget advanced value
+       # don't forget advanced value
        $confighash{$key}[18] = $cgiparams{'IKE_ENCRYPTION'};
        $confighash{$key}[19] = $cgiparams{'IKE_INTEGRITY'};
        $confighash{$key}[20] = $cgiparams{'IKE_GROUPTYPE'};
@@ -1788,43 +1819,43 @@ END
        $confighash{$key}[13] = $cgiparams{'COMPRESSION'};
        $confighash{$key}[24] = $cgiparams{'ONLY_PROPOSED'};
        $confighash{$key}[28] = $cgiparams{'PFS'};
-       $confighash{$key}[14] = $cgiparams{'VHOST'};
        $confighash{$key}[30] = $cgiparams{'DPD_TIMEOUT'};
        $confighash{$key}[31] = $cgiparams{'DPD_DELAY'};
+       $confighash{$key}[32] = $cgiparams{'FORCE_MOBIKE'};
 
-       #free unused fields!
+       # free unused fields!
        $confighash{$key}[6] = 'off';
        $confighash{$key}[15] = 'off';
 
        &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
        &writeipsecfiles();
        if (&vpnenabled) {
-           system('/usr/local/bin/ipsecctrl', 'S', $key);
-           sleep $sleepDelay;
+               system('/usr/local/bin/ipsecctrl', 'S', $key);
+               sleep $sleepDelay;
        }
        if ($cgiparams{'EDIT_ADVANCED'} eq 'on') {
-           $cgiparams{'KEY'} = $key;
-           $cgiparams{'ACTION'} = $Lang::tr{'advanced'};
+               $cgiparams{'KEY'} = $key;
+               $cgiparams{'ACTION'} = $Lang::tr{'advanced'};
        }
        goto VPNCONF_END;
-    } else { # add new connection
-        $cgiparams{'ENABLED'} = 'on';
+} else { # add new connection
+       $cgiparams{'ENABLED'} = 'on';
        if ( ! -f "${General::swroot}/private/cakey.pem" ) {
-           $cgiparams{'AUTH'} = 'psk';
+               $cgiparams{'AUTH'} = 'psk';
        } elsif ( ! -f "${General::swroot}/ca/cacert.pem") {
-           $cgiparams{'AUTH'} = 'certfile';
+               $cgiparams{'AUTH'} = 'certfile';
        } else {
-            $cgiparams{'AUTH'} = 'certgen';
+               $cgiparams{'AUTH'} = 'certgen';
        }
-       $cgiparams{'LOCAL_SUBNET'}      ="$netsettings{'GREEN_NETADDRESS'}/$netsettings{'GREEN_NETMASK'}";
-       $cgiparams{'CERT_EMAIL'}        = $vpnsettings{'ROOTCERT_EMAIL'};
-       $cgiparams{'CERT_OU'}           = $vpnsettings{'ROOTCERT_OU'};
-       $cgiparams{'CERT_ORGANIZATION'} = $vpnsettings{'ROOTCERT_ORGANIZATION'};
-       $cgiparams{'CERT_CITY'}         = $vpnsettings{'ROOTCERT_CITY'};
-       $cgiparams{'CERT_STATE'}        = $vpnsettings{'ROOTCERT_STATE'};
-       $cgiparams{'CERT_COUNTRY'}      = $vpnsettings{'ROOTCERT_COUNTRY'};
+       $cgiparams{'LOCAL_SUBNET'}              = "$netsettings{'GREEN_NETADDRESS'}/$netsettings{'GREEN_NETMASK'}";
+       $cgiparams{'CERT_EMAIL'}                = $vpnsettings{'ROOTCERT_EMAIL'};
+       $cgiparams{'CERT_OU'}                   = $vpnsettings{'ROOTCERT_OU'};
+       $cgiparams{'CERT_ORGANIZATION'} = $vpnsettings{'ROOTCERT_ORGANIZATION'};
+       $cgiparams{'CERT_CITY'}                 = $vpnsettings{'ROOTCERT_CITY'};
+       $cgiparams{'CERT_STATE'}                = $vpnsettings{'ROOTCERT_STATE'};
+       $cgiparams{'CERT_COUNTRY'}              = $vpnsettings{'ROOTCERT_COUNTRY'};
 
-       # choose appropriate dpd action 
+       # choose appropriate dpd action
        if ($cgiparams{'TYPE'} eq 'host') {
                $cgiparams{'DPD_ACTION'} = 'clear';
        } else {
@@ -1839,66 +1870,69 @@ END
                $cgiparams{'DPD_TIMEOUT'} = 120;
        }
 
+       if (!$cgiparams{'FORCE_MOBIKE'}) {
+               $cgiparams{'FORCE_MOBIKE'} = 'no';
+       }
+
        # Default IKE Version to v2
        if (!$cgiparams{'IKE_VERSION'}) {
-           $cgiparams{'IKE_VERSION'} = 'ikev2';
+               $cgiparams{'IKE_VERSION'} = 'ikev2';
        }
 
        # ID are empty
-       $cgiparams{'LOCAL_ID'}  = '';
+       $cgiparams{'LOCAL_ID'} = '';
        $cgiparams{'REMOTE_ID'} = '';
 
        #use default advanced value
-       $cgiparams{'IKE_ENCRYPTION'} = 'aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128';   #[18];
-       $cgiparams{'IKE_INTEGRITY'}  = 'sha2_512|sha2_256|sha'; #[19];
-       $cgiparams{'IKE_GROUPTYPE'}  = '4096|3072|2048|1536|1024';              #[20];
-       $cgiparams{'IKE_LIFETIME'}   = '3';             #[16];
-       $cgiparams{'ESP_ENCRYPTION'} = 'aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128';   #[21];
-       $cgiparams{'ESP_INTEGRITY'}  = 'sha2_512|sha2_256|sha1';        #[22];
-       $cgiparams{'ESP_GROUPTYPE'}  = '';              #[23];
-       $cgiparams{'ESP_KEYLIFE'}    = '1';             #[17];
-       $cgiparams{'COMPRESSION'}    = 'on';            #[13];
-       $cgiparams{'ONLY_PROPOSED'}  = 'off';           #[24];
-       $cgiparams{'PFS'}            = 'on';            #[28];
-       $cgiparams{'VHOST'}          = 'on';            #[14];
-    }
-
-    VPNCONF_ERROR:
-    $checked{'ENABLED'}{'off'} = '';
-    $checked{'ENABLED'}{'on'} = '';
-    $checked{'ENABLED'}{$cgiparams{'ENABLED'}} = "checked='checked'";
-
-    $checked{'EDIT_ADVANCED'}{'off'} = '';
-    $checked{'EDIT_ADVANCED'}{'on'} = '';
-    $checked{'EDIT_ADVANCED'}{$cgiparams{'EDIT_ADVANCED'}} = "checked='checked'";
-
-    $checked{'AUTH'}{'psk'} = '';
-    $checked{'AUTH'}{'certreq'} = '';
-    $checked{'AUTH'}{'certgen'} = '';
-    $checked{'AUTH'}{'certfile'} = '';
-    $checked{'AUTH'}{'pkcs12'} = '';
-    $checked{'AUTH'}{'auth-dn'} = '';
-    $checked{'AUTH'}{$cgiparams{'AUTH'}} = "checked='checked'";
-
-    &Header::showhttpheaders();
-    &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-    &Header::openbigbox('100%', 'left', '', $errormessage);
-    if ($errormessage) {
-       &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
-       print "<class name='base'>$errormessage";
-       print "&nbsp;</class>";
-       &Header::closebox();
-    }
+       $cgiparams{'IKE_ENCRYPTION'}    = 'aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128'; #[18];
+       $cgiparams{'IKE_INTEGRITY'}             = 'sha2_512|sha2_256|sha'; #[19];
+       $cgiparams{'IKE_GROUPTYPE'}             = '4096|3072|2048|1536|1024'; #[20];
+       $cgiparams{'IKE_LIFETIME'}              = '3'; #[16];
+       $cgiparams{'ESP_ENCRYPTION'}    = 'aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128'; #[21];
+       $cgiparams{'ESP_INTEGRITY'}             = 'sha2_512|sha2_256|sha1'; #[22];
+       $cgiparams{'ESP_GROUPTYPE'}             = '4096|3072|2048|1536|1024'; #[23];
+       $cgiparams{'ESP_KEYLIFE'}               = '1'; #[17];
+       $cgiparams{'COMPRESSION'}               = 'on'; #[13];
+       $cgiparams{'ONLY_PROPOSED'}             = 'off'; #[24];
+       $cgiparams{'PFS'}                               = 'on'; #[28];
+}
 
-    if ($warnmessage) {
-       &Header::openbox('100%', 'left', "$Lang::tr{'warning messages'}:");
-       print "<class name='base'>$warnmessage";
-       print "&nbsp;</class>";
-       &Header::closebox();
-    }
+VPNCONF_ERROR:
+       $checked{'ENABLED'}{'off'} = '';
+       $checked{'ENABLED'}{'on'} = '';
+       $checked{'ENABLED'}{$cgiparams{'ENABLED'}} = "checked='checked'";
+
+       $checked{'EDIT_ADVANCED'}{'off'} = '';
+       $checked{'EDIT_ADVANCED'}{'on'} = '';
+       $checked{'EDIT_ADVANCED'}{$cgiparams{'EDIT_ADVANCED'}} = "checked='checked'";
+
+       $checked{'AUTH'}{'psk'} = '';
+       $checked{'AUTH'}{'certreq'} = '';
+       $checked{'AUTH'}{'certgen'} = '';
+       $checked{'AUTH'}{'certfile'} = '';
+       $checked{'AUTH'}{'pkcs12'} = '';
+       $checked{'AUTH'}{'auth-dn'} = '';
+       $checked{'AUTH'}{$cgiparams{'AUTH'}} = "checked='checked'";
+
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+       &Header::openbigbox('100%', 'left', '', $errormessage);
+       if ($errormessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
+               print "<class name='base'>$errormessage";
+               print "&nbsp;</class>";
+               &Header::closebox();
+       }
+
+       if ($warnmessage) {
+               &Header::openbox('100%', 'left', "$Lang::tr{'warning messages'}:");
+               print "<class name='base'>$warnmessage";
+               print "&nbsp;</class>";
+               &Header::closebox();
+       }
 
-    print "<form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>";
-    print<<END
+       print "<form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>";
+       print<<END
        <input type='hidden' name='TYPE' value='$cgiparams{'TYPE'}' />
        <input type='hidden' name='IKE_VERSION' value='$cgiparams{'IKE_VERSION'}' />
        <input type='hidden' name='IKE_ENCRYPTION' value='$cgiparams{'IKE_ENCRYPTION'}' />
@@ -1912,176 +1946,183 @@ END
        <input type='hidden' name='COMPRESSION' value='$cgiparams{'COMPRESSION'}' />
        <input type='hidden' name='ONLY_PROPOSED' value='$cgiparams{'ONLY_PROPOSED'}' />
        <input type='hidden' name='PFS' value='$cgiparams{'PFS'}' />
-       <input type='hidden' name='VHOST' value='$cgiparams{'VHOST'}' />
        <input type='hidden' name='DPD_ACTION' value='$cgiparams{'DPD_ACTION'}' />
        <input type='hidden' name='DPD_DELAY' value='$cgiparams{'DPD_DELAY'}' />
        <input type='hidden' name='DPD_TIMEOUT' value='$cgiparams{'DPD_TIMEOUT'}' />
+       <input type='hidden' name='FORCE_MOBIKE' value='$cgiparams{'FORCE_MOBIKE'}' />
 END
-    ;
-    if ($cgiparams{'KEY'}) {
-       print "<input type='hidden' name='KEY' value='$cgiparams{'KEY'}' />";
-       print "<input type='hidden' name='NAME' value='$cgiparams{'NAME'}' />";
-       print "<input type='hidden' name='AUTH' value='$cgiparams{'AUTH'}' />";
-    }
-
-    &Header::openbox('100%', 'left', "$Lang::tr{'connection'}: $cgiparams{'NAME'}");
-    print "<table width='100%'>";
-    if (!$cgiparams{'KEY'}) {
-       print <<EOF;
-               <tr>
-                       <td width='20%'>$Lang::tr{'name'}:</td>
-                       <td width='30%'>
-                               <input type='text' name='NAME' value='$cgiparams{'NAME'}' size='25' />
-                       </td>
-                       <td colspan="2"></td>
-               </tr>
+;
+       if ($cgiparams{'KEY'}) {
+               print "<input type='hidden' name='KEY' value='$cgiparams{'KEY'}' />";
+               print "<input type='hidden' name='NAME' value='$cgiparams{'NAME'}' />";
+               print "<input type='hidden' name='AUTH' value='$cgiparams{'AUTH'}' />";
+       }
+
+       &Header::openbox('100%', 'left', "$Lang::tr{'connection'}: $cgiparams{'NAME'}");
+       print "<table width='100%'>";
+       if (!$cgiparams{'KEY'}) {
+               print <<EOF;
+                       <tr>
+                               <td width='20%'>$Lang::tr{'name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                               <td width='30%'>
+                                       <input type='text' name='NAME' value='$cgiparams{'NAME'}' size='25' />
+                               </td>
+                               <td colspan="2"></td>
+                       </tr>
 EOF
-    }
+       }
+
+       my $disabled;
+       my $blob;
+       if ($cgiparams{'TYPE'} eq 'host') {
+               $disabled = "disabled='disabled'";
+       } elsif ($cgiparams{'TYPE'} eq 'net') {
+               $blob = "<img src='/blob.gif' alt='*' />";
+       };
+
+       my @local_subnets = split(/\|/, $cgiparams{'LOCAL_SUBNET'});
+       my $local_subnets = join(",", @local_subnets);
 
-    my $disabled;
-    my $blob;
-    if ($cgiparams{'TYPE'} eq 'host') {
-       $disabled = "disabled='disabled'";
-       $blob = "<img src='/blob.gif' alt='*' />";
-    };
+       my @remote_subnets = split(/\|/, $cgiparams{'REMOTE_SUBNET'});
+       my $remote_subnets = join(",", @remote_subnets);
 
-    print <<END
+       print <<END
        <tr>
                <td width='20%'>$Lang::tr{'enabled'}</td>
                <td width='30%'>
                        <input type='checkbox' name='ENABLED' $checked{'ENABLED'}{'on'} />
                </td>
-           <td class='boldbase' nowrap='nowrap' width='20%'>$Lang::tr{'local subnet'}</td>
-           <td width='30%'>
-               <input type='text' name='LOCAL_SUBNET' value='$cgiparams{'LOCAL_SUBNET'}' size="25" />
-           </td>
+               <td class='boldbase' nowrap='nowrap' width='20%'>$Lang::tr{'local subnet'}&nbsp;<img src='/blob.gif' alt='*' /></td>
+               <td width='30%'>
+                       <input type='text' name='LOCAL_SUBNET' value='$local_subnets' />
+               </td>
        </tr>
        <tr>
-           <td class='boldbase' width='20%'>$Lang::tr{'remote host/ip'}:&nbsp;$blob</td>
-           <td width='30%'>
-               <input type='text' name='REMOTE' value='$cgiparams{'REMOTE'}' size="25" />
-           </td>
-           <td class='boldbase' nowrap='nowrap' width='20%'>$Lang::tr{'remote subnet'}</td>
-           <td width='30%'>
-               <input $disabled type='text' name='REMOTE_SUBNET' value='$cgiparams{'REMOTE_SUBNET'}' size="25" />
-           </td>
+               <td class='boldbase' width='20%'>$Lang::tr{'remote host/ip'}:&nbsp;$blob</td>
+               <td width='30%'>
+                       <input type='text' name='REMOTE' value='$cgiparams{'REMOTE'}' size="25" />
+               </td>
+               <td class='boldbase' nowrap='nowrap' width='20%'>$Lang::tr{'remote subnet'}&nbsp;$blob</td>
+               <td width='30%'>
+                       <input $disabled type='text' name='REMOTE_SUBNET' value='$remote_subnets' />
+               </td>
        </tr>
        <tr>
-           <td class='boldbase' width='20%'>$Lang::tr{'vpn local id'}:</td>
-           <td width='30%'>
-               <input type='text' name='LOCAL_ID' value='$cgiparams{'LOCAL_ID'}' size="25" />
-           </td>
-           <td class='boldbase' width='20%'>$Lang::tr{'vpn remote id'}:</td>
-           <td width='30%'>
-               <input type='text' name='REMOTE_ID' value='$cgiparams{'REMOTE_ID'}' size="25" />
-           </td>
+               <td class='boldbase' width='20%'>$Lang::tr{'vpn local id'}:</td>
+               <td width='30%'>
+                       <input type='text' name='LOCAL_ID' value='$cgiparams{'LOCAL_ID'}' size="25" />
+               </td>
+               <td class='boldbase' width='20%'>$Lang::tr{'vpn remote id'}:</td>
+               <td width='30%'>
+                       <input type='text' name='REMOTE_ID' value='$cgiparams{'REMOTE_ID'}' size="25" />
+               </td>
        </tr>
        <tr><td colspan="4"><br /></td></tr>
        <tr>
-           <td class='boldbase' width='20%'>$Lang::tr{'remark title'}&nbsp;<img src='/blob.gif' alt='*' /></td>
-           <td colspan='3'>
-               <input type='text' name='REMARK' value='$cgiparams{'REMARK'}' maxlength='50' size="73" />
-           </td>
-       </tr>
-END
-    ;
-    if (!$cgiparams{'KEY'}) {
-        print "<tr><td colspan='3'><input type='checkbox' name='EDIT_ADVANCED' $checked{'EDIT_ADVANCED'}{'on'} /> $Lang::tr{'edit advanced settings when done'}</td></tr>";
-    }
-    print "</table>";
-    &Header::closebox();
-       
-    if ($cgiparams{'KEY'} && $cgiparams{'AUTH'} eq 'psk') {
-       &Header::openbox('100%', 'left', $Lang::tr{'authentication'});
-       print <<END
-       <table width='100%' cellpadding='0' cellspacing='5' border='0'>
-       <tr><td class='base' width='50%'>$Lang::tr{'use a pre-shared key'}</td>
-           <td class='base' width='50%'><input type='password' name='PSK' size='30' value='$cgiparams{'PSK'}' /></td>
+               <td class='boldbase' width='20%'>$Lang::tr{'remark title'}</td>
+               <td colspan='3'>
+                       <input type='text' name='REMARK' value='$cgiparams{'REMARK'}' maxlength='50' size="73" />
+               </td>
        </tr>
-       </table>
 END
-       ;
+;
+       if (!$cgiparams{'KEY'}) {
+               print "<tr><td colspan='3'><input type='checkbox' name='EDIT_ADVANCED' $checked{'EDIT_ADVANCED'}{'on'} /> $Lang::tr{'edit advanced settings when done'}</td></tr>";
+       }
+       print "</table>";
        &Header::closebox();
-    } elsif (! $cgiparams{'KEY'}) {
-       my $cakeydisabled = ( ! -f "${General::swroot}/private/cakey.pem" ) ? "disabled='disabled'" : '';
-        $cgiparams{'CERT_NAME'} = $Lang::tr{'vpn no full pki'} if ($cakeydisabled);
-       my $cacrtdisabled = ( ! -f "${General::swroot}/ca/cacert.pem" ) ? "disabled='disabled'" : '';
 
-       &Header::openbox('100%', 'left', $Lang::tr{'authentication'});
-       print <<END
-       <table width='100%' cellpadding='0' cellspacing='5' border='0'>
-       <tr><td width='5%'><input type='radio' name='AUTH' value='psk' $checked{'AUTH'}{'psk'} /></td>
-           <td class='base' width='55%'>$Lang::tr{'use a pre-shared key'}</td>
-           <td class='base' width='40%'><input type='password' name='PSK' size='30' value='$cgiparams{'PSK'}' /></td></tr>
-       <tr><td colspan='3' bgcolor='#000000'></td></tr>
-       <tr><td><input type='radio' name='AUTH' value='certreq' $checked{'AUTH'}{'certreq'} $cakeydisabled /></td>
-           <td class='base'><hr />$Lang::tr{'upload a certificate request'}</td>
-           <td class='base' rowspan='3' valign='middle'><input type='file' name='FH' size='30' $cacrtdisabled /></td></tr>
-       <tr><td><input type='radio' name='AUTH' value='certfile' $checked{'AUTH'}{'certfile'} $cacrtdisabled /></td>
-           <td class='base'>$Lang::tr{'upload a certificate'}</td></tr>
-       <tr><td><input type='radio' name='AUTH' value='pkcs12' $cacrtdisabled /></td>
-           <td class='base'>$Lang::tr{'upload p12 file'} $Lang::tr{'pkcs12 file password'}:<input type='password' name='P12_PASS'/></td></tr>
-       <tr><td><input type='radio' name='AUTH' value='auth-dn' $checked{'AUTH'}{'auth-dn'} $cacrtdisabled /></td>
-           <td class='base'><hr />$Lang::tr{'vpn auth-dn'}</td></tr>
-       <tr><td colspan='3' bgcolor='#000000'></td></tr>
-       <tr><td><input type='radio' name='AUTH' value='certgen' $checked{'AUTH'}{'certgen'} $cakeydisabled /></td>
-           <td class='base'><hr />$Lang::tr{'generate a certificate'}</td><td>&nbsp;</td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'users fullname or system hostname'}:</td>
-           <td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'users email'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-           <td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'users department'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-           <td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'organization name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-           <td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'city'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-           <td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'state or province'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
-           <td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'country'}:</td>
-           <td class='base'><select name='CERT_COUNTRY' $cakeydisabled>
+       if ($cgiparams{'KEY'} && $cgiparams{'AUTH'} eq 'psk') {
+               &Header::openbox('100%', 'left', $Lang::tr{'authentication'});
+               print <<END
+               <table width='100%' cellpadding='0' cellspacing='5' border='0'>
+               <tr><td class='base' width='50%'>$Lang::tr{'use a pre-shared key'}</td>
+                       <td class='base' width='50%'><input type='password' name='PSK' size='30' value='$cgiparams{'PSK'}' /></td>
+               </tr>
+               </table>
 END
-       ;
-       foreach my $country (sort keys %{Countries::countries}) {
-           print "\t\t\t<option value='$Countries::countries{$country}'";
-           if ( $Countries::countries{$country} eq $cgiparams{'CERT_COUNTRY'} ) {
-               print " selected='selected'";
-           }
-           print ">$country</option>\n";
+;
+               &Header::closebox();
+       } elsif (! $cgiparams{'KEY'}) {
+               my $cakeydisabled = ( ! -f "${General::swroot}/private/cakey.pem" ) ? "disabled='disabled'" : '';
+               $cgiparams{'CERT_NAME'} = $Lang::tr{'vpn no full pki'} if ($cakeydisabled);
+               my $cacrtdisabled = ( ! -f "${General::swroot}/ca/cacert.pem" ) ? "disabled='disabled'" : '';
+
+               &Header::openbox('100%', 'left', $Lang::tr{'authentication'});
+               print <<END
+               <table width='100%' cellpadding='0' cellspacing='5' border='0'>
+               <tr><td width='5%'><input type='radio' name='AUTH' value='psk' $checked{'AUTH'}{'psk'} /></td>
+                       <td class='base' width='55%'>$Lang::tr{'use a pre-shared key'}</td>
+                       <td class='base' width='40%'><input type='password' name='PSK' size='30' value='$cgiparams{'PSK'}' /></td></tr>
+               <tr><td colspan='3' bgcolor='#000000'></td></tr>
+               <tr><td><input type='radio' name='AUTH' value='certreq' $checked{'AUTH'}{'certreq'} $cakeydisabled /></td>
+                       <td class='base'><hr />$Lang::tr{'upload a certificate request'}</td>
+                       <td class='base' rowspan='3' valign='middle'><input type='file' name='FH' size='30' $cacrtdisabled /></td></tr>
+               <tr><td><input type='radio' name='AUTH' value='certfile' $checked{'AUTH'}{'certfile'} $cacrtdisabled /></td>
+                       <td class='base'>$Lang::tr{'upload a certificate'}</td></tr>
+               <tr><td><input type='radio' name='AUTH' value='pkcs12' $cacrtdisabled /></td>
+                       <td class='base'>$Lang::tr{'upload p12 file'} $Lang::tr{'pkcs12 file password'}:<input type='password' name='P12_PASS'/></td></tr>
+               <tr><td><input type='radio' name='AUTH' value='auth-dn' $checked{'AUTH'}{'auth-dn'} $cacrtdisabled /></td>
+                       <td class='base'><hr />$Lang::tr{'vpn auth-dn'}</td></tr>
+               <tr><td colspan='3' bgcolor='#000000'></td></tr>
+               <tr><td><input type='radio' name='AUTH' value='certgen' $checked{'AUTH'}{'certgen'} $cakeydisabled /></td>
+                       <td class='base'><hr />$Lang::tr{'generate a certificate'}</td><td>&nbsp;</td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'users fullname or system hostname'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                       <td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'users email'}:</td>
+                       <td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'users department'}:</td>
+                       <td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'organization name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                       <td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'city'}:</td>
+                       <td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'state or province'}:</td>
+                       <td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'country'}:</td>
+                       <td class='base'><select name='CERT_COUNTRY' $cakeydisabled>
+END
+;
+               foreach my $country (sort keys %{Countries::countries}) {
+                       print "\t\t\t<option value='$Countries::countries{$country}'";
+                       if ( $Countries::countries{$country} eq $cgiparams{'CERT_COUNTRY'} ) {
+                               print " selected='selected'";
+                       }
+                       print ">$country</option>\n";
+               }
+               print <<END
+                       </select></td></tr>
+
+               <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'vpn subjectaltname'} (subjectAltName=email:*,URI:*,DNS:*,RID:*)</td>
+                       <td class='base' nowrap='nowrap'><input type='text' name='SUBJECTALTNAME' value='$cgiparams{'SUBJECTALTNAME'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td>
+                       <td class='base'>$Lang::tr{'pkcs12 file password'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+                       <td class='base' nowrap='nowrap'><input type='password' name='CERT_PASS1' value='$cgiparams{'CERT_PASS1'}' size='32' $cakeydisabled /></td></tr>
+               <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'pkcs12 file password'}&nbsp;($Lang::tr{'confirmation'}):&nbsp;<img src='/blob.gif' alt='*' /></td>
+                       <td class='base' nowrap='nowrap'><input type='password' name='CERT_PASS2' value='$cgiparams{'CERT_PASS2'}' size='32' $cakeydisabled /></td></tr>
+               </table>
+END
+;
+               &Header::closebox();
        }
-       print <<END
-           </select></td></tr>
 
-       <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'vpn subjectaltname'} (subjectAltName=email:*,URI:*,DNS:*,RID:*)<img src='/blob.gif' alt='*' /></td>
-           <td class='base' nowrap='nowrap'><input type='text' name='SUBJECTALTNAME' value='$cgiparams{'SUBJECTALTNAME'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td>
-           <td class='base'>$Lang::tr{'pkcs12 file password'}:</td>
-           <td class='base' nowrap='nowrap'><input type='password' name='CERT_PASS1' value='$cgiparams{'CERT_PASS1'}' size='32' $cakeydisabled /></td></tr>
-       <tr><td>&nbsp;</td><td class='base'>$Lang::tr{'pkcs12 file password'}:($Lang::tr{'confirmation'})</td>
-           <td class='base' nowrap='nowrap'><input type='password' name='CERT_PASS2' value='$cgiparams{'CERT_PASS2'}' size='32' $cakeydisabled /></td></tr>
-       </table>
-END
-       ;
-       &Header::closebox();
-    }
-
-    print "<div align='center'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' />";
-    if ($cgiparams{'KEY'}) {
-        print "<input type='submit' name='ACTION' value='$Lang::tr{'advanced'}' />";
-    }
-    print "<input type='submit' name='ACTION' value='$Lang::tr{'cancel'}' /></div></form>";
-    &Header::closebigbox();
-    &Header::closepage();
-    exit (0);
-    
-    VPNCONF_END:
+       print "<div align='center'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' />";
+       if ($cgiparams{'KEY'}) {
+               print "<input type='submit' name='ACTION' value='$Lang::tr{'advanced'}' />";
+       }
+       print "<input type='submit' name='ACTION' value='$Lang::tr{'cancel'}' /></div></form>";
+       &Header::closebigbox();
+       &Header::closepage();
+       exit (0);
+
+       VPNCONF_END:
 }
 
 ###
@@ -2089,282 +2130,288 @@ END
 ###
 if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
        ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'ADVANCED'} eq 'yes')) {
-    &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-    if (! $confighash{$cgiparams{'KEY'}}) {
-       $errormessage = $Lang::tr{'invalid key'};
-       goto ADVANCED_END;
-    }
-
-    if ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) {
-       # I didn't read any incompatibilities here....
-       #if ($cgiparams{'VHOST'} eq 'on' && $cgiparams{'COMPRESSION'} eq 'on') {
-       #    $errormessage = $Lang::tr{'cannot enable both nat traversal and compression'};
-       #    goto ADVANCED_ERROR;
-       #}
-       my @temp = split('\|', $cgiparams{'IKE_ENCRYPTION'});
-       if ($#temp < 0) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto ADVANCED_ERROR;
-       }
-       foreach my $val (@temp) {
-           if ($val !~ /^(aes(256|192|128)(gcm(128|96|64))?|3des|camellia(256|192|128))$/) {
-               $errormessage = $Lang::tr{'invalid input'};
-               goto ADVANCED_ERROR;
-           }
+       &General::readhash("${General::swroot}/vpn/settings", \%vpnsettings);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+       if (! $confighash{$cgiparams{'KEY'}}) {
+               $errormessage = $Lang::tr{'invalid key'};
+               goto ADVANCED_END;
+       }
+
+       if ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) {
+               my @temp = split('\|', $cgiparams{'IKE_ENCRYPTION'});
+               if ($#temp < 0) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto ADVANCED_ERROR;
+               }
+               foreach my $val (@temp) {
+                       if ($val !~ /^(aes(256|192|128)(gcm(128|96|64))?|3des|camellia(256|192|128))$/) {
+                               $errormessage = $Lang::tr{'invalid input'};
+                               goto ADVANCED_ERROR;
+                       }
+               }
+               @temp = split('\|', $cgiparams{'IKE_INTEGRITY'});
+               if ($#temp < 0) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto ADVANCED_ERROR;
+               }
+               foreach my $val (@temp) {
+                       if ($val !~ /^(sha2_(512|384|256)|sha|md5|aesxcbc)$/) {
+                               $errormessage = $Lang::tr{'invalid input'};
+                               goto ADVANCED_ERROR;
+                       }
+               }
+               @temp = split('\|', $cgiparams{'IKE_GROUPTYPE'});
+               if ($#temp < 0) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto ADVANCED_ERROR;
+               }
+               foreach my $val (@temp) {
+                       if ($val !~ /^(e521|e384|e256|e224|e192|e512bp|e384bp|e256bp|e224bp|1024|1536|2048|2048s256|2048s224|2048s160|3072|4096|6144|8192)$/) {
+                               $errormessage = $Lang::tr{'invalid input'};
+                               goto ADVANCED_ERROR;
+                       }
+               }
+               if ($cgiparams{'IKE_LIFETIME'} !~ /^\d+$/) {
+                       $errormessage = $Lang::tr{'invalid input for ike lifetime'};
+                       goto ADVANCED_ERROR;
+               }
+               if ($cgiparams{'IKE_LIFETIME'} < 1 || $cgiparams{'IKE_LIFETIME'} > 8) {
+                       $errormessage = $Lang::tr{'ike lifetime should be between 1 and 8 hours'};
+                       goto ADVANCED_ERROR;
+               }
+               @temp = split('\|', $cgiparams{'ESP_ENCRYPTION'});
+               if ($#temp < 0) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto ADVANCED_ERROR;
+               }
+               foreach my $val (@temp) {
+                       if ($val !~ /^(aes(256|192|128)(gcm(128|96|64))?|3des|camellia(256|192|128))$/) {
+                               $errormessage = $Lang::tr{'invalid input'};
+                               goto ADVANCED_ERROR;
+                       }
+               }
+               @temp = split('\|', $cgiparams{'ESP_INTEGRITY'});
+               if ($#temp < 0) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto ADVANCED_ERROR;
+               }
+               foreach my $val (@temp) {
+                       if ($val !~ /^(sha2_(512|384|256)|sha1|md5|aesxcbc)$/) {
+                               $errormessage = $Lang::tr{'invalid input'};
+                               goto ADVANCED_ERROR;
+                       }
+               }
+               @temp = split('\|', $cgiparams{'ESP_GROUPTYPE'});
+               if ($#temp < 0) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto ADVANCED_ERROR;
+               }
+               foreach my $val (@temp) {
+                       if ($val !~ /^(e521|e384|e256|e224|e192|e512bp|e384bp|e256bp|e224bp|1024|1536|2048|2048s256|2048s224|2048s160|3072|4096|6144|8192|none)$/) {
+                               $errormessage = $Lang::tr{'invalid input'};
+                               goto ADVANCED_ERROR;
+                       }
+               }
+               if ($cgiparams{'ESP_KEYLIFE'} !~ /^\d+$/) {
+                       $errormessage = $Lang::tr{'invalid input for esp keylife'};
+                       goto ADVANCED_ERROR;
+               }
+               if ($cgiparams{'ESP_KEYLIFE'} < 1 || $cgiparams{'ESP_KEYLIFE'} > 24) {
+                       $errormessage = $Lang::tr{'esp keylife should be between 1 and 24 hours'};
+                       goto ADVANCED_ERROR;
+               }
+
+               if (($cgiparams{'COMPRESSION'} !~ /^(|on|off)$/) ||
+                       ($cgiparams{'FORCE_MOBIKE'} !~ /^(|on|off)$/) ||
+                       ($cgiparams{'ONLY_PROPOSED'} !~ /^(|on|off)$/) ||
+                       ($cgiparams{'PFS'} !~ /^(|on|off)$/)) {
+                       $errormessage = $Lang::tr{'invalid input'};
+                       goto ADVANCED_ERROR;
+               }
+
+               if ($cgiparams{'DPD_DELAY'} !~ /^\d+$/) {
+                       $errormessage = $Lang::tr{'invalid input for dpd delay'};
+                       goto ADVANCED_ERROR;
+               }
+
+               if ($cgiparams{'DPD_TIMEOUT'} !~ /^\d+$/) {
+                       $errormessage = $Lang::tr{'invalid input for dpd timeout'};
+                       goto ADVANCED_ERROR;
+               }
+
+               $confighash{$cgiparams{'KEY'}}[29] = $cgiparams{'IKE_VERSION'};
+               $confighash{$cgiparams{'KEY'}}[18] = $cgiparams{'IKE_ENCRYPTION'};
+               $confighash{$cgiparams{'KEY'}}[19] = $cgiparams{'IKE_INTEGRITY'};
+               $confighash{$cgiparams{'KEY'}}[20] = $cgiparams{'IKE_GROUPTYPE'};
+               $confighash{$cgiparams{'KEY'}}[16] = $cgiparams{'IKE_LIFETIME'};
+               $confighash{$cgiparams{'KEY'}}[21] = $cgiparams{'ESP_ENCRYPTION'};
+               $confighash{$cgiparams{'KEY'}}[22] = $cgiparams{'ESP_INTEGRITY'};
+               $confighash{$cgiparams{'KEY'}}[23] = $cgiparams{'ESP_GROUPTYPE'};
+               $confighash{$cgiparams{'KEY'}}[17] = $cgiparams{'ESP_KEYLIFE'};
+               $confighash{$cgiparams{'KEY'}}[12] = 'off'; #$cgiparams{'AGGRMODE'};
+               $confighash{$cgiparams{'KEY'}}[13] = $cgiparams{'COMPRESSION'};
+               $confighash{$cgiparams{'KEY'}}[24] = $cgiparams{'ONLY_PROPOSED'};
+               $confighash{$cgiparams{'KEY'}}[28] = $cgiparams{'PFS'};
+               $confighash{$cgiparams{'KEY'}}[27] = $cgiparams{'DPD_ACTION'};
+               $confighash{$cgiparams{'KEY'}}[30] = $cgiparams{'DPD_TIMEOUT'};
+               $confighash{$cgiparams{'KEY'}}[31] = $cgiparams{'DPD_DELAY'};
+               $confighash{$cgiparams{'KEY'}}[32] = $cgiparams{'FORCE_MOBIKE'};
+               &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
+               &writeipsecfiles();
+               if (&vpnenabled) {
+                       system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'});
+                       sleep $sleepDelay;
+               }
+               goto ADVANCED_END;
+       } else {
+               $cgiparams{'IKE_VERSION'}               = $confighash{$cgiparams{'KEY'}}[29];
+               $cgiparams{'IKE_ENCRYPTION'}    = $confighash{$cgiparams{'KEY'}}[18];
+               $cgiparams{'IKE_INTEGRITY'}             = $confighash{$cgiparams{'KEY'}}[19];
+               $cgiparams{'IKE_GROUPTYPE'}             = $confighash{$cgiparams{'KEY'}}[20];
+               $cgiparams{'IKE_LIFETIME'}              = $confighash{$cgiparams{'KEY'}}[16];
+               $cgiparams{'ESP_ENCRYPTION'}    = $confighash{$cgiparams{'KEY'}}[21];
+               $cgiparams{'ESP_INTEGRITY'}             = $confighash{$cgiparams{'KEY'}}[22];
+               $cgiparams{'ESP_GROUPTYPE'}             = $confighash{$cgiparams{'KEY'}}[23];
+               if ($cgiparams{'ESP_GROUPTYPE'} eq "") {
+                       $cgiparams{'ESP_GROUPTYPE'}     = $cgiparams{'IKE_GROUPTYPE'};
+               }
+               $cgiparams{'ESP_KEYLIFE'}               = $confighash{$cgiparams{'KEY'}}[17];
+               $cgiparams{'COMPRESSION'}               = $confighash{$cgiparams{'KEY'}}[13];
+               $cgiparams{'ONLY_PROPOSED'}             = $confighash{$cgiparams{'KEY'}}[24];
+               $cgiparams{'PFS'}                               = $confighash{$cgiparams{'KEY'}}[28];
+               $cgiparams{'DPD_ACTION'}                = $confighash{$cgiparams{'KEY'}}[27];
+               $cgiparams{'DPD_TIMEOUT'}               = $confighash{$cgiparams{'KEY'}}[30];
+               $cgiparams{'DPD_DELAY'}                 = $confighash{$cgiparams{'KEY'}}[31];
+               $cgiparams{'FORCE_MOBIKE'}              = $confighash{$cgiparams{'KEY'}}[32];
+
+               if (!$cgiparams{'DPD_DELAY'}) {
+                       $cgiparams{'DPD_DELAY'} = 30;
+               }
+
+               if (!$cgiparams{'DPD_TIMEOUT'}) {
+                       $cgiparams{'DPD_TIMEOUT'} = 120;
+               }
        }
+
+       ADVANCED_ERROR:
+       $checked{'IKE_ENCRYPTION'}{'aes256'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes192'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes128'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes256gcm128'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes192gcm128'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes128gcm128'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes256gcm96'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes192gcm96'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes128gcm96'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes256gcm64'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes192gcm64'} = '';
+       $checked{'IKE_ENCRYPTION'}{'aes128gcm64'} = '';
+       $checked{'IKE_ENCRYPTION'}{'3des'} = '';
+       $checked{'IKE_ENCRYPTION'}{'camellia256'} = '';
+       $checked{'IKE_ENCRYPTION'}{'camellia192'} = '';
+       $checked{'IKE_ENCRYPTION'}{'camellia128'} = '';
+       my @temp = split('\|', $cgiparams{'IKE_ENCRYPTION'});
+       foreach my $key (@temp) {$checked{'IKE_ENCRYPTION'}{$key} = "selected='selected'"; }
+       $checked{'IKE_INTEGRITY'}{'sha2_512'} = '';
+       $checked{'IKE_INTEGRITY'}{'sha2_384'} = '';
+       $checked{'IKE_INTEGRITY'}{'sha2_256'} = '';
+       $checked{'IKE_INTEGRITY'}{'sha'} = '';
+       $checked{'IKE_INTEGRITY'}{'md5'} = '';
+       $checked{'IKE_INTEGRITY'}{'aesxcbc'} = '';
        @temp = split('\|', $cgiparams{'IKE_INTEGRITY'});
-       if ($#temp < 0) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto ADVANCED_ERROR;
-       }
-       foreach my $val (@temp) {
-           if ($val !~ /^(sha2_(512|384|256)|sha|md5|aesxcbc)$/) {
-               $errormessage = $Lang::tr{'invalid input'};
-               goto ADVANCED_ERROR;
-           }
-       }
+       foreach my $key (@temp) {$checked{'IKE_INTEGRITY'}{$key} = "selected='selected'"; }
+       $checked{'IKE_GROUPTYPE'}{'768'} = '';
+       $checked{'IKE_GROUPTYPE'}{'1024'} = '';
+       $checked{'IKE_GROUPTYPE'}{'1536'} = '';
+       $checked{'IKE_GROUPTYPE'}{'2048'} = '';
+       $checked{'IKE_GROUPTYPE'}{'3072'} = '';
+       $checked{'IKE_GROUPTYPE'}{'4096'} = '';
+       $checked{'IKE_GROUPTYPE'}{'6144'} = '';
+       $checked{'IKE_GROUPTYPE'}{'8192'} = '';
        @temp = split('\|', $cgiparams{'IKE_GROUPTYPE'});
-       if ($#temp < 0) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto ADVANCED_ERROR;
-       }
-       foreach my $val (@temp) {
-           if ($val !~ /^(e521|e384|e256|e224|e192|e512bp|e384bp|e256bp|e224bp|1024|1536|2048|2048s256|2048s224|2048s160|3072|4096|6144|8192)$/) {
-               $errormessage = $Lang::tr{'invalid input'};
-               goto ADVANCED_ERROR;
-           }
-       }
-       if ($cgiparams{'IKE_LIFETIME'} !~ /^\d+$/) {
-           $errormessage = $Lang::tr{'invalid input for ike lifetime'};
-           goto ADVANCED_ERROR;
-       }
-       if ($cgiparams{'IKE_LIFETIME'} < 1 || $cgiparams{'IKE_LIFETIME'} > 8) {
-           $errormessage = $Lang::tr{'ike lifetime should be between 1 and 8 hours'};
-           goto ADVANCED_ERROR;
-       }
+       foreach my $key (@temp) {$checked{'IKE_GROUPTYPE'}{$key} = "selected='selected'"; }
+
+       # 768 is not supported by strongswan
+       $checked{'IKE_GROUPTYPE'}{'768'} = '';
+
+       $checked{'ESP_ENCRYPTION'}{'aes256'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes192'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes128'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes256gcm128'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes192gcm128'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes128gcm128'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes256gcm96'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes192gcm96'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes128gcm96'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes256gcm64'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes192gcm64'} = '';
+       $checked{'ESP_ENCRYPTION'}{'aes128gcm64'} = '';
+       $checked{'ESP_ENCRYPTION'}{'3des'} = '';
+       $checked{'ESP_ENCRYPTION'}{'camellia256'} = '';
+       $checked{'ESP_ENCRYPTION'}{'camellia192'} = '';
+       $checked{'ESP_ENCRYPTION'}{'camellia128'} = '';
        @temp = split('\|', $cgiparams{'ESP_ENCRYPTION'});
-       if ($#temp < 0) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto ADVANCED_ERROR;
-       }
-       foreach my $val (@temp) {
-           if ($val !~ /^(aes(256|192|128)(gcm(128|96|64))?|3des|camellia(256|192|128))$/) {
-               $errormessage = $Lang::tr{'invalid input'};
-               goto ADVANCED_ERROR;
-           }
-       }
+       foreach my $key (@temp) {$checked{'ESP_ENCRYPTION'}{$key} = "selected='selected'"; }
+       $checked{'ESP_INTEGRITY'}{'sha2_512'} = '';
+       $checked{'ESP_INTEGRITY'}{'sha2_384'} = '';
+       $checked{'ESP_INTEGRITY'}{'sha2_256'} = '';
+       $checked{'ESP_INTEGRITY'}{'sha1'} = '';
+       $checked{'ESP_INTEGRITY'}{'md5'} = '';
+       $checked{'ESP_INTEGRITY'}{'aesxcbc'} = '';
        @temp = split('\|', $cgiparams{'ESP_INTEGRITY'});
-       if ($#temp < 0) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto ADVANCED_ERROR;
-       }
-       foreach my $val (@temp) {
-           if ($val !~ /^(sha2_(512|384|256)|sha1|md5|aesxcbc)$/) {
-               $errormessage = $Lang::tr{'invalid input'};
-               goto ADVANCED_ERROR;
-           }
-       }
-       if ($cgiparams{'ESP_GROUPTYPE'} ne '' &&
-           $cgiparams{'ESP_GROUPTYPE'} !~  /^ecp(192|224|256|384|512)(bp)?$/ &&
-           $cgiparams{'ESP_GROUPTYPE'} !~  /^modp(1024|1536|2048|2048s(256|224|160)|3072|4096|6144|8192)$/) {
-           $errormessage = $Lang::tr{'invalid input'};
-           goto ADVANCED_ERROR;
-       }
-
-       if ($cgiparams{'ESP_KEYLIFE'} !~ /^\d+$/) {
-           $errormessage = $Lang::tr{'invalid input for esp keylife'};
-           goto ADVANCED_ERROR;
-       }
-       if ($cgiparams{'ESP_KEYLIFE'} < 1 || $cgiparams{'ESP_KEYLIFE'} > 24) {
-           $errormessage = $Lang::tr{'esp keylife should be between 1 and 24 hours'};
-           goto ADVANCED_ERROR;
-       }
-
-       if (
-           ($cgiparams{'COMPRESSION'} !~ /^(|on|off)$/) ||
-           ($cgiparams{'ONLY_PROPOSED'} !~ /^(|on|off)$/) ||
-           ($cgiparams{'PFS'} !~ /^(|on|off)$/) ||
-           ($cgiparams{'VHOST'} !~ /^(|on|off)$/)
-       ){
-           $errormessage = $Lang::tr{'invalid input'};
-           goto ADVANCED_ERROR;
-       }
-
-       if ($cgiparams{'DPD_DELAY'} !~ /^\d+$/) {
-           $errormessage = $Lang::tr{'invalid input for dpd delay'};
-           goto ADVANCED_ERROR;
-       }
-
-       if ($cgiparams{'DPD_TIMEOUT'} !~ /^\d+$/) {
-           $errormessage = $Lang::tr{'invalid input for dpd timeout'};
-           goto ADVANCED_ERROR;
-       }
-
-       $confighash{$cgiparams{'KEY'}}[29] = $cgiparams{'IKE_VERSION'};
-       $confighash{$cgiparams{'KEY'}}[18] = $cgiparams{'IKE_ENCRYPTION'};
-       $confighash{$cgiparams{'KEY'}}[19] = $cgiparams{'IKE_INTEGRITY'};
-       $confighash{$cgiparams{'KEY'}}[20] = $cgiparams{'IKE_GROUPTYPE'};
-       $confighash{$cgiparams{'KEY'}}[16] = $cgiparams{'IKE_LIFETIME'};
-       $confighash{$cgiparams{'KEY'}}[21] = $cgiparams{'ESP_ENCRYPTION'};
-       $confighash{$cgiparams{'KEY'}}[22] = $cgiparams{'ESP_INTEGRITY'};
-       $confighash{$cgiparams{'KEY'}}[23] = $cgiparams{'ESP_GROUPTYPE'};
-       $confighash{$cgiparams{'KEY'}}[17] = $cgiparams{'ESP_KEYLIFE'};
-       $confighash{$cgiparams{'KEY'}}[12] = 'off'; #$cgiparams{'AGGRMODE'};
-       $confighash{$cgiparams{'KEY'}}[13] = $cgiparams{'COMPRESSION'};
-       $confighash{$cgiparams{'KEY'}}[24] = $cgiparams{'ONLY_PROPOSED'};
-       $confighash{$cgiparams{'KEY'}}[28] = $cgiparams{'PFS'};
-       $confighash{$cgiparams{'KEY'}}[14] = $cgiparams{'VHOST'};
-       $confighash{$cgiparams{'KEY'}}[27] = $cgiparams{'DPD_ACTION'};
-       $confighash{$cgiparams{'KEY'}}[30] = $cgiparams{'DPD_TIMEOUT'};
-       $confighash{$cgiparams{'KEY'}}[31] = $cgiparams{'DPD_DELAY'};
-       &General::writehasharray("${General::swroot}/vpn/config", \%confighash);
-       &writeipsecfiles();
-       if (&vpnenabled) {
-           system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'});
-           sleep $sleepDelay;
-       }
-       goto ADVANCED_END;
-    } else {
-    $cgiparams{'IKE_VERSION'}    = $confighash{$cgiparams{'KEY'}}[29];
-       $cgiparams{'IKE_ENCRYPTION'} = $confighash{$cgiparams{'KEY'}}[18];
-       $cgiparams{'IKE_INTEGRITY'}  = $confighash{$cgiparams{'KEY'}}[19];
-       $cgiparams{'IKE_GROUPTYPE'}  = $confighash{$cgiparams{'KEY'}}[20];
-       $cgiparams{'IKE_LIFETIME'}   = $confighash{$cgiparams{'KEY'}}[16];
-       $cgiparams{'ESP_ENCRYPTION'} = $confighash{$cgiparams{'KEY'}}[21];
-       $cgiparams{'ESP_INTEGRITY'}  = $confighash{$cgiparams{'KEY'}}[22];
-       $cgiparams{'ESP_GROUPTYPE'}  = $confighash{$cgiparams{'KEY'}}[23];
-       $cgiparams{'ESP_KEYLIFE'}    = $confighash{$cgiparams{'KEY'}}[17];
-       $cgiparams{'COMPRESSION'}    = $confighash{$cgiparams{'KEY'}}[13];
-       $cgiparams{'ONLY_PROPOSED'}  = $confighash{$cgiparams{'KEY'}}[24];
-       $cgiparams{'PFS'}            = $confighash{$cgiparams{'KEY'}}[28];
-       $cgiparams{'VHOST'}          = $confighash{$cgiparams{'KEY'}}[14];
-       $cgiparams{'DPD_ACTION'}     = $confighash{$cgiparams{'KEY'}}[27];
-       $cgiparams{'DPD_TIMEOUT'}    = $confighash{$cgiparams{'KEY'}}[30];
-       $cgiparams{'DPD_DELAY'}      = $confighash{$cgiparams{'KEY'}}[31];
+       foreach my $key (@temp) {$checked{'ESP_INTEGRITY'}{$key} = "selected='selected'"; }
+       $checked{'ESP_GROUPTYPE'}{'768'} = '';
+       $checked{'ESP_GROUPTYPE'}{'1024'} = '';
+       $checked{'ESP_GROUPTYPE'}{'1536'} = '';
+       $checked{'ESP_GROUPTYPE'}{'2048'} = '';
+       $checked{'ESP_GROUPTYPE'}{'3072'} = '';
+       $checked{'ESP_GROUPTYPE'}{'4096'} = '';
+       $checked{'ESP_GROUPTYPE'}{'6144'} = '';
+       $checked{'ESP_GROUPTYPE'}{'8192'} = '';
+       $checked{'ESP_GROUPTYPE'}{'none'} = '';
+       @temp = split('\|', $cgiparams{'ESP_GROUPTYPE'});
+       foreach my $key (@temp) {$checked{'ESP_GROUPTYPE'}{$key} = "selected='selected'"; }
+
+       $checked{'COMPRESSION'} = $cgiparams{'COMPRESSION'} eq 'on' ? "checked='checked'" : '' ;
+       $checked{'FORCE_MOBIKE'} = $cgiparams{'FORCE_MOBIKE'} eq 'on' ? "checked='checked'" : '' ;
+       $checked{'ONLY_PROPOSED'} = $cgiparams{'ONLY_PROPOSED'} eq 'on' ? "checked='checked'" : '' ;
+       $checked{'PFS'} = $cgiparams{'PFS'} eq 'on' ? "checked='checked'" : '' ;
+
+       $selected{'IKE_VERSION'}{'ikev1'} = '';
+       $selected{'IKE_VERSION'}{'ikev2'} = '';
+       $selected{'IKE_VERSION'}{$cgiparams{'IKE_VERSION'}} = "selected='selected'";
+
+       $selected{'DPD_ACTION'}{'clear'} = '';
+       $selected{'DPD_ACTION'}{'hold'} = '';
+       $selected{'DPD_ACTION'}{'restart'} = '';
+       $selected{'DPD_ACTION'}{'none'} = '';
+       $selected{'DPD_ACTION'}{$cgiparams{'DPD_ACTION'}} = "selected='selected'";
 
-       if (!$cgiparams{'DPD_DELAY'}) {
-               $cgiparams{'DPD_DELAY'} = 30;
-       }
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+       &Header::openbigbox('100%', 'left', '', $errormessage);
 
-       if (!$cgiparams{'DPD_TIMEOUT'}) {
-               $cgiparams{'DPD_TIMEOUT'} = 120;
+       if ($errormessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
+               print "<class name='base'>$errormessage";
+               print "&nbsp;</class>";
+               &Header::closebox();
        }
 
-       if ($confighash{$cgiparams{'KEY'}}[3] eq 'net' || $confighash{$cgiparams{'KEY'}}[10]) {
-           $cgiparams{'VHOST'}            = 'off';
-       }
-    }
-
-    ADVANCED_ERROR:
-    $checked{'IKE_ENCRYPTION'}{'aes256'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes192'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes128'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes256gcm128'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes192gcm128'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes128gcm128'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes256gcm96'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes192gcm96'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes128gcm96'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes256gcm64'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes192gcm64'} = '';
-    $checked{'IKE_ENCRYPTION'}{'aes128gcm64'} = '';
-    $checked{'IKE_ENCRYPTION'}{'3des'} = '';
-    $checked{'IKE_ENCRYPTION'}{'camellia256'} = '';
-    $checked{'IKE_ENCRYPTION'}{'camellia192'} = '';
-    $checked{'IKE_ENCRYPTION'}{'camellia128'} = '';
-    my @temp = split('\|', $cgiparams{'IKE_ENCRYPTION'});
-    foreach my $key (@temp) {$checked{'IKE_ENCRYPTION'}{$key} = "selected='selected'"; }
-    $checked{'IKE_INTEGRITY'}{'sha2_512'} = '';
-    $checked{'IKE_INTEGRITY'}{'sha2_384'} = '';
-    $checked{'IKE_INTEGRITY'}{'sha2_256'} = '';
-    $checked{'IKE_INTEGRITY'}{'sha'} = '';
-    $checked{'IKE_INTEGRITY'}{'md5'} = '';
-    $checked{'IKE_INTEGRITY'}{'aesxcbc'} = '';
-    @temp = split('\|', $cgiparams{'IKE_INTEGRITY'});
-    foreach my $key (@temp) {$checked{'IKE_INTEGRITY'}{$key} = "selected='selected'"; }
-    $checked{'IKE_GROUPTYPE'}{'768'} = '';
-    $checked{'IKE_GROUPTYPE'}{'1024'} = '';
-    $checked{'IKE_GROUPTYPE'}{'1536'} = '';
-    $checked{'IKE_GROUPTYPE'}{'2048'} = '';
-    $checked{'IKE_GROUPTYPE'}{'3072'} = '';
-    $checked{'IKE_GROUPTYPE'}{'4096'} = '';
-    $checked{'IKE_GROUPTYPE'}{'6144'} = '';
-    $checked{'IKE_GROUPTYPE'}{'8192'} = '';
-    @temp = split('\|', $cgiparams{'IKE_GROUPTYPE'});
-    foreach my $key (@temp) {$checked{'IKE_GROUPTYPE'}{$key} = "selected='selected'"; }
-
-    # 768 is not supported by strongswan
-    $checked{'IKE_GROUPTYPE'}{'768'} = '';
-
-    $checked{'ESP_ENCRYPTION'}{'aes256'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes192'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes128'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes256gcm128'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes192gcm128'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes128gcm128'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes256gcm96'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes192gcm96'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes128gcm96'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes256gcm64'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes192gcm64'} = '';
-    $checked{'ESP_ENCRYPTION'}{'aes128gcm64'} = '';
-    $checked{'ESP_ENCRYPTION'}{'3des'} = '';
-    $checked{'ESP_ENCRYPTION'}{'camellia256'} = '';
-    $checked{'ESP_ENCRYPTION'}{'camellia192'} = '';
-    $checked{'ESP_ENCRYPTION'}{'camellia128'} = '';
-    @temp = split('\|', $cgiparams{'ESP_ENCRYPTION'});
-    foreach my $key (@temp) {$checked{'ESP_ENCRYPTION'}{$key} = "selected='selected'"; }
-    $checked{'ESP_INTEGRITY'}{'sha2_512'} = '';
-    $checked{'ESP_INTEGRITY'}{'sha2_384'} = '';
-    $checked{'ESP_INTEGRITY'}{'sha2_256'} = '';
-    $checked{'ESP_INTEGRITY'}{'sha1'} = '';
-    $checked{'ESP_INTEGRITY'}{'md5'} = '';
-    $checked{'ESP_INTEGRITY'}{'aesxcbc'} = '';
-    @temp = split('\|', $cgiparams{'ESP_INTEGRITY'});
-    foreach my $key (@temp) {$checked{'ESP_INTEGRITY'}{$key} = "selected='selected'"; }
-    $checked{'ESP_GROUPTYPE'}{$cgiparams{'ESP_GROUPTYPE'}} = "selected='selected'";
-
-    $checked{'COMPRESSION'} = $cgiparams{'COMPRESSION'} eq 'on' ? "checked='checked'" : '' ;
-    $checked{'ONLY_PROPOSED'} = $cgiparams{'ONLY_PROPOSED'} eq 'on' ? "checked='checked'" : '' ;
-    $checked{'PFS'} = $cgiparams{'PFS'} eq 'on' ? "checked='checked'" : '' ;
-    $checked{'VHOST'} = $cgiparams{'VHOST'} eq 'on' ? "checked='checked'" : '' ;
-
-    $selected{'IKE_VERSION'}{'ikev1'} = '';
-    $selected{'IKE_VERSION'}{'ikev2'} = '';
-    $selected{'IKE_VERSION'}{$cgiparams{'IKE_VERSION'}} = "selected='selected'";
-
-    $selected{'DPD_ACTION'}{'clear'} = '';
-    $selected{'DPD_ACTION'}{'hold'} = '';
-    $selected{'DPD_ACTION'}{'restart'} = '';
-    $selected{'DPD_ACTION'}{'none'} = '';
-    $selected{'DPD_ACTION'}{$cgiparams{'DPD_ACTION'}} = "selected='selected'";
-
-    &Header::showhttpheaders();
-    &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-    &Header::openbigbox('100%', 'left', '', $errormessage);
-
-    if ($errormessage) {
-       &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
-       print "<class name='base'>$errormessage";
-       print "&nbsp;</class>";
-       &Header::closebox();
-    }
-
-    if ($warnmessage) {
-       &Header::openbox('100%', 'left', $Lang::tr{'warning messages'});
-       print "<class name='base'>$warnmessage";
-       print "&nbsp;</class>";
-       &Header::closebox();
-    }
+       if ($warnmessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'warning messages'});
+               print "<class name='base'>$warnmessage";
+               print "&nbsp;</class>";
+               &Header::closebox();
+       }
 
-    &Header::openbox('100%', 'left', "$Lang::tr{'advanced'}:");
-    print <<EOF
-    <form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>
-    <input type='hidden' name='ADVANCED' value='yes' />
-    <input type='hidden' name='KEY' value='$cgiparams{'KEY'}' />
+       &Header::openbox('100%', 'left', "$Lang::tr{'advanced'}:");
+       print <<EOF
+       <form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>
+       <input type='hidden' name='ADVANCED' value='yes' />
+       <input type='hidden' name='KEY' value='$cgiparams{'KEY'}' />
 
-    <table width='100%'>
+       <table width='100%'>
        <thead>
                <tr>
                        <th width="15%"></th>
@@ -2451,7 +2498,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                        </td>
                </tr>
                <tr>
-                       <td class='boldbase' width="15%">$Lang::tr{'lifetime'}</td>
+                       <td class='boldbase' width="15%">$Lang::tr{'lifetime'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                        <td class='boldbase'>
                                <input type='text' name='IKE_LIFETIME' value='$cgiparams{'IKE_LIFETIME'}' size='5' /> $Lang::tr{'hours'}
                        </td>
@@ -2484,17 +2531,40 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                                        <option value='1024' $checked{'IKE_GROUPTYPE'}{'1024'}>MODP-1024</option>
                                </select>
                        </td>
-                       <td></td>
+                       <td class='boldbase'>
+                               <select name='ESP_GROUPTYPE' multiple='multiple' size='6' style='width: 100%'>
+                                       <option value='e521' $checked{'ESP_GROUPTYPE'}{'e521'}>ECP-521 (NIST)</option>
+                                       <option value='e512bp' $checked{'ESP_GROUPTYPE'}{'e512bp'}>ECP-512 (Brainpool)</option>
+                                       <option value='e384' $checked{'ESP_GROUPTYPE'}{'e384'}>ECP-384 (NIST)</option>
+                                       <option value='e384bp' $checked{'ESP_GROUPTYPE'}{'e384bp'}>ECP-384 (Brainpool)</option>
+                                       <option value='e256' $checked{'ESP_GROUPTYPE'}{'e256'}>ECP-256 (NIST)</option>
+                                       <option value='e256bp' $checked{'ESP_GROUPTYPE'}{'e256bp'}>ECP-256 (Brainpool)</option>
+                                       <option value='e224' $checked{'ESP_GROUPTYPE'}{'e224'}>ECP-224 (NIST)</option>
+                                       <option value='e224bp' $checked{'ESP_GROUPTYPE'}{'e224bp'}>ECP-224 (Brainpool)</option>
+                                       <option value='e192' $checked{'ESP_GROUPTYPE'}{'e192'}>ECP-192 (NIST)</option>
+                                       <option value='8192' $checked{'ESP_GROUPTYPE'}{'8192'}>MODP-8192</option>
+                                       <option value='6144' $checked{'ESP_GROUPTYPE'}{'6144'}>MODP-6144</option>
+                                       <option value='4096' $checked{'ESP_GROUPTYPE'}{'4096'}>MODP-4096</option>
+                                       <option value='3072' $checked{'ESP_GROUPTYPE'}{'3072'}>MODP-3072</option>
+                                       <option value='2048s256' $checked{'ESP_GROUPTYPE'}{'2048s256'}>MODP-2048/256</option>
+                                       <option value='2048s224' $checked{'ESP_GROUPTYPE'}{'2048s224'}>MODP-2048/224</option>
+                                       <option value='2048s160' $checked{'ESP_GROUPTYPE'}{'2048s160'}>MODP-2048/160</option>
+                                       <option value='2048' $checked{'ESP_GROUPTYPE'}{'2048'}>MODP-2048</option>
+                                       <option value='1536' $checked{'ESP_GROUPTYPE'}{'1536'}>MODP-1536</option>
+                                       <option value='1024' $checked{'ESP_GROUPTYPE'}{'1024'}>MODP-1024</option>
+                                       <option value='none' $checked{'ESP_GROUPTYPE'}{'none'}>- $Lang::tr{'none'} -</option>
+                               </select>
+                       </td>
                </tr>
        </tbody>
-    </table>
+       </table>
 
        <br><br>
 
        <h2>$Lang::tr{'dead peer detection'}</h2>
 
-    <table width="100%">
-    <tr>
+       <table width="100%">
+       <tr>
                <td width="15%">$Lang::tr{'dpd action'}:</td>
                <td>
                        <select name='DPD_ACTION'>
@@ -2506,22 +2576,22 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                </td>
        </tr>
        <tr>
-               <td width="15%">$Lang::tr{'dpd timeout'}:</td>
+               <td width="15%">$Lang::tr{'dpd timeout'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td>
                        <input type='text' name='DPD_TIMEOUT' size='5' value='$cgiparams{'DPD_TIMEOUT'}' />
                </td>
        </tr>
        <tr>
-               <td width="15%">$Lang::tr{'dpd delay'}:</td>
+               <td width="15%">$Lang::tr{'dpd delay'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
                <td>
                        <input type='text' name='DPD_DELAY' size='5' value='$cgiparams{'DPD_DELAY'}' />
                </td>
        </tr>
-    </table>
+       </table>
 
-    <hr>
+       <hr>
 
-    <table width="100%">
+       <table width="100%">
        <tr>
                <td>
                        <label>
@@ -2546,77 +2616,77 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                        </label>
                </td>
        </tr>
+       <tr>
+               <td>
+                       <label>
+                               <input type='checkbox' name='FORCE_MOBIKE' $checked{'FORCE_MOBIKE'} />
+                               $Lang::tr{'vpn force mobike'}
+                       </label>
+               </td>
+       </tr>
 EOF
-    ;
-    if ($confighash{$cgiparams{'KEY'}}[3] eq 'net') {
-       print "<tr><td><input type='hidden' name='VHOST' value='off' /></td></tr>";
-    } elsif ($confighash{$cgiparams{'KEY'}}[10]) {
-       print "<tr><td><label><input type='checkbox' name='VHOST' $checked{'VHOST'} disabled='disabled' />";
-       print " $Lang::tr{'vpn vhost'}</label></td></tr>";
-    } else {
-       print "<tr><td><label><input type='checkbox' name='VHOST' $checked{'VHOST'} />";
-       print " $Lang::tr{'vpn vhost'}</label></td></tr>";
-    }
-
-    print <<EOF;
+;
+
+       print <<EOF;
        <tr>
+               <td align='left' colspan='1'><img src='/blob.gif' align='top' alt='*' />&nbsp;$Lang::tr{'required field'}</td>
                <td align='right' colspan='2'>
                        <input type='submit' name='ACTION' value='$Lang::tr{'save'}' />
                        <input type='submit' name='ACTION' value='$Lang::tr{'cancel'}' />
                </td>
        </tr>
-    </table></form>
+       </table></form>
 EOF
 
-    &Header::closebox();
-    &Header::closebigbox();
-    &Header::closepage();
-    exit(0);
+       &Header::closebox();
+       &Header::closebigbox();
+       &Header::closepage();
+       exit(0);
 
-    ADVANCED_END:
+       ADVANCED_END:
 }
 
 ###
 ### Default status page
 ###
-    %cgiparams = ();
-    %cahash = ();
-    %confighash = ();
-    &General::readhash("${General::swroot}/vpn/settings", \%cgiparams);
-    &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
-    &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
-    $cgiparams{'CA_NAME'} = '';
-
-    my @status = `/usr/local/bin/ipsecctrl I 2>/dev/null`;
-
-    # suggest a default name for this side
-    if ($cgiparams{'VPN_IP'} eq '' && -e "${General::swroot}/red/active") {
-       if (open(IPADDR, "${General::swroot}/red/local-ipaddress")) {
-           my $ipaddr = <IPADDR>;
-           close IPADDR;
-           chomp ($ipaddr);
-           $cgiparams{'VPN_IP'} = (gethostbyaddr(pack("C4", split(/\./, $ipaddr)), 2))[0];
-           if ($cgiparams{'VPN_IP'} eq '') {
-               $cgiparams{'VPN_IP'} = $ipaddr;
-           }
-       }
-    }
-    # no IP found, use %defaultroute
-    $cgiparams{'VPN_IP'} ='%defaultroute' if ($cgiparams{'VPN_IP'} eq '');
-    
-    $cgiparams{'VPN_DELAYED_START'} = 0 if (! defined ($cgiparams{'VPN_DELAYED_START'}));
-    $checked{'ENABLED'} = $cgiparams{'ENABLED'} eq 'on' ? "checked='checked'" : '';
-
-    &Header::showhttpheaders();
-    &Header::openpage($Lang::tr{'ipsec'}, 1, '');
-    &Header::openbigbox('100%', 'left', '', $errormessage);
-
-    if ($errormessage) {
-       &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
-       print "<class name='base'>$errormessage\n";
-       print "&nbsp;</class>\n";
-       &Header::closebox();
-    }
+       %cgiparams = ();
+       %cahash = ();
+       %confighash = ();
+       &General::readhash("${General::swroot}/vpn/settings", \%cgiparams);
+       &General::readhasharray("${General::swroot}/vpn/caconfig", \%cahash);
+       &General::readhasharray("${General::swroot}/vpn/config", \%confighash);
+       $cgiparams{'CA_NAME'} = '';
+
+       my @status = `/usr/local/bin/ipsecctrl I 2>/dev/null`;
+
+       # suggest a default name for this side
+       if ($cgiparams{'VPN_IP'} eq '' && -e "${General::swroot}/red/active") {
+               if (open(IPADDR, "${General::swroot}/red/local-ipaddress")) {
+                       my $ipaddr = <IPADDR>;
+                       close IPADDR;
+                       chomp ($ipaddr);
+                       $cgiparams{'VPN_IP'} = (gethostbyaddr(pack("C4", split(/\./, $ipaddr)), 2))[0];
+                       if ($cgiparams{'VPN_IP'} eq '') {
+                               $cgiparams{'VPN_IP'} = $ipaddr;
+                       }
+               }
+       }
+       # no IP found, use %defaultroute
+       $cgiparams{'VPN_IP'} ='%defaultroute' if ($cgiparams{'VPN_IP'} eq '');
+
+       $cgiparams{'VPN_DELAYED_START'} = 0 if (! defined ($cgiparams{'VPN_DELAYED_START'}));
+       $checked{'ENABLED'} = $cgiparams{'ENABLED'} eq 'on' ? "checked='checked'" : '';
+
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'ipsec'}, 1, '');
+       &Header::openbigbox('100%', 'left', '', $errormessage);
+
+       if ($errormessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
+               print "<class name='base'>$errormessage\n";
+               print "&nbsp;</class>\n";
+               &Header::closebox();
+       }
 
        if ($warnmessage) {
                &Header::openbox('100%', 'left', $Lang::tr{'warning messages'});
@@ -2628,61 +2698,61 @@ EOF
                exit 0;
        }
 
-    &Header::openbox('100%', 'left', $Lang::tr{'global settings'});
-    print <<END
-    <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-    <table width='100%'>
-    <tr>
-       <td width='20%' class='base' nowrap='nowrap'>$Lang::tr{'vpn red name'}:</td>
+       &Header::openbox('100%', 'left', $Lang::tr{'global settings'});
+       print <<END
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table width='100%'>
+       <tr>
+       <td width='20%' class='base' nowrap='nowrap'>$Lang::tr{'vpn red name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td width='20%'><input type='text' name='VPN_IP' value='$cgiparams{'VPN_IP'}' /></td>
        <td width='20%' class='base'>$Lang::tr{'enabled'}<input type='checkbox' name='ENABLED' $checked{'ENABLED'} /></td>
-    </tr>
+       </tr>
 END
-    ;
+;
 print <<END
-    <tr>
-       <td  class='base' nowrap='nowrap'>$Lang::tr{'vpn delayed start'}:&nbsp;<img src='/blob.gif' alt='*' /><img src='/blob.gif' alt='*' /></td>
+       <tr>
+       <td class='base' nowrap='nowrap'>$Lang::tr{'vpn delayed start'}:&nbsp;<img src='/blob.gif' alt='*' /><img src='/blob.gif' alt='*' /></td>
        <td ><input type='text' name='VPN_DELAYED_START' value='$cgiparams{'VPN_DELAYED_START'}' /></td>
-    </tr>
-    <tr>
-       <td  class='base' nowrap='nowrap'>$Lang::tr{'host to net vpn'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+       </tr>
+       <tr>
+       <td class='base' nowrap='nowrap'>$Lang::tr{'host to net vpn'}:</td>
        <td ><input type='text' name='RW_NET' value='$cgiparams{'RW_NET'}' /></td>
-    </tr>
+       </tr>
 </table>
 <br>
 <hr />
 <table width='100%'>
 <tr>
-    <td class='base' valign='top'><img src='/blob.gif' alt='*' /></td>
-    <td width='70%' class='base' valign='top'>$Lang::tr{'this field may be blank'}</td><td width='30%' align='right' class='base'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' /></td>
+       <td class='base' valign='top'><img src='/blob.gif' alt='*' /></td>
+       <td width='70%' class='base' valign='top'>$Lang::tr{'required field'}</td><td width='30%' align='right' class='base'><input type='submit' name='ACTION' value='$Lang::tr{'save'}' /></td>
 </tr>
 <tr>
-    <td class='base' valign='top' nowrap='nowrap'><img src='/blob.gif' alt='*' /><img src='/blob.gif' alt='*' />&nbsp;</td>
-    <td class='base'>  <font class='base'>$Lang::tr{'vpn delayed start help'}</font></td>
-    <td></td>
+       <td class='base' valign='top' nowrap='nowrap'><img src='/blob.gif' alt='*' /><img src='/blob.gif' alt='*' />&nbsp;</td>
+       <td class='base'>       <font class='base'>$Lang::tr{'vpn delayed start help'}</font></td>
+       <td></td>
 </tr>
 </table>
 END
-;              
-    print "</form>";
-    &Header::closebox();
-
-    &Header::openbox('100%', 'left', $Lang::tr{'connection status and controlc'});
-    print <<END
-    <table width='100%' cellspacing='1' cellpadding='0' class='tbl'>
-    <tr>
+;
+       print "</form>";
+       &Header::closebox();
+
+       &Header::openbox('100%', 'left', $Lang::tr{'connection status and controlc'});
+       print <<END
+       <table width='100%' cellspacing='1' cellpadding='0' class='tbl'>
+       <tr>
        <th width='10%' class='boldbase' align='center'><b>$Lang::tr{'name'}</b></th>
        <th width='22%' class='boldbase' align='center'><b>$Lang::tr{'type'}</b></th>
        <th width='23%' class='boldbase' align='center'><b>$Lang::tr{'common name'}</b></th>
        <th width='30%' class='boldbase' align='center'><b>$Lang::tr{'remark'}</b></th>
        <th width='10%' class='boldbase' align='center'><b>$Lang::tr{'status'}</b></th>
        <th class='boldbase' align='center' colspan='6'><b>$Lang::tr{'action'}</b></th>
-    </tr>
+       </tr>
 END
-    ;
-    my $id = 0;
-    my $gif;
-    foreach my $key (sort { ncmp ($confighash{$a}[1],$confighash{$b}[1]) } keys %confighash) {
+;
+       my $id = 0;
+       my $gif;
+       foreach my $key (sort { ncmp ($confighash{$a}[1],$confighash{$b}[1]) } keys %confighash) {
        if ($confighash{$key}[0] eq 'on') { $gif = 'on.gif'; } else { $gif = 'off.gif'; }
 
        if ($id % 2) {
@@ -2695,302 +2765,304 @@ END
        print "<td align='center' nowrap='nowrap' $col>$confighash{$key}[1]</td>";
        print "<td align='center' nowrap='nowrap' $col>" . $Lang::tr{"$confighash{$key}[3]"} . " (" . $Lang::tr{"$confighash{$key}[4]"} . ") $confighash{$key}[29]</td>";
        if ($confighash{$key}[2] eq '%auth-dn') {
-           print "<td align='left' nowrap='nowrap' $col>$confighash{$key}[9]</td>";
+               print "<td align='left' nowrap='nowrap' $col>$confighash{$key}[9]</td>";
        } elsif ($confighash{$key}[4] eq 'cert') {
-           print "<td align='left' nowrap='nowrap' $col>$confighash{$key}[2]</td>";
+               print "<td align='left' nowrap='nowrap' $col>$confighash{$key}[2]</td>";
        } else {
-           print "<td align='left' $col>&nbsp;</td>";
+               print "<td align='left' $col>&nbsp;</td>";
        }
        print "<td align='center' $col>$confighash{$key}[25]</td>";
        my $col1="bgcolor='${Header::colourred}'";
        # get real state
        my $active = "<b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b>";
        foreach my $line (@status) {
-           if (($line =~ /\"$confighash{$key}[1]\".*IPsec SA established/) ||
-              ($line =~ /$confighash{$key}[1]\{.*INSTALLED/))
-           {
-               $col1="bgcolor='${Header::colourgreen}'";
-               $active = "<b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b>";
-           }
-       }
-       # move to blueif really down
+               if (($line =~ /\"$confighash{$key}[1]\".*IPsec SA established/) ||
+               ($line =~ /$confighash{$key}[1]\{.*INSTALLED/)) {
+                       $col1="bgcolor='${Header::colourgreen}'";
+                       $active = "<b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b>";
+               }
+       }
+       # move to blue if really down
        if ($confighash{$key}[0] eq 'off' && $col1 =~ /${Header::colourred}/ ) {
                $col1="bgcolor='${Header::colourblue}'";
-           $active = "<b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b>";
+               $active = "<b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b>";
        }
        print <<END
        <td align='center' $col1>$active</td>
        <td align='center' $col>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='image'  name='$Lang::tr{'restart'}' src='/images/reload.gif' alt='$Lang::tr{'restart'}' title='$Lang::tr{'restart'}' />
-           <input type='hidden' name='ACTION' value='$Lang::tr{'restart'}' />
-           <input type='hidden' name='KEY' value='$key' />
-           </form>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+               <input type='image' name='$Lang::tr{'restart'}' src='/images/reload.gif' alt='$Lang::tr{'restart'}' title='$Lang::tr{'restart'}' />
+               <input type='hidden' name='ACTION' value='$Lang::tr{'restart'}' />
+               <input type='hidden' name='KEY' value='$key' />
+               </form>
        </td>
 END
-       ;
+;
        if (($confighash{$key}[4] eq 'cert') && ($confighash{$key}[2] ne '%auth-dn')) {
-           print <<END
-           <td align='center' $col>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+               print <<END
+               <td align='center' $col>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
                <input type='image' name='$Lang::tr{'show certificate'}' src='/images/info.gif' alt='$Lang::tr{'show certificate'}' title='$Lang::tr{'show certificate'}' />
                <input type='hidden' name='ACTION' value='$Lang::tr{'show certificate'}' />
                <input type='hidden' name='KEY' value='$key' />
-           </form>
-           </td>
+               </form>
+               </td>
 END
-       ; } else {
-           print "<td width='2%' $col>&nbsp;</td>";
+;
+       } else {
+               print "<td width='2%' $col>&nbsp;</td>";
        }
-       if ($confighash{$key}[4] eq 'cert' && -f "${General::swroot}/certs/$confighash{$key}[1].p12") { 
-           print <<END
-           <td align='center' $col>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       if ($confighash{$key}[4] eq 'cert' && -f "${General::swroot}/certs/$confighash{$key}[1].p12") {
+               print <<END
+               <td align='center' $col>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
                <input type='image' name='$Lang::tr{'download pkcs12 file'}' src='/images/floppy.gif' alt='$Lang::tr{'download pkcs12 file'}' title='$Lang::tr{'download pkcs12 file'}' />
                <input type='hidden' name='ACTION' value='$Lang::tr{'download pkcs12 file'}' />
                <input type='hidden' name='KEY' value='$key' />
-           </form>
+               </form>
        </td>
 END
-       ; } elsif (($confighash{$key}[4] eq 'cert') && ($confighash{$key}[2] ne '%auth-dn')) {
-           print <<END
-           <td align='center' $col>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+;
+       } elsif (($confighash{$key}[4] eq 'cert') && ($confighash{$key}[2] ne '%auth-dn')) {
+               print <<END
+               <td align='center' $col>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
                <input type='image' name='$Lang::tr{'download certificate'}' src='/images/floppy.gif' alt='$Lang::tr{'download certificate'}' title='$Lang::tr{'download certificate'}' />
                <input type='hidden' name='ACTION' value='$Lang::tr{'download certificate'}' />
                <input type='hidden' name='KEY' value='$key' />
-           </form>
+               </form>
        </td>
 END
-       ; } else {
-           print "<td width='2%' $col>&nbsp;</td>";
+;
+       } else {
+               print "<td width='2%' $col>&nbsp;</td>";
        }
        print <<END
        <td align='center' $col>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='image' name='$Lang::tr{'toggle enable disable'}' src='/images/$gif' alt='$Lang::tr{'toggle enable disable'}' title='$Lang::tr{'toggle enable disable'}' />
-           <input type='hidden' name='ACTION' value='$Lang::tr{'toggle enable disable'}' />
-           <input type='hidden' name='KEY' value='$key' />
-           </form>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+               <input type='image' name='$Lang::tr{'toggle enable disable'}' src='/images/$gif' alt='$Lang::tr{'toggle enable disable'}' title='$Lang::tr{'toggle enable disable'}' />
+               <input type='hidden' name='ACTION' value='$Lang::tr{'toggle enable disable'}' />
+               <input type='hidden' name='KEY' value='$key' />
+               </form>
        </td>
 
        <td align='center' $col>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='hidden' name='ACTION' value='$Lang::tr{'edit'}' />
-           <input type='image' name='$Lang::tr{'edit'}' src='/images/edit.gif' alt='$Lang::tr{'edit'}' title='$Lang::tr{'edit'}' />
-           <input type='hidden' name='KEY' value='$key' />
-           </form>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+               <input type='hidden' name='ACTION' value='$Lang::tr{'edit'}' />
+               <input type='image' name='$Lang::tr{'edit'}' src='/images/edit.gif' alt='$Lang::tr{'edit'}' title='$Lang::tr{'edit'}' />
+               <input type='hidden' name='KEY' value='$key' />
+               </form>
        </td>
        <td align='center' $col>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='hidden' name='ACTION' value='$Lang::tr{'remove'}' />
-           <input type='image'  name='$Lang::tr{'remove'}' src='/images/delete.gif' alt='$Lang::tr{'remove'}' title='$Lang::tr{'remove'}' />
-           <input type='hidden' name='KEY' value='$key' />
-           </form>
+               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+               <input type='hidden' name='ACTION' value='$Lang::tr{'remove'}' />
+               <input type='image' name='$Lang::tr{'remove'}' src='/images/delete.gif' alt='$Lang::tr{'remove'}' title='$Lang::tr{'remove'}' />
+               <input type='hidden' name='KEY' value='$key' />
+               </form>
        </td>
        </tr>
 END
-       ;
+;
        $id++;
-    }
-    print "</table>";
-
-    # If the config file contains entries, print Key to action icons
-    if ( $id ) {
-    print <<END
-    <table>
-    <tr>
-       <td class='boldbase'>&nbsp; <b>$Lang::tr{'legend'}:</b></td>
-       <td>&nbsp; <img src='/images/on.gif' alt='$Lang::tr{'click to disable'}' /></td>
-       <td class='base'>$Lang::tr{'click to disable'}</td>
-       <td>&nbsp; &nbsp; <img src='/images/info.gif' alt='$Lang::tr{'show certificate'}' /></td>
-       <td class='base'>$Lang::tr{'show certificate'}</td>
-       <td>&nbsp; &nbsp; <img src='/images/edit.gif' alt='$Lang::tr{'edit'}' /></td>
-       <td class='base'>$Lang::tr{'edit'}</td>
-       <td>&nbsp; &nbsp; <img src='/images/delete.gif' alt='$Lang::tr{'remove'}' /></td>
-       <td class='base'>$Lang::tr{'remove'}</td>
-    </tr>
-    <tr>
-       <td>&nbsp; </td>
-       <td>&nbsp; <img src='/images/off.gif' alt='?OFF' /></td>
-       <td class='base'>$Lang::tr{'click to enable'}</td>
-       <td>&nbsp; &nbsp; <img src='/images/floppy.gif' alt='?FLOPPY' /></td>
-       <td class='base'>$Lang::tr{'download certificate'}</td>
-       <td>&nbsp; &nbsp; <img src='/images/reload.gif' alt='?RELOAD'/></td>
-       <td class='base'>$Lang::tr{'restart'}</td>
-    </tr>
-    </table>
+       }
+       print "</table>";
+
+       # If the config file contains entries, print Key to action icons
+       if ( $id ) {
+               print <<END
+               <table>
+               <tr>
+               <td class='boldbase'>&nbsp; <b>$Lang::tr{'legend'}:</b></td>
+               <td>&nbsp; <img src='/images/on.gif' alt='$Lang::tr{'click to disable'}' /></td>
+               <td class='base'>$Lang::tr{'click to disable'}</td>
+               <td>&nbsp; &nbsp; <img src='/images/info.gif' alt='$Lang::tr{'show certificate'}' /></td>
+               <td class='base'>$Lang::tr{'show certificate'}</td>
+               <td>&nbsp; &nbsp; <img src='/images/edit.gif' alt='$Lang::tr{'edit'}' /></td>
+               <td class='base'>$Lang::tr{'edit'}</td>
+               <td>&nbsp; &nbsp; <img src='/images/delete.gif' alt='$Lang::tr{'remove'}' /></td>
+               <td class='base'>$Lang::tr{'remove'}</td>
+               </tr>
+               <tr>
+               <td>&nbsp; </td>
+               <td>&nbsp; <img src='/images/off.gif' alt='?OFF' /></td>
+               <td class='base'>$Lang::tr{'click to enable'}</td>
+               <td>&nbsp; &nbsp; <img src='/images/floppy.gif' alt='?FLOPPY' /></td>
+               <td class='base'>$Lang::tr{'download certificate'}</td>
+               <td>&nbsp; &nbsp; <img src='/images/reload.gif' alt='?RELOAD'/></td>
+               <td class='base'>$Lang::tr{'restart'}</td>
+               </tr>
+               </table>
 END
-    ;
-    }
+;
+       }
 
-    print <<END
-    <table width='100%'>
-    <tr><td align='right' colspan='9'>
+       print <<END
+       <table width='100%'>
+       <tr><td align='right' colspan='9'>
        <form method='post' action='$ENV{'SCRIPT_NAME'}'>
        <input type='submit' name='ACTION' value='$Lang::tr{'add'}' />
        </form>
-    </td></tr>
-    </table>
+       </td></tr>
+       </table>
 END
-    ;
-    &Header::closebox();
+;
+       &Header::closebox();
 
-    &Header::openbox('100%', 'left', "$Lang::tr{'certificate authorities'}");
-    print <<EOF
-    <table width='100%' cellspacing='1' cellpadding='0' class='tbl'>
-    <tr>
+       &Header::openbox('100%', 'left', "$Lang::tr{'certificate authorities'}");
+       print <<EOF
+       <table width='100%' cellspacing='1' cellpadding='0' class='tbl'>
+       <tr>
        <th width='25%' class='boldbase' align='center'><b>$Lang::tr{'name'}</b></th>
        <th width='65%' class='boldbase' align='center'><b>$Lang::tr{'subject'}</b></th>
        <th width='10%' class='boldbase' colspan='3' align='center'><b>$Lang::tr{'action'}</b></th>
-    </tr>
+       </tr>
 EOF
-    ;
-    my $col1="bgcolor='$color{'color22'}'";
+;
+       my $col1="bgcolor='$color{'color22'}'";
        my $col2="bgcolor='$color{'color20'}'";
-    if (-f "${General::swroot}/ca/cacert.pem") {
-       my $casubject = &Header::cleanhtml(getsubjectfromcert ("${General::swroot}/ca/cacert.pem"));
-       print <<END
-       <tr>
-       <td class='base' $col1>$Lang::tr{'root certificate'}</td>
-       <td class='base' $col1>$casubject</td>
-       <td width='3%' align='center' $col1>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='hidden' name='ACTION' value='$Lang::tr{'show root certificate'}' />
-           <input type='image' name='$Lang::tr{'edit'}' src='/images/info.gif' alt='$Lang::tr{'show root certificate'}' title='$Lang::tr{'show root certificate'}' />
-           </form>
-       </td>
-       <td width='3%' align='center' $col1>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='image' name='$Lang::tr{'download root certificate'}' src='/images/floppy.gif' alt='$Lang::tr{'download root certificate'}' title='$Lang::tr{'download root certificate'}' />
-           <input type='hidden' name='ACTION' value='$Lang::tr{'download root certificate'}' />
-           </form>
-       </td>
-       <td width='4%' $col1>&nbsp;</td></tr>
+       if (-f "${General::swroot}/ca/cacert.pem") {
+               my $casubject = &Header::cleanhtml(getsubjectfromcert ("${General::swroot}/ca/cacert.pem"));
+               print <<END
+               <tr>
+               <td class='base' $col1>$Lang::tr{'root certificate'}</td>
+               <td class='base' $col1>$casubject</td>
+               <td width='3%' align='center' $col1>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='hidden' name='ACTION' value='$Lang::tr{'show root certificate'}' />
+                       <input type='image' name='$Lang::tr{'edit'}' src='/images/info.gif' alt='$Lang::tr{'show root certificate'}' title='$Lang::tr{'show root certificate'}' />
+                       </form>
+               </td>
+               <td width='3%' align='center' $col1>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' name='$Lang::tr{'download root certificate'}' src='/images/floppy.gif' alt='$Lang::tr{'download root certificate'}' title='$Lang::tr{'download root certificate'}' />
+                       <input type='hidden' name='ACTION' value='$Lang::tr{'download root certificate'}' />
+                       </form>
+               </td>
+               <td width='4%' $col1>&nbsp;</td></tr>
 END
-       ;
-    } else {
-       # display rootcert generation buttons
-       print <<END
-       <tr>
-       <td class='base' $col1>$Lang::tr{'root certificate'}:</td>
-       <td class='base' $col1>$Lang::tr{'not present'}</td>
-       <td colspan='3' $col1>&nbsp;</td></tr>
+;
+       } else {
+               # display rootcert generation buttons
+               print <<END
+               <tr>
+               <td class='base' $col1>$Lang::tr{'root certificate'}:</td>
+               <td class='base' $col1>$Lang::tr{'not present'}</td>
+               <td colspan='3' $col1>&nbsp;</td></tr>
 END
-       ;
-    }
+;
+       }
 
-    if (-f "${General::swroot}/certs/hostcert.pem") {
-       my $hostsubject = &Header::cleanhtml(getsubjectfromcert ("${General::swroot}/certs/hostcert.pem"));
+       if (-f "${General::swroot}/certs/hostcert.pem") {
+               my $hostsubject = &Header::cleanhtml(getsubjectfromcert ("${General::swroot}/certs/hostcert.pem"));
 
-       print <<END
-       <tr>
-       <td class='base' $col2>$Lang::tr{'host certificate'}</td>
-       <td class='base' $col2>$hostsubject</td>
-       <td width='3%' align='center' $col2>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='hidden' name='ACTION' value='$Lang::tr{'show host certificate'}' />
-           <input type='image' name='$Lang::tr{'show host certificate'}' src='/images/info.gif' alt='$Lang::tr{'show host certificate'}' title='$Lang::tr{'show host certificate'}' />
-           </form>
-       </td>
-       <td width='3%' align='center' $col2>
-           <form method='post' action='$ENV{'SCRIPT_NAME'}'>
-           <input type='image' name="$Lang::tr{'download host certificate'}" src='/images/floppy.gif' alt="$Lang::tr{'download host certificate'}" title="$Lang::tr{'download host certificate'}" />
-           <input type='hidden' name='ACTION' value="$Lang::tr{'download host certificate'}" />
-           </form>
-       </td>
-       <td width='4%' $col2>&nbsp;</td></tr>
+               print <<END
+               <tr>
+               <td class='base' $col2>$Lang::tr{'host certificate'}</td>
+               <td class='base' $col2>$hostsubject</td>
+               <td width='3%' align='center' $col2>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='hidden' name='ACTION' value='$Lang::tr{'show host certificate'}' />
+                       <input type='image' name='$Lang::tr{'show host certificate'}' src='/images/info.gif' alt='$Lang::tr{'show host certificate'}' title='$Lang::tr{'show host certificate'}' />
+                       </form>
+               </td>
+               <td width='3%' align='center' $col2>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' name="$Lang::tr{'download host certificate'}" src='/images/floppy.gif' alt="$Lang::tr{'download host certificate'}" title="$Lang::tr{'download host certificate'}" />
+                       <input type='hidden' name='ACTION' value="$Lang::tr{'download host certificate'}" />
+                       </form>
+               </td>
+               <td width='4%' $col2>&nbsp;</td></tr>
 END
-       ;
-    } else {
-       # Nothing
-       print <<END
-       <tr>
-       <td width='25%' class='base' $col2>$Lang::tr{'host certificate'}:</td>
-       <td class='base' $col2>$Lang::tr{'not present'}</td>
-       <td colspan='3' $col2>&nbsp;</td></tr>
+;
+       } else {
+               # Nothing
+               print <<END
+               <tr>
+               <td width='25%' class='base' $col2>$Lang::tr{'host certificate'}:</td>
+               <td class='base' $col2>$Lang::tr{'not present'}</td>
+               <td colspan='3' $col2>&nbsp;</td></tr>
 END
-       ;
-    }
+;
+       }
+
        my $rowcolor = 0;
        if (keys %cahash > 0) {
                foreach my $key (keys %cahash) {
-                       if ($rowcolor++ % 2) {
-                               print "<tr>";
-                               $col="bgcolor='$color{'color20'}'";
-                       } else {
-                               print "<tr>";
-                               $col="bgcolor='$color{'color22'}'";
-                       }
-           print "<td class='base' $col>$cahash{$key}[0]</td>\n";
-           print "<td class='base' $col>$cahash{$key}[1]</td>\n";
-           print <<END
-           <td align='center' $col>
-               <form method='post' name='cafrm${key}a' action='$ENV{'SCRIPT_NAME'}'>
-               <input type='image' name='$Lang::tr{'show ca certificate'}' src='/images/info.gif' alt='$Lang::tr{'show ca certificate'}' title='$Lang::tr{'show ca certificate'}' />
-               <input type='hidden' name='ACTION' value='$Lang::tr{'show ca certificate'}' />
-               <input type='hidden' name='KEY' value='$key' />
-               </form>
-           </td>
-           <td align='center' $col>
-               <form method='post' name='cafrm${key}b' action='$ENV{'SCRIPT_NAME'}'>
-               <input type='image' name='$Lang::tr{'download ca certificate'}' src='/images/floppy.gif' alt='$Lang::tr{'download ca certificate'}' title='$Lang::tr{'download ca certificate'}' />
-               <input type='hidden' name='ACTION' value='$Lang::tr{'download ca certificate'}' />
-               <input type='hidden' name='KEY' value='$key' />
-               </form>
-           </td>
-           <td align='center' $col>
-               <form method='post' name='cafrm${key}c' action='$ENV{'SCRIPT_NAME'}'>
-               <input type='hidden' name='ACTION' value='$Lang::tr{'remove ca certificate'}' />
-               <input type='image'  name='$Lang::tr{'remove ca certificate'}' src='/images/delete.gif' alt='$Lang::tr{'remove ca certificate'}' title='$Lang::tr{'remove ca certificate'}' />
-               <input type='hidden' name='KEY' value='$key' />
-               </form>
-           </td>
-           </tr>
+                               if ($rowcolor++ % 2) {
+                                       print "<tr>";
+                                       $col="bgcolor='$color{'color20'}'";
+                               } else {
+                                       print "<tr>";
+                                       $col="bgcolor='$color{'color22'}'";
+                               }
+                       print "<td class='base' $col>$cahash{$key}[0]</td>\n";
+                       print "<td class='base' $col>$cahash{$key}[1]</td>\n";
+                       print <<END
+                       <td align='center' $col>
+                       <form method='post' name='cafrm${key}a' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' name='$Lang::tr{'show ca certificate'}' src='/images/info.gif' alt='$Lang::tr{'show ca certificate'}' title='$Lang::tr{'show ca certificate'}' />
+                       <input type='hidden' name='ACTION' value='$Lang::tr{'show ca certificate'}' />
+                       <input type='hidden' name='KEY' value='$key' />
+                       </form>
+                       </td>
+                       <td align='center' $col>
+                       <form method='post' name='cafrm${key}b' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' name='$Lang::tr{'download ca certificate'}' src='/images/floppy.gif' alt='$Lang::tr{'download ca certificate'}' title='$Lang::tr{'download ca certificate'}' />
+                       <input type='hidden' name='ACTION' value='$Lang::tr{'download ca certificate'}' />
+                       <input type='hidden' name='KEY' value='$key' />
+                       </form>
+                       </td>
+                       <td align='center' $col>
+                       <form method='post' name='cafrm${key}c' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='hidden' name='ACTION' value='$Lang::tr{'remove ca certificate'}' />
+                       <input type='image' name='$Lang::tr{'remove ca certificate'}' src='/images/delete.gif' alt='$Lang::tr{'remove ca certificate'}' title='$Lang::tr{'remove ca certificate'}' />
+                       <input type='hidden' name='KEY' value='$key' />
+                       </form>
+                       </td>
+                       </tr>
 END
-           ;
+;
+               }
        }
-    }
-    print "</table>";
-
-    # If the file contains entries, print Key to action icons
-    if ( -f "${General::swroot}/ca/cacert.pem") {
-       print <<END
-       <table><tr>
-       <td class='boldbase'>&nbsp; <b>$Lang::tr{'legend'}:</b></td>
-       <td>&nbsp; &nbsp; <img src='/images/info.gif' alt='$Lang::tr{'show certificate'}' /></td>
-       <td class='base'>$Lang::tr{'show certificate'}</td>
-       <td>&nbsp; &nbsp; <img src='/images/floppy.gif' alt='$Lang::tr{'download certificate'}' /></td>
-       <td class='base'>$Lang::tr{'download certificate'}</td>
-       </tr></table>
+       print "</table>";
+
+       # If the file contains entries, print Key to action icons
+       if ( -f "${General::swroot}/ca/cacert.pem") {
+               print <<END
+               <table><tr>
+               <td class='boldbase'>&nbsp; <b>$Lang::tr{'legend'}:</b></td>
+               <td>&nbsp; &nbsp; <img src='/images/info.gif' alt='$Lang::tr{'show certificate'}' /></td>
+               <td class='base'>$Lang::tr{'show certificate'}</td>
+               <td>&nbsp; &nbsp; <img src='/images/floppy.gif' alt='$Lang::tr{'download certificate'}' /></td>
+               <td class='base'>$Lang::tr{'download certificate'}</td>
+               </tr></table>
 END
-       ;
-    }
-    my $createCA = -f "${General::swroot}/ca/cacert.pem" ? '' : "<tr><td colspan='3'></td><td><input type='submit' name='ACTION' value='$Lang::tr{'generate root/host certificates'}' /></td></tr>";
-    print <<END
-    <br>
-    <hr />
-    <form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>
-    <table width='100%' border='0' cellspacing='1' cellpadding='0'>
-    $createCA
-    <tr>
-       <td class='base' nowrap='nowrap'>$Lang::tr{'ca name'}:</td>
+;
+       }
+       my $createCA = -f "${General::swroot}/ca/cacert.pem" ? '' : "<tr><td colspan='3'></td><td><input type='submit' name='ACTION' value='$Lang::tr{'generate root/host certificates'}' /></td></tr>";
+       print <<END
+       <br>
+       <hr />
+       <form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'>
+       <table width='100%' border='0' cellspacing='1' cellpadding='0'>
+       $createCA
+       <tr>
+       <td class='base' nowrap='nowrap'>$Lang::tr{'ca name'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td nowrap='nowrap'><input type='text' name='CA_NAME' value='$cgiparams{'CA_NAME'}' size='15' /> </td>
        <td nowrap='nowrap'><input type='file' name='FH' size='30' /></td>
        <td nowrap='nowrap'><input type='submit' name='ACTION' value='$Lang::tr{'upload ca certificate'}' /></td>
-    </tr>
-    <tr>
+       </tr>
+       <tr>
        <td colspan='3'>$Lang::tr{'resetting the vpn configuration will remove the root ca, the host certificate and all certificate based connections'}:</td>
        <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'remove x509'}' /></td>
-    </tr>
-    </table>
-    </form>
+       </tr>
+       </table>
+       </form>
 END
-    ;
-    &Header::closebox();
-    &Header::closebigbox();
-    &Header::closepage();
+;
+       &Header::closebox();
+       &Header::closebigbox();
+       &Header::closepage();
 
 sub array_unique($) {
        my $array = shift;
@@ -3017,7 +3089,7 @@ sub make_algos($$$$$) {
                                if ($mode eq "ike") {
                                        push(@algo, $int);
 
-                                       if ($grp =~ m/^e(\d+)/) {
+                                       if ($grp =~ m/^e(.*)$/) {
                                                push(@algo, "ecp$1");
                                        } else {
                                                push(@algo, "modp$grp");
@@ -3030,8 +3102,10 @@ sub make_algos($$$$$) {
                                                push(@algo, $int);
                                        }
 
-                                       if ($grp =~ m/^e\d+/) {
-                                               push(@algo, $grp);
+                                       if ($grp eq "none") {
+                                               # noop
+                                       } elsif ($grp =~ m/^e(.*)$/) {
+                                               push(@algo, "ecp$1");
                                        } else {
                                                push(@algo, "modp$grp");
                                        }
@@ -3044,3 +3118,16 @@ sub make_algos($$$$$) {
 
        return &array_unique(\@algos);
 }
+
+sub make_subnets($) {
+       my $subnets = shift;
+
+       my @nets = split(/\|/, $subnets);
+       my @cidr_nets = ();
+       foreach my $net (@nets) {
+               my $cidr_net = &General::ipcidr($net);
+               push(@cidr_nets, $cidr_net);
+       }
+
+       return join(",", @cidr_nets);
+}
index 4a7fc84f0def61b167eb434feda196e8bef5abda..bb55add70f640e2ce390229db9559393bbd24878 100644 (file)
@@ -232,7 +232,7 @@ else
 print <<END
 <table width='100%'>
 <tr>
-  <td width='15%' class='base'>$Lang::tr{'mac address'}:&nbsp;</td>
+  <td width='15%' class='base'>$Lang::tr{'mac address'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
   <td width='40%'><input type='text' name='CLIENT_MAC' value='$cgiparams{'CLIENT_MAC'}' size='25' /></td>
   <td width='10%' class='base'>$Lang::tr{'interface'}:&nbsp;</td>
   <td align='left'>
@@ -256,7 +256,7 @@ print <<END
   </td>
 </tr>
 <tr>
-  <td width='15%' class='base'>$Lang::tr{'remark'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+  <td width='15%' class='base'>$Lang::tr{'remark'}:</td>
   <td colspan='4' align='left'><input type='text' name='CLIENT_COMMENT' value='$cgiparams{'CLIENT_COMMENT'}' size='40' /></td>
 </tr>
 </table>
@@ -264,7 +264,7 @@ print <<END
 <hr />
 <table width='100%'>
 <tr>
-  <td class='base' valign='top'><img src='/blob.gif' alt='*' />$Lang::tr{'this field may be blank'}</td>
+  <td class='base' valign='top'><img src='/blob.gif' alt='*' />$Lang::tr{'required field'}</td>
   <td width='40%' align='right'>
 END
 ;
index b38171762dafb736acd95cde6f5110bb9bf38f7c..0d50f01b1b49f9d15b2fd9749630d639b781ec45 100644 (file)
 #                                                                             #
 ###############################################################################
 
+use strict;
+
+#usable only the following on debugging purpose
+#use warnings;
+#use CGI::Carp 'fatalsToBrowser';
 use CGI;
 
+require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/lang.pl";
+require "${General::swroot}/header.pl";
+
+
 my $swroot = "/var/ipfire";
 my $apdir  = "$swroot/proxy/advanced";
 my $group_def_file = "$apdir/cre/classrooms";
@@ -30,26 +40,18 @@ my $acl_src_noaccess_mac = "$apdir/acls/src_noaccess_mac.acl";
 
 my $banner = "A D V A N C E D &nbsp; P R O X Y &nbsp; - &nbsp; W E B &nbsp; A C C E S S &nbsp; M A N A G E R";
 my %cgiparams;
-my %mainsettings;
 my %proxysettings;
+my %temp;
 
 my %acl=();
 my @group_defs=();
 my @groups=();
 
 ### Initialize environment
-&readhash("${swroot}/main/settings", \%mainsettings);
 &readhash("${swroot}/proxy/advanced/settings", \%proxysettings);
-$language = $mainsettings{'LANGUAGE'};
 
 ### Initialize language
-if ($language =~ /^(\w+)$/) {$language = $1;}
- #
- # Uncomment this to force a certain language:
- # $language='en';
- #
-require "${swroot}/langs/en.pl";
-require "${swroot}/langs/${language}.pl";
+require "${swroot}/lang.pl";
 
 &getcgihash(\%cgiparams);
 
@@ -58,8 +60,8 @@ require "${swroot}/langs/${language}.pl";
 
 foreach (@groups)
 {
-       if ($cgiparams{$_} eq $tr{'advproxy mode deny'})  { $acl{$_}='on'; }
-       if ($cgiparams{$_} eq $tr{'advproxy mode allow'}) { $acl{$_}='off'; }
+       if ($cgiparams{$_} eq $Lang::tr{'advproxy mode deny'}) { $acl{$_}='on'; }
+       if ($cgiparams{$_} eq $Lang::tr{'advproxy mode allow'}) { $acl{$_}='off'; }
 }
 
 &read_all_groups;
@@ -153,7 +155,7 @@ if (($is_supervisor) && ((defined($proxysettings{'SUPERVISOR_PASSWORD'})) && (!(
 {
 print <<END
                   <td align='center'>
-                     <font face='verdana,arial,helvetica' color='#000000' size='2'>$tr{'advproxy supervisor password'}:</font>
+                     <font face='verdana,arial,helvetica' color='#000000' size='2'>$Lang::tr{'advproxy supervisor password'}:</font>
                   </td>
                   <td align='center'><input type='password' name='PASSWORD' size='15'></td>
 END
@@ -185,11 +187,11 @@ END
                        if ((defined($acl{$_})) && ($acl{$_} eq 'on'))
                        {
                        print "</td><td width='120' align='center'>";
-                               print "<input type='submit' name='$_' value=' $tr{'advproxy mode allow'} '>";
+                               print "<input type='submit' name='$_' value=' $Lang::tr{'advproxy mode allow'} '>";
                        print "</td><td width='16' bgcolor='#D00000'>&nbsp;</td>\n";
                        } else {
                        print "</td><td width='120' align='center'>";
-                               print "<input type='submit' name='$_' value=' $tr{'advproxy mode deny'} '>";
+                               print "<input type='submit' name='$_' value=' $Lang::tr{'advproxy mode deny'} '>";
                        print "</td><td width='16' bgcolor='#00A000'>&nbsp;</td>\n";
                        }
                }
@@ -208,14 +210,14 @@ END
 } else {
             print "      <tr>\n";
             print "         <td align='center'>\n";
-            print "            <font face='verdana,arial,helvetica' color='#000000' size='2'>$tr{'advproxy no cre groups'}</font>\n";
+            print "            <font face='verdana,arial,helvetica' color='#000000' size='2'>$Lang::tr{'advproxy no cre groups'}</font>\n";
             print "         </td>\n";
             print "      </tr>\n";
 }
 } else {
             print "      <tr>\n";
             print "         <td align='center'>\n";
-            print "            <font face='verdana,arial,helvetica' color='#000000' size='2'>$tr{'advproxy cre disabled'}</font>\n";
+            print "            <font face='verdana,arial,helvetica' color='#000000' size='2'>$Lang::tr{'advproxy cre disabled'}</font>\n";
             print "         </td>\n";
             print "      </tr>\n";
 }
index 358f318df08af8559460388cd5760217f785f835..d4592a2a479165f53cba5315ee463effb5f6c2af 100644 (file)
@@ -211,17 +211,17 @@ if ($cgiparams{'ACTION'} eq 'edit') {
 print <<END
 <table width='100%'>
 <tr>
-<td width='25%' class='base'>$Lang::tr{'source ip'}:&nbsp;</td>
+<td width='25%' class='base'>$Lang::tr{'source ip'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
 <td width='25%' ><input type='text' name='SOURCE_IP' value='$cgiparams{'SOURCE_IP'}' size='25' /></td>
 <td width='25%' class='base' align='right'>$Lang::tr{'enabled'}&nbsp;</td>
 <td width='25%'><input type='checkbox' name='ENABLED' $checked{'ENABLED'}{'on'} /></td>
 </tr>
 <tr>
-<td width='25%' class='base'>$Lang::tr{'source'} $Lang::tr{'mac address'}:&nbsp;</td>
+<td width='25%' class='base'>$Lang::tr{'source'} $Lang::tr{'mac address'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
 <td colspan='3'><input type='text' name='SOURCE_MAC' value='$cgiparams{'SOURCE_MAC'}' size='25' /></td>
 </tr>
 <tr>
-<td width='25%' class='base'>$Lang::tr{'remark'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
+<td width='25%' class='base'>$Lang::tr{'remark'}:</td>
 <td colspan='3'><input type='text' name='REMARK' value='$cgiparams{'REMARK'}' size='40' /></td>
 </tr>
 </table>
@@ -229,7 +229,7 @@ print <<END
 <hr>
 <table width='100%'>
 <tr>
-    <td class='base' valign='top'><img src='/blob.gif' alt='*' /> $Lang::tr{'this field may be blank'}</td>
+    <td class='base' valign='top'><img src='/blob.gif' alt='*' /> $Lang::tr{'required field'}</td>
     <td width='40%' align='right'>
       <input type='hidden' name='ACTION' value='add' />
       <input type='submit' name='SUBMIT' value='$buttontext' />
diff --git a/html/html/images/flags/ad.png b/html/html/images/flags/ad.png
deleted file mode 100644 (file)
index ffbe26a..0000000
Binary files a/html/html/images/flags/ad.png and /dev/null differ
diff --git a/html/html/images/flags/ae.png b/html/html/images/flags/ae.png
deleted file mode 100644 (file)
index 0ee169b..0000000
Binary files a/html/html/images/flags/ae.png and /dev/null differ
diff --git a/html/html/images/flags/af.png b/html/html/images/flags/af.png
deleted file mode 100644 (file)
index f6d8f25..0000000
Binary files a/html/html/images/flags/af.png and /dev/null differ
diff --git a/html/html/images/flags/ag.png b/html/html/images/flags/ag.png
deleted file mode 100644 (file)
index 1c731ba..0000000
Binary files a/html/html/images/flags/ag.png and /dev/null differ
diff --git a/html/html/images/flags/ai.png b/html/html/images/flags/ai.png
deleted file mode 100644 (file)
index afc38d9..0000000
Binary files a/html/html/images/flags/ai.png and /dev/null differ
diff --git a/html/html/images/flags/al.png b/html/html/images/flags/al.png
deleted file mode 100644 (file)
index 79d6bac..0000000
Binary files a/html/html/images/flags/al.png and /dev/null differ
diff --git a/html/html/images/flags/am.png b/html/html/images/flags/am.png
deleted file mode 100644 (file)
index 7d57f50..0000000
Binary files a/html/html/images/flags/am.png and /dev/null differ
diff --git a/html/html/images/flags/an.png b/html/html/images/flags/an.png
deleted file mode 100644 (file)
index bf9d233..0000000
Binary files a/html/html/images/flags/an.png and /dev/null differ
diff --git a/html/html/images/flags/ao.png b/html/html/images/flags/ao.png
deleted file mode 100644 (file)
index c971840..0000000
Binary files a/html/html/images/flags/ao.png and /dev/null differ
diff --git a/html/html/images/flags/aq.png b/html/html/images/flags/aq.png
deleted file mode 100644 (file)
index a4f9700..0000000
Binary files a/html/html/images/flags/aq.png and /dev/null differ
diff --git a/html/html/images/flags/ar.png b/html/html/images/flags/ar.png
deleted file mode 100644 (file)
index d3a0d9d..0000000
Binary files a/html/html/images/flags/ar.png and /dev/null differ
diff --git a/html/html/images/flags/as.png b/html/html/images/flags/as.png
deleted file mode 100644 (file)
index d881283..0000000
Binary files a/html/html/images/flags/as.png and /dev/null differ
diff --git a/html/html/images/flags/at.png b/html/html/images/flags/at.png
deleted file mode 100644 (file)
index bd0cbe1..0000000
Binary files a/html/html/images/flags/at.png and /dev/null differ
diff --git a/html/html/images/flags/au.png b/html/html/images/flags/au.png
deleted file mode 100644 (file)
index 65fd911..0000000
Binary files a/html/html/images/flags/au.png and /dev/null differ
diff --git a/html/html/images/flags/aw.png b/html/html/images/flags/aw.png
deleted file mode 100644 (file)
index 1e5aff9..0000000
Binary files a/html/html/images/flags/aw.png and /dev/null differ
diff --git a/html/html/images/flags/az.png b/html/html/images/flags/az.png
deleted file mode 100644 (file)
index f2137c2..0000000
Binary files a/html/html/images/flags/az.png and /dev/null differ
diff --git a/html/html/images/flags/ba.png b/html/html/images/flags/ba.png
deleted file mode 100644 (file)
index 39dbca8..0000000
Binary files a/html/html/images/flags/ba.png and /dev/null differ
diff --git a/html/html/images/flags/bb.png b/html/html/images/flags/bb.png
deleted file mode 100644 (file)
index 726ab5a..0000000
Binary files a/html/html/images/flags/bb.png and /dev/null differ
diff --git a/html/html/images/flags/bd.png b/html/html/images/flags/bd.png
deleted file mode 100644 (file)
index e68816f..0000000
Binary files a/html/html/images/flags/bd.png and /dev/null differ
diff --git a/html/html/images/flags/be.png b/html/html/images/flags/be.png
deleted file mode 100644 (file)
index 2f92d5f..0000000
Binary files a/html/html/images/flags/be.png and /dev/null differ
diff --git a/html/html/images/flags/bf.png b/html/html/images/flags/bf.png
deleted file mode 100644 (file)
index 618fd04..0000000
Binary files a/html/html/images/flags/bf.png and /dev/null differ
diff --git a/html/html/images/flags/bg.png b/html/html/images/flags/bg.png
deleted file mode 100644 (file)
index 70d4b20..0000000
Binary files a/html/html/images/flags/bg.png and /dev/null differ
diff --git a/html/html/images/flags/bh.png b/html/html/images/flags/bh.png
deleted file mode 100644 (file)
index e92bd20..0000000
Binary files a/html/html/images/flags/bh.png and /dev/null differ
diff --git a/html/html/images/flags/bi.png b/html/html/images/flags/bi.png
deleted file mode 100644 (file)
index 3b4ebca..0000000
Binary files a/html/html/images/flags/bi.png and /dev/null differ
diff --git a/html/html/images/flags/bj.png b/html/html/images/flags/bj.png
deleted file mode 100644 (file)
index f6b89d9..0000000
Binary files a/html/html/images/flags/bj.png and /dev/null differ
diff --git a/html/html/images/flags/bm.png b/html/html/images/flags/bm.png
deleted file mode 100644 (file)
index 092852d..0000000
Binary files a/html/html/images/flags/bm.png and /dev/null differ
diff --git a/html/html/images/flags/bn.png b/html/html/images/flags/bn.png
deleted file mode 100644 (file)
index 2cf8b8e..0000000
Binary files a/html/html/images/flags/bn.png and /dev/null differ
diff --git a/html/html/images/flags/bo.png b/html/html/images/flags/bo.png
deleted file mode 100644 (file)
index bcf7986..0000000
Binary files a/html/html/images/flags/bo.png and /dev/null differ
diff --git a/html/html/images/flags/br.png b/html/html/images/flags/br.png
deleted file mode 100644 (file)
index 73e9370..0000000
Binary files a/html/html/images/flags/br.png and /dev/null differ
diff --git a/html/html/images/flags/bs.png b/html/html/images/flags/bs.png
deleted file mode 100644 (file)
index 799df4d..0000000
Binary files a/html/html/images/flags/bs.png and /dev/null differ
diff --git a/html/html/images/flags/bt.png b/html/html/images/flags/bt.png
deleted file mode 100644 (file)
index 796a073..0000000
Binary files a/html/html/images/flags/bt.png and /dev/null differ
diff --git a/html/html/images/flags/bv.png b/html/html/images/flags/bv.png
deleted file mode 100644 (file)
index 90661b4..0000000
Binary files a/html/html/images/flags/bv.png and /dev/null differ
diff --git a/html/html/images/flags/bw.png b/html/html/images/flags/bw.png
deleted file mode 100644 (file)
index 913580d..0000000
Binary files a/html/html/images/flags/bw.png and /dev/null differ
diff --git a/html/html/images/flags/by.png b/html/html/images/flags/by.png
deleted file mode 100644 (file)
index 80cd890..0000000
Binary files a/html/html/images/flags/by.png and /dev/null differ
diff --git a/html/html/images/flags/bz.png b/html/html/images/flags/bz.png
deleted file mode 100644 (file)
index bcfd37e..0000000
Binary files a/html/html/images/flags/bz.png and /dev/null differ
diff --git a/html/html/images/flags/ca.png b/html/html/images/flags/ca.png
deleted file mode 100644 (file)
index 0a50034..0000000
Binary files a/html/html/images/flags/ca.png and /dev/null differ
diff --git a/html/html/images/flags/cc.png b/html/html/images/flags/cc.png
deleted file mode 100644 (file)
index 6e29f45..0000000
Binary files a/html/html/images/flags/cc.png and /dev/null differ
diff --git a/html/html/images/flags/cd.png b/html/html/images/flags/cd.png
deleted file mode 100644 (file)
index daa30a3..0000000
Binary files a/html/html/images/flags/cd.png and /dev/null differ
diff --git a/html/html/images/flags/cf.png b/html/html/images/flags/cf.png
deleted file mode 100644 (file)
index d31de15..0000000
Binary files a/html/html/images/flags/cf.png and /dev/null differ
diff --git a/html/html/images/flags/cg.png b/html/html/images/flags/cg.png
deleted file mode 100644 (file)
index 1d712ff..0000000
Binary files a/html/html/images/flags/cg.png and /dev/null differ
diff --git a/html/html/images/flags/ch.png b/html/html/images/flags/ch.png
deleted file mode 100644 (file)
index b5b5902..0000000
Binary files a/html/html/images/flags/ch.png and /dev/null differ
diff --git a/html/html/images/flags/ci.png b/html/html/images/flags/ci.png
deleted file mode 100644 (file)
index 3f34f51..0000000
Binary files a/html/html/images/flags/ci.png and /dev/null differ
diff --git a/html/html/images/flags/ck.png b/html/html/images/flags/ck.png
deleted file mode 100644 (file)
index c86af2c..0000000
Binary files a/html/html/images/flags/ck.png and /dev/null differ
diff --git a/html/html/images/flags/cl.png b/html/html/images/flags/cl.png
deleted file mode 100644 (file)
index 194fd91..0000000
Binary files a/html/html/images/flags/cl.png and /dev/null differ
diff --git a/html/html/images/flags/cm.png b/html/html/images/flags/cm.png
deleted file mode 100644 (file)
index 00fc991..0000000
Binary files a/html/html/images/flags/cm.png and /dev/null differ
diff --git a/html/html/images/flags/cn.png b/html/html/images/flags/cn.png
deleted file mode 100644 (file)
index e9e8261..0000000
Binary files a/html/html/images/flags/cn.png and /dev/null differ
diff --git a/html/html/images/flags/co.png b/html/html/images/flags/co.png
deleted file mode 100644 (file)
index cba9e49..0000000
Binary files a/html/html/images/flags/co.png and /dev/null differ
diff --git a/html/html/images/flags/cr.png b/html/html/images/flags/cr.png
deleted file mode 100644 (file)
index 9088a35..0000000
Binary files a/html/html/images/flags/cr.png and /dev/null differ
diff --git a/html/html/images/flags/cs.png b/html/html/images/flags/cs.png
deleted file mode 100644 (file)
index bbd5aca..0000000
Binary files a/html/html/images/flags/cs.png and /dev/null differ
diff --git a/html/html/images/flags/cu.png b/html/html/images/flags/cu.png
deleted file mode 100644 (file)
index ff1b7ea..0000000
Binary files a/html/html/images/flags/cu.png and /dev/null differ
diff --git a/html/html/images/flags/cv.png b/html/html/images/flags/cv.png
deleted file mode 100644 (file)
index 49e7738..0000000
Binary files a/html/html/images/flags/cv.png and /dev/null differ
diff --git a/html/html/images/flags/cx.png b/html/html/images/flags/cx.png
deleted file mode 100644 (file)
index a64c13f..0000000
Binary files a/html/html/images/flags/cx.png and /dev/null differ
diff --git a/html/html/images/flags/cy.png b/html/html/images/flags/cy.png
deleted file mode 100644 (file)
index c3a559c..0000000
Binary files a/html/html/images/flags/cy.png and /dev/null differ
diff --git a/html/html/images/flags/cz.png b/html/html/images/flags/cz.png
deleted file mode 100644 (file)
index 5caf0ec..0000000
Binary files a/html/html/images/flags/cz.png and /dev/null differ
diff --git a/html/html/images/flags/de.png b/html/html/images/flags/de.png
deleted file mode 100644 (file)
index b142f7b..0000000
Binary files a/html/html/images/flags/de.png and /dev/null differ
diff --git a/html/html/images/flags/dj.png b/html/html/images/flags/dj.png
deleted file mode 100644 (file)
index c71b38f..0000000
Binary files a/html/html/images/flags/dj.png and /dev/null differ
diff --git a/html/html/images/flags/dk.png b/html/html/images/flags/dk.png
deleted file mode 100644 (file)
index b2b9b12..0000000
Binary files a/html/html/images/flags/dk.png and /dev/null differ
diff --git a/html/html/images/flags/dm.png b/html/html/images/flags/dm.png
deleted file mode 100644 (file)
index 0b1aab6..0000000
Binary files a/html/html/images/flags/dm.png and /dev/null differ
diff --git a/html/html/images/flags/do.png b/html/html/images/flags/do.png
deleted file mode 100644 (file)
index 5afc6d0..0000000
Binary files a/html/html/images/flags/do.png and /dev/null differ
diff --git a/html/html/images/flags/dz.png b/html/html/images/flags/dz.png
deleted file mode 100644 (file)
index 9132046..0000000
Binary files a/html/html/images/flags/dz.png and /dev/null differ
diff --git a/html/html/images/flags/ec.png b/html/html/images/flags/ec.png
deleted file mode 100644 (file)
index bdae8d2..0000000
Binary files a/html/html/images/flags/ec.png and /dev/null differ
diff --git a/html/html/images/flags/ee.png b/html/html/images/flags/ee.png
deleted file mode 100644 (file)
index 516e5a3..0000000
Binary files a/html/html/images/flags/ee.png and /dev/null differ
diff --git a/html/html/images/flags/eg.png b/html/html/images/flags/eg.png
deleted file mode 100644 (file)
index 0f47afc..0000000
Binary files a/html/html/images/flags/eg.png and /dev/null differ
diff --git a/html/html/images/flags/eh.png b/html/html/images/flags/eh.png
deleted file mode 100644 (file)
index 927b3cb..0000000
Binary files a/html/html/images/flags/eh.png and /dev/null differ
diff --git a/html/html/images/flags/er.png b/html/html/images/flags/er.png
deleted file mode 100644 (file)
index 10ded53..0000000
Binary files a/html/html/images/flags/er.png and /dev/null differ
diff --git a/html/html/images/flags/es.png b/html/html/images/flags/es.png
deleted file mode 100644 (file)
index 40cbfa6..0000000
Binary files a/html/html/images/flags/es.png and /dev/null differ
diff --git a/html/html/images/flags/et.png b/html/html/images/flags/et.png
deleted file mode 100644 (file)
index 17a252e..0000000
Binary files a/html/html/images/flags/et.png and /dev/null differ
diff --git a/html/html/images/flags/eu.png b/html/html/images/flags/eu.png
deleted file mode 100644 (file)
index 4c09a5a..0000000
Binary files a/html/html/images/flags/eu.png and /dev/null differ
diff --git a/html/html/images/flags/fi.png b/html/html/images/flags/fi.png
deleted file mode 100644 (file)
index 78b9ab6..0000000
Binary files a/html/html/images/flags/fi.png and /dev/null differ
diff --git a/html/html/images/flags/fj.png b/html/html/images/flags/fj.png
deleted file mode 100644 (file)
index a02aaa3..0000000
Binary files a/html/html/images/flags/fj.png and /dev/null differ
diff --git a/html/html/images/flags/fk.png b/html/html/images/flags/fk.png
deleted file mode 100644 (file)
index b6189f9..0000000
Binary files a/html/html/images/flags/fk.png and /dev/null differ
diff --git a/html/html/images/flags/fm.png b/html/html/images/flags/fm.png
deleted file mode 100644 (file)
index 7302d22..0000000
Binary files a/html/html/images/flags/fm.png and /dev/null differ
diff --git a/html/html/images/flags/fo.png b/html/html/images/flags/fo.png
deleted file mode 100644 (file)
index 6bb5557..0000000
Binary files a/html/html/images/flags/fo.png and /dev/null differ
diff --git a/html/html/images/flags/fr.png b/html/html/images/flags/fr.png
deleted file mode 100644 (file)
index bfd4a21..0000000
Binary files a/html/html/images/flags/fr.png and /dev/null differ
diff --git a/html/html/images/flags/ga.png b/html/html/images/flags/ga.png
deleted file mode 100644 (file)
index 18eed1a..0000000
Binary files a/html/html/images/flags/ga.png and /dev/null differ
diff --git a/html/html/images/flags/gb.png b/html/html/images/flags/gb.png
deleted file mode 100644 (file)
index db134f1..0000000
Binary files a/html/html/images/flags/gb.png and /dev/null differ
diff --git a/html/html/images/flags/gd.png b/html/html/images/flags/gd.png
deleted file mode 100644 (file)
index bde8e2e..0000000
Binary files a/html/html/images/flags/gd.png and /dev/null differ
diff --git a/html/html/images/flags/ge.png b/html/html/images/flags/ge.png
deleted file mode 100644 (file)
index cf5a612..0000000
Binary files a/html/html/images/flags/ge.png and /dev/null differ
diff --git a/html/html/images/flags/gf.png b/html/html/images/flags/gf.png
deleted file mode 100644 (file)
index df12fb4..0000000
Binary files a/html/html/images/flags/gf.png and /dev/null differ
diff --git a/html/html/images/flags/gh.png b/html/html/images/flags/gh.png
deleted file mode 100644 (file)
index e47b266..0000000
Binary files a/html/html/images/flags/gh.png and /dev/null differ
diff --git a/html/html/images/flags/gi.png b/html/html/images/flags/gi.png
deleted file mode 100644 (file)
index d3f23b3..0000000
Binary files a/html/html/images/flags/gi.png and /dev/null differ
diff --git a/html/html/images/flags/gl.png b/html/html/images/flags/gl.png
deleted file mode 100644 (file)
index 565c7a1..0000000
Binary files a/html/html/images/flags/gl.png and /dev/null differ
diff --git a/html/html/images/flags/gm.png b/html/html/images/flags/gm.png
deleted file mode 100644 (file)
index cdecab3..0000000
Binary files a/html/html/images/flags/gm.png and /dev/null differ
diff --git a/html/html/images/flags/gn.png b/html/html/images/flags/gn.png
deleted file mode 100644 (file)
index 56db38e..0000000
Binary files a/html/html/images/flags/gn.png and /dev/null differ
diff --git a/html/html/images/flags/gp.png b/html/html/images/flags/gp.png
deleted file mode 100644 (file)
index d7fbdfc..0000000
Binary files a/html/html/images/flags/gp.png and /dev/null differ
diff --git a/html/html/images/flags/gq.png b/html/html/images/flags/gq.png
deleted file mode 100644 (file)
index 71496cd..0000000
Binary files a/html/html/images/flags/gq.png and /dev/null differ
diff --git a/html/html/images/flags/gr.png b/html/html/images/flags/gr.png
deleted file mode 100644 (file)
index cf10a25..0000000
Binary files a/html/html/images/flags/gr.png and /dev/null differ
diff --git a/html/html/images/flags/gs.png b/html/html/images/flags/gs.png
deleted file mode 100644 (file)
index 6fd7edf..0000000
Binary files a/html/html/images/flags/gs.png and /dev/null differ
diff --git a/html/html/images/flags/gt.png b/html/html/images/flags/gt.png
deleted file mode 100644 (file)
index 2be4460..0000000
Binary files a/html/html/images/flags/gt.png and /dev/null differ
diff --git a/html/html/images/flags/gu.png b/html/html/images/flags/gu.png
deleted file mode 100644 (file)
index 2e6f0e0..0000000
Binary files a/html/html/images/flags/gu.png and /dev/null differ
diff --git a/html/html/images/flags/gw.png b/html/html/images/flags/gw.png
deleted file mode 100644 (file)
index ae52ec3..0000000
Binary files a/html/html/images/flags/gw.png and /dev/null differ
diff --git a/html/html/images/flags/gy.png b/html/html/images/flags/gy.png
deleted file mode 100644 (file)
index 1b20de4..0000000
Binary files a/html/html/images/flags/gy.png and /dev/null differ
diff --git a/html/html/images/flags/hk.png b/html/html/images/flags/hk.png
deleted file mode 100644 (file)
index d5435b6..0000000
Binary files a/html/html/images/flags/hk.png and /dev/null differ
diff --git a/html/html/images/flags/hm.png b/html/html/images/flags/hm.png
deleted file mode 100644 (file)
index ec0d223..0000000
Binary files a/html/html/images/flags/hm.png and /dev/null differ
diff --git a/html/html/images/flags/hn.png b/html/html/images/flags/hn.png
deleted file mode 100644 (file)
index 56e0b02..0000000
Binary files a/html/html/images/flags/hn.png and /dev/null differ
diff --git a/html/html/images/flags/hr.png b/html/html/images/flags/hr.png
deleted file mode 100644 (file)
index bd133ba..0000000
Binary files a/html/html/images/flags/hr.png and /dev/null differ
diff --git a/html/html/images/flags/ht.png b/html/html/images/flags/ht.png
deleted file mode 100644 (file)
index a982940..0000000
Binary files a/html/html/images/flags/ht.png and /dev/null differ
diff --git a/html/html/images/flags/hu.png b/html/html/images/flags/hu.png
deleted file mode 100644 (file)
index fd76de3..0000000
Binary files a/html/html/images/flags/hu.png and /dev/null differ
diff --git a/html/html/images/flags/id.png b/html/html/images/flags/id.png
deleted file mode 100644 (file)
index cf72330..0000000
Binary files a/html/html/images/flags/id.png and /dev/null differ
diff --git a/html/html/images/flags/ie.png b/html/html/images/flags/ie.png
deleted file mode 100644 (file)
index ddbbc74..0000000
Binary files a/html/html/images/flags/ie.png and /dev/null differ
diff --git a/html/html/images/flags/il.png b/html/html/images/flags/il.png
deleted file mode 100644 (file)
index 52dc8d3..0000000
Binary files a/html/html/images/flags/il.png and /dev/null differ
diff --git a/html/html/images/flags/in.png b/html/html/images/flags/in.png
deleted file mode 100644 (file)
index 771f217..0000000
Binary files a/html/html/images/flags/in.png and /dev/null differ
diff --git a/html/html/images/flags/io.png b/html/html/images/flags/io.png
deleted file mode 100644 (file)
index 96bc118..0000000
Binary files a/html/html/images/flags/io.png and /dev/null differ
diff --git a/html/html/images/flags/iq.png b/html/html/images/flags/iq.png
deleted file mode 100644 (file)
index 3097303..0000000
Binary files a/html/html/images/flags/iq.png and /dev/null differ
diff --git a/html/html/images/flags/ir.png b/html/html/images/flags/ir.png
deleted file mode 100644 (file)
index 395b28a..0000000
Binary files a/html/html/images/flags/ir.png and /dev/null differ
diff --git a/html/html/images/flags/is.png b/html/html/images/flags/is.png
deleted file mode 100644 (file)
index ea1c493..0000000
Binary files a/html/html/images/flags/is.png and /dev/null differ
diff --git a/html/html/images/flags/it.png b/html/html/images/flags/it.png
deleted file mode 100644 (file)
index de7427b..0000000
Binary files a/html/html/images/flags/it.png and /dev/null differ
diff --git a/html/html/images/flags/jm.png b/html/html/images/flags/jm.png
deleted file mode 100644 (file)
index 2a8a899..0000000
Binary files a/html/html/images/flags/jm.png and /dev/null differ
diff --git a/html/html/images/flags/jo.png b/html/html/images/flags/jo.png
deleted file mode 100644 (file)
index dbdca50..0000000
Binary files a/html/html/images/flags/jo.png and /dev/null differ
diff --git a/html/html/images/flags/jp.png b/html/html/images/flags/jp.png
deleted file mode 100644 (file)
index 5e342fd..0000000
Binary files a/html/html/images/flags/jp.png and /dev/null differ
diff --git a/html/html/images/flags/ke.png b/html/html/images/flags/ke.png
deleted file mode 100644 (file)
index d55331a..0000000
Binary files a/html/html/images/flags/ke.png and /dev/null differ
diff --git a/html/html/images/flags/kg.png b/html/html/images/flags/kg.png
deleted file mode 100644 (file)
index 230b1f6..0000000
Binary files a/html/html/images/flags/kg.png and /dev/null differ
diff --git a/html/html/images/flags/kh.png b/html/html/images/flags/kh.png
deleted file mode 100644 (file)
index 2ad8e35..0000000
Binary files a/html/html/images/flags/kh.png and /dev/null differ
diff --git a/html/html/images/flags/ki.png b/html/html/images/flags/ki.png
deleted file mode 100644 (file)
index 244104a..0000000
Binary files a/html/html/images/flags/ki.png and /dev/null differ
diff --git a/html/html/images/flags/km.png b/html/html/images/flags/km.png
deleted file mode 100644 (file)
index eb69544..0000000
Binary files a/html/html/images/flags/km.png and /dev/null differ
diff --git a/html/html/images/flags/kn.png b/html/html/images/flags/kn.png
deleted file mode 100644 (file)
index 3ce4018..0000000
Binary files a/html/html/images/flags/kn.png and /dev/null differ
diff --git a/html/html/images/flags/kp.png b/html/html/images/flags/kp.png
deleted file mode 100644 (file)
index f53c71a..0000000
Binary files a/html/html/images/flags/kp.png and /dev/null differ
diff --git a/html/html/images/flags/kr.png b/html/html/images/flags/kr.png
deleted file mode 100644 (file)
index 2b4e7b9..0000000
Binary files a/html/html/images/flags/kr.png and /dev/null differ
diff --git a/html/html/images/flags/kw.png b/html/html/images/flags/kw.png
deleted file mode 100644 (file)
index 19c8dc2..0000000
Binary files a/html/html/images/flags/kw.png and /dev/null differ
diff --git a/html/html/images/flags/ky.png b/html/html/images/flags/ky.png
deleted file mode 100644 (file)
index fa5ba07..0000000
Binary files a/html/html/images/flags/ky.png and /dev/null differ
diff --git a/html/html/images/flags/kz.png b/html/html/images/flags/kz.png
deleted file mode 100644 (file)
index f90f0ef..0000000
Binary files a/html/html/images/flags/kz.png and /dev/null differ
diff --git a/html/html/images/flags/la.png b/html/html/images/flags/la.png
deleted file mode 100644 (file)
index c3e9154..0000000
Binary files a/html/html/images/flags/la.png and /dev/null differ
diff --git a/html/html/images/flags/lb.png b/html/html/images/flags/lb.png
deleted file mode 100644 (file)
index e18a577..0000000
Binary files a/html/html/images/flags/lb.png and /dev/null differ
diff --git a/html/html/images/flags/lc.png b/html/html/images/flags/lc.png
deleted file mode 100644 (file)
index 78c606f..0000000
Binary files a/html/html/images/flags/lc.png and /dev/null differ
diff --git a/html/html/images/flags/li.png b/html/html/images/flags/li.png
deleted file mode 100644 (file)
index e991d1f..0000000
Binary files a/html/html/images/flags/li.png and /dev/null differ
diff --git a/html/html/images/flags/lk.png b/html/html/images/flags/lk.png
deleted file mode 100644 (file)
index f9e227f..0000000
Binary files a/html/html/images/flags/lk.png and /dev/null differ
diff --git a/html/html/images/flags/lr.png b/html/html/images/flags/lr.png
deleted file mode 100644 (file)
index 1c826c8..0000000
Binary files a/html/html/images/flags/lr.png and /dev/null differ
diff --git a/html/html/images/flags/ls.png b/html/html/images/flags/ls.png
deleted file mode 100644 (file)
index bd78c5b..0000000
Binary files a/html/html/images/flags/ls.png and /dev/null differ
diff --git a/html/html/images/flags/lt.png b/html/html/images/flags/lt.png
deleted file mode 100644 (file)
index 212d16b..0000000
Binary files a/html/html/images/flags/lt.png and /dev/null differ
diff --git a/html/html/images/flags/lu.png b/html/html/images/flags/lu.png
deleted file mode 100644 (file)
index 7182373..0000000
Binary files a/html/html/images/flags/lu.png and /dev/null differ
diff --git a/html/html/images/flags/lv.png b/html/html/images/flags/lv.png
deleted file mode 100644 (file)
index fa94bb2..0000000
Binary files a/html/html/images/flags/lv.png and /dev/null differ
diff --git a/html/html/images/flags/ly.png b/html/html/images/flags/ly.png
deleted file mode 100644 (file)
index 7afd8a6..0000000
Binary files a/html/html/images/flags/ly.png and /dev/null differ
diff --git a/html/html/images/flags/ma.png b/html/html/images/flags/ma.png
deleted file mode 100644 (file)
index 05448bf..0000000
Binary files a/html/html/images/flags/ma.png and /dev/null differ
diff --git a/html/html/images/flags/mc.png b/html/html/images/flags/mc.png
deleted file mode 100644 (file)
index c6f5809..0000000
Binary files a/html/html/images/flags/mc.png and /dev/null differ
diff --git a/html/html/images/flags/md.png b/html/html/images/flags/md.png
deleted file mode 100644 (file)
index e100650..0000000
Binary files a/html/html/images/flags/md.png and /dev/null differ
diff --git a/html/html/images/flags/mg.png b/html/html/images/flags/mg.png
deleted file mode 100644 (file)
index 080b0d4..0000000
Binary files a/html/html/images/flags/mg.png and /dev/null differ
diff --git a/html/html/images/flags/mh.png b/html/html/images/flags/mh.png
deleted file mode 100644 (file)
index 132ad60..0000000
Binary files a/html/html/images/flags/mh.png and /dev/null differ
diff --git a/html/html/images/flags/mk.png b/html/html/images/flags/mk.png
deleted file mode 100644 (file)
index acf5e44..0000000
Binary files a/html/html/images/flags/mk.png and /dev/null differ
diff --git a/html/html/images/flags/ml.png b/html/html/images/flags/ml.png
deleted file mode 100644 (file)
index cf0412f..0000000
Binary files a/html/html/images/flags/ml.png and /dev/null differ
diff --git a/html/html/images/flags/mm.png b/html/html/images/flags/mm.png
deleted file mode 100644 (file)
index 6467831..0000000
Binary files a/html/html/images/flags/mm.png and /dev/null differ
diff --git a/html/html/images/flags/mn.png b/html/html/images/flags/mn.png
deleted file mode 100644 (file)
index 81f355b..0000000
Binary files a/html/html/images/flags/mn.png and /dev/null differ
diff --git a/html/html/images/flags/mo.png b/html/html/images/flags/mo.png
deleted file mode 100644 (file)
index 8a033f3..0000000
Binary files a/html/html/images/flags/mo.png and /dev/null differ
diff --git a/html/html/images/flags/mp.png b/html/html/images/flags/mp.png
deleted file mode 100644 (file)
index 1bf8975..0000000
Binary files a/html/html/images/flags/mp.png and /dev/null differ
diff --git a/html/html/images/flags/mq.png b/html/html/images/flags/mq.png
deleted file mode 100644 (file)
index 00a8cc4..0000000
Binary files a/html/html/images/flags/mq.png and /dev/null differ
diff --git a/html/html/images/flags/mr.png b/html/html/images/flags/mr.png
deleted file mode 100644 (file)
index 5c40c89..0000000
Binary files a/html/html/images/flags/mr.png and /dev/null differ
diff --git a/html/html/images/flags/ms.png b/html/html/images/flags/ms.png
deleted file mode 100644 (file)
index 82dfd87..0000000
Binary files a/html/html/images/flags/ms.png and /dev/null differ
diff --git a/html/html/images/flags/mt.png b/html/html/images/flags/mt.png
deleted file mode 100644 (file)
index df86154..0000000
Binary files a/html/html/images/flags/mt.png and /dev/null differ
diff --git a/html/html/images/flags/mu.png b/html/html/images/flags/mu.png
deleted file mode 100644 (file)
index b146f38..0000000
Binary files a/html/html/images/flags/mu.png and /dev/null differ
diff --git a/html/html/images/flags/mv.png b/html/html/images/flags/mv.png
deleted file mode 100644 (file)
index 9d8704b..0000000
Binary files a/html/html/images/flags/mv.png and /dev/null differ
diff --git a/html/html/images/flags/mw.png b/html/html/images/flags/mw.png
deleted file mode 100644 (file)
index ddbe257..0000000
Binary files a/html/html/images/flags/mw.png and /dev/null differ
diff --git a/html/html/images/flags/mx.png b/html/html/images/flags/mx.png
deleted file mode 100644 (file)
index d69e87f..0000000
Binary files a/html/html/images/flags/mx.png and /dev/null differ
diff --git a/html/html/images/flags/my.png b/html/html/images/flags/my.png
deleted file mode 100644 (file)
index 54534e9..0000000
Binary files a/html/html/images/flags/my.png and /dev/null differ
diff --git a/html/html/images/flags/mz.png b/html/html/images/flags/mz.png
deleted file mode 100644 (file)
index bc3cf9b..0000000
Binary files a/html/html/images/flags/mz.png and /dev/null differ
diff --git a/html/html/images/flags/na.png b/html/html/images/flags/na.png
deleted file mode 100644 (file)
index f44ed28..0000000
Binary files a/html/html/images/flags/na.png and /dev/null differ
diff --git a/html/html/images/flags/nc.png b/html/html/images/flags/nc.png
deleted file mode 100644 (file)
index ee025d7..0000000
Binary files a/html/html/images/flags/nc.png and /dev/null differ
diff --git a/html/html/images/flags/ne.png b/html/html/images/flags/ne.png
deleted file mode 100644 (file)
index aeb771d..0000000
Binary files a/html/html/images/flags/ne.png and /dev/null differ
diff --git a/html/html/images/flags/nf.png b/html/html/images/flags/nf.png
deleted file mode 100644 (file)
index 2f9ae94..0000000
Binary files a/html/html/images/flags/nf.png and /dev/null differ
diff --git a/html/html/images/flags/ng.png b/html/html/images/flags/ng.png
deleted file mode 100644 (file)
index cc4dcd1..0000000
Binary files a/html/html/images/flags/ng.png and /dev/null differ
diff --git a/html/html/images/flags/ni.png b/html/html/images/flags/ni.png
deleted file mode 100644 (file)
index f679bf2..0000000
Binary files a/html/html/images/flags/ni.png and /dev/null differ
diff --git a/html/html/images/flags/nl.png b/html/html/images/flags/nl.png
deleted file mode 100644 (file)
index b0e12c2..0000000
Binary files a/html/html/images/flags/nl.png and /dev/null differ
diff --git a/html/html/images/flags/no.png b/html/html/images/flags/no.png
deleted file mode 100644 (file)
index de11ab7..0000000
Binary files a/html/html/images/flags/no.png and /dev/null differ
diff --git a/html/html/images/flags/np.png b/html/html/images/flags/np.png
deleted file mode 100644 (file)
index eb365c9..0000000
Binary files a/html/html/images/flags/np.png and /dev/null differ
diff --git a/html/html/images/flags/nr.png b/html/html/images/flags/nr.png
deleted file mode 100644 (file)
index 12f0cfe..0000000
Binary files a/html/html/images/flags/nr.png and /dev/null differ
diff --git a/html/html/images/flags/nu.png b/html/html/images/flags/nu.png
deleted file mode 100644 (file)
index 99ce198..0000000
Binary files a/html/html/images/flags/nu.png and /dev/null differ
diff --git a/html/html/images/flags/nz.png b/html/html/images/flags/nz.png
deleted file mode 100644 (file)
index c50ae5f..0000000
Binary files a/html/html/images/flags/nz.png and /dev/null differ
diff --git a/html/html/images/flags/om.png b/html/html/images/flags/om.png
deleted file mode 100644 (file)
index 0076b11..0000000
Binary files a/html/html/images/flags/om.png and /dev/null differ
diff --git a/html/html/images/flags/pa.png b/html/html/images/flags/pa.png
deleted file mode 100644 (file)
index ea4adb2..0000000
Binary files a/html/html/images/flags/pa.png and /dev/null differ
diff --git a/html/html/images/flags/pe.png b/html/html/images/flags/pe.png
deleted file mode 100644 (file)
index 38563b8..0000000
Binary files a/html/html/images/flags/pe.png and /dev/null differ
diff --git a/html/html/images/flags/pf.png b/html/html/images/flags/pf.png
deleted file mode 100644 (file)
index 832a5da..0000000
Binary files a/html/html/images/flags/pf.png and /dev/null differ
diff --git a/html/html/images/flags/pg.png b/html/html/images/flags/pg.png
deleted file mode 100644 (file)
index 96da94f..0000000
Binary files a/html/html/images/flags/pg.png and /dev/null differ
diff --git a/html/html/images/flags/ph.png b/html/html/images/flags/ph.png
deleted file mode 100644 (file)
index c8868b6..0000000
Binary files a/html/html/images/flags/ph.png and /dev/null differ
diff --git a/html/html/images/flags/pk.png b/html/html/images/flags/pk.png
deleted file mode 100644 (file)
index d86edf1..0000000
Binary files a/html/html/images/flags/pk.png and /dev/null differ
diff --git a/html/html/images/flags/pl.png b/html/html/images/flags/pl.png
deleted file mode 100644 (file)
index 251ee0a..0000000
Binary files a/html/html/images/flags/pl.png and /dev/null differ
diff --git a/html/html/images/flags/pm.png b/html/html/images/flags/pm.png
deleted file mode 100644 (file)
index 3d23d0e..0000000
Binary files a/html/html/images/flags/pm.png and /dev/null differ
diff --git a/html/html/images/flags/pn.png b/html/html/images/flags/pn.png
deleted file mode 100644 (file)
index b39911c..0000000
Binary files a/html/html/images/flags/pn.png and /dev/null differ
diff --git a/html/html/images/flags/pr.png b/html/html/images/flags/pr.png
deleted file mode 100644 (file)
index 2877e34..0000000
Binary files a/html/html/images/flags/pr.png and /dev/null differ
diff --git a/html/html/images/flags/ps.png b/html/html/images/flags/ps.png
deleted file mode 100644 (file)
index 7080b85..0000000
Binary files a/html/html/images/flags/ps.png and /dev/null differ
diff --git a/html/html/images/flags/pt.png b/html/html/images/flags/pt.png
deleted file mode 100644 (file)
index c61d7ca..0000000
Binary files a/html/html/images/flags/pt.png and /dev/null differ
diff --git a/html/html/images/flags/pw.png b/html/html/images/flags/pw.png
deleted file mode 100644 (file)
index 063d17f..0000000
Binary files a/html/html/images/flags/pw.png and /dev/null differ
diff --git a/html/html/images/flags/py.png b/html/html/images/flags/py.png
deleted file mode 100644 (file)
index 7bc1c87..0000000
Binary files a/html/html/images/flags/py.png and /dev/null differ
diff --git a/html/html/images/flags/qa.png b/html/html/images/flags/qa.png
deleted file mode 100644 (file)
index 9619da6..0000000
Binary files a/html/html/images/flags/qa.png and /dev/null differ
diff --git a/html/html/images/flags/re.png b/html/html/images/flags/re.png
deleted file mode 100644 (file)
index 422ee9d..0000000
Binary files a/html/html/images/flags/re.png and /dev/null differ
diff --git a/html/html/images/flags/ro.png b/html/html/images/flags/ro.png
deleted file mode 100644 (file)
index 7f72dd8..0000000
Binary files a/html/html/images/flags/ro.png and /dev/null differ
diff --git a/html/html/images/flags/ru.png b/html/html/images/flags/ru.png
deleted file mode 100644 (file)
index c76f646..0000000
Binary files a/html/html/images/flags/ru.png and /dev/null differ
diff --git a/html/html/images/flags/rw.png b/html/html/images/flags/rw.png
deleted file mode 100644 (file)
index b05833b..0000000
Binary files a/html/html/images/flags/rw.png and /dev/null differ
diff --git a/html/html/images/flags/sa.png b/html/html/images/flags/sa.png
deleted file mode 100644 (file)
index 1771430..0000000
Binary files a/html/html/images/flags/sa.png and /dev/null differ
diff --git a/html/html/images/flags/sb.png b/html/html/images/flags/sb.png
deleted file mode 100644 (file)
index e1ca39b..0000000
Binary files a/html/html/images/flags/sb.png and /dev/null differ
diff --git a/html/html/images/flags/sc.png b/html/html/images/flags/sc.png
deleted file mode 100644 (file)
index 0d42691..0000000
Binary files a/html/html/images/flags/sc.png and /dev/null differ
diff --git a/html/html/images/flags/sd.png b/html/html/images/flags/sd.png
deleted file mode 100644 (file)
index d9a8e94..0000000
Binary files a/html/html/images/flags/sd.png and /dev/null differ
diff --git a/html/html/images/flags/se.png b/html/html/images/flags/se.png
deleted file mode 100644 (file)
index 56f8579..0000000
Binary files a/html/html/images/flags/se.png and /dev/null differ
diff --git a/html/html/images/flags/sg.png b/html/html/images/flags/sg.png
deleted file mode 100644 (file)
index debeda7..0000000
Binary files a/html/html/images/flags/sg.png and /dev/null differ
diff --git a/html/html/images/flags/sh.png b/html/html/images/flags/sh.png
deleted file mode 100644 (file)
index 070cd3b..0000000
Binary files a/html/html/images/flags/sh.png and /dev/null differ
diff --git a/html/html/images/flags/si.png b/html/html/images/flags/si.png
deleted file mode 100644 (file)
index a8525d4..0000000
Binary files a/html/html/images/flags/si.png and /dev/null differ
diff --git a/html/html/images/flags/sj.png b/html/html/images/flags/sj.png
deleted file mode 100644 (file)
index 2b44b90..0000000
Binary files a/html/html/images/flags/sj.png and /dev/null differ
diff --git a/html/html/images/flags/sk.png b/html/html/images/flags/sk.png
deleted file mode 100644 (file)
index 9477a58..0000000
Binary files a/html/html/images/flags/sk.png and /dev/null differ
diff --git a/html/html/images/flags/sl.png b/html/html/images/flags/sl.png
deleted file mode 100644 (file)
index 9178f63..0000000
Binary files a/html/html/images/flags/sl.png and /dev/null differ
diff --git a/html/html/images/flags/sm.png b/html/html/images/flags/sm.png
deleted file mode 100644 (file)
index 9dc99fa..0000000
Binary files a/html/html/images/flags/sm.png and /dev/null differ
diff --git a/html/html/images/flags/sn.png b/html/html/images/flags/sn.png
deleted file mode 100644 (file)
index 0f0e66c..0000000
Binary files a/html/html/images/flags/sn.png and /dev/null differ
diff --git a/html/html/images/flags/so.png b/html/html/images/flags/so.png
deleted file mode 100644 (file)
index 680bfc2..0000000
Binary files a/html/html/images/flags/so.png and /dev/null differ
diff --git a/html/html/images/flags/sr.png b/html/html/images/flags/sr.png
deleted file mode 100644 (file)
index 339bbb6..0000000
Binary files a/html/html/images/flags/sr.png and /dev/null differ
diff --git a/html/html/images/flags/st.png b/html/html/images/flags/st.png
deleted file mode 100644 (file)
index 3b6db16..0000000
Binary files a/html/html/images/flags/st.png and /dev/null differ
diff --git a/html/html/images/flags/sv.png b/html/html/images/flags/sv.png
deleted file mode 100644 (file)
index d71be3e..0000000
Binary files a/html/html/images/flags/sv.png and /dev/null differ
diff --git a/html/html/images/flags/sy.png b/html/html/images/flags/sy.png
deleted file mode 100644 (file)
index 5b350b7..0000000
Binary files a/html/html/images/flags/sy.png and /dev/null differ
diff --git a/html/html/images/flags/sz.png b/html/html/images/flags/sz.png
deleted file mode 100644 (file)
index 48deaaf..0000000
Binary files a/html/html/images/flags/sz.png and /dev/null differ
diff --git a/html/html/images/flags/tc.png b/html/html/images/flags/tc.png
deleted file mode 100644 (file)
index 6e164c3..0000000
Binary files a/html/html/images/flags/tc.png and /dev/null differ
diff --git a/html/html/images/flags/td.png b/html/html/images/flags/td.png
deleted file mode 100644 (file)
index 0fb0e32..0000000
Binary files a/html/html/images/flags/td.png and /dev/null differ
diff --git a/html/html/images/flags/tf.png b/html/html/images/flags/tf.png
deleted file mode 100644 (file)
index d986c06..0000000
Binary files a/html/html/images/flags/tf.png and /dev/null differ
diff --git a/html/html/images/flags/tg.png b/html/html/images/flags/tg.png
deleted file mode 100644 (file)
index 354772f..0000000
Binary files a/html/html/images/flags/tg.png and /dev/null differ
diff --git a/html/html/images/flags/th.png b/html/html/images/flags/th.png
deleted file mode 100644 (file)
index 88e94a0..0000000
Binary files a/html/html/images/flags/th.png and /dev/null differ
diff --git a/html/html/images/flags/tj.png b/html/html/images/flags/tj.png
deleted file mode 100644 (file)
index dd802f0..0000000
Binary files a/html/html/images/flags/tj.png and /dev/null differ
diff --git a/html/html/images/flags/tk.png b/html/html/images/flags/tk.png
deleted file mode 100644 (file)
index 233a7af..0000000
Binary files a/html/html/images/flags/tk.png and /dev/null differ
diff --git a/html/html/images/flags/tl.png b/html/html/images/flags/tl.png
deleted file mode 100644 (file)
index 2216921..0000000
Binary files a/html/html/images/flags/tl.png and /dev/null differ
diff --git a/html/html/images/flags/tm.png b/html/html/images/flags/tm.png
deleted file mode 100644 (file)
index efc4867..0000000
Binary files a/html/html/images/flags/tm.png and /dev/null differ
diff --git a/html/html/images/flags/tn.png b/html/html/images/flags/tn.png
deleted file mode 100644 (file)
index 7dc6df9..0000000
Binary files a/html/html/images/flags/tn.png and /dev/null differ
diff --git a/html/html/images/flags/to.png b/html/html/images/flags/to.png
deleted file mode 100644 (file)
index 27df6fd..0000000
Binary files a/html/html/images/flags/to.png and /dev/null differ
diff --git a/html/html/images/flags/tp.png b/html/html/images/flags/tp.png
deleted file mode 100644 (file)
index f612ed8..0000000
Binary files a/html/html/images/flags/tp.png and /dev/null differ
diff --git a/html/html/images/flags/tr.png b/html/html/images/flags/tr.png
deleted file mode 100644 (file)
index ca88f97..0000000
Binary files a/html/html/images/flags/tr.png and /dev/null differ
diff --git a/html/html/images/flags/tt.png b/html/html/images/flags/tt.png
deleted file mode 100644 (file)
index 37d38fe..0000000
Binary files a/html/html/images/flags/tt.png and /dev/null differ
diff --git a/html/html/images/flags/tv.png b/html/html/images/flags/tv.png
deleted file mode 100644 (file)
index b86f1bc..0000000
Binary files a/html/html/images/flags/tv.png and /dev/null differ
diff --git a/html/html/images/flags/tw.png b/html/html/images/flags/tw.png
deleted file mode 100644 (file)
index 85eb1ff..0000000
Binary files a/html/html/images/flags/tw.png and /dev/null differ
diff --git a/html/html/images/flags/tz.png b/html/html/images/flags/tz.png
deleted file mode 100644 (file)
index 2b0880a..0000000
Binary files a/html/html/images/flags/tz.png and /dev/null differ
diff --git a/html/html/images/flags/ua.png b/html/html/images/flags/ua.png
deleted file mode 100644 (file)
index 46b0aaf..0000000
Binary files a/html/html/images/flags/ua.png and /dev/null differ
diff --git a/html/html/images/flags/ug.png b/html/html/images/flags/ug.png
deleted file mode 100644 (file)
index 22dd07f..0000000
Binary files a/html/html/images/flags/ug.png and /dev/null differ
diff --git a/html/html/images/flags/um.png b/html/html/images/flags/um.png
deleted file mode 100644 (file)
index e959d31..0000000
Binary files a/html/html/images/flags/um.png and /dev/null differ
diff --git a/html/html/images/flags/us.png b/html/html/images/flags/us.png
deleted file mode 100644 (file)
index cebf562..0000000
Binary files a/html/html/images/flags/us.png and /dev/null differ
diff --git a/html/html/images/flags/uy.png b/html/html/images/flags/uy.png
deleted file mode 100644 (file)
index 3aed8f7..0000000
Binary files a/html/html/images/flags/uy.png and /dev/null differ
diff --git a/html/html/images/flags/uz.png b/html/html/images/flags/uz.png
deleted file mode 100644 (file)
index 1c9ca15..0000000
Binary files a/html/html/images/flags/uz.png and /dev/null differ
diff --git a/html/html/images/flags/va.png b/html/html/images/flags/va.png
deleted file mode 100644 (file)
index fd3984b..0000000
Binary files a/html/html/images/flags/va.png and /dev/null differ
diff --git a/html/html/images/flags/vc.png b/html/html/images/flags/vc.png
deleted file mode 100644 (file)
index 230ef4c..0000000
Binary files a/html/html/images/flags/vc.png and /dev/null differ
diff --git a/html/html/images/flags/ve.png b/html/html/images/flags/ve.png
deleted file mode 100644 (file)
index 292db90..0000000
Binary files a/html/html/images/flags/ve.png and /dev/null differ
diff --git a/html/html/images/flags/vg.png b/html/html/images/flags/vg.png
deleted file mode 100644 (file)
index 5c0acd3..0000000
Binary files a/html/html/images/flags/vg.png and /dev/null differ
diff --git a/html/html/images/flags/vi.png b/html/html/images/flags/vi.png
deleted file mode 100644 (file)
index a9a9c6b..0000000
Binary files a/html/html/images/flags/vi.png and /dev/null differ
diff --git a/html/html/images/flags/vn.png b/html/html/images/flags/vn.png
deleted file mode 100644 (file)
index 20ef1c2..0000000
Binary files a/html/html/images/flags/vn.png and /dev/null differ
diff --git a/html/html/images/flags/vu.png b/html/html/images/flags/vu.png
deleted file mode 100644 (file)
index 0ce47d0..0000000
Binary files a/html/html/images/flags/vu.png and /dev/null differ
diff --git a/html/html/images/flags/wf.png b/html/html/images/flags/wf.png
deleted file mode 100644 (file)
index 98cf4f5..0000000
Binary files a/html/html/images/flags/wf.png and /dev/null differ
diff --git a/html/html/images/flags/ws.png b/html/html/images/flags/ws.png
deleted file mode 100644 (file)
index 9d8cc2c..0000000
Binary files a/html/html/images/flags/ws.png and /dev/null differ
diff --git a/html/html/images/flags/ye.png b/html/html/images/flags/ye.png
deleted file mode 100644 (file)
index 09199ca..0000000
Binary files a/html/html/images/flags/ye.png and /dev/null differ
diff --git a/html/html/images/flags/yt.png b/html/html/images/flags/yt.png
deleted file mode 100644 (file)
index 2fdd8d4..0000000
Binary files a/html/html/images/flags/yt.png and /dev/null differ
diff --git a/html/html/images/flags/yu.png b/html/html/images/flags/yu.png
deleted file mode 100644 (file)
index 0560483..0000000
Binary files a/html/html/images/flags/yu.png and /dev/null differ
diff --git a/html/html/images/flags/za.png b/html/html/images/flags/za.png
deleted file mode 100644 (file)
index 77f4aa5..0000000
Binary files a/html/html/images/flags/za.png and /dev/null differ
diff --git a/html/html/images/flags/zm.png b/html/html/images/flags/zm.png
deleted file mode 100644 (file)
index b053a8d..0000000
Binary files a/html/html/images/flags/zm.png and /dev/null differ
diff --git a/html/html/images/flags/zw.png b/html/html/images/flags/zw.png
deleted file mode 100644 (file)
index 98095df..0000000
Binary files a/html/html/images/flags/zw.png and /dev/null differ
index 737e051e7abacc9569a060cd4380ff74a7217138..7d803b6ad3aa872a6981fc6f45a1fe131264a965 100644 (file)
@@ -227,7 +227,7 @@ END
     if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') {
         print "<h1><span>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</span></h1><br />"; 
     } else {
-                               print "<h1><span>-= IPFire =-</span></h1><br />";
+                               print "<h1><span><a href='http://www.ipfire.org' style='text-decoration: none;'>-= IPFire =-</a></span></h1><br />";
                }
                print <<END
                        <h2>+ $h2 +</h2>
index 14010306bd21b31967caa61614089d8d730d7504..528825329ffdb486c3a0fdc015fbe3ed9b707c94 100644 (file)
@@ -227,7 +227,7 @@ END
     if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') {
         print "<h1><span>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</span></h1><br />"; 
     } else {
-                                print "<h1><span>IPFire</span></h1><br />";
+                                print "<h1><span><a href='http://www.ipfire.org' style='text-decoration: none;'>IPFire</a></span></h1><br />";
                 }
                 print <<END
                         <h2>$h2</h2>
index e0ac3cd1168c9869397f266638acc40aeff5ee01..1cc18f8978bfdc7d736bc59b3a27bc2ac2812ecf 100644 (file)
@@ -115,7 +115,6 @@ iframe {
 #logo {
        height: 65px;
        margin-top: 1em;
-       background: url('../../images/tux2.png') no-repeat;
 }
 
 #logo h1 {
index 63740d42d8385cf008b86d30d6fd2d376bca5329..eedf069dda153450192f952197413fa7aad85fe1 100644 (file)
@@ -152,12 +152,14 @@ print <<END
        <body>
                <div id="header" class="fixed">
                        <div id="logo">
+                               <a href="http://www.ipfire.org" style="text-decoration: none;">
+                                       <img src="/themes/ipfire/images/tux2.png" style="float:left; margin-left: -3px; margin-top: -3px;"/>
 END
 ;
        if ($settings{'WINDOWWITHHOSTNAME'} ne 'off') {
-               print "<h1>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</h1>";
+               print "</a><h1>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</h1>";
        } else {
-               print "<h1>IPFire</h1>";
+               print "<h1>IPFire</h1></a>";
        }
 
 print <<END
diff --git a/html/html/themes/maniac/images/Thumbs.db b/html/html/themes/maniac/images/Thumbs.db
deleted file mode 100644 (file)
index 37ec790..0000000
Binary files a/html/html/themes/maniac/images/Thumbs.db and /dev/null differ
index e8514adfbf8e241de29c14353f6f9303523e0e7b..4866fcd0c7ac67ec800cb9613553a382a23d944f 100644 (file)
@@ -227,7 +227,7 @@ END
     if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') {
         print "<h1><span>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</span></h1><br />"; 
     } else {
-                               print "<h1><span>-= IPFire =-</span></h1><br />";
+                               print "<h1><span><a href='http://www.ipfire.org' style='text-decoration: none;'>-= IPFire =-</a></span></h1><br />";
                }
                print <<END
                        <h2>+ $h2 +</h2>
index 33f959cb7550ce65ddb943052154e40be3537ae8..7c330bb0fe1d00e8e0eccb09ea9a124eeae89445 100644 (file)
 'dhcp advopt removed' => 'DHCP Option entfernt',
 'dhcp advopt scope' => 'Options-Wertebereich',
 'dhcp advopt scope global' => 'Global',
-'dhcp advopt scope help' => 'Globaler Bereich oder begenze Bereich auf überprüfte Schnittstellen',
+'dhcp advopt scope help' => 'Globaler Bereich oder begrenze Bereich auf überprüfte Schnittstellen',
 'dhcp advopt unknown' => 'Name der DHCP Option wurde nicht erkannt',
 'dhcp advopt value' => 'Optionswert',
 'dhcp allow bootp' => 'BOOTP Clients zulassen',
 'dhcp bootp pxe data' => 'Geben Sie optionale BOOTP PXE-Daten für diese feste Zuordnung ein',
 'dhcp configuration' => 'DHCP-Konfiguration',
 'dhcp create fixed leases' => 'Feste Zuordnungen erzeugen',
+'dhcp dns enable update' => 'DNS-Update (RFC2136) aktivieren:',
+'dhcp dns key name' => 'Schlüsselname:',
+'dhcp dns update' => 'DNS-Update',
+'dhcp dns update algo' => 'Algorithmus:',
+'dhcp dns update secret' => 'Schlüssel:',
 'dhcp fixed lease err1' => 'Für eine feste Zuordnung müssen entweder die Hardware Adresse (MAC-Adresse) oder der Hostname oder beide eingetragen werden.',
 'dhcp fixed lease help1' => 'IP Adressen können als FQDN angegeben werden.',
 'dhcp mode' => 'DHCP',
 'display traffic at home' => 'Berechneten Traffic auf der Startseite anzeigen',
 'display webinterface effects' => 'Überblendeffekte einschalten',
 'dl client arch' => 'Client Paket herunterladen (zip)',
+'dl client arch insecure' => 'Ungesichertes Client-Paket herunterladen (zip)',
 'dmz' => 'DMZ',
 'dmz pinhole configuration' => 'Einstellungen des DMZ-Schlupfloches',
 'dmz pinhole rule added' => 'Regel für DMZ-Schlupfloch hinzugefügt; Starte DMZ-Schlupfloch neu',
 'edit share' => 'Freigabe bearbeiten',
 'editor' => 'Editor',
 'eg' => 'z.B.:',
+'email config' => 'Konfiguration',
+'email empty field' => 'Leeres Feld',
+'email error' => 'ERROR: Testmail konnte nicht versendet werden',
+'email invalid' => 'Ungültiges Feld',
+'email invalid mailfqdn' => 'Ungültiger FQDN für Mailserver',
+'email invalid mailip' => 'Ungültige IP-Adresse für Mailserver',
+'email invalid mailport' => 'Ungültiger Port für Mailserver',
+'email mailaddr' => 'Mailserver-Adresse',
+'email mailpass' => 'Passwort',
+'email mailport' => 'Mailserver-Port',
+'email mailrcpt' => 'E-Mail-Empfänger',
+'email mailsender' => 'E-Mail-Absender',
+'email mailuser' => 'Benutzername',
 'email server can not be empty' => 'Email-Server darf nicht leer sein',
+'email settings' => 'Mailversand',
+'email subject' => 'IPFire Testmail',
+'email success' => 'Testmail erfolgreich versendet',
+'email testmail' => 'Testnachricht senden',
+'email text' => 'Testnachricht vom IPFire Mailversand.',
+'email tls' => 'TLS aktivieren',
+'email usemail' => 'Mailversand aktivieren',
 'emailreportlevel' => 'Email-Reportlevel',
 'empty' => 'Dieses Feld kann leer bleiben',
 'empty profile' => 'Unbenannt',
 'ppp setup' => 'PPP-Einstellungen',
 'pppoe' => 'PPPoE',
 'pppoe settings' => 'Zusätzliche PPPoE-Einstellungen:',
+'pptp netconfig' => 'Eigene Netzkonfiguration',
+'pptp peer' => 'Gegenstelle',
+'pptp route' => 'PPTP-Route',
 'pptp settings' => 'Zusätzliche PPTP-Einstellungen:',
 'pre-shared key is too short' => 'Pre-shared Schlüsel ist zu kurz',
 'prefered master' => 'Prefered Master',
 'reportlevel' => 'Report Level',
 'request' => 'Abfrage',
 'requested data' => '1. Verbindungs-Einstellungen',
+'required field' => 'Pflichtfeld',
 'reserved dst port' => 'Dieser Zielport ist für die ausschließliche Benutzung durch IPFire reserviert:',
 'reserved src port' => 'Dieser Quellport ist für die ausschließliche Benutzung durch IPFire reserviert:',
 'reset' => 'Zurücksetzen',
 'save settings' => 'Einstellungen speichern',
 'save-adv-options' => 'Erweiterte Optionen speichern',
 'script name' => 'Skriptname:',
+'search' => 'Suchen',
 'secondary dns' => 'Sekundärer DNS:',
 'secondary ntp server' => 'Sekundärer NTP-Server',
 'secondary wins server address' => 'Sekundäre WINS-Server Adresse',
 'there are updates available' => 'Für Ihr System sind Programm-Updates verfügbar. Es wird dringend empfohlen, daß Sie Ihr System baldmöglichst aktualisieren.',
 'there was no file upload' => 'Es wurde keine Datei hochgeladen',
 'this feature has been sponsored by' => 'Diese Funktion wurde gesponsort von',
-'this field may be blank' => 'Dieses Feld kann leer bleiben.',
 'this is not a valid archive' => 'Dies ist kein gültiges Archiv.',
 'this is not an authorised update' => 'Dies ist kein autorisiertes Update.',
 'this months volume' => 'Diesen Monat',
 'urlfilter whitelist always allowed' => 'Erlaube angepasste Whitelist für gesperrte Clients',
 'urlfilter wrong filetype' => 'Die Datei hat nicht die Erweiterung .tar.gz',
 'use' => 'Einsatz',
-'use a pre-shared key' => 'Verwenden Sie einen Pre-Shared Schlüssel:',
+'use a pre-shared key' => 'Pre-Shared-Key verwenden:',
 'use dov' => 'DOV (Data Over Voice) benutzen:',
 'use ibod' => 'Bandwidth on Demand (iBOD) benutzen:',
 'use ipfire red ip' => 'Die klassische ROTE IP, welche von IPFire während der Verbindung verwendet wird',
-'use only proposed settings' => 'Verwenden Sie nur die vorgeschlagenen Einstellungen.',
+'use only proposed settings' => 'Nur die vorgeschlagenen Einstellungen verwenden',
 'used' => 'Benutzt',
 'used memory' => 'Genutzter Speicher',
 'used swap' => 'Genutzter Swap',
 'vpn statistic n2n' => 'OpenVPN-Netz-zu-Netz-Statistik',
 'vpn statistic rw' => 'OpenVPN-Roadwarrior-Statistik',
 'vpn subjectaltname' => 'Subjekt Alternativer Name',
-'vpn vhost' => 'Roadwarrior virtuelle IP (manchmal auch Inner-IP genannt)',
 'vpn watch' => 'Netz-zu-Netz VPN neu starten, wenn sich Remote-IP ändert (DynDNS).',
 'waiting to synchronize clock' => 'Bitte warten, die Uhr wird synchronisiert',
 'warn when traffic reaches' => 'Warnen wenn Traffic x % erreicht',
index cdb6e5b7fcf4471c926019b3478e276faa80c28a..23f63102bf014ec57d3949aee5ac3adaa9f0746d 100644 (file)
 'dhcp bootp pxe data' => 'Enter optional bootp pxe data for this fixed lease',
 'dhcp configuration' => 'DHCP configuration',
 'dhcp create fixed leases' => 'Create fixed leases',
+'dhcp dns enable update' => 'Enable DNS Update (RFC2136):',
+'dhcp dns key name' => 'Key Name:',
+'dhcp dns update' => 'DNS Update',
+'dhcp dns update algo' => 'Algorithm:',
+'dhcp dns update secret' => 'Secret:',
 'dhcp fixed lease err1' => 'For a fix lease you have to enter the MAC address or the hostname, or you enter both.',
 'dhcp fixed lease help1' => 'IP Addresses might be entered as FQDN',
 'dhcp mode' => 'DHCP',
 'display traffic at home' => 'Display calculated traffic on startpage',
 'display webinterface effects' => 'Activate effects',
 'dl client arch' => 'Download Client Package (zip)',
+'dl client arch insecure' => 'Download insecure Client Package (zip)',
 'dmz' => 'DMZ',
 'dmz pinhole configuration' => 'DMZ pinhole configuration',
 'dmz pinhole rule added' => 'DMZ pinhole rule added; restarting DMZ pinhole',
 'edit share' => 'Edit share',
 'editor' => 'Editor',
 'eg' => 'e.g.:',
+'email config' => 'Configuration',
+'email empty field' => 'Empty field',
+'email error' => 'ERROR: Testmail could not be sent',
+'email invalid' => 'Invalid field',
+'email invalid mailfqdn' => 'Invalid mailserver fqdn',
+'email invalid mailip' => 'Invalid mailserver IP address',
+'email invalid mailport' => 'Invalid mailserver port',
+'email mailaddr' => 'Mailserver address',
+'email mailpass' => 'Password',
+'email mailport' => 'Mailserver port',
+'email mailrcpt' => 'Mail recipient',
+'email mailsender' => 'Mail sender',
+'email mailuser' => 'Username',
 'email server can not be empty' => 'E-mail server can not be empty',
+'email settings' => 'Mailservice',
+'email subject' => 'IPFire Testmail',
+'email success' => 'Testmail successfully sent',
+'email testmail' => 'Send testmail',
+'email text' => 'Testmail from IPFire Mailservice.',
+'email tls' => 'Use TLS',
+'email usemail' => 'Activate Mailservice',
 'emailreportlevel' => 'E-mailreportlevel',
 'emerging rules' => 'Emergingthreats.net Community Rules',
 'empty' => 'This field may be left blank',
 'no modem selected' => 'No modem selected',
 'no set selected' => 'No set was selected',
 'no time limit' => 'unlimited time',
+'none' => 'none',
 'none found' => 'none found',
 'nonetworkname' => 'No Network Name entered',
 'noservicename' => 'No Service Name entered',
 'ppp setup' => 'PPP setup',
 'pppoe' => 'PPPoE',
 'pppoe settings' => 'Additional PPPoE settings:',
+'pptp netconfig' => 'My Net Config',
+'pptp peer' => 'Peer',
+'pptp route' => 'PPTP Route',
 'pptp settings' => 'Additional PPTP settings:',
 'pre-shared key is too short' => 'Pre-shared key is too short.',
 'prefered master' => 'Prefered Master',
 'reportlevel' => 'Reportlevel',
 'request' => 'Request',
 'requested data' => '1. Connection Settings:',
+'required field' => 'Required field',
 'reserved dst port' => 'Destination port is reserved for IPFire use only:',
 'reserved src port' => 'Source port is reserved for IPFire use only:',
 'reset' => 'Reset',
 'save settings' => 'Save settings',
 'save-adv-options' => 'Save advanced options',
 'script name' => 'Script name:',
+'search' => 'Search',
 'secondary dns' => 'Secondary DNS:',
 'secondary ntp server' => 'Secondary NTP server',
 'secondary wins server address' => 'Secondary WINS server address',
 'there are updates available' => 'There are updates available for your system. It is strongly urged that you install them as soon as possible.',
 'there was no file upload' => 'There was no file upload.',
 'this feature has been sponsored by' => 'This feature has been sponsored by',
-'this field may be blank' => 'This field may be blank.',
 'this is not a valid archive' => 'This is not a valid archive.',
 'this is not an authorised update' => 'This is not an authorised update.',
 'this months volume' => 'This months volume',
 'vpn configuration main' => 'VPN Configuration',
 'vpn delayed start' => 'Delay before launching VPN (seconds)',
 'vpn delayed start help' => 'If required, this delay can be used to allow dynamic DNS updates to propagate properly. 60 is a common value when RED is a dynamic IP.',
+'vpn force mobike' => 'Force using MOBIKE (only IKEv2)',
 'vpn incompatible use of defaultroute' => 'hostname=%defaultroute not allowed',
 'vpn keyexchange' => 'Keyexchange',
 'vpn local id' => 'Local ID',
 'vpn statistic n2n' => 'OpenVPN Net-to-Net Statistics',
 'vpn statistic rw' => 'OpenVPN Roadwarrior Statistics',
 'vpn subjectaltname' => 'Subject Alt Name',
-'vpn vhost' => 'Roadwarrior virtual IP (sometimes called Inner-IP)',
 'vpn watch' => 'Restart net-to-net vpn when remote peer IP changes (dyndns).',
 'waiting to synchronize clock' => 'Waiting to synchronize clock',
 'warn when traffic reaches' => 'Warn when traffic reaches x %',
index 90f4237fbb87c8c7274d40ec20759d08e6f476b1..e24e75e56b99886129d478ddf777653ace6a3c3b 100644 (file)
 'there are updates available' => 'Existen actualizaciones disponibles para su sistema. Se recomienda encarecidamente que las instala a la brevedad posible.',
 'there was no file upload' => 'No había archivo para cargar.',
 'this feature has been sponsored by' => 'Esta característica ha sido patrocinada por',
-'this field may be blank' => 'Este campo se puede dejar en blanco',
 'this is not a valid archive' => 'No es un archivo válido.',
 'this is not an authorised update' => 'No es una actualización autorizada.',
 'this months volume' => 'Volúmen de este mes',
 'vpn red name' => 'Dirección IP pública o FQDN para la interfaz RED o<%defaultroute>',
 'vpn remote id' => 'ID Remoto',
 'vpn subjectaltname' => 'Nombre alternativo en Asunto',
-'vpn vhost' => 'IP virtual Roadwarris (también referida como ip-interior)',
 'vpn watch' => 'Reinciar vpn net-to-net cuando la ip remota cambie (dyndns)',
 'waiting to synchronize clock' => 'Esperando sincronización con el reloj',
 'warn when traffic reaches' => 'Advertir cuando el tráfico alcance x %',
index 40053a061f6e0693ba37657e10be13c58f5148a9..0d173aef34f5ae17af6decd9bf9d5e16576b0390 100644 (file)
 'there are updates available' => 'Plusieurs mises à jour sont disponibles pour votre système. Il est recommandé de les installer aussi vite que possible.',
 'there was no file upload' => 'Il n\'y a pas eu de fichier envoyé.',
 'this feature has been sponsored by' => 'Cette fonctionnalité a été sponsorisée par',
-'this field may be blank' => 'Ce champ peut être vide.',
 'this is not a valid archive' => 'Ceci n\'est pas une archive valide.',
 'this is not an authorised update' => 'Ce n\'est pas une mise à jour autorisée.',
 'this months volume' => 'Le volume mensuel',
 'vpn red name' => 'IP publique ou nom de domaine complet pour l\'interface ROUGE ou <%defaultroute>',
 'vpn remote id' => 'ID Distant',
 'vpn subjectaltname' => 'Subject Alt Name',
-'vpn vhost' => 'IP Virtuelle Roadwarrior (parfois appelée Inner-IP)',
 'vpn watch' => 'Redémarrer net-to-net VPN si IP hôte distant change (dyndns).',
 'waiting to synchronize clock' => 'Attendre la synchronisation de l\'horloge',
 'warn when traffic reaches' => 'Avertir lorsque le trafic atteint x %',
index 4fde313762f3cbf2aa151078bcd77513f963a8a7..950f70026713b0d8264d9bc90c138ce7e8b38cab 100644 (file)
 'there are updates available' => 'There are updates available for your system. It is strongly urged that you install them as soon as possible.',
 'there was no file upload' => 'There was no file upload.',
 'this feature has been sponsored by' => 'This feature has been sponsored by',
-'this field may be blank' => 'Questo campo pu&ograve; essere vuoto.',
 'this is not a valid archive' => 'This is not a valid archive.',
 'this is not an authorised update' => 'This is not an authorised update.',
 'this months volume' => 'This months volume',
 'vpn red name' => 'IP pubblico o il nome di dominio completo per l\'interfaccia RED o <%defaultroute>',
 'vpn remote id' => 'Remote ID',
 'vpn subjectaltname' => 'Subject Alt Name',
-'vpn vhost' => 'Roadwarrior virtual IP (sometimes called Inner-IP)',
 'vpn watch' => 'Restart net-to-net vpn when remote peer IP changes (dyndns).',
 'waiting to synchronize clock' => 'Waiting to synchronize clock',
 'warn when traffic reaches' => 'Warn when traffic reaches x %',
index 7468eb9162b1dbe2325e14f9df081443554e94ac..9d90a0815c94094e4be3a1ef83b89ec8738c7148 100644 (file)
 'there are updates available' => 'Er zijn updates beschikbaar voor uw systeem. Het wordt aangeraden om deze zo snel mogelijk te installeren.',
 'there was no file upload' => 'Er is geen bestand geüpload.',
 'this feature has been sponsored by' => 'Deze feature wordt gesponsord door',
-'this field may be blank' => 'Dit veld mag leeg blijven.',
 'this is not a valid archive' => 'Dit is geen geldig archief.',
 'this is not an authorised update' => 'Dit is geen geautoriseerde update.',
 'this months volume' => 'Volume van deze maand',
 'vpn red name' => 'Publiek IP of FQDN voor RODE interface of <%defaultroute>',
 'vpn remote id' => 'Remote ID',
 'vpn subjectaltname' => 'Onderwerp Alt Naam',
-'vpn vhost' => 'Roadwarrior virtual IP (Ook wel Inner-IP genoemd)',
 'vpn watch' => 'Herstart net-to-net vpn wanneer remote peer IP verandert (dyndns).',
 'waiting to synchronize clock' => 'Wachten op synchronisatie van klok',
 'warn when traffic reaches' => 'Waarschuw wanneer verkeer x % bereikt',
index 02fb531cf46bd798a514622b14d2e4295a8b2273..47abf2c5f48e682c944fb8978780032c8538afb3 100644 (file)
 'there are updates available' => 'Dostępne są nowe aktualizacje dla twojego systemu. Zalecane jest wykonanie aktualizacji tak szybko jak to możliwe',
 'there was no file upload' => 'Nie wgrano żadnego pliku.',
 'this feature has been sponsored by' => 'Ta funkcjonalność jest sponsorowana przez',
-'this field may be blank' => 'To pole może być puste.',
 'this is not a valid archive' => 'Nie odnaleziono poprawnego archiwum.',
 'this is not an authorised update' => 'To nie jest autoryzowana aktualizacja.',
 'this months volume' => 'Ilość w tym miesiącu',
 'vpn red name' => 'Publiczne IP lub FQDN interfejsu RED lub <%defaultroute>',
 'vpn remote id' => 'Zdalne ID',
 'vpn subjectaltname' => 'Subject Alt Name',
-'vpn vhost' => 'Roadwarrior virtual IP (sometimes called Inner-IP)',
 'vpn watch' => 'Uruchom ponownie vpn net-to-net kiedy zmieni się IP zdalnej końcówki (dyndns).',
 'waiting to synchronize clock' => 'Oczekiwanie na synchronizację zegara',
 'warn when traffic reaches' => 'Ostrzegaj kiedy ruch osiągnie x %',
index a2a3693884f32806fbcdc388aeb549acb7859c2e..6840f81207146cf630a442b3bc4428ec239e50d6 100644 (file)
 'there are updates available' => 'There are updates available for your system. It is strongly urged that you install them as soon as possible.',
 'there was no file upload' => 'There was no file upload.',
 'this feature has been sponsored by' => 'This feature has been sponsored by',
-'this field may be blank' => 'Эти поля могут остаться пустыми.',
 'this is not a valid archive' => 'This is not a valid archive.',
 'this is not an authorised update' => 'This is not an authorised update.',
 'this months volume' => 'This months volume',
 'vpn red name' => 'Внешний IP или FQDN для RED интерфейса или <%defaultroute>',
 'vpn remote id' => 'Удалённый ID',
 'vpn subjectaltname' => 'Subject Alt Name',
-'vpn vhost' => 'Roadwarrior virtual IP (sometimes called Inner-IP)',
 'vpn watch' => 'Перезапускать net-to-net vpn когда удалённый IP меняется (dyndns).',
 'waiting to synchronize clock' => 'Ожидается синхронизация',
 'warn when traffic reaches' => 'Предупреждать когда трафик возрастает до x %',
index 89f753ed6d806c589b5629fe6a19b89230b5d717..3af233961f4334382ca1710028c9ebb65ad43209 100644 (file)
@@ -9,7 +9,7 @@
 'Async logging enabled' => 'Syslog dosyanın eşzamansız yazmasını aktifleştirin',
 'Choose Rule' => 'Aşağıdaki kurallardan <u>birini</u> seçin.',
 'Class' => 'Sınıf',
-'Class was deleted' => 'with potential subclasses was deleted',
+'Class was deleted' => 'Potansiyel alt sınıfları ile silindi',
 'ConnSched action' => 'Eylem:',
 'ConnSched add action' => 'Eylem ekle',
 'ConnSched change profile title' => 'Profili değitirin:',
 'bit' => 'Bit',
 'bitrate' => 'Bit hızı',
 'bleeding rules' => 'Bleeding Edge Snort Rules',
+'block' => 'Engelle',
 'blue' => 'MAVİ',
 'blue access' => 'Mavi Erişim',
 'blue access use hint' => 'Bu MAC ya da cihaz için bir IP adresi girmeniz gerekir. Ayrıca her ikiside girilebilir.',
 'chain' => 'Zincir',
 'change passwords' => 'Parola değiştir',
 'change share' => 'paylaşım seçeneklerini düzenle',
+'check all' => 'Tümünü seç',
 'check for net traffic update' => 'Ağ-Trafik güncelleştirmeleri denetle',
 'check vpn lr' => 'Kontrol',
 'choose config' => 'Yapılandırmayı seçin',
 'dhcp bootp pxe data' => 'Sabit kira için isteğe bağlı bootp pxe verileri girin',
 'dhcp configuration' => 'DHCP yapılandırması',
 'dhcp create fixed leases' => 'Sabit kiralama oluştur',
+'dhcp dns enable update' => 'DNS güncelleştirmesini aktifleştir (RFC2136):',
+'dhcp dns key name' => 'Anahtar adı:',
+'dhcp dns update' => 'DNS güncelleme',
+'dhcp dns update algo' => 'Algoritma:',
+'dhcp dns update secret' => 'Gizli:',
 'dhcp fixed lease err1' => 'Bu düzeltme için MAC adresini, ana bilgisayar adını veya her ikisinide girmeniz gerekir',
 'dhcp fixed lease help1' => 'IP adresleri tam tanımlanmış alan adları (FQDN) şeklinde girilmelidir.',
 'dhcp mode' => 'DHCP',
 'display traffic at home' => 'Başlangıç sayfasının üzerinde hesaplanan trafiği göster',
 'display webinterface effects' => 'Efektleri aktifleştir',
 'dl client arch' => 'İstemci paketlerini indir (zip)',
+'dl client arch insecure' => 'Güvenli olamayan istemci paketini indir (zip)',
 'dmz' => 'AÇIK BÖLGE',
 'dmz pinhole configuration' => 'Açık bölge yapılandırma',
 'dmz pinhole rule added' => 'Açık bölge kuralı eklendi; Açık bölge yeniden başlatılıyor',
 'edit share' => 'Paylaşımı düzenle',
 'editor' => 'Düzenleyici',
 'eg' => 'e.g.:',
+'email config' => 'Ayarlar',
+'email empty field' => 'Boş alan',
+'email error' => 'HATA: Test e-posta gönderilemedi',
+'email invalid' => 'Geçersiz alan',
+'email invalid mailfqdn' => 'Geçersiz e-posta sunucu fqdn si',
+'email invalid mailip' => 'Geçersiz posta sunucusu IP adresi',
+'email invalid mailport' => 'Geçersiz posta sunucusu bağlantı noktası',
+'email mailaddr' => 'Posta sunucu adresi',
+'email mailpass' => 'Parola',
+'email mailport' => 'Posta sunucu bağlantı noktası',
+'email mailrcpt' => 'Posta alıcısı',
+'email mailsender' => 'Posta göndericisi',
+'email mailuser' => 'Kullanıcı adı',
 'email server can not be empty' => 'E-posta sunucusu boş olamaz',
+'email settings' => 'E-posta Hizmeti',
+'email subject' => 'IPFire Test E-posta',
+'email success' => 'Test e-posta başarıyla gönderildi',
+'email testmail' => 'Test e-posta gönder',
+'email text' => 'IpFire e-posta servisinden test e-posta.',
+'email tls' => 'TLS kullan',
+'email usemail' => 'Posta hizmetini aktifleştir',
 'emailreportlevel' => 'E-posta rapor seviyesi',
 'emerging rules' => 'Emergingthreats.net Topluluk Kuralları',
 'empty' => 'Bu alan boş bırakılabilir',
 'fwhost OpenVPN static host' => 'OpenVPN statik ana bilgisayar',
 'fwhost OpenVPN static network' => 'OpenVPN statik ağ',
 'fwhost Standard Network' => 'Standart ağ',
+'fwhost addgeoipgrp' => 'Yeni GeoIP grubu ekle',
 'fwhost addgrp' => 'Yeni ağ/ana bilgisayar grubu ekle:',
 'fwhost addgrpname' => 'Grup adı:',
 'fwhost addhost' => 'Yeni bir ana bilgisayar ekle:',
 'fwhost change' => 'Değiştir',
 'fwhost changeremark' => 'Sadece açıklamalar değiştirilmiş',
 'fwhost cust addr' => 'Ana bilgisayarlar',
+'fwhost cust geoip' => 'GeoIP Grupları',
+'fwhost cust geoipgroup' => 'GeoIP Grupları',
+'fwhost cust geoiplocation' => 'GeoIP Konumları',
 'fwhost cust grp' => 'Ağ/Ana Bilgisayar Grupları:',
 'fwhost cust net' => 'Ağlar',
 'fwhost cust service' => 'Hizmetler:',
 'fwhost ipsec net' => 'IPsec ağları:',
 'fwhost menu' => 'Güvenlik Duvarı Grupları',
 'fwhost netaddress' => 'Ağ adresi',
+'fwhost newgeoipgrp' => 'GeoIP Grupları',
 'fwhost newgrp' => 'Ağ/Ana Bilgisayar Grupları',
 'fwhost newhost' => 'Ana Bilgisayarlar',
 'fwhost newnet' => 'Ağlar',
 'generating the root and host certificates may take a long time. it can take up to several minutes on older hardware. please be patient' => 'Yönetici ve sunucu sertifikalarının oluşturulması biraz zaman alır. Eski donanımlarda bu süre birkaç dakikayı bulabilir. Lütfen bekleyin.',
 'genkey' => 'PSK oluştur',
 'genre' => 'Tür',
+'geoip' => 'GeoIP',
+'geoipblock' => 'GeoIP Engelleme',
+'geoipblock block countries' => 'Engellenen ülkeler',
+'geoipblock configuration' => 'GeoIP Yapılandırması',
+'geoipblock country code' => 'Ülke Kodu',
+'geoipblock country is allowed' => 'Bu ülkeden gelen trafiğe izin ver',
+'geoipblock country is blocked' => 'Bu ülkeden gelen trafiği engelle',
+'geoipblock country name' => 'Ülke Adı',
+'geoipblock enable feature' => 'GeoIP tabanlı engellemeyi aktifleştir:',
+'geoipblock flag' => 'Bayrak',
 'global settings' => 'Genel ayarlar',
 'gpl i accept these terms and conditions' => 'Bu şartları kabul ediyorum',
 'gpl license agreement' => 'Lisans Sözleşmesi',
 'inactive' => 'Pasif',
 'include logfiles' => 'Günlük dosyaları dahil',
 'incoming' => 'gelen',
+'incoming compression in bytes per second' => 'Gelen Sıkıştırma',
 'incoming firewall access' => 'Gelen güvenlik duvarı bağlantısı',
+'incoming overhead in bytes per second' => 'gelen ek yük',
 'incoming traffic in bytes per second' => 'gelen trafik',
 'incorrect password' => 'Yanlış parola',
 'info' => 'Bilgi',
 'invalid input for organization' => 'Kuruluş için geçersiz giriş.',
 'invalid input for remote host/ip' => 'Ana bilgisayar/ip uzak giriş için geçersiz giriş.',
 'invalid input for state or province' => 'Devlet veya il için geçersiz giriş.',
+'invalid input for valid till days' => 'Geçerli kadar (gün) geçersiz girdi.',
 'invalid ip' => 'Geçersiz IP adresi',
 'invalid keep time' => 'Tutma zamanı geçerli bir sayı olmalıdır.',
 'invalid key' => 'Geçersiz anahtar.',
 'no modem selected' => 'Modem seçilmedi',
 'no set selected' => 'Hiçbir ayar seçilmedi',
 'no time limit' => 'sınırsız zaman',
+'none' => 'hiçbiri',
 'none found' => 'hiçbiri bulunamadı',
 'nonetworkname' => 'Ağ adı girilmedi',
 'noservicename' => 'Hizmet adı girilmedi',
 'our donors' => 'Destekçimiz',
 'out' => 'Dışarı',
 'outgoing' => 'giden',
+'outgoing compression in bytes per second' => 'Giden sıkıştırma',
 'outgoing firewall' => 'Giden güvenlik duvarı',
 'outgoing firewall access' => 'Giden güvenlik duvarı bağlantısı',
 'outgoing firewall add ip group' => 'IP Adres Grubu Ekle',
 'outgoing firewall reset' => 'Tümünü sıfırla',
 'outgoing firewall view group' => 'Grup bilgileri',
 'outgoing firewall warning' => 'Kaynak IP veya MAC seçildiğinde bunlar yok sayılır',
+'outgoing overhead in bytes per second' => 'giden ek yük',
 'outgoing traffic in bytes per second' => 'giden trafik',
 'override mtu' => 'Varsayılan MTU seçeneğini geçersiz kıl',
 'ovpn' => 'OpenVPN',
+'ovpn add conf' => 'Ek yapılandırma',
 'ovpn con stat' => 'OpenVPN Bağlantı İstatistiği',
 'ovpn config' => 'OVPN-Yapılandırması',
 'ovpn crypt options' => 'Şifreleme seçenekleri',
 'ovpnstatus log' => 'OVPN-Durum-Günlük',
 'ovpnsys log' => 'OVPN-Durum-Günlük',
 'p2p block' => 'P2P Ağları',
-'p2p block save notice' => 'Yaptığınız değişiklikleri uygulamak için güvenlik duvarı kural ayarlarını lütfen yeniden yükleyin.',
+'p2p block save notice' => 'Yaptığınız değişiklikleri uygulamak için güvenlik duvarı kuralı ayarlarını lütfen yeniden yükleyin.',
 'package failed to install' => 'Paket yüklenemedi.',
 'pagerefresh' => 'Sayfa yenileniyor. Lütfen bekleyin.',
 'pakfire accept all' => 'Tüm paketleri yüklemek istiyor musunuz?',
 'ppp setup' => 'PPP kurulumu',
 'pppoe' => 'PPPoE',
 'pppoe settings' => 'Ek PPPoE ayarları:',
+'pptp netconfig' => 'Ağ yapılandırma',
+'pptp peer' => 'Denk',
+'pptp route' => 'PPTP Yolu',
 'pptp settings' => 'Ek PPTP ayarları:',
 'pre-shared key is too short' => 'Ön paylaşımlı anahtar çok kısa.',
 'prefered master' => 'Tercih edilen yönetici',
 'reportlevel' => 'Seviye raporu',
 'request' => 'Talep',
 'requested data' => '1. Bağlantı Ayarları:',
+'required field' => 'Gerekli alan',
 'reserved dst port' => 'IPFire için ayrılmış hedef bağlantı noktası numarası:',
 'reserved src port' => 'IPFire için ayrılmış kaynak bağlantı noktası numarası:',
 'reset' => 'Sıfırla',
 'save settings' => 'Ayarları kaydet',
 'save-adv-options' => 'Gelişmiş Seçenekleri Kaydet',
 'script name' => 'Komut adı:',
+'search' => 'Ara',
 'secondary dns' => 'İkincil DNS:',
 'secondary ntp server' => 'İkincil NTP sunucusu',
 'secondary wins server address' => 'İkincil WINS sunucu adresi',
 'there are updates available' => 'Sisteminiz için kullanılabilir güncelleştirmeler var. Kesinlikle en kısa zamanda bunları yüklemeniz gerekir.',
 'there was no file upload' => 'Hiçbir dosya yüklenemedi.',
 'this feature has been sponsored by' => 'Bu özelliklerin destekçisi',
-'this field may be blank' => 'Bu alan boş kalabilir.',
 'this is not a valid archive' => 'Bu, geçerli bir arşiv değil.',
 'this is not an authorised update' => 'Bu yetkili bir güncelleştirme değil.',
 'this months volume' => 'Bu ayki hacim',
 'umount removable media before to unplug' => 'Taşınabilir aygıtı çıkartmadan önce <b>Ayır</b> düğmesi ile sistemden ayırın',
 'unable to alter profiles while red is active' => 'KIRMIZI aktifken profil değiştirilemez.',
 'unable to contact' => 'Bağlantı Kurulamadı',
+'unblock' => 'Engeli kaldır',
+'unblock all' => 'Tüm engeli kaldır',
+'uncheck all' => 'Tümünü bırak',
 'unencrypted' => 'Şifresiz',
 'uninstall' => 'Kaldır',
 'unix charset' => 'UNIX karakterleri',
 'vpn configuration main' => 'VPN yapılandırma - Ana',
 'vpn delayed start' => 'VPN başlamadan önce bekle (saniye)',
 'vpn delayed start help' => 'Eğer gerekirse, bu gecikme Dinamik DNS güncelleştirmelerini düzgün yayılmasına olanak sağlamak için kullanılabilir. 60, KIRMIZI dinamik IP için ortak bir değerdir.',
+'vpn force mobike' => 'MOBIKE kullanmaya zorla (sadece IKEv2)',
 'vpn incompatible use of defaultroute' => 'hostname=%defaultroute izin verilmiyor',
 'vpn keyexchange' => 'Anahtar değişimi',
 'vpn local id' => 'Yerel kimlik',
 'vpn payload compression' => 'Yük sıkıştırma anlaşması',
 'vpn red name' => 'KIRMIZI arabirim veya <%defaultroute> için gerçek IP veya FQDN',
 'vpn remote id' => 'Uzak kimlik (ID)',
+'vpn statistic n2n' => 'Ağdan Ağa OpenVPN İstatistiği',
+'vpn statistic rw' => 'Roadwarrior OpenVPN İstatistiği',
 'vpn subjectaltname' => 'Alternatif konu adı',
-'vpn vhost' => 'Roadwarrior sanal IP (bazen iç IP olarakta adlandırılır)',
 'vpn watch' => 'Karşı eş IP değiştirdiğinde (dyndns) ağdan-ağa VPN bağlantısını yeniden başlat. Bu DPD ye yardımcı olur.',
 'waiting to synchronize clock' => 'Saat eşleştirmesi bekleniyor',
 'warn when traffic reaches' => 'Trafik x % değere ulaştığında uyar',
index c007371fab14a3ee70fb0d196076f7b3253c32c5..f8ac672c53739d1ec9aab32454911e5332380f0c 100644 (file)
--- a/lfs/7zip
+++ b/lfs/7zip
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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        #
 
 include Config
 
-VER        = 4.65
+VER        = 9.38.1
 
 THISAPP    = p7zip_$(VER)
-DL_FILE    = $(THISAPP).tar.bz2
+DL_FILE    = $(THISAPP)_src_all.tar.bz2
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = 7zip
-PAK_VER    = 3
+PAK_VER    = 4
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = f78ed232436dc8f8be25a2f95d4e5f9a
+$(DL_FILE)_MD5 = 6cba8402ccab2370d3b70c5e28b3d651
 
 install : $(TARGET)
 
index 415766d123da4b2bbd5ab7c87fa8ffda8b4b906b..e2396459cff3e3a5a5f9ee11149bc2bd7a2e3c12 100644 (file)
@@ -57,6 +57,9 @@ DIR_CONF    = $(LFS_BASEDIR)/config
 DIR_INFO    = $(LFS_BASEDIR)/log
 DIR_TMP     = /tmp
 
+# Add the compiler location and version and specs to the ccache hash
+CCACHE_COMPILERCHECK += $(shell gcc -dumpspecs 2>/dev/null | md5sum | cut -d ' ' -f1)
+
 ###############################################################################
 # Common Macro Definitions
 ###############################################################################
@@ -66,8 +69,9 @@ DIR_TMP     = /tmp
 #
 define FIND_FILES
        cd $(ROOT)/ && find -mount \
-       -not -path './tools*' -not -path './tmp*' -not -path './usr/src*' -not -path './run/*' \
-       -not -path './dev*' -not -path './proc*' -not -path './install*' | sort
+               \( -path './tools' -or -path './tmp' -or -path './usr/src' \
+               -or -path './run' -or -path './dev' -or -path './proc' \
+               -or -path './install' \) -prune -or -print | sort
 endef
 
 # This is common starting logic for builds.
index b2c1455efe75262191cb2a0cf4584e97ed593321..02bf7a026e32e1a7e0292db8f07e43f70423124f 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 2.07
+VER        = 3.33
 
 THISAPP    = Locale-Codes-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = af0537cc4a882096d0320612c440df6d
+$(DL_FILE)_MD5 = bc7496f97889de8504e80addaa0ee40c
 
 install : $(TARGET)
 
index 686fadad1ca80039c131d5cf4a84025cd67229ba..476c9a8b63b91048b1bd1c28cfee99d073f96fb6 100644 (file)
--- a/lfs/acpid
+++ b/lfs/acpid
@@ -31,7 +31,7 @@ DL_FILE    = $(THISAPP).tar.xz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = x86_64 i586
 
 ###############################################################################
 # Top-level Rules
index 0d7b11ed0532f0e82426ed58ad0dddc1a8fda684..57c344718ae51aadbbf77eb40070c7053d97f1fa 100644 (file)
@@ -31,11 +31,8 @@ THISAPP    = httpd-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
-ifeq "$(PASS)" "C"
-       TARGET     = $(DIR_INFO)/$(THISAPP)-config
-else
-       TARGET     = $(DIR_INFO)/$(THISAPP)
-endif
+
+TARGET     = $(DIR_INFO)/$(THISAPP)
 
 ###############################################################################
 # Top-level Rules
@@ -77,32 +74,6 @@ $(subst %,%_MD5,$(objects)) :
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-ifeq "$(PASS)" "C"
-       # DO THIS IN AN EXTRA STEP BECAUSE PHP AND SUBVERSION WILL FAIL.
-
-       cp -rf $(DIR_CONF)/httpd/* /etc/httpd/conf
-       ln -sf $(CONFIG_ROOT)/main/hostname.conf /etc/httpd/conf/
-
-       # Copy all html/cgi-bin files
-       mkdir -p /srv/web/ipfire/{cgi-bin,html}
-       mkdir -p /var/updatecache/{download,metadata}
-       cp -aR $(DIR_SRC)/html/* /srv/web/ipfire
-
-       # Change CONFIG_ROOT in cgi-scripts
-       for i in /srv/web/ipfire/cgi-bin/{*,logs.cgi/*,vpn.cgi/*}; do \
-           if [ -f $$i ]; then \
-               sed -i "s+CONFIG_ROOT+$(CONFIG_ROOT)+g" $$i; \
-           fi; \
-       done
-       chown -R root:root /srv/web/ipfire
-       chmod -R 755 /srv/web/ipfire/cgi-bin
-       chmod -R 644 /srv/web/ipfire/html
-       chmod 755 /srv/web/ipfire/html /srv/web/ipfire/html/{index.cgi,redirect.cgi,dial.cgi,images,include,themes,themes/*,themes/*/*}
-       ln -svf ipfire /srv/web/ipfire/html/themes/ipfire-rounded
-
-       # Reset permissions of redirect templates and theme directories
-       find /srv/web/ipfire/html/{redirect-templates,themes} -type d | xargs chmod -v 755
-else
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && patch -Np1 -i $(DIR_DL)/httpd-2.2.2-config-1.patch
 
@@ -140,6 +111,10 @@ else
            /usr/share/man/man1/{dbmmanage,ht{dbm,digest,passwd,txt2dbm}}.1 \
            /usr/share/man/man8/{ab,apachectl,apxs,htcacheclean,httpd}.8 \
            /usr/share/man/man8/{logresolve,rotatelogs,suexec}.8
+
+       # Install apache config
+       cp -rf $(DIR_CONF)/httpd/* /etc/httpd/conf
+       ln -sf $(CONFIG_ROOT)/main/hostname.conf /etc/httpd/conf/
+
        @rm -rf $(DIR_APP)
-endif
        @$(POSTBUILD)
index 13eb05e03e1ed3ad5929cbce8a8f15a09d315991..86f7279a28fe271f7a866eb43395a9e6b19ab390 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 2.05
+VER        = 2.15
 
 THISAPP    = arping-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 96e7c2ce8ae09046e264a314eeaac4dd
+$(DL_FILE)_MD5 = 676584f6eb4ccc8c70fc6b2c702df75d
 
 install : $(TARGET)
 
@@ -70,7 +70,11 @@ $(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) && ./bootstrap.sh
+       cd $(DIR_APP) && ./configure --prefix=/usr
+
        cd $(DIR_APP) && make $(MAKETUNING)
-       cd $(DIR_APP) && install -m 0755 arping /usr/sbin
+       cd $(DIR_APP) && make install
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 2c112d0ad2623dc0245190206487e52be2e79d31..91dc4fd881b962b17c1421601c539634b0445c3a 100755 (executable)
@@ -20,7 +20,7 @@
 
 include Config
 
-VER        = 11.16.0
+VER        = 11.20.0
 
 THISAPP    = asterisk-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -28,7 +28,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = asterisk
-PAK_VER    = 15
+PAK_VER    = 18
 
 DEPS       = "libsrtp"
 
@@ -46,7 +46,7 @@ asterisk-extra-sounds-en-gsm-1.4.15.tar.gz = $(URL_IPFIRE)/asterisk-extra-sounds
 asterisk-moh-opsound-gsm-2.03.tar.gz = $(URL_IPFIRE)/asterisk-moh-opsound-gsm-2.03.tar.gz
 asterisk-1.4-de-prompts.tar.gz = $(URL_IPFIRE)/asterisk-1.4-de-prompts.tar.gz
 
-$(DL_FILE)_MD5 = de06d4ac0d1ba531c4c18805a9d5a18d
+$(DL_FILE)_MD5 = d15759b05862250073e2708394ad2f4c
 asterisk-extra-sounds-en-gsm-1.4.15.tar.gz_MD5 = 5099fc65f49008e33ba7fb043a4ec995
 asterisk-moh-opsound-gsm-2.03.tar.gz_MD5 = 09066f55f1358f298bc1a6e4678a3ddf
 asterisk-1.4-de-prompts.tar.gz_MD5 = 626a2b95071a5505851e43874dfbfd5c
index 59baaccb239e761b505ff79903393b9bdee563e7..ab6fbdccd9784922ef80ca67150e20b8026ad41d 100644 (file)
@@ -82,9 +82,13 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/backports-3.18.1-1-ipfire-build.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/backports-3.18.1-1-grsecurity.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/backports-3.18.1-1-add_usbnet_modules.patch
+ifeq "$(MACHINE)" "x86_64"
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/backports-3.18.1-1_no_dma_sgtable_on_x86_64.patch
+endif
 
        # DVB patches
        cd $(DIR_APP) && patch -Np2 < $(DIR_SRC)/src/patches/v4l-dvb_fix_tua6034_pll.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10-dvb_tevi_s482.patch
 
        # Wlan patches
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/compat-drivers-3.8.3-ath_ignore_eeprom_regdomain.patch
@@ -113,6 +117,10 @@ endif
        cd $(DIR_APP) && sed -i -e "s/CPTCFG_CFG80211_DEFAULT_PS=y/# CPTCFG_CFG80211_DEFAULT_PS is not set/g" .config
        cd $(DIR_APP) && sed -i -e "s/CPTCFG_NFC=m/# CPTCFG_NFC is not set/g" .config
 
+ifeq "$(MACHINE)" "x86_64"
+       cd $(DIR_APP) && sed -i -e "s/CPTCFG_LIBERTAS_UAP=m/# CPTCFG_LIBERTAS_UAP is not set/g" .config
+endif
+
        # Disable some modules (build fail)
        cd $(DIR_APP) && sed -i -e "s/CPTCFG_VIDEO_VIA_CAMERA=m/# CPTCFG_VIDEO_VIA_CAMERA is not set/g" .config
 
index 36b234058f07d7f0fae13543e3504cc0cf9c4ec1..b0d518554bce87eba8818673623f908089fcd753 100644 (file)
--- a/lfs/bind
+++ b/lfs/bind
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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        #
@@ -25,7 +25,7 @@
 
 include Config
 
-VER        = 9.9.5
+VER        = 9.10.3-P2
 
 THISAPP    = bind-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = e676c65cad5234617ee22f48e328c24e
+$(DL_FILE)_MD5 = 672dd3c2796b12ac8440f55bcaecfa82
 
 install : $(TARGET)
 
index 08bc7c9b69a67ca1878253f9f5f31f0dcf25b15a..5afaeec2fbceae60413ee1a622599f52eeef6ce9 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2016  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.22
+VER        = 2.24
 
 THISAPP    = binutils-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -38,17 +38,21 @@ ifeq "$(ROOT)" ""
   EXTRA_CONFIG = \
        --prefix=/usr \
        --enable-shared \
-       --disable-nls
+       --disable-nls \
+       --disable-werror
   EXTRA_MAKE = tooldir=/usr
   EXTRA_INSTALL = tooldir=/usr
 else
 ifeq "$(PASS)" "1"
   CFLAGS := $(patsubst -march=%,,$(CFLAGS))
   CFLAGS := $(patsubst -mfloat-abi=%,,$(CFLAGS))
+  CFLAGS := $(patsubst -fstack-protector-strong,-fstack-protector-all,$(CFLAGS))
   TARGET = $(DIR_INFO)/$(THISAPP)-tools1
   EXTRA_CONFIG = \
        --target=$(CROSSTARGET) \
        --prefix=/tools \
+       --with-sysroot=$(ROOT) \
+       --with-lib-path=/tools/lib \
        --disable-nls \
        --disable-werror
   EXTRA_MAKE =
@@ -64,7 +68,8 @@ else
        --build=$(BUILDTARGET) \
        --prefix=/tools \
        --with-lib-path=/tools/lib \
-       --disable-nls
+       --disable-nls \
+       --disable-werror
   EXTRA_MAKE = 
   EXTRA_INSTALL = 
 endif
@@ -76,6 +81,9 @@ ifeq "$(MACHINE_TYPE)" "arm"
                --with-float=soft
 endif
 
+EXTRA_CONFIG += \
+       --enable-64-bit-bfd
+
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -84,7 +92,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = ee0f10756c84979622b992a4a61ea3f5
+$(DL_FILE)_MD5 = e0f71a7b2ddab0f8612336ac81d9636b
 
 install : $(TARGET)
 
@@ -114,11 +122,7 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) $(DIR_SRC)/binutils-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/binutils-2.22-pt-pax-flags-20111121.patch
-
-       # texinfo 5 syntax-fix.
-       cd $(DIR_APP) && sed -i -e "s/@colophon/@@colophon/" \
-                               -e "s/doc@cygnus/doc@@cygnus/" bfd/doc/bfd.texinfo
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/binutils-2.24-pt-pax-flags-20131231.patch
 
        @mkdir $(DIR_SRC)/binutils-build
 
@@ -126,8 +130,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && sed -i 's%\(^MULTIOSDIR = \).*%\1 ../lib%' libiberty/Makefile.in
 
        cd $(DIR_SRC)/binutils-build && $(EXTRA_ENV) MACHINE= $(DIR_APP)/configure $(EXTRA_CONFIG)
-       cd $(DIR_SRC)/binutils-build && make $(EXTRA_MAKE) $(MAKETUNING) MACHINE=
-       cd $(DIR_SRC)/binutils-build && make $(EXTRA_INSTALL) install MACHINE=
+       cd $(DIR_SRC)/binutils-build && make $(EXTRA_MAKE) $(MAKETUNING) MACHINE= 
+       cd $(DIR_SRC)/binutils-build && make $(EXTRA_INSTALL) install MACHINE= 
 ifeq "$(ROOT)" ""
        cp -v $(DIR_APP)/include/libiberty.h /usr/include
 else
index b9b501582632ad669814ed5a8e6092049356468c..12c0a5bf327c5b840405bcac2070f94034f620ec 100644 (file)
--- a/lfs/boost
+++ b/lfs/boost
@@ -48,9 +48,7 @@ CONFIGURE_OPTIONS = \
        debug-symbols=off \
        pch=off
 
-ifeq "$(MACHINE)" "armv5tel"
-       MAKETUNING = -j2
-endif
+MAKETUNING = -j2
 
 ###############################################################################
 # Top-level Rules
diff --git a/lfs/ca-certificates b/lfs/ca-certificates
new file mode 100644 (file)
index 0000000..d21cbd5
--- /dev/null
@@ -0,0 +1,61 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  IPFire Team  <info@ipfire.de>                           #
+#                                                                             #
+# 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        = 20150710
+
+THISAPP    = ca-certificates
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+install : $(TARGET)
+
+check : 
+
+download : 
+
+md5 : 
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cp -av $(DIR_CONF)/$(THISAPP) $(DIR_APP)
+
+       cd $(DIR_APP) && sh ./build.sh
+
+       -mkdir -pv /etc/ssl/certs
+       cd $(DIR_APP) && install -p -m 644 ca-bundle.crt ca-bundle.trust.crt \
+               /etc/ssl/certs
+       ln -svf certs/ca-bundle.crt /etc/ssl/cert.pem
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index 44010f962248a3fba29b093880d004d8297a12e5..682f4998a67ebccfc9efb5701e442b1146bf01b3 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2010  IPFire Team  <info@ipfire.org>                          #
+# Copyright (C) 2007-2016  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        #
 
 include Config
 
-VER        = 3.1.8
+VER        = 3.2.3
 
 THISAPP    = ccache-$(VER)
-DL_FILE    = $(THISAPP).tar.bz2
+DL_FILE    = $(THISAPP).tar.xz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)-pass$(PASS)
@@ -35,6 +35,7 @@ TARGET     = $(DIR_INFO)/$(THISAPP)-pass$(PASS)
 ifeq "$(PASS)" "1"
        CFLAGS := $(patsubst -march=%,,$(CFLAGS))
        CFLAGS := $(patsubst -mfloat-abi=%,,$(CFLAGS))
+       CFLAGS := $(patsubst -fstack-protector-strong,-fstack-protector-all,$(CFLAGS))
 endif
 
 # Set max cache size to 5GB
@@ -48,7 +49,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 0e0f25fb342dcb1196d9c2986a7323cf
+$(DL_FILE)_MD5 = 608c78632086a4a051514722d6067a7b
 
 install : $(TARGET)
 
@@ -77,7 +78,7 @@ $(subst %,%_MD5,$(objects)) :
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure --prefix=/tools
        cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_APP) && make install
diff --git a/lfs/chkconfig b/lfs/chkconfig
new file mode 100644 (file)
index 0000000..afec454
--- /dev/null
@@ -0,0 +1,78 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2010  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.5
+
+THISAPP    = chkconfig-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 0e59a43ef588a7bba5528b10bb59bef2
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && make alternatives
+       cd $(DIR_APP) && install -v -m 755 alternatives /usr/sbin
+       ln -svf alternatives /usr/sbin/update-alternatives
+       -mkdir -pv /etc/alternatives /var/lib/alternatives
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index 2e07ed03449dbe4a5d6df207f1cc6ffd6ec9c85e..ea6efc37cd9834f3076d294c23136b975c2653ba 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 0.98.6
+VER        = 0.99
 
 THISAPP    = clamav-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = clamav
-PAK_VER    = 28
+PAK_VER    = 30
 
 DEPS       = ""
 
@@ -48,7 +48,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 7f4f7e82a09e42c4ebf153d6d452d9d8
+$(DL_FILE)_MD5 = ae79c3982761ba1815dbce17f846bab6
 
 install : $(TARGET)
 
@@ -58,7 +58,7 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
 
 md5 : $(subst %,%_MD5,$(objects))
 
-dist: 
+dist:
        $(PAK)
 
 ###############################################################################
index 0b3252f9f4f23185f2696d32e88d1ad543f7f718..90369889d95e1539172c2fab9c09fc35423ddf7a 100644 (file)
@@ -54,7 +54,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 ifeq "$(PASS)" "1"
        SPECS=$$(dirname $$(/tools/bin/$(CROSSTARGET)-gcc -print-libgcc-file-name))/specs; \
        /tools/bin/$(CROSSTARGET)-gcc -dumpspecs | sed \
-               -e 's@/lib\(64\)\?/ld@/tools&@g' \
                -e "/^\*cpp:$$/{n;s,$$, -isystem /tools/include,}" > $$SPECS
 endif
 
index 085d2bf2380dbd66a5d7d16a6308700d823ea7c7..e3d211910cb9b999017f544245d7a42add480f2b 100644 (file)
--- a/lfs/cmake
+++ b/lfs/cmake
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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.6.4
+VER        = 3.2.3
 
 THISAPP    = cmake-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 50f387d0436696c4a68b5512a72c9cde
+$(DL_FILE)_MD5 = d51c92bf66b1e9d4fe2b7aaedd51377c
 
 install : $(TARGET)
 
@@ -74,8 +74,15 @@ $(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) && ./bootstrap --prefix=/usr
+       cd $(DIR_APP) && ./bootstrap \
+                       --prefix=/usr \
+                       --system-libs \
+                       --mandir=/share/man \
+                       --no-system-jsoncpp \
+                       --docdir=/share/doc/cmake-2.8.12.2
+
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 5ed1476fb0b2e9d65d6264fc1937109b0b9ac70d..f8e9ce417197f5d1acbcd110465eb1575f2469e1 100644 (file)
@@ -54,7 +54,7 @@ $(TARGET) :
                        ethernet extrahd/bin fwlogs fwhosts firewall isdn key langs logging mac main \
                        menu.d modem net-traffic net-traffic/templates nfs optionsfw \
                        ovpn patches pakfire portfw ppp private proxy/advanced/cre \
-                       proxy/calamaris/bin qos/bin red remote sensors snort time tripwire/report \
+                       proxy/calamaris/bin qos/bin red remote sensors snort time \
                        updatexlrator/bin updatexlrator/autocheck urlfilter/autoupdate urlfilter/bin upnp vpn \
                        wakeonlan wireless ; do \
                mkdir -p $(CONFIG_ROOT)/$$i; \
@@ -69,7 +69,7 @@ $(TARGET) :
            isdn/settings mac/settings main/disable_nf_sip main/hosts main/routing main/settings net-traffic/settings optionsfw/settings \
            ovpn/ccd.conf ovpn/ccdroute ovpn/ccdroute2 pakfire/settings portfw/config ppp/settings-1 ppp/settings-2 ppp/settings-3 ppp/settings-4 \
            ppp/settings-5 ppp/settings proxy/settings proxy/squid.conf proxy/advanced/settings proxy/advanced/cre/enable remote/settings qos/settings qos/classes qos/subclasses qos/level7config qos/portconfig \
-           qos/tosconfig snort/settings tripwire/settings upnp/settings vpn/config vpn/settings vpn/ipsec.conf \
+           qos/tosconfig snort/settings upnp/settings vpn/config vpn/settings vpn/ipsec.conf \
            vpn/ipsec.secrets vpn/caconfig wakeonlan/clients.conf wireless/config wireless/settings; do \
            touch $(CONFIG_ROOT)/$$i; \
        done
index f5ea3157bc53767f6ab527e070a4724584cfc5fd..d9a60bcfc0995f50bae21240f1185eef56b811e1 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 1.2.2
+VER        = 1.4.2
 
 THISAPP    = conntrack-tools-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = a8afc813e16265655f83991fc0df35b6
+$(DL_FILE)_MD5 = b1f9d006e7bf000a77395ff7cd3fac16
 
 install : $(TARGET)
 
index 63d0a889823900ce3170771a354a9d53f5c53fb0..ede0493916acbe1022db31282527eee702cfc28f 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2011  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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        = 8.23
+VER        = 8.24
 
 THISAPP    = coreutils-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -60,7 +60,7 @@ objects =$(DL_FILE)
 
 $(DL_FILE)                      = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5                  = abed135279f87ad6762ce57ff6d89c41
+$(DL_FILE)_MD5                  = 40efdbce865d2458d8da0a9dcee7c16c
 
 install : $(TARGET)
 
@@ -100,8 +100,6 @@ ifeq "$(ROOT)" ""
        mv -v /usr/bin/{rmdir,stty,sync,true,uname} /bin
        mv -v /usr/bin/chroot /usr/sbin
        mv -v /usr/bin/{head,sleep,nice} /bin
-       ln -sf test /bin/[
-       #ln -sf ../../bin/install /usr/bin
        dircolors -p > /etc/DIR_COLORS
 endif
 
index f07e49df3eebbaad593c374fc62e7cd844e138e5..5a82c33a59dd901521a06bee9404b003eaca63a8 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2010  IPFire Team  <info@ipfire.org                           #
+# Copyright (C) 2007-2015  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        #
@@ -31,9 +31,9 @@ DL_FILE    = $(THISAPP).tar.bz2
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = x86_64 i586
 PROG       = cpufrequtils
-PAK_VER    = 6
+PAK_VER    = 7
 
 DEPS       = ""
 
index 60f7e214e40964c5bdb49391924ed316d78e2c9a..49b275a6557c6f789a04b5873820d230fbbde47b 100644 (file)
--- a/lfs/cups
+++ b/lfs/cups
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2012  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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.7.0
+VER        = 2.0.4
 
 THISAPP    = cups-$(VER)
 DL_FILE    = $(THISAPP)-source.tar.bz2
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/cups-$(VER)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = cups
-PAK_VER    = 10
+PAK_VER    = 13
 
 DEPS       = "ghostscript"
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 5ab496a2ce27017fcdb3d7ec4818a75a
+$(DL_FILE)_MD5 = f5c847d9a4fac6c4c66fb0526a7afaae
 
 install : $(TARGET)
 
index 0fd92c1848a32b4814cba48b2e369ab6330cb21b..29de2802b18e0e48592bf6756571d3ef52441c6a 100644 (file)
--- a/lfs/curl
+++ b/lfs/curl
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 7.40.0
+VER        = 7.43.0
 
 THISAPP    = curl-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 58943642ea0ed050ab0431ea1caf3a6f
+$(DL_FILE)_MD5 = 3037f0b6ce03d434618e9db5506ae6be
 
 install : $(TARGET)
 
@@ -70,7 +70,10 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xvf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && ./configure --prefix=/usr --disable-ipv6
+       cd $(DIR_APP) && ./configure \
+               --prefix=/usr \
+               --disable-ipv6 \
+               --with-ca-bundle=/etc/ssl/certs/ca-bundle.crt
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
        # Create symlink to new curl lib for old binaries
index 2a826cd7039b7996feab4e4ce242189739167f6b..f4c855c760e6f2bd3d0603a4c96ce02052b3c7b0 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2011  IPFire Team  <info@ipfire.org>                          #
+# Copyright (C) 2007-2015  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        #
@@ -31,11 +31,14 @@ DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
+SUP_ARCH   = armv5tel i586
 PROG       = cyrus-imapd
-PAK_VER    = 3
+PAK_VER    = 5
 
 DEPS       = ""
 
+CFLAGS    += -I/usr/include/et
+
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -100,5 +103,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cp -f $(DIR_APP)/tools/mkimap /usr/bin
        sudo -u cyrus /usr/bin/mkimap /var/ipfire/cyrusimap/imapd.conf
        chown cyrus.mail /var/imap/socket
+       install -v -m 644 $(DIR_SRC)/config/backup/includes/cyrus-imapd \
+               /var/ipfire/backup/addons/includes/cyrus-imapd
        @rm -rf $(DIR_APP) /usr/include/com_err.h
        @$(POSTBUILD)
diff --git a/lfs/daq b/lfs/daq
index c58995d5752bcb299cd9f9a912c010977b8fd157..35f8241aa9dc48aa5defc6a2a95aca6e77e0e2aa 100644 (file)
--- a/lfs/daq
+++ b/lfs/daq
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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.0.4
+VER        = 2.0.6
 
 THISAPP    = daq-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 65e51d72e9d5d8b397e192e4e5857eff
+$(DL_FILE)_MD5 = 2cd6da422a72c129c685fc4bb848c24c
 
 install : $(TARGET)
 
index e736e101ce3ce4f4d7a1e1a83a63c130db399528..750c728c5a0d1ba14d7f86d29559520d6e7b1c30 100644 (file)
--- a/lfs/ddns
+++ b/lfs/ddns
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 007
+VER        = 009
 
 THISAPP    = ddns-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 44f63cecc36db0d9ffddfa4bca7983ae
+$(DL_FILE)_MD5 = 31f949d9f417ee7f801cf8aac849a92e
 
 install : $(TARGET)
 
index e73d99c653f3f3f07cd77175949a8aeddec431c4..ff31821f60af3d3b9f144b46e1016a856abcfeea 100644 (file)
@@ -87,5 +87,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 
        sed -i -e "s|-ge 576|-gt 576|g" $(CONFIG_ROOT)/dhcpc/dhcpcd-hooks/10-mtu
 
+       install -m 644 $(DIR_SRC)/config/dhcpc/dhcpcd.conf $(CONFIG_ROOT)/dhcpc/
+       chown root:root $(CONFIG_ROOT)/dhcpc/dhcpcd.conf
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
similarity index 75%
rename from lfs/openssl-compat
rename to lfs/dma
index 5e3c1ff706b4cef2dd24d8dda22568c9413f5983..64ed94452780b5c15a7c53ee325c59a18687a237 100644 (file)
+++ b/lfs/dma
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2015  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2015  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,9 +24,9 @@
 
 include Config
 
-VER        = 0.9.8zf
+VER        = 0.10
 
-THISAPP    = openssl-$(VER)
+THISAPP    = dma-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = c69a4a679233f7df189e1ad6659511ec
+$(DL_FILE)_MD5 = 91f521b0749e16f5d78e139e717245ea
 
 install : $(TARGET)
 
@@ -50,6 +50,7 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
 
 md5 : $(subst %,%_MD5,$(objects))
 
+
 ###############################################################################
 # Downloading, checking, md5sum
 ###############################################################################
@@ -70,33 +71,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/openssl-disable-sslv2-sslv3.patch
-
-       # Apply our CFLAGS
-       cd $(DIR_APP) && sed -i Configure \
-               -e "s/-O3 -fomit-frame-pointer/$(CFLAGS)/g"
-
-       cd $(DIR_APP) && sed -i -e 's/mcpu/march/' config
-       cd $(DIR_APP) && sed -i -e 's/-O3/-O2/' -e 's/-march=i486/-march=i586/' Configure
-
-       # Support for engines is disabled, because the shared objects from the
-       # new version of openssl cannot be loaded by the old one.
-
-       cd $(DIR_APP) && ./Configure \
-               --prefix=/usr \
-               --openssldir=/etc/ssl \
-               shared linux-elf \
-               zlib-dynamic \
-               no-engines \
-               no-asm 386 \
-               -DSSL_FORBID_ENULL
-
-       cd $(DIR_APP) && make depend
+       mkdir -pv /var/ipfire/dma
+       touch /var/ipfire/dma/mail.conf
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/dma-0.10-better-authentication.patch
+       cd $(DIR_APP) && sed -i '/PREFIX/s/usr\/local/usr/g' Makefile
+       cd $(DIR_APP) && sed -i '/CONFDIR/s/etc\/dma/var\/ipfire\/dma/g' Makefile
        cd $(DIR_APP) && make
-
-       cd $(DIR_APP) && install -v -m 755 libcrypto.so.0.9.8 /usr/lib
-       cd $(DIR_APP) && install -v -m 755 libssl.so.0.9.8 /usr/lib
-
+       cd $(DIR_APP) && make install mailq-link install-spool-dirs install-etc
+       install -v -m 755 $(DIR_SRC)/config/dma/dma-cleanup-spool /usr/sbin
+       chown -R nobody.nobody /var/ipfire/dma
+       chown nobody.root /var/ipfire/dma/auth.conf
+       ln -svf dma /usr/sbin/sendmail.dma
+       /usr/sbin/alternatives --install /usr/sbin/sendmail sendmail /usr/sbin/sendmail.dma 20
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
diff --git a/lfs/dnsdist b/lfs/dnsdist
new file mode 100644 (file)
index 0000000..62c17cf
--- /dev/null
@@ -0,0 +1,86 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  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        = 0.0.498gac688af
+
+THISAPP    = dnsdist-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+SUP_ARCH   = x86_64 i586
+PROG       = dnsdist
+PAK_VER    = 1
+
+DEPS       = ""
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = b1bc53b3a35aef7006b74086919847bf
+
+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 axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
+
index 665f424bbcc21c1c4244714a093b0fb2e33a825f..8058663acef3a315904eda108644a9b769c249e6 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 2.72
+VER        = 2.75
 
 THISAPP    = dnsmasq-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 0256e0a71e27c8d8a5c89a0d18f3cfe2
+$(DL_FILE)_MD5 = 887236f1ddde6eb57cdb9d01916c9f72
 
 install : $(TARGET)
 
@@ -73,85 +73,37 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0020-Initialise-return-value.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0021-Add-ignore-address-option.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0022-Bad-packet-protection.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0035-Update-German-translation.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0040-inotify-documentation-updates.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0042-BSD-make-support.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0044-Manpage-typo-fix.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0047-man-page-typo.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0049-Typos.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0067-Merge-message-translations.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0069-Whitespace-fixes.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0072-Fix-crash-caused-by-looking-up-servers.bind-when-man.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0073-Fix-crash-on-receipt-of-certain-malformed-DNS-reques.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0074-Fix-crash-in-auth-code-with-odd-configuration.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0075-Auth-correct-replies-to-NS-and-SOA-in-.arpa-zones.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0076-Fix-srk-induced-crash-in-new-tftp_no_fail-code.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0077-Note-CVE-2015-3294.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0078-Log-domain-when-reporting-DNSSEC-validation-failure.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/001-include_0_0_0_0_8_in_DNS_rebind_checks.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/002-enhance_add_subnet_to_allow_arbitary_subnet_addresses.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/003-dont_answer_non_auth_queries_for_auth_zones_locally_when_localise_queries_set.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/004-fix_behaviour_of_empty_dhcp-option.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/005-suggest_solution_to_ENOMEM_error_with_IPv6_multicast.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/006-clarify_man_page_on_RDNSS_set_in_router_advertisement.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/007-handle_signed_dangling_CNAME_replies_to_DS_queries.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/008-DHCPv6_option_56_does_not_hold_an_address_list.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/009-Respect_the_--no_resolv_flag_in_inotify_code.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/010-Rationalise_5e3e464ac4022ee0b3794513abe510817e2cf3ca.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/011-Catch_errors_from_sendmsg_in_DHCP_code.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/012-Update_list_of_subnet_for_--bogus-priv.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/013-Fix_crash_when_empty_address_from_DNS_overlays_A_record_from.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/014-Handle_unknown_DS_hash_algos_correctly.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/015-Fix_crash_at_start_up_with_conf-dir.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/016-Major_rationalisation_of_DNSSEC_validation.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/017-Abandon_caching_RRSIGs_and_returning_them_from_cache.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/018-Move_code_which_caches_DS_records_to_a_more_logical_place.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/019-Generalise_RR-filtering_code_for_use_with_EDNS0.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/020-DNSSEC_validation_tweak.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/021-Tweaks_to_EDNS0_handling_in_DNS_replies.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/022-Tidy_up_DNSSEC_non-existence_code_Check_zone_status_is_NSEC_proof_bad.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/023-Fix_brace_botch_in_dnssec_validate_ds.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/024-Do_a_better_job_of_determining_which_DNSSEC_sig_algos_are_supported.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/025-Major_tidy_up_of_EDNS0_handling_and_computation_use_of_udp.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/026-More_tweaks_in_handling_unknown_DNSSEC_algorithms.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/027-Nasty_rare_and_obscure_off-by-one_in_DNSSEC_hostname_cmp.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/028-Minor_tweak_to_previous_commit.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/029-NSEC3_check_RFC5155_para_8_2.patch
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch
+
        cd $(DIR_APP) && sed -i src/config.h \
                -e 's|/\* #define HAVE_IDN \*/|#define HAVE_IDN|g' \
                -e 's|/\* #define HAVE_DNSSEC \*/|#define HAVE_DNSSEC|g' \
index fef3ad77d3b074621345923fc123869f6d0da997..97d12f3f55246f5512ce6bf6e5706d659071b1b8 100644 (file)
@@ -71,6 +71,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dracut-038-always-enable-mdraid.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dracut-038_add_sdhci-pci.patch
 
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install sbindir=/sbin sysconfdir=/etc
index d23369c569b88da2e81b11df8feeff411c9d9a36..5f284ce929b701c80f62e4d4e347413067afb282 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team <info@ipfire.org>                      #
+# Copyright (C) 2007-2015  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        #
@@ -27,7 +27,7 @@ include Config
 VERSUFIX = ipfire$(KCFG)
 MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/ethernet/intel/e1000e
 
-VER        = 3.1.0.2
+VER        = 3.2.7.1
 
 THISAPP    = e1000e-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = b8d770160691edd247a90070f45642ce
+$(DL_FILE)_MD5 = 8f62c220d763fa92473365e40d55bd86
 
 install : $(TARGET)
 
index a7da3491c7b4330a9efb8caed47c0c160e41919c..0c55a21c586d42874b245c3727d5111c0643cc92 100644 (file)
@@ -77,7 +77,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) && make $(MAKETUNING)
+       cd $(DIR_APP) && make $(MAKETUNING) CFLAGS="$(CFLAGS)"
        cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 59f1426ead95a57304beb675cc97e5cc161b268b..2727423f0269a565d5ed7a2f0e993695740bcdd9 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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       = elinks
-PAK_VER    = 4
+PAK_VER    = 5
 
 DEPS       = ""
 
index bfd7552867f7ecedb0962122ae3e6f6b3310f3fb..49829d0c5e71b0441ec95de4524ea5c96b32b327 100644 (file)
--- a/lfs/file
+++ b/lfs/file
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2014  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 5.20
+VER        = 5.24
 
 THISAPP    = file-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 5d5e13eb3e0e13839da869a31790faf2
+$(DL_FILE)_MD5 = ec161b5a0d2aef147fb046e5630b1408
 
 install : $(TARGET)
 
index e63bdc812cff1b4e5f509ef5c60756591a40c500..55a78455c04b1ab5e708ea295deffb5999051a26 100644 (file)
@@ -70,7 +70,11 @@ $(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/fireinfo-Add-an-other-forbidden-string-Serial.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0001-Add-an-other-forbidden-string-Serial.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0002-Escape-any-non-printable-ascii-characters.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0003-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0004-Filter-all-IDs-that-only-consist-of-0xff.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0005-Fix-crash-if-there-is-id-has-already-been-reset-to-N.patch
 
        cd $(DIR_APP) && [ -x "configure" ] || sh ./autogen.sh
        cd $(DIR_APP) && ./configure --prefix=/usr
diff --git a/lfs/flag-icons b/lfs/flag-icons
new file mode 100644 (file)
index 0000000..8f3364c
--- /dev/null
@@ -0,0 +1,90 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 2.6
+
+THISAPP    = flag-icons-$(VER)
+DL_FILE    = $(THISAPP).zip
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 992db1bc950dfdd436699b7d2ad33c2d
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       # Create DIR_APP and move the source tarball to its location.
+       @rm -rf $(DIR_APP) && mkdir -pv $(DIR_APP) && cd $(DIR_SRC) && cp -avf $(DIR_DL)/$(DL_FILE) $(DIR_APP)
+
+       # Extract the source tarball.
+       cd $(DIR_APP) && unzip $(DL_FILE)
+
+       # Create flage image folder.
+       cd $(DIR_APP) && mkdir -pv /srv/web/ipfire/html/images/flags/
+
+       # Only copy the country flags.
+       cd $(DIR_APP) && cp -avf flags-iso/shiny/16/??.png \
+               /srv/web/ipfire/html/images/flags/
+
+       # Copy flag icon for unknown countries.
+       cd $(DIR_APP) && cp -avf flags-iso/shiny/16/_unknown.png \
+               /srv/web/ipfire/html/images/flags/unknown.png
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/gcc b/lfs/gcc
index 0264d37f8308aa989604c40f15303aa2c69ddbab..52d1daefcfa28746cefae8b17ee275d9c5e47940 100644 (file)
--- a/lfs/gcc
+++ b/lfs/gcc
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2011  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2016  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        #
 
 include Config
 
-VER        = 4.4.7
+VER        = 4.9.3
 
 GMP_VER    = 5.0.5
 MPFR_VER   = 2.4.2
+MPC_VER    = 1.0.3
 
 THISAPP    = gcc-$(VER)
-DL_FILE    = $(THISAPP).tar.bz2
+DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 
 CFLAGS    := $(patsubst -march=%,,$(CFLAGS))
 CFLAGS    := $(patsubst -mtune=%,,$(CFLAGS))
 CFLAGS    := $(patsubst -mfloat-abi=%,,$(CFLAGS))
+CFLAGS    := $(filter-out -fexceptions,$(CFLAGS))
+CXXFLAGS  := $(CFLAGS)
 
 # Normal build or /tools build.
 #
@@ -56,29 +59,40 @@ ifeq "$(ROOT)" ""
   EXTRA_INSTALL =
 else
 ifeq "$(PASS)" "1"
+  CFLAGS    := $(patsubst -fstack-protector-strong,-fstack-protector-all,$(CFLAGS))
+  CXXFLAGS  := $(patsubst -fstack-protector-strong,-fstack-protector-all,$(CXXFLAGS))
   TARGET = $(DIR_INFO)/$(THISAPP)-tools1
   EXTRA_CONFIG = \
        --target=$(CROSSTARGET) \
        --prefix=/tools \
+       --with-sysroot=$(ROOT) \
        --disable-nls \
        --disable-shared \
        --disable-decimal-float \
        --disable-threads \
+       --disable-libatomic \
        --disable-libmudflap \
        --disable-libssp \
        --disable-libgomp \
        --disable-libquadmath \
+       --disable-libstdc++-v3 \
+       --disable-libvtv \
+       --disable-libcilkrts \
+       --disable-libitm \
+       --disable-libsanitizer \
        --with-newlib \
        --without-headers \
        --without-ppl \
        --without-cloog \
-       --enable-languages=c
+       --enable-languages=c,c++
   EXTRA_MAKE = 
   EXTRA_INSTALL = 
 else
+ifeq "$(PASS)" "2"
   TARGET = $(DIR_INFO)/$(THISAPP)-tools2
   EXTRA_ENV = \
        CC="$(CROSSTARGET)-gcc -B/tools/lib/" \
+       CXX="$(CROSSTARGET)-g++" \
        AR="$(CROSSTARGET)-ar" \
        RANLIB="$(CROSSTARGET)-ranlib"
   EXTRA_CONFIG = \
@@ -87,15 +101,35 @@ else
        --target=$(BUILDTARGET) \
        --prefix=/tools \
        --with-local-prefix=/tools \
+       --with-native-system-header-dir=/tools/include \
        --enable-clocale=gnu \
        --enable-shared \
        --enable-threads=posix \
        --enable-__cxa_atexit \
        --enable-languages=c,c++ \
        --disable-libstdcxx-pch \
-       --disable-bootstrap
+       --enable-bootstrap
   EXTRA_MAKE = 
   EXTRA_INSTALL = 
+else
+  # PASS=L # libstdc++-v3
+  TARGET = $(DIR_INFO)/$(THISAPP)-libstdc++
+  EXTRA_ENV = \
+       CC="$(CROSSTARGET)-gcc -B/tools/lib/" \
+       AR="$(CROSSTARGET)-ar" \
+       RANLIB="$(CROSSTARGET)-ranlib"
+  EXTRA_CONFIG = \
+       --host=$(CROSSTARGET) \
+       --prefix=/tools \
+       --with-sysroot=$(ROOT) \
+       --disable-shared \
+       --disable-nls \
+       --disable-libstdcxx-threads \
+       --disable-libstdcxx-pch \
+       --with-gxx-include-dir=/tools/$(CROSSTARGET)/include/c++/$(VER)
+  EXTRA_MAKE = 
+  EXTRA_INSTALL = 
+endif
 endif
 
   # Disable stack protection in toolchain.
@@ -114,6 +148,11 @@ ifeq "$(MACHINE)" "i586"
                --with-tune=generic
 endif
 
+ifeq "$(MACHINE)" "x86_64"
+       EXTRA_CONFIG += \
+               --disable-multilib
+endif
+
 EXTRA_CONFIG += \
        --with-bugurl=http://bugtracker.ipfire.org \
        --disable-libunwind-exceptions \
@@ -128,15 +167,18 @@ export TCFLAGS = $(CFLAGS)
 
 objects = $(DL_FILE) \
        gmp-$(GMP_VER).tar.bz2 \
-       mpfr-$(MPFR_VER).tar.bz2
+       mpfr-$(MPFR_VER).tar.bz2 \
+       mpc-$(MPC_VER).tar.gz
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 gmp-$(GMP_VER).tar.bz2 = $(DL_FROM)/gmp-$(GMP_VER).tar.bz2
 mpfr-$(MPFR_VER).tar.bz2 = $(DL_FROM)/mpfr-$(MPFR_VER).tar.bz2
+mpc-$(MPC_VER).tar.gz = $(DL_FROM)/mpc-$(MPC_VER).tar.gz
 
-$(DL_FILE)_MD5                 = 295709feb4441b04e87dea3f1bab4281
+$(DL_FILE)_MD5                 = 648bfba342bb41a4b5350fb685f85bc5
 gmp-$(GMP_VER).tar.bz2_MD5     = 041487d25e9c230b0c42b106361055fe
 mpfr-$(MPFR_VER).tar.bz2_MD5   = 89e59fe665e2b3ad44a6789f40b059a0
+mpc-$(MPC_VER).tar.gz_MD5      = d6a1d5f8ddea3abd2cc3e98f58352d26
 
 install : $(TARGET)
 
@@ -165,23 +207,16 @@ $(subst %,%_MD5,$(objects)) :
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-       @rm -rf $(DIR_APP) $(DIR_SRC)/gcc-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+       @rm -rf $(DIR_APP) $(DIR_SRC)/gcc-build && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        @mkdir $(DIR_SRC)/gcc-build
 
        # Apply patches.
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-build-id.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-c++-builtin-redecl.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-i386-libgomp.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-libtool-no-rpath.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-no-add-needed.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-pr33763.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-rh330771.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-rh533181.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-rh610785.patch
-       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc44-unwind-debug-hook.patch
-
-       # texinfo 5 syntax-fixes
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-4.4.7-texinfo-5.patch
+       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc49-i386-libgomp.patch
+       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc49-libtool-no-rpath.patch
+       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc49-no-add-needed.patch
+       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc49-pr38757.patch
+       cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/gcc/gcc49-pr64336.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc/gcc-fix-inlining-issues.patch
 
 ifneq "$(ROOT)" ""
        # Build gmp and mpfr internally in toolchain.
@@ -189,25 +224,39 @@ ifneq "$(ROOT)" ""
        cd $(DIR_APP) && mv -v gmp-$(GMP_VER) gmp
        cd $(DIR_APP) && tar xfa $(DIR_DL)/mpfr-$(MPFR_VER).tar.bz2
        cd $(DIR_APP) && mv -v mpfr-$(MPFR_VER) mpfr
+       cd $(DIR_APP) && tar xfa $(DIR_DL)/mpc-$(MPC_VER).tar.gz
+       cd $(DIR_APP) && mv -v mpc-$(MPC_VER) mpc
 
 ifeq    "$(PASS)" "1"
        # GCC does not detect stack protection correctly, which causes problems
        # for the build of libresolv_pic.a.
        cd $(DIR_APP) && sed -i '/k prot/agcc_cv_libc_provides_ssp=yes' gcc/configure
+
+       for file in $$(find $(DIR_APP)/gcc/config -name linux64.h -o -name linux.h \
+                       -o -name sysv4.h -o -name linux-eabi.h -o -name linux-elf.h); do \
+               echo "Processing $${file}..."; \
+               sed -i $${file} \
+                       -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g' \
+                       -e 's@/usr@/tools@g'; \
+               echo '#undef STANDARD_STARTFILE_PREFIX_1' >> $${file}; \
+               echo '#undef STANDARD_STARTFILE_PREFIX_2' >> $${file}; \
+               echo '#define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"' >> $${file}; \
+               echo '#define STANDARD_STARTFILE_PREFIX_2 ""' >> $${file}; \
+       done
 endif
 
 ifeq    "$(PASS)" "2"
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/gcc-4.4.3-startfiles_fix-1.patch
-
+       cd $(DIR_APP) && cat gcc/limitx.h gcc/glimits.h gcc/limity.h > \
+                       `dirname $$(/tools/bin/$(CROSSTARGET)-gcc -print-libgcc-file-name)`/include-fixed/limits.h
        for file in $$(find $(DIR_APP)/gcc/config -name linux64.h -o -name linux.h \
                        -o -name sysv4.h -o -name linux-eabi.h -o -name linux-elf.h); do \
                echo "Processing $${file}..."; \
                sed -i $${file} \
                        -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g' \
                        -e 's@/usr@/tools@g'; \
-               echo '#undef STANDARD_INCLUDE_DIR' >> $${file}; \
-               echo '#define STANDARD_INCLUDE_DIR 0' >> $${file}; \
-               echo '#define STANDARD_STARTFILE_PREFIX_1 ""' >> $${file}; \
+               echo '#undef STANDARD_STARTFILE_PREFIX_1' >> $${file}; \
+               echo '#undef STANDARD_STARTFILE_PREFIX_2' >> $${file}; \
+               echo '#define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"' >> $${file}; \
                echo '#define STANDARD_STARTFILE_PREFIX_2 ""' >> $${file}; \
        done
 endif
@@ -218,6 +267,15 @@ endif
                -e 's@\./fixinc\.sh@-c true@' \
                -e 's/^T_CFLAGS =$$/& -fomit-frame-pointer/'
 
+ifeq    "$(PASS)" "L"
+       # libstdc++ pass
+       cd $(DIR_SRC)/gcc-build && \
+               $(EXTRA_ENV) \
+               $(DIR_APP)/libstdc++-v3/configure \
+                       $(EXTRA_CONFIG)
+       cd $(DIR_SRC)/gcc-build && make $(MAKETUNING) $(EXTRA_MAKE)
+       cd $(DIR_SRC)/gcc-build && make $(EXTRA_INSTALL) install
+else
        # The actual build.
        cd $(DIR_SRC)/gcc-build && \
                $(EXTRA_ENV) \
@@ -225,15 +283,20 @@ endif
                        $(EXTRA_CONFIG)
        cd $(DIR_SRC)/gcc-build && make $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_SRC)/gcc-build && make $(EXTRA_INSTALL) install
+endif
 
 ifeq "$(ROOT)" ""
        ln -svf ../usr/bin/cpp /lib
        ln -svf gcc /usr/bin/cc
+       # remove gdb python files from libdir
+       rm -rf /usr/lib/*-gdb.py
 else
 ifeq    "$(PASS)" "1"
        ln -svf libgcc.a $$(/tools/bin/$(CROSSTARGET)-gcc -print-libgcc-file-name | sed 's/libgcc/&_eh/')
 else
        ln -svf gcc /tools/bin/cc
+       # remove gdb python files from libdir
+       rm -rf /tools/lib/*-gdb.py
 endif
 endif
        @rm -rf $(DIR_APP) $(DIR_SRC)/gcc-build
diff --git a/lfs/git b/lfs/git
index 23838e4e54d859f028293dcee68d799a86a11056..bbec140f4ecd77beccffafa2f0ba5563e6721a47 100644 (file)
--- a/lfs/git
+++ b/lfs/git
 
 include Config
 
-VER        = 1.8.5.2
+VER        = 2.4.4
 
 THISAPP    = git-$(VER)
-DL_FILE    = $(THISAPP).tar.gz
+DL_FILE    = $(THISAPP).tar.xz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = git
-PAK_VER    = 10
+PAK_VER    = 12
 
-DEPS       = ""
+DEPS       = "perl-Authen-SASL perl-MIME-Base64 perl-Net-SMTP-SSL"
 
 ###############################################################################
 # Top-level Rules
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = df8519044f9880f3687d863d99245282
+$(DL_FILE)_MD5 = 847787cd0616d38b0e429ea85f558c31
 
 install : $(TARGET)
 
@@ -78,7 +78,10 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure \
-               --prefix=/usr
+               --prefix=/usr \
+               --with-libpcre \
+               --with-curl \
+               --with-expat
 
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
index 11d374e3b886a13fabdfbfca70309112c22ef3e7..56a35333914e9b2209660cca23ca02817652e91e 100644 (file)
--- a/lfs/glibc
+++ b/lfs/glibc
@@ -51,7 +51,8 @@ else
        --with-headers=/tools/include \
        libc_cv_forced_unwind=yes \
        libc_cv_ctors_header=yes \
-       libc_cv_c_cleanup=yes
+       libc_cv_c_cleanup=yes \
+       CC=/tools/bin/$(CROSSTARGET)-gcc
   EXTRA_MAKE =
   EXTRA_INSTALL =
 endif
@@ -283,11 +284,16 @@ endif
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1154563.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1170121.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1183533.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1207995.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1209375.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1217186.patch
 
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-resolv-stack_chk_fail.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-remove-ctors-dtors-output-sections.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-test-installation.pl-nss_test1.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-test-installation.pl-libgcc_s.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-2.12-accept-make-versions-4.0-and-greater.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-mq_open.patch
 
        # Fixes:
        #   Makefile:235: *** mixed implicit and normal rules.  Stop.
@@ -302,10 +308,15 @@ ifeq "$(ROOT)" ""
 ifeq "$(MACHINE_TYPE)" "arm"
        cd $(DIR_APP) && sed -i 's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/ld-linux.so.3 -o|' \
                scripts/test-installation.pl
+else
+ifeq "$(MACHINE)" "x86_64"
+       cd $(DIR_APP) && sed -i 's|libs -o|libs -L/usr/lib64 -Wl,-dynamic-linker=/lib64/ld-linux-x86-64.so.2 -o|' \
+               scripts/test-installation.pl
 else
        cd $(DIR_APP) && sed -i 's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/ld-linux.so.2 -o|' \
                scripts/test-installation.pl
 endif
+endif
 endif
 
        cd $(DIR_SRC)/glibc-build && \
@@ -335,6 +346,8 @@ ifeq "$(ROOT)" ""
 
        # Timezone data will be shipped by tzdata.
        rm -rfv /usr/share/zoneinfo
+else
+       ln -svf lib /tools/lib64
 endif
        @rm -rf $(DIR_APP) $(DIR_SRC)/glibc-build
        @$(POSTBUILD)
index 04aaa0b2542b283918f0628e167fdf06588aa3b3..ba744087cf6b2ebb96b335f5aab5ca2b08a93f85 100644 (file)
--- a/lfs/grub
+++ b/lfs/grub
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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        #
@@ -31,7 +31,7 @@ DL_FILE    = $(THISAPP).tar.xz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = x86_64 i586
 
 CFLAGS     =
 CXXFLAGS   =
@@ -78,6 +78,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-2.00_disable_vga_fallback.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/0001-Fix-CVE-2015-8370-Grub2-user-pass-vulnerability.patch
        cd $(DIR_APP) && \
                ./configure \
                        --prefix=/usr \
@@ -100,6 +101,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 
        # Disable hardening.
        paxctl -mpes /usr/sbin/grub-bios-setup /usr/sbin/grub-probe
+       paxctl -mpexs /usr/bin/grub-script-check
 
        # We don't need to install unifont just to generate a grub2 compatible
        # font archive for the graphical boot menu. The following command only
index e4e2e535bd7d59342259719930629dcd8fc6ff04..e4e9ac1a0a266b9d06098cb9845b9838a8f00a93 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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        = 9.45
+VER        = 9.48
 
 THISAPP    = hdparm-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 1c75d0751a44928b6c4bc81fb16d7fe8
+$(DL_FILE)_MD5 = 213efdbe7471fad3408198918e164354
 
 install : $(TARGET)
 
diff --git a/lfs/igb b/lfs/igb
index fa762e093f20b773405d5da8332db85493067670..85d228c40c564a822b6a92726606771cca012eac 100644 (file)
--- a/lfs/igb
+++ b/lfs/igb
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team <info@ipfire.org>                      #
+# Copyright (C) 2007-2015  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        #
@@ -27,7 +27,7 @@ include Config
 VERSUFIX   = ipfire$(KCFG)
 MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/ethernet/intel/igb/
 
-VER        = 5.2.9.3
+VER        = 5.3.3.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 = 814395d3b76090f378002bddecfd2dfc
+$(DL_FILE)_MD5 = 2d753a0bd03c949ec08d68c27540044d
 
 install : $(TARGET)
 
index 400594136230363a5ea32c29bab06658cffbe7bb..538ea4d0b71bfb1786027fc8bdde2d0251cbda5a 100755 (executable)
@@ -61,6 +61,9 @@ $(TARGET) :
        -rm -rf /etc/init.d
        ln -svf rc.d/init.d /etc/init.d
 
+       # Create default ramdisk configuration
+       echo "RAMDISK_MODE=0" > /etc/sysconfig/ramdisk
+
        for i in $(DIR_SRC)/src/initscripts/init.d/*; do \
                install -v -m 754 $$i /etc/rc.d/init.d/; \
        done
@@ -128,9 +131,6 @@ $(TARGET) :
        ln -sf ../init.d/random      /etc/rc.d/rc3.d/S25random
        ln -sf ../init.d/random      /etc/rc.d/rc6.d/K45random
        ln -sf ../../sysconfig/rc.local /etc/rc.d/rc3.d/S98rc.local
-       ln -sf ../init.d/tmpfs       /etc/rc.d/rc0.d/K85tmpfs
-       ln -sf ../init.d/tmpfs       /etc/rc.d/rc3.d/S01tmpfs
-       ln -sf ../init.d/tmpfs       /etc/rc.d/rc6.d/K85tmpfs
        ln -sf ../init.d/mediatomb   /etc/rc.d/rc3.d/S98mediatomb
        ln -sf ../init.d/mediatomb   /etc/rc.d/rc0.d/K02mediatomb
        ln -sf ../init.d/mediatomb   /etc/rc.d/rc6.d/K02mediatomb
@@ -177,8 +177,10 @@ $(TARGET) :
        ln -sf ../init.d/localnet    /etc/rc.d/rcsysinit.d/S80localnet
        ln -sf ../init.d/firewall    /etc/rc.d/rcsysinit.d/S85firewall
        ln -sf ../init.d/network-trigger /etc/rc.d/rcsysinit.d/S90network-trigger
-       ln -sf ../init.d/network-vlans /etc/rc.d/rcsysinit.d/S91network-vlans
        ln -sf ../init.d/rngd        /etc/rc.d/rcsysinit.d/S92rngd
+       ln -sf ../init.d/vnstat      /etc/rc.d/rc3.d/S01vnstat
+       ln -sf ../init.d/vnstat      /etc/rc.d/rc0.d/K51vnstat
+       ln -sf ../init.d/vnstat      /etc/rc.d/rc6.d/K51vnstat
        ln -sf ../init.d/wlanclient  /etc/rc.d/rc0.d/K82wlanclient
        ln -sf ../init.d/wlanclient  /etc/rc.d/rc3.d/S19wlanclient
        ln -sf ../init.d/wlanclient  /etc/rc.d/rc6.d/K82wlanclient
index 0590d9b5bfe3b28c15e622cc81ff4052a5b66b70..18159292ad4f851c617dad1ec34b7b75a1833f41 100644 (file)
@@ -32,7 +32,7 @@ DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = http://source.ipfire.org/releases/ipfire-netboot/
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = x86_64 i586
 
 ###############################################################################
 # Top-level Rules
index 42a8184d6bd476a79abc4deac1157ebf5526b83e..51f1f3d318138d9fdcde8b8a7f163da403cd97e0 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 3.5.1
+VER        = 4.2.0
 
 THISAPP    = iproute2-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE)             = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5         = d4425b44edd5eacd6099e672e4baacbf
+$(DL_FILE)_MD5         = 51c54cc3245eff451154938fbc0f64f5
 
 install : $(TARGET)
 
diff --git a/lfs/ipset b/lfs/ipset
new file mode 100644 (file)
index 0000000..254b1ec
--- /dev/null
+++ b/lfs/ipset
@@ -0,0 +1,87 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  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        = 6.26
+
+THISAPP    = ipset-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 5ec4e79053a30fb6d72e0549d7d09343
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./autogen.sh
+       cd $(DIR_APP) && KSOURCEDIR=/usr/src/linux KBUILDDIR=/usr/src/linux ./configure \
+               --prefix=/usr \
+               --disable-static
+
+       # Add configuration directory
+       -mkdir -pv /etc/ipset
+       chmod 750 /etc/ipset
+       chown root:root /etc/ipset
+
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index ec65ae04a0543dd02dee35028f860202747b1e9b..b7ce9289a1eaf62299b303796b549df0bd88a474 100644 (file)
@@ -35,26 +35,14 @@ TARGET     = $(DIR_INFO)/$(THISAPP)
 ###############################################################################
 # Top-level Rules
 ###############################################################################
-objects =      $(DL_FILE) \
-                       netfilter-layer7-v2.22.tar.gz \
-                       libnfnetlink-1.0.0.tar.bz2 \
-                       libnetfilter_queue-1.0.1.tar.bz2 \
-                       libnetfilter_conntrack-1.0.2.tar.bz2 \
-                       libnetfilter_cttimeout-1.0.0.tar.bz2
+objects = $(DL_FILE) \
+       netfilter-layer7-v2.22.tar.gz
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-netfilter-layer7-v2.22.tar.gz          = $(URL_IPFIRE)/netfilter-layer7-v2.22.tar.gz
-libnfnetlink-1.0.0.tar.bz2             = $(URL_IPFIRE)/libnfnetlink-1.0.0.tar.bz2
-libnetfilter_queue-1.0.1.tar.bz2       = $(URL_IPFIRE)/libnetfilter_queue-1.0.1.tar.bz2
-libnetfilter_conntrack-1.0.2.tar.bz2   = $(URL_IPFIRE)/libnetfilter_conntrack-1.0.2.tar.bz2
-libnetfilter_cttimeout-1.0.0.tar.bz2   = $(URL_IPFIRE)/libnetfilter_cttimeout-1.0.0.tar.bz2
+netfilter-layer7-v2.22.tar.gz = $(URL_IPFIRE)/netfilter-layer7-v2.22.tar.gz
 
 $(DL_FILE)_MD5 = 536d048c8e8eeebcd9757d0863ebb0c0
 netfilter-layer7-v2.22.tar.gz_MD5 = 98dff8a3d5a31885b73341633f69501f
-libnfnetlink-1.0.0.tar.bz2_MD5 = 016fdec8389242615024c529acc1adb8
-libnetfilter_queue-1.0.1.tar.bz2_MD5 = 08b968cb2d36c24deb7f26a69f5d8602
-libnetfilter_conntrack-1.0.2.tar.bz2_MD5 = 447114b5d61bb9a9617ead3217c3d3ff
-libnetfilter_cttimeout-1.0.0.tar.bz2_MD5 = 7697437fc9ebb6f6b83df56a633db7f9
 
 install : $(TARGET)
 
@@ -83,10 +71,8 @@ $(subst %,%_MD5,$(objects)) :
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-       @rm -rf $(DIR_APP) $(DIR_SRC)/libnfnetlink-* $(DIR_SRC)/netfilter-layer7* $(DIR_SRC)/libnetfilter_queue-*
-
+       @rm -rf $(DIR_APP) $(DIR_SRC)/netfilter-layer7*
        @cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
-#      cp -rf /usr/src/linux/include/linux/netfilter /usr/include/linux
 
        # Layer7
        cd $(DIR_SRC) && tar zxf $(DIR_DL)/netfilter-layer7-v2.22.tar.gz
@@ -96,44 +82,20 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        # imq
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.12-IMQ-test4.diff
 
-       cd $(DIR_APP) && ./configure  --prefix=/usr --with-ksource=/usr/src/linux \
-                                   --libdir=/lib --includedir=/usr/include --enable-libipq \
-                                   --libexecdir=/lib --bindir=/sbin \
-                                   --sbindir=/sbin --mandir=/usr/share/man \
-                                   --with-pkgconfigdir=/usr/lib/pkgconfig
+       cd $(DIR_APP) && ./configure \
+               --prefix=/usr \
+               --with-ksource=/usr/src/linux \
+               --libdir=/lib \
+               --includedir=/usr/include \
+               --enable-libipq \
+               --libexecdir=/lib \
+               --bindir=/sbin \
+               --sbindir=/sbin \
+               --mandir=/usr/share/man \
+               --with-pkgconfigdir=/usr/lib/pkgconfig
+
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
 
-       # Iptables doesn't install all headers
-#      mkdir -p /usr/include/net/netfilter
-#      cp -f $(DIR_APP)/include/net/netfilter/*.h /usr/include/net/netfilter/
-#      mkdir -p /usr/include/iptables
-#      cp -f $(DIR_APP)/include/iptables/*.h /usr/include/iptables/
-#      cp -f $(DIR_APP)/include/iptables.h /usr/include/
-#      mkdir -p /usr/include/libipulog
-#      cp -f $(DIR_APP)/include/libipulog/*.h /usr/include/libipulog/
-#      mkdir -p /usr/include/libiptc
-#      cp -f $(DIR_APP)/include/libiptc/*.h /usr/include/libiptc/
-
-       cd $(DIR_SRC) && tar xfj $(DIR_DL)/libnfnetlink-1.0.0.tar.bz2
-       cd $(DIR_SRC)/libnfnetlink-1.0.0 && ./configure --prefix=/usr
-       cd $(DIR_SRC)/libnfnetlink-1.0.0 && make $(MAKETUNING) $(EXTRA_MAKE)
-       cd $(DIR_SRC)/libnfnetlink-1.0.0 && make install
-
-       cd $(DIR_SRC) && tar xfj $(DIR_DL)/libnetfilter_queue-1.0.1.tar.bz2
-       cd $(DIR_SRC)/libnetfilter_queue-1.0.1 && ./configure --prefix=/usr
-       cd $(DIR_SRC)/libnetfilter_queue-1.0.1 && make $(MAKETUNING) $(EXTRA_MAKE)
-       cd $(DIR_SRC)/libnetfilter_queue-1.0.1 && make install
-
-       cd $(DIR_SRC) && tar xfj $(DIR_DL)/libnetfilter_conntrack-1.0.2.tar.bz2
-       cd $(DIR_SRC)/libnetfilter_conntrack-1.0.2 && ./configure --prefix=/usr
-       cd $(DIR_SRC)/libnetfilter_conntrack-1.0.2 && make $(MAKETUNING) $(EXTRA_MAKE)
-       cd $(DIR_SRC)/libnetfilter_conntrack-1.0.2 && make install
-
-       cd $(DIR_SRC) && tar xfj $(DIR_DL)/libnetfilter_cttimeout-1.0.0.tar.bz2
-       cd $(DIR_SRC)/libnetfilter_cttimeout-1.0.0 && ./configure --prefix=/usr
-       cd $(DIR_SRC)/libnetfilter_cttimeout-1.0.0 && make $(MAKETUNING) $(EXTRA_MAKE)
-       cd $(DIR_SRC)/libnetfilter_cttimeout-1.0.0 && make install
-
-       @rm -rf $(DIR_APP) $(DIR_SRC)/libnfnetlink-* $(DIR_SRC)/netfilter-layer7* $(DIR_SRC)/libnetfilter_queue-*
+       @rm -rf $(DIR_APP) $(DIR_SRC)/netfilter-layer7*
        @$(POSTBUILD)
index 28b7ed8da2cdb4252329878a56dcda02b95bfa22..2054a542195be6ee4663e21e3d1313f54203934c 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 1.2.7
+VER        = 1.2.17
 
 THISAPP    = keepalived-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = keepalived
-PAK_VER    = 1
+PAK_VER    = 2
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 8551a34ee048895dbe5350a031ff29c1
+$(DL_FILE)_MD5 = 8d6400e1be43fc303175164d69125dce
 
 install : $(TARGET)
 
index 68be46c8054e6a64053d73feeb017b5e9b54bb03..30119823964b31ccd119d85698d08ee63b22bb23 100644 (file)
--- a/lfs/krb5
+++ b/lfs/krb5
@@ -93,8 +93,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
                --enable-dns-for-realm \
                CPPFLAGS="-I/usr/include/et"
 
-       cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
-       cd $(DIR_APP) && make $(EXTRA_INSTALL) install
+       cd $(DIR_APP) && make #$(MAKETUNING)
+       cd $(DIR_APP) && make install
 
        for LIB in gssapi_krb5 gssrpc k5crypto kadm5clnt kadm5srv \
                        kdb5 kdb_ldap krad krb5 krb5support verto; do \
diff --git a/lfs/libarchive b/lfs/libarchive
new file mode 100644 (file)
index 0000000..43365ee
--- /dev/null
@@ -0,0 +1,85 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  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        = 3.1.2
+
+THISAPP    = libarchive-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = libarchive
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = efad5a503f66329bb9d2f4308b5de98a
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+dist: 
+       @$(PAK)
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure \
+               --prefix=/usr \
+               --disable-static
+
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index 9670b7bc11befadbe69ecdb18e845cd02155ef4f..0137d14b2dc5955b42fcfb22f07c82235c63c3b4 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2014  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 2.1.3
+VER        = 2.2.0
 
 THISAPP    = libassuan-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = libassuan
-PAK_VER    = 2
+PAK_VER    = 3
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = b5373485419a7e2c23457d20811caabe
+$(DL_FILE)_MD5 = a104faed3e97b9c302c5d67cc22b1d60
 
 install : $(TARGET)
 
index e2ad69fd5e99980dd1e50749d4cc550be6021282..2482dda179bae065c75999564076423fbe1d7335 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team  <info@ipfire.de>                      #
+# Copyright (C) 2007-2015  IPFire Team  <info@ipfire.de>                      #
 #                                                                             #
 # 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.0.21-stable
+VER        = 2.0.22-stable
 
 THISAPP    = libevent-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,11 +32,6 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 
-PROG       = libevent2
-PAK_VER    = 2
-
-DEPS       = ""
-
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -45,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = b2405cc9ebf264aa47ff615d9de527a2
+$(DL_FILE)_MD5 = c4c56f986aa985677ca1db89630a2e11
 
 install : $(TARGET)
 
@@ -68,8 +63,6 @@ $(patsubst %,$(DIR_DL)/%,$(objects)) :
 $(subst %,%_MD5,$(objects)) :
        @$(MD5)
 
-dist: 
-       @$(PAK)
 ###############################################################################
 # Installation Details
 ###############################################################################
@@ -77,8 +70,12 @@ dist:
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && ./configure --prefix=/usr
+       cd $(DIR_APP) && ./configure \
+               --prefix=/usr \
+               --disable-static
+
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 76ee3d0af52db46d5c8574316d36117c1ae23fa6..98cf7871eab6fef82e1ed7ae0213f0bc20e4e20a 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 1.6.1
+VER        = 1.6.4
 
 THISAPP    = libgcrypt-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = a5a5060dc2f80bcac700ab0236ea47dc
+$(DL_FILE)_MD5 = 4c13c5fa43147866f993d73ee62af176
 
 install : $(TARGET)
 
index 7faf289bc1161e2458f2764670c170c2c3c76fc6..ab9499e11df0883b75c900c4ab4cde1b8eb00523 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 1.13
+VER        = 1.20
 
 THISAPP    = libgpg-error-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = fe0cfa7e15262ef8fdeee366109e9ff6
+$(DL_FILE)_MD5 = 9997d9203b672402a04760176811589d
 
 install : $(TARGET)
 
similarity index 83%
rename from lfs/cryptodev
rename to lfs/libmpc
index 00e83e7c8a6107f26bc8c25b51cb4a6b27275cb8..5aa43d9ddb72f9369412d3bd9fe9ae7d6d2c6d29 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2011  IPFire Team <info@ipfire.org>                      #
+# 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        #
 
 include Config
 
-ifeq "$(KCFG)" "-xen"
-       KVER = 2.6.32.61
-endif
+VER        = 1.0.3
 
-VERSUFIX=ipfire$(KCFG)
-
-VER        = 6aa62a2c320b04f55fdfe0ed015c3d9b48997239
-
-THISAPP    = cryptodev-linux-$(VER)
+THISAPP    = mpc-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
-TARGET     = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)-$(VERSUFIX)
+TARGET     = $(DIR_INFO)/$(THISAPP)
 
 ###############################################################################
 # Top-level Rules
@@ -46,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = ddf7876487c876f6676ef0e050e9d204
+$(DL_FILE)_MD5 = d6a1d5f8ddea3abd2cc3e98f58352d26
 
 install : $(TARGET)
 
@@ -56,9 +50,6 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
 
 md5 : $(subst %,%_MD5,$(objects))
 
-dist: 
-       $(PAK)
-
 ###############################################################################
 # Downloading, checking, md5sum
 ###############################################################################
@@ -79,11 +70,8 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && make build \
-               KERNEL_DIR=/lib/modules/$(KVER)-$(VERSUFIX)/build
-
-       -mkdir -pv /usr/include/crypto
-       cd $(DIR_APP) && make install \
-               KERNEL_DIR=/lib/modules/$(KVER)-$(VERSUFIX)/build
+       cd $(DIR_APP) && ./configure --prefix=/usr
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 2bf1c6c6af8c91eee26f71081293fc3b4d78c4c1..6d664c9f0c20a6a6dee6d699df7bb2721aab6574 100644 (file)
@@ -77,7 +77,8 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && ./configure --prefix=/usr --enable-shared 
+       cd $(DIR_APP) && ./configure --prefix=/usr --enable-shared \
+               --disable-accel-detect
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
index 0547589805cb28f25d9bfc3905471a68db6508cc..a9efd99b3c2559caa134dc4a02f42e52b0eeca63 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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        #
 
 include Config
 
-VER        = 1.1.2.1
+VER        = 1.1.6
 
 THISAPP    = libnet-$(VER)
-DL_FILE    = libnet.tar.gz
+DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
-DIR_APP    = $(DIR_SRC)/libnet
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 
 ###############################################################################
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = be845c41170d72c7db524f3411b50256
+$(DL_FILE)_MD5 = 710296fe424a49344e5fcc0d09e53317
 
 install : $(TARGET)
 
similarity index 94%
rename from lfs/libusbx
rename to lfs/libnetfilter_conntrack
index 167b9450dbe43de5a535e595f8adcb464d7725b5..3a0dc1f8acb6989130c847d7c84eeed2f2fb13a7 100644 (file)
@@ -24,9 +24,9 @@
 
 include Config
 
-VER        = 1.0.11
+VER        = 1.0.4
 
-THISAPP    = libusbx-$(VER)
+THISAPP    = libnetfilter_conntrack-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 9aaab6aee72f65900cc731ecbffb4cf4
+$(DL_FILE)_MD5 = 18cf80c4b339a3285e78822dbd4f08d7
 
 install : $(TARGET)
 
@@ -70,8 +70,7 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && ./configure --prefix=/usr \
-               --enable-examples-build
+       cd $(DIR_APP) && ./configure --prefix=/usr
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
diff --git a/lfs/libnetfilter_cthelper b/lfs/libnetfilter_cthelper
new file mode 100644 (file)
index 0000000..3b469e6
--- /dev/null
@@ -0,0 +1,77 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# 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        #
+# 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.0.0
+
+THISAPP    = libnetfilter_cthelper-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = b2efab1a3a198a5add448960ba011acd
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/libnetfilter_cttimeout b/lfs/libnetfilter_cttimeout
new file mode 100644 (file)
index 0000000..a2184b2
--- /dev/null
@@ -0,0 +1,77 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# 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        #
+# 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.0.0
+
+THISAPP    = libnetfilter_cttimeout-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 7697437fc9ebb6f6b83df56a633db7f9
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/libnetfilter_queue b/lfs/libnetfilter_queue
new file mode 100644 (file)
index 0000000..19fe6a2
--- /dev/null
@@ -0,0 +1,77 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# 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        #
+# 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.0.2
+
+THISAPP    = libnetfilter_queue-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = df09befac35cb215865b39a36c96a3fa
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/libnfnetlink b/lfs/libnfnetlink
new file mode 100644 (file)
index 0000000..62350ea
--- /dev/null
@@ -0,0 +1,77 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# 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        #
+# 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.0.1
+
+THISAPP    = libnfnetlink-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 98927583d2016a9fb1936fed992e2c5e
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index cfe985c8a244cf2dd2bc93fdc81c6f460fef3b98..24379598f1fb392bb396811b867318e47a40a5ed 100644 (file)
@@ -70,6 +70,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) && sed -e "s/-Werror//g" -i src/Makefile.*
        cd $(DIR_APP) && ./configure --prefix=/usr
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
index fa2aae8f3461618410b503f2b458cf822c827a7e..10fbcd4ddc9cf3de82fe34c6df7d910e78b45112 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2014  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 1.6.2
+VER        = 1.7.4
 
 THISAPP    = libpcap-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -42,7 +42,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 5f14191c1a684a75532c739c2c4059fa
+$(DL_FILE)_MD5 = b2e13142bbaba857ab1c6894aedaf547
 
 install : $(TARGET)
 
index 4e1f2e577ab49bc1c91c63c50d39a4a94ddebf1a..60c9498becd2148790dbc934fa7bf3f546fa77ae 100644 (file)
@@ -77,7 +77,8 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && make $(MAKETUNING) clean all KVERS=$(KVER)
+       cd $(DIR_APP) && make $(MAKETUNING) clean all KVERS=$(KVER) \
+               CFLAGS="$(CFLAGS)"
        cd $(DIR_APP) && make install KVERS=$(KVER)
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 6dfef3b1977c3ac8d45d75ad5447837ea1be9af3..47c0cad57c04248cc863b2a8de3d90dfdf65edc7 100644 (file)
 
 include Config
 
-VER        = 1.5.0
+VER        = 1.5.2
 THISAPP    = libsrtp-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = libsrtp
-PAK_VER    = 1
+PAK_VER    = 2
 
 DEPS       = ""
 
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = ec49ba558b4fd056114df2c76935aa8e
+$(DL_FILE)_MD5 = 2309aa6027992810a4285b042c71e644
 
 install : $(TARGET)
 
@@ -78,7 +78,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
 
        cd $(DIR_APP) && ./configure --prefix=/usr 
-       cd $(DIR_APP) && make uninstall && make $(MAKETUNING) libsrtp.so
+       cd $(DIR_APP) && make uninstall && make $(MAKETUNING) shared_library
        cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index e6bcd4060cebb5be364c57ad899722871e497a55..01721450553d5d88009ba56b80458e8134361263 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2012  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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.4.2
+VER        = 2.4.4
 
 THISAPP    = libtool-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -42,7 +42,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 2ec8997e0c07249eb4cbd072417d70fe
+$(DL_FILE)_MD5 = 51bf400de3354687d68dfa2392506b7e
 
 install : $(TARGET)
 
index b35c90cefbcdb6e556d08f30a5d0e6a78f2c5a71..f557bd8be7d0a15e2fa98fb0eb1efc6a5b07f7a1 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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        #
 
 include Config
 
-VER        = 0.1.12
+VER        = 1.0.19
 
 THISAPP    = libusb-$(VER)
-DL_FILE    = $(THISAPP).tar.gz
+DL_FILE    = $(THISAPP).tar.bz2
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = caf182cbc7565dac0fd72155919672e6
+$(DL_FILE)_MD5 = f9e2bb5879968467e5ca756cb4e1fa7e
 
 install : $(TARGET)
 
@@ -69,7 +69,7 @@ $(subst %,%_MD5,$(objects)) :
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure --prefix=/usr --disable-build-docs --disable-nls
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
diff --git a/lfs/libusb-compat b/lfs/libusb-compat
new file mode 100644 (file)
index 0000000..6d63843
--- /dev/null
@@ -0,0 +1,80 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 0.1.5
+
+THISAPP    = libusb-compat-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 2780b6a758a1e2c2943bdbf7faf740e4
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+
+       cd $(DIR_APP) && ./configure --prefix=/usr --disable-static
+       cd $(DIR_APP) && make -j $(PARALLELISM)
+       cd $(DIR_APP) && make install
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index 4a25c4ca5f81a66af1d77f297d04dfebcb119a06..ae2621b032376ee0e4c8ef211b811113dc367e6f 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 2.6.32
+VER        = 2.9.2
 
 THISAPP    = libxml2-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -42,7 +42,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 2621d322c16f0257e30f0ff2b13384de
+$(DL_FILE)_MD5 = 9e6a9aca9d155737868b3dc5fd82f788
 
 install : $(TARGET)
 
index 47ee4f8cd9c0bf0ed671d6af73cd624368cff799..1339f42f9545170b9c0016855e661b973f145912 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 1.1.17
+VER        = 1.1.28
 
 THISAPP    = libxslt-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = fde6a7a93c0eb14cba628692fa3a1000
+$(DL_FILE)_MD5 = 9667bf6f9310b957254fdcf6596600b7
 
 install : $(TARGET)
 
index 8b4f941128768c3fc1ebead6c2ec8caea42c2f33..3fd8d8c236e11b3ab7fa15d3112b003cf41816f8 100644 (file)
--- a/lfs/linux
+++ b/lfs/linux
 
 include Config
 
-VER        = 3.14.39
+VER         = 3.14.57
+RPI_PATCHES = 3.14.57-grsec-ipfire1
+A7M_PATCHES = 3.14.57-grsec-ipfire1
+GRS_PATCHES = grsecurity-3.1ipfire-3.14.57-v1.patch.xz
 
-RPI_PATCHES = 3.14.39-grsec-ipfire1
-A7M_PATCHES = 3.14.39-grsec-ipfire1
-GRS_PATCHES = grsecurity-3.1-3.14.39-201504190814.patch.xz
 
 THISAPP    = linux-$(VER)
 DL_FILE    = linux-$(VER).tar.xz
@@ -37,9 +37,15 @@ DIR_APP    = $(DIR_SRC)/$(THISAPP)
 CFLAGS     =
 CXXFLAGS   =
 
-PAK_VER    = 59
+PAK_VER    = 64
 DEPS      = ""
 
+KERNEL_ARCH = $(MACHINE)
+
+ifeq "$(MACHINE)" "i586"
+       KERNEL_ARCH = i386
+endif
+
 VERSUFIX=ipfire$(KCFG)
 
 ifeq "$(TOOLS)" "1"
@@ -77,10 +83,10 @@ rpi-patches-$(RPI_PATCHES).patch.xz         = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES).
 arm7-multi-patches-$(A7M_PATCHES).patch.xz     = $(URL_IPFIRE)/arm7-multi-patches-$(A7M_PATCHES).patch.xz
 $(GRS_PATCHES)                                 = $(URL_IPFIRE)/$(GRS_PATCHES)
 
-$(DL_FILE)_MD5                                 = 3581855d0dbfcbe1140dfcd1406d0a91
-rpi-patches-$(RPI_PATCHES).patch.xz_MD5                = 5056304af0a199194abd0bcb00015f28
-arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = a4a4103255e93bfcb02652212b0ae3fc
-$(GRS_PATCHES)_MD5                             = 2121d0bf825da9ff6321e2940f247c5e
+$(DL_FILE)_MD5                                 = b7e254c83a0324852c8ccc4ed1b5377d
+rpi-patches-$(RPI_PATCHES).patch.xz_MD5                = 4ab53e184441c895adf318a1c2874d43
+arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = f29bd5c156384b0a4bb7c6e2c973ea06
+$(GRS_PATCHES)_MD5                             = de603c5cb2e38ee308f1647ad3bd24cf
 
 install : $(TARGET)
 
@@ -152,7 +158,7 @@ endif
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10.30_cs5535audio_fix_logspam_on_geos.patch
 
        # Add PC Engines APU led support
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10-apu_leds.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14-apu_leds.patch
 
        # Fix uevent PHYSDEVDRIVER
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.2.33_ipg-fix-driver-name.patch
@@ -161,8 +167,38 @@ endif
        # r8169 L23 patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.32-r8169_disable_L23.patch
 
-       # HyperV 2008 patch
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.x-hyperv-2008-fix.patch
+       # update the queued trim blacklist from kernel 4.2rc1
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.43_new_qtrim_blacklist.patch
+
+       # Hyper-V patches
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0001-Drivers-net-hyperv-Get-rid-of-the-rndis_filter_packe.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0002-Drivers-net-hyperv-Cleanup-the-receive-path.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0003-Drivers-net-hyperv-Cleanup-the-netvsc-receive-callba.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0004-hyperv-Add-latest-NetVSP-versions-to-auto-negotiatio.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0005-Drivers-net-hyperv-Enable-scatter-gather-I-O.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0006-Drivers-net-hyperv-Cleanup-the-send-path.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0007-Drivers-net-hyperv-Enable-offloads-on-the-host.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0008-Drivers-net-hyperv-Enable-receive-side-IP-checksum-o.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0009-Drivers-net-hyperv-Enable-send-side-checksum-offload.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0010-Drivers-net-hyperv-Enable-large-send-offload.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0011-hyperv-Change-the-receive-buffer-size-for-legacy-hos.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0012-Drivers-net-hyperv-Allocate-memory-for-all-possible-.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0013-Drivers-net-hyperv-Negotiate-suitable-ndis-version-f.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0014-Drivers-net-hyperv-Address-UDP-checksum-issues.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0015-hyperv-Properly-handle-checksum-offload.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0016-hyperv-Add-support-for-virtual-Receive-Side-Scaling-.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0017-hyperv-Remove-recv_pkt_list-and-lock.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0018-hyperv-Simplify-the-send_completion-variables.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0019-hyperv-Enable-sendbuf-mechanism-on-the-send-path.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0020-Add-support-for-netvsc-build-without-CONFIG_SYSFS-fl.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0021-hyperv-Add-hash-value-into-RNDIS-Per-packet-info.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0022-hyperv-fix-apparent-cut-n-paste-error-in-send-path-t.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0023-hyperv-Fix-error-return-code-in-netvsc_init_buf.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0024-hyperv-Fix-a-bug-in-netvsc_send.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/0025-Drivers-hv-vmbus-Support-per-channel-driver-state.patch
+
+       # fix empty symbol crc's
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-genksyms_fix_typeof_handling.patch
 
 ifeq "$(KCFG)" "-kirkwood"
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10.10-mv_cesa_disable_failing_hmac_sha1.patch
@@ -174,6 +210,7 @@ ifeq "$(KCFG)" "-multi"
 
        # Apply Arm7-multiarch kernel patches.
        cd $(DIR_APP) && xzcat $(DIR_DL)/arm7-multi-patches-$(A7M_PATCHES).patch.xz | patch -Np1
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/arm-multi-grsec-compile-fixes.patch
 
        # Install switch api userspace header
        cd $(DIR_APP) && install -v -m644 include/uapi/linux/switch.h /usr/include/linux/
@@ -219,7 +256,7 @@ ifeq "$(KCFG)" "-rpi"
        cd $(DIR_APP) && cp -v arch/arm/boot/zImage /boot/kernel.img
 else
        cd $(DIR_APP) && make $(MAKETUNING) bzImage modules
-       cd $(DIR_APP) && cp -v arch/i386/boot/bzImage /boot/vmlinuz-$(VER)-$(VERSUFIX)
+       cd $(DIR_APP) && cp -v arch/$(KERNEL_ARCH)/boot/bzImage /boot/vmlinuz-$(VER)-$(VERSUFIX)
 endif
 endif
 endif
similarity index 69%
rename from lfs/tripwire
rename to lfs/lua
index 9942441e908017c99b4f52e60e15ebc1a40f0259..6a6a9593b166fd30a741e3efec85872479eb82f9 100644 (file)
+++ b/lfs/lua
 
 include Config
 
-VER        = 2.4.1.2
+VER        = 5.3.0
 
-THISAPP    = tripwire-$(VER)
-DL_FILE    = $(THISAPP)-src.tar.bz2
+THISAPP    = lua-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-PROG       = tripwire
-PAK_VER    = 1
-CFLAGS     =
-CXXFLAGS   = 
-
-DEPS       = ""
 
 ###############################################################################
 # Top-level Rules
@@ -46,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 8a1147c278b528ed593023912c4b649a
+$(DL_FILE)_MD5 = a1b0a7e92d0c85bbff7a8d27bf29f8af
 
 install : $(TARGET)
 
@@ -56,9 +50,6 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
 
 md5 : $(subst %,%_MD5,$(objects))
 
-dist: 
-       $(PAK)
-
 ###############################################################################
 # Downloading, checking, md5sum
 ###############################################################################
@@ -78,21 +69,12 @@ $(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)-src && ln -fs contrib install
-       cd $(DIR_APP)-src && sed -i -e 's@TWDB="$${prefix}@TWDB="/var@' \
-                                                                                                       -e 's@^CLOBBER="false"@CLOBBER="true"@' install/install.cfg
-       cd $(DIR_APP)-src && sed -i -e 's@^PROMPT="true"@PROMPT="false"@' \
-                                                                                                       -e 's@^TW_SITE_PASS=""@TW_SITE_PASS="ipfire"@' \
-                                                                                                       -e 's@^TW_LOCAL_PASS=""@TW_LOCAL_PASS="ipfire"@' \
-                                                                                                       install/install.sh
-       cd $(DIR_APP)-src && ./configure --prefix=/usr --sysconfdir=/var/ipfire/tripwire
-       cd $(DIR_APP)-src && make $(MAKETUNING) $(EXTRA_MAKE)
-       cd $(DIR_APP)-src && for i in siggen tripwire twadmin twprint; do \
-                                                                                                       cp -vf $(DIR_APP)-src/bin/$$i /usr/sbin; \
-                                                                                        done
-       cp -vrf $(DIR_SRC)/config/tripwire/* /var/ipfire/tripwire/
-       cp -vfp /var/ipfire/tripwire/twcfg.txt /var/ipfire/tripwire/twcfg.default
-       cp -vfp /var/ipfire/tripwire/twpol.txt /var/ipfire/tripwire/twpol.default
-       @rm -rf $(DIR_APP)*
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && cp -v src/luaconf.h src/luaconf.h.template.in
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/lua-5.3.0-autotoolize.patch
+       cd $(DIR_APP) && autoreconf -vfi
+       cd $(DIR_APP) && ./configure --prefix=/usr
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
        @$(POSTBUILD)
diff --git a/lfs/lzo b/lfs/lzo
index 19ad0909cc3d4f003ac3a3f6a94f3ab795551a92..2afc89f5d5a3244116874982201661a670b7f1cf 100644 (file)
--- a/lfs/lzo
+++ b/lfs/lzo
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team   <info@ipfire.org>                    #
+# Copyright (C) 2015 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.06
+VER        = 2.09
 
 THISAPP    = lzo-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 95380bd4081f85ef08c5209f4107e9f8
+$(DL_FILE)_MD5 = c7ffc9a103afe2d1bba0b015e7aa887f
 
 install : $(TARGET)
 
@@ -70,9 +70,14 @@ $(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/lzo-2.06-CVE-2014-4607.patch
-       cd $(DIR_APP) && ./configure --prefix=/usr --enable-shared 
+       cd $(DIR_APP) && ./configure \
+               --prefix=/usr \
+               --enable-shared \
+               --disable-static \
+               --docdir=/usr/share/doc/lzo-2.09
+
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index c471c760730f19a2dd2b2b6273c22c968d2f429c..923696a80c027b8fed2494689f3591e9b31ee780 100644 (file)
@@ -70,6 +70,7 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_SRC)/mISDNuser && cd $(DIR_SRC) && tar Jxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_SRC)/mISDNuser && sed -e "s/-Werror//g" -i */Makefile.*
        cd $(DIR_SRC)/mISDNuser && make
        cd $(DIR_SRC)/mISDNuser && ./configure --prefix=/usr --with-AF_ISDN=34
        cd $(DIR_SRC)/mISDNuser && make MISDNDIR=/usr/src/linux
index 5650230f9353368b8ea03db5d1bee21a8555e3e9..c8c2cb00971d208a7e18d7223e37dc5bca588931 100644 (file)
--- a/lfs/make
+++ b/lfs/make
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2011  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2015  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        #
 
 include Config
 
-VER        = 3.81
+VER        = 4.1
 
 THISAPP    = make-$(VER)
-DL_FILE    = $(THISAPP).tar.bz2
+DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 PROG       = make
-PAK_VER    = 2
+PAK_VER    = 3
 
 DEPS       = ""
 
@@ -61,7 +61,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 354853e0b2da90c527e35aabb8d6f1e6
+$(DL_FILE)_MD5 = 654f9117957e6fa6a1c49a8f08270ec9
 
 install : $(TARGET)
 
@@ -93,7 +93,7 @@ $(subst %,%_MD5,$(objects)) :
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure $(EXTRA_CONFIG)
        cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_APP) && make $(EXTRA_INSTALL) install
diff --git a/lfs/mc b/lfs/mc
index 4dc937cb835d849f62f389bcfd9d80b1b68c1590..091b58a097e7a7596e10db48695708333d7aa1b9 100644 (file)
--- a/lfs/mc
+++ b/lfs/mc
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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        = 4.8.13
+VER        = 4.8.15
 
 THISAPP    = mc-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = mc
-PAK_VER    = 10
+PAK_VER    = 11
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = d967caa12765eb86e52a6a63ca202500
+$(DL_FILE)_MD5 = 7c1935433866fdf59a3c2d9b7dae81ad
 
 install : $(TARGET)
 
@@ -54,7 +54,7 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
 
 md5 : $(subst %,%_MD5,$(objects))
 
-dist: 
+dist:
        @$(PAK)
 
 ###############################################################################
@@ -80,7 +80,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && ./configure --prefix=/usr \
                                --sysconfdir=/etc \
                                --without-x --disable-nls \
-                               --with-samba \
                                --with-screen=ncurses
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
index 29d495d605f0520de3c0ee8899ab537297442b3f..de9703406508f9f784a8d70690c6f9d410817939 100644 (file)
--- a/lfs/mdadm
+++ b/lfs/mdadm
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 3.3.2
+VER        = 3.3.4
 
 THISAPP    = mdadm-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 44698d351501cac6a89072dc877eb220
+$(DL_FILE)_MD5 = 7ca8b114710f98f53f20c5787b674a09
 
 install : $(TARGET)
 
index d98ea872bd89cd0d748fe3440afed19c90a124ac..cef29d69e89b39d155993bfc114d1d647bbf0ae2 100644 (file)
@@ -31,7 +31,7 @@ DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = i586 x86_64
 
 ###############################################################################
 # Top-level Rules
@@ -71,11 +71,19 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       -mkdir -p /usr/lib/memtest86+
+
+ifeq "$(MACHINE)" "i586"
        # Enable SMP as default
        cd $(DIR_APP) && sed -i -e "s|CONSERVATIVE_SMP 1|CONSERVATIVE_SMP 0|g" config.h
        cd $(DIR_APP) && sed -i -e "s|scp |echo |g" Makefile
        cd $(DIR_APP) && make $(EXTRA_MAKE)
-       -mkdir -p /usr/lib/memtest86+
        cd $(DIR_APP) && cp -f memtest.bin /usr/lib/memtest86+
+else
+       # 64bit only systems cannot link mentest without 32bit gcc libs
+       # so we use the precompiled binary from memtest author
+       cd $(DIR_APP) && cp -f precomp.bin /usr/lib/memtest86+/memtest.bin
+endif
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 92e0760023b1780efd930dd44220d442e977d2e4..453ad0376a08342ad9c7216cf70e40ffdb7eef20 100644 (file)
--- a/lfs/monit
+++ b/lfs/monit
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 5.12.1
+VER        = 5.14
 
 THISAPP    = monit-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = monit
-PAK_VER    = 6
+PAK_VER    = 7
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 1ffde79207270925f6f7df787d19100a
+$(DL_FILE)_MD5 = 1b3ae1eb08a0914402a8764e5689c1c5
 
 install : $(TARGET)
 
index b0346770fa07e203ab29d43105a58aac79161b21..0d92c6be5eb1e113d499f40de3fd45217952b9ed 100644 (file)
--- a/lfs/nano
+++ b/lfs/nano
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2016  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,7 +24,7 @@
 
 include Config
 
-VER        = 2.2.6
+VER        = 2.5.1
 
 THISAPP    = nano-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = nano
-PAK_VER    = 3
+PAK_VER    = 8
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 03233ae480689a008eb98feb1b599807
+$(DL_FILE)_MD5 = f25c7da9813ae5f1df7e5dd1072de4ce
 
 install : $(TARGET)
 
index 5af5e47c718b8f672477d792b614bb7f99871dee..ab5e4f874f2722fda48ef00d46bd920305f245d2 100644 (file)
@@ -36,6 +36,8 @@ PAK_VER    = 1
 
 DEPS       = ""
 
+CFLAGS    += -flax-vector-conversions
+
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -79,7 +81,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP)/converter && patch -Np1 < $(DIR_SRC)/src/patches/netpbm-10.26.46-getline.patch
        cp $(DIR_SRC)/config/netpbm/Makefile.config $(DIR_APP)
-       cd $(DIR_APP) && make
+       cd $(DIR_APP) && make CFLAGS="$(CFLAGS)"
        cd $(DIR_APP) && make package PKGDIR=/usr/local/netpbm
        cp /usr/local/netpbm/lib/lib* /usr/lib
        @rm -rf $(DIR_APP)
index 388b20b120d68a5396e7568e275901b85faf5a22..b51367855f714f3b330790da7d05aa24ee335c64 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2011  IPFire Team  <info@ipfire.org>                          #
+# Copyright (C) 2015  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        #
 
 include Config
 
-VER        = 5.4.2.1
+VER        = 5.7.3
 
 THISAPP    = net-snmp-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-PROG      = netsnmpd
-PAK_VER           = 2
+PROG       = netsnmpd
+PAK_VER    = 4
 DEPS       = ""
 
 ###############################################################################
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 984932520143f0c8bf7b7ce1fc9e1da1
+$(DL_FILE)_MD5 = d4a3459e1577d0efa8d96ca70a885e53
 
 install : $(TARGET)
 
@@ -77,21 +77,22 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure \
-                                   --prefix=/usr \
-                                   --with-default-snmp-version="2" \
-                                   --with-sys-contact="root@" \
-                                   --with-sys-location="localhost" \
-                                   --with-logfile="/var/log/snmpd.log" \
-                                   --with-persistent-directory="/var/net-snmp" \
-                                   --libdir=/usr/lib \
-                                   --sysconfdir="/etc"
+               --prefix=/usr \
+               --with-default-snmp-version="2" \
+               --with-sys-contact="root@" \
+               --with-sys-location="localhost" \
+               --with-logfile="/var/log/snmpd.log" \
+               --with-persistent-directory="/var/net-snmp" \
+               --libdir=/usr/lib \
+               --sysconfdir="/etc"
        cd $(DIR_APP) && make 
        cd $(DIR_APP) && make install
        install -v -m644 $(DIR_SRC)/config/netsnmpd/snmpd.conf /etc/snmpd.conf
+       install -v -m 644 $(DIR_SRC)/config/backup/includes/netsnmpd \
+               /var/ipfire/backup/addons/includes/netsnmpd
        install -v -m755 $(DIR_SRC)/src/initscripts/init.d/netsnmpd /etc/init.d/netsnmpd
        ln -sf ../init.d/netsnmpd /etc/rc.d/rc3.d/S65netsnmpd
        ln -sf ../init.d/netsnmpd /etc/rc.d/rc0.d/K02netsnmpd
        ln -sf ../init.d/netsnmpd /etc/rc.d/rc6.d/K02netsnmpd
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
-       
index 0ea42f343f0b079e65ef36f829abbcced628de46..b48b405e37962c342f99f70b17ea7c432edf6bf5 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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        = 3.0
+VER        = 3.1.1
 
 THISAPP    = nettle-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = f64b1bf1e774b7ae6e507318e340250e
+$(DL_FILE)_MD5 = b40fa88dc32f37a182b6b42092ebb144
 
 install : $(TARGET)
 
@@ -73,7 +73,13 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && ./configure \
                --prefix=/usr \
                --enable-shared
+
        cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && sed -i '/^install-here/ s/ install-static//' Makefile
        cd $(DIR_APP) && make install
+
+       chmod -v 755 /usr/lib/lib{hogweed,nettle}.so
+       install -v -m755 -d /usr/share/doc/nettle-3.1.1
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index daad9dce9198f9714152ac2836395f8b0dfc1fdb..ed535620c75124b43f5216e225321f3e7479fdcd 100644 (file)
--- a/lfs/newt
+++ b/lfs/newt
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 0.52.17
+VER        = 0.52.18
 
 THISAPP    = newt-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = f36d4d908965a0c89fd6fd8b61a6118b
+$(DL_FILE)_MD5 = 685721bee1a318570704b19dcf31d268
 
 install : $(TARGET)
 
diff --git a/lfs/ntp b/lfs/ntp
index c3d8d5855edc8fcaf27ac1cf55b0f5b13f5ecad0..3393f9059f1155d8a03684a9485898a95156fa0a 100644 (file)
--- a/lfs/ntp
+++ b/lfs/ntp
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2016  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,7 +24,7 @@
 
 include Config
 
-VER        = 4.2.8
+VER        = 4.2.8p5
 
 THISAPP    = ntp-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 6972a626be6150db8cfbd0b63d8719e7
+$(DL_FILE)_MD5 = 9f02b2a0acc1617ce2716d529a58d2d8
 
 install : $(TARGET)
 
@@ -85,7 +85,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        chown -R ntp:ntp /etc/ntp
        echo "disable monitor" > /etc/ntp.conf
        echo "restrict default nomodify noquery" >>  /etc/ntp.conf
-       echo "server  127.127.1.0"                      >> /etc/ntp.conf
+       echo "server  127.127.1.0 prefer"       >> /etc/ntp.conf
        echo "fudge   127.127.1.0 stratum 10"   >> /etc/ntp.conf
        echo "driftfile /etc/ntp/drift"         >> /etc/ntp.conf
 
index d8f337baf873ba5d4c91d490499af9d07545f1c1..546bc7ed8223b83a67effcfed3102ccd069625d9 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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        = 6.8p1
+VER        = 7.1p2
 
 THISAPP    = openssh-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 08f72de6751acfbd0892b5f003922701
+$(DL_FILE)_MD5 = 4d8547670e2a220d5ef805ad9e47acf2
 
 install : $(TARGET)
 
@@ -70,9 +70,6 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-ifeq "$(PADLOCK)" "1"
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssh-4.7p1-padlock.patch
-endif
        cd $(DIR_APP) && sed -i "s/lkrb5 -ldes/lkrb5/" configure
        cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc/ssh \
                    --libexecdir=/usr/lib/openssh --with-md5-passwords \
@@ -93,6 +90,11 @@ endif
            -e 's/^#\?SyslogFacility AUTH .*$$/SyslogFacility AUTH/' \
            -e 's/^#\?LogLevel INFO .*$$/LogLevel INFO/' \
            -e 's/^#\?AllowTcpForwarding .*$$/AllowTcpForwarding no/' \
+           -e 's/^#\?PermitRootLogin .*$$/PermitRootLogin yes/' \
+           -e 's|^#\?HostKey /etc/ssh/ssh_host_dsa_key$$||' \
+           -e 's|^#\?HostKey /etc/ssh/ssh_host_ecdsa_key$$||' \
+           -e 's|^#\?HostKey /etc/ssh/ssh_host_ed25519_key$$||' \
+           -e 's|^#\?HostKey /etc/ssh/ssh_host_rsa_key$$|HostKey /etc/ssh/ssh_host_ecdsa_key\nHostKey /etc/ssh/ssh_host_ed25519_key\nHostKey /etc/ssh/ssh_host_rsa_key|' \
            /etc/ssh/sshd_config
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 6f31e02b1f124fa6f678faec0a0907b093087c5e..1dc24ac2a6922be3e8dfdce8a97b99a8e3653b55 100644 (file)
 
 include Config
 
-VER        = 1.0.2a
+VER        = 1.0.2e
 
 THISAPP    = openssl-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
-TARGET     = $(DIR_INFO)/$(THISAPP)
+
+TARGET = $(DIR_INFO)/$(THISAPP)$(KCFG)
+
+ifneq "$(KCFG)" "-sse2"
+CFLAGS += -DPURIFY
+else
+CFLAGS =-O2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fPIC
+CFLAGS+= -fstack-protector-all --param=ssp-buffer-size=4
+CFLAGS+= -march=i686 -mmmx -msse -msse2 -mfpmath=sse
+CFLAGS+= -fomit-frame-pointer -DPURIFY
+CXXFLAGS="${CFLAGS}"
+endif
+
+export RPM_OPT_FLAGS = $(CFLAGS)
+
+CONFIGURE_OPTIONS = \
+       --prefix=/usr \
+       --openssldir=/etc/ssl \
+       --enginesdir=/usr/lib/openssl/engines \
+       shared \
+       zlib-dynamic \
+       enable-camellia \
+       enable-md2 \
+       enable-seed \
+       enable-tlsext \
+       enable-rfc3779 \
+       no-idea \
+       no-mdc2 \
+       no-rc5 \
+       no-srp \
+       -DSSL_FORBID_ENULL
+
+ifeq "$(MACHINE)" "x86_64"
+       CONFIGURE_OPTIONS += linux-x86_64
+endif
 
 ifeq "$(MACHINE)" "i586"
-       CONFIGURE_ARGS = linux-generic32 no-asm 386
+       CONFIGURE_OPTIONS += linux-elf
+
+ifneq "$(KCFG)" "-sse2"
+       CONFIGURE_OPTIONS += no-sse2
+endif
 endif
 
 ifeq "$(MACHINE)" "armv5tel"
-       CONFIGURE_ARGS = linux-generic32
+       CONFIGURE_OPTIONS += linux-generic32
 endif
 
-CFLAGS += -DPURIFY
-export RPM_OPT_FLAGS = $(CFLAGS)
-
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -51,7 +86,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = a06c547dac9044161a477211049f60ef
+$(DL_FILE)_MD5 = 2218c1a6f807f7206c11eb3ee3a5ec80
 
 install : $(TARGET)
 
@@ -86,6 +121,16 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.0.1m-weak-ciphers.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-disable-sslv2-sslv3.patch
 
+       # i586 specific patches
+ifeq "$(MACHINE)" "i586"
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.0.2a_auto_enable_padlock.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch
+endif
+
+       # With openssl 1.0.2e, pod2mantest is missing
+       echo -e "#!/bin/bash\necho \$$(which pod2man)" > $(DIR_APP)/util/pod2mantest
+       chmod a+x $(DIR_APP)/util/pod2mantest
+
        # Apply our CFLAGS
        cd $(DIR_APP) && sed -i Configure \
                -e "s/-O3 -fomit-frame-pointer/$(CFLAGS)/g"
@@ -93,27 +138,16 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && find crypto/ -name Makefile -exec \
                sed 's/^ASFLAGS=/&-Wa,--noexecstack /' -i {} \;
 
-       cd $(DIR_APP) && ./Configure \
-               --prefix=/usr \
-               --openssldir=/etc/ssl \
-               --enginesdir=/usr/lib/openssl/engines \
-               shared \
-               zlib-dynamic \
-               enable-camellia \
-               enable-md2 \
-               enable-seed \
-               enable-tlsext \
-               enable-rfc3779 \
-               no-idea \
-               no-mdc2 \
-               no-rc5 \
-               no-srp \
-               $(CONFIGURE_ARGS) \
-               -DSSL_FORBID_ENULL
+       cd $(DIR_APP) && ./Configure $(CONFIGURE_OPTIONS)
 
        cd $(DIR_APP) && make depend
        cd $(DIR_APP) && make
 
+ifeq "$(KCFG)" "-sse2"
+       -mkdir -pv /usr/lib/sse2
+       cd $(DIR_APP) && install -m 755 \
+               libcrypto.so.10 /usr/lib/sse2
+else
        # Install everything.
        cd $(DIR_APP) && make install
        install -m 0644 $(DIR_SRC)/config/ssl/openssl.cnf /etc/ssl
@@ -125,6 +159,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        -mkdir -pv /usr/lib/openssl
        rm -vfr /usr/lib/openssl/engines
        mv -v /usr/lib/engines /usr/lib/openssl
+endif
 
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index baae59598dcd0d7240a37566bead30047918a332..72101d5260f221e5318b5943728451ccc3c49d63 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2007-2015   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        #
 
 include Config
 
-VER        = 8.4.2-261024
+VER        = 10.0.5-3227872
 
 THISAPP    = open-vm-tools-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = x86_64 i586
 PROG       = openvmtools
-PAK_VER    = 1
+PAK_VER    = 2
 
 DEPS       = ""
 
-CFLAGS    += -fno-PIC
+#CFLAGS    += -fno-PIC
 
 ###############################################################################
 # Top-level Rules
@@ -47,7 +47,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 4d9ddc865b42fc6982c3078031500486
+$(DL_FILE)_MD5 = 734eccf6e9e007cb37dc4eb3ed6707b5
 
 install : $(TARGET)
 
@@ -79,12 +79,15 @@ $(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) && sed -e "s/-Werror//g" -i configure.ac
+       cd $(DIR_APP) && autoreconf -vfi
        cd $(DIR_APP) && ./configure --prefix=/usr \
           --with-kernel-release=$(KVER)-ipfire --without-pam \
           --disable-unity --without-gtk2 --without-gtkmm \
-          --without-procps --without-dnet --without-icu \
+          --without-procps --without-icu \
           --without-x --with-linuxdir=/usr/src/linux \
-          --without-kernel-modules
+          --without-kernel-modules --disable-deploypkg \
+          --without-xerces-c --without-xerces
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
        ln -sf ../init.d/openvmtools /etc/rc.d/rc3.d/S60openvmtools
index a19ac1ff15d2834eaa0f909e47ac8c261514af07..96e37f7d479b21cf94800594e15604bd85d54ca9 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2014  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2015  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.3.6
+VER        = 2.3.7
 
 THISAPP    = openvpn-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = bcc30c296566df14feebdd8aa0e408ca
+$(DL_FILE)_MD5 = 5b819f7cd0b875f55f20a947224967aa
 
 install : $(TARGET)
 
index 88c5f4590fd41bbcd86ddace3e2e18191625b698..e021a4c63aed6b7b379be66dd52bf5d8d75e1e6f 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 7.0.3
+VER        = 7.0.11
 
 THISAPP    = owncloud-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = owncloud
-PAK_VER           = 4
+PAK_VER           = 6
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = d5d2ad068046e6ddb322cf001a9bb3d5
+$(DL_FILE)_MD5 = 1f4839e43bc910a9acd8700fb9923b3a
 
 install : $(TARGET)
 
index 6f90f89bb1379ef66f02f7e502ec546f934070b2..00d1bb1c0d5b2bedba2a08aaaa5488258409e978 100644 (file)
@@ -30,10 +30,10 @@ THISAPP    = pakfire
 DIR_APP    = /opt/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 
-ifeq "$(MACHINE_TYPE)" "arm"
-       PAKFIRE_VERSION = $(VERSION)-$(MACHINE)
-else
+ifeq "$(MACHINE)" "i586"
        PAKFIRE_VERSION = $(VERSION)
+else
+       PAKFIRE_VERSION = $(VERSION)-$(MACHINE)
 endif
 
 ###############################################################################
index f5c771ca81ea21ab838fb71b03cbbd67c36e6666..fd66350043986bf25a38d52680ddf10279914b85 100644 (file)
--- a/lfs/pcre
+++ b/lfs/pcre
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 8.36
+VER        = 8.37
 
 THISAPP    = pcre-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = ff7b4bb14e355f04885cf18ff4125c98
+$(DL_FILE)_MD5 = 6e0cc6d1bdac7a4308151f9b3571b86e
 
 install : $(TARGET)
 
@@ -70,6 +70,11 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/pcre-8.37-Fix-buffer-overflow-for-named-recursive-back-referen.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/pcre-8.37-Fix-buffer-overflow-for-forward-reference-within-bac.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/pcre-8.37-Fix-named-forward-reference-to-duplicate-group-numbe.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/pcre-8.37-Fix-another-buffer-overflow.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/pcre-8.37-Fix-buffer-overflow-for-named-references-in-situatio.patch
        cd $(DIR_APP) && ./configure \
                --prefix=/usr \
                --disable-static \
diff --git a/lfs/perl-Authen-SASL b/lfs/perl-Authen-SASL
new file mode 100644 (file)
index 0000000..4052c44
--- /dev/null
@@ -0,0 +1,83 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  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        = 2.16
+
+THISAPP    = Authen-SASL-$(VER)
+DL_FILE    = ${THISAPP}.tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = perl-Authen-SASL
+DEPS       = ""
+PAK_VER    = 1
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 7c03a689d4c689e5a9e2f18a1c586b2f
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+dist: 
+       @$(PAK)
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && perl Makefile.PL
+       cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/perl-Email-Date-Format b/lfs/perl-Email-Date-Format
new file mode 100644 (file)
index 0000000..ce55d14
--- /dev/null
@@ -0,0 +1,77 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 1.005
+
+THISAPP    = Email-Date-Format-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 030dcee3bc1a44674900b0132925bd03
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && perl Makefile.PL
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/perl-MIME-Base64 b/lfs/perl-MIME-Base64
new file mode 100644 (file)
index 0000000..f406ae9
--- /dev/null
@@ -0,0 +1,83 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  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        = 3.15
+
+THISAPP    = MIME-Base64-$(VER)
+DL_FILE    = ${THISAPP}.tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = perl-MIME-Base64
+DEPS       = ""
+PAK_VER    = 1
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = ef958dc2bf96be5f759391c6ac1debd4
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+dist: 
+       @$(PAK)
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && perl Makefile.PL
+       cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/perl-MIME-Lite b/lfs/perl-MIME-Lite
new file mode 100644 (file)
index 0000000..c6f53e6
--- /dev/null
@@ -0,0 +1,77 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 3.030
+
+THISAPP    = MIME-Lite-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 5a6d90329e049eee77248d667343acc7
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && yes |perl Makefile.PL
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/perl-Net-SMTP-SSL b/lfs/perl-Net-SMTP-SSL
new file mode 100644 (file)
index 0000000..2e2ec57
--- /dev/null
@@ -0,0 +1,83 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2015  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.02
+
+THISAPP    = Net-SMTP-SSL-$(VER)
+DL_FILE    = ${THISAPP}.tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = perl-Net-SMTP-SSL
+DEPS       = ""
+PAK_VER    = 1
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = e67b4d842a51b9a453aeeaeed45fb8e1
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+dist: 
+       @$(PAK)
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && perl Makefile.PL
+       cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index 77c6dd0e4aefbccb08c5bd9a6a45492a7e79e005..b8029f7634ba58411f7658760a7518afeec0ba0a 100644 (file)
@@ -32,11 +32,11 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = postfix
-PAK_VER    = 7
+PAK_VER    = 9
 
 DEPS       = "amavisd mysql"
 
-CCARGS     = -DNO_IPV6 `getconf LFS_CFLAGS` \
+CCARGS     = `getconf LFS_CFLAGS` \
        -DDEF_DAEMON_DIR="'\"/usr/lib/postfix\"'" \
        -DDEF_MANPAGE_DIR="'\"/usr/share/man\"'"
 AUXLIBS    =
@@ -115,5 +115,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 
        install -v -m 644 $(DIR_SRC)/config/backup/includes/postfix \
                         /var/ipfire/backup/addons/includes/postfix
+       mv /usr/sbin/sendmail /usr/sbin/sendmail.postfix
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index f10dca9618605e4a92ba2875bc1128a331cf3acd..8520f9438673e944f09687006c195460bd9da170 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2010  IPFire Team  <info@ipfire.org>                          #
+# Copyright (C) 2015  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.13
+VER        = 2.7
 
 THISAPP    = powertop-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = powertop
-PAK_VER    = 0
+PAK_VER    = 1
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 78aa17c8f55178004223bf236654298e
+$(DL_FILE)_MD5 = e0d686e47daaf7e9d89031f7763432ef
 
 install : $(TARGET)
 
@@ -77,7 +77,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) && ./configure --prefix=/usr
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
 
index 51c66a9c43bb244e5afa3e0167912e14d26dea77..ae30f2f129b2b4a264116e9bf9b4faea9f49c7aa 100644 (file)
@@ -71,7 +71,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/$(THISAPP)-fix_unknown_HZ_value.patch
-       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make $(MAKETUNING) LIBPROC=proc/libproc-$(VER).so
        cd $(DIR_APP) && make install
        install -m 0644 $(DIR_SRC)/config/etc/sysctl.conf /etc
        @rm -rf $(DIR_APP)
index 6095e5ed02ecb3c6f8a450a8766ebc1bb5b303e0..013f9c1a8ad43b16a76dedc3ddb9e19ebe86c687 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2011  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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.7.3
+VER        = 2.7.10
 
 THISAPP    = Python-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 62c4c1699170078c469f79ddfed21bc0
+$(DL_FILE)_MD5 = c685ef0b8e9f27b5e3db5db12b268ac6
 
 install : $(TARGET)
 
@@ -70,8 +70,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/$(THISAPP)-gdbm-1.patch
-       cd $(DIR_APP) && OPT="$(CFLAGS)" ./configure --prefix=/usr --enable-shared
+       rm -rf $(DIR_APP)/Modules/_ctypes/{darwin,libffi,libffi_arm_wince,libffi_msvc,libffi_osx}
+       cd $(DIR_APP) && OPT="$(CFLAGS)" ./configure \
+               --prefix=/usr --enable-shared --with-system-ffi
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
index 7b9e0c7c8625bd8aadf6b8c3a5dd62b691ca8cb8..9ad1d5e85d319da4567afa1842bf20569fe4814d 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2011  IPFire Team <info@ipfire.org>                      #
+# Copyright (C) 2007-2015  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        #
 
 include Config
 
-VER       = 2.7.1
+VER       = 2.7.10
 
 include python
 
 PROG      = python-optional-src
-PAK_VER    = 2
+PAK_VER    = 4
 DEPS       =
 
 dist: 
index 2fc0476b0a8e5c93bc0264074a3edca341f6641e..a15dccdbe9c8e7458cfc08dbb9b1ae64009ee332 100644 (file)
--- a/lfs/qemu
+++ b/lfs/qemu
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2009  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2007-2015  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        #
 
 include Config
 
-VER        = 0.15.0
+VER        = 2.4.0
 
-THISAPP    = qemu-kvm-$(VER)
-DL_FILE    = $(THISAPP).tar.gz
+THISAPP    = qemu-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = i586 x86_64
 PROG       = qemu
-PAK_VER    = 14
+PAK_VER    = 17
 
 DEPS       = "sdl"
 
@@ -45,7 +45,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = b45b0deebba4ce47dcaaab3807f6ed47
+$(DL_FILE)_MD5 = 186ee8194140a484a455f8e3c74589f4
 
 install : $(TARGET)
 
@@ -77,12 +77,24 @@ $(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/qemu-0.15.0_missing_definitions_hack.patch
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc \
-               --target-list="i386-linux-user i386-softmmu arm-softmmu" \
+               --enable-kvm --disable-attr \
+               --target-list="i386-linux-user x86_64-linux-user arm-linux-user i386-softmmu x86_64-softmmu arm-softmmu" \
                --extra-cflags="$(CFLAGS)"
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
+
+       # install wrapper for old kvm parameter handling
+       install -m 755 $(DIR_SRC)/config/qemu/qemu /usr/bin/qemu
+
+       # disable PaX MPROTECT and RANDMMAP
+       paxctl -m -r /usr/bin/qemu-system-arm
+       paxctl -m -r /usr/bin/qemu-system-i386
+       paxctl -m -r /usr/bin/qemu-system-x86_64
+       paxctl -m -r /usr/bin/qemu-arm
+       paxctl -m -r /usr/bin/qemu-i386
+       paxctl -m -r /usr/bin/qemu-x86_64
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 0237b89f2e48d5dff2f1c7a3c218f342b3e27809..b85c797364cd5c84944ca81e9f52f3f3dfe61c91 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 1.4.7
+VER        = 1.5.5
 
 THISAPP    = rrdtool-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = ffe369d8921b4dfdeaaf43812100c38f
+$(DL_FILE)_MD5 = d8b3dcb3d193c2d6ad0a282bde69ee11
 
 install : $(TARGET)
 
index c8794fe7e0c7790c2014ffb1c05cd9170a619dad..ce309a12bb601154542f7a908b188b7cbb801900 100644 (file)
--- a/lfs/sarg
+++ b/lfs/sarg
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - An Open Source Firewall Solution                               #
-# Copyright (C) 2012 Michael Tremer                                           #
+# Copyright (C) 2014 Michael Tremer                                           #
 #                                                                             #
 # 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.3.3
+VER        = 2.3.9
 
 THISAPP    = sarg-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = sarg
-PAK_VER    = 1
+PAK_VER    = 2
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 09dba9a960d500acd7f17802de62512c
+$(DL_FILE)_MD5 = d6e8b854950f1bebb953e0ea2ca13428
 
 install : $(TARGET)
 
index 55590f7cb2c8bff423d8f5328d7589a0ab9925e8..d913cdf2547b270d26f0300f4bc8e05d4efe7ab3 100644 (file)
--- a/lfs/slang
+++ b/lfs/slang
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 2.2.4
+VER        = 2.3.0
 
 THISAPP    = slang-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 86cd8689cd71e281b4720fef8453ceeb
+$(DL_FILE)_MD5 = 80f4e64189b6f28fd420b829b44a6723
 
 install : $(TARGET)
 
index 77d3b0d613b42b63e3393889ac2444e5c589112d..148f539ed893c2586bd68a6a42e071fe2e55b78c 100644 (file)
--- a/lfs/snort
+++ b/lfs/snort
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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.9.7.0
+VER        = 2.9.7.6
 
 THISAPP    = snort-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -36,11 +36,11 @@ TARGET     = $(DIR_INFO)/$(THISAPP)
 # Top-level Rules
 ###############################################################################
 
-objects = $(DL_FILE) 
+objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = c2a45bc56441ee9456478f219dd8d1e2
+$(DL_FILE)_MD5 = 65349f3272c4de5b3210f77f1f7ab0e6
 
 install : $(TARGET)
 
@@ -72,18 +72,14 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @rm -rf $(DIR_APP) $(DIR_SRC)/snort* && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure \
                --prefix=/usr \
-               --disable-nls \
                --sysconfdir=/etc/snort \
                --target=i586 \
                --enable-linux-smp-stats \
-               --enable-smb-alerts \
                --enable-gre --enable-mpls \
                --enable-targetbased \
-               --enable-decoder-preprocessor-rules \
                --enable-ppm \
                --enable-non-ether-decoders \
                --enable-perfprofiling \
-               --enable-zlib \
                --enable-active-response \
                --enable-normalizer \
                --enable-reload \
diff --git a/lfs/sox b/lfs/sox
index 378429d4d198ef082b0bf3db6310f4f257551fe7..de60c90369a65251db90234a11399a7e4ace9aef 100644 (file)
--- a/lfs/sox
+++ b/lfs/sox
@@ -79,7 +79,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure --prefix=/usr --disable-alsa-dsp --disable-oss-dsp \
                                --disable-sun-audio --disable-mad
-       cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
+       cd $(DIR_APP) && make $(EXTRA_MAKE)
        cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 67e4a7db15536331f162baf394117c49dddbd6bf..de6c87d46e0aa45394e99d2c09a566ef472984f0 100644 (file)
--- a/lfs/squid
+++ b/lfs/squid
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2012  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2015  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        = 3.4.9
+VER        = 3.4.14
 
 THISAPP    = squid-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 497e5be7b3430d12667628296760beca
+$(DL_FILE)_MD5 = 4e7d7d062159484563ef11f69a0df50a
 
 install : $(TARGET)
 
@@ -70,6 +70,7 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xaf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid-3.4-13228.patch
        cd $(DIR_APP) && ./configure \
                --prefix=/usr \
                --sysconfdir=/etc/squid \
@@ -78,12 +79,12 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
                --libexecdir=/usr/lib/squid \
                --localstatedir=/var \
                --disable-ipv6 \
+               --disable-ssl \
                --enable-poll \
                --disable-icmp \
                --disable-wccp \
                --enable-ident-lookups \
                --enable-storeio="aufs,diskd,ufs" \
-               --enable-ssl \
                --enable-underscores \
                --enable-http-violations \
                --enable-removal-policies="heap,lru" \
@@ -113,7 +114,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
                --enable-cache-digests \
                --enable-forw-via-db \
                --enable-htcp \
-               --enable-linux-netfilter \
                --enable-kill-parent-hack \
                --disable-wccpv2 \
                --enable-icap-client \
index af7b281e4f477943b3cddfe1301464c9486de09e..ff78d366031a820f11d5f829f5cbac17e25b2dd6 100644 (file)
@@ -9,15 +9,15 @@
 
 include Config
 
-VER        = 1.0.3
+VER        = 1.0.4
 
 THISAPP    = squid-accounting-$(VER)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = squid-accounting
-PAK_VER    = 5
+PAK_VER    = 9
 
-DEPS       = "perl-DBI perl-DBD-SQLite perl-File-ReadBackwards perl-PDF-API2 sendEmail"
+DEPS       = "perl-DBI perl-DBD-SQLite perl-File-ReadBackwards perl-PDF-API2"
 
 ###############################################################################
 # Top-level Rules
@@ -50,8 +50,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        chmod 777 /var/log/accounting.log
 #Set permissions for logo and graphs
        chmod -R 777 /srv/web/ipfire/html/accounting
-               
-       
+
        install -v -m 755 $(DIR_APP)/squid-accounting/accounting.cgi /srv/web/ipfire/cgi-bin/
        install -v -m 755 $(DIR_APP)/squid-accounting/acct.pl /usr/local/bin/
        install -v -m 644 $(DIR_APP)/squid-accounting/acct-lib.pl /var/ipfire/accounting/
@@ -61,10 +60,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        install -v -m 755 $(DIR_APP)/squid-accounting/dbinstall.pl /var/ipfire/accounting/
        install -v -m 644 $(DIR_APP)/squid-accounting/config/backup/includes/squid-accounting  \
                        /var/ipfire/backup/addons/includes/squid-accounting
-                       
+
 #activate hourly logging of proxy logfile
        ln -sf /usr/local/bin/acct.pl /etc/fcron.hourly/squid-accounting
-               
        chown -R nobody.nobody /var/ipfire/accounting
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 3203983e287a386515a787e278d41f2bde2a4677..ec5d1170d972eb587045e954ae27bcaff3d1fbe9 100644 (file)
@@ -63,7 +63,12 @@ $(TARGET) :
 
        # Symlink /var/run -> /run.
        ln -svf ../run /var/run
-       
+
+ifeq "$(MACHINE)" "x86_64"
+       ln -svf lib /lib64
+       ln -svf lib /usr/lib64
+endif
+
        # Symlinks
        # for this reason, stage2 rebuild will broke the iso:perl, grubbatch
        -ln -sv /tools/bin/{bash,cat,echo,pwd,stty} /bin
@@ -109,6 +114,8 @@ $(TARGET) :
                /usr/lib/firewall/rules.pl
        install -m 644 $(DIR_SRC)/config/firewall/firewall-lib.pl \
                /usr/lib/firewall/firewall-lib.pl
+       install -m 755 $(DIR_SRC)/config/firewall/ipsec-block \
+               /usr/lib/firewall/ipsec-block
 
        # Nobody user
        -mkdir -p /home/nobody
index 1de4320051dfbfa367027bb4748368ce42eda007..c6d655bb24208091af5f9c767dfe74e12d104b40 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 5.3.0
+VER        = 5.3.5
 
 THISAPP    = strongswan-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -48,7 +48,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = c52d4228231c2025d9c320d0e9990327
+$(DL_FILE)_MD5 = a2f9ea185f27e7f8413d4cd2ee61efe4
 
 install : $(TARGET)
 
@@ -79,8 +79,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/strongswan-ipfire.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch
 
-       cd $(DIR_APP) && [ -x "configure" ] || ./autogen.sh
        cd $(DIR_APP) && ./configure \
                --prefix="/usr" \
                --sysconfdir="/etc" \
@@ -100,6 +100,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
                --enable-eap-peap \
                --enable-eap-mschapv2 \
                --enable-eap-identity \
+               --disable-chapoly \
                $(CONFIGURE_OPTIONS)
 
        cd $(DIR_APP) && make $(MAKETUNING)
index 43bcde9b628f071f6a87222cd58e177c2eae1442..00a8415d0f39f47cfe2519eb6ce4688c82514f87 100644 (file)
@@ -31,7 +31,7 @@ DL_FILE    = $(THISAPP).tar.xz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH   = i586
+SUP_ARCH   = x86_64 i586
 
 ###############################################################################
 # Top-level Rules
index 6fe6f98ecfa4c03bc7b0a275f763e8d5df856c82..646250d2dfe66d96e7932ad72b1a03bcb6faf48f 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2015  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,7 +24,7 @@
 
 include Config
 
-VER        = 4.6.2
+VER        = 4.7.4
 
 THISAPP    = tcpdump-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = tcpdump
-PAK_VER    = 4
+PAK_VER    = 6
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 74d0d3728b3cdc60db872d842e7f1598
+$(DL_FILE)_MD5 = 58af728de36f499341918fc4b8e827c3
 
 install : $(TARGET)
 
index ddd53847d2c6d5820af22cb1ff3e005d1f536139..2223d1330893808a0585ae20f883128c9fe3ac4a 100644 (file)
--- a/lfs/tmux
+++ b/lfs/tmux
@@ -32,9 +32,9 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = tmux
-PAK_VER    = 2
+PAK_VER    = 3
 
-DEPS       = "libevent2"
+DEPS       = ""
 
 ###############################################################################
 # Top-level Rules
diff --git a/lfs/tor b/lfs/tor
index 209895297e63c08d8b1baaff825c8aae157c4fbe..91eab09b9f19855d6233f90592526e952d71cbab 100644 (file)
--- a/lfs/tor
+++ b/lfs/tor
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 0.2.5.12
+VER        = 0.2.6.9
 
 THISAPP    = tor-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,9 +32,9 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = tor
-PAK_VER    = 10
+PAK_VER    = 15
 
-DEPS       = "libevent2"
+DEPS       = ""
 
 ###############################################################################
 # Top-level Rules
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 89745069a7efb7aafd01ae263bd0fe5c
+$(DL_FILE)_MD5 = 4a1b334c30d7b37ea72fa33425220d5d
 
 install : $(TARGET)
 
index 3a1cbddba648f75683a45bf3ace362a92f8aa824..13b5723456f0a379d54f89ccda9b1954e20b9792 100644 (file)
@@ -32,9 +32,9 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = transmission
-PAK_VER    = 11
+PAK_VER    = 12
 
-DEPS       = "libevent2"
+DEPS       = ""
 
 CXXFLAGS  += -fno-exceptions
 
index 11dc03f3d05350ba6632ae3f2a6b91d7f46f388b..dfb54e6639bacf62319473599ffbf83127d67989 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 2015a
+VER        = 2015d
 TZDATA_VER = $(VER)
 TZCODE_VER = $(VER)
 
@@ -45,8 +45,8 @@ objects = tzdata$(TZDATA_VER).tar.gz tzcode$(TZCODE_VER).tar.gz
 tzdata$(TZDATA_VER).tar.gz = $(DL_FROM)/tzdata$(TZDATA_VER).tar.gz
 tzcode$(TZCODE_VER).tar.gz = $(DL_FROM)/tzcode$(TZCODE_VER).tar.gz
 
-tzdata$(TZDATA_VER).tar.gz_MD5 = 4ed11c894a74a5ea64201b1c6dbb8831
-tzcode$(TZCODE_VER).tar.gz_MD5 = 8f375ede46ae137fbac047ac431bda37
+tzdata$(TZDATA_VER).tar.gz_MD5 = b595bdc4474b8fc1a15cffc67c66025b
+tzcode$(TZCODE_VER).tar.gz_MD5 = 4008a3abc025a398697b2587c48258b9
 
 install : $(TARGET)
 
index e58839c405e93a214b37774d3cb06cf83fe1a996..7d5bdbca19106b427367a7f1903aff517536f6d0 100644 (file)
--- a/lfs/udev
+++ b/lfs/udev
@@ -107,6 +107,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        # Install network rules.
        install -v -m 755 $(DIR_SRC)/config/udev/network-hotplug-rename \
                /lib/udev/network-hotplug-rename
+       install -v -m 755 $(DIR_SRC)/config/udev/network-hotplug-vlan \
+               /lib/udev/network-hotplug-vlan
        install -v -m 644 $(DIR_SRC)/config/udev/60-net.rules \
                /lib/udev/rules.d
 
index 2013cc1327ab2c6c36c0aeedcdabd8f448581f09..f479d7e9f9fab3d42eebcf641e0080c075b1aa92 100644 (file)
--- a/lfs/unzip
+++ b/lfs/unzip
@@ -70,11 +70,11 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-ifeq "$(MACHINE_TYPE)" "arm"
-       # ARM cannot use the x86 assembly code.
-       cd $(DIR_APP) && make -f unix/Makefile LOCAL_UNZIP=-D_FILE_OFFSET_BITS=64 linux_noasm
-else
+ifeq "$(MACHINE)" "i586"
        cd $(DIR_APP) && make -f unix/Makefile LOCAL_UNZIP=-D_FILE_OFFSET_BITS=64 linux
+else
+       # ARM/x86_64 cannot use the x86 32 bit assembly code.
+       cd $(DIR_APP) && make -f unix/Makefile LOCAL_UNZIP=-D_FILE_OFFSET_BITS=64 linux_noasm
 endif
        cd $(DIR_APP) && make prefix=/usr install
        @rm -rf $(DIR_APP)
index fddd0756bb210c62fbd351f948443dc164497e26..3a91256f1081a90ffce9bebc40f848a44f45370c 100644 (file)
@@ -29,7 +29,9 @@ VER        = master
 THISAPP    = vdr-plugin-eepg-$(VER)
 DL_FILE    = vdr-plugin-eepg-$(GIT_VER).tar.bz2
 
-DL_FROM    = http://projects.vdr-developer.org/git/vdr-plugin-eepg.git/snapshot
+# SOURCE http://projects.vdr-developer.org/git/vdr-plugin-eepg.git/snapshot
+
+DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = vdr_eepg
index 509efb1bcc624daef389e6952a6b2b5ddbf6bbdf..e62167049793a69c4f25fd4892dbd95670cbb1aa 100644 (file)
@@ -38,6 +38,10 @@ DEPS       = ""
 
 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
 ###############################################################################
@@ -82,6 +86,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && patch -p1 < $(DIR_SRC)/src/patches/vdr-epgsearch-1.0.1.beta3-paths.patch
 
        cd $(DIR_APP) && make $(MAKE_TUNING) LIBDIR=. VDRDIR=/usr/lib/vdr \
+               CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
                LOCALEDIR=$$(pwd)/locale all
 
        cd $(DIR_APP) && install -m 755 libvdr-conflictcheckonly.so \
index b8c8b2759fa30433100304611ec58f6512a2a0dd..1c1333b536edc1ba35b3af0761028d987b37a92d 100644 (file)
@@ -76,6 +76,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && make all $(MAKETUNING)                                                                         LOCAL_CONFIGURE_OPTIONS="--enable-readline=yes"
        cd $(DIR_APP) && make install
        sed -i 's|eth0|green0|g' /etc/vnstat.conf
-       sed -i 's|/var/lib/vnstat|/var/log/rrd/vnstat|g' /etc/vnstat.conf
+       sed -i 's|/var/lib/vnstat|/var/log/vnstat|g' /etc/vnstat.conf
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index f3e74a00e1ac37e0e8b1f0656e107dd7d106b71a..7284be96150a4987b7a812b3b30a08fd42c7d9f9 100644 (file)
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = vsftpd
-PAK_VER    = 7
+PAK_VER    = 8
 
 DEPS       = ""
 
diff --git a/lfs/web-user-interface b/lfs/web-user-interface
new file mode 100644 (file)
index 0000000..919acbe
--- /dev/null
@@ -0,0 +1,72 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007-2015   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        = ipfire
+
+THISAPP    = web-user-interface-$(VER)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+install: $(TARGET)
+
+check: 
+
+download:
+
+md5: 
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+
+       # Copy all html/cgi-bin files
+       mkdir -p /srv/web/ipfire/{cgi-bin,html}
+       mkdir -p /var/updatecache/{download,metadata}
+       cp -aR $(DIR_SRC)/html/* /srv/web/ipfire
+
+       # Change CONFIG_ROOT in cgi-scripts
+       for i in /srv/web/ipfire/cgi-bin/{*,logs.cgi/*,vpn.cgi/*}; do \
+           if [ -f $$i ]; then \
+               sed -i "s+CONFIG_ROOT+$(CONFIG_ROOT)+g" $$i; \
+           fi; \
+       done
+       chown -R root:root /srv/web/ipfire
+       chmod -R 755 /srv/web/ipfire/cgi-bin
+       chmod -R 644 /srv/web/ipfire/html
+       chmod 755 /srv/web/ipfire/html /srv/web/ipfire/html/{index.cgi,redirect.cgi,dial.cgi,images,include,themes,themes/*,themes/*/*}
+       ln -svf ipfire /srv/web/ipfire/html/themes/ipfire-rounded
+
+       # Reset permissions of redirect templates and theme directories
+       find /srv/web/ipfire/html/{redirect-templates,themes} -type d | xargs chmod -v 755
+       @$(POSTBUILD)
index 1848dc908846a8c4c6c07f0b2e0864aba30a77b0..e2d9c6fcfb61f494f265acba9eda6dd3fe05d301 100644 (file)
@@ -102,6 +102,7 @@ else
 
        # Install the built kernel modules.
        cd $(DIR_APP) && for f in $$(ls extensions/*.ko); do \
+               mkdir -p $(MODPATH); \
                install -m 644 $$f $(MODPATH); \
        done
 endif
diff --git a/lfs/xz b/lfs/xz
index fce71598b38b35de0ff747b245bcc4d2c6bfeb94..c1d3ef789082f374950b9dbf84e777cc07f29ec8 100644 (file)
--- a/lfs/xz
+++ b/lfs/xz
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 5.0.5
+VER        = 5.2.1
 
 THISAPP    = xz-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -47,7 +47,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = aa17280f4521dbeebed0fbd11cd7fa30
+$(DL_FILE)_MD5 = b5e2dd95dc8498cea5354377ed89aa65
 
 install : $(TARGET)
 
diff --git a/make.sh b/make.sh
index 6662096a94e2a0f58ef781dbae2917b39756a0a9..67320cf4be7d42395f4ae0ec48d0d2848aa38dc3 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -17,7 +17,7 @@
 # along with IPFire; if not, write to the Free Software                    #
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
 #                                                                          #
-# Copyright (C) 2007-2015 IPFire Team <info@ipfire.org>.                   #
+# Copyright (C) 2007-2016 IPFire Team <info@ipfire.org>.                   #
 #                                                                          #
 ############################################################################
 #
@@ -25,8 +25,8 @@
 NAME="IPFire"                                                  # Software name
 SNAME="ipfire"                                                 # Short name
 VERSION="2.17"                                                 # Version number
-CORE="90"                                                      # Core Level (Filename)
-PAKFIRE_CORE="89"                                              # Core Level (PAKFIRE)
+CORE="97"                                                      # Core Level (Filename)
+PAKFIRE_CORE="96"                                              # 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
@@ -36,7 +36,7 @@ BUILD_IMAGES=1                                                        # Flash and Xen Downloader
 KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'`
 GIT_TAG=$(git tag | tail -1)                                   # Git Tag
 GIT_LASTCOMMIT=$(git log | head -n1 | cut -d" " -f2 |head -c8) # Last commit
-TOOLCHAINVER=8
+TOOLCHAINVER=11
 
 # New architecture variables
 BUILD_ARCH="$(uname -m)"
@@ -86,21 +86,6 @@ if [ -z $EDITOR ]; then
        [ -z $EDITOR ] && exiterror "You should have installed an editor."
 fi
 
-# Prepare string for /etc/system-release.
-SYSTEM_RELEASE="${NAME} ${VERSION} (${MACHINE})"
-if [ "$(git status -s | wc -l)" == "0" ]; then
-       GIT_STATUS=""
-else
-       GIT_STATUS="-dirty"
-fi
-case "$GIT_BRANCH" in
-       core*|beta?|rc?)
-               SYSTEM_RELEASE="${SYSTEM_RELEASE} - $GIT_BRANCH$GIT_STATUS"
-               ;;
-       *)
-               SYSTEM_RELEASE="${SYSTEM_RELEASE} - Development Build: $GIT_BRANCH/$GIT_LASTCOMMIT$GIT_STATUS"
-               ;;
-esac
 
 prepareenv() {
     ############################################################################
@@ -236,15 +221,36 @@ prepareenv() {
     # Run LFS static binary creation scripts one by one
     export CCACHE_DIR=$BASEDIR/ccache
     export CCACHE_COMPRESS=1
-    export CCACHE_COMPILERCHECK="none"
+    export CCACHE_COMPILERCHECK="string:toolchain-${TOOLCHAINVER} ${TARGET_ARCH}"
 
     # Remove pre-install list of installed files in case user erase some files before rebuild
     rm -f $BASEDIR/build/usr/src/lsalr 2>/dev/null
+
+    # Prepare string for /etc/system-release.
+    SYSTEM_RELEASE="${NAME} ${VERSION} (${MACHINE})"
+    if [ "$(git status -s | wc -l)" == "0" ]; then
+       GIT_STATUS=""
+    else
+       GIT_STATUS="-dirty"
+    fi
+    case "$GIT_BRANCH" in
+       core*|beta?|rc?)
+               SYSTEM_RELEASE="${SYSTEM_RELEASE} - $GIT_BRANCH$GIT_STATUS"
+               ;;
+       *)
+               SYSTEM_RELEASE="${SYSTEM_RELEASE} - Development Build: $GIT_BRANCH/$GIT_LASTCOMMIT$GIT_STATUS"
+               ;;
+    esac
 }
 
 buildtoolchain() {
     local error=false
     case "${TARGET_ARCH}:${BUILD_ARCH}" in
+        # x86_64
+        x86_64:x86_64)
+             # This is working.
+             ;;
+
         # x86
         i586:i586|i586:i686|i586:x86_64)
             # These are working.
@@ -281,6 +287,7 @@ buildtoolchain() {
     lfsmake1 linux                     TOOLS=1 KCFG="-headers"
     lfsmake1 glibc
     lfsmake1 cleanup-toolchain         PASS=1
+    lfsmake1 gcc                       PASS=L
     lfsmake1 binutils                  PASS=2
     lfsmake1 gcc                       PASS=2
     lfsmake1 ccache                    PASS=2
@@ -324,6 +331,7 @@ buildbase() {
     lfsmake2 gmp
     lfsmake2 gmp-compat
     lfsmake2 mpfr
+    lfsmake2 libmpc
     lfsmake2 file
     lfsmake2 gcc
     lfsmake2 sed
@@ -385,7 +393,7 @@ buildipfire() {
   ipfiremake backup
   ipfiremake pkg-config
   ipfiremake libusb
-  ipfiremake libusbx
+  ipfiremake libusb-compat
   ipfiremake libpcap
   ipfiremake ppp
   ipfiremake pptp
@@ -405,16 +413,29 @@ buildipfire() {
   ipfiremake freetype
   ipfiremake grub
   ipfiremake libmnl
+  ipfiremake libnfnetlink
+  ipfiremake libnetfilter_queue
+  ipfiremake libnetfilter_conntrack
+  ipfiremake libnetfilter_cthelper
+  ipfiremake libnetfilter_cttimeout
   ipfiremake iptables
 
   case "${TARGET_ARCH}" in
+       x86_64)
+               ipfiremake linux                        KCFG=""
+               ipfiremake backports                    KCFG=""
+               ipfiremake e1000e                       KCFG=""
+               ipfiremake igb                          KCFG=""
+               ipfiremake ixgbe                        KCFG=""
+               ipfiremake xtables-addons               KCFG=""
+               ipfiremake linux-initrd                 KCFG=""
+               ;;
        i586)
                # x86-pae (Native and new XEN) kernel build
                ipfiremake linux                        KCFG="-pae"
                ipfiremake backports                    KCFG="-pae"
-               ipfiremake cryptodev                    KCFG="-pae"
                ipfiremake e1000e                       KCFG="-pae"
-#              ipfiremake igb                          KCFG="-pae"
+               ipfiremake igb                          KCFG="-pae"
                ipfiremake ixgbe                        KCFG="-pae"
                ipfiremake xtables-addons               KCFG="-pae"
                ipfiremake linux-initrd                 KCFG="-pae"
@@ -422,9 +443,8 @@ buildipfire() {
                # x86 kernel build
                ipfiremake linux                        KCFG=""
                ipfiremake backports                    KCFG=""
-               ipfiremake cryptodev                    KCFG=""
                ipfiremake e1000e                       KCFG=""
-#              ipfiremake igb                          KCFG=""
+               ipfiremake igb                          KCFG=""
                ipfiremake ixgbe                        KCFG=""
                ipfiremake xtables-addons               KCFG=""
                ipfiremake linux-initrd                 KCFG=""
@@ -434,16 +454,14 @@ buildipfire() {
                # arm-rpi (Raspberry Pi) kernel build
                ipfiremake linux                        KCFG="-rpi"
                ipfiremake backports                    KCFG="-rpi"
-               ipfiremake cryptodev                    KCFG="-rpi"
                ipfiremake xtables-addons               KCFG="-rpi"
                ipfiremake linux-initrd                 KCFG="-rpi"
 
                # arm multi platform (Panda, Wandboard ...) kernel build
                ipfiremake linux                        KCFG="-multi"
                ipfiremake backports                    KCFG="-multi"
-               ipfiremake cryptodev                    KCFG="-multi"
                ipfiremake e1000e                       KCFG="-multi"
-#              ipfiremake igb                          KCFG="-multi"
+               ipfiremake igb                          KCFG="-multi"
                ipfiremake ixgbe                        KCFG="-multi"
                ipfiremake xtables-addons               KCFG="-multi"
                ipfiremake linux-initrd                 KCFG="-multi"
@@ -451,9 +469,8 @@ buildipfire() {
                # arm-kirkwood (Dreamplug, ICY-Box ...) kernel build
                ipfiremake linux                        KCFG="-kirkwood"
                ipfiremake backports                    KCFG="-kirkwood"
-               ipfiremake cryptodev                    KCFG="-kirkwood"
                ipfiremake e1000e                       KCFG="-kirkwood"
-#              ipfiremake igb                          KCFG="-kirkwood"
+               ipfiremake igb                          KCFG="-kirkwood"
                ipfiremake ixgbe                        KCFG="-kirkwood"
                ipfiremake xtables-addons               KCFG="-kirkwood"
                ipfiremake linux-initrd                 KCFG="-kirkwood"
@@ -461,7 +478,7 @@ buildipfire() {
   esac
   ipfiremake xtables-addons                    USPACE="1"
   ipfiremake openssl
-  ipfiremake openssl-compat
+  [ "${TARGET_ARCH}" = "i586" ] && ipfiremake openssl KCFG='-sse2'
   ipfiremake libgpg-error
   ipfiremake libgcrypt
   ipfiremake libassuan
@@ -476,7 +493,9 @@ buildipfire() {
   ipfiremake curl
   ipfiremake tcl
   ipfiremake sqlite
+  ipfiremake libffi
   ipfiremake python
+  ipfiremake ca-certificates
   ipfiremake fireinfo
   ipfiremake libnet
   ipfiremake libnl
@@ -507,7 +526,8 @@ buildipfire() {
   ipfiremake openldap
   ipfiremake apache2
   ipfiremake php
-  ipfiremake apache2                   PASS=C
+  ipfiremake web-user-interface
+  ipfiremake flag-icons
   ipfiremake jquery
   ipfiremake arping
   ipfiremake beep
@@ -578,7 +598,6 @@ buildipfire() {
   ipfiremake python-mechanize
   ipfiremake python-feedparser
   ipfiremake python-rssdler
-  ipfiremake libffi
   ipfiremake glib
   ipfiremake GeoIP
   ipfiremake fwhits
@@ -626,6 +645,7 @@ buildipfire() {
   ipfiremake screen
   ipfiremake smartmontools
   ipfiremake htop
+  ipfiremake chkconfig
   ipfiremake postfix
   ipfiremake fetchmail
   ipfiremake cyrus-imapd
@@ -633,6 +653,7 @@ buildipfire() {
   ipfiremake clamav
   ipfiremake spamassassin
   ipfiremake amavisd
+  ipfiremake dma
   ipfiremake alsa
   ipfiremake mpfire
   ipfiremake guardian
@@ -647,6 +668,7 @@ buildipfire() {
   ipfiremake libshout
   ipfiremake xvid
   ipfiremake libmpeg2
+  ipfiremake libarchive
   ipfiremake cmake
   ipfiremake gnump3d
   ipfiremake rsync
@@ -659,7 +681,6 @@ buildipfire() {
   ipfiremake ncftp
   ipfiremake etherwake
   ipfiremake bwm-ng
-  ipfiremake tripwire
   ipfiremake sysstat
   ipfiremake vsftpd
   ipfiremake strongswan
@@ -701,6 +722,11 @@ buildipfire() {
   ipfiremake mpd
   ipfiremake libmpdclient
   ipfiremake mpc
+  ipfiremake perl-Net-SMTP-SSL
+  ipfiremake perl-MIME-Base64
+  ipfiremake perl-Authen-SASL
+  ipfiremake perl-MIME-Lite
+  ipfiremake perl-Email-Date-Format
   ipfiremake git
   ipfiremake squidclamav
   ipfiremake vnstat
@@ -722,7 +748,7 @@ buildipfire() {
   ipfiremake streamripper
   ipfiremake sshfs
   ipfiremake taglib
-  ipfiremake mediatomb
+  #ipfiremake mediatomb
   ipfiremake sslh
   ipfiremake perl-gettext
   ipfiremake perl-Sort-Naturally
@@ -819,6 +845,9 @@ buildipfire() {
   ipfiremake perl-Text-CSV_XS
   ipfiremake swconfig
   ipfiremake haproxy
+  ipfiremake ipset
+  ipfiremake lua
+  ipfiremake dnsdist
 }
 
 buildinstaller() {
@@ -875,6 +904,10 @@ buildpackages() {
   mv $LFS/install/images/*.bz2 $BASEDIR >> $LOGFILE 2>&1
 
   cd $BASEDIR
+
+  # remove not useable iso on armv5tel (needed to build flash images)
+  [ "${TARGET_ARCH}" = "armv5tel" ] && rm -rf *.iso
+
   for i in `ls *.bz2 *.img.gz *.iso`; do
        md5sum $i > $i.md5
   done
@@ -978,7 +1011,7 @@ build)
 
        cd $BASEDIR
        tools/checknewlog.pl
-       tools/checkwronginitlinks
+       tools/checkrootfiles
        cd $PWD
 
        beautify build_end
index e8c8c8bb0869a0f646ec1050f8408d450703cbea..2d5778df938102b0381fa63e6a1d9e1ddec34fec 100644 (file)
@@ -77,7 +77,36 @@ case "${1}" in
                        rm -rf /var/run
                        ln -s ../run /var/run
                fi
-
+               #
+               # create some folders
+               #
+               if [ ! -e /var/lock/subsys ]; then
+                       mkdir -p /var/lock/subsys
+               fi
+               if [ ! -e /var/lock/time ]; then
+                       mkdir -p /var/lock/time
+                       chown nobody.root /var/lock/time
+               fi
+               if [ ! -e /var/run/clamav ]; then
+                       mkdir -p /var/run/clamav
+                       chown clamav:clamav /var/run/clamav
+               fi
+               if [ ! -e /var/run/cups ]; then
+                       mkdir -p /var/run/cups
+               fi
+               if [ ! -e /var/run/dbus ]; then
+                       mkdir -p /var/run/dbus
+               fi
+               if [ ! -e /var/run/mysql ]; then
+                       mkdir -p /var/run/mysql
+                       chown mysql:mysql /var/run/mysql
+               fi
+               if [ ! -e /var/run/saslauthd ]; then
+                       mkdir -p /var/run/saslauthd
+               fi
+               if [ ! -e /var/log/vnstat ]; then
+                       mkdir -p /var/log/vnstat
+               fi
                boot_mesg -n "Cleaning file systems:" ${INFO}
 
                boot_mesg -n " /tmp" ${NORMAL}
index 96bd12676cec3e0aed41344556a4249bdd720e91..761e9c3f862e23860f599ce1b1af764eed028812 100644 (file)
@@ -1,7 +1,6 @@
 #!/bin/sh
 # Begin $rc_base/init.d/collecd
 
-
 . /etc/sysconfig/rc
 . $rc_functions
 
@@ -13,6 +12,12 @@ fi
 
 case "$1" in
        start)
+               if use_ramdisk; then
+                       boot_mesg "Mounting RRD ramdisk..."
+                       mount_ramdisk "${RRDLOG}"
+                       evaluate_retval
+               fi
+
                # If run from init and collectd alrady started then exit silent
                if [ "$(basename $0)" != "collectd" ]; then
                        if [ "$(ps -A | grep " collectd$")" != "" ]; then
@@ -106,12 +111,9 @@ case "$1" in
                boot_mesg "Stopping Collection daemon..."
                killproc /usr/sbin/collectd
                evaluate_retval
-               # Save the ramdisk at manual stop but not at shutdown
-               if [ "$(basename $0)" == "collectd" ]; then
-                   /etc/init.d/tmpfs backup
-               fi
-               # sync after backup...
-               sync
+
+               # Umount the ramdisk (if any)
+               umount_ramdisk "${RRDLOG}"
                ;;
        restart)
                ${0} stop
@@ -122,8 +124,15 @@ case "$1" in
                statusproc /usr/sbin/collectd
                ;;
 
+       backup)
+               # Backup all data if ramdisk is used
+               if mountpoint "${RRDLOG}" &>/dev/null; then
+                       ${0} restart
+               fi
+               ;;
+
        *)
-               echo "Usage: $0 {start|stop|restart|status}"
+               echo "Usage: $0 {start|stop|restart|status|backup}"
                exit 1
                ;;
 esac
index 0d4cdb95b1010d286157996151d90537e7d023db..6a89414b2d690e3dc80414e8b2d3940b55c352ad 100644 (file)
@@ -36,23 +36,35 @@ case "${1}" in
                modprobe cpufreq_powersave
                modprobe cpufreq_userspace
 
-               CPUCOUNT=`ls /sys/devices/system/cpu/cpu*/cpufreq/affected_cpus 2> /dev/null | wc -l `;
-               let CPUCOUNT-=1
-               # Set the governor to ondemand to test if it works 
-               cpufreq-set -g ondemand
-               if [ ${?} = 0 ]; then
-                   # activate cpufreq collectd module
-                   sed -i -e "s|^#LoadPlugin cpufreq|LoadPlugin cpufreq|g" /etc/collectd.conf
+               driver=`cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver 2>/dev/null`
 
-                   # Set the governor to ondemand for all cpus 
-                   for i in `seq 0 $CPUCOUNT`;
-                   do
-                       cpufreq-set -c $i -g ondemand
-                   done
-                   echo_ok;
-               else
-                   echo_failure;
-               fi
+               case "$driver" in
+                   intel_pstate)
+                       # pstate use internal gov so skip this setting
+                       # activate cpufreq collectd module
+                       sed -i -e "s|^#LoadPlugin cpufreq|LoadPlugin cpufreq|g" /etc/collectd.conf
+                       echo_ok;
+                       ;;
+                   *)
+                       CPUCOUNT=`ls /sys/devices/system/cpu/cpu*/cpufreq/affected_cpus 2> /dev/null | wc -l `;
+                       let CPUCOUNT-=1
+                       # Set the governor to ondemand to test if it works 
+                       cpufreq-set -g ondemand
+                       if [ ${?} = 0 ]; then
+                               # activate cpufreq collectd module
+                               sed -i -e "s|^#LoadPlugin cpufreq|LoadPlugin cpufreq|g" /etc/collectd.conf
+
+                               # Set the governor to ondemand for all cpus 
+                               for i in `seq 0 $CPUCOUNT`;
+                               do
+                                       cpufreq-set -c $i -g ondemand
+                               done
+                               echo_ok;
+                       else
+                               echo_failure;
+                       fi
+                       ;;
+                   esac
                exit 0;
                ;;
        *)
diff --git a/src/initscripts/init.d/dnsdist b/src/initscripts/init.d/dnsdist
new file mode 100644 (file)
index 0000000..03e6ab8
--- /dev/null
@@ -0,0 +1,46 @@
+#!/bin/sh
+########################################################################
+# Begin $rc_base/init.d/dnsdist
+#
+# Description : dnsdist - A DNS load-balancer and more
+#
+########################################################################
+
+. /etc/sysconfig/rc
+. ${rc_functions}
+
+[ -r "/etc/sysconfig/dnsdist" ] && . /etc/sysconfig/dnsdist
+
+case "${1}" in
+       start)
+               boot_mesg "Starting dnsdist..."
+               loadproc /usr/bin/dnsdist -d ${ARGS}
+               ;;
+
+       stop)
+               boot_mesg "Stopping dnsdist..."
+               killproc /usr/bin/dnsdist
+               ;;
+
+       reload)
+               boot_mesg "Reloading dnsdist..."
+               reloadproc /usr/bin/dnsdist
+               ;;
+
+       restart)
+               ${0} stop
+               sleep 1
+               ${0} start
+               ;;
+
+       status)
+               statusproc /usr/bin/dnsdist
+               ;;
+
+       *)
+               echo "Usage: ${0} {start|stop|reload|restart|status}"
+               exit 1
+               ;;
+esac
+
+# End $rc_base/init.d/dnsdist
index ce7689f4e1ed874d666bf46cb58f3673bcc5916f..059ffacdd8e92abd3bab4f8e93969378afe60531 100644 (file)
@@ -55,6 +55,21 @@ function dns_forward_args() {
        echo "${cmdline}"
 }
 
+function dns_leases_args() {
+       eval $(/usr/local/bin/readhash /var/ipfire/dhcp/settings)
+
+       # If the DHCP server is enabled and DNS Update (RFC2136) is
+       # enabled, too, we won't overlay the internal domain with
+       # the dynamic/static leases.
+
+       if ([ "${ENABLE_GREEN}" = "on" ] || [ "${ENABLE_BLUE}" = "on" ]) \
+                       && [ "${DNS_UPDATE_ENABLED}" = "on" ]; then
+               return
+       fi
+
+       echo "-l /var/state/dhcp/dhcpd.leases"
+}
+
 case "${1}" in
        start)
                # kill already running copy of dnsmasq...
@@ -65,7 +80,10 @@ case "${1}" in
                eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
                ARGS="$CUSTOM_ARGS"
                [ "$DOMAIN_NAME_GREEN" != "" ] && ARGS="$ARGS -s $DOMAIN_NAME_GREEN"
-               
+
+               # DHCP configuration
+               ARGS="${ARGS} $(dns_leases_args)"
+
                echo > /var/ipfire/red/resolv.conf # Clear it
                if [ -e "/var/ipfire/red/dns1" ]; then
                    DNS1=$(cat /var/ipfire/red/dns1 2>/dev/null)
@@ -95,7 +113,7 @@ case "${1}" in
                        ARGS="${ARGS} --cache-size=${CACHE_SIZE}"
                fi
 
-               loadproc /usr/sbin/dnsmasq -l /var/state/dhcp/dhcpd.leases $ARGS
+               loadproc /usr/sbin/dnsmasq ${ARGS}
                
                if [ "${SHOW_SRV}" -eq 1 ] && [ "${DNS1}" != "" -o "${DNS2}" != "" ]; then
                    boot_mesg "Using DNS server(s): ${DNS1} ${DNS2}"
index 0260d4ad6279185f79f57485ff4e7b78b8f7655a..00a70bd4a370d7eb360b3d80f4289c7da7dee309 100644 (file)
@@ -13,7 +13,6 @@
 case "$1" in
        start)
                boot_mesg "Starting fcron..."
-               chown cron:cron /var/spool/cron
                loadproc /usr/sbin/fcron -y
                # remove -y to reenable fcron logging
                ;;
index 5b193c2c3b9e049112b92e420a0e4c77020ff08c..cb52670d6a5e42c5dbf7fd809fd1350d66a8a00d 100644 (file)
@@ -178,6 +178,11 @@ iptables_init() {
        iptables -A INPUT -j GUARDIAN
        iptables -A FORWARD -j GUARDIAN
 
+       # Block non-established IPsec networks
+       iptables -N IPSECBLOCK
+       iptables -A FORWARD -m policy --dir out --pol none -j IPSECBLOCK
+       iptables -A OUTPUT  -m policy --dir out --pol none -j IPSECBLOCK
+
        # Block OpenVPN transfer networks
        iptables -N OVPNBLOCK
        iptables -A INPUT   -i tun+ -j OVPNBLOCK
@@ -333,6 +338,9 @@ iptables_init() {
        iptables -t nat -N REDNAT
        iptables -t nat -A POSTROUTING -j REDNAT
 
+       # Populate IPsec block chain
+       /usr/lib/firewall/ipsec-block
+
        # Apply OpenVPN firewall rules
        /usr/local/bin/openvpnctrl --firewall-rules
 
@@ -407,8 +415,8 @@ iptables_red_up() {
                # Outgoing masquerading (don't masqerade IPSEC (mark 50))
                iptables -t nat -A REDNAT -m mark --mark 50 -o $IFACE -j RETURN
 
-               if [ "$IFACE" = "$GREEN_DEV" ]; then
-                       MASQUERADE_GREEN="off"
+               if [ "${IFACE}" = "${GREEN_DEV}" ]; then
+                       iptables -t nat -A REDNAT -i "${GREEN_DEV}" -o "${IFACE}" -j RETURN
                fi
 
                local NO_MASQ_NETWORKS
index dca3e40163caeb050dc546684ff0d00258171851..70c30b4e230fb8b9fcff9e4f607394f2f948e8b1 100644 (file)
@@ -40,9 +40,6 @@ if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
                echo "Name: linux-pae" > /opt/pakfire/db/installed/meta-linux-pae
                echo "ProgVersion: 0" >> /opt/pakfire/db/installed/meta-linux-pae
                echo "Release: 0"     >> /opt/pakfire/db/installed/meta-linux-pae
-               echo "Name: linux-pae" > /opt/pakfire/db/meta/meta-linux-pae
-               echo "ProgVersion: 0" >> /opt/pakfire/db/meta/meta-linux-pae
-               echo "Release: 0"     >> /opt/pakfire/db/meta/meta-linux-pae
        fi
 fi
 
index e2e058d38b9d081aea1519d91e8a3832a4b9b02c..0d9b013ea0522a239394cbfb9dc0d3124cc65b00 100644 (file)
@@ -702,4 +702,86 @@ run_subdir() {
        done
 }
 
+mem_amount() {
+        local pagesize="$(getconf PAGESIZE)"
+        local pages="$(getconf _PHYS_PAGES)"
+
+        echo "$(( ${pagesize} * ${pages} / 1024 / 1024 ))"
+}
+
+use_ramdisk() {
+       eval $(/usr/local/bin/readhash /etc/sysconfig/ramdisk)
+
+       case "${RAMDISK_MODE}" in
+               # Don't use ramdisk
+               0)
+                       return 1
+                       ;;
+
+               # Always use ramdisk
+               1)
+                       return 0
+                       ;;
+
+               # Automatic mode - use ramdisk if sufficient
+               # memory is available
+               2)
+                       local mem_avail="$(mem_amount)"
+
+                       if [ ${mem_avail} -ge 490 ]; then
+                               return 0
+                       else
+                               return 1
+                       fi
+                       ;;
+
+               # Fail for everything else
+               *)
+                       return 2
+                       ;;
+       esac
+}
+
+mount_ramdisk() {
+       local path="${1}"
+       local path_tmpfs="${path}.tmpfs"
+
+       # Check if the ramdisk is already mounted
+       if mountpoint "${path}" &>/dev/null; then
+               return 0
+       fi
+
+       # Create ramdisk
+       mkdir -p "${path_tmpfs}"
+       mount -t tmpfs none "${path_tmpfs}"
+
+       # Restore ramdisk content
+       cp -pR ${path}/* "${path_tmpfs}"
+
+       # Move ramdisk to final destination
+       mount --move "${path_tmpfs}" "${path}"
+       rm -rf "${path_tmpfs}"
+}
+
+umount_ramdisk() {
+       local path="${1}"
+       local path_tmpfs="${path}.tmpfs"
+
+       # Check if a ramdisk is actually mounted
+       if ! mountpoint "${path}" &>/dev/null; then
+               return 0
+       fi
+
+       # Move the ramdisk
+       mkdir -p "${path_tmpfs}"
+       mount --move "${path}" "${path_tmpfs}"
+
+       # Backup ramdisk content
+       cp -pR ${path_tmpfs}/* "${path}"
+
+       # Destroy the ramdisk
+       umount "${path_tmpfs}"
+       rm -rf "${path_tmpfs}"
+}
+
 # End $rc_base/init.d/functions
index e0c66b6724a92d341e57fba719dadc0c78cefe5f..9dfbad65ed8c62de510f71c0c6ca5d43e6e76046 100644 (file)
@@ -173,7 +173,7 @@ case "${1}" in
                        if [ "$TYPE" == "pppoeatm" ] || [ "$TYPE" == "pptpatm" ]; then
                                PPP_NIC=nas${ATM_DEV}
                                DEVICE=nas${ATM_DEV}
-                               boot_mesg "Createing ATM-Bridge as $PPP_NIC ..."
+                               boot_mesg "Creating ATM-Bridge as $PPP_NIC ..."
                                br2684ctl -c${ATM_DEV} -e${ENCAP} -a${ATM_DEV}.${VPI}.${VCI} >/dev/null 2>&1 &
                                sleep 1
 
@@ -193,7 +193,7 @@ case "${1}" in
                        fi
 
                        if [ "$TYPE" == "vdsl" ]; then
-                               boot_mesg "Createing VLAN Interface ${DEVICE}.${INET_VLAN} ..."
+                               boot_mesg "Creating VLAN Interface ${DEVICE}.${INET_VLAN} ..."
                                modprobe 8021q
                                vconfig add ${DEVICE} ${INET_VLAN}
                                if [ -n "$MAC1" ]; then
@@ -218,7 +218,7 @@ case "${1}" in
                                fi
 
                                if [ ! -f "$PIDFILE" ]; then
-                                       boot_mesg "Createing VLAN Interface ${DEVICE}.${IPTV_VLAN} ..."
+                                       boot_mesg "Creating VLAN Interface ${DEVICE}.${IPTV_VLAN} ..."
                                        modprobe 8021q
                                        vconfig add ${DEVICE} ${IPTV_VLAN}
                                        if [ -n "$MAC2" ]; then
index 4bd3ee2ab74e59972e6d62c115a9a57617282a7e..335006a690a4009eb7d0fe268b5306171315ca52 100644 (file)
@@ -17,7 +17,7 @@ done
 
 # Download ruleset if none has been found.
 if ! ${found}; then
-       /usr/local/bin/xt_geoip_update >/dev/null 2>&1
+       /usr/local/bin/xt_geoip_update >/dev/null 2>&1 &
 fi
 
 exit 0
index 42968d8da1cbe77124dc6c2ecefefcce7b5d0dab..58edf1e6db66a5d79d52ab3b449356474ee97da0 100644 (file)
@@ -20,6 +20,8 @@ PATH=/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin; export PATH
 eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
 eval $(/usr/local/bin/readhash /var/ipfire/snort/settings)
 
+ALIASFILE="/var/ipfire/ethernet/aliases"
+
 case "$1" in
         start)
                if [ "$BLUE_NETADDRESS" ]; then
@@ -59,6 +61,19 @@ case "$1" in
                        if [ "$LOCAL_IP" ]; then
                                HOMENET+="$LOCAL_IP,"
                        fi
+
+                       # Check if the red device is set to static and
+                       # any aliases have been configured.
+                       if [ "${RED_TYPE}" == "STATIC" ] && [ -s "${ALIASFILE}" ]; then
+                               # Read in aliases file.
+                               while IFS="," read -r address mode remark; do
+                                       # Check if the alias is enabled.
+                                       [ "${mode}" = "on" ] || continue
+
+                                       # Add alias to the list of HOMENET addresses.
+                                       HOMENET+="${address},"
+                               done < "${ALIASFILE}"
+                       fi
                fi
                HOMENET+="127.0.0.1"
                echo "ipvar HOME_NET [$HOMENET]" > /etc/snort/vars
@@ -74,7 +89,7 @@ case "$1" in
 
                 for DEVICE in $DEVICES; do
                         boot_mesg "Starting Intrusion Detection System on $DEVICE..."
-                        /usr/sbin/snort -c /etc/snort/snort.conf -i $DEVICE -D -l /var/log/snort --create-pidfile --nolock-pidfile --pid-path /var/run/
+                        /usr/sbin/snort -c /etc/snort/snort.conf -i $DEVICE -D -l /var/log/snort --create-pidfile --nolock-pidfile --pid-path /var/run
                         evaluate_retval
                        sleep 1
                         chmod 644 /var/run/snort_$DEVICE.pid
index 0ed86616534c23d4bffcf1bae1e4c3b9b7986533..7b4092d38dd62bc6c3381fb6561b57410cdb00dd 100644 (file)
 
 case "$1" in
     start)
-       if [ ! -e "/etc/ssh/ssh_host_key" ]; then
-               boot_mesg "Generating SSH host key..."
-               ssh-keygen -qf /etc/ssh/ssh_host_key -N '' -t rsa1
-               evaluate_retval
-       fi
-
-       for algo in rsa dsa ecdsa ed25519; do
+       for algo in rsa ecdsa ed25519; do
                keyfile="/etc/ssh/ssh_host_${algo}_key"
 
                # If the key already exists, there is nothing to do.
                [ -e "${keyfile}" ] && continue
 
-               case "${algo}" in
-                       rsa)
-                               algo="rsa1"
-                               ;;
-               esac
-
                boot_mesg "Generating SSH key (${algo})..."
                ssh-keygen -qf "${keyfile}" -N '' -t ${algo}
                evaluate_retval
diff --git a/src/initscripts/init.d/tmpfs b/src/initscripts/init.d/tmpfs
deleted file mode 100644 (file)
index 2ee2ffb..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/bin/sh
-# Begin $rc_base/init.d/tmpfs
-
-. /etc/sysconfig/rc
-. $rc_functions
-
-eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
-
-if [ "$RRDLOG" = '' ]; then
-       RRDLOG=/var/log/rrd
-fi
-
-case "$1" in
-       start)
-               $0 restore
-               if [ ! -e $RRDLOG.bak/vnstat ]; then
-                       mkdir -p $RRDLOG.bak/vnstat
-               fi
-               if [ ! -e $RRDLOG/vnstat ]; then
-                       mkdir -p $RRDLOG/vnstat
-               fi
-               #
-               # create some folders
-               #
-               if [ ! -e /var/lock/subsys ]; then
-                       mkdir -p /var/lock/subsys
-               fi
-               if [ ! -e /var/lock/time ]; then
-                       mkdir -p /var/lock/time
-                       chown nobody.root /var/lock/time
-               fi
-               if [ ! -e /var/run/clamav ]; then
-                       mkdir -p /var/run/clamav
-                       chown clamav:clamav /var/run/clamav
-               fi
-               if [ ! -e /var/run/cups ]; then
-                       mkdir -p /var/run/cups
-               fi
-               if [ ! -e /var/run/dbus ]; then
-                       mkdir -p /var/run/dbus
-               fi
-               if [ ! -e /var/run/mysql ]; then
-                       mkdir -p /var/run/mysql
-                       chown mysql:mysql /var/run/mysql
-               fi
-               if [ ! -e /var/run/saslauthd ]; then
-                       mkdir -p /var/run/saslauthd
-               fi
-
-               #
-               # Move /var/spool/cron to ramdisk and make a symlink
-               #
-               if [ ! -L /var/spool/cron ]; then
-                       cp -pR /var/spool/cron /var/log/rrd.bak/cron
-                       mv /var/spool/cron /var/log/rrd/cron
-                       ln -s /var/log/rrd/cron /var/spool/cron
-               fi
-
-               echo_ok
-               ;;
-       stop)
-               $0 backup
-               ;;
-
-       backup)
-               boot_mesg "Save ramdisk..."
-               cp -pR $RRDLOG/* $RRDLOG.bak/
-               evaluate_retval
-               ;;
-       restore)
-               if ! mountpoint $RRDLOG &>/dev/null; then
-                       mount -t tmpfs -o size=64M none "$RRDLOG"
-               fi
-
-               if [ -e $RRDLOG.bak/cron/new.root ]; then
-                       if [ -e $RRDLOG.bak/cron/root ]; then
-                               rm -f $RRDLOG.bak/cron/new.root
-                       fi
-               fi
-               if [ -e $RRDLOG.bak ];then
-                       boot_mesg "Restore ramdisk..."
-                       cp -pR $RRDLOG.bak/* $RRDLOG/
-               fi
-               ;;
-
-
-       *)
-               echo "Usage: $0 {start|stop|backup}"
-               exit 1
-               ;;
-esac
-
-# End $rc_base/init.d/tmpfs
diff --git a/src/initscripts/init.d/vnstat b/src/initscripts/init.d/vnstat
new file mode 100755 (executable)
index 0000000..518b2d7
--- /dev/null
@@ -0,0 +1,38 @@
+#!/bin/sh
+# Begin $rc_base/init.d/vnstat
+
+. /etc/sysconfig/rc
+. $rc_functions
+
+eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
+
+if [ "$VNSTATLOG" = '' ]; then
+       VNSTATLOG=/var/log/vnstat
+fi
+
+case "$1" in
+       start)
+               if use_ramdisk; then
+                       boot_mesg "Mounting vnstat ramdisk..."
+                       mount_ramdisk "${VNSTATLOG}"
+                       evaluate_retval
+               fi
+               ;;
+       stop)
+               umount_ramdisk "${VNSTATLOG}"
+               ;;
+
+       backup)
+               # Backup all data if ramdisk is used
+               if mountpoint "${RRDLOG}" &>/dev/null; then
+                       ${0} restart
+               fi
+               ;;
+
+       *)
+               echo "Usage: $0 {start|stop|backup}"
+               exit 1
+               ;;
+esac
+
+# End $rc_base/init.d/vnstat
index cdbcca4f4ec04be56c0687061c019b0112198a6b..5f8a77d8b19938c80ae445aa9e938709f3704cd3 100644 (file)
@@ -33,8 +33,4 @@ lp
 ### fusion
 # fusion
 
-### cryptodev
-#
-cryptodev
-
 # End /etc/sysconfig/modules
index 86788507567c694a15ee0fd2b0d3f1077b643d86..6cba810585992d9eaeba3f911295fa6f444cd174 100644 (file)
@@ -16,8 +16,10 @@ jv
 km_KH
 nl
 pl
+pt
 pt_BR
 pt_PT
+ro
 ro_RO
 ru
 rw
index 93893d99b651db8f89d9efc18aa0091dd45129a4..eab3da5059db5e60af32c383981e599b26bb3db0 100644 (file)
@@ -6,14 +6,15 @@
 # Michael Tremer <michael.tremer@ipfire.org>, 2014
 # Peter Cloudstone <rmg-mainz@web.de>, 2014
 # Stefan Schantl <stefan.schantl@ipfire.org>, 2014
+# Sun Tiger, 2015
 msgid ""
 msgstr ""
 "Project-Id-Version: IPFire Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2014-11-05 01:29+0000\n"
-"PO-Revision-Date: 2014-11-07 15:02+0000\n"
-"Last-Translator: Peter Cloudstone <rmg-mainz@web.de>\n"
-"Language-Team: German (http://www.transifex.com/projects/p/ipfire/language/de/)\n"
+"PO-Revision-Date: 2015-05-07 16:56+0000\n"
+"Last-Translator: Sun Tiger\n"
+"Language-Team: German (http://www.transifex.com/mstremer/ipfire/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -47,7 +48,7 @@ msgstr "Wählen Sie die gewünschte Sprache für den Installationsprozess aus."
 
 #: main.c:418
 msgid "Unattended mode"
-msgstr "Automatikmodus"
+msgstr "Automatischer Modus"
 
 #: main.c:420
 msgid "<Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next screen"
@@ -134,7 +135,7 @@ msgstr "Lizenzvereinbarung"
 
 #: main.c:544
 msgid "License not accepted!"
-msgstr "Lizenz nicht akzeptiert!"
+msgstr "Lizenz wurde nicht akzeptiert!"
 
 #: main.c:566
 msgid "No hard disk found."
@@ -170,7 +171,7 @@ msgstr "Das Installationsprogramm wird die folgende  Festplatte nun vorbereiten:
 
 #: main.c:619
 msgid "Disk Setup"
-msgstr "Disk-Setup"
+msgstr "Festplatten-Setup"
 
 #: main.c:620 main.c:630
 msgid "Delete all data"
@@ -254,7 +255,7 @@ msgstr "Die Dateisysteme konnten nicht erstellt werden."
 
 #: main.c:749
 msgid "Unable to mount filesystems."
-msgstr "Die Dateisysteme konnten nicht eingehangen werden."
+msgstr "Die Dateisysteme konnten nicht eingehängt werden."
 
 #: main.c:760
 msgid "Installing the system..."
@@ -266,11 +267,11 @@ msgstr "Das System konnte nicht installiert werden."
 
 #: main.c:777
 msgid "Installing the language cache..."
-msgstr "Installiere den Sprachdateicache..."
+msgstr "Installiere den Sprachdateizwischenspeicher..."
 
 #: main.c:778
 msgid "Unable to install the language cache."
-msgstr "Der Sprachdateicache konnte nicht erstellt werden."
+msgstr "Der Sprachdateizwischenspeicher konnte nicht erstellt werden."
 
 #: main.c:783
 msgid "Installing the bootloader..."
diff --git a/src/installer/po/pt.po b/src/installer/po/pt.po
new file mode 100644 (file)
index 0000000..8a93730
--- /dev/null
@@ -0,0 +1,329 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR The IPFire Project (www.ipfire.org)
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: IPFire Project\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-11-05 01:29+0000\n"
+"PO-Revision-Date: 2014-07-31 09:39+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Portuguese (http://www.transifex.com/mstremer/ipfire/language/pt/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: pt\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893
+msgid "OK"
+msgstr ""
+
+#: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:670
+#: main.c:702
+msgid "Cancel"
+msgstr ""
+
+#: main.c:176
+msgid "I accept this license"
+msgstr ""
+
+#: main.c:384
+msgid "Warning: Unattended installation will start in 10 seconds..."
+msgstr ""
+
+#: main.c:403
+msgid "Language selection"
+msgstr ""
+
+#: main.c:403
+msgid "Select the language you wish to use for the installation."
+msgstr ""
+
+#: main.c:418
+msgid "Unattended mode"
+msgstr ""
+
+#: main.c:420
+msgid "<Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next screen"
+msgstr ""
+
+#: main.c:426
+#, c-format
+msgid ""
+"Welcome to the %s installation program.\n"
+"\n"
+"Selecting Cancel on any of the following screens will reboot the computer."
+msgstr ""
+
+#: main.c:428
+msgid "Start installation"
+msgstr ""
+
+#: main.c:449
+#, c-format
+msgid "The installer will now try downloading the installation image."
+msgstr ""
+
+#: main.c:452
+#, c-format
+msgid ""
+"No source drive could be found.\n"
+"\n"
+"You can try downloading the required installation image."
+msgstr ""
+
+#: main.c:456
+msgid ""
+"Please make sure to connect your machine to a network and the installer will"
+" try connect to acquire an IP address."
+msgstr ""
+
+#: main.c:460
+msgid "Download installation image"
+msgstr ""
+
+#: main.c:473
+msgid "Trying to start networking (DHCP)..."
+msgstr ""
+
+#: main.c:484
+msgid ""
+"Networking could not be started but is required to go on with the installation.\n"
+"\n"
+"Please connect your machine to a network with a DHCP server and retry."
+msgstr ""
+
+#: main.c:487 main.c:516
+msgid "Retry"
+msgstr ""
+
+#: main.c:501
+msgid "Downloading installation image..."
+msgstr ""
+
+#: main.c:510
+#, c-format
+msgid "MD5 checksum mismatch"
+msgstr ""
+
+#: main.c:513
+#, c-format
+msgid ""
+"The installation image could not be downloaded.\n"
+"  Reason: %s\n"
+"\n"
+"%s"
+msgstr ""
+
+#: main.c:528
+#, c-format
+msgid ""
+"Could not mount %s to %s:\n"
+"  %s\n"
+msgstr ""
+
+#: main.c:543
+msgid "License Agreement"
+msgstr ""
+
+#: main.c:544
+msgid "License not accepted!"
+msgstr ""
+
+#: main.c:566
+msgid "No hard disk found."
+msgstr ""
+
+#: main.c:587
+msgid "Disk Selection"
+msgstr ""
+
+#: main.c:588
+msgid ""
+"Select the disk(s) you want to install IPFire on. First those will be partitioned, and then the partitions will have a filesystem put on them.\n"
+"\n"
+"ALL DATA ON THE DISK WILL BE DESTROYED."
+msgstr ""
+
+#: main.c:599
+msgid ""
+"No disk has been selected.\n"
+"\n"
+"Please select one or more disks you want to install IPFire on."
+msgstr ""
+
+#: main.c:617
+#, c-format
+msgid ""
+"The installation program will now prepare the chosen harddisk:\n"
+"\n"
+"  %s\n"
+"\n"
+"Do you agree to continue?"
+msgstr ""
+
+#: main.c:619
+msgid "Disk Setup"
+msgstr ""
+
+#: main.c:620 main.c:630
+msgid "Delete all data"
+msgstr ""
+
+#: main.c:627
+#, c-format
+msgid ""
+"The installation program will now set up a RAID configuration on the selected harddisks:\n"
+"\n"
+"  %s\n"
+"  %s\n"
+"\n"
+"Do you agree to continue?"
+msgstr ""
+
+#: main.c:629
+msgid "RAID Setup"
+msgstr ""
+
+#: main.c:640
+msgid "Your disk configuration is currently not supported."
+msgstr ""
+
+#: main.c:655
+msgid "Your harddisk is too small."
+msgstr ""
+
+#: main.c:671
+msgid ""
+"Your harddisk is very small, but you can continue without a swap partition."
+msgstr ""
+
+#: main.c:684
+msgid "ext4 Filesystem"
+msgstr ""
+
+#: main.c:685
+msgid "ext4 Filesystem without journal"
+msgstr ""
+
+#: main.c:686
+msgid "XFS Filesystem"
+msgstr ""
+
+#: main.c:687
+msgid "ReiserFS Filesystem"
+msgstr ""
+
+#: main.c:701
+msgid "Filesystem Selection"
+msgstr ""
+
+#: main.c:701
+msgid "Please choose your filesystem:"
+msgstr ""
+
+#: main.c:712
+msgid "Building RAID..."
+msgstr ""
+
+#: main.c:716
+msgid "Unable to build the RAID."
+msgstr ""
+
+#: main.c:728
+msgid "Partitioning disk..."
+msgstr ""
+
+#: main.c:732
+msgid "Unable to partition the disk."
+msgstr ""
+
+#: main.c:739
+msgid "Creating filesystems..."
+msgstr ""
+
+#: main.c:743
+msgid "Unable to create filesystems."
+msgstr ""
+
+#: main.c:749
+msgid "Unable to mount filesystems."
+msgstr ""
+
+#: main.c:760
+msgid "Installing the system..."
+msgstr ""
+
+#: main.c:761
+msgid "Unable to install the system."
+msgstr ""
+
+#: main.c:777
+msgid "Installing the language cache..."
+msgstr ""
+
+#: main.c:778
+msgid "Unable to install the language cache."
+msgstr ""
+
+#: main.c:783
+msgid "Installing the bootloader..."
+msgstr ""
+
+#: main.c:790
+msgid "Unable to open /etc/default/grub for writing."
+msgstr ""
+
+#: main.c:812
+msgid "Unable to install the bootloader."
+msgstr ""
+
+#: main.c:826
+msgid ""
+"A backup file has been found on the installation image.\n"
+"\n"
+"Do you want to restore the backup?"
+msgstr ""
+
+#: main.c:827
+msgid "Yes"
+msgstr ""
+
+#: main.c:827
+msgid "No"
+msgstr ""
+
+#: main.c:834
+msgid "An error occured when the backup file was restored."
+msgstr ""
+
+#: main.c:869
+msgid "Running post-install script..."
+msgstr ""
+
+#: main.c:870
+msgid "Post-install script failed."
+msgstr ""
+
+#: main.c:877
+#, c-format
+msgid ""
+"%s was successfully installed!\n"
+"\n"
+"Please remove any installation mediums from this system and hit the reboot button. Once the system has restarted you will be asked to setup networking and system passwords. After that, you should point your web browser at https://%s:444 (or what ever you name your %s) for the web configuration console."
+msgstr ""
+
+#: main.c:882
+msgid "Congratulations!"
+msgstr ""
+
+#: main.c:882
+msgid "Reboot"
+msgstr ""
+
+#: main.c:893
+msgid "Setup has failed. Press Ok to reboot."
+msgstr ""
diff --git a/src/installer/po/ro.po b/src/installer/po/ro.po
new file mode 100644 (file)
index 0000000..738650f
--- /dev/null
@@ -0,0 +1,329 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR The IPFire Project (www.ipfire.org)
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: IPFire Project\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-11-05 01:29+0000\n"
+"PO-Revision-Date: 2014-07-31 09:39+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Romanian (http://www.transifex.com/mstremer/ipfire/language/ro/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ro\n"
+"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
+
+#: main.c:78 main.c:179 main.c:404 main.c:670 main.c:702 main.c:893
+msgid "OK"
+msgstr ""
+
+#: main.c:79 main.c:460 main.c:487 main.c:516 main.c:620 main.c:630 main.c:670
+#: main.c:702
+msgid "Cancel"
+msgstr ""
+
+#: main.c:176
+msgid "I accept this license"
+msgstr ""
+
+#: main.c:384
+msgid "Warning: Unattended installation will start in 10 seconds..."
+msgstr ""
+
+#: main.c:403
+msgid "Language selection"
+msgstr ""
+
+#: main.c:403
+msgid "Select the language you wish to use for the installation."
+msgstr ""
+
+#: main.c:418
+msgid "Unattended mode"
+msgstr ""
+
+#: main.c:420
+msgid "<Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next screen"
+msgstr ""
+
+#: main.c:426
+#, c-format
+msgid ""
+"Welcome to the %s installation program.\n"
+"\n"
+"Selecting Cancel on any of the following screens will reboot the computer."
+msgstr ""
+
+#: main.c:428
+msgid "Start installation"
+msgstr ""
+
+#: main.c:449
+#, c-format
+msgid "The installer will now try downloading the installation image."
+msgstr ""
+
+#: main.c:452
+#, c-format
+msgid ""
+"No source drive could be found.\n"
+"\n"
+"You can try downloading the required installation image."
+msgstr ""
+
+#: main.c:456
+msgid ""
+"Please make sure to connect your machine to a network and the installer will"
+" try connect to acquire an IP address."
+msgstr ""
+
+#: main.c:460
+msgid "Download installation image"
+msgstr ""
+
+#: main.c:473
+msgid "Trying to start networking (DHCP)..."
+msgstr ""
+
+#: main.c:484
+msgid ""
+"Networking could not be started but is required to go on with the installation.\n"
+"\n"
+"Please connect your machine to a network with a DHCP server and retry."
+msgstr ""
+
+#: main.c:487 main.c:516
+msgid "Retry"
+msgstr ""
+
+#: main.c:501
+msgid "Downloading installation image..."
+msgstr ""
+
+#: main.c:510
+#, c-format
+msgid "MD5 checksum mismatch"
+msgstr ""
+
+#: main.c:513
+#, c-format
+msgid ""
+"The installation image could not be downloaded.\n"
+"  Reason: %s\n"
+"\n"
+"%s"
+msgstr ""
+
+#: main.c:528
+#, c-format
+msgid ""
+"Could not mount %s to %s:\n"
+"  %s\n"
+msgstr ""
+
+#: main.c:543
+msgid "License Agreement"
+msgstr ""
+
+#: main.c:544
+msgid "License not accepted!"
+msgstr ""
+
+#: main.c:566
+msgid "No hard disk found."
+msgstr ""
+
+#: main.c:587
+msgid "Disk Selection"
+msgstr ""
+
+#: main.c:588
+msgid ""
+"Select the disk(s) you want to install IPFire on. First those will be partitioned, and then the partitions will have a filesystem put on them.\n"
+"\n"
+"ALL DATA ON THE DISK WILL BE DESTROYED."
+msgstr ""
+
+#: main.c:599
+msgid ""
+"No disk has been selected.\n"
+"\n"
+"Please select one or more disks you want to install IPFire on."
+msgstr ""
+
+#: main.c:617
+#, c-format
+msgid ""
+"The installation program will now prepare the chosen harddisk:\n"
+"\n"
+"  %s\n"
+"\n"
+"Do you agree to continue?"
+msgstr ""
+
+#: main.c:619
+msgid "Disk Setup"
+msgstr ""
+
+#: main.c:620 main.c:630
+msgid "Delete all data"
+msgstr ""
+
+#: main.c:627
+#, c-format
+msgid ""
+"The installation program will now set up a RAID configuration on the selected harddisks:\n"
+"\n"
+"  %s\n"
+"  %s\n"
+"\n"
+"Do you agree to continue?"
+msgstr ""
+
+#: main.c:629
+msgid "RAID Setup"
+msgstr ""
+
+#: main.c:640
+msgid "Your disk configuration is currently not supported."
+msgstr ""
+
+#: main.c:655
+msgid "Your harddisk is too small."
+msgstr ""
+
+#: main.c:671
+msgid ""
+"Your harddisk is very small, but you can continue without a swap partition."
+msgstr ""
+
+#: main.c:684
+msgid "ext4 Filesystem"
+msgstr ""
+
+#: main.c:685
+msgid "ext4 Filesystem without journal"
+msgstr ""
+
+#: main.c:686
+msgid "XFS Filesystem"
+msgstr ""
+
+#: main.c:687
+msgid "ReiserFS Filesystem"
+msgstr ""
+
+#: main.c:701
+msgid "Filesystem Selection"
+msgstr ""
+
+#: main.c:701
+msgid "Please choose your filesystem:"
+msgstr ""
+
+#: main.c:712
+msgid "Building RAID..."
+msgstr ""
+
+#: main.c:716
+msgid "Unable to build the RAID."
+msgstr ""
+
+#: main.c:728
+msgid "Partitioning disk..."
+msgstr ""
+
+#: main.c:732
+msgid "Unable to partition the disk."
+msgstr ""
+
+#: main.c:739
+msgid "Creating filesystems..."
+msgstr ""
+
+#: main.c:743
+msgid "Unable to create filesystems."
+msgstr ""
+
+#: main.c:749
+msgid "Unable to mount filesystems."
+msgstr ""
+
+#: main.c:760
+msgid "Installing the system..."
+msgstr ""
+
+#: main.c:761
+msgid "Unable to install the system."
+msgstr ""
+
+#: main.c:777
+msgid "Installing the language cache..."
+msgstr ""
+
+#: main.c:778
+msgid "Unable to install the language cache."
+msgstr ""
+
+#: main.c:783
+msgid "Installing the bootloader..."
+msgstr ""
+
+#: main.c:790
+msgid "Unable to open /etc/default/grub for writing."
+msgstr ""
+
+#: main.c:812
+msgid "Unable to install the bootloader."
+msgstr ""
+
+#: main.c:826
+msgid ""
+"A backup file has been found on the installation image.\n"
+"\n"
+"Do you want to restore the backup?"
+msgstr ""
+
+#: main.c:827
+msgid "Yes"
+msgstr ""
+
+#: main.c:827
+msgid "No"
+msgstr ""
+
+#: main.c:834
+msgid "An error occured when the backup file was restored."
+msgstr ""
+
+#: main.c:869
+msgid "Running post-install script..."
+msgstr ""
+
+#: main.c:870
+msgid "Post-install script failed."
+msgstr ""
+
+#: main.c:877
+#, c-format
+msgid ""
+"%s was successfully installed!\n"
+"\n"
+"Please remove any installation mediums from this system and hit the reboot button. Once the system has restarted you will be asked to setup networking and system passwords. After that, you should point your web browser at https://%s:444 (or what ever you name your %s) for the web configuration console."
+msgstr ""
+
+#: main.c:882
+msgid "Congratulations!"
+msgstr ""
+
+#: main.c:882
+msgid "Reboot"
+msgstr ""
+
+#: main.c:893
+msgid "Setup has failed. Press Ok to reboot."
+msgstr ""
index e990bc361946a1a2b7f85bf799f0b1856dd0a2da..ad65543fc8e8336fd08950c628102d0ad627a56f 100644 (file)
@@ -11,9 +11,9 @@ msgstr ""
 "Project-Id-Version: IPFire Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2014-11-05 01:29+0000\n"
-"PO-Revision-Date: 2015-02-28 22:11+0000\n"
+"PO-Revision-Date: 2015-04-23 16:07+0000\n"
 "Last-Translator: Ersan YILDIRIM <ersan73@gmail.com>\n"
-"Language-Team: Turkish (http://www.transifex.com/projects/p/ipfire/language/tr/)\n"
+"Language-Team: Turkish (http://www.transifex.com/mstremer/ipfire/language/tr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -59,7 +59,7 @@ msgid ""
 "Welcome to the %s installation program.\n"
 "\n"
 "Selecting Cancel on any of the following screens will reboot the computer."
-msgstr "%s kurulum programına hoş geldiniz.\n\nSonraki ekranların herhangi birinde İptal seçeneğini seçtiğinizde bilgisayar yeniden başlatılac."
+msgstr "%s kurulum programına hoş geldiniz.\n\nSonraki ekranların herhangi birinde İptal seçeneğini seçtiğinizde bilgisayar yeniden başlatılacak."
 
 #: main.c:428
 msgid "Start installation"
index 43e6a9081e436d3ad18dc8d0dbd8c77447bedefc..ff775da2ae00ee03de125bbfdfb897bba8f5a05c 100644 (file)
@@ -28,10 +28,10 @@ SUID_PROGS = squidctrl sshctrl ipfirereboot \
        applejuicectrl rebuildhosts backupctrl collectdctrl \
        logwatch openvpnctrl firewallctrl \
        wirelessctrl getipstat qosctrl launch-ether-wake \
-       redctrl syslogdctrl extrahdctrl sambactrl upnpctrl tripwirectrl \
+       redctrl syslogdctrl extrahdctrl sambactrl upnpctrl \
        smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \
        setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes \
-       getconntracktable wirelessclient dnsmasqctrl torctrl
+       getconntracktable wirelessclient dnsmasqctrl torctrl ddnsctrl
 SUID_UPDX = updxsetperms
 
 OBJS = $(patsubst %,%.o,$(PROGS) $(SUID_PROGS))
diff --git a/src/misc-progs/ddnsctrl.c b/src/misc-progs/ddnsctrl.c
new file mode 100644 (file)
index 0000000..7c41033
--- /dev/null
@@ -0,0 +1,37 @@
+/* This file is part of the IPFire Firewall.
+*
+* This program is distributed under the terms of the GNU General Public
+* Licence.  See the file COPYING for details.
+*
+*/
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
+#include "setuid.h"
+
+const char *conffile = "/var/ipfire/ddns/ddns.conf";
+
+int main(int argc, char *argv[]) {
+       char cmd[STRING_SIZE];
+
+        if (!(initsetuid()))
+                exit(1);
+
+        if (argc < 2) {
+                fprintf(stderr, "\nNo argument given.\n\nddnsctrl (update-all)\n\n");
+                exit(1);
+        }
+
+       if (strcmp(argv[1], "update-all") == 0) {
+               snprintf(cmd, sizeof(cmd), "/usr/bin/ddns --config %s update-all >/dev/null 2>&1", conffile);
+               safe_system(cmd);
+       } else {
+                fprintf(stderr, "\nBad argument given.\n\nddnsctrl (update-all)\n\n");
+                exit(1);
+        }
+
+        return 0;
+}
index eb3fc4984f22ccfe4e46a2f2f804a60bf4386559..7499e94c9a7f384e6d0fd809203d32163cb84e96 100644 (file)
@@ -58,36 +58,26 @@ static void ipsec_reload() {
 void open_physical (char *interface, int nat_traversal_port) {
         char str[STRING_SIZE];
 
-        // GRE ???
-//        sprintf(str, "/sbin/iptables -A " phystable " -p 47  -i %s -j ACCEPT", interface);
-//        safe_system(str);
-        // ESP
-//        sprintf(str, "/sbin/iptables -A " phystable " -p 50  -i %s -j ACCEPT", interface);
-//        safe_system(str);
-        // AH
-//        sprintf(str, "/sbin/iptables -A " phystable " -p 51  -i %s -j ACCEPT", interface);
-//        safe_system(str);
         // IKE
-
-        sprintf(str, "/sbin/iptables -D IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT >/dev/null 2>&1", interface);
+        sprintf(str, "/sbin/iptables --wait -D IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT >/dev/null 2>&1", interface);
         safe_system(str);
-        sprintf(str, "/sbin/iptables -A IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT", interface);
+        sprintf(str, "/sbin/iptables --wait -A IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT", interface);
         safe_system(str);
 
         if (! nat_traversal_port) 
             return;
 
-        sprintf(str, "/sbin/iptables -D IPSECINPUT -p udp -i %s --dport %i -j ACCEPT >/dev/null 2>&1", interface, nat_traversal_port);
+        sprintf(str, "/sbin/iptables --wait -D IPSECINPUT -p udp -i %s --dport %i -j ACCEPT >/dev/null 2>&1", interface, nat_traversal_port);
         safe_system(str);
-        sprintf(str, "/sbin/iptables -A IPSECINPUT -p udp -i %s --dport %i -j ACCEPT", interface, nat_traversal_port);
+        sprintf(str, "/sbin/iptables --wait -A IPSECINPUT -p udp -i %s --dport %i -j ACCEPT", interface, nat_traversal_port);
         safe_system(str);
 }
 
 void ipsec_norules() {
         /* clear input rules */
-        safe_system("/sbin/iptables -F IPSECINPUT");
-        safe_system("/sbin/iptables -F IPSECFORWARD");
-        safe_system("/sbin/iptables -F IPSECOUTPUT");
+        safe_system("/sbin/iptables --wait -F IPSECINPUT");
+        safe_system("/sbin/iptables --wait -F IPSECFORWARD");
+        safe_system("/sbin/iptables --wait -F IPSECOUTPUT");
 }
 
 /*
@@ -154,6 +144,9 @@ void turn_connection_on(char *name, char *type) {
                 "/usr/sbin/ipsec down %s >/dev/null", name);
         safe_system(command);
 
+       // Reload the IPsec block chain
+       safe_system("/usr/lib/firewall/ipsec-block >/dev/null");
+
        // Reload the configuration into the daemon (#10339).
        ipsec_reload();
 
@@ -312,6 +305,7 @@ int main(int argc, char *argv[]) {
 
         // start the system
         if ((argc == 2) && strcmp(argv[1], "S") == 0) {
+               safe_system("/usr/lib/firewall/ipsec-block >/dev/null");
                safe_system("/usr/sbin/ipsec restart >/dev/null");
                 exit(0);
         }
index 5e1420b9d28f06cc224811e4210327db949b3acd..c00dbcf7ceac5f82c52ee71f1fd0f7dc3fc748ed 100644 (file)
 #include <sys/types.h>
 #include <fcntl.h>
 #include "setuid.h"
+#include "libsmooth.h"
 
-int main(int argc, char *argv[]) {
+#define QOS_SH "/var/ipfire/qos/bin/qos.sh"
 
+int main(int argc, char *argv[]) {
+       struct keyvalue* kv = NULL;
         int fd = -1;
+       int r = 0;
 
         if (!(initsetuid()))
                 exit(1);
@@ -26,30 +30,48 @@ int main(int argc, char *argv[]) {
         }
 
         if (strcmp(argv[1], "generate") == 0) {
-                safe_system("/usr/bin/perl /var/ipfire/qos/bin/makeqosscripts.pl > /var/ipfire/qos/bin/qos.sh");
+               kv = initkeyvalues();
+               if (!readkeyvalues(kv, CONFIG_ROOT "/qos/settings")) {
+                       fprintf(stderr, "Cannot read QoS settings\n");
+                       r = 1;
+                       goto END;
+               }
+
+               char enabled[STRING_SIZE];
+               if (!findkey(kv, "ENABLED", enabled))
+                       strcpy(enabled, "off");
+
+               if (strcmp(enabled, "on") == 0)
+                       safe_system("/usr/bin/perl /var/ipfire/qos/bin/makeqosscripts.pl > " QOS_SH);
+               else
+                       unlink(QOS_SH);
         }
 
-        if ((fd = open("/var/ipfire/qos/bin/qos.sh", O_RDONLY)) != -1) {
+        if ((fd = open(QOS_SH, O_RDONLY)) != -1) {
                 close(fd);
         } else {
                 // If there is no qos.sh do nothing.
-                exit(0);
+                goto END;
         }
 
-        safe_system("chmod 755 /var/ipfire/qos/bin/qos.sh &>/dev/null");
+        safe_system("chmod 755 " QOS_SH " &>/dev/null");
         if (strcmp(argv[1], "start") == 0) {
-                safe_system("/var/ipfire/qos/bin/qos.sh start");
+                safe_system(QOS_SH " start");
         } else if (strcmp(argv[1], "stop") == 0) {
-                safe_system("/var/ipfire/qos/bin/qos.sh clear");
+                safe_system(QOS_SH " clear");
         } else if (strcmp(argv[1], "status") == 0) {
-                safe_system("/var/ipfire/qos/bin/qos.sh status");
+                safe_system(QOS_SH " status");
         } else if (strcmp(argv[1], "restart") == 0) {
-                safe_system("/var/ipfire/qos/bin/qos.sh restart");
+                safe_system(QOS_SH " restart");
         } else {
                 if (strcmp(argv[1], "generate") == 0) {exit(0);}
                 fprintf(stderr, "\nBad argument given.\n\nqosctrl (start|stop|restart|status|generate)\n\n");
                 exit(1);
         }
 
-        return 0;
+END:
+       if (kv)
+               freekeyvalues(kv);
+
+        return r;
 }
index 21c523600c75b5223106d6aeb284db40f30e9531..f77c2dfb53da72f7cf4371110d219f34591fb308 100644 (file)
@@ -79,18 +79,13 @@ int main(int argc, char *argv[])
        freekeyvalues(kv);
        kv = NULL;
 
-       if (!(gw = fopen(CONFIG_ROOT "/red/remote-ipaddress", "r")))
-       {
+       if ((gw = fopen(CONFIG_ROOT "/red/remote-ipaddress", "r"))) {
+               if (fgets(gateway, STRING_SIZE, gw) == NULL) {
+                       fprintf(stderr, "Couldn't read remote-ipaddress\n");
+                       exit(1);
+               }
+       } else {
                fprintf(stderr, "Couldn't open remote-ipaddress file\n");
-               fclose(gw);
-               gw = NULL;
-               exit(1);
-       }
-
-       if (fgets(gateway, STRING_SIZE, gw) == NULL)
-       {
-               fprintf(stderr, "Couldn't read remote-ipaddress\n");
-               exit(1);
        }
 
        if (!(fd = fopen(CONFIG_ROOT "/main/hosts", "r")))
@@ -112,7 +107,8 @@ int main(int argc, char *argv[])
        else
                fprintf(hosts, "%s\t%s\n",address,hostname);
 
-       fprintf(hosts, "%s\tgateway\n",gateway);
+       if (strlen(gateway) > 0)
+               fprintf(hosts, "%s\tgateway\n", gateway);
 
        while (fgets(buffer, STRING_SIZE, fd))
        {
index 48b0978d78a927e0a6b9e1a434e3e6d42667d7c2..109d267a4fe833f63794f49472d5309a0c0a10f7 100644 (file)
@@ -35,7 +35,7 @@ int main(int argc, char *argv[]) {
                safe_system("ln -fs ../init.d/ntp /etc/rc.d/rc6.d/K46ntpd >/dev/null 2>&1");
                safe_system("/etc/rc.d/init.d/ntp start");
        } else if (strcmp(argv[1], "disable") == 0) {
-               safe_system("/etc/rc.d/init.d/ntpd stop");
+               safe_system("/etc/rc.d/init.d/ntp stop");
                safe_system("rm -f /etc/rc.d/rc*.d/*ntpd >/dev/null 2>&1");
        } else {
                fprintf(stderr, "\nBad argument given.\n\ntimectrl (start|stop|restart)\n\n");
diff --git a/src/misc-progs/tripwirectrl.c b/src/misc-progs/tripwirectrl.c
deleted file mode 100644 (file)
index 8f02d0d..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#include "setuid.h"
-
-#define BUFFER_SIZE 1024
-
-char command[BUFFER_SIZE];
-
-int main(int argc, char *argv[])
-{
-
-if (!(initsetuid()))
- exit(1);
-
-// Check what command is asked
-if (argc==1)
-{
-fprintf (stderr, "Missing tripwirectrl command!\n");
-return 1;
-}
-
-if (strcmp(argv[1], "tripwirelog")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/twprint -m r --cfgfile /var/ipfire/tripwire/tw.cfg --twrfile /var/ipfire/tripwire/report/%s", argv[2]);
-safe_system(command);
-return 0;
-}
-
-if (strcmp(argv[1], "generatereport")==0)
-{
-safe_system("/usr/sbin/tripwire --check --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol");
-return 0;
-}
-
-if (strcmp(argv[1], "deletereport")==0)
-{
-sprintf(command, "rm -f /var/ipfire/tripwire/report/%s", argv[2]);
-safe_system(command);
-return 0;
-}
-
-if (strcmp(argv[1], "updatedatabase")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --update --accept-all --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol --local-passphrase %s --twrfile %s", argv[2], argv[3]);
-safe_system(command);
-return 0;
-}
-
-if (strcmp(argv[1], "keys")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/site.key && /usr/sbin/twadmin --generate-keys --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s && chmod 640 /var/ipfire/tripwire/site.key", argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/local.key && /usr/sbin/twadmin --generate-keys --local-keyfile /var/ipfire/tripwire/local.key --local-passphrase %s && chmod 640 /var/ipfire/tripwire/local.key", argv[3]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/tw.cfg && /usr/sbin/twadmin --create-cfgfile --cfgfile /var/ipfire/tripwire/tw.cfg --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s /var/ipfire/tripwire/twcfg.txt && chmod 640 /var/ipfire/tripwire/tw.cfg", argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/tw.pol && /usr/sbin/twadmin --create-polfile --cfgfile /var/ipfire/tripwire/tw.cfg --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s /var/ipfire/tripwire/twpol.txt && chmod 640 /var/ipfire/tripwire/tw.pol", argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --init --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol --local-passphrase %s", argv[3]);
-safe_system(command);
-return 0;
-}
-
-if (strcmp(argv[1], "generatepolicy")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/twadmin --create-polfile --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s --polfile /var/ipfire/tripwire/tw.pol --cfgfile /var/ipfire/tripwire/tw.cfg /var/ipfire/tripwire/twpol.txt", argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --init --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol --local-passphrase %s", argv[3]);
-safe_system(command);
-return 0;
-}
-
-if (strcmp(argv[1], "resetpolicy")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/twadmin --create-polfile --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s --polfile /var/ipfire/tripwire/tw.pol --cfgfile /var/ipfire/tripwire/tw.cfg /var/ipfire/tripwire/twpol.default", argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --init --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol --local-passphrase %s", argv[3]);
-safe_system(command);
-return 0;
-}
-
-if (strcmp(argv[1], "readconfig")==0)
-{
-safe_system("/bin/chown nobody:nobody /var/ipfire/tripwire/twcfg.txt");
-return 0;
-}
-
-if (strcmp(argv[1], "lockconfig")==0)
-{
-safe_system("/bin/chown root:root /var/ipfire/tripwire/twcfg.txt");
-return 0;
-}
-
-if (strcmp(argv[1], "enable")==0)
-{
-safe_system("touch /var/ipfire/tripwire/enable");
-safe_system("rm -rf /var/ipfire/tripwire/site.key && /usr/sbin/twadmin --generate-keys --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase ipfire && chmod 640 /var/ipfire/tripwire/site.key");
-safe_system("rm -rf /var/ipfire/tripwire/local.key && /usr/sbin/twadmin --generate-keys --local-keyfile /var/ipfire/tripwire/local.key --local-passphrase ipfire && chmod 640 /var/ipfire/tripwire/local.key");
-safe_system("rm -rf /var/ipfire/tripwire/tw.cfg && /usr/sbin/twadmin --create-cfgfile --cfgfile /var/ipfire/tripwire/tw.cfg --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase ipfire /var/ipfire/tripwire/twcfg.txt && chmod 640 /var/ipfire/tripwire/tw.cfg");
-safe_system("rm -rf /var/ipfire/tripwire/tw.pol && /usr/sbin/twadmin --create-polfile --cfgfile /var/ipfire/tripwire/tw.cfg --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase ipfire /var/ipfire/tripwire/twpol.txt && chmod 640 /var/ipfire/tripwire/tw.pol");
-safe_system("/usr/sbin/tripwire --init --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol --local-passphrase ipfire");
-safe_system("cat /usr/sbin/tripwire --check --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol > /etc/fcron.daily/tripwire0600");
-safe_system("chmod 755 /etc/fcron.daily/tripwire0600");
-safe_system("touch -t 01010600 /etc/fcron.daily/tripwire0600");
-return 0;
-}
-
-if (strcmp(argv[1], "disable")==0)
-{
-safe_system("unlink /var/ipfire/tripwire/enable");
-safe_system("unlink /etc/fcron.daily/tripwire*");
-safe_system("rm -rf /var/ipfire/tripwire/site.key");
-safe_system("rm -rf /var/ipfire/tripwire/local.key");
-safe_system("rm -rf /var/ipfire/tripwire/tw.cfg*");
-safe_system("rm -rf /var/ipfire/tripwire/tw.pol*");
-safe_system("rm -rf /var/ipfire/tripwire/*.twd*");
-safe_system("rm -rf /var/ipfire/tripwire/report/*");
-return 0;
-}
-
-if (strcmp(argv[1], "addcron")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "echo \"/usr/sbin/tripwire --check --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.pol\" > /etc/fcron.daily/tripwire%s%s", argv[2], argv[3]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "chmod 755 /etc/fcron.daily/tripwire%s%s", argv[2], argv[3]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "touch -t 0101%s%s /etc/fcron.daily/tripwire%s%s", argv[2], argv[3], argv[2], argv[3]);
-safe_system(command);
-return 0;
-}
-if (strcmp(argv[1], "disablecron")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "unlink /etc/fcron.daily/tripwire%s", argv[2]);
-safe_system(command);
-return 0;
-}
-return 0;
-}
index d14e0314da05e1a7bfd5377cd7811c1812e22afd..11b1e37d583382cdef82e21a220131545865beec 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2007-2015   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        #
@@ -393,6 +393,7 @@ sub dbgetlist {
        foreach $file (@files) {
                next if ( $file eq "." );
                next if ( $file eq ".." );
+               next if ( $file eq "meta-" );
                next if ( $file =~ /^old/ );
                open(FILE, "<$Conf::dbdir/meta/$file");
                @meta = <FILE>;
@@ -518,8 +519,13 @@ sub dblist {
                        } elsif ("$filter" eq "installed") {
                                next unless ( -e "$Conf::dbdir/installed/meta-$templine[0]" );
                        }
-                       if ("$forweb" eq "forweb") {
-                               print "<option value=\"$templine[0]\">$templine[0]-$templine[1]-$templine[2]</option>\n";
+                       if ("$forweb" eq "forweb")
+                        {
+                               if ("$filter" eq "notinstalled") {
+                                       print "<option value=\"$templine[0]\">$templine[0]-$templine[1]-$templine[2]</option>\n";
+                               } else {
+                                       print "<option value=\"$templine[0]\">$templine[0]</option>\n";
+                               }
                        } else {
                                if ("$Pakfire::enable_colors" eq "1") {
                                        if (&isinstalled("$templine[0]")) {
@@ -589,6 +595,25 @@ sub resolvedeps {
        return @all;
 }
 
+sub resolvedeps_recursive {
+       my @packages = @_;
+       my @result = ();
+
+       foreach my $pkg (@packages) {
+               my @deps = &Pakfire::resolvedeps($pkg);
+
+               foreach my $dep (@deps) {
+                       push(@result, $dep);
+               }
+       }
+
+       # Sort the result array and remove dupes
+       my %sort = map{ $_, 1 } @result;
+       @result = keys %sort;
+
+       return @result;
+}
+
 sub cleanup {
        my $dir = shift;
        my $path;
@@ -695,7 +720,7 @@ sub getpak {
        }
        
        unless ($file) {
-               message("No filename given in meta-file. Please phone the developers.");
+               message("No filename given in meta-file.");
                exit 1;
        }
        
@@ -870,6 +895,7 @@ sub checkcryptodb {
        unless ( "$ret" eq "0" ) {
                message("CRYPTO WARN: The GnuPG isn't configured corectly. Trying now to fix this.");
                message("CRYPTO WARN: It's normal to see this on first execution.");
+               message("CRYPTO WARN: If this message is being shown repeatedly, check if time and date are set correctly, and if IPFire can connect via port 11371 TCP.");
                my $command = "gpg --keyserver pgp.ipfire.org --always-trust --status-fd 2";
                system("$command --recv-key $myid >> $Conf::logdir/gnupg-database.log 2>&1");
                system("$command --recv-key $trustid >> $Conf::logdir/gnupg-database.log 2>&1");
index 3d0270aa41db8fb49f0f4f1002c9ba1e826606e6..da68454dc6646600cb401be62398734727f7bf59 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2007-2015   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        #
        } elsif ("$ARGV[0]" eq "upgrade") {
                &Pakfire::upgradecore();
                my @upgradepaks = &Pakfire::dblist("upgrade", "noweb");
-               my @temp, $pak;
-               
-               foreach (@upgradepaks) {
-                       @temp = &Pakfire::resolvedeps("$_");
-                       foreach (@temp) { push(@upgradepaks,$_) if $_; }
-               }
-               
+               my @deps = ();
+
                if (@upgradepaks) {
+                       # Resolve the dependencies of the to be upgraded packages
+                       @deps = &Pakfire::resolvedeps_recursive(@upgradepaks);
+
                        &Pakfire::message("");
                        &Pakfire::message("PAKFIRE UPGR: We are going to install all packages listed above.");
                        if ($interactive) {
                        }
                }
                
-               ### Download first
+               # Download packages
                foreach $pak (@upgradepaks) {
-                       #system("mv $Conf::dbdir/meta/meta-$pak $Conf::dbdir/meta/old-meta-$pak");
                        &Pakfire::getpak("$pak", "");
                }
-               
+
+               # Download dependencies
+               foreach $pak (@deps) {
+                       &Pakfire::getpak("$pak", "");
+               }
+
+               # Install dependencies first
+               foreach $pak (@deps) {
+                       &Pakfire::setuppak("$pak");
+               }
+
+               # Install all upgrades
                foreach $pak (@upgradepaks) {
-                       if (&Pakfire::upgradepak("$pak")) {
-                               #system("mv $Conf::dbdir/meta/old-meta-$pak $Conf::dbdir/meta/meta-$pak");
-                       }
+                       &Pakfire::upgradepak("$pak");
                }
                
        } elsif ("$ARGV[0]" eq "list") {
index 0d2109eb9e6337d1c5838982f6b82f04e7f4e4d1..e34fa5698fd7c31fca33c23ec6b928071079d4a8 100644 (file)
@@ -22,6 +22,7 @@
 ############################################################################
 #
 . /opt/pakfire/lib/functions.sh
+extract_backup_includes
 stop_service ${NAME}
 make_backup ${NAME}
 remove_files
index c980a0136bfd81732965bfda823522846531895d..4ebb38bf2a7196a2e8ac739a6010ca6e9e81137e 100644 (file)
@@ -45,7 +45,7 @@ function find_partition() {
 extract_files
 #
 KVER=xxxKVERxxx
-
+ROOT=`find_partition /`
 #
 # Create new module depency
 #
@@ -55,29 +55,24 @@ depmod -a $KVER-ipfire-pae
 #
 /usr/bin/dracut --force --xz /boot/initramfs-$KVER-ipfire-pae.img $KVER-ipfire-pae  
 
-
-ROOT="$(find_partition "/")"
-case $ROOT in
-       xvd* )
-               #
-               # We are on XEN so create new grub.conf / menu.lst for pygrub
-               #
-               echo "timeout 10"                          > /boot/grub/grub.conf
-               echo "default 0"                          >> /boot/grub/grub.conf
-               echo "title IPFire (pae-kernel)"          >> /boot/grub/grub.conf
-               echo "  kernel /vmlinuz-$KVER-ipfire-pae root=/dev/$ROOT rootdelay=10 panic=10 console=hvc0" \
-                                                         >> /boot/grub/grub.conf
-               echo "  initrd /initramfs-$KVER-ipfire-pae.img" >> /boot/grub/grub.conf
-               echo "# savedefault 0"                    >> /boot/grub/grub.conf
-               ln -s grub.conf $MNThdd/boot/grub/menu.lst
-               ;;
-       * )
-               #
-               # Update grub2 config
-               #
-               grub-mkconfig > /boot/grub/grub.cfg
-               ;;
-esac
+if [ -e /boot/grub/grub.cfg ]; then
+       #
+       # Update grub2 config
+       #
+       grub-mkconfig > /boot/grub/grub.cfg
+else
+       #
+       # xen pv with pygrub need grub.conf / menu.lst
+       #
+       echo "timeout 10"                          > /boot/grub/grub.conf
+       echo "default 0"                          >> /boot/grub/grub.conf
+       echo "title IPFire (pae-kernel)"          >> /boot/grub/grub.conf
+       echo "  kernel /vmlinuz-$KVER-ipfire-pae root=/dev/$ROOT rootdelay=10 panic=10 console=hvc0" \
+                                                 >> /boot/grub/grub.conf
+       echo "  initrd /initramfs-$KVER-ipfire-pae.img" >> /boot/grub/grub.conf
+       echo "# savedefault 0"                    >> /boot/grub/grub.conf
+       ln -s grub.conf $MNThdd/boot/grub/menu.lst
+fi
 
 # request a reboot if pae is supported
 if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
similarity index 98%
rename from src/paks/net-snmp/uninstall.sh
rename to src/paks/netsnmpd/uninstall.sh
index a7b8a5370f68e23809d3bd94083f0150545980cb..278218b26066bb104c4e310d58e5e9f4782f00e4 100644 (file)
@@ -22,6 +22,7 @@
 ############################################################################
 #
 . /opt/pakfire/lib/functions.sh
+extract_backup_includes
 stop_service ${NAME}
 make_backup ${NAME}
 remove_files
index 56c23e2c26bdea3576128c2881ab25171122267d..1629d21c18ce772aa1843f3b06c8b49e2ac2619b 100644 (file)
 #
 . /opt/pakfire/lib/functions.sh
 extract_files
+restore_backup ${NAME}
 postalias /etc/aliases
 # Set postfix's hostname
 postconf -e "myhostname=$(hostname -f)"
-/etc/init.d/postfix start
+
+start_service ${NAME}
 
 # Enable autostart for postfix
 ln -sf  ../init.d/postfix /etc/rc.d/rc0.d/K25postfix
 ln -sf  ../init.d/postfix /etc/rc.d/rc3.d/S35postfix
 ln -sf  ../init.d/postfix /etc/rc.d/rc6.d/K25postfix
+
+# Update alternatives
+/usr/sbin/alternatives --install /usr/sbin/sendmail sendmail /usr/sbin/sendmail.postfix 15
index 39f1ef969c3b233713530dc1a8ae23e3f039f3f9..bff411a91ddd72444e4e4cda4d71b975e10c2d6b 100644 (file)
@@ -22,5 +22,9 @@
 ############################################################################
 #
 . /opt/pakfire/lib/functions.sh
+extract_backup_includes
+stop_service ${NAME}
+make_backup ${NAME}
+/usr/sbin/alternatives --remove sendmail /usr/sbin/sendmail.postfix
 remove_files
 rm -rfv /etc/rc.d/rc*.d/*postfix
diff --git a/src/patches/0001-Fix-CVE-2015-8370-Grub2-user-pass-vulnerability.patch b/src/patches/0001-Fix-CVE-2015-8370-Grub2-user-pass-vulnerability.patch
new file mode 100644 (file)
index 0000000..2eef1ae
--- /dev/null
@@ -0,0 +1,45 @@
+From 88c9657960a6c5d3673a25c266781e876c181add Mon Sep 17 00:00:00 2001
+From: Hector Marco-Gisbert <hecmargi@upv.es>
+Date: Fri, 13 Nov 2015 16:21:09 +0100
+Subject: [PATCH] Fix security issue when reading username and password
+
+  This patch fixes two integer underflows at:
+    * grub-core/lib/crypto.c
+    * grub-core/normal/auth.c
+
+Signed-off-by: Hector Marco-Gisbert <hecmargi@upv.es>
+Signed-off-by: Ismael Ripoll-Ripoll <iripoll@disca.upv.es>
+---
+ grub-core/lib/crypto.c  | 2 +-
+ grub-core/normal/auth.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/grub-core/lib/crypto.c b/grub-core/lib/crypto.c
+index 010e550..524a3d8 100644
+--- a/grub-core/lib/crypto.c
++++ b/grub-core/lib/crypto.c
+@@ -456,7 +456,7 @@ grub_password_get (char buf[], unsigned buf_size)
+         break;
+       }
+-      if (key == '\b')
++      if (key == '\b' && cur_len)
+       {
+         cur_len--;
+         continue;
+diff --git a/grub-core/normal/auth.c b/grub-core/normal/auth.c
+index c6bd96e..5782ec5 100644
+--- a/grub-core/normal/auth.c
++++ b/grub-core/normal/auth.c
+@@ -172,7 +172,7 @@ grub_username_get (char buf[], unsigned buf_size)
+         break;
+       }
+-      if (key == '\b')
++      if (key == '\b' && cur_len)
+       {
+         cur_len--;
+         grub_printf ("\b");
+-- 
+1.9.1
+
diff --git a/src/patches/Python-2.7.9-gdbm-1.patch b/src/patches/Python-2.7.9-gdbm-1.patch
new file mode 100644 (file)
index 0000000..c72b452
--- /dev/null
@@ -0,0 +1,21 @@
+diff -Naur Python-2.7-org/setup.py Python-2.7/setup.py
+--- Python-2.7-org/setup.py    2010-06-27 14:36:16.000000000 +0200
++++ Python-2.7/setup.py        2010-07-13 22:23:04.000000000 +0200
+@@ -1125,7 +1125,7 @@
+                                                                'ndbm'):
+                             ndbm_libs = ['ndbm']
+                         else:
+-                            ndbm_libs = []
++                            ndbm_libs = ['gdbm', 'gdbm_compat' ]
+                         print "building dbm using ndbm"
+                         dbmext = Extension('dbm', ['dbmmodule.c'],
+                                            define_macros=[
+@@ -1140,7 +1140,7 @@
+                         if self.compiler.find_library_file(lib_dirs,
+                                                                'gdbm_compat'):
+                             gdbm_libs.append('gdbm_compat')
+-                        if find_file("gdbm/ndbm.h", inc_dirs, []) is not None:
++                        if find_file("ndbm.h", inc_dirs, []) is not None:
+                             print "building dbm using gdbm"
+                             dbmext = Extension(
+                                 'dbm', ['dbmmodule.c'],
diff --git a/src/patches/arm-multi-grsec-compile-fixes.patch b/src/patches/arm-multi-grsec-compile-fixes.patch
new file mode 100644 (file)
index 0000000..530d69e
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/arch/arm/mach-omap2/cclock3xxx_data.c~   2015-12-12 11:00:10.474423373 +0000
++++ b/arch/arm/mach-omap2/cclock3xxx_data.c    2015-12-12 11:30:31.198452547 +0000
+@@ -250,7 +250,7 @@
+ static struct clk dpll1_ck;
+-static struct clk_ops dpll1_ck_ops;
++static clk_ops_no_const dpll1_ck_ops;
+ static struct clk_ops dpll1_ck_ops_34xx __initdata = {
+       .init           = &omap2_init_clk_clkdm,
diff --git a/src/patches/backports-3.18.1-1_no_dma_sgtable_on_x86_64.patch b/src/patches/backports-3.18.1-1_no_dma_sgtable_on_x86_64.patch
new file mode 100644 (file)
index 0000000..5a2d04e
--- /dev/null
@@ -0,0 +1,26 @@
+diff -Naur backports-4.1.1-1.org/compat/dma-shared-helpers.c backports-4.1.1-1/compat/dma-shared-helpers.c
+--- backports-4.1.1-1.org/compat/dma-shared-helpers.c  2015-07-01 23:10:37.000000000 +0200
++++ backports-4.1.1-1/compat/dma-shared-helpers.c      2015-09-25 13:29:14.006762269 +0200
+@@ -20,22 +20,3 @@
+ #endif /* LINUX_VERSION_CODE <= KERNEL_VERSION(3,6,0) */
+ #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0) */
+-#if RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(7,0)
+-/*
+- * Create scatter-list for the already allocated DMA buffer.
+- */
+-int dma_common_get_sgtable(struct device *dev, struct sg_table *sgt,
+-               void *cpu_addr, dma_addr_t handle, size_t size)
+-{
+-      struct page *page = virt_to_page(cpu_addr);
+-      int ret;
+-
+-      ret = sg_alloc_table(sgt, 1, GFP_KERNEL);
+-      if (unlikely(ret))
+-              return ret;
+-
+-      sg_set_page(sgt->sgl, page, PAGE_ALIGN(size), 0);
+-      return 0;
+-}
+-EXPORT_SYMBOL_GPL(dma_common_get_sgtable);
+-#endif /* RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(7,0) */
diff --git a/src/patches/binutils-2.22-pt-pax-flags-20111121.patch b/src/patches/binutils-2.22-pt-pax-flags-20111121.patch
deleted file mode 100644 (file)
index 3ba1a87..0000000
+++ /dev/null
@@ -1,1859 +0,0 @@
---- binutils-2.22/bfd/elf-bfd.h
-+++ binutils-2.22/bfd/elf-bfd.h
-@@ -1577,6 +1577,9 @@ struct elf_obj_tdata
-   /* Segment flags for the PT_GNU_STACK segment.  */
-   unsigned int stack_flags;
-+  /* Segment flags for the PT_PAX_FLAGS segment.  */
-+  unsigned int pax_flags;
-+
-   /* Symbol version definitions in external objects.  */
-   Elf_Internal_Verdef *verdef;
---- binutils-2.22/bfd/elf.c
-+++ binutils-2.22/bfd/elf.c
-@@ -1158,6 +1158,7 @@ get_segment_type (unsigned int p_type)
-     case PT_GNU_EH_FRAME: pt = "EH_FRAME"; break;
-     case PT_GNU_STACK: pt = "STACK"; break;
-     case PT_GNU_RELRO: pt = "RELRO"; break;
-+    case PT_PAX_FLAGS: pt = "PAX_FLAGS"; break;
-     default: pt = NULL; break;
-     }
-   return pt;
-@@ -2477,6 +2478,9 @@ bfd_section_from_phdr (bfd *abfd, Elf_Internal_Phdr *hdr, int hdr_index)
-     case PT_GNU_RELRO:
-       return _bfd_elf_make_section_from_phdr (abfd, hdr, hdr_index, "relro");
-+    case PT_PAX_FLAGS:
-+      return _bfd_elf_make_section_from_phdr (abfd, hdr, hdr_index, "pax_flags");
-+
-     default:
-       /* Check for any processor-specific program segment types.  */
-       bed = get_elf_backend_data (abfd);
-@@ -3551,6 +3555,11 @@ get_program_header_size (bfd *abfd, struct bfd_link_info *info)
-       ++segs;
-     }
-+    {
-+      /* We need a PT_PAX_FLAGS segment.  */
-+      ++segs;
-+    }
-+
-   for (s = abfd->sections; s != NULL; s = s->next)
-     {
-       if ((s->flags & SEC_LOAD) != 0
-@@ -4153,6 +4162,20 @@ _bfd_elf_map_sections_to_segments (bfd *abfd, struct bfd_link_info *info)
-           }
-       }
-+    {
-+      amt = sizeof (struct elf_segment_map);
-+      m = bfd_zalloc (abfd, amt);
-+      if (m == NULL)
-+      goto error_return;
-+      m->next = NULL;
-+      m->p_type = PT_PAX_FLAGS;
-+      m->p_flags = elf_tdata (abfd)->pax_flags;
-+      m->p_flags_valid = 1;
-+
-+      *pm = m;
-+      pm = &m->next;
-+    }
-+
-       free (sections);
-       elf_tdata (abfd)->segment_map = mfirst;
-     }
-@@ -5417,7 +5440,8 @@ rewrite_elf_program_header (bfd *ibfd, bfd *obfd)
-        6. PT_TLS segment includes only SHF_TLS sections.
-        7. SHF_TLS sections are only in PT_TLS or PT_LOAD segments.
-        8. PT_DYNAMIC should not contain empty sections at the beginning
--        (with the possible exception of .dynamic).  */
-+        (with the possible exception of .dynamic).
-+       9. PT_PAX_FLAGS segments do not include any sections.  */
- #define IS_SECTION_IN_INPUT_SEGMENT(section, segment, bed)            \
-   ((((segment->p_paddr                                                        \
-       ? IS_CONTAINED_BY_LMA (section, segment, segment->p_paddr)      \
-@@ -5425,6 +5449,7 @@ rewrite_elf_program_header (bfd *ibfd, bfd *obfd)
-      && (section->flags & SEC_ALLOC) != 0)                            \
-     || IS_NOTE (segment, section))                                    \
-    && segment->p_type != PT_GNU_STACK                                 \
-+   && segment->p_type != PT_PAX_FLAGS                                 \
-    && (segment->p_type != PT_TLS                                      \
-        || (section->flags & SEC_THREAD_LOCAL))                                \
-    && (segment->p_type == PT_LOAD                                     \
---- binutils-2.22/bfd/elflink.c
-+++ binutils-2.22/bfd/elflink.c
-@@ -5545,16 +5545,30 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd,
-     return TRUE;
-   bed = get_elf_backend_data (output_bfd);
-+
-+  elf_tdata (output_bfd)->pax_flags = PF_NORANDEXEC;
-+  if (info->execheap)
-+    elf_tdata (output_bfd)->pax_flags |= PF_NOMPROTECT;
-+  else if (info->noexecheap)
-+    elf_tdata (output_bfd)->pax_flags |= PF_MPROTECT;
-+
-   if (info->execstack)
--    elf_tdata (output_bfd)->stack_flags = PF_R | PF_W | PF_X;
-+    {
-+      elf_tdata (output_bfd)->stack_flags = PF_R | PF_W | PF_X;
-+      elf_tdata (output_bfd)->pax_flags |= PF_EMUTRAMP;
-+    }
-   else if (info->noexecstack)
--    elf_tdata (output_bfd)->stack_flags = PF_R | PF_W;
-+    {
-+      elf_tdata (output_bfd)->stack_flags = PF_R | PF_W;
-+      elf_tdata (output_bfd)->pax_flags |= PF_NOEMUTRAMP;
-+    }
-   else
-     {
-       bfd *inputobj;
-       asection *notesec = NULL;
-       int exec = 0;
-+      elf_tdata (output_bfd)->pax_flags |= PF_NOEMUTRAMP;
-       for (inputobj = info->input_bfds;
-          inputobj;
-          inputobj = inputobj->link_next)
-@@ -5567,7 +5581,11 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd,
-         if (s)
-           {
-             if (s->flags & SEC_CODE)
--              exec = PF_X;
-+              {
-+                elf_tdata (output_bfd)->pax_flags &= ~PF_NOEMUTRAMP;
-+                elf_tdata (output_bfd)->pax_flags |= PF_EMUTRAMP;
-+                exec = PF_X;
-+              }
-             notesec = s;
-           }
-         else if (bed->default_execstack)
---- binutils-2.22/binutils/readelf.c
-+++ binutils-2.22/binutils/readelf.c
-@@ -2740,6 +2740,7 @@ get_segment_type (unsigned long p_type)
-                       return "GNU_EH_FRAME";
-     case PT_GNU_STACK:        return "GNU_STACK";
-     case PT_GNU_RELRO:  return "GNU_RELRO";
-+    case PT_PAX_FLAGS:  return "PAX_FLAGS";
-     default:
-       if ((p_type >= PT_LOPROC) && (p_type <= PT_HIPROC))
---- binutils-2.22/include/bfdlink.h
-+++ binutils-2.22/include/bfdlink.h
-@@ -322,6 +322,14 @@ struct bfd_link_info
-   /* TRUE if PT_GNU_RELRO segment should be created.  */
-   unsigned int relro: 1;
-+  /* TRUE if PT_PAX_FLAGS segment should be created with PF_NOMPROTECT
-+     flags.  */
-+  unsigned int execheap: 1;
-+
-+  /* TRUE if PT_PAX_FLAGS segment should be created with PF_MPROTECT
-+     flags.  */
-+  unsigned int noexecheap: 1;
-+
-   /* TRUE if .eh_frame_hdr section and PT_GNU_EH_FRAME ELF segment
-      should be created.  */
-   unsigned int eh_frame_hdr: 1;
---- binutils-2.22/include/elf/common.h
-+++ binutils-2.22/include/elf/common.h
-@@ -429,6 +429,7 @@
- #define PT_SUNW_EH_FRAME PT_GNU_EH_FRAME      /* Solaris uses the same value */
- #define PT_GNU_STACK  (PT_LOOS + 0x474e551) /* Stack flags */
- #define PT_GNU_RELRO  (PT_LOOS + 0x474e552) /* Read-only after relocation */
-+#define PT_PAX_FLAGS  (PT_LOOS + 0x5041580) /* PaX flags */
- /* Program segment permissions, in program header p_flags field.  */
-@@ -439,6 +440,21 @@
- #define PF_MASKOS     0x0FF00000      /* New value, Oct 4, 1999 Draft */
- #define PF_MASKPROC   0xF0000000      /* Processor-specific reserved bits */
-+/* Flags to control PaX behavior.  */
-+
-+#define PF_PAGEEXEC   (1 << 4)        /* Enable  PAGEEXEC */
-+#define PF_NOPAGEEXEC (1 << 5)        /* Disable PAGEEXEC */
-+#define PF_SEGMEXEC   (1 << 6)        /* Enable  SEGMEXEC */
-+#define PF_NOSEGMEXEC (1 << 7)        /* Disable SEGMEXEC */
-+#define PF_MPROTECT   (1 << 8)        /* Enable  MPROTECT */
-+#define PF_NOMPROTECT (1 << 9)        /* Disable MPROTECT */
-+#define PF_RANDEXEC   (1 << 10)       /* Enable  RANDEXEC */
-+#define PF_NORANDEXEC (1 << 11)       /* Disable RANDEXEC */
-+#define PF_EMUTRAMP   (1 << 12)       /* Enable  EMUTRAMP */
-+#define PF_NOEMUTRAMP (1 << 13)       /* Disable EMUTRAMP */
-+#define PF_RANDMMAP   (1 << 14)       /* Enable  RANDMMAP */
-+#define PF_NORANDMMAP (1 << 15)       /* Disable RANDMMAP */
-+
- /* Values for section header, sh_type field.  */
- #define SHT_NULL      0               /* Section header table entry unused */
---- binutils-2.22/ld/emultempl/elf32.em
-+++ binutils-2.22/ld/emultempl/elf32.em
-@@ -2285,6 +2285,16 @@ fragment <<EOF
-         link_info.noexecstack = TRUE;
-         link_info.execstack = FALSE;
-       }
-+      else if (strcmp (optarg, "execheap") == 0)
-+      {
-+        link_info.execheap = TRUE;
-+        link_info.noexecheap = FALSE;
-+      }
-+      else if (strcmp (optarg, "noexecheap") == 0)
-+      {
-+        link_info.noexecheap = TRUE;
-+        link_info.execheap = FALSE;
-+      }
- EOF
- if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
- fragment <<EOF
-@@ -2368,6 +2378,8 @@ fragment <<EOF
-   -z defs                     Report unresolved symbols in object files.\n"));
-   fprintf (file, _("\
-   -z execstack                Mark executable as requiring executable stack\n"));
-+  fprintf (file, _("\
-+  -z execheap                 Mark executable as requiring executable heap\n"));
- EOF
- if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
-@@ -2391,6 +2403,8 @@ fragment <<EOF
- fragment <<EOF
-   fprintf (file, _("\
-   -z noexecstack              Mark executable as not requiring executable stack\n"));
-+  fprintf (file, _("\
-+  -z noexecheap               Mark executable as not requiring executable heap\n"));
- EOF
- if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
- fragment <<EOF
---- binutils-2.22/ld/ldgram.y
-+++ binutils-2.22/ld/ldgram.y
-@@ -1119,6 +1119,8 @@ phdr_type:
-                           $$ = exp_intop (0x6474e550);
-                         else if (strcmp (s, "PT_GNU_STACK") == 0)
-                           $$ = exp_intop (0x6474e551);
-+                        else if (strcmp (s, "PT_PAX_FLAGS") == 0)
-+                          $$ = exp_intop (0x65041580);
-                         else
-                           {
-                             einfo (_("\
---- binutils-2.22/ld/testsuite/ld-alpha/tlsbin.rd
-+++ binutils-2.22/ld/testsuite/ld-alpha/tlsbin.rd
-@@ -35,13 +35,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
- Program Headers:
-   Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
--  PHDR +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+150 R E 0x8
-+  PHDR +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+188 R E 0x8
-   INTERP +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1
- .*Requesting program interpreter.*
-   LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x10000
-   LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x10000
-   DYNAMIC +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RW +0x8
-   TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 3 entries:
---- binutils-2.22/ld/testsuite/ld-alpha/tlsbinr.rd
-+++ binutils-2.22/ld/testsuite/ld-alpha/tlsbinr.rd
-@@ -42,6 +42,7 @@ Program Headers:
-  +LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x10000
-  +DYNAMIC +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RW +0x8
-  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 2 entries:
---- binutils-2.22/ld/testsuite/ld-alpha/tlspic.rd
-+++ binutils-2.22/ld/testsuite/ld-alpha/tlspic.rd
-@@ -38,6 +38,7 @@ Program Headers:
-  +LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x10000
-  +DYNAMIC +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RW +0x8
-  +TLS +0x0+10e0 0x0+110e0 0x0+110e0 0x0+60 0x0+80 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 7 entries:
---- binutils-2.22/ld/testsuite/ld-elf/eh1.d
-+++ binutils-2.22/ld/testsuite/ld-elf/eh1.d
-@@ -22,11 +22,11 @@ Contents of the .eh_frame section:
-   DW_CFA_nop
-   DW_CFA_nop
--00000018 0000001c 0000001c FDE cie=00000000 pc=00400078..00400078
--  DW_CFA_advance_loc: 0 to 00400078
-+00000018 0000001c 0000001c FDE cie=00000000 pc=([0-9a-f]+)..\1
-+  DW_CFA_advance_loc: 0 to [0-9a-f]+
-   DW_CFA_def_cfa_offset: 16
-   DW_CFA_offset: r6 \(rbp\) at cfa-16
--  DW_CFA_advance_loc: 0 to 00400078
-+  DW_CFA_advance_loc: 0 to [0-9a-f]+
-   DW_CFA_def_cfa_register: r6 \(rbp\)
- 00000038 ZERO terminator
---- binutils-2.22/ld/testsuite/ld-elf/eh2.d
-+++ binutils-2.22/ld/testsuite/ld-elf/eh2.d
-@@ -22,11 +22,11 @@ Contents of the .eh_frame section:
-   DW_CFA_nop
-   DW_CFA_nop
--00000018 0000001c 0000001c FDE cie=00000000 pc=00400078..00400078
--  DW_CFA_advance_loc: 0 to 00400078
-+00000018 0000001c 0000001c FDE cie=00000000 pc=([0-9a-f]+)..\1
-+  DW_CFA_advance_loc: 0 to [0-9a-f]+
-   DW_CFA_def_cfa_offset: 16
-   DW_CFA_offset: r6 \(rbp\) at cfa-16
--  DW_CFA_advance_loc: 0 to 00400078
-+  DW_CFA_advance_loc: 0 to [0-9a-f]+
-   DW_CFA_def_cfa_register: r6 \(rbp\)
- 00000038 ZERO terminator
---- binutils-2.22/ld/testsuite/ld-elf/eh3.d
-+++ binutils-2.22/ld/testsuite/ld-elf/eh3.d
-@@ -22,11 +22,11 @@ Contents of the .eh_frame section:
-   DW_CFA_nop
-   DW_CFA_nop
--00000018 0000001c 0000001c FDE cie=00000000 pc=00400078..00400078
--  DW_CFA_advance_loc: 0 to 00400078
-+00000018 0000001c 0000001c FDE cie=00000000 pc=([0-9a-f]+)..\1
-+  DW_CFA_advance_loc: 0 to [0-9a-f]+
-   DW_CFA_def_cfa_offset: 16
-   DW_CFA_offset: r6 \(rbp\) at cfa-16
--  DW_CFA_advance_loc: 0 to 00400078
-+  DW_CFA_advance_loc: 0 to [0-9a-f]+
-   DW_CFA_def_cfa_register: r6 \(rbp\)
- 00000038 ZERO terminator
---- binutils-2.22/ld/testsuite/ld-elf/orphan-region.d
-+++ binutils-2.22/ld/testsuite/ld-elf/orphan-region.d
-@@ -15,7 +15,9 @@
- Program Headers:
-   Type.*
-   LOAD[ \t]+0x[0-9a-f]+ 0x0*40000000 0x0*40000000 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x[0-9a-f]+
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-   Segment Sections...
-    00     .text .rodata .moredata *
-+   01 +
---- binutils-2.22/ld/testsuite/ld-i386/tlsbin.rd
-+++ binutils-2.22/ld/testsuite/ld-i386/tlsbin.rd
-@@ -44,6 +44,7 @@ Program Headers:
-  +LOAD.*
-  +DYNAMIC.*
-  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1000
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -53,6 +54,7 @@ Program Headers:
-  +03 +.tdata .dynamic .got .got.plt *
-  +04 +.dynamic *
-  +05 +.tdata .tbss *
-+ +06 +
- Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 9 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name
---- binutils-2.22/ld/testsuite/ld-i386/tlsbindesc.rd
-+++ binutils-2.22/ld/testsuite/ld-i386/tlsbindesc.rd
-@@ -42,6 +42,7 @@ Program Headers:
-  +LOAD.*
-  +DYNAMIC.*
-  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1000
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -51,6 +52,7 @@ Program Headers:
-  +03 +.tdata .dynamic .got .got.plt *
-  +04 +.dynamic *
-  +05 +.tdata .tbss *
-+ +06 +
- Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 9 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name
---- binutils-2.22/ld/testsuite/ld-i386/tlsdesc.rd
-+++ binutils-2.22/ld/testsuite/ld-i386/tlsdesc.rd
-@@ -39,6 +39,7 @@ Program Headers:
-  +LOAD.*
-  +DYNAMIC.*
-  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+80 R +0x1
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -46,6 +47,7 @@ Program Headers:
-  +01 +.tdata .dynamic .got .got.plt *
-  +02 +.dynamic *
-  +03 +.tdata .tbss *
-+ +04 +
- Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 20 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name
---- binutils-2.22/ld/testsuite/ld-i386/tlsdesc.sd
-+++ binutils-2.22/ld/testsuite/ld-i386/tlsdesc.sd
-@@ -14,7 +14,7 @@ Contents of section \.got:
-  [0-9a-f]+ 6c000000 b4ffffff 4c000000 68000000  .*
-  [0-9a-f]+ 50000000 70000000 00000000 bcffffff  .*
- Contents of section \.got\.plt:
-- [0-9a-f]+ b0150000 00000000 00000000 00000000  .*
-+ [0-9a-f]+ [a-f]0150000 00000000 00000000 00000000  .*
-  [0-9a-f]+ 20000000 00000000 60000000 00000000  .*
-  [0-9a-f]+ 00000000 00000000 00000000 00000000  .*
-  [0-9a-f]+ 40000000 +.*
---- binutils-2.22/ld/testsuite/ld-i386/tlsgdesc.rd
-+++ binutils-2.22/ld/testsuite/ld-i386/tlsgdesc.rd
-@@ -36,12 +36,14 @@ Program Headers:
-  +LOAD.*
-  +LOAD.*
-  +DYNAMIC.*
-+ +PAX_FLAGS.*
-  Section to Segment mapping:
-  +Segment Sections...
-  +00 +.hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text *
-  +01 +.dynamic .got .got.plt *
-  +02 +.dynamic *
-+ +03 +
- Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 8 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name
---- binutils-2.22/ld/testsuite/ld-i386/tlsnopic.rd
-+++ binutils-2.22/ld/testsuite/ld-i386/tlsnopic.rd
-@@ -37,6 +37,7 @@ Program Headers:
-  +LOAD.*
-  +DYNAMIC.*
-  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+ 0x0+24 R +0x1
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -44,6 +45,7 @@ Program Headers:
-  +01 +.dynamic .got .got.plt *
-  +02 +.dynamic *
-  +03 +.tbss *
-+ +04 +
- Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 20 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name
---- binutils-2.22/ld/testsuite/ld-i386/tlspic.rd
-+++ binutils-2.22/ld/testsuite/ld-i386/tlspic.rd
-@@ -40,6 +40,7 @@ Program Headers:
-  +LOAD.*
-  +DYNAMIC.*
-  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+80 R +0x1
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -47,6 +48,7 @@ Program Headers:
-  +01 +.tdata .dynamic .got .got.plt *
-  +02 +.dynamic *
-  +03 +.tdata .tbss *
-+ +04 +
- Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 26 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name
---- binutils-2.22/ld/testsuite/ld-ia64/merge1.d
-+++ binutils-2.22/ld/testsuite/ld-ia64/merge1.d
-@@ -4,7 +4,7 @@
- #objdump: -d
- #...
--0+1e0 <.text>:
-+[a-f0-9]+ <.text>:
- [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
- [     ]*[a-f0-9]+:    c0 c0 04 00 48 00                   addl r12=24,r1
- [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
---- binutils-2.22/ld/testsuite/ld-ia64/merge2.d
-+++ binutils-2.22/ld/testsuite/ld-ia64/merge2.d
-@@ -4,7 +4,7 @@
- #objdump: -d
- #...
--0+1e0 <.text>:
-+[a-f0-9]+ <.text>:
- [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
- [     ]*[a-f0-9]+:    c0 c0 04 00 48 00                   addl r12=24,r1
- [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
---- binutils-2.22/ld/testsuite/ld-ia64/merge3.d
-+++ binutils-2.22/ld/testsuite/ld-ia64/merge3.d
-@@ -4,7 +4,7 @@
- #objdump: -d
- #...
--0+210 <.text>:
-+[a-f0-9]+ <.text>:
- [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
- [     ]*[a-f0-9]+:    c0 40 05 00 48 00                   addl r12=40,r1
- [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
---- binutils-2.22/ld/testsuite/ld-ia64/merge4.d
-+++ binutils-2.22/ld/testsuite/ld-ia64/merge4.d
-@@ -4,7 +4,7 @@
- #objdump: -d
- #...
--0+240 <.text>:
-+[a-f0-9]+ <.text>:
- [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
- [     ]*[a-f0-9]+:    c0 40 05 00 48 00                   addl r12=40,r1
- [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
---- binutils-2.22/ld/testsuite/ld-ia64/merge5.d
-+++ binutils-2.22/ld/testsuite/ld-ia64/merge5.d
-@@ -4,7 +4,7 @@
- #objdump: -d
- #...
--0+270 <.text>:
-+[a-f0-9]+ <.text>:
- [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
- [     ]*[a-f0-9]+:    c0 40 05 00 48 00                   addl r12=40,r1
- [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
---- binutils-2.22/ld/testsuite/ld-ia64/tlsbin.rd
-+++ binutils-2.22/ld/testsuite/ld-ia64/tlsbin.rd
-@@ -36,13 +36,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
-- +PHDR +0x0+40 0x40+40 0x40+40 0x0+188 0x0+188 R E 0x8
-- +INTERP +0x0+1c8 0x40+1c8 0x40+1c8 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1
-+ +PHDR +0x0+40 0x40+40 0x40+40 (0x[0-9a-f]+) \1 R E 0x8
-+ +INTERP +0x0+([0-9a-f]+) (0x40+\1) \2 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1
- .*Requesting program interpreter.*
-  +LOAD +0x0+ 0x40+ 0x40+ 0x0+1[0-9a-f]+ 0x0+1[0-9a-f]+ R E 0x10000
-  +LOAD +0x0+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x0+0[0-9a-f]+ 0x0+0[0-9a-f]+ RW +0x10000
-  +DYNAMIC +0x0+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x0+150 0x0+150 RW +0x8
-  +TLS +0x0+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x0+60 0x0+a0 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  +IA_64_UNWIND .* R +0x8
- #...
---- binutils-2.22/ld/testsuite/ld-ia64/tlspic.rd
-+++ binutils-2.22/ld/testsuite/ld-ia64/tlspic.rd
-@@ -40,6 +40,7 @@ Program Headers:
-  +LOAD +0x0+1[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+0[0-9a-f]+ 0x0+0[0-9a-f]+ RW +0x10000
-  +DYNAMIC +0x0+1[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+140 0x0+140 RW +0x8
-  +TLS +0x0+1[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+60 0x0+80 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  +IA_64_UNWIND +0x0+1[0-9a-f]+ 0x0+1[0-9a-f]+ 0x0+1[0-9a-f]+ 0x0+18 0x0+18 R +0x8
- #...
---- binutils-2.22/ld/testsuite/ld-mips-elf/multi-got-no-shared.d
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/multi-got-no-shared.d
-@@ -8,9 +8,9 @@
- .*: +file format.*
- Disassembly of section \.text:
--004000b0 <[^>]*> 3c1c0043     lui     gp,0x43
--004000b4 <[^>]*> 279c9ff0     addiu   gp,gp,-24592
--004000b8 <[^>]*> afbc0008     sw      gp,8\(sp\)
-+004000d0 <[^>]*> 3c1c0043     lui     gp,0x43
-+004000d4 <[^>]*> 279c9ff0     addiu   gp,gp,-24592
-+004000d8 <[^>]*> afbc0008     sw      gp,8\(sp\)
- #...
- 00408d60 <[^>]*> 3c1c0043     lui     gp,0x43
- 00408d64 <[^>]*> 279c2c98     addiu   gp,gp,11416
---- binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-3a.sd
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-3a.sd
-@@ -1,7 +1,7 @@
- Elf file type is DYN \(Shared object file\)
- Entry point .*
--There are 5 program headers, starting at offset .*
-+There are [0-9] program headers, starting at offset .*
- Program Headers:
-  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
-@@ -9,6 +9,7 @@ Program Headers:
-  * LOAD * [^ ]+ * 0x0+00000 * 0x0+00000 [^ ]+ * [^ ]+ * R E * 0x.*
-  * LOAD * [^ ]+ * 0x0+10000 * 0x0+10000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * DYNAMIC * [^ ]+ * 0x0+00400 * 0x0+00400 .*
-+ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  * NULL * .*
-  *Section to Segment mapping:
-@@ -18,3 +19,4 @@ Program Headers:
-  *0*2 * \.data \.got *
-  *0*3 * \.dynamic *
-  *0*4 *
-+ *0*5 *
---- binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-3b.sd
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-3b.sd
-@@ -1,7 +1,7 @@
- Elf file type is EXEC \(Executable file\)
- Entry point 0x44000
--There are 8 program headers, starting at offset .*
-+There are [0-9] program headers, starting at offset .*
- Program Headers:
-  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
-@@ -13,6 +13,7 @@ Program Headers:
-  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
-+ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  * NULL * .*
-  *Section to Segment mapping:
-@@ -25,3 +26,4 @@ Program Headers:
-  *0*5 *\.got \.data *
-  *0*6 *\.dynamic *
-  *0*7 *
-+ *0*8 *
---- binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-4b.sd
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-4b.sd
-@@ -1,7 +1,7 @@
- Elf file type is EXEC \(Executable file\)
- Entry point 0x44000
--There are 8 program headers, starting at offset .*
-+There are [0-9] program headers, starting at offset .*
- Program Headers:
-  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
-@@ -13,6 +13,7 @@ Program Headers:
-  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
-+ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  * NULL * .*
-  *Section to Segment mapping:
-@@ -25,3 +26,4 @@ Program Headers:
-  *0*5 * \.got \.data \.bss *
-  *0*6 * \.dynamic *
-  *0*7 *
-+ *0*8 *
---- binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-5b.sd
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-5b.sd
-@@ -1,7 +1,7 @@
- Elf file type is EXEC \(Executable file\)
- Entry point 0x44000
--There are 8 program headers, starting at offset .*
-+There are [0-9] program headers, starting at offset .*
- Program Headers:
-  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
-@@ -13,6 +13,7 @@ Program Headers:
-  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
-+ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  * NULL * .*
-  *Section to Segment mapping:
-@@ -25,3 +26,4 @@ Program Headers:
-  *0*5 * \.got \.data \.bss *
-  *0*6 * \.dynamic *
-  *0*7 *
-+ *0*8 *
---- binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.sd
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.sd
-@@ -1,7 +1,7 @@
- Elf file type is EXEC \(Executable file\)
- Entry point 0x44000
--There are 8 program headers, starting at offset .*
-+There are [0-9] program headers, starting at offset .*
- Program Headers:
-  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
-@@ -13,6 +13,7 @@ Program Headers:
-  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
-+ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  * NULL * .*
-  *Section to Segment mapping:
-@@ -25,3 +26,4 @@ Program Headers:
-  *0*5 * \.got \.data \.bss *
-  *0*6 * \.dynamic *
-  *0*7 *
-+ *0*8 *
---- binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n64.sd
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n64.sd
-@@ -1,7 +1,7 @@
- Elf file type is EXEC \(Executable file\)
- Entry point 0x44000
--There are 7 program headers, starting at offset .*
-+There are [0-9] program headers, starting at offset .*
- Program Headers:
-  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
-@@ -12,6 +12,7 @@ Program Headers:
-  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
-+ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  * NULL * .*
-  *Section to Segment mapping:
-@@ -23,3 +24,4 @@ Program Headers:
-  *0*4 * \.got \.data \.bss *
-  *0*5 * \.dynamic *
-  *0*6 *
-+ *0*7 *
---- binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-o32.sd
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-o32.sd
-@@ -1,7 +1,7 @@
- Elf file type is EXEC \(Executable file\)
- Entry point 0x44000
--There are 8 program headers, starting at offset .*
-+There are [0-9] program headers, starting at offset .*
- Program Headers:
-  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
-@@ -13,6 +13,7 @@ Program Headers:
-  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
-  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
-+ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  * NULL * .*
-  *Section to Segment mapping:
-@@ -25,3 +26,4 @@ Program Headers:
-  *0*5 * \.got \.data \.bss *
-  *0*6 * \.dynamic *
-  *0*7 *
-+ *0*8 *
---- binutils-2.22/ld/testsuite/ld-mips-elf/rel32-n32.d
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/rel32-n32.d
-@@ -10,6 +10,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries:
- [0-9a-f ]+R_MIPS_REL32     
- Hex dump of section '.text':
--  0x000002e0 00000000 00000000 00000000 00000000 ................
--  0x000002f0 000002f0 00000000 00000000 00000000 ................
-   0x00000300 00000000 00000000 00000000 00000000 ................
-+  0x00000310 00000310 00000000 00000000 00000000 ................
-+  0x00000320 00000000 00000000 00000000 00000000 ................
---- binutils-2.22/ld/testsuite/ld-mips-elf/rel32-o32.d
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/rel32-o32.d
-@@ -10,6 +10,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries:
- [0-9a-f ]+R_MIPS_REL32     
- Hex dump of section '.text':
--  0x000002e0 00000000 00000000 00000000 00000000 ................
--  0x000002f0 000002f0 00000000 00000000 00000000 ................
-   0x00000300 00000000 00000000 00000000 00000000 ................
-+  0x00000310 00000310 00000000 00000000 00000000 ................
-+  0x00000320 00000000 00000000 00000000 00000000 ................
---- binutils-2.22/ld/testsuite/ld-mips-elf/rel64.d
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/rel64.d
-@@ -14,6 +14,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries:
-  +Type3: R_MIPS_NONE      
- Hex dump of section '.text':
--  0x00000450 00000000 00000000 00000000 00000000 ................
--  0x00000460 00000000 00000460 00000000 00000000 ................
--  0x00000470 00000000 00000000 00000000 00000000 ................
-+  0x00000490 00000000 00000000 00000000 00000000 ................
-+  0x000004a0 00000000 000004a0 00000000 00000000 ................
-+  0x000004b0 00000000 00000000 00000000 00000000 ................
---- binutils-2.22/ld/testsuite/ld-mips-elf/tlsbin-o32.d
-+++ binutils-2.22/ld/testsuite/ld-mips-elf/tlsbin-o32.d
-@@ -2,42 +2,42 @@
- Disassembly of section .text:
--004000d0 <__start>:
--  4000d0:     3c1c0fc0        lui     gp,0xfc0
--  4000d4:     279c7f30        addiu   gp,gp,32560
--  4000d8:     0399e021        addu    gp,gp,t9
--  4000dc:     27bdfff0        addiu   sp,sp,-16
--  4000e0:     afbe0008        sw      s8,8\(sp\)
--  4000e4:     03a0f021        move    s8,sp
--  4000e8:     afbc0000        sw      gp,0\(sp\)
--  4000ec:     8f998018        lw      t9,-32744\(gp\)
--  4000f0:     27848028        addiu   a0,gp,-32728
--  4000f4:     0320f809        jalr    t9
--  4000f8:     00000000        nop
--  4000fc:     8fdc0000        lw      gp,0\(s8\)
--  400100:     00000000        nop
--  400104:     8f998018        lw      t9,-32744\(gp\)
--  400108:     27848020        addiu   a0,gp,-32736
--  40010c:     0320f809        jalr    t9
--  400110:     00000000        nop
--  400114:     8fdc0000        lw      gp,0\(s8\)
--  400118:     00401021        move    v0,v0
--  40011c:     3c030000        lui     v1,0x0
--  400120:     24638000        addiu   v1,v1,-32768
--  400124:     00621821        addu    v1,v1,v0
--  400128:     7c02283b        rdhwr   v0,\$5
--  40012c:     8f83801c        lw      v1,-32740\(gp\)
--  400130:     00000000        nop
--  400134:     00621821        addu    v1,v1,v0
--  400138:     7c02283b        rdhwr   v0,\$5
--  40013c:     3c030000        lui     v1,0x0
--  400140:     24639004        addiu   v1,v1,-28668
--  400144:     00621821        addu    v1,v1,v0
--  400148:     03c0e821        move    sp,s8
--  40014c:     8fbe0008        lw      s8,8\(sp\)
--  400150:     03e00008        jr      ra
--  400154:     27bd0010        addiu   sp,sp,16
-+00400[0-9a-f]{3} <__start>:
-+  400[0-9a-f]{3}:     3c1c0fc0        lui     gp,0xfc0
-+  400[0-9a-f]{3}:     279c7f30        addiu   gp,gp,32560
-+  400[0-9a-f]{3}:     0399e021        addu    gp,gp,t9
-+  400[0-9a-f]{3}:     27bdfff0        addiu   sp,sp,-16
-+  400[0-9a-f]{3}:     afbe0008        sw      s8,8\(sp\)
-+  400[0-9a-f]{3}:     03a0f021        move    s8,sp
-+  400[0-9a-f]{3}:     afbc0000        sw      gp,0\(sp\)
-+  400[0-9a-f]{3}:     8f998018        lw      t9,-32744\(gp\)
-+  400[0-9a-f]{3}:     27848028        addiu   a0,gp,-32728
-+  400[0-9a-f]{3}:     0320f809        jalr    t9
-+  400[0-9a-f]{3}:     00000000        nop
-+  400[0-9a-f]{3}:     8fdc0000        lw      gp,0\(s8\)
-+  400[0-9a-f]{3}:     00000000        nop
-+  400[0-9a-f]{3}:     8f998018        lw      t9,-32744\(gp\)
-+  400[0-9a-f]{3}:     27848020        addiu   a0,gp,-32736
-+  400[0-9a-f]{3}:     0320f809        jalr    t9
-+  400[0-9a-f]{3}:     00000000        nop
-+  400[0-9a-f]{3}:     8fdc0000        lw      gp,0\(s8\)
-+  400[0-9a-f]{3}:     00401021        move    v0,v0
-+  400[0-9a-f]{3}:     3c030000        lui     v1,0x0
-+  400[0-9a-f]{3}:     24638000        addiu   v1,v1,-32768
-+  400[0-9a-f]{3}:     00621821        addu    v1,v1,v0
-+  400[0-9a-f]{3}:     7c02283b        rdhwr   v0,\$5
-+  400[0-9a-f]{3}:     8f83801c        lw      v1,-32740\(gp\)
-+  400[0-9a-f]{3}:     00000000        nop
-+  400[0-9a-f]{3}:     00621821        addu    v1,v1,v0
-+  400[0-9a-f]{3}:     7c02283b        rdhwr   v0,\$5
-+  400[0-9a-f]{3}:     3c030000        lui     v1,0x0
-+  400[0-9a-f]{3}:     24639004        addiu   v1,v1,-28668
-+  400[0-9a-f]{3}:     00621821        addu    v1,v1,v0
-+  400[0-9a-f]{3}:     03c0e821        move    sp,s8
-+  400[0-9a-f]{3}:     8fbe0008        lw      s8,8\(sp\)
-+  400[0-9a-f]{3}:     03e00008        jr      ra
-+  400[0-9a-f]{3}:     27bd0010        addiu   sp,sp,16
--00400158 <__tls_get_addr>:
--  400158:     03e00008        jr      ra
--  40015c:     00000000        nop
-+00400[0-9a-f]{3} <__tls_get_addr>:
-+  400[0-9a-f]{3}:     03e00008        jr      ra
-+  400[0-9a-f]{3}:     00000000        nop
---- binutils-2.22/ld/testsuite/ld-powerpc/tls.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tls.d
-@@ -9,45 +9,45 @@
- Disassembly of section \.text:
--0+100000e8 <_start>:
--    100000e8: 3c 6d 00 00     addis   r3,r13,0
--    100000ec: 60 00 00 00     nop
--    100000f0: 38 63 90 78     addi    r3,r3,-28552
--    100000f4: 3c 6d 00 00     addis   r3,r13,0
--    100000f8: 60 00 00 00     nop
--    100000fc: 38 63 10 00     addi    r3,r3,4096
--    10000100: 3c 6d 00 00     addis   r3,r13,0
--    10000104: 60 00 00 00     nop
--    10000108: 38 63 90 40     addi    r3,r3,-28608
--    1000010c: 3c 6d 00 00     addis   r3,r13,0
--    10000110: 60 00 00 00     nop
--    10000114: 38 63 10 00     addi    r3,r3,4096
--    10000118: 39 23 80 48     addi    r9,r3,-32696
--    1000011c: 3d 23 00 00     addis   r9,r3,0
--    10000120: 81 49 80 50     lwz     r10,-32688\(r9\)
--    10000124: e9 22 80 10     ld      r9,-32752\(r2\)
--    10000128: 7d 49 18 2a     ldx     r10,r9,r3
--    1000012c: 3d 2d 00 00     addis   r9,r13,0
--    10000130: a1 49 90 60     lhz     r10,-28576\(r9\)
--    10000134: 89 4d 90 68     lbz     r10,-28568\(r13\)
--    10000138: 3d 2d 00 00     addis   r9,r13,0
--    1000013c: 99 49 90 70     stb     r10,-28560\(r9\)
--    10000140: 3c 6d 00 00     addis   r3,r13,0
--    10000144: 60 00 00 00     nop
--    10000148: 38 63 90 00     addi    r3,r3,-28672
--    1000014c: 3c 6d 00 00     addis   r3,r13,0
--    10000150: 60 00 00 00     nop
--    10000154: 38 63 10 00     addi    r3,r3,4096
--    10000158: f9 43 80 08     std     r10,-32760\(r3\)
--    1000015c: 3d 23 00 00     addis   r9,r3,0
--    10000160: 91 49 80 10     stw     r10,-32752\(r9\)
--    10000164: e9 22 80 08     ld      r9,-32760\(r2\)
--    10000168: 7d 49 19 2a     stdx    r10,r9,r3
--    1000016c: 3d 2d 00 00     addis   r9,r13,0
--    10000170: b1 49 90 60     sth     r10,-28576\(r9\)
--    10000174: e9 4d 90 2a     lwa     r10,-28632\(r13\)
--    10000178: 3d 2d 00 00     addis   r9,r13,0
--    1000017c: a9 49 90 30     lha     r10,-28624\(r9\)
-+0+10000[0-9a-f]{3} <_start>:
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 78     addi    r3,r3,-28552
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 10 00     addi    r3,r3,4096
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 40     addi    r3,r3,-28608
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 10 00     addi    r3,r3,4096
-+    10000[0-9a-f]{3}: 39 23 80 48     addi    r9,r3,-32696
-+    10000[0-9a-f]{3}: 3d 23 00 00     addis   r9,r3,0
-+    10000[0-9a-f]{3}: 81 49 80 50     lwz     r10,-32688\(r9\)
-+    10000[0-9a-f]{3}: e9 22 80 10     ld      r9,-32752\(r2\)
-+    10000[0-9a-f]{3}: 7d 49 18 2a     ldx     r10,r9,r3
-+    10000[0-9a-f]{3}: 3d 2d 00 00     addis   r9,r13,0
-+    10000[0-9a-f]{3}: a1 49 90 60     lhz     r10,-28576\(r9\)
-+    10000[0-9a-f]{3}: 89 4d 90 68     lbz     r10,-28568\(r13\)
-+    10000[0-9a-f]{3}: 3d 2d 00 00     addis   r9,r13,0
-+    10000[0-9a-f]{3}: 99 49 90 70     stb     r10,-28560\(r9\)
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 00     addi    r3,r3,-28672
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 10 00     addi    r3,r3,4096
-+    10000[0-9a-f]{3}: f9 43 80 08     std     r10,-32760\(r3\)
-+    10000[0-9a-f]{3}: 3d 23 00 00     addis   r9,r3,0
-+    10000[0-9a-f]{3}: 91 49 80 10     stw     r10,-32752\(r9\)
-+    10000[0-9a-f]{3}: e9 22 80 08     ld      r9,-32760\(r2\)
-+    10000[0-9a-f]{3}: 7d 49 19 2a     stdx    r10,r9,r3
-+    10000[0-9a-f]{3}: 3d 2d 00 00     addis   r9,r13,0
-+    10000[0-9a-f]{3}: b1 49 90 60     sth     r10,-28576\(r9\)
-+    10000[0-9a-f]{3}: e9 4d 90 2a     lwa     r10,-28632\(r13\)
-+    10000[0-9a-f]{3}: 3d 2d 00 00     addis   r9,r13,0
-+    10000[0-9a-f]{3}: a9 49 90 30     lha     r10,-28624\(r9\)
--0+10000180 <\.__tls_get_addr>:
--    10000180: 4e 80 00 20     blr
-+0+10000[0-9a-f]{3} <\.__tls_get_addr>:
-+    10000[0-9a-f]{3}: 4e 80 00 20     blr
---- binutils-2.22/ld/testsuite/ld-powerpc/tls.g
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tls.g
-@@ -8,5 +8,5 @@
- .*: +file format elf64-powerpc
- Contents of section \.got:
-- 100101e0 00000000 100181e0 ffffffff ffff8018  .*
-- 100101f0 ffffffff ffff8058                    .*
-+ 10010([0-9a-f]{3}) 00000000 10018\1 ffffffff ffff8018  .*
-+ 10010[0-9a-f]{3} ffffffff ffff8058                    .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tls32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tls32.d
-@@ -9,42 +9,42 @@
- Disassembly of section \.text:
--0+1800094 <_start>:
-- 1800094:     3c 62 00 00     addis   r3,r2,0
-- 1800098:     38 63 90 3c     addi    r3,r3,-28612
-- 180009c:     3c 62 00 00     addis   r3,r2,0
-- 18000a0:     38 63 10 00     addi    r3,r3,4096
-- 18000a4:     3c 62 00 00     addis   r3,r2,0
-- 18000a8:     38 63 90 20     addi    r3,r3,-28640
-- 18000ac:     3c 62 00 00     addis   r3,r2,0
-- 18000b0:     38 63 10 00     addi    r3,r3,4096
-- 18000b4:     39 23 80 24     addi    r9,r3,-32732
-- 18000b8:     3d 23 00 00     addis   r9,r3,0
-- 18000bc:     81 49 80 28     lwz     r10,-32728\(r9\)
-- 18000c0:     3d 22 00 00     addis   r9,r2,0
-- 18000c4:     a1 49 90 30     lhz     r10,-28624\(r9\)
-- 18000c8:     89 42 90 34     lbz     r10,-28620\(r2\)
-- 18000cc:     3d 22 00 00     addis   r9,r2,0
-- 18000d0:     99 49 90 38     stb     r10,-28616\(r9\)
-- 18000d4:     3c 62 00 00     addis   r3,r2,0
-- 18000d8:     38 63 90 00     addi    r3,r3,-28672
-- 18000dc:     3c 62 00 00     addis   r3,r2,0
-- 18000e0:     38 63 10 00     addi    r3,r3,4096
-- 18000e4:     91 43 80 04     stw     r10,-32764\(r3\)
-- 18000e8:     3d 23 00 00     addis   r9,r3,0
-- 18000ec:     91 49 80 08     stw     r10,-32760\(r9\)
-- 18000f0:     3d 22 00 00     addis   r9,r2,0
-- 18000f4:     b1 49 90 30     sth     r10,-28624\(r9\)
-- 18000f8:     a1 42 90 14     lhz     r10,-28652\(r2\)
-- 18000fc:     3d 22 00 00     addis   r9,r2,0
-- 1800100:     a9 49 90 18     lha     r10,-28648\(r9\)
-+0+1800[0-9a-f]{3} <_start>:
-+ 1800[0-9a-f]{3}:     3c 62 00 00     addis   r3,r2,0
-+ 1800[0-9a-f]{3}:     38 63 90 3c     addi    r3,r3,-28612
-+ 1800[0-9a-f]{3}:     3c 62 00 00     addis   r3,r2,0
-+ 1800[0-9a-f]{3}:     38 63 10 00     addi    r3,r3,4096
-+ 1800[0-9a-f]{3}:     3c 62 00 00     addis   r3,r2,0
-+ 1800[0-9a-f]{3}:     38 63 90 20     addi    r3,r3,-28640
-+ 1800[0-9a-f]{3}:     3c 62 00 00     addis   r3,r2,0
-+ 1800[0-9a-f]{3}:     38 63 10 00     addi    r3,r3,4096
-+ 1800[0-9a-f]{3}:     39 23 80 24     addi    r9,r3,-32732
-+ 1800[0-9a-f]{3}:     3d 23 00 00     addis   r9,r3,0
-+ 1800[0-9a-f]{3}:     81 49 80 28     lwz     r10,-32728\(r9\)
-+ 1800[0-9a-f]{3}:     3d 22 00 00     addis   r9,r2,0
-+ 1800[0-9a-f]{3}:     a1 49 90 30     lhz     r10,-28624\(r9\)
-+ 1800[0-9a-f]{3}:     89 42 90 34     lbz     r10,-28620\(r2\)
-+ 1800[0-9a-f]{3}:     3d 22 00 00     addis   r9,r2,0
-+ 1800[0-9a-f]{3}:     99 49 90 38     stb     r10,-28616\(r9\)
-+ 1800[0-9a-f]{3}:     3c 62 00 00     addis   r3,r2,0
-+ 1800[0-9a-f]{3}:     38 63 90 00     addi    r3,r3,-28672
-+ 1800[0-9a-f]{3}:     3c 62 00 00     addis   r3,r2,0
-+ 1800[0-9a-f]{3}:     38 63 10 00     addi    r3,r3,4096
-+ 1800[0-9a-f]{3}:     91 43 80 04     stw     r10,-32764\(r3\)
-+ 1800[0-9a-f]{3}:     3d 23 00 00     addis   r9,r3,0
-+ 1800[0-9a-f]{3}:     91 49 80 08     stw     r10,-32760\(r9\)
-+ 1800[0-9a-f]{3}:     3d 22 00 00     addis   r9,r2,0
-+ 1800[0-9a-f]{3}:     b1 49 90 30     sth     r10,-28624\(r9\)
-+ 1800[0-9a-f]{3}:     a1 42 90 14     lhz     r10,-28652\(r2\)
-+ 1800[0-9a-f]{3}:     3d 22 00 00     addis   r9,r2,0
-+ 1800[0-9a-f]{3}:     a9 49 90 18     lha     r10,-28648\(r9\)
--0+1800104 <__tls_get_addr>:
-- 1800104:     4e 80 00 20     blr
-+0+1800[0-9a-f]{3} <__tls_get_addr>:
-+ 1800[0-9a-f]{3}:     4e 80 00 20     blr
- Disassembly of section \.got:
--0+1810128 <_GLOBAL_OFFSET_TABLE_-0x4>:
-- 1810128:     4e 80 00 21     blrl
-+0+1810[0-9a-f]{3} <_GLOBAL_OFFSET_TABLE_-0x4>:
-+ 1810[0-9a-f]{3}:     4e 80 00 21     blrl
--0+181012c <_GLOBAL_OFFSET_TABLE_>:
-+0+1810[0-9a-f]{3} <_GLOBAL_OFFSET_TABLE_>:
-       \.\.\.
---- binutils-2.22/ld/testsuite/ld-powerpc/tls32.g
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tls32.g
-@@ -8,4 +8,4 @@
- .*: +file format elf32-powerpc
- Contents of section \.got:
-- 1810128 4e800021 00000000 00000000 00000000  .*
-+ 18101[0-9a-f]{2} 4e800021 00000000 00000000 00000000  .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tls32.t
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tls32.t
-@@ -8,5 +8,5 @@
- .*: +file format elf32-powerpc
- Contents of section \.tdata:
-- 1810108 12345678 23456789 3456789a 456789ab  .*
-- 1810118 56789abc 6789abcd 789abcde 00c0ffee  .*
-+ 18101[0-9a-f]{2} 12345678 23456789 3456789a 456789ab  .*
-+ 18101[0-9a-f]{2} 56789abc 6789abcd 789abcde 00c0ffee  .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsexe32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsexe32.d
-@@ -44,4 +44,4 @@ Disassembly of section \.got:
- .*:   4e 80 00 21     blrl
- .* <_GLOBAL_OFFSET_TABLE_>:
--.*:   01 81 02 b8 00 00 00 00 00 00 00 00  .*
-+.*:   01 81 02 [bd]8 00 00 00 00 00 00 00 00  .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsexe32.g
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsexe32.g
-@@ -8,4 +8,4 @@
- Contents of section \.got:
- .* 00000000 00000000 00000000 4e800021  .*
--.* 018102b8 00000000 00000000           .*
-+.* 018102[bd]8 00000000 00000000           .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsexe32.r
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsexe32.r
-@@ -33,13 +33,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz +Flg Align
-- +PHDR +0x000034 0x01800034 0x01800034 0x000c0 0x000c0 R E 0x4
-- +INTERP +0x0000f4 0x018000f4 0x018000f4 0x00011 0x00011 R +0x1
-+ +PHDR +0x000034 0x01800034 0x01800034 (0x000[0-9a-f]{2}) \1 R E 0x4
-+ +INTERP +0x000([0-9a-f]{3}) 0x01800\1 0x01800\1 0x00011 0x00011 R +0x1
-  +\[Requesting program interpreter: .*\]
-  +LOAD .* R E 0x10000
-  +LOAD .* RWE 0x10000
-  +DYNAMIC .* RW +0x4
-  +TLS .* 0x0001c 0x00038 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections\.\.\.
-@@ -49,6 +50,7 @@ Program Headers:
-  +03 +\.tdata \.dynamic \.got \.plt 
-  +04 +\.dynamic 
-  +05 +\.tdata \.tbss 
-+ +06 +
- Relocation section '\.rela\.dyn' at offset .* contains 2 entries:
-  Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsmark.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsmark.d
-@@ -9,29 +9,29 @@
- Disassembly of section \.text:
--0+100000e8 <_start>:
--    100000e8: 48 00 00 18     b       10000100 <_start\+0x18>
--    100000ec: 60 00 00 00     nop
--    100000f0: 38 63 90 00     addi    r3,r3,-28672
--    100000f4: e8 83 00 00     ld      r4,0\(r3\)
--    100000f8: 3c 6d 00 00     addis   r3,r13,0
--    100000fc: 48 00 00 0c     b       10000108 <_start\+0x20>
--    10000100: 3c 6d 00 00     addis   r3,r13,0
--    10000104: 4b ff ff e8     b       100000ec <_start\+0x4>
--    10000108: 60 00 00 00     nop
--    1000010c: 38 63 10 00     addi    r3,r3,4096
--    10000110: e8 83 80 00     ld      r4,-32768\(r3\)
--    10000114: 3c 6d 00 00     addis   r3,r13,0
--    10000118: 48 00 00 0c     b       10000124 <_start\+0x3c>
--    1000011c: 3c 6d 00 00     addis   r3,r13,0
--    10000120: 48 00 00 14     b       10000134 <_start\+0x4c>
--    10000124: 60 00 00 00     nop
--    10000128: 38 63 90 04     addi    r3,r3,-28668
--    1000012c: e8 a3 00 00     ld      r5,0\(r3\)
--    10000130: 4b ff ff ec     b       1000011c <_start\+0x34>
--    10000134: 60 00 00 00     nop
--    10000138: 38 63 10 00     addi    r3,r3,4096
--    1000013c: e8 a3 80 04     ld      r5,-32764\(r3\)
-+0+10000[0-9a-f]{3} <_start>:
-+    10000[0-9a-f]{3}: 48 00 00 18     b       10000[0-9a-f]{3} <_start\+0x18>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 00     addi    r3,r3,-28672
-+    10000[0-9a-f]{3}: e8 83 00 00     ld      r4,0\(r3\)
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       10000[0-9a-f]{3} <_start\+0x20>
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 4b ff ff e8     b       10000[0-9a-f]{3} <_start\+0x4>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 10 00     addi    r3,r3,4096
-+    10000[0-9a-f]{3}: e8 83 80 00     ld      r4,-32768\(r3\)
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       10000[0-9a-f]{3} <_start\+0x3c>
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 48 00 00 14     b       10000[0-9a-f]{3} <_start\+0x4c>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 04     addi    r3,r3,-28668
-+    10000[0-9a-f]{3}: e8 a3 00 00     ld      r5,0\(r3\)
-+    10000[0-9a-f]{3}: 4b ff ff ec     b       10000[0-9a-f]{3} <_start\+0x34>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 10 00     addi    r3,r3,4096
-+    10000[0-9a-f]{3}: e8 a3 80 04     ld      r5,-32764\(r3\)
--0+10000140 <\.__tls_get_addr>:
--    10000140: 4e 80 00 20     blr
-+0+10000[0-9a-f]{3} <\.__tls_get_addr>:
-+    10000[0-9a-f]{3}: 4e 80 00 20     blr
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsmark32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsmark32.d
-@@ -9,17 +9,17 @@
- Disassembly of section \.text:
--0+1800094 <_start>:
-- 1800094:     48 00 00 14     b       18000a8 <_start\+0x14>
-- 1800098:     38 63 90 00     addi    r3,r3,-28672
-- 180009c:     80 83 00 00     lwz     r4,0\(r3\)
-- 18000a0:     3c 62 00 00     addis   r3,r2,0
-- 18000a4:     48 00 00 0c     b       18000b0 <_start\+0x1c>
-- 18000a8:     3c 62 00 00     addis   r3,r2,0
-- 18000ac:     4b ff ff ec     b       1800098 <_start\+0x4>
-- 18000b0:     38 63 10 00     addi    r3,r3,4096
-- 18000b4:     80 83 80 00     lwz     r4,-32768\(r3\)
-+0+18000[0-9a-f]{2} <_start>:
-+ 18000[0-9a-f]{2}:    48 00 00 14     b       18000[0-9a-f]{2} <_start\+0x14>
-+ 18000[0-9a-f]{2}:    38 63 90 00     addi    r3,r3,-28672
-+ 18000[0-9a-f]{2}:    80 83 00 00     lwz     r4,0\(r3\)
-+ 18000[0-9a-f]{2}:    3c 62 00 00     addis   r3,r2,0
-+ 18000[0-9a-f]{2}:    48 00 00 0c     b       18000[0-9a-f]{2} <_start\+0x1c>
-+ 18000[0-9a-f]{2}:    3c 62 00 00     addis   r3,r2,0
-+ 18000[0-9a-f]{2}:    4b ff ff ec     b       18000[0-9a-f]{2} <_start\+0x4>
-+ 18000[0-9a-f]{2}:    38 63 10 00     addi    r3,r3,4096
-+ 18000[0-9a-f]{2}:    80 83 80 00     lwz     r4,-32768\(r3\)
--0+18000b8 <__tls_get_addr>:
-- 18000b8:     4e 80 00 20     blr
--#pass
-\ No newline at end of file
-+0+18000[0-9a-f]{2} <__tls_get_addr>:
-+ 18000[0-9a-f]{2}:    4e 80 00 20     blr
-+#pass
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt1.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt1.d
-@@ -9,17 +9,17 @@
- Disassembly of section \.text:
--0+100000e8 <\.__tls_get_addr>:
--    100000e8: 4e 80 00 20     blr
-+0+10000[0-9a-f]{3} <\.__tls_get_addr>:
-+    10000[0-9a-f]{3}: 4e 80 00 20     blr
- Disassembly of section \.no_opt1:
--0+100000ec <\.no_opt1>:
--    100000ec: 38 62 80 08     addi    r3,r2,-32760
--    100000f0: 2c 24 00 00     cmpdi   r4,0
--    100000f4: 41 82 00 10     beq-    .*
--    100000f8: 4b ff ff f1     bl      100000e8 <\.__tls_get_addr>
--    100000fc: 60 00 00 00     nop
--    10000100: 48 00 00 0c     b       .*
--    10000104: 4b ff ff e5     bl      100000e8 <\.__tls_get_addr>
--    10000108: 60 00 00 00     nop
-+0+10000[0-9a-f]{3} <\.no_opt1>:
-+    10000[0-9a-f]{3}: 38 62 80 08     addi    r3,r2,-32760
-+    10000[0-9a-f]{3}: 2c 24 00 00     cmpdi   r4,0
-+    10000[0-9a-f]{3}: 41 82 00 10     beq-    .*
-+    10000[0-9a-f]{3}: 4b ff ff f1     bl      10000[0-9a-f]{3} <\.__tls_get_addr>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       .*
-+    10000[0-9a-f]{3}: 4b ff ff e5     bl      10000[0-9a-f]{3} <\.__tls_get_addr>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt1_32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt1_32.d
-@@ -9,16 +9,16 @@
- Disassembly of section \.text:
--0+1800094 <__tls_get_addr>:
-- 1800094:     4e 80 00 20     blr
-+0+18000[0-9a-f]{2} <__tls_get_addr>:
-+ 18000[0-9a-f]{2}:    4e 80 00 20     blr
- Disassembly of section \.no_opt1:
--0+1800098 <\.no_opt1>:
-- 1800098:     38 6d ff f4     addi    r3,r13,-12
-- 180009c:     2c 04 00 00     cmpwi   r4,0
-- 18000a0:     41 82 00 0c     beq-    .*
-- 18000a4:     4b ff ff f1     bl      1800094 <__tls_get_addr>
-- 18000a8:     48 00 00 08     b       .*
-- 18000ac:     4b ff ff e9     bl      1800094 <__tls_get_addr>
-+0+18000[0-9a-f]{2} <\.no_opt1>:
-+ 18000[0-9a-f]{2}:    38 6d ff f4     addi    r3,r13,-12
-+ 18000[0-9a-f]{2}:    2c 04 00 00     cmpwi   r4,0
-+ 18000[0-9a-f]{2}:    41 82 00 0c     beq-    .*
-+ 18000[0-9a-f]{2}:    4b ff ff f1     bl      18000[0-9a-f]{2} <__tls_get_addr>
-+ 18000[0-9a-f]{2}:    48 00 00 08     b       .*
-+ 18000[0-9a-f]{2}:    4b ff ff e9     bl      18000[0-9a-f]{2} <__tls_get_addr>
- #pass
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt2.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt2.d
-@@ -9,15 +9,15 @@
- Disassembly of section \.text:
--0+100000e8 <\.__tls_get_addr>:
--    100000e8: 4e 80 00 20     blr
-+0+10000[0-9a-f]{3} <\.__tls_get_addr>:
-+    10000[0-9a-f]{3}: 4e 80 00 20     blr
- Disassembly of section \.no_opt2:
--0+100000ec <\.no_opt2>:
--    100000ec: 38 62 80 08     addi    r3,r2,-32760
--    100000f0: 2c 24 00 00     cmpdi   r4,0
--    100000f4: 41 82 00 08     beq-    .*
--    100000f8: 38 62 80 08     addi    r3,r2,-32760
--    100000fc: 4b ff ff ed     bl      100000e8 <\.__tls_get_addr>
--    10000100: 60 00 00 00     nop
-+0+10000[0-9a-f]{3} <\.no_opt2>:
-+    10000[0-9a-f]{3}: 38 62 80 08     addi    r3,r2,-32760
-+    10000[0-9a-f]{3}: 2c 24 00 00     cmpdi   r4,0
-+    10000[0-9a-f]{3}: 41 82 00 08     beq-    .*
-+    10000[0-9a-f]{3}: 38 62 80 08     addi    r3,r2,-32760
-+    10000[0-9a-f]{3}: 4b ff ff ed     bl      10000[0-9a-f]{3} <\.__tls_get_addr>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt2_32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt2_32.d
-@@ -9,15 +9,15 @@
- Disassembly of section \.text:
--0+1800094 <__tls_get_addr>:
-- 1800094:     4e 80 00 20     blr
-+0+18000[0-9a-f]{2} <__tls_get_addr>:
-+ 18000[0-9a-f]{2}:    4e 80 00 20     blr
- Disassembly of section \.no_opt2:
--0+1800098 <\.no_opt2>:
-- 1800098:     38 6d ff f4     addi    r3,r13,-12
-- 180009c:     2c 04 00 00     cmpwi   r4,0
-- 18000a0:     41 82 00 08     beq-    .*
-- 18000a4:     38 6d ff f4     addi    r3,r13,-12
-- 18000a8:     4b ff ff ed     bl      1800094 <__tls_get_addr>
-+0+18000[0-9a-f]{2} <\.no_opt2>:
-+ 18000[0-9a-f]{2}:    38 6d ff f4     addi    r3,r13,-12
-+ 18000[0-9a-f]{2}:    2c 04 00 00     cmpwi   r4,0
-+ 18000[0-9a-f]{2}:    41 82 00 08     beq-    .*
-+ 18000[0-9a-f]{2}:    38 6d ff f4     addi    r3,r13,-12
-+ 18000[0-9a-f]{2}:    4b ff ff ed     bl      18000[0-9a-f]{2} <__tls_get_addr>
- #pass
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt3.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt3.d
-@@ -9,18 +9,18 @@
- Disassembly of section \.text:
--00000000100000e8 <\.__tls_get_addr>:
--    100000e8: 4e 80 00 20     blr
-+0000000010000[0-9a-f]{3} <\.__tls_get_addr>:
-+    10000[0-9a-f]{3}: 4e 80 00 20     blr
- Disassembly of section \.no_opt3:
--00000000100000ec <\.no_opt3>:
--    100000ec: 38 62 80 08     addi    r3,r2,-32760
--    100000f0: 48 00 00 0c     b       .*
--    100000f4: 38 62 80 18     addi    r3,r2,-32744
--    100000f8: 48 00 00 10     b       .*
--    100000fc: 4b ff ff ed     bl      100000e8 <\.__tls_get_addr>
--    10000100: 60 00 00 00     nop
--    10000104: 48 00 00 0c     b       .*
--    10000108: 4b ff ff e1     bl      100000e8 <\.__tls_get_addr>
--    1000010c: 60 00 00 00     nop
-+0000000010000[0-9a-f]{3} <\.no_opt3>:
-+    10000[0-9a-f]{3}: 38 62 80 08     addi    r3,r2,-32760
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       .*
-+    10000[0-9a-f]{3}: 38 62 80 18     addi    r3,r2,-32744
-+    10000[0-9a-f]{3}: 48 00 00 10     b       .*
-+    10000[0-9a-f]{3}: 4b ff ff ed     bl      10000[0-9a-f]{3} <\.__tls_get_addr>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       .*
-+    10000[0-9a-f]{3}: 4b ff ff e1     bl      10000[0-9a-f]{3} <\.__tls_get_addr>
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt3_32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt3_32.d
-@@ -9,17 +9,17 @@
- Disassembly of section \.text:
--0+1800094 <__tls_get_addr>:
-- 1800094:     4e 80 00 20     blr
-+0+18000[0-9a-f]{2} <__tls_get_addr>:
-+ 18000[0-9a-f]{2}:    4e 80 00 20     blr
- Disassembly of section \.no_opt3:
--0+1800098 <\.no_opt3>:
-- 1800098:     38 6d ff ec     addi    r3,r13,-20
-- 180009c:     48 00 00 0c     b       .*
-- 18000a0:     38 6d ff f4     addi    r3,r13,-12
-- 18000a4:     48 00 00 0c     b       .*
-- 18000a8:     4b ff ff ed     bl      1800094 <__tls_get_addr>
-- 18000ac:     48 00 00 08     b       .*
-- 18000b0:     4b ff ff e5     bl      1800094 <__tls_get_addr>
-+0+18000[0-9a-f]{2} <\.no_opt3>:
-+ 18000[0-9a-f]{2}:    38 6d ff ec     addi    r3,r13,-20
-+ 18000[0-9a-f]{2}:    48 00 00 0c     b       .*
-+ 18000[0-9a-f]{2}:    38 6d ff f4     addi    r3,r13,-12
-+ 18000[0-9a-f]{2}:    48 00 00 0c     b       .*
-+ 18000[0-9a-f]{2}:    4b ff ff ed     bl      18000[0-9a-f]{2} <__tls_get_addr>
-+ 18000[0-9a-f]{2}:    48 00 00 08     b       .*
-+ 18000[0-9a-f]{2}:    4b ff ff e5     bl      18000[0-9a-f]{2} <__tls_get_addr>
- #pass
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt4.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt4.d
-@@ -9,40 +9,40 @@
- Disassembly of section \.text:
--0+100000e8 <\.__tls_get_addr>:
--    100000e8: 4e 80 00 20     blr
-+0+10000[0-9a-f]{3} <\.__tls_get_addr>:
-+    10000[0-9a-f]{3}: 4e 80 00 20     blr
- Disassembly of section \.opt1:
--0+100000ec <\.opt1>:
--    100000ec: 3c 6d 00 00     addis   r3,r13,0
--    100000f0: 2c 24 00 00     cmpdi   r4,0
--    100000f4: 41 82 00 10     beq-    .*
--    100000f8: 60 00 00 00     nop
--    100000fc: 38 63 90 10     addi    r3,r3,-28656
--    10000100: 48 00 00 0c     b       .*
--    10000104: 60 00 00 00     nop
--    10000108: 38 63 90 10     addi    r3,r3,-28656
-+0+10000[0-9a-f]{3} <\.opt1>:
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 2c 24 00 00     cmpdi   r4,0
-+    10000[0-9a-f]{3}: 41 82 00 10     beq-    .*
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 10     addi    r3,r3,-28656
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       .*
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 10     addi    r3,r3,-28656
- Disassembly of section \.opt2:
--0+1000010c <\.opt2>:
--    1000010c: 3c 6d 00 00     addis   r3,r13,0
--    10000110: 2c 24 00 00     cmpdi   r4,0
--    10000114: 41 82 00 08     beq-    .*
--    10000118: 3c 6d 00 00     addis   r3,r13,0
--    1000011c: 60 00 00 00     nop
--    10000120: 38 63 90 10     addi    r3,r3,-28656
-+0+10000[0-9a-f]{3} <\.opt2>:
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 2c 24 00 00     cmpdi   r4,0
-+    10000[0-9a-f]{3}: 41 82 00 08     beq-    .*
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 10     addi    r3,r3,-28656
- Disassembly of section \.opt3:
--0+10000124 <\.opt3>:
--    10000124: 3c 6d 00 00     addis   r3,r13,0
--    10000128: 48 00 00 0c     b       .*
--    1000012c: 3c 6d 00 00     addis   r3,r13,0
--    10000130: 48 00 00 10     b       .*
--    10000134: 60 00 00 00     nop
--    10000138: 38 63 90 10     addi    r3,r3,-28656
--    1000013c: 48 00 00 0c     b       .*
--    10000140: 60 00 00 00     nop
--    10000144: 38 63 90 08     addi    r3,r3,-28664
-+0+10000[0-9a-f]{3} <\.opt3>:
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       .*
-+    10000[0-9a-f]{3}: 3c 6d 00 00     addis   r3,r13,0
-+    10000[0-9a-f]{3}: 48 00 00 10     b       .*
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 10     addi    r3,r3,-28656
-+    10000[0-9a-f]{3}: 48 00 00 0c     b       .*
-+    10000[0-9a-f]{3}: 60 00 00 00     nop
-+    10000[0-9a-f]{3}: 38 63 90 08     addi    r3,r3,-28664
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsopt4_32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsopt4_32.d
-@@ -9,36 +9,36 @@
- Disassembly of section \.text:
--0+1800094 <__tls_get_addr>:
-- 1800094:     4e 80 00 20     blr
-+0+18000[0-9a-f]{2} <__tls_get_addr>:
-+ 18000[0-9a-f]{2}:    4e 80 00 20     blr
- Disassembly of section \.opt1:
--0+1800098 <\.opt1>:
-- 1800098:     3c 62 00 00     addis   r3,r2,0
-- 180009c:     2c 04 00 00     cmpwi   r4,0
-- 18000a0:     41 82 00 0c     beq-    .*
-- 18000a4:     38 63 90 10     addi    r3,r3,-28656
-- 18000a8:     48 00 00 08     b       .*
-- 18000ac:     38 63 90 10     addi    r3,r3,-28656
-+0+18000[0-9a-f]{2} <\.opt1>:
-+ 18000[0-9a-f]{2}:    3c 62 00 00     addis   r3,r2,0
-+ 18000[0-9a-f]{2}:    2c 04 00 00     cmpwi   r4,0
-+ 18000[0-9a-f]{2}:    41 82 00 0c     beq-    .*
-+ 18000[0-9a-f]{2}:    38 63 90 10     addi    r3,r3,-28656
-+ 18000[0-9a-f]{2}:    48 00 00 08     b       .*
-+ 18000[0-9a-f]{2}:    38 63 90 10     addi    r3,r3,-28656
- Disassembly of section \.opt2:
--0+18000b0 <\.opt2>:
-- 18000b0:     3c 62 00 00     addis   r3,r2,0
-- 18000b4:     2c 04 00 00     cmpwi   r4,0
-- 18000b8:     41 82 00 08     beq-    .*
-- 18000bc:     3c 62 00 00     addis   r3,r2,0
-- 18000c0:     38 63 90 10     addi    r3,r3,-28656
-+0+18000[0-9a-f]{2} <\.opt2>:
-+ 18000[0-9a-f]{2}:    3c 62 00 00     addis   r3,r2,0
-+ 18000[0-9a-f]{2}:    2c 04 00 00     cmpwi   r4,0
-+ 18000[0-9a-f]{2}:    41 82 00 08     beq-    .*
-+ 18000[0-9a-f]{2}:    3c 62 00 00     addis   r3,r2,0
-+ 18000[0-9a-f]{2}:    38 63 90 10     addi    r3,r3,-28656
- Disassembly of section \.opt3:
--0+18000c4 <\.opt3>:
-- 18000c4:     3c 62 00 00     addis   r3,r2,0
-- 18000c8:     48 00 00 0c     b       .*
-- 18000cc:     3c 62 00 00     addis   r3,r2,0
-- 18000d0:     48 00 00 0c     b       .*
-- 18000d4:     38 63 90 10     addi    r3,r3,-28656
-- 18000d8:     48 00 00 08     b       .*
-- 18000dc:     38 63 90 08     addi    r3,r3,-28664
-+0+18000[0-9a-f]{2} <\.opt3>:
-+ 18000[0-9a-f]{2}:    3c 62 00 00     addis   r3,r2,0
-+ 18000[0-9a-f]{2}:    48 00 00 0c     b       .*
-+ 18000[0-9a-f]{2}:    3c 62 00 00     addis   r3,r2,0
-+ 18000[0-9a-f]{2}:    48 00 00 0c     b       .*
-+ 18000[0-9a-f]{2}:    38 63 90 10     addi    r3,r3,-28656
-+ 18000[0-9a-f]{2}:    48 00 00 08     b       .*
-+ 18000[0-9a-f]{2}:    38 63 90 08     addi    r3,r3,-28664
- #pass
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsso32.d
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsso32.d
-@@ -42,5 +42,5 @@ Disassembly of section \.got:
- .* <\.got>:
-       \.\.\.
- .*:   4e 80 00 21     blrl
--.*:   00 01 03 ec     .*
-+.*:   00 01 [0-9a-f]{2} [0-9a-f]{2}   .*
-       \.\.\.
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsso32.g
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsso32.g
-@@ -9,5 +9,5 @@
- Contents of section \.got:
- .* 00000000 00000000 00000000 00000000  .*
- .* 00000000 00000000 00000000 00000000  .*
--.* 00000000 4e800021 000103ec 00000000  .*
-+.* 00000000 4e800021 00010[0-9a-f]{3} 00000000  .*
- .* 00000000                             .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tlsso32.r
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlsso32.r
-@@ -35,6 +35,7 @@ Program Headers:
-  +LOAD .* RWE 0x10000
-  +DYNAMIC .* RW +0x4
-  +TLS .* 0x0+1c 0x0+38 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections\.\.\.
-@@ -42,6 +43,7 @@ Program Headers:
-  +01 +\.tdata \.dynamic \.got \.plt 
-  +02 +\.dynamic 
-  +03 +\.tdata \.tbss 
-+ +04 +
- Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 18 entries:
-  Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend
-@@ -52,9 +54,9 @@ Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 18 entries:
- [0-9a-f ]+R_PPC_TPREL16 +0+30 +le0 \+ 0
- [0-9a-f ]+R_PPC_TPREL16_HA +0+34 +le1 \+ 0
- [0-9a-f ]+R_PPC_TPREL16_LO +0+34 +le1 \+ 0
--[0-9a-f ]+R_PPC_TPREL16 +0+103d0 +\.tdata \+ 103e4
--[0-9a-f ]+R_PPC_TPREL16_HA +0+103d0 +\.tdata \+ 103e8
--[0-9a-f ]+R_PPC_TPREL16_LO +0+103d0 +\.tdata \+ 103e8
-+[0-9a-f ]+R_PPC_TPREL16 +0+103[df]0 +\.tdata \+ 10[0-9a-f]{3}
-+[0-9a-f ]+R_PPC_TPREL16_HA +0+103[df]0 +\.tdata \+ 10[0-9a-f]{3}
-+[0-9a-f ]+R_PPC_TPREL16_LO +0+103[df]0 +\.tdata \+ 10[0-9a-f]{3}
- [0-9a-f ]+R_PPC_DTPMOD32 +0+
- [0-9a-f ]+R_PPC_DTPREL32 +0+
- [0-9a-f ]+R_PPC_DTPMOD32 +0+
---- binutils-2.22/ld/testsuite/ld-powerpc/tlstoc.g
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlstoc.g
-@@ -8,8 +8,8 @@
- .*: +file format elf64-powerpc
- Contents of section \.got:
-- 100101a0 00000000 00000001 00000000 00000000  .*
-- 100101b0 00000000 00000001 00000000 00000000  .*
-- 100101c0 00000000 00000001 00000000 00000000  .*
-- 100101d0 00000000 00000001 00000000 00000000  .*
-- 100101e0 ffffffff ffff8060 00000000 00000000  .*
-+ 10010[0-9a-f]{3} 00000000 00000001 00000000 00000000  .*
-+ 10010[0-9a-f]{3} 00000000 00000001 00000000 00000000  .*
-+ 10010[0-9a-f]{3} 00000000 00000001 00000000 00000000  .*
-+ 10010[0-9a-f]{3} 00000000 00000001 00000000 00000000  .*
-+ 10010[0-9a-f]{3} ffffffff ffff8060 00000000 00000000  .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tlstoc.t
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlstoc.t
-@@ -8,7 +8,7 @@
- .*: +file format elf64-powerpc
- Contents of section \.tdata:
-- 10010148 00c0ffee 00000000 12345678 9abcdef0  .*
-- 10010158 23456789 abcdef01 3456789a bcdef012  .*
-- 10010168 456789ab cdef0123 56789abc def01234  .*
-- 10010178 6789abcd ef012345 789abcde f0123456  .*
-+ 10010180 00c0ffee 00000000 12345678 9abcdef0  .*
-+ 10010190 23456789 abcdef01 3456789a bcdef012  .*
-+ 100101a0 456789ab cdef0123 56789abc def01234  .*
-+ 100101b0 6789abcd ef012345 789abcde f0123456  .*
---- binutils-2.22/ld/testsuite/ld-powerpc/tlstocso.g
-+++ binutils-2.22/ld/testsuite/ld-powerpc/tlstocso.g
-@@ -7,7 +7,7 @@
- .*: +file format elf64-powerpc
- Contents of section \.got:
--.* 00000000 000186c0 00000000 00000000  .*
-+.* 00000000 000186f8 00000000 00000000  .*
- .* 00000000 00000000 00000000 00000000  .*
- .* 00000000 00000000 00000000 00000000  .*
- .* 00000000 00000000 00000000 00000000  .*
---- binutils-2.22/ld/testsuite/ld-s390/tlsbin.rd
-+++ binutils-2.22/ld/testsuite/ld-s390/tlsbin.rd
-@@ -36,13 +36,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
-- +PHDR +0x0+34 0x0+400034 0x0+400034 0x0+c0 0x0+c0 R E 0x4
-- +INTERP +0x0+f4 0x0+4000f4 0x0+4000f4 0x0+11 0x0+11 R +0x1
-+ +PHDR +0x0+34 0x0+400034 0x0+400034 0x0+e0 0x0+e0 R E 0x4
-+ +INTERP +0x0+114 0x0+400114 0x0+400114 0x0+11 0x0+11 R +0x1
- .*Requesting program interpreter.*
-  +LOAD .* R E 0x1000
-  +LOAD .* RW +0x1000
-  +DYNAMIC .* RW +0x4
-  +TLS .* 0x0+60 0x0+a0 R +0x20
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -52,6 +53,7 @@ Program Headers:
-  +03 +.tdata .dynamic .got *
-  +04 +.dynamic *
-  +05 +.tdata .tbss *
-+ +06 +
- Relocation section '.rela.dyn' at offset .* contains 4 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-s390/tlsbin_64.rd
-+++ binutils-2.22/ld/testsuite/ld-s390/tlsbin_64.rd
-@@ -36,13 +36,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
-- +PHDR +0x0+40 0x0+80000040 0x0+80000040 0x0+150 0x0+150 R E 0x8
-- +INTERP +0x0+190 0x0+80000190 0x0+80000190 0x0+11 0x0+11 R +0x1
-+ +PHDR +0x0+40 0x0+80000040 0x0+80000040 0x0+188 0x0+188 R E 0x8
-+ +INTERP +0x0+1c8 0x0+800001c8 0x0+800001c8 0x0+11 0x0+11 R +0x1
- .*Requesting program interpreter.*
-  +LOAD .* R E 0x1000
-  +LOAD .* RW +0x1000
-  +DYNAMIC .* RW +0x8
-  +TLS .* 0x0+60 0x0+a0 R +0x20
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -52,6 +53,7 @@ Program Headers:
-  +03 +.tdata .dynamic .got *
-  +04 +.dynamic *
-  +05 +.tdata .tbss *
-+ +06 +
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
-  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-s390/tlspic.rd
-+++ binutils-2.22/ld/testsuite/ld-s390/tlspic.rd
-@@ -39,6 +39,7 @@ Program Headers:
-  +LOAD .* RW +0x1000
-  +DYNAMIC .* RW +0x4
-  +TLS .* 0x0+60 0x0+80 R +0x20
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -46,6 +47,7 @@ Program Headers:
-  +01 +.tdata .dynamic .got 
-  +02 +.dynamic 
-  +03 +.tdata .tbss 
-+ +04 +
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
-  Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-s390/tlspic_64.rd
-+++ binutils-2.22/ld/testsuite/ld-s390/tlspic_64.rd
-@@ -39,6 +39,7 @@ Program Headers:
-  +LOAD .* RW +0x1000
-  +DYNAMIC .* RW +0x8
-  +TLS .* 0x0+60 0x0+80 R +0x20
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -46,6 +47,7 @@ Program Headers:
-  +01 +.tdata .dynamic .got *
-  +02 +.dynamic *
-  +03 +.tdata .tbss *
-+ +04 +
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
-  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-scripts/empty-aligned.d
-+++ binutils-2.22/ld/testsuite/ld-scripts/empty-aligned.d
-@@ -8,7 +8,9 @@
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg +Align
-  +LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ [RWE ]+ +0x[0-9a-f]+
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections\.\.\.
-  +00 +.text 
-+ +01 +
---- binutils-2.22/ld/testsuite/ld-sh/tlsbin-2.d
-+++ binutils-2.22/ld/testsuite/ld-sh/tlsbin-2.d
-@@ -44,6 +44,7 @@ Program Headers:
-  +LOAD.*
-  +DYNAMIC.*
-  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+18 0x0+28 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections\.\.\.
-@@ -53,6 +54,7 @@ Program Headers:
-  +03 +\.tdata \.dynamic \.got *
-  +04 +\.dynamic *
-  +05 +\.tdata \.tbss *
-+ +06 +
- Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
-  Offset +Info +Type +Sym\.Value +Sym\. Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-sh/tlspic-2.d
-+++ binutils-2.22/ld/testsuite/ld-sh/tlspic-2.d
-@@ -32,7 +32,7 @@ Key to Flags:
- Elf file type is DYN \(Shared object file\)
- Entry point 0x[0-9a-f]+
--There are 4 program headers, starting at offset [0-9]+
-+There are [0-9] program headers, starting at offset [0-9]+
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
-@@ -40,6 +40,7 @@ Program Headers:
-  +LOAD.*
-  +DYNAMIC.*
-  +TLS .* 0x0+18 0x0+20 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections\.\.\.
-@@ -47,6 +48,7 @@ Program Headers:
-  +01 +\.tdata \.dynamic \.got *
-  +02 +\.dynamic *
-  +03 +\.tdata \.tbss *
-+ +04 +
- Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 10 entries:
-  Offset +Info +Type +Sym\.Value +Sym\. Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-sparc/gotop32.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/gotop32.rd
-@@ -31,6 +31,7 @@ Program Headers:
-  +LOAD +0x0+ 0x0+ 0x0+ 0x0+2000 0x0+2000 R E 0x10000
-  +LOAD +0x0+2000 0x0+12000 0x0+12000 0x0+2000 0x0+2000 RW +0x10000
-  +DYNAMIC +0x0+2000 0x0+12000 0x0+12000 0x0+70 0x0+70 RW +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 1 entries:
---- binutils-2.22/ld/testsuite/ld-sparc/gotop64.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/gotop64.rd
-@@ -31,6 +31,7 @@ Program Headers:
-  +LOAD +0x0+ 0x0+ 0x0+ 0x0+2000 0x0+2000 R E 0x100000
-  +LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+2000 0x0+2000 RW +0x100000
-  +DYNAMIC +0x0+2000 0x0+102000 0x0+102000 0x0+e0 0x0+e0 RW +0x8
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 1 entries:
---- binutils-2.22/ld/testsuite/ld-sparc/tlssunbin32.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/tlssunbin32.rd
-@@ -30,13 +30,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz +Flg Align
-- +PHDR +0x0+34 0x0+10034 0x0+10034 0x0+c0 0x0+c0 R E 0x4
-- +INTERP +0x0+f4 0x0+100f4 0x0+100f4 0x0+11 0x0+11 R +0x1
-+ +PHDR +0x0+34 0x0+10034 0x0+10034 (0x[0-9a-f]+) \1 R E 0x4
-+ +INTERP +(0x[0-9a-f]+ ){3}0x0+11 0x0+11 R +0x1
- .*Requesting program interpreter.*
-  +LOAD .* R E 0x10000
-  +LOAD .* RW +0x10000
-  +DYNAMIC .* RW +0x4
-  +TLS .* 0x0+1060 0x0+10a0 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
---- binutils-2.22/ld/testsuite/ld-sparc/tlssunbin64.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/tlssunbin64.rd
-@@ -30,13 +30,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
- Program Headers:
-  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
-- +PHDR +0x0+40 0x0+100040 0x0+100040 0x0+150 0x0+150 R E 0x8
-- +INTERP +0x0+190 0x0+100190 0x0+100190 0x0+19 0x0+19 R +0x1
-+ +PHDR +0x0+40 0x0+100040 0x0+100040 (0x[0-9a-f]+) \1 R E 0x8
-+ +INTERP +0x0+([0-9a-f]+) (0x0+10+\1) \2 0x0+19 0x0+19 R +0x1
- .*Requesting program interpreter.*
-  +LOAD .* R E 0x100000
-  +LOAD .* RW +0x100000
-  +DYNAMIC .* RW +0x8
-  +TLS .* 0x0+60 0x0+a0 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
---- binutils-2.22/ld/testsuite/ld-sparc/tlssunnopic32.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/tlssunnopic32.rd
-@@ -32,6 +32,7 @@ Program Headers:
-  +LOAD .* RW +0x10000
-  +DYNAMIC .* RW +0x4
-  +TLS .* 0x0+ 0x0+24 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 12 entries:
---- binutils-2.22/ld/testsuite/ld-sparc/tlssunnopic64.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/tlssunnopic64.rd
-@@ -32,6 +32,7 @@ Program Headers:
-  +LOAD .* RW +0x100000
-  +DYNAMIC .* RW +0x8
-  +TLS .* 0x0+ 0x0+24 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
---- binutils-2.22/ld/testsuite/ld-sparc/tlssunpic32.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/tlssunpic32.rd
-@@ -36,6 +36,7 @@ Program Headers:
-  +LOAD +0x0+2000 0x0+12000 0x0+12000 0x0+184 0x0+184 RWE 0x10000
-  +DYNAMIC +0x0+2060 0x0+12060 0x0+12060 0x0+98 0x0+98 RW +0x4
-  +TLS +0x0+2000 0x0+12000 0x0+12000 0x0+60 0x0+80 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
---- binutils-2.22/ld/testsuite/ld-sparc/tlssunpic64.rd
-+++ binutils-2.22/ld/testsuite/ld-sparc/tlssunpic64.rd
-@@ -36,6 +36,7 @@ Program Headers:
-  +LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+3a0 0x0+3a0 RWE 0x100000
-  +DYNAMIC +0x0+2060 0x0+102060 0x0+102060 0x0+130 0x0+130 RW +0x8
-  +TLS +0x0+2000 0x0+102000 0x0+102000 0x0+60 0x0+80 R +0x4
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
- #...
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
---- binutils-2.22/ld/testsuite/ld-x86-64/protected3.d
-+++ binutils-2.22/ld/testsuite/ld-x86-64/protected3.d
-@@ -8,6 +8,6 @@
- Disassembly of section .text:
- 0+[a-f0-9]+ <bar>:
--[     ]*[a-f0-9]+:    8b 05 [a-f0-9][a-f0-9] 00 [a-f0-9][a-f0-9] 00           mov    0x[a-f0-9]+\(%rip\),%eax        # [a-f0-9]+ <foo>
-+[     ]*[a-f0-9]+:    8b 05 [a-f0-9][a-f0-9] [a-f0-9][a-f0-9] [a-f0-9][a-f0-9] 00     mov    0x[a-f0-9]+\(%rip\),%eax        # [a-f0-9]+ <foo>
- [     ]*[a-f0-9]+:    c3                      retq   
- #pass
---- binutils-2.22/ld/testsuite/ld-x86-64/tlsgdesc.rd
-+++ binutils-2.22/ld/testsuite/ld-x86-64/tlsgdesc.rd
-@@ -36,12 +36,14 @@ Program Headers:
-  +LOAD.*
-  +LOAD.*
-  +DYNAMIC.*
-+ +PAX_FLAGS.*
-  Section to Segment mapping:
-  +Segment Sections...
-  +00 +.hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
-  +01 +.dynamic .got .got.plt *
-  +02 +.dynamic *
-+ +03 +
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 8 entries:
-  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
---- binutils-2.22/ld/testsuite/ld-x86-64/tlspic.rd
-+++ binutils-2.22/ld/testsuite/ld-x86-64/tlspic.rd
-@@ -40,6 +40,7 @@ Program Headers:
-  +LOAD +0x0+11ac 0x0+2011ac 0x0+2011ac 0x0+244 0x0+244 RW +0x200000
-  +DYNAMIC +0x0+1210 0x0+201210 0x0+201210 0x0+130 0x0+130 RW +0x8
-  +TLS +0x0+11ac 0x0+2011ac 0x0+2011ac 0x0+60 0x0+80 R +0x1
-+ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
-  Section to Segment mapping:
-  +Segment Sections...
-@@ -47,6 +48,7 @@ Program Headers:
-  +01 +.tdata .dynamic .got .got.plt *
-  +02 +.dynamic *
-  +03 +.tdata .tbss *
-+ +04 +
- Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
-  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
diff --git a/src/patches/binutils-2.24-pt-pax-flags-20131231.patch b/src/patches/binutils-2.24-pt-pax-flags-20131231.patch
new file mode 100644 (file)
index 0000000..cfb2035
--- /dev/null
@@ -0,0 +1,1030 @@
+--- binutils-2.24/bfd/elf-bfd.h
++++ binutils-2.24/bfd/elf-bfd.h
+@@ -1577,6 +1577,9 @@ struct elf_obj_tdata
+   /* Segment flags for the PT_GNU_STACK segment.  */
+   unsigned int stack_flags;
++  /* Segment flags for the PT_PAX_FLAGS segment.  */
++  unsigned int pax_flags;
++
+   /* This is set to TRUE if the object was created by the backend
+      linker.  */
+   bfd_boolean linker;
+@@ -1707,6 +1707,7 @@
+ #define elf_eh_frame_hdr(bfd) (elf_tdata(bfd) -> o->eh_frame_hdr)
+ #define elf_linker(bfd)               (elf_tdata(bfd) -> o->linker)
+ #define elf_stack_flags(bfd)  (elf_tdata(bfd) -> o->stack_flags)
++#define elf_pax_flags(bfd)    (elf_tdata(bfd) -> o->pax_flags)
+ #define elf_shstrtab(bfd)     (elf_tdata(bfd) -> o->strtab_ptr)
+ #define elf_onesymtab(bfd)    (elf_tdata(bfd) -> symtab_section)
+ #define elf_symtab_shndx(bfd) (elf_tdata(bfd) -> symtab_shndx_section)
+--- binutils-2.24/bfd/elf.c
++++ binutils-2.24/bfd/elf.c
+@@ -1158,6 +1158,7 @@ get_segment_type (unsigned int p_type)
+     case PT_GNU_EH_FRAME: pt = "EH_FRAME"; break;
+     case PT_GNU_STACK: pt = "STACK"; break;
+     case PT_GNU_RELRO: pt = "RELRO"; break;
++    case PT_PAX_FLAGS: pt = "PAX_FLAGS"; break;
+     default: pt = NULL; break;
+     }
+   return pt;
+@@ -2477,6 +2478,9 @@ bfd_section_from_phdr (bfd *abfd, Elf_Internal_Phdr *hdr, int hdr_index)
+     case PT_GNU_RELRO:
+       return _bfd_elf_make_section_from_phdr (abfd, hdr, hdr_index, "relro");
++    case PT_PAX_FLAGS:
++      return _bfd_elf_make_section_from_phdr (abfd, hdr, hdr_index, "pax_flags");
++
+     default:
+       /* Check for any processor-specific program segment types.  */
+       bed = get_elf_backend_data (abfd);
+@@ -3551,6 +3555,11 @@ get_program_header_size (bfd *abfd, struct bfd_link_info *info)
+       ++segs;
+     }
++    {
++      /* We need a PT_PAX_FLAGS segment.  */
++      ++segs;
++    }
++
+   for (s = abfd->sections; s != NULL; s = s->next)
+     {
+       if ((s->flags & SEC_LOAD) != 0
+@@ -4153,6 +4162,20 @@ _bfd_elf_map_sections_to_segments (bfd *abfd, struct bfd_link_info *info)
+           }
+       }
++    {
++      amt = sizeof (struct elf_segment_map);
++      m = bfd_zalloc (abfd, amt);
++      if (m == NULL)
++      goto error_return;
++      m->next = NULL;
++      m->p_type = PT_PAX_FLAGS;
++      m->p_flags = elf_pax_flags (abfd);
++      m->p_flags_valid = 1;
++
++      *pm = m;
++      pm = &m->next;
++    }
++
+       free (sections);
+       elf_tdata (abfd)->segment_map = mfirst;
+     }
+@@ -5417,7 +5440,8 @@ rewrite_elf_program_header (bfd *ibfd, bfd *obfd)
+        6. PT_TLS segment includes only SHF_TLS sections.
+        7. SHF_TLS sections are only in PT_TLS or PT_LOAD segments.
+        8. PT_DYNAMIC should not contain empty sections at the beginning
+-        (with the possible exception of .dynamic).  */
++        (with the possible exception of .dynamic).
++       9. PT_PAX_FLAGS segments do not include any sections.  */
+ #define IS_SECTION_IN_INPUT_SEGMENT(section, segment, bed)            \
+   ((((segment->p_paddr                                                        \
+       ? IS_CONTAINED_BY_LMA (section, segment, segment->p_paddr)      \
+@@ -5425,6 +5449,7 @@ rewrite_elf_program_header (bfd *ibfd, bfd *obfd)
+      && (section->flags & SEC_ALLOC) != 0)                            \
+     || IS_NOTE (segment, section))                                    \
+    && segment->p_type != PT_GNU_STACK                                 \
++   && segment->p_type != PT_PAX_FLAGS                                 \
+    && (segment->p_type != PT_TLS                                      \
+        || (section->flags & SEC_THREAD_LOCAL))                                \
+    && (segment->p_type == PT_LOAD                                     \
+--- binutils-2.24/bfd/elflink.c
++++ binutils-2.24/bfd/elflink.c
+@@ -5545,17 +5545,30 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd,
+       && ! (*bed->elf_backend_always_size_sections) (output_bfd, info))
+     return FALSE;
++  elf_pax_flags (output_bfd) = PF_NORANDEXEC;
++  if (info->execheap)
++    elf_pax_flags (output_bfd) |= PF_NOMPROTECT;
++  else if (info->noexecheap)
++    elf_pax_flags (output_bfd) |= PF_MPROTECT;
++
+   /* Determine any GNU_STACK segment requirements, after the backend
+      has had a chance to set a default segment size.  */
+   if (info->execstack)
+-    elf_stack_flags (output_bfd) = PF_R | PF_W | PF_X;
++    {
++      elf_stack_flags (output_bfd) = PF_R | PF_W | PF_X;
++      elf_pax_flags (output_bfd) |= PF_EMUTRAMP;
++    }
+   else if (info->noexecstack)
+-    elf_stack_flags (output_bfd) = PF_R | PF_W;
++    {
++      elf_stack_flags (output_bfd) = PF_R | PF_W;
++      elf_pax_flags (output_bfd) |= PF_NOEMUTRAMP;
++    }
+   else
+     {
+       bfd *inputobj;
+       asection *notesec = NULL;
+       int exec = 0;
++      elf_pax_flags (output_bfd) |= PF_NOEMUTRAMP;
+       for (inputobj = info->input_bfds;
+          inputobj;
+          inputobj = inputobj->link_next)
+@@ -5567,7 +5581,11 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd,
+         if (s)
+           {
+             if (s->flags & SEC_CODE)
+-              exec = PF_X;
++              {
++                elf_pax_flags (output_bfd) &= ~PF_NOEMUTRAMP;
++                elf_pax_flags (output_bfd) |= PF_EMUTRAMP;
++                exec = PF_X;
++              }
+             notesec = s;
+           }
+         else if (bed->default_execstack)
+--- binutils-2.24/binutils/readelf.c
++++ binutils-2.24/binutils/readelf.c
+@@ -2740,6 +2740,7 @@ get_segment_type (unsigned long p_type)
+                       return "GNU_EH_FRAME";
+     case PT_GNU_STACK:        return "GNU_STACK";
+     case PT_GNU_RELRO:  return "GNU_RELRO";
++    case PT_PAX_FLAGS:  return "PAX_FLAGS";
+     default:
+       if ((p_type >= PT_LOPROC) && (p_type <= PT_HIPROC))
+--- binutils-2.24/include/bfdlink.h
++++ binutils-2.24/include/bfdlink.h
+@@ -322,6 +322,14 @@ struct bfd_link_info
+   /* TRUE if PT_GNU_RELRO segment should be created.  */
+   unsigned int relro: 1;
++  /* TRUE if PT_PAX_FLAGS segment should be created with PF_NOMPROTECT
++     flags.  */
++  unsigned int execheap: 1;
++
++  /* TRUE if PT_PAX_FLAGS segment should be created with PF_MPROTECT
++     flags.  */
++  unsigned int noexecheap: 1;
++
+   /* TRUE if .eh_frame_hdr section and PT_GNU_EH_FRAME ELF segment
+      should be created.  */
+   unsigned int eh_frame_hdr: 1;
+--- binutils-2.24/include/elf/common.h
++++ binutils-2.24/include/elf/common.h
+@@ -429,6 +429,7 @@
+ #define PT_SUNW_EH_FRAME PT_GNU_EH_FRAME      /* Solaris uses the same value */
+ #define PT_GNU_STACK  (PT_LOOS + 0x474e551) /* Stack flags */
+ #define PT_GNU_RELRO  (PT_LOOS + 0x474e552) /* Read-only after relocation */
++#define PT_PAX_FLAGS  (PT_LOOS + 0x5041580) /* PaX flags */
+ /* Program segment permissions, in program header p_flags field.  */
+@@ -439,6 +440,21 @@
+ #define PF_MASKOS     0x0FF00000      /* New value, Oct 4, 1999 Draft */
+ #define PF_MASKPROC   0xF0000000      /* Processor-specific reserved bits */
++/* Flags to control PaX behavior.  */
++
++#define PF_PAGEEXEC   (1 << 4)        /* Enable  PAGEEXEC */
++#define PF_NOPAGEEXEC (1 << 5)        /* Disable PAGEEXEC */
++#define PF_SEGMEXEC   (1 << 6)        /* Enable  SEGMEXEC */
++#define PF_NOSEGMEXEC (1 << 7)        /* Disable SEGMEXEC */
++#define PF_MPROTECT   (1 << 8)        /* Enable  MPROTECT */
++#define PF_NOMPROTECT (1 << 9)        /* Disable MPROTECT */
++#define PF_RANDEXEC   (1 << 10)       /* Enable  RANDEXEC */
++#define PF_NORANDEXEC (1 << 11)       /* Disable RANDEXEC */
++#define PF_EMUTRAMP   (1 << 12)       /* Enable  EMUTRAMP */
++#define PF_NOEMUTRAMP (1 << 13)       /* Disable EMUTRAMP */
++#define PF_RANDMMAP   (1 << 14)       /* Enable  RANDMMAP */
++#define PF_NORANDMMAP (1 << 15)       /* Disable RANDMMAP */
++
+ /* Values for section header, sh_type field.  */
+ #define SHT_NULL      0               /* Section header table entry unused */
+--- binutils-2.24/ld/emultempl/elf32.em
++++ binutils-2.24/ld/emultempl/elf32.em
+@@ -2285,6 +2285,16 @@ fragment <<EOF
+         link_info.noexecstack = TRUE;
+         link_info.execstack = FALSE;
+       }
++      else if (strcmp (optarg, "execheap") == 0)
++      {
++        link_info.execheap = TRUE;
++        link_info.noexecheap = FALSE;
++      }
++      else if (strcmp (optarg, "noexecheap") == 0)
++      {
++        link_info.noexecheap = TRUE;
++        link_info.execheap = FALSE;
++      }
+ EOF
+ if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
+ fragment <<EOF
+@@ -2368,6 +2378,8 @@ fragment <<EOF
+   -z defs                     Report unresolved symbols in object files.\n"));
+   fprintf (file, _("\
+   -z execstack                Mark executable as requiring executable stack\n"));
++  fprintf (file, _("\
++  -z execheap                 Mark executable as requiring executable heap\n"));
+ EOF
+ if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
+@@ -2391,6 +2403,8 @@ fragment <<EOF
+ fragment <<EOF
+   fprintf (file, _("\
+   -z noexecstack              Mark executable as not requiring executable stack\n"));
++  fprintf (file, _("\
++  -z noexecheap               Mark executable as not requiring executable heap\n"));
+ EOF
+ if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
+ fragment <<EOF
+--- binutils-2.24/ld/ldgram.y
++++ binutils-2.24/ld/ldgram.y
+@@ -1119,6 +1119,8 @@ phdr_type:
+                           $$ = exp_intop (0x6474e550);
+                         else if (strcmp (s, "PT_GNU_STACK") == 0)
+                           $$ = exp_intop (0x6474e551);
++                        else if (strcmp (s, "PT_PAX_FLAGS") == 0)
++                          $$ = exp_intop (0x65041580);
+                         else
+                           {
+                             einfo (_("\
+--- binutils-2.24/ld/testsuite/ld-alpha/tlsbin.rd
++++ binutils-2.24/ld/testsuite/ld-alpha/tlsbin.rd
+@@ -35,13 +35,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
+ Program Headers:
+   Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
+-  PHDR +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+150 R E 0x8
++  PHDR +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+188 R E 0x8
+   INTERP +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1
+ .*Requesting program interpreter.*
+   LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x10000
+   LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x10000
+   DYNAMIC +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RW +0x8
+   TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 3 entries:
+--- binutils-2.24/ld/testsuite/ld-alpha/tlsbinr.rd
++++ binutils-2.24/ld/testsuite/ld-alpha/tlsbinr.rd
+@@ -42,6 +42,7 @@ Program Headers:
+  +LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x10000
+  +DYNAMIC +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RW +0x8
+  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 2 entries:
+--- binutils-2.24/ld/testsuite/ld-alpha/tlspic.rd
++++ binutils-2.24/ld/testsuite/ld-alpha/tlspic.rd
+@@ -38,6 +38,7 @@ Program Headers:
+  +LOAD +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x10000
+  +DYNAMIC +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ RW +0x8
+  +TLS +0x0+10e0 0x0+110e0 0x0+110e0 0x0+60 0x0+80 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 7 entries:
+--- binutils-2.24/ld/testsuite/ld-elf/eh1.d
++++ binutils-2.24/ld/testsuite/ld-elf/eh1.d
+@@ -22,11 +22,11 @@ Contents of the .eh_frame section:
+   DW_CFA_nop
+   DW_CFA_nop
+-0+0018 0+001c 0+001c FDE cie=0+0000 pc=0+400078..0+400078
+-  DW_CFA_advance_loc: 0 to 0+400078
++0+0018 0+001c 0+001c FDE cie=0+0000 pc=([0-9a-f]+)..\1
++  DW_CFA_advance_loc: 0 to [0-9a-f]+
+   DW_CFA_def_cfa_offset: 16
+   DW_CFA_offset: r6 \(rbp\) at cfa-16
+-  DW_CFA_advance_loc: 0 to 0+400078
++  DW_CFA_advance_loc: 0 to [0-9a-f]+
+   DW_CFA_def_cfa_register: r6 \(rbp\)
+ 0+0038 ZERO terminator
+--- binutils-2.24/ld/testsuite/ld-elf/eh2.d
++++ binutils-2.24/ld/testsuite/ld-elf/eh2.d
+@@ -22,11 +22,11 @@ Contents of the .eh_frame section:
+   DW_CFA_nop
+   DW_CFA_nop
+-0+0018 0+001c 0+001c FDE cie=0+0000 pc=0+400078..0+400078
+-  DW_CFA_advance_loc: 0 to 0+400078
++0+0018 0+001c 0+001c FDE cie=0+0000 pc=([0-9a-f]+)..\1
++  DW_CFA_advance_loc: 0 to [0-9a-f]+
+   DW_CFA_def_cfa_offset: 16
+   DW_CFA_offset: r6 \(rbp\) at cfa-16
+-  DW_CFA_advance_loc: 0 to 0+400078
++  DW_CFA_advance_loc: 0 to [0-9a-f]+
+   DW_CFA_def_cfa_register: r6 \(rbp\)
+ 0+0038 ZERO terminator
+--- binutils-2.24/ld/testsuite/ld-elf/eh3.d
++++ binutils-2.24/ld/testsuite/ld-elf/eh3.d
+@@ -22,11 +22,11 @@ Contents of the .eh_frame section:
+   DW_CFA_nop
+   DW_CFA_nop
+-0+0018 0+001c 0+001c FDE cie=0+0000 pc=0+400078..0+400078
+-  DW_CFA_advance_loc: 0 to 0+400078
++0+0018 0+001c 0+001c FDE cie=0+0000 pc=([0-9a-f]+)..\1
++  DW_CFA_advance_loc: 0 to [0-9a-f]+
+   DW_CFA_def_cfa_offset: 16
+   DW_CFA_offset: r6 \(rbp\) at cfa-16
+-  DW_CFA_advance_loc: 0 to 0+400078
++  DW_CFA_advance_loc: 0 to [0-9a-f]+
+   DW_CFA_def_cfa_register: r6 \(rbp\)
+ 0+0038 ZERO terminator
+--- binutils-2.24/ld/testsuite/ld-elf/orphan-region.d
++++ binutils-2.24/ld/testsuite/ld-elf/orphan-region.d
+@@ -15,7 +15,9 @@
+ Program Headers:
+   Type.*
+   LOAD[ \t]+0x[0-9a-f]+ 0x0*40000000 0x0*40000000 0x[0-9a-f]+ 0x[0-9a-f]+ RWE 0x[0-9a-f]+
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+   Segment Sections...
+    00     .text .rodata .moredata *
++   01 +
+--- binutils-2.24/ld/testsuite/ld-i386/tlsbin.rd
++++ binutils-2.24/ld/testsuite/ld-i386/tlsbin.rd
+@@ -44,6 +44,7 @@ Program Headers:
+  +LOAD.*
+  +DYNAMIC.*
+  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1000
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -53,6 +54,7 @@ Program Headers:
+  +03 +.tdata .dynamic .got .got.plt *
+  +04 +.dynamic *
+  +05 +.tdata .tbss *
++ +06 +
+ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 9 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name
+--- binutils-2.24/ld/testsuite/ld-i386/tlsbindesc.rd
++++ binutils-2.24/ld/testsuite/ld-i386/tlsbindesc.rd
+@@ -42,6 +42,7 @@ Program Headers:
+  +LOAD.*
+  +DYNAMIC.*
+  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1000
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -51,6 +52,7 @@ Program Headers:
+  +03 +.tdata .dynamic .got .got.plt *
+  +04 +.dynamic *
+  +05 +.tdata .tbss *
++ +06 +
+ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 9 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name
+--- binutils-2.24/ld/testsuite/ld-i386/tlsdesc.rd
++++ binutils-2.24/ld/testsuite/ld-i386/tlsdesc.rd
+@@ -39,6 +39,7 @@ Program Headers:
+  +LOAD.*
+  +DYNAMIC.*
+  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+80 R +0x1
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -46,6 +47,7 @@ Program Headers:
+  +01 +.tdata .dynamic .got .got.plt *
+  +02 +.dynamic *
+  +03 +.tdata .tbss *
++ +04 +
+ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 20 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name
+--- binutils-2.24/ld/testsuite/ld-i386/tlsgdesc.rd
++++ binutils-2.24/ld/testsuite/ld-i386/tlsgdesc.rd
+@@ -36,12 +36,14 @@ Program Headers:
+  +LOAD.*
+  +LOAD.*
+  +DYNAMIC.*
++ +PAX_FLAGS.*
+  Section to Segment mapping:
+  +Segment Sections...
+  +00 +.hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text *
+  +01 +.dynamic .got .got.plt *
+  +02 +.dynamic *
++ +03 +
+ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 8 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name
+--- binutils-2.24/ld/testsuite/ld-i386/tlsnopic.rd
++++ binutils-2.24/ld/testsuite/ld-i386/tlsnopic.rd
+@@ -37,6 +37,7 @@ Program Headers:
+  +LOAD.*
+  +DYNAMIC.*
+  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+ 0x0+24 R +0x1
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -44,6 +45,7 @@ Program Headers:
+  +01 +.dynamic .got .got.plt *
+  +02 +.dynamic *
+  +03 +.tbss *
++ +04 +
+ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 20 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name
+--- binutils-2.24/ld/testsuite/ld-i386/tlspic.rd
++++ binutils-2.24/ld/testsuite/ld-i386/tlspic.rd
+@@ -40,6 +40,7 @@ Program Headers:
+  +LOAD.*
+  +DYNAMIC.*
+  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+80 R +0x1
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -47,6 +48,7 @@ Program Headers:
+  +01 +.tdata .dynamic .got .got.plt *
+  +02 +.dynamic *
+  +03 +.tdata .tbss *
++ +04 +
+ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 26 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name
+--- binutils-2.24/ld/testsuite/ld-ia64/merge1.d
++++ binutils-2.24/ld/testsuite/ld-ia64/merge1.d
+@@ -4,7 +4,7 @@
+ #objdump: -d
+ #...
+-0+1e0 <.text>:
++[a-f0-9]+ <.text>:
+ [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
+ [     ]*[a-f0-9]+:    c0 c0 04 00 48 00                   addl r12=24,r1
+ [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
+--- binutils-2.24/ld/testsuite/ld-ia64/merge2.d
++++ binutils-2.24/ld/testsuite/ld-ia64/merge2.d
+@@ -4,7 +4,7 @@
+ #objdump: -d
+ #...
+-0+1e0 <.text>:
++[a-f0-9]+ <.text>:
+ [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
+ [     ]*[a-f0-9]+:    c0 c0 04 00 48 00                   addl r12=24,r1
+ [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
+--- binutils-2.24/ld/testsuite/ld-ia64/merge3.d
++++ binutils-2.24/ld/testsuite/ld-ia64/merge3.d
+@@ -4,7 +4,7 @@
+ #objdump: -d
+ #...
+-0+210 <.text>:
++[a-f0-9]+ <.text>:
+ [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
+ [     ]*[a-f0-9]+:    c0 40 05 00 48 00                   addl r12=40,r1
+ [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
+--- binutils-2.24/ld/testsuite/ld-ia64/merge4.d
++++ binutils-2.24/ld/testsuite/ld-ia64/merge4.d
+@@ -4,7 +4,7 @@
+ #objdump: -d
+ #...
+-0+240 <.text>:
++[a-f0-9]+ <.text>:
+ [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
+ [     ]*[a-f0-9]+:    c0 40 05 00 48 00                   addl r12=40,r1
+ [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
+--- binutils-2.24/ld/testsuite/ld-ia64/merge5.d
++++ binutils-2.24/ld/testsuite/ld-ia64/merge5.d
+@@ -4,7 +4,7 @@
+ #objdump: -d
+ #...
+-0+270 <.text>:
++[a-f0-9]+ <.text>:
+ [     ]*[a-f0-9]+:    0b 60 80 02 00 24       \[MMI\]       addl r12=32,r1;;
+ [     ]*[a-f0-9]+:    c0 40 05 00 48 00                   addl r12=40,r1
+ [     ]*[a-f0-9]+:    00 00 04 00                         nop.i 0x0;;
+--- binutils-2.24/ld/testsuite/ld-ia64/tlsbin.rd
++++ binutils-2.24/ld/testsuite/ld-ia64/tlsbin.rd
+@@ -36,13 +36,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
+ Program Headers:
+  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
+- +PHDR +0x0+40 0x40+40 0x40+40 0x0+188 0x0+188 R E 0x8
+- +INTERP +0x0+1c8 0x40+1c8 0x40+1c8 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1
++ +PHDR +0x0+40 0x40+40 0x40+40 (0x[0-9a-f]+) \1 R E 0x8
++ +INTERP +0x0+([0-9a-f]+) (0x40+\1) \2 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1
+ .*Requesting program interpreter.*
+  +LOAD +0x0+ 0x40+ 0x40+ 0x0+1[0-9a-f]+ 0x0+1[0-9a-f]+ R E 0x10000
+  +LOAD +0x0+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x0+0[0-9a-f]+ 0x0+0[0-9a-f]+ RW +0x10000
+  +DYNAMIC +0x0+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x0+150 0x0+150 RW +0x8
+  +TLS +0x0+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x60+1[0-9a-f]+ 0x0+60 0x0+a0 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  +IA_64_UNWIND .* R +0x8
+ #...
+--- binutils-2.24/ld/testsuite/ld-ia64/tlspic.rd
++++ binutils-2.24/ld/testsuite/ld-ia64/tlspic.rd
+@@ -40,6 +40,7 @@ Program Headers:
+  +LOAD +0x0+1[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+0[0-9a-f]+ 0x0+0[0-9a-f]+ RW +0x10000
+  +DYNAMIC +0x0+1[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+140 0x0+140 RW +0x8
+  +TLS +0x0+1[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+11[0-9a-f]+ 0x0+60 0x0+80 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  +IA_64_UNWIND +0x0+1[0-9a-f]+ 0x0+1[0-9a-f]+ 0x0+1[0-9a-f]+ 0x0+18 0x0+18 R +0x8
+ #...
+--- binutils-2.24/ld/testsuite/ld-mips-elf/multi-got-no-shared.d
++++ binutils-2.24/ld/testsuite/ld-mips-elf/multi-got-no-shared.d
+@@ -8,9 +8,9 @@
+ .*: +file format.*
+ Disassembly of section \.text:
+-004000b0 <[^>]*> 3c1c0043     lui     gp,0x43
+-004000b4 <[^>]*> 279c9ff0     addiu   gp,gp,-24592
+-004000b8 <[^>]*> afbc0008     sw      gp,8\(sp\)
++004000d0 <[^>]*> 3c1c0043     lui     gp,0x43
++004000d4 <[^>]*> 279c9ff0     addiu   gp,gp,-24592
++004000d8 <[^>]*> afbc0008     sw      gp,8\(sp\)
+ #...
+ 00408d60 <[^>]*> 3c1c0043     lui     gp,0x43
+ 00408d64 <[^>]*> 279c2c98     addiu   gp,gp,11416
+--- binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-3a.sd
++++ binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-3a.sd
+@@ -1,7 +1,7 @@
+ Elf file type is DYN \(Shared object file\)
+ Entry point .*
+-There are 5 program headers, starting at offset .*
++There are [0-9] program headers, starting at offset .*
+ Program Headers:
+  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
+@@ -9,6 +9,7 @@ Program Headers:
+  * LOAD * [^ ]+ * 0x0+00000 * 0x0+00000 [^ ]+ * [^ ]+ * R E * 0x.*
+  * LOAD * [^ ]+ * 0x0+10000 * 0x0+10000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * DYNAMIC * [^ ]+ * 0x0+00400 * 0x0+00400 .*
++ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  * NULL * .*
+  *Section to Segment mapping:
+@@ -18,3 +19,4 @@ Program Headers:
+  *0*2 * \.data \.got *
+  *0*3 * \.dynamic *
+  *0*4 *
++ *0*5 *
+--- binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-3b.sd
++++ binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-3b.sd
+@@ -1,7 +1,7 @@
+ Elf file type is EXEC \(Executable file\)
+ Entry point 0x44000
+-There are 8 program headers, starting at offset .*
++There are [0-9] program headers, starting at offset .*
+ Program Headers:
+  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
+@@ -13,6 +13,7 @@ Program Headers:
+  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
++ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  * NULL * .*
+  *Section to Segment mapping:
+@@ -25,3 +26,4 @@ Program Headers:
+  *0*5 *\.got \.data *
+  *0*6 *\.dynamic *
+  *0*7 *
++ *0*8 *
+--- binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-4b.sd
++++ binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-4b.sd
+@@ -1,7 +1,7 @@
+ Elf file type is EXEC \(Executable file\)
+ Entry point 0x44000
+-There are 8 program headers, starting at offset .*
++There are [0-9] program headers, starting at offset .*
+ Program Headers:
+  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
+@@ -13,6 +13,7 @@ Program Headers:
+  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
++ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  * NULL * .*
+  *Section to Segment mapping:
+@@ -25,3 +26,4 @@ Program Headers:
+  *0*5 * \.got \.data \.bss *
+  *0*6 * \.dynamic *
+  *0*7 *
++ *0*8 *
+--- binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-5b.sd
++++ binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-5b.sd
+@@ -1,7 +1,7 @@
+ Elf file type is EXEC \(Executable file\)
+ Entry point 0x44000
+-There are 8 program headers, starting at offset .*
++There are [0-9] program headers, starting at offset .*
+ Program Headers:
+  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
+@@ -13,6 +13,7 @@ Program Headers:
+  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
++ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  * NULL * .*
+  *Section to Segment mapping:
+@@ -25,3 +26,4 @@ Program Headers:
+  *0*5 * \.got \.data \.bss *
+  *0*6 * \.dynamic *
+  *0*7 *
++ *0*8 *
+--- binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.sd
++++ binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.sd
+@@ -1,7 +1,7 @@
+ Elf file type is EXEC \(Executable file\)
+ Entry point 0x44000
+-There are 8 program headers, starting at offset .*
++There are [0-9] program headers, starting at offset .*
+ Program Headers:
+  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
+@@ -13,6 +13,7 @@ Program Headers:
+  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
++ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  * NULL * .*
+  *Section to Segment mapping:
+@@ -25,3 +26,4 @@ Program Headers:
+  *0*5 * \.got \.data \.bss *
+  *0*6 * \.dynamic *
+  *0*7 *
++ *0*8 *
+--- binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n64.sd
++++ binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n64.sd
+@@ -1,7 +1,7 @@
+ Elf file type is EXEC \(Executable file\)
+ Entry point 0x44000
+-There are 7 program headers, starting at offset .*
++There are [0-9] program headers, starting at offset .*
+ Program Headers:
+  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
+@@ -12,6 +12,7 @@ Program Headers:
+  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
++ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  * NULL * .*
+  *Section to Segment mapping:
+@@ -23,3 +24,4 @@ Program Headers:
+  *0*4 * \.got \.data \.bss *
+  *0*5 * \.dynamic *
+  *0*6 *
++ *0*7 *
+--- binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-o32.sd
++++ binutils-2.24/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-o32.sd
+@@ -1,7 +1,7 @@
+ Elf file type is EXEC \(Executable file\)
+ Entry point 0x44000
+-There are 8 program headers, starting at offset .*
++There are [0-9] program headers, starting at offset .*
+ Program Headers:
+  * Type * Offset * VirtAddr * PhysAddr * FileSiz * MemSiz * Flg * Align
+@@ -13,6 +13,7 @@ Program Headers:
+  * LOAD * [^ ]+ * 0x0+80000 * 0x0+80000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * LOAD * [^ ]+ * 0x0+a0000 * 0x0+a0000 [^ ]+ * [^ ]+ * RW  * 0x.*
+  * DYNAMIC * [^ ]+ * 0x0+42000 * 0x0+42000 .*
++ * PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  * NULL * .*
+  *Section to Segment mapping:
+@@ -25,3 +26,4 @@ Program Headers:
+  *0*5 * \.got \.data \.bss *
+  *0*6 * \.dynamic *
+  *0*7 *
++ *0*8 *
+--- binutils-2.24/ld/testsuite/ld-powerpc/tlsexe32.r
++++ binutils-2.24/ld/testsuite/ld-powerpc/tlsexe32.r
+@@ -33,13 +33,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
+ Program Headers:
+  +Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz +Flg Align
+- +PHDR +0x000034 0x01800034 0x01800034 0x000c0 0x000c0 R E 0x4
+- +INTERP +0x0000f4 0x018000f4 0x018000f4 0x00011 0x00011 R +0x1
++ +PHDR +0x000034 0x01800034 0x01800034 (0x000[0-9a-f]{2}) \1 R E 0x4
++ +INTERP +0x000([0-9a-f]{3}) 0x01800\1 0x01800\1 0x00011 0x00011 R +0x1
+  +\[Requesting program interpreter: .*\]
+  +LOAD .* R E 0x10000
+  +LOAD .* RWE 0x10000
+  +DYNAMIC .* RW +0x4
+  +TLS .* 0x0001c 0x00038 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections\.\.\.
+@@ -49,6 +50,7 @@ Program Headers:
+  +03 +\.tdata \.dynamic \.got \.plt 
+  +04 +\.dynamic 
+  +05 +\.tdata \.tbss 
++ +06 +
+ Relocation section '\.rela\.dyn' at offset .* contains 2 entries:
+  Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-powerpc/tlsso32.r
++++ binutils-2.24/ld/testsuite/ld-powerpc/tlsso32.r
+@@ -35,6 +35,7 @@ Program Headers:
+  +LOAD .* RWE 0x10000
+  +DYNAMIC .* RW +0x4
+  +TLS .* 0x0+1c 0x0+38 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections\.\.\.
+@@ -42,6 +43,7 @@ Program Headers:
+  +01 +\.tdata \.dynamic \.got \.plt 
+  +02 +\.dynamic 
+  +03 +\.tdata \.tbss 
++ +04 +
+ Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 18 entries:
+  Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend
+@@ -52,9 +54,9 @@ Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 18 entries:
+ [0-9a-f ]+R_PPC_TPREL16 +0+30 +le0 \+ 0
+ [0-9a-f ]+R_PPC_TPREL16_HA +0+34 +le1 \+ 0
+ [0-9a-f ]+R_PPC_TPREL16_LO +0+34 +le1 \+ 0
+-[0-9a-f ]+R_PPC_TPREL16 +0+103d0 +\.tdata \+ 103e4
+-[0-9a-f ]+R_PPC_TPREL16_HA +0+103d0 +\.tdata \+ 103e8
+-[0-9a-f ]+R_PPC_TPREL16_LO +0+103d0 +\.tdata \+ 103e8
++[0-9a-f ]+R_PPC_TPREL16 +0+103[df]0 +\.tdata \+ 10[0-9a-f]{3}
++[0-9a-f ]+R_PPC_TPREL16_HA +0+103[df]0 +\.tdata \+ 10[0-9a-f]{3}
++[0-9a-f ]+R_PPC_TPREL16_LO +0+103[df]0 +\.tdata \+ 10[0-9a-f]{3}
+ [0-9a-f ]+R_PPC_DTPMOD32 +0
+ [0-9a-f ]+R_PPC_DTPREL32 +0
+ [0-9a-f ]+R_PPC_DTPMOD32 +0
+--- binutils-2.24/ld/testsuite/ld-s390/tlsbin.rd
++++ binutils-2.24/ld/testsuite/ld-s390/tlsbin.rd
+@@ -36,6 +36,7 @@ There are [0-9]+ program headers, starting at offset [0-9]+
+  +LOAD .* RW +0x1000
+  +DYNAMIC .* RW +0x4
+  +TLS .* 0x0+60 0x0+a0 R +0x20
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -52,6 +53,7 @@ Program Headers:
+  +03 +.tdata .dynamic .got *
+  +04 +.dynamic *
+  +05 +.tdata .tbss *
++ +06 +
+ Relocation section '.rela.dyn' at offset .* contains 4 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-s390/tlsbin_64.rd
++++ binutils-2.24/ld/testsuite/ld-s390/tlsbin_64.rd
+@@ -36,6 +36,7 @@ There are [0-9]+ program headers, starting at offset [0-9]+
+  +LOAD .* RW +0x1000
+  +DYNAMIC .* RW +0x8
+  +TLS .* 0x0+60 0x0+a0 R +0x20
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -52,6 +53,7 @@ Program Headers:
+  +03 +.tdata .dynamic .got *
+  +04 +.dynamic *
+  +05 +.tdata .tbss *
++ +06 +
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
+  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-s390/tlspic.rd
++++ binutils-2.24/ld/testsuite/ld-s390/tlspic.rd
+@@ -39,6 +39,7 @@ Program Headers:
+  +LOAD .* RW +0x1000
+  +DYNAMIC .* RW +0x4
+  +TLS .* 0x0+60 0x0+80 R +0x20
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -46,6 +47,7 @@ Program Headers:
+  +01 +.tdata .dynamic .got 
+  +02 +.dynamic 
+  +03 +.tdata .tbss 
++ +04 +
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
+  Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-s390/tlspic_64.rd
++++ binutils-2.24/ld/testsuite/ld-s390/tlspic_64.rd
+@@ -39,6 +39,7 @@ Program Headers:
+  +LOAD .* RW +0x1000
+  +DYNAMIC .* RW +0x8
+  +TLS .* 0x0+60 0x0+80 R +0x20
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -46,6 +47,7 @@ Program Headers:
+  +01 +.tdata .dynamic .got *
+  +02 +.dynamic *
+  +03 +.tdata .tbss *
++ +04 +
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
+  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-sh/tlsbin-2.d
++++ binutils-2.24/ld/testsuite/ld-sh/tlsbin-2.d
+@@ -44,6 +44,7 @@ Program Headers:
+  +LOAD.*
+  +DYNAMIC.*
+  +TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+18 0x0+28 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections\.\.\.
+@@ -53,6 +54,7 @@ Program Headers:
+  +03 +\.tdata \.dynamic \.got *
+  +04 +\.dynamic *
+  +05 +\.tdata \.tbss *
++ +06 +
+ Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
+  Offset +Info +Type +Sym\.Value +Sym\. Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-sh/tlspic-2.d
++++ binutils-2.24/ld/testsuite/ld-sh/tlspic-2.d
+@@ -32,7 +32,7 @@ Key to Flags:
+ Elf file type is DYN \(Shared object file\)
+ Entry point 0x[0-9a-f]+
+-There are 4 program headers, starting at offset [0-9]+
++There are [0-9] program headers, starting at offset [0-9]+
+ Program Headers:
+  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
+@@ -40,6 +40,7 @@ Program Headers:
+  +LOAD.*
+  +DYNAMIC.*
+  +TLS .* 0x0+18 0x0+20 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections\.\.\.
+@@ -47,6 +48,7 @@ Program Headers:
+  +01 +\.tdata \.dynamic \.got *
+  +02 +\.dynamic *
+  +03 +\.tdata \.tbss *
++ +04 +
+ Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 10 entries:
+  Offset +Info +Type +Sym\.Value +Sym\. Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-sparc/gotop32.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/gotop32.rd
+@@ -31,6 +31,7 @@ Program Headers:
+  +LOAD +0x0+ 0x0+ 0x0+ 0x0+2000 0x0+2000 R E 0x10000
+  +LOAD +0x0+2000 0x0+12000 0x0+12000 0x0+2000 0x0+2000 RW +0x10000
+  +DYNAMIC +0x0+2000 0x0+12000 0x0+12000 0x0+70 0x0+70 RW +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 1 entries:
+--- binutils-2.24/ld/testsuite/ld-sparc/gotop64.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/gotop64.rd
+@@ -31,6 +31,7 @@ Program Headers:
+  +LOAD +0x0+ 0x0+ 0x0+ 0x0+2000 0x0+2000 R E 0x100000
+  +LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+2000 0x0+2000 RW +0x100000
+  +DYNAMIC +0x0+2000 0x0+102000 0x0+102000 0x0+e0 0x0+e0 RW +0x8
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 1 entries:
+--- binutils-2.24/ld/testsuite/ld-sparc/tlssunbin32.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/tlssunbin32.rd
+@@ -30,13 +30,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
+ Program Headers:
+  +Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz +Flg Align
+- +PHDR +0x0+34 0x0+10034 0x0+10034 0x0+c0 0x0+c0 R E 0x4
+- +INTERP +0x0+f4 0x0+100f4 0x0+100f4 0x0+11 0x0+11 R +0x1
++ +PHDR +0x0+34 0x0+10034 0x0+10034 (0x[0-9a-f]+) \1 R E 0x4
++ +INTERP +(0x[0-9a-f]+ ){3}0x0+11 0x0+11 R +0x1
+ .*Requesting program interpreter.*
+  +LOAD .* R E 0x10000
+  +LOAD .* RW +0x10000
+  +DYNAMIC .* RW +0x4
+  +TLS .* 0x0+1060 0x0+10a0 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
+--- binutils-2.24/ld/testsuite/ld-sparc/tlssunbin64.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/tlssunbin64.rd
+@@ -30,13 +30,14 @@ There are [0-9]+ program headers, starting at offset [0-9]+
+ Program Headers:
+  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
+- +PHDR +0x0+40 0x0+100040 0x0+100040 0x0+150 0x0+150 R E 0x8
+- +INTERP +0x0+190 0x0+100190 0x0+100190 0x0+19 0x0+19 R +0x1
++ +PHDR +0x0+40 0x0+100040 0x0+100040 (0x[0-9a-f]+) \1 R E 0x8
++ +INTERP +0x0+([0-9a-f]+) (0x0+10+\1) \2 0x0+19 0x0+19 R +0x1
+ .*Requesting program interpreter.*
+  +LOAD .* R E 0x100000
+  +LOAD .* RW +0x100000
+  +DYNAMIC .* RW +0x8
+  +TLS .* 0x0+60 0x0+a0 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
+--- binutils-2.24/ld/testsuite/ld-sparc/tlssunnopic32.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/tlssunnopic32.rd
+@@ -32,6 +32,7 @@ Program Headers:
+  +LOAD .* RW +0x10000
+  +DYNAMIC .* RW +0x4
+  +TLS .* 0x0+ 0x0+24 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 12 entries:
+--- binutils-2.24/ld/testsuite/ld-sparc/tlssunnopic64.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/tlssunnopic64.rd
+@@ -32,6 +32,7 @@ Program Headers:
+  +LOAD .* RW +0x100000
+  +DYNAMIC .* RW +0x8
+  +TLS .* 0x0+ 0x0+24 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
+--- binutils-2.24/ld/testsuite/ld-sparc/tlssunpic32.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/tlssunpic32.rd
+@@ -36,6 +36,7 @@ Program Headers:
+  +LOAD +0x0+2000 0x0+12000 0x0+12000 0x0+184 0x0+184 RWE 0x10000
+  +DYNAMIC +0x0+2060 0x0+12060 0x0+12060 0x0+98 0x0+98 RW +0x4
+  +TLS +0x0+2000 0x0+12000 0x0+12000 0x0+60 0x0+80 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
+--- binutils-2.24/ld/testsuite/ld-sparc/tlssunpic64.rd
++++ binutils-2.24/ld/testsuite/ld-sparc/tlssunpic64.rd
+@@ -36,6 +36,7 @@ Program Headers:
+  +LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+3a0 0x0+3a0 RWE 0x100000
+  +DYNAMIC +0x0+2060 0x0+102060 0x0+102060 0x0+130 0x0+130 RW +0x8
+  +TLS +0x0+2000 0x0+102000 0x0+102000 0x0+60 0x0+80 R +0x4
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+ #...
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
+--- binutils-2.24/ld/testsuite/ld-x86-64/tlsgdesc.rd
++++ binutils-2.24/ld/testsuite/ld-x86-64/tlsgdesc.rd
+@@ -36,12 +36,14 @@ Program Headers:
+  +LOAD.*
+  +LOAD.*
+  +DYNAMIC.*
++ +PAX_FLAGS.*
+  Section to Segment mapping:
+  +Segment Sections...
+  +00 +.hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
+  +01 +.dynamic .got .got.plt *
+  +02 +.dynamic *
++ +03 +
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 8 entries:
+  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
+--- binutils-2.24/ld/testsuite/ld-x86-64/tlspic.rd
++++ binutils-2.24/ld/testsuite/ld-x86-64/tlspic.rd
+@@ -40,6 +40,7 @@ Program Headers:
+  +LOAD +0x0+131a 0x0+20131a 0x0+20131a 0x0+246 0x0+246 RW +0x200000
+  +DYNAMIC +0x0+1380 0x0+201380 0x0+201380 0x0+130 0x0+130 RW +0x8
+  +TLS +0x0+131a 0x0+20131a 0x0+20131a 0x0+60 0x0+80 R +0x1
++ +PAX_FLAGS +0x0+ 0x0+ 0x0+ 0x0+ 0x0+ +0x[48]
+  Section to Segment mapping:
+  +Segment Sections...
+@@ -47,6 +48,7 @@ Program Headers:
+  +01 +.tdata .dynamic .got .got.plt *
+  +02 +.dynamic *
+  +03 +.tdata .tbss *
++ +04 +
+ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
+  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
diff --git a/src/patches/cups-str4609.patch b/src/patches/cups-str4609.patch
new file mode 100644 (file)
index 0000000..2a9761b
--- /dev/null
@@ -0,0 +1,423 @@
+diff -up cups-1.7.5/cgi-bin/ipp-var.c.str4609 cups-1.7.5/cgi-bin/ipp-var.c
+--- cups-1.7.5/cgi-bin/ipp-var.c.str4609       2014-05-22 15:59:21.000000000 +0200
++++ cups-1.7.5/cgi-bin/ipp-var.c       2015-06-10 10:31:45.297965345 +0200
+@@ -1206,21 +1206,7 @@ cgiSetIPPObjectVars(
+             * Rewrite URIs...
+             */
+-              if (!strcmp(name, "member_uris"))
+-            {
+-              char    url[1024];      /* URL for class member... */
+-
+-
+-              cgiRewriteURL(attr->values[i].string.text, url,
+-                            sizeof(url), NULL);
+-
+-                snprintf(valptr, sizeof(value) - (valptr - value),
+-                       "<A HREF=\"%s\">%s</A>", url,
+-                       strrchr(attr->values[i].string.text, '/') + 1);
+-            }
+-            else
+-              cgiRewriteURL(attr->values[i].string.text, valptr,
+-                            sizeof(value) - (valptr - value), NULL);
++            cgiRewriteURL(attr->values[i].string.text, valptr, sizeof(value) - (valptr - value), NULL);
+               break;
+             }
+diff -up cups-1.7.5/cgi-bin/template.c.str4609 cups-1.7.5/cgi-bin/template.c
+--- cups-1.7.5/cgi-bin/template.c.str4609      2014-03-05 22:11:32.000000000 +0100
++++ cups-1.7.5/cgi-bin/template.c      2015-06-10 10:31:45.297965345 +0200
+@@ -659,39 +659,7 @@ cgi_puts(const char *s,                   /* I - String
+   while (*s)
+   {
+     if (*s == '<')
+-    {
+-     /*
+-      * Pass <A HREF="url"> and </A>, otherwise quote it...
+-      */
+-
+-      if (!_cups_strncasecmp(s, "<A HREF=\"", 9))
+-      {
+-        fputs("<A HREF=\"", out);
+-      s += 9;
+-
+-      while (*s && *s != '\"')
+-      {
+-          if (*s == '&')
+-            fputs("&amp;", out);
+-        else
+-          putc(*s, out);
+-
+-        s ++;
+-      }
+-
+-        if (*s)
+-        s ++;
+-
+-      fputs("\">", out);
+-      }
+-      else if (!_cups_strncasecmp(s, "</A>", 4))
+-      {
+-        fputs("</A>", out);
+-      s += 3;
+-      }
+-      else
+-        fputs("&lt;", out);
+-    }
++      fputs("&lt;", out);
+     else if (*s == '>')
+       fputs("&gt;", out);
+     else if (*s == '\"')
+diff -up cups-1.7.5/scheduler/client.c.str4609 cups-1.7.5/scheduler/client.c
+--- cups-1.7.5/scheduler/client.c.str4609      2015-06-10 10:31:45.280965399 +0200
++++ cups-1.7.5/scheduler/client.c      2015-06-10 10:31:45.300965335 +0200
+@@ -598,7 +598,12 @@ cupsdCloseClient(cupsd_client_t *con)     /*
+     httpClearCookie(HTTP(con));
+     httpClearFields(HTTP(con));
+-    cupsdClearString(&con->filename);
++    if (con->filename)
++    {
++      unlink(con->filename);
++      cupsdClearString(&con->filename);
++    }
++
+     cupsdClearString(&con->command);
+     cupsdClearString(&con->options);
+     cupsdClearString(&con->query_string);
+diff -up cups-1.7.5/scheduler/env.c.str4609 cups-1.7.5/scheduler/env.c
+--- cups-1.7.5/scheduler/env.c.str4609 2015-06-10 10:31:45.208965629 +0200
++++ cups-1.7.5/scheduler/env.c 2015-06-10 10:31:45.300965335 +0200
+@@ -131,6 +131,13 @@ cupsdSetEnv(const char *name,             /* I - Na
+     return;
+  /*
++  * Do not allow dynamic linker variables when running as root...
++  */
++
++  if (!RunUser && (!strncmp(name, "DYLD_", 5) || !strncmp(name, "LD_", 3)))
++    return;
++
++ /*
+   * See if this variable has already been defined...
+   */
+diff -up cups-1.7.5/scheduler/ipp.c.str4609 cups-1.7.5/scheduler/ipp.c
+--- cups-1.7.5/scheduler/ipp.c.str4609 2015-06-10 10:31:45.287965377 +0200
++++ cups-1.7.5/scheduler/ipp.c 2015-06-10 10:31:45.299965339 +0200
+@@ -412,8 +412,7 @@ cupsdProcessIPPRequest(
+           * Remote unauthenticated user masquerading as local root...
+           */
+-          _cupsStrFree(username->values[0].string.text);
+-          username->values[0].string.text = _cupsStrAlloc(RemoteRoot);
++            ippSetString(con->request, &username, 0, RemoteRoot);
+         }
+       }
+@@ -1576,7 +1575,7 @@ add_job(cupsd_client_t  *con,            /* I - Cl
+     cupsdSetString(&job->username, con->username);
+     if (attr)
+-      cupsdSetString(&attr->values[0].string.text, con->username);
++      ippSetString(job->attrs, &attr, 0, con->username);
+   }
+   else if (attr)
+   {
+@@ -1594,9 +1593,8 @@ add_job(cupsd_client_t  *con,            /* I - Cl
+                  "job-originating-user-name", NULL, job->username);
+   else
+   {
+-    attr->group_tag = IPP_TAG_JOB;
+-    _cupsStrFree(attr->name);
+-    attr->name = _cupsStrAlloc("job-originating-user-name");
++    ippSetGroupTag(job->attrs, &attr, IPP_TAG_JOB);
++    ippSetName(job->attrs, &attr, "job-originating-user-name");
+   }
+   if (con->username[0] || auth_info)
+@@ -1630,48 +1628,11 @@ add_job(cupsd_client_t  *con,          /* I - Cl
+       * Also, we can only have 1 value and it must be a name value.
+       */
+-      switch (attr->value_tag)
+-      {
+-        case IPP_TAG_STRING :
+-      case IPP_TAG_TEXTLANG :
+-      case IPP_TAG_NAMELANG :
+-      case IPP_TAG_TEXT :
+-      case IPP_TAG_NAME :
+-      case IPP_TAG_KEYWORD :
+-      case IPP_TAG_URI :
+-      case IPP_TAG_URISCHEME :
+-      case IPP_TAG_CHARSET :
+-      case IPP_TAG_LANGUAGE :
+-      case IPP_TAG_MIMETYPE :
+-         /*
+-          * Free old strings...
+-          */
+-
+-          for (i = 0; i < attr->num_values; i ++)
+-          {
+-            _cupsStrFree(attr->values[i].string.text);
+-            attr->values[i].string.text = NULL;
+-            if (attr->values[i].string.language)
+-            {
+-              _cupsStrFree(attr->values[i].string.language);
+-              attr->values[i].string.language = NULL;
+-            }
+-            }
+-
+-      default :
+-            break;
+-      }
+-
+-     /*
+-      * Use the default connection hostname instead...
+-      */
+-
+-      attr->value_tag             = IPP_TAG_NAME;
+-      attr->num_values            = 1;
+-      attr->values[0].string.text = _cupsStrAlloc(con->http.hostname);
++      ippDeleteAttribute(job->attrs, attr);
++      ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_NAME, "job-originating-host-name", NULL, con->http.hostname);
+     }
+-
+-    attr->group_tag = IPP_TAG_JOB;
++    else
++      ippSetGroupTag(job->attrs, &attr, IPP_TAG_JOB);
+   }
+   else
+   {
+@@ -1767,8 +1728,8 @@ add_job(cupsd_client_t  *con,            /* I - Cl
+       attr = ippAddStrings(job->attrs, IPP_TAG_JOB, IPP_TAG_NAME, "job-sheets",
+                            2, NULL, NULL);
+-      attr->values[0].string.text = _cupsStrRetain(printer->job_sheets[0]);
+-      attr->values[1].string.text = _cupsStrRetain(printer->job_sheets[1]);
++      ippSetString(job->attrs, &attr, 0, printer->job_sheets[0]);
++      ippSetString(job->attrs, &attr, 1, printer->job_sheets[1]);
+     }
+     job->job_sheets = attr;
+@@ -1794,7 +1755,7 @@ add_job(cupsd_client_t  *con,            /* I - Cl
+           * Force the leading banner to have the classification on it...
+         */
+-          cupsdSetString(&attr->values[0].string.text, Classification);
++          ippSetString(job->attrs, &attr, 0, Classification);
+         cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED "
+                                            "job-sheets=\"%s,none\", "
+@@ -1811,7 +1772,7 @@ add_job(cupsd_client_t  *con,            /* I - Cl
+         * Can't put two different security markings on the same document!
+         */
+-          cupsdSetString(&attr->values[1].string.text, attr->values[0].string.text);
++          ippSetString(job->attrs, &attr, 1, attr->values[0].string.text);
+         cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED "
+                                            "job-sheets=\"%s,%s\", "
+@@ -1851,18 +1812,18 @@ add_job(cupsd_client_t  *con,          /* I - Cl
+         if (attr->num_values > 1 &&
+           !strcmp(attr->values[0].string.text, attr->values[1].string.text))
+       {
+-          cupsdSetString(&(attr->values[0].string.text), Classification);
+-          cupsdSetString(&(attr->values[1].string.text), Classification);
++          ippSetString(job->attrs, &attr, 0, Classification);
++          ippSetString(job->attrs, &attr, 1, Classification);
+       }
+         else
+       {
+           if (attr->num_values == 1 ||
+             strcmp(attr->values[0].string.text, "none"))
+-            cupsdSetString(&(attr->values[0].string.text), Classification);
++            ippSetString(job->attrs, &attr, 0, Classification);
+           if (attr->num_values > 1 &&
+             strcmp(attr->values[1].string.text, "none"))
+-            cupsdSetString(&(attr->values[1].string.text), Classification);
++          ippSetString(job->attrs, &attr, 1, Classification);
+         }
+         if (attr->num_values > 1)
+@@ -3098,8 +3059,8 @@ authenticate_job(cupsd_client_t  *con,   /
+   if (attr)
+   {
+-    attr->value_tag = IPP_TAG_KEYWORD;
+-    cupsdSetString(&(attr->values[0].string.text), "no-hold");
++    ippSetValueTag(job->attrs, &attr, IPP_TAG_KEYWORD);
++    ippSetString(job->attrs, &attr, 0, "no-hold");
+   }
+  /*
+@@ -8224,11 +8185,7 @@ print_job(cupsd_client_t  *con,         /* I -
+              filetype->type);
+     if (format)
+-    {
+-      _cupsStrFree(format->values[0].string.text);
+-
+-      format->values[0].string.text = _cupsStrAlloc(mimetype);
+-    }
++      ippSetString(con->request, &format, 0, mimetype);
+     else
+       ippAddString(con->request, IPP_TAG_JOB, IPP_TAG_MIMETYPE,
+                  "document-format", NULL, mimetype);
+@@ -8765,10 +8722,8 @@ release_job(cupsd_client_t  *con,       /* I -
+   if (attr)
+   {
+-    _cupsStrFree(attr->values[0].string.text);
+-
+-    attr->value_tag = IPP_TAG_KEYWORD;
+-    attr->values[0].string.text = _cupsStrAlloc("no-hold");
++    ippSetValueTag(job->attrs, &attr, IPP_TAG_KEYWORD);
++    ippSetString(job->attrs, &attr, 0, "no-hold");
+     cupsdAddEvent(CUPSD_EVENT_JOB_CONFIG_CHANGED, cupsdFindDest(job->dest), job,
+                   "Job job-hold-until value changed by user.");
+@@ -9461,11 +9416,7 @@ send_document(cupsd_client_t  *con,     /* I
+     if ((jformat = ippFindAttribute(job->attrs, "document-format",
+                                     IPP_TAG_MIMETYPE)) != NULL)
+-    {
+-      _cupsStrFree(jformat->values[0].string.text);
+-
+-      jformat->values[0].string.text = _cupsStrAlloc(mimetype);
+-    }
++      ippSetString(job->attrs, &jformat, 0, mimetype);
+     else
+       ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_MIMETYPE,
+                  "document-format", NULL, mimetype);
+diff -up cups-1.7.5/scheduler/job.c.str4609 cups-1.7.5/scheduler/job.c
+--- cups-1.7.5/scheduler/job.c.str4609 2015-06-10 10:31:45.288965374 +0200
++++ cups-1.7.5/scheduler/job.c 2015-06-10 10:31:45.299965339 +0200
+@@ -375,7 +375,7 @@ cupsdCheckJobs(void)
+           if ((attr = ippFindAttribute(job->attrs, "job-actual-printer-uri",
+                                      IPP_TAG_URI)) != NULL)
+-            cupsdSetString(&attr->values[0].string.text, printer->uri);
++            ippSetString(job->attrs, &attr, 0, printer->uri);
+         else
+           ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_URI,
+                        "job-actual-printer-uri", NULL, printer->uri);
+@@ -2109,7 +2109,7 @@ cupsdMoveJob(cupsd_job_t     *job,       /* I
+   if ((attr = ippFindAttribute(job->attrs, "job-printer-uri",
+                                IPP_TAG_URI)) != NULL)
+-    cupsdSetString(&(attr->values[0].string.text), p->uri);
++    ippSetString(job->attrs, &attr, 0, p->uri);
+   cupsdAddEvent(CUPSD_EVENT_JOB_STOPPED, p, job,
+                 "Job #%d moved from %s to %s.", job->id, olddest,
+@@ -2306,7 +2306,7 @@ cupsdSetJobHoldUntil(cupsd_job_t *job,   /
+       attr = ippFindAttribute(job->attrs, "job-hold-until", IPP_TAG_NAME);
+     if (attr)
+-      cupsdSetString(&(attr->values[0].string.text), when);
++      ippSetString(job->attrs, &attr, 0, when);
+     else
+       attr = ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_KEYWORD,
+                           "job-hold-until", NULL, when);
+@@ -2560,8 +2560,8 @@ cupsdSetJobState(
+       if (attr)
+       {
+-        attr->value_tag = IPP_TAG_KEYWORD;
+-        cupsdSetString(&(attr->values[0].string.text), "no-hold");
++        ippSetValueTag(job->attrs, &attr, IPP_TAG_KEYWORD);
++        ippSetString(job->attrs, &attr, 0, "no-hold");
+       }
+     default :
+@@ -4598,7 +4598,7 @@ start_job(cupsd_job_t     *job,          /* I -
+                                             "job-printer-state-message",
+                                             IPP_TAG_TEXT);
+   if (job->printer_message)
+-    cupsdSetString(&(job->printer_message->values[0].string.text), "");
++    ippSetString(job->attrs, &job->printer_message, 0, "");
+   ippSetString(job->attrs, &job->reasons, 0, "job-printing");
+   cupsdSetJobState(job, IPP_JOB_PROCESSING, CUPSD_JOB_DEFAULT, NULL);
+@@ -5216,15 +5216,14 @@ update_job_attrs(cupsd_job_t *job,     /* I
+   if (job->state_value != IPP_JOB_PROCESSING &&
+       job->status_level == CUPSD_LOG_INFO)
+   {
+-    cupsdSetString(&(job->printer_message->values[0].string.text), "");
++    ippSetString(job->attrs, &job->printer_message, 0, "");
+     job->dirty = 1;
+     cupsdMarkDirty(CUPSD_DIRTY_JOBS);
+   }
+   else if (job->printer->state_message[0] && do_message)
+   {
+-    cupsdSetString(&(job->printer_message->values[0].string.text),
+-                 job->printer->state_message);
++    ippSetString(job->attrs, &job->printer_message, 0, job->printer->state_message);
+     job->dirty = 1;
+     cupsdMarkDirty(CUPSD_DIRTY_JOBS);
+diff -up cups-1.7.5/scheduler/main.c.str4609 cups-1.7.5/scheduler/main.c
+--- cups-1.7.5/scheduler/main.c.str4609        2015-06-10 10:31:45.265965447 +0200
++++ cups-1.7.5/scheduler/main.c        2015-06-10 10:31:45.300965335 +0200
+@@ -1205,8 +1205,8 @@ cupsdAddString(cups_array_t **a, /* IO -
+   if (!*a)
+     *a = cupsArrayNew3((cups_array_func_t)strcmp, NULL,
+                      (cups_ahash_func_t)NULL, 0,
+-                     (cups_acopy_func_t)_cupsStrAlloc,
+-                     (cups_afree_func_t)_cupsStrFree);
++                     (cups_acopy_func_t)strdup,
++                     (cups_afree_func_t)free);
+   return (cupsArrayAdd(*a, (char *)s));
+ }
+@@ -1236,7 +1236,7 @@ cupsdClearString(char **s)               /* O - Strin
+ {
+   if (s && *s)
+   {
+-    _cupsStrFree(*s);
++    free(*s);
+     *s = NULL;
+   }
+ }
+@@ -1317,10 +1317,10 @@ cupsdSetString(char       **s,         /* O - N
+     return;
+   if (*s)
+-    _cupsStrFree(*s);
++    free(*s);
+   if (v)
+-    *s = _cupsStrAlloc(v);
++    *s = strdup(v);
+   else
+     *s = NULL;
+ }
+@@ -1351,13 +1351,13 @@ cupsdSetStringf(char       **s,                /* O -
+     vsnprintf(v, sizeof(v), f, ap);
+     va_end(ap);
+-    *s = _cupsStrAlloc(v);
++    *s = strdup(v);
+   }
+   else
+     *s = NULL;
+   if (olds)
+-    _cupsStrFree(olds);
++    free(olds);
+ }
+@@ -1804,8 +1804,7 @@ process_children(void)
+           }
+           if (job->printer_message)
+-            cupsdSetString(&(job->printer_message->values[0].string.text),
+-                           message);
++            ippSetString(job->attrs, &job->printer_message, 0, message);
+         }
+       }
diff --git a/src/patches/ddns/ddns-005-Add-changeip-com.patch b/src/patches/ddns/ddns-005-Add-changeip-com.patch
deleted file mode 100644 (file)
index 15bcd46..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-commit 78046ffe2187d91c61d6c2f910249b8a5be71b08
-Author: Stefan Schantl <stefan.schantl@ipfire.org>
-Date:   Wed Oct 22 21:39:09 2014 +0200
-
-    Add changeip.com as new provider.
-    
-    Fixes #10639.
-
-diff --git a/README b/README
-index 5944102..6a06f4b 100644
---- a/README
-+++ b/README
-@@ -49,6 +49,7 @@ INSTALLATION:
- SUPPORTED PROVIDERS:
-       all-inkl.com
-+      changeip.com
-       dhs.org
-       dns.lightningwirelabs.com
-       dnspark.com
-diff --git a/ddns.conf.sample b/ddns.conf.sample
-index d3ac53f..0048a46 100644
---- a/ddns.conf.sample
-+++ b/ddns.conf.sample
-@@ -30,6 +30,11 @@
- # secret = XYZ
- # ttl = 60
-+# [test.changeip.com]
-+# provider = changeip.com
-+# username = user
-+# password = pass
-+
- # [test.dhs.org]
- # provider = dhs.org
- # username = user
-diff --git a/src/ddns/providers.py b/src/ddns/providers.py
-index 1e88995..587d5ff 100644
---- a/src/ddns/providers.py
-+++ b/src/ddns/providers.py
-@@ -539,6 +539,44 @@ class DDNSProviderBindNsupdate(DDNSProvider):
-               return "\n".join(scriptlet)
-+class DDNSProviderChangeIP(DDNSProvider):
-+      handle    = "changeip.com"
-+      name      = "ChangeIP.com"
-+      website   = "https://changeip.com"
-+      protocols = ("ipv4",)
-+
-+      # Detailed information about the update api can be found here.
-+      # http://www.changeip.com/accounts/knowledgebase.php?action=displayarticle&id=34
-+
-+      url = "https://nic.changeip.com/nic/update"
-+      can_remove_records = False
-+
-+      def update_protocol(self, proto):
-+              data = {
-+                      "hostname" : self.hostname,
-+                      "myip"     : self.get_address(proto),
-+              }
-+
-+              # Send update to the server.
-+              try:
-+                      response = self.send_request(self.url, username=self.username, password=self.password,
-+                              data=data)
-+
-+              # Handle error codes.
-+              except urllib2.HTTPError, e:
-+                      if e.code == 422:
-+                              raise DDNSRequestError(_("Domain not found."))
-+
-+                      raise
-+
-+              # Handle success message.
-+              if response.code == 200:
-+                      return
-+
-+              # If we got here, some other update error happened.
-+              raise DDNSUpdateError(_("Server response: %s") % output)
-+
-+
- class DDNSProviderDHS(DDNSProvider):
-       handle    = "dhs.org"
-       name      = "DHS International"
diff --git a/src/patches/ddns/ddns-005-SPDNS-fix-auth.patch b/src/patches/ddns/ddns-005-SPDNS-fix-auth.patch
deleted file mode 100644 (file)
index 1d91baa..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-commit 25f39b4e437627bd1a49393280271d59ad28b86e
-Author: Stefan Schantl <stefan.schantl@ipfire.org>
-Date:   Mon Jan 5 21:37:55 2015 +0100
-
-    spdns.de: Fix authentication.
-    
-    There was a simple copy and paste issue which prevents a
-    correct authentication with username and password against the
-    providers API.
-
-diff --git a/src/ddns/providers.py b/src/ddns/providers.py
-index 587d5ff..bcfb088 100644
---- a/src/ddns/providers.py
-+++ b/src/ddns/providers.py
-@@ -1271,7 +1271,7 @@ class DDNSProviderSPDNS(DDNSProtocolDynDNS2, DDNSProvider):
-       @property
-       def password(self):
--              return self.get("username") or self.token
-+              return self.get("password") or self.token
- class DDNSProviderStrato(DDNSProtocolDynDNS2, DDNSProvider):
diff --git a/src/patches/dma-0.10-better-authentication.patch b/src/patches/dma-0.10-better-authentication.patch
new file mode 100644 (file)
index 0000000..596168d
--- /dev/null
@@ -0,0 +1,373 @@
+From 1fa7a882dd22d5f619b3645c6597a419034e9b4e Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Mon, 9 Nov 2015 21:52:08 +0000
+Subject: [PATCH] Implement better authentication
+
+DMA tries to authenticate by simply trying various authentication
+mechanisms. This is obviously not conforming to RFC and some mail
+providers detect this is spam and reject all emails.
+
+This patch parses the EHLO response and reads various keywords
+from it that can then later in the program be used to jump into
+certain code paths.
+
+Currently this is used to only authenticate with CRAM-MD5 and/or
+LOGIN if the server supports one or both of these. The
+implementation can be easily be extended though.
+
+Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
+---
+ crypto.c |   6 +-
+ dma.h    |  13 +++-
+ net.c    | 219 +++++++++++++++++++++++++++++++++++++++++++++++----------------
+ 3 files changed, 181 insertions(+), 57 deletions(-)
+
+diff --git a/crypto.c b/crypto.c
+index 897b55b..8048f20 100644
+--- a/crypto.c
++++ b/crypto.c
+@@ -77,7 +77,7 @@ init_cert_file(SSL_CTX *ctx, const char *path)
+ }
+ int
+-smtp_init_crypto(int fd, int feature)
++smtp_init_crypto(int fd, int feature, struct smtp_features* features)
+ {
+       SSL_CTX *ctx = NULL;
+ #if (OPENSSL_VERSION_NUMBER >= 0x00909000L)
+@@ -118,8 +118,7 @@ smtp_init_crypto(int fd, int feature)
+               /* TLS init phase, disable SSL_write */
+               config.features |= NOSSL;
+-              send_remote_command(fd, "EHLO %s", hostname());
+-              if (read_remote(fd, 0, NULL) == 2) {
++              if (perform_server_greeting(fd, features) == 0) {
+                       send_remote_command(fd, "STARTTLS");
+                       if (read_remote(fd, 0, NULL) != 2) {
+                               if ((feature & TLS_OPP) == 0) {
+@@ -131,6 +130,7 @@ smtp_init_crypto(int fd, int feature)
+                               }
+                       }
+               }
++
+               /* End of TLS init phase, enable SSL_write/read */
+               config.features &= ~NOSSL;
+       }
+diff --git a/dma.h b/dma.h
+index acf5e44..ee749d8 100644
+--- a/dma.h
++++ b/dma.h
+@@ -51,6 +51,7 @@
+ #define BUF_SIZE      2048
+ #define ERRMSG_SIZE   200
+ #define USERNAME_SIZE 50
++#define EHLO_RESPONSE_SIZE BUF_SIZE
+ #define MIN_RETRY     300             /* 5 minutes */
+ #define MAX_RETRY     (3*60*60)       /* retry at least every 3 hours */
+ #define MAX_TIMEOUT   (5*24*60*60)    /* give up after 5 days */
+@@ -160,6 +161,15 @@ struct mx_hostentry {
+       struct sockaddr_storage sa;
+ };
++struct smtp_auth_mechanisms {
++      int cram_md5;
++      int login;
++};
++
++struct smtp_features {
++      struct smtp_auth_mechanisms auth;
++      int starttls;
++};
+ /* global variables */
+ extern struct aliases aliases;
+@@ -187,7 +197,7 @@ void parse_authfile(const char *);
+ /* crypto.c */
+ void hmac_md5(unsigned char *, int, unsigned char *, int, unsigned char *);
+ int smtp_auth_md5(int, char *, char *);
+-int smtp_init_crypto(int, int);
++int smtp_init_crypto(int, int, struct smtp_features*);
+ /* dns.c */
+ int dns_get_mx_list(const char *, int, struct mx_hostentry **, int);
+@@ -196,6 +206,7 @@ int dns_get_mx_list(const char *, int, struct mx_hostentry **, int);
+ char *ssl_errstr(void);
+ int read_remote(int, int, char *);
+ ssize_t send_remote_command(int, const char*, ...)  __attribute__((__nonnull__(2), __format__ (__printf__, 2, 3)));
++int perform_server_greeting(int, struct smtp_features*);
+ int deliver_remote(struct qitem *);
+ /* base64.c */
+diff --git a/net.c b/net.c
+index 26935a8..33ff8f5 100644
+--- a/net.c
++++ b/net.c
+@@ -247,64 +247,70 @@ read_remote(int fd, int extbufsize, char *extbuf)
+  * Handle SMTP authentication
+  */
+ static int
+-smtp_login(int fd, char *login, char* password)
++smtp_login(int fd, char *login, char* password, const struct smtp_features* features)
+ {
+       char *temp;
+       int len, res = 0;
+-      res = smtp_auth_md5(fd, login, password);
+-      if (res == 0) {
+-              return (0);
+-      } else if (res == -2) {
+-      /*
+-       * If the return code is -2, then then the login attempt failed,
+-       * do not try other login mechanisms
+-       */
+-              return (1);
+-      }
+-
+-      if ((config.features & INSECURE) != 0 ||
+-          (config.features & SECURETRANS) != 0) {
+-              /* Send AUTH command according to RFC 2554 */
+-              send_remote_command(fd, "AUTH LOGIN");
+-              if (read_remote(fd, 0, NULL) != 3) {
+-                      syslog(LOG_NOTICE, "remote delivery deferred:"
+-                                      " AUTH login not available: %s",
+-                                      neterr);
++      // CRAM-MD5
++      if (features->auth.cram_md5) {
++              res = smtp_auth_md5(fd, login, password);
++              if (res == 0) {
++                      return (0);
++              } else if (res == -2) {
++              /*
++               * If the return code is -2, then then the login attempt failed,
++               * do not try other login mechanisms
++               */
+                       return (1);
+               }
++      }
+-              len = base64_encode(login, strlen(login), &temp);
+-              if (len < 0) {
++      // LOGIN
++      if (features->auth.login) {
++              if ((config.features & INSECURE) != 0 ||
++                  (config.features & SECURETRANS) != 0) {
++                      /* Send AUTH command according to RFC 2554 */
++                      send_remote_command(fd, "AUTH LOGIN");
++                      if (read_remote(fd, 0, NULL) != 3) {
++                              syslog(LOG_NOTICE, "remote delivery deferred:"
++                                              " AUTH login not available: %s",
++                                              neterr);
++                              return (1);
++                      }
++
++                      len = base64_encode(login, strlen(login), &temp);
++                      if (len < 0) {
+ encerr:
+-                      syslog(LOG_ERR, "can not encode auth reply: %m");
+-                      return (1);
+-              }
++                              syslog(LOG_ERR, "can not encode auth reply: %m");
++                              return (1);
++                      }
+-              send_remote_command(fd, "%s", temp);
+-              free(temp);
+-              res = read_remote(fd, 0, NULL);
+-              if (res != 3) {
+-                      syslog(LOG_NOTICE, "remote delivery %s: AUTH login failed: %s",
+-                             res == 5 ? "failed" : "deferred", neterr);
+-                      return (res == 5 ? -1 : 1);
+-              }
++                      send_remote_command(fd, "%s", temp);
++                      free(temp);
++                      res = read_remote(fd, 0, NULL);
++                      if (res != 3) {
++                              syslog(LOG_NOTICE, "remote delivery %s: AUTH login failed: %s",
++                                     res == 5 ? "failed" : "deferred", neterr);
++                              return (res == 5 ? -1 : 1);
++                      }
+-              len = base64_encode(password, strlen(password), &temp);
+-              if (len < 0)
+-                      goto encerr;
+-
+-              send_remote_command(fd, "%s", temp);
+-              free(temp);
+-              res = read_remote(fd, 0, NULL);
+-              if (res != 2) {
+-                      syslog(LOG_NOTICE, "remote delivery %s: Authentication failed: %s",
+-                                      res == 5 ? "failed" : "deferred", neterr);
+-                      return (res == 5 ? -1 : 1);
++                      len = base64_encode(password, strlen(password), &temp);
++                      if (len < 0)
++                              goto encerr;
++
++                      send_remote_command(fd, "%s", temp);
++                      free(temp);
++                      res = read_remote(fd, 0, NULL);
++                      if (res != 2) {
++                              syslog(LOG_NOTICE, "remote delivery %s: Authentication failed: %s",
++                                              res == 5 ? "failed" : "deferred", neterr);
++                              return (res == 5 ? -1 : 1);
++                      }
++              } else {
++                      syslog(LOG_WARNING, "non-encrypted SMTP login is disabled in config, so skipping it. ");
++                      return (1);
+               }
+-      } else {
+-              syslog(LOG_WARNING, "non-encrypted SMTP login is disabled in config, so skipping it. ");
+-              return (1);
+       }
+       return (0);
+@@ -348,10 +354,115 @@ close_connection(int fd)
+       close(fd);
+ }
++static void parse_auth_line(char* line, struct smtp_auth_mechanisms* auth) {
++      // Skip the auth prefix
++      line += strlen("AUTH ");
++
++      char* method = strtok(line, " ");
++      while (method) {
++              if (strcmp(method, "CRAM-MD5") == 0)
++                      auth->cram_md5 = 1;
++
++              else if (strcmp(method, "LOGIN") == 0)
++                      auth->login = 1;
++
++              method = strtok(NULL, " ");
++      }
++}
++
++int perform_server_greeting(int fd, struct smtp_features* features) {
++      /*
++              Send EHLO
++              XXX allow HELO fallback
++      */
++      send_remote_command(fd, "EHLO %s", hostname());
++
++      char buffer[EHLO_RESPONSE_SIZE];
++      memset(buffer, 0, sizeof(buffer));
++
++      int res = read_remote(fd, sizeof(buffer) - 1, buffer);
++
++      // Got an unexpected response
++      if (res != 2)
++              return -1;
++
++      // Reset all features
++      memset(features, 0, sizeof(*features));
++
++      // Run through the buffer line by line
++      char linebuffer[EHLO_RESPONSE_SIZE];
++      char* p = buffer;
++
++      while (*p) {
++              char* line = linebuffer;
++              while (*p && *p != '\n') {
++                      *line++ = *p++;
++              }
++
++              // p should never point to NULL after the loop
++              // above unless we reached the end of the buffer.
++              // In that case we will raise an error.
++              if (!*p) {
++                      return -1;
++              }
++
++              // Otherwise p points to the newline character which
++              // we will skip.
++              p++;
++
++              // Terminte the string (and remove the carriage-return character)
++              *--line = '\0';
++              line = linebuffer;
++
++              // End main loop for empty lines
++              if (*line == '\0')
++                      break;
++
++              // Process the line
++              // - Must start with 250, followed by dash or space
++              // - We won't check for the correct usage of space and dash because
++              //    that is already done in read_remote().
++              if ((strncmp(line, "250-", 4) != 0) && (strncmp(line, "250 ", 4) != 0)) {
++                      syslog(LOG_ERR, "Invalid line: %s\n", line);
++                      return -1;
++              }
++
++              // Skip the prefix
++              line += 4;
++
++              // Check for STARTTLS
++              if (strcmp(line, "STARTTLS") == 0)
++                      features->starttls = 1;
++
++              // Parse authentication mechanisms
++              else if (strncmp(line, "AUTH ", 5) == 0)
++                      parse_auth_line(line, &features->auth);
++      }
++
++      syslog(LOG_DEBUG, "Server greeting successfully completed");
++
++      // STARTTLS
++      if (features->starttls)
++              syslog(LOG_DEBUG, "  Server supports STARTTLS");
++      else
++              syslog(LOG_DEBUG, "  Server does not support STARTTLS");
++
++      // Authentication
++      if (features->auth.cram_md5) {
++              syslog(LOG_DEBUG, "  Server supports CRAM-MD5 authentication");
++      }
++      if (features->auth.login) {
++              syslog(LOG_DEBUG, "  Server supports LOGIN authentication");
++      }
++
++      return 0;
++}
++
+ static int
+ deliver_to_host(struct qitem *it, struct mx_hostentry *host)
+ {
+       struct authuser *a;
++      struct smtp_features features;
+       char line[1000];
+       size_t linelen;
+       int fd, error = 0, do_auth = 0, res = 0;
+@@ -389,7 +500,7 @@ deliver_to_host(struct qitem *it, struct mx_hostentry *host)
+       }
+       if ((config.features & SECURETRANS) != 0) {
+-              error = smtp_init_crypto(fd, config.features);
++              error = smtp_init_crypto(fd, config.features, &features);
+               if (error == 0)
+                       syslog(LOG_DEBUG, "SSL initialization successful");
+               else
+@@ -399,10 +510,12 @@ deliver_to_host(struct qitem *it, struct mx_hostentry *host)
+                       READ_REMOTE_CHECK("connect", 2);
+       }
+-      /* XXX allow HELO fallback */
+-      /* XXX record ESMTP keywords */
+-      send_remote_command(fd, "EHLO %s", hostname());
+-      READ_REMOTE_CHECK("EHLO", 2);
++      // Say EHLO
++      if (perform_server_greeting(fd, &features) != 0) {
++              syslog(LOG_ERR, "Could not perform server greeting at %s [%s]: %s",
++                      host->host, host->addr, neterr);
++              return -1;
++      }
+       /*
+        * Use SMTP authentication if the user defined an entry for the remote
+@@ -421,7 +534,7 @@ deliver_to_host(struct qitem *it, struct mx_hostentry *host)
+                * encryption.
+                */
+               syslog(LOG_INFO, "using SMTP authentication for user %s", a->login);
+-              error = smtp_login(fd, a->login, a->password);
++              error = smtp_login(fd, a->login, a->password, &features);
+               if (error < 0) {
+                       syslog(LOG_ERR, "remote delivery failed:"
+                                       " SMTP login failed: %m");
index 1a89b36d36663931da3d503f18b6572bbe1a9e4a..f55ebe81e1485ba0cce65047705f1cc0dfd2a6f7 100644 (file)
@@ -1,20 +1,5 @@
-diff --git a/Makefile b/Makefile
-index 2910320b6452..0a76ce3c5154 100644
---- a/Makefile
-+++ b/Makefile
-@@ -73,7 +73,7 @@ objs = cache.o rfc1035.o util.o option.o forward.o network.o \
-        dnsmasq.o dhcp.o lease.o rfc2131.o netlink.o dbus.o bpf.o \
-        helper.o tftp.o log.o conntrack.o dhcp6.o rfc3315.o \
-        dhcp-common.o outpacket.o radv.o slaac.o auth.o ipset.o \
--       domain.o dnssec.o blockdata.o tables.o loop.o inotify.o
-+       domain.o dnssec.o blockdata.o tables.o loop.o inotify.o isc.o
- hdrs = dnsmasq.h config.h dhcp-protocol.h dhcp6-protocol.h \
-        dns-protocol.h radv-protocol.h ip6addr.h
-diff --git a/src/cache.c b/src/cache.c
-index 117ae279fd4e..6ee7ee362e6c 100644
---- a/src/cache.c
-+++ b/src/cache.c
+--- a/src/cache.c      Wed Dec 16 19:24:12 2015
++++ b/src/cache.c      Wed Dec 16 19:37:37 2015
 @@ -17,7 +17,7 @@
  #include "dnsmasq.h"
  
@@ -24,7 +9,7 @@ index 117ae279fd4e..6ee7ee362e6c 100644
  static struct crec *dhcp_spare = NULL;
  #endif
  static struct crec *new_chain = NULL;
-@@ -222,6 +222,9 @@ static void cache_free(struct crec *crecp)
+@@ -217,6 +217,9 @@
        crecp->flags &= ~F_BIGNAME;
      }
  
@@ -34,7 +19,7 @@ index 117ae279fd4e..6ee7ee362e6c 100644
  #ifdef HAVE_DNSSEC
    cache_blockdata_free(crecp);
  #endif
-@@ -1151,7 +1154,7 @@ void cache_reload(void)
+@@ -1131,7 +1134,7 @@
    
  } 
  
@@ -43,16 +28,7 @@ index 117ae279fd4e..6ee7ee362e6c 100644
  struct in_addr a_record_from_hosts(char *name, time_t now)
  {
    struct crec *crecp = NULL;
-@@ -1229,7 +1232,7 @@ void cache_add_dhcp_entry(char *host_name, int prot,
-       addrlen = sizeof(struct in6_addr);
-     }
- #endif
--  
-+
-   inet_ntop(prot, host_address, daemon->addrbuff, ADDRSTRLEN);
-   
-   while ((crec = cache_find_by_name(crec, host_name, 0, flags | F_CNAME)))
-@@ -1294,7 +1297,11 @@ void cache_add_dhcp_entry(char *host_name, int prot,
+@@ -1274,7 +1277,11 @@
        else
        crec->ttd = ttd;
        crec->addr.addr = *host_address;
@@ -64,11 +40,9 @@ index 117ae279fd4e..6ee7ee362e6c 100644
        crec->uid = next_uid();
        cache_hash(crec);
  
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index e903a24c8105..eefc7f939933 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -970,6 +970,11 @@ int main (int argc, char **argv)
+--- a/src/dnsmasq.c    Thu Jul 30 20:59:06 2015
++++ b/src/dnsmasq.c    Wed Dec 16 19:38:32 2015
+@@ -982,6 +982,11 @@
  
          poll_resolv(0, daemon->last_resolv != 0, now);          
          daemon->last_resolv = now;
@@ -80,24 +54,24 @@ index e903a24c8105..eefc7f939933 100644
        }
  #endif
  
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 89e758b56a0a..c5edd6fdf7f5 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -1502,3 +1502,8 @@ void inotify_dnsmasq_init();
- int inotify_check(time_t now);
- void set_dynamic_inotify(int flag, int total_size, struct crec **rhash, int revhashsz);
- #endif
-+
+--- a/src/dnsmasq.h    Wed Dec 16 19:24:12 2015
++++ b/src/dnsmasq.h    Wed Dec 16 19:40:11 2015
+@@ -1513,8 +1513,12 @@
+ void poll_listen(int fd, short event);
+ int do_poll(int timeout);
 +/* isc.c */
 +#ifdef HAVE_ISC_READER
 +void load_dhcp(time_t now);
 +#endif
-diff --git a/src/isc.c b/src/isc.c
-new file mode 100644
-index 000000000000..51064426f17f
---- /dev/null
-+++ b/src/isc.c
++
+ /* rrfilter.c */
+ size_t rrfilter(struct dns_header *header, size_t plen, int mode);
+ u16 *rrfilter_desc(int type);
+ int expand_workspace(unsigned char ***wkspc, int *szp, int new);
+-
+--- /dev/null  Wed Dec 16 19:48:08 2015
++++ b/src/isc.c        Wed Dec 16 19:41:35 2015
 @@ -0,0 +1,251 @@
 +/* dnsmasq is Copyright (c) 2014 John Volpe, Simon Kelley and
 +     Michael Tremer
@@ -350,11 +324,9 @@ index 000000000000..51064426f17f
 +}
 +
 +#endif
-diff --git a/src/option.c b/src/option.c
-index cb4e76ba0aa2..f6420fcbb7ab 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -1693,7 +1693,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
+--- a/src/option.c     Wed Dec 16 19:24:12 2015
++++ b/src/option.c     Wed Dec 16 19:42:48 2015
+@@ -1754,7 +1754,7 @@
        ret_err(_("bad MX target"));
        break;
  
@@ -363,3 +335,14 @@ index cb4e76ba0aa2..f6420fcbb7ab 100644
      case 'l':  /* --dhcp-leasefile */
        daemon->lease_file = opt_string_alloc(arg);
        break;
+--- a/Makefile Wed Dec 16 19:24:12 2015
++++ b/Makefile Wed Dec 16 19:28:45 2015
+@@ -74,7 +74,7 @@
+        helper.o tftp.o log.o conntrack.o dhcp6.o rfc3315.o \
+        dhcp-common.o outpacket.o radv.o slaac.o auth.o ipset.o \
+        domain.o dnssec.o blockdata.o tables.o loop.o inotify.o \
+-       poll.o rrfilter.o
++       poll.o rrfilter.o isc.o
+ hdrs = dnsmasq.h config.h dhcp-protocol.h dhcp6-protocol.h \
+        dns-protocol.h radv-protocol.h ip6addr.h
diff --git a/src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch b/src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch
deleted file mode 100644 (file)
index a9d5a92..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-From f2658275b25ebfe691cdcb9fede85a3088cca168 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 25 Sep 2014 21:51:25 +0100
-Subject: [PATCH 01/78] Add newline at the end of example config file.
-
----
- dnsmasq.conf.example | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/dnsmasq.conf.example b/dnsmasq.conf.example
-index 83924fc4a9b4..6b00bd34fbb5 100644
---- a/dnsmasq.conf.example
-+++ b/dnsmasq.conf.example
-@@ -645,4 +645,4 @@
- #conf-dir=/etc/dnsmasq.d,.bak
- # Include all files in a directory which end in .conf
--#conf-dir=/etc/dnsmasq.d/*.conf
-\ No newline at end of file
-+#conf-dir=/etc/dnsmasq.d/*.conf
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch b/src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch
deleted file mode 100644 (file)
index a4041ea..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-From 00cd9d551998307225312fd21f761cfa8868bd2c Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 2 Oct 2014 21:44:21 +0100
-Subject: [PATCH 02/78] crash at startup when an empty suffix is supplied to
- --conf-dir
-
----
- CHANGELOG    |  6 ++++++
- src/option.c | 38 +++++++++++++++++++++++---------------
- 2 files changed, 29 insertions(+), 15 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 768e2aaca42a..13ab41c05fc3 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -1,3 +1,9 @@
-+version 2.73
-+            Fix crash at startup when an empty suffix is supplied to
-+          --conf-dir, also trivial memory leak. Thanks to 
-+          Tomas Hozza for spotting this.
-+      
-+
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/src/option.c b/src/option.c
-index 45d8875fb7f9..b08e98e16f84 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -1474,22 +1474,25 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-       for (arg = comma; arg; arg = comma) 
-         {
-           comma = split(arg);
--          li = opt_malloc(sizeof(struct list));
--          if (*arg == '*')
-+          if (strlen(arg) != 0)
-             {
--              li->next = match_suffix;
--              match_suffix = li;
--              /* Have to copy: buffer is overwritten */
--              li->suffix = opt_string_alloc(arg+1);
--            }
--          else
--            {
--              li->next = ignore_suffix;
--              ignore_suffix = li;
--              /* Have to copy: buffer is overwritten */
--              li->suffix = opt_string_alloc(arg);
-+              li = opt_malloc(sizeof(struct list));
-+              if (*arg == '*')
-+                {
-+                  li->next = match_suffix;
-+                  match_suffix = li;
-+                  /* Have to copy: buffer is overwritten */
-+                  li->suffix = opt_string_alloc(arg+1);
-+                }
-+              else
-+                {
-+                  li->next = ignore_suffix;
-+                  ignore_suffix = li;
-+                  /* Have to copy: buffer is overwritten */
-+                  li->suffix = opt_string_alloc(arg);
-+                }
-             }
--        };
-+        }
-       
-       if (!(dir_stream = opendir(directory)))
-         die(_("cannot access directory %s: %s"), directory, EC_FILE);
-@@ -1555,7 +1558,12 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-           free(ignore_suffix->suffix);
-           free(ignore_suffix);
-         }
--            
-+      for(; match_suffix; match_suffix = li)
-+        {
-+          li = match_suffix->next;
-+          free(match_suffix->suffix);
-+          free(match_suffix);
-+        }    
-       break;
-       }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch b/src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch
deleted file mode 100644 (file)
index ca62340..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From 6ac3bc0452a74e16e3d620a0757b0f8caab182ec Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Fri, 3 Oct 2014 08:48:11 +0100
-Subject: [PATCH 03/78] Debian build fixes for kFreeBSD
-
----
- src/tables.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/src/tables.c b/src/tables.c
-index 834f11944cd0..dcdef794c4d2 100644
---- a/src/tables.c
-+++ b/src/tables.c
-@@ -20,6 +20,10 @@
- #if defined(HAVE_IPSET) && defined(HAVE_BSD_NETWORK)
-+#ifndef __FreeBSD__
-+#include <bsd/string.h>
-+#endif
-+
- #include <sys/types.h>
- #include <sys/ioctl.h>
-@@ -136,7 +140,7 @@ int add_to_ipset(const char *setname, const struct all_addr *ipaddr,
-       return -1;
-     }
-   
--  if (rc = pfr_add_tables(&table, 1, &n, 0)) 
-+  if ((rc = pfr_add_tables(&table, 1, &n, 0))) 
-     {
-       my_syslog(LOG_WARNING, _("warning: pfr_add_tables: %s(%d)"),
-               pfr_strerror(errno),rc);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch b/src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch
deleted file mode 100644 (file)
index 2504e62..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-From e9828b6f66b22ce8873f8d30a773137d1aef1b92 Mon Sep 17 00:00:00 2001
-From: Karl Vogel <karl.vogel@gmail.com>
-Date: Fri, 3 Oct 2014 21:45:15 +0100
-Subject: [PATCH 04/78] Set conntrack mark before connect() call.
-
-SO_MARK has to be done before issuing the connect() call on the
-TCP socket.
----
- src/forward.c | 36 ++++++++++++++++++------------------
- 1 file changed, 18 insertions(+), 18 deletions(-)
-
-diff --git a/src/forward.c b/src/forward.c
-index 4895efeba89a..2cf29eba6e26 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -1796,6 +1796,24 @@ unsigned char *tcp_request(int confd, time_t now,
-                         if ((last_server->tcpfd = socket(last_server->addr.sa.sa_family, SOCK_STREAM, 0)) == -1)
-                           continue;
-                         
-+#ifdef HAVE_CONNTRACK
-+                        /* Copy connection mark of incoming query to outgoing connection. */
-+                        if (option_bool(OPT_CONNTRACK))
-+                          {
-+                            unsigned int mark;
-+                            struct all_addr local;
-+#ifdef HAVE_IPV6                    
-+                            if (local_addr->sa.sa_family == AF_INET6)
-+                              local.addr.addr6 = local_addr->in6.sin6_addr;
-+                            else
-+#endif
-+                              local.addr.addr4 = local_addr->in.sin_addr;
-+                            
-+                            if (get_incoming_mark(&peer_addr, &local, 1, &mark))
-+                              setsockopt(last_server->tcpfd, SOL_SOCKET, SO_MARK, &mark, sizeof(unsigned int));
-+                          }
-+#endif        
-+                    
-                         if ((!local_bind(last_server->tcpfd,  &last_server->source_addr, last_server->interface, 1) ||
-                              connect(last_server->tcpfd, &last_server->addr.sa, sa_len(&last_server->addr)) == -1))
-                           {
-@@ -1820,24 +1838,6 @@ unsigned char *tcp_request(int confd, time_t now,
-                             size = new_size;
-                           }
- #endif
--                        
--#ifdef HAVE_CONNTRACK
--                        /* Copy connection mark of incoming query to outgoing connection. */
--                        if (option_bool(OPT_CONNTRACK))
--                          {
--                            unsigned int mark;
--                            struct all_addr local;
--#ifdef HAVE_IPV6                    
--                            if (local_addr->sa.sa_family == AF_INET6)
--                              local.addr.addr6 = local_addr->in6.sin6_addr;
--                            else
--#endif
--                              local.addr.addr4 = local_addr->in.sin_addr;
--                            
--                            if (get_incoming_mark(&peer_addr, &local, 1, &mark))
--                              setsockopt(last_server->tcpfd, SOL_SOCKET, SO_MARK, &mark, sizeof(unsigned int));
--                          }
--#endif        
-                       }
-                     
-                     *length = htons(size);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch b/src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch
deleted file mode 100644 (file)
index bec87bc..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 17b475912f6a4e72797a543dad59d4d5dde6bb1b Mon Sep 17 00:00:00 2001
-From: Daniel Collins <daniel.collins@smoothwall.net>
-Date: Fri, 3 Oct 2014 21:58:43 +0100
-Subject: [PATCH 05/78] Fix typo in new Dbus code.
-
-Simon's fault.
----
- src/dbus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/dbus.c b/src/dbus.c
-index 15fed906bd90..a2a94dc85dac 100644
---- a/src/dbus.c
-+++ b/src/dbus.c
-@@ -426,7 +426,7 @@ static DBusMessage *dbus_set_bool(DBusMessage *message, int flag, char *name)
-     }
-   else
-     {
--      my_syslog(LOG_INFO, "Disabling --$s option from D-Bus", name);
-+      my_syslog(LOG_INFO, "Disabling --%s option from D-Bus", name);
-       reset_option_bool(flag);
-     }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch b/src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch
deleted file mode 100644 (file)
index 6b5345f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-From 3d9d2dd0018603a2ae4b9cd65ac6ff959f4fd8c7 Mon Sep 17 00:00:00 2001
-From: Tomas Hozza <thozza@redhat.com>
-Date: Mon, 6 Oct 2014 10:46:48 +0100
-Subject: [PATCH 06/78] Fit example conf file typo.
-
----
- dnsmasq.conf.example | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/dnsmasq.conf.example b/dnsmasq.conf.example
-index 6b00bd34fbb5..1bd305dbdbad 100644
---- a/dnsmasq.conf.example
-+++ b/dnsmasq.conf.example
-@@ -645,4 +645,4 @@
- #conf-dir=/etc/dnsmasq.d,.bak
- # Include all files in a directory which end in .conf
--#conf-dir=/etc/dnsmasq.d/*.conf
-+#conf-dir=/etc/dnsmasq.d/,*.conf
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch b/src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch
deleted file mode 100644 (file)
index ffad3b2..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-From b9ff5c8f435173cfa616e3c398bdc089ef690a07 Mon Sep 17 00:00:00 2001
-From: Vladislav Grishenko <themiron@mail.ru>
-Date: Mon, 6 Oct 2014 14:34:24 +0100
-Subject: [PATCH 07/78] Improve RFC-compliance when unable to supply addresses
- in DHCPv6
-
-While testing https://github.com/sbyx/odhcp6c client I have noticed it
-permanently crashes after startup.
-
-The reason was it (odhcp6c) doesn't expect empty IA options in ADVERTISE
-message without any suboptions.
-
-Despite this validation bug of odhcp6c, dnsmasq should not generate
-ADVERTISE messages with IA if there's nothing to advert per  RFC 3315
-17.2.2:
-
-   If the server will not assign any addresses to any IAs in a
-
-   subsequent Request from the client, the server MUST send an Advertise
-
-   message to the client that includes only a Status Code option with
-
-   code NoAddrsAvail and a status message for the user, a Server
-
-   Identifier option with the server's DUID, and a Client Identifier
-
-   option with the client's DUID.
-
-Meanwhile it's need to add status code for every IA in REPLY message per
-RFC3315 18.2.1:
-
-   If the server cannot assign any addresses to an IA in the message
-   from the client, the server MUST include the IA in the Reply message
-   with no addresses in the IA and a Status Code option in the IA
-   containing status code NoAddrsAvail.
-
-So, I've changed the logic to skip IA completely from ADVERTISE messages and
-to add NoAddrsAvail subcode into IA of REPLY messages.
-
-As for overhead, yes, I believe it's ok to return NoAddrsAvail twice in IA
-and in global section for compatibility with all old and new clients.
----
- src/rfc3315.c | 27 +++++++++++++++++++++++++--
- 1 file changed, 25 insertions(+), 2 deletions(-)
-
-diff --git a/src/rfc3315.c b/src/rfc3315.c
-index 5ebf09d50ac1..ddb390bf1136 100644
---- a/src/rfc3315.c
-+++ b/src/rfc3315.c
-@@ -691,6 +691,8 @@ static int dhcp6_no_relay(struct state *state, int msg_type, void *inbuff, size_
- #endif
-           o = build_ia(state, &t1cntr);
-+          if (address_assigned)
-+              address_assigned = 2;
-           for (ia_counter = 0; ia_option; ia_counter++, ia_option = opt6_find(opt6_next(ia_option, ia_end), ia_end, OPTION6_IAADDR, 24))
-             {
-@@ -781,6 +783,27 @@ static int dhcp6_no_relay(struct state *state, int msg_type, void *inbuff, size_
-               address_assigned = 1;
-             }
-           
-+          if (address_assigned != 1)
-+            {
-+              /* If the server will not assign any addresses to any IAs in a
-+                 subsequent Request from the client, the server MUST send an Advertise
-+                 message to the client that doesn't include any IA options. */
-+              if (!state->lease_allocate)
-+                {
-+                  save_counter(o);
-+                  continue;
-+                }
-+              
-+              /* If the server cannot assign any addresses to an IA in the message
-+                 from the client, the server MUST include the IA in the Reply message
-+                 with no addresses in the IA and a Status Code option in the IA
-+                 containing status code NoAddrsAvail. */
-+              o1 = new_opt6(OPTION6_STATUS_CODE);
-+              put_opt6_short(DHCP6NOADDRS);
-+              put_opt6_string(_("address unavailable"));
-+              end_opt6(o1);
-+            }
-+          
-           end_ia(t1cntr, min_time, 0);
-           end_opt6(o);        
-         }
-@@ -806,7 +829,7 @@ static int dhcp6_no_relay(struct state *state, int msg_type, void *inbuff, size_
-           put_opt6_short(DHCP6NOADDRS);
-           put_opt6_string(_("no addresses available"));
-           end_opt6(o1);
--          log6_packet(state, "DHCPADVERTISE", NULL, _("no addresses available"));
-+          log6_packet(state, state->lease_allocate ? "DHCPREPLY" : "DHCPADVERTISE", NULL, _("no addresses available"));
-         }
-       break;
-@@ -862,7 +885,7 @@ static int dhcp6_no_relay(struct state *state, int msg_type, void *inbuff, size_
-                     {
-                       /* Static range, not configured. */
-                       o1 = new_opt6(OPTION6_STATUS_CODE);
--                      put_opt6_short(DHCP6UNSPEC);
-+                      put_opt6_short(DHCP6NOADDRS);
-                       put_opt6_string(_("address unavailable"));
-                       end_opt6(o1);
-                     }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch b/src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch
deleted file mode 100644 (file)
index 671a70e..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 98906275a02ae260fe3f82133bd79054f8315f06 Mon Sep 17 00:00:00 2001
-From: Hans Dedecker <dedeckeh@gmail.com>
-Date: Tue, 9 Dec 2014 22:22:53 +0000
-Subject: [PATCH 08/78] Fix conntrack with --bind-interfaces
-
-Make sure dst_addr is assigned the correct address in receive_query when OPTNOWILD is
-enabled so the assigned mark can be correctly retrieved and set in forward_query when
-conntrack is enabled.
-
-Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
----
- src/forward.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/forward.c b/src/forward.c
-index 2cf29eba6e26..408a179a20f4 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -1048,7 +1048,7 @@ void receive_query(struct listener *listen, time_t now)
-   /* packet buffer overwritten */
-   daemon->srv_save = NULL;
-   
--  dst_addr_4.s_addr = 0;
-+  dst_addr_4.s_addr = dst_addr.addr.addr4.s_addr = 0;
-   netmask.s_addr = 0;
-   
-   if (option_bool(OPT_NOWILD) && listen->iface)
-@@ -1057,7 +1057,7 @@ void receive_query(struct listener *listen, time_t now)
-      
-       if (listen->family == AF_INET)
-       {
--        dst_addr_4 = listen->iface->addr.in.sin_addr;
-+        dst_addr_4 = dst_addr.addr.addr4 = listen->iface->addr.in.sin_addr;
-         netmask = listen->iface->netmask;
-       }
-     }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch b/src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch
deleted file mode 100644 (file)
index e9c51f8..0000000
+++ /dev/null
@@ -1,257 +0,0 @@
-From 193de4abf59e49c6b70d54cfe9720fcb95ca2f71 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 10 Dec 2014 17:32:16 +0000
-Subject: [PATCH 09/78] Use inotify instead of polling on Linux.
-
-This should solve problems people are seeing when a file changes
-twice within a second and thus is missed for polling.
----
- Makefile       |   2 +-
- bld/Android.mk |   2 +-
- src/dnsmasq.c  |  25 ++++++++++++--
- src/dnsmasq.h  |  11 ++++++-
- src/inotify.c  | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 5 files changed, 137 insertions(+), 5 deletions(-)
- create mode 100644 src/inotify.c
-
-diff --git a/Makefile b/Makefile
-index 58a7975f60b5..c340f1c7b59a 100644
---- a/Makefile
-+++ b/Makefile
-@@ -69,7 +69,7 @@ objs = cache.o rfc1035.o util.o option.o forward.o network.o \
-        dnsmasq.o dhcp.o lease.o rfc2131.o netlink.o dbus.o bpf.o \
-        helper.o tftp.o log.o conntrack.o dhcp6.o rfc3315.o \
-        dhcp-common.o outpacket.o radv.o slaac.o auth.o ipset.o \
--       domain.o dnssec.o blockdata.o tables.o loop.o
-+       domain.o dnssec.o blockdata.o tables.o loop.o inotify.o
- hdrs = dnsmasq.h config.h dhcp-protocol.h dhcp6-protocol.h \
-        dns-protocol.h radv-protocol.h ip6addr.h
-diff --git a/bld/Android.mk b/bld/Android.mk
-index d855094eb264..d627796e8edc 100644
---- a/bld/Android.mk
-+++ b/bld/Android.mk
-@@ -10,7 +10,7 @@ LOCAL_SRC_FILES :=  bpf.c cache.c dbus.c dhcp.c dnsmasq.c \
-                   dhcp6.c rfc3315.c dhcp-common.c outpacket.c \
-                   radv.c slaac.c auth.c ipset.c domain.c \
-                   dnssec.c dnssec-openssl.c blockdata.c tables.c \
--                  loop.c
-+                  loop.c inotify.c
- LOCAL_MODULE := dnsmasq
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index f4a89fc38183..bf2e25a55780 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -315,9 +315,15 @@ int main (int argc, char **argv)
-   if (daemon->port != 0)
-     {
-       cache_init();
-+
- #ifdef HAVE_DNSSEC
-       blockdata_init();
- #endif
-+
-+#ifdef HAVE_LINUX_NETWORK
-+      if (!option_bool(OPT_NO_POLL))
-+      inotify_dnsmasq_init();
-+#endif
-     }
-     
-   if (option_bool(OPT_DBUS))
-@@ -793,6 +799,11 @@ int main (int argc, char **argv)
-   
-   pid = getpid();
-   
-+#ifdef HAVE_LINUX_NETWORK
-+  /* Using inotify, have to select a resolv file at startup */
-+  poll_resolv(1, 0, now);
-+#endif
-+  
-   while (1)
-     {
-       int maxfd = -1;
-@@ -862,11 +873,16 @@ int main (int argc, char **argv)
- #if defined(HAVE_LINUX_NETWORK)
-       FD_SET(daemon->netlinkfd, &rset);
-       bump_maxfd(daemon->netlinkfd, &maxfd);
-+      if (daemon->port != 0 && !option_bool(OPT_NO_POLL))
-+      {
-+        FD_SET(daemon->inotifyfd, &rset);
-+        bump_maxfd(daemon->inotifyfd, &maxfd);
-+      }
- #elif defined(HAVE_BSD_NETWORK)
-       FD_SET(daemon->routefd, &rset);
-       bump_maxfd(daemon->routefd, &maxfd);
- #endif
--
-+      
-       FD_SET(piperead, &rset);
-       bump_maxfd(piperead, &maxfd);
-@@ -929,6 +945,10 @@ int main (int argc, char **argv)
-       route_sock();
- #endif
-+#ifdef HAVE_LINUX_NETWORK
-+      if (daemon->port != 0 && !option_bool(OPT_NO_POLL) && FD_ISSET(daemon->inotifyfd, &rset) && inotify_check())
-+      poll_resolv(1, 1, now);           
-+#else
-       /* Check for changes to resolv files once per second max. */
-       /* Don't go silent for long periods if the clock goes backwards. */
-       if (daemon->last_resolv == 0 || 
-@@ -941,7 +961,8 @@ int main (int argc, char **argv)
-         poll_resolv(0, daemon->last_resolv != 0, now);          
-         daemon->last_resolv = now;
-       }
--      
-+#endif
-+
-       if (FD_ISSET(piperead, &rset))
-       async_event(piperead, now);
-       
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index e74b15a5459a..ebb6b957812f 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -541,6 +541,10 @@ struct resolvc {
-   int is_default, logged;
-   time_t mtime;
-   char *name;
-+#ifdef HAVE_LINUX_NETWORK
-+  int wd; /* inotify watch descriptor */
-+  char *file; /* pointer to file part if path */
-+#endif
- };
- /* adn-hosts parms from command-line (also dhcp-hostsfile and dhcp-optsfile */
-@@ -998,7 +1002,7 @@ extern struct daemon {
-   /* DHCP state */
-   int dhcpfd, helperfd, pxefd; 
- #if defined(HAVE_LINUX_NETWORK)
--  int netlinkfd;
-+  int netlinkfd, inotifyfd;
- #elif defined(HAVE_BSD_NETWORK)
-   int dhcp_raw_fd, dhcp_icmp_fd, routefd;
- #endif
-@@ -1469,3 +1473,8 @@ void loop_send_probes();
- int detect_loop(char *query, int type);
- #endif
-+/* inotify.c */
-+#ifdef HAVE_LINUX_NETWORK
-+void inotify_dnsmasq_init();
-+int inotify_check(void);
-+#endif
-diff --git a/src/inotify.c b/src/inotify.c
-new file mode 100644
-index 000000000000..a0223443d6b6
---- /dev/null
-+++ b/src/inotify.c
-@@ -0,0 +1,102 @@
-+/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+ 
-+   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; version 2 dated June, 1991, or
-+   (at your option) version 3 dated 29 June, 2007.
-+ 
-+   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/>.
-+*/
-+
-+#include "dnsmasq.h"
-+#include <sys/inotify.h>
-+
-+#ifdef HAVE_LINUX_NETWORK
-+
-+/* the strategy is to set a inotify on the directories containing
-+   resolv files, for any files in the directory which are close-write 
-+   or moved into the directory.
-+   
-+   When either of those happen, we look to see if the file involved
-+   is actually a resolv-file, and if so, call poll-resolv with
-+   the "force" argument, to ensure it's read.
-+
-+   This adds one new error condition: the directories containing
-+   all specified resolv-files must exist at start-up, even if the actual
-+   files don't. 
-+*/
-+
-+static char *inotify_buffer;
-+#define INOTIFY_SZ (sizeof(struct inotify_event) + NAME_MAX + 1)
-+
-+void inotify_dnsmasq_init()
-+{
-+  struct resolvc *res;
-+
-+  inotify_buffer = safe_malloc(INOTIFY_SZ);
-+
-+  daemon->inotifyfd = inotify_init1(IN_NONBLOCK | IN_CLOEXEC);
-+
-+  if (daemon->inotifyfd == -1)
-+    die(_("failed to create inotify: %s"), NULL, EC_MISC);
-+
-+  for (res = daemon->resolv_files; res; res = res->next)
-+    {
-+      char *d = strrchr(res->name, '/');
-+      
-+      if (!d)
-+      die(_("resolv-file %s not an absolute path"), res->name, EC_MISC);
-+       
-+      *d = 0; /* make ->name just directory */
-+      res->wd = inotify_add_watch(daemon->inotifyfd, res->name, IN_CLOSE_WRITE | IN_MOVED_TO);
-+      res->file = d+1; /* pointer to filename */
-+      
-+      if (res->wd == -1 && errno == ENOENT)
-+      die(_("directory %s for resolv-file is missing, cannot poll"), res->name, EC_MISC);
-+      
-+      *d = '/'; /* restore name */
-+      
-+      if (res->wd == -1)
-+      die(_("failed to create inotify for %s: %s"), res->name, EC_MISC);
-+    }
-+}
-+
-+int inotify_check(void)
-+{
-+  int hit = 0;
-+  
-+  while (1)
-+    {
-+      int rc;
-+      char *p;
-+      struct resolvc *res;
-+      struct inotify_event *in;
-+
-+      while ((rc = read(daemon->inotifyfd, inotify_buffer, INOTIFY_SZ)) == -1 && errno == EINTR);
-+      
-+      if (rc <= 0)
-+      break;
-+      
-+      for (p = inotify_buffer; rc - (p - inotify_buffer) >= (int)sizeof(struct inotify_event); p += sizeof(struct inotify_event) + in->len) 
-+      {
-+        in = (struct inotify_event*)p;
-+        
-+        for (res = daemon->resolv_files; res; res = res->next)
-+          if (res->wd == in->wd && in->len != 0 && strcmp(res->file, in->name) == 0)
-+            hit = 1;
-+      }
-+    }
-+
-+  return hit;
-+}
-+
-+#endif
-+
-+  
-+  
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/001-include_0_0_0_0_8_in_DNS_rebind_checks.patch b/src/patches/dnsmasq/001-include_0_0_0_0_8_in_DNS_rebind_checks.patch
new file mode 100644 (file)
index 0000000..8a2557a
--- /dev/null
@@ -0,0 +1,41 @@
+From d2aa7dfbb6d1088dcbea9fecc61b9293b320eb95 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Mon, 3 Aug 2015 21:52:12 +0100
+Subject: [PATCH] Include 0.0.0.0/8 in DNS rebind checks.
+
+---
+ CHANGELOG     |    7 +++++++
+ src/rfc1035.c |    3 ++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 901da47..3f4026d 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -1,3 +1,10 @@
++version 2.76
++            Include 0.0.0.0/8 in DNS rebind checks. This range 
++          translates to hosts on  the local network, or, at 
++          least, 0.0.0.0 accesses the local host, so could
++          be targets for DNS rebinding. See RFC 5735 section 3 
++          for details. Thanks to Stephen Röttger for the bug report.
++          
+ version 2.75
+             Fix reversion on 2.74 which caused 100% CPU use when a 
+           dhcp-script is configured. Thanks to Adrian Davey for
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index 56647b0..29e9e65 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -728,7 +728,8 @@ int private_net(struct in_addr addr, int ban_localhost)
+   in_addr_t ip_addr = ntohl(addr.s_addr);
+   return
+-    (((ip_addr & 0xFF000000) == 0x7F000000) && ban_localhost)  /* 127.0.0.0/8    (loopback) */ || 
++    (((ip_addr & 0xFF000000) == 0x7F000000) && ban_localhost)  /* 127.0.0.0/8    (loopback) */ ||
++    ((ip_addr & 0xFF000000) == 0x00000000)  /* RFC 5735 section 3. "here" network */ ||
+     ((ip_addr & 0xFFFF0000) == 0xC0A80000)  /* 192.168.0.0/16 (private)  */ ||
+     ((ip_addr & 0xFF000000) == 0x0A000000)  /* 10.0.0.0/8     (private)  */ ||
+     ((ip_addr & 0xFFF00000) == 0xAC100000)  /* 172.16.0.0/12  (private)  */ ||
+-- 
+1.7.10.4
diff --git a/src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch b/src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch
deleted file mode 100644 (file)
index 2f8574e..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-From 857973e6f7e0a3d03535a9df7f9373fd7a0b65cc Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 15 Dec 2014 15:58:13 +0000
-Subject: [PATCH 10/78] Teach the new inotify code about symlinks.
-
----
- src/inotify.c | 43 +++++++++++++++++++++++++++----------------
- 1 file changed, 27 insertions(+), 16 deletions(-)
-
-diff --git a/src/inotify.c b/src/inotify.c
-index a0223443d6b6..960bf5efb41f 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -41,29 +41,40 @@ void inotify_dnsmasq_init()
-   inotify_buffer = safe_malloc(INOTIFY_SZ);
--  daemon->inotifyfd = inotify_init1(IN_NONBLOCK | IN_CLOEXEC);
-+  daemon->inotifyfd = inotify_init1(IN_NONBLOCK | IN_CLOEXEC);
-+  
-   if (daemon->inotifyfd == -1)
-     die(_("failed to create inotify: %s"), NULL, EC_MISC);
--
-+  
-   for (res = daemon->resolv_files; res; res = res->next)
-     {
--      char *d = strrchr(res->name, '/');
--      
--      if (!d)
--      die(_("resolv-file %s not an absolute path"), res->name, EC_MISC);
--       
--      *d = 0; /* make ->name just directory */
--      res->wd = inotify_add_watch(daemon->inotifyfd, res->name, IN_CLOSE_WRITE | IN_MOVED_TO);
--      res->file = d+1; /* pointer to filename */
--      
--      if (res->wd == -1 && errno == ENOENT)
--      die(_("directory %s for resolv-file is missing, cannot poll"), res->name, EC_MISC);
-+      char *d = NULL, *path;
-       
--      *d = '/'; /* restore name */
-+      if (!(path = realpath(res->name, NULL)))
-+      {
-+        /* realpath will fail if the file doesn't exist, but
-+           dnsmasq copes with missing files, so fall back 
-+           and assume that symlinks are not in use in that case. */
-+        if (errno == ENOENT)
-+          path = res->name;
-+        else
-+          die(_("cannot cannonicalise resolv-file %s: %s"), res->name, EC_MISC); 
-+      }
-       
--      if (res->wd == -1)
--      die(_("failed to create inotify for %s: %s"), res->name, EC_MISC);
-+      if ((d = strrchr(path, '/')))
-+      {
-+        *d = 0; /* make path just directory */
-+        res->wd = inotify_add_watch(daemon->inotifyfd, path, IN_CLOSE_WRITE | IN_MOVED_TO);
-+        res->file = d+1; /* pointer to filename */
-+        *d = '/';
-+        
-+        if (res->wd == -1 && errno == ENOENT)
-+          die(_("directory %s for resolv-file is missing, cannot poll"), res->name, EC_MISC);
-+        
-+        if (res->wd == -1)
-+          die(_("failed to create inotify for %s: %s"), res->name, EC_MISC);
-+      }
-     }
- }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch b/src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch
deleted file mode 100644 (file)
index 66b6331..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-From 800c5cc1e7438818fd80f08c2d472df249a6942d Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 15 Dec 2014 17:50:15 +0000
-Subject: [PATCH 11/78] Remove floor on EDNS0 packet size with DNSSEC.
-
----
- CHANGELOG     | 6 +++++-
- src/dnsmasq.c | 5 -----
- 2 files changed, 5 insertions(+), 6 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 13ab41c05fc3..68252924e743 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -2,7 +2,11 @@ version 2.73
-             Fix crash at startup when an empty suffix is supplied to
-           --conf-dir, also trivial memory leak. Thanks to 
-           Tomas Hozza for spotting this.
--      
-+
-+          Remove floor of 4096 on advertised EDNS0 packet size when 
-+          DNSSEC in use, the original rationale for this has long gone.
-+          Thanks to Anders Kaseorg for spotting this.
-+
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index bf2e25a55780..5c7750d365fa 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -87,11 +87,6 @@ int main (int argc, char **argv)
-  
-   if (daemon->edns_pktsz < PACKETSZ)
-     daemon->edns_pktsz = PACKETSZ;
--#ifdef HAVE_DNSSEC
--  /* Enforce min packet big enough for DNSSEC */
--  if (option_bool(OPT_DNSSEC_VALID) && daemon->edns_pktsz < EDNS_PKTSZ)
--    daemon->edns_pktsz = EDNS_PKTSZ;
--#endif
-   daemon->packet_buff_sz = daemon->edns_pktsz > DNSMASQ_PACKETSZ ? 
-     daemon->edns_pktsz : DNSMASQ_PACKETSZ;
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch b/src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch
deleted file mode 100644 (file)
index 3df5076..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From ad946d555dce44eb690c7699933b6ff40ab85bb6 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 15 Dec 2014 17:52:22 +0000
-Subject: [PATCH 12/78] CHANGELOG re. inotify.
-
----
- CHANGELOG | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 68252924e743..9174b0bd75dc 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -7,6 +7,10 @@ version 2.73
-           DNSSEC in use, the original rationale for this has long gone.
-           Thanks to Anders Kaseorg for spotting this.
-+          Use inotify for checking on updates to /etc/resolv.conf and
-+          friends under Linux. This fixes race conditions when the files are 
-+          updated rapidly and saves CPU by noy polling.
-+      
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch b/src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch
deleted file mode 100644 (file)
index c80a3a2..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-From 3ad3f3bbd4ee716a7d2fb1e115cf89bd1b1a5de9 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Tue, 16 Dec 2014 18:25:17 +0000
-Subject: [PATCH 13/78] Fix breakage of --domain=<domain>,<subnet>,local
-
----
- CHANGELOG    |  4 ++++
- src/option.c | 18 ++++++++++++++++--
- 2 files changed, 20 insertions(+), 2 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 9174b0bd75dc..9e6c7aa4fd68 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -10,6 +10,10 @@ version 2.73
-           Use inotify for checking on updates to /etc/resolv.conf and
-           friends under Linux. This fixes race conditions when the files are 
-           updated rapidly and saves CPU by noy polling.
-+
-+          Fix breakage of --domain=<domain>,<subnet>,local - only reverse
-+          queries were intercepted. THis appears to have been broken 
-+          since 2.69. Thanks to Josh Stone for finding the bug.
-       
- version 2.72
-diff --git a/src/option.c b/src/option.c
-index b08e98e16f84..209fa6976609 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -1941,10 +1941,17 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-                             else
-                               {
-                                  /* generate the equivalent of
--                                    local=/<domain>/
-                                     local=/xxx.yyy.zzz.in-addr.arpa/ */
-                                 struct server *serv = add_rev4(new->start, msize);
-                                 serv->flags |= SERV_NO_ADDR;
-+
-+                                /* local=/<domain>/ */
-+                                serv = opt_malloc(sizeof(struct server));
-+                                memset(serv, 0, sizeof(struct server));
-+                                serv->domain = d;
-+                                serv->flags = SERV_HAS_DOMAIN | SERV_NO_ADDR;
-+                                serv->next = daemon->servers;
-+                                daemon->servers = serv;
-                               }
-                           }
-                       }
-@@ -1978,10 +1985,17 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-                             else 
-                               {
-                                 /* generate the equivalent of
--                                   local=/<domain>/
-                                    local=/xxx.yyy.zzz.ip6.arpa/ */
-                                 struct server *serv = add_rev6(&new->start6, msize);
-                                 serv->flags |= SERV_NO_ADDR;
-+                                
-+                                /* local=/<domain>/ */
-+                                serv = opt_malloc(sizeof(struct server));
-+                                memset(serv, 0, sizeof(struct server));
-+                                serv->domain = d;
-+                                serv->flags = SERV_HAS_DOMAIN | SERV_NO_ADDR;
-+                                serv->next = daemon->servers;
-+                                daemon->servers = serv;
-                               }
-                           }
-                       }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch b/src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch
deleted file mode 100644 (file)
index e322168..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From bd9520b7ade7098ee423acc38965376aa57feb07 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Tue, 16 Dec 2014 20:41:29 +0000
-Subject: [PATCH 14/78] Remove redundant IN6_IS_ADDR_ULA(a) macro defn.
-
----
- src/network.c | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/src/network.c b/src/network.c
-index 5067007c5cbc..99419f57951e 100644
---- a/src/network.c
-+++ b/src/network.c
-@@ -16,10 +16,6 @@
- #include "dnsmasq.h"
--#ifndef IN6_IS_ADDR_ULA
--#define IN6_IS_ADDR_ULA(a) ((((__const uint32_t *) (a))[0] & htonl (0xfe00000)) == htonl (0xfc000000))
--#endif
--
- #ifdef HAVE_LINUX_NETWORK
- int indextoname(int fd, int index, char *name)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch b/src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch
deleted file mode 100644 (file)
index afa5f0f..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-From 476693678e778886b64d0b56e27eb7695cbcca99 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 17 Dec 2014 12:41:56 +0000
-Subject: [PATCH 15/78] Eliminate IPv6 privacy addresses from --interface-name
- answers.
-
----
- CHANGELOG     |  5 +++++
- src/auth.c    |  4 ++++
- src/dnsmasq.h |  1 +
- src/network.c | 12 ++++++++----
- src/rfc1035.c | 17 ++++++++++-------
- 5 files changed, 28 insertions(+), 11 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 9e6c7aa4fd68..01f5208ec006 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -14,6 +14,11 @@ version 2.73
-           Fix breakage of --domain=<domain>,<subnet>,local - only reverse
-           queries were intercepted. THis appears to have been broken 
-           since 2.69. Thanks to Josh Stone for finding the bug.
-+
-+          Eliminate IPv6 privacy addresses and deprecated addresses from
-+          the answers given by --interface-name. Note that reverse queries
-+          (ie looking for names, given addresses) are not affected. 
-+          Thanks to Michael Gorbach for the suggestion.
-       
- version 2.72
-diff --git a/src/auth.c b/src/auth.c
-index dd46566ec2cc..a327f16d8c0b 100644
---- a/src/auth.c
-+++ b/src/auth.c
-@@ -363,6 +363,10 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-                if (((addrlist->flags & ADDRLIST_IPV6)  ? T_AAAA : T_A) == qtype &&
-                    (local_query || filter_zone(zone, flag, &addrlist->addr)))
-                  {
-+#ifdef HAVE_IPV6
-+                   if (addrlist->flags & ADDRLIST_REVONLY)
-+                     continue;
-+#endif
-                    found = 1;
-                    log_query(F_FORWARD | F_CONFIG | flag, name, &addrlist->addr, NULL);
-                    if (add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index ebb6b957812f..1dd61c5edba3 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -318,6 +318,7 @@ struct ds_config {
- #define ADDRLIST_LITERAL 1
- #define ADDRLIST_IPV6    2
-+#define ADDRLIST_REVONLY 4
- struct addrlist {
-   struct all_addr addr;
-diff --git a/src/network.c b/src/network.c
-index 99419f57951e..14d2af2ce313 100644
---- a/src/network.c
-+++ b/src/network.c
-@@ -236,7 +236,7 @@ struct iface_param {
- };
- static int iface_allowed(struct iface_param *param, int if_index, char *label,
--                       union mysockaddr *addr, struct in_addr netmask, int prefixlen, int dad) 
-+                       union mysockaddr *addr, struct in_addr netmask, int prefixlen, int iface_flags) 
- {
-   struct irec *iface;
-   int mtu = 0, loopback;
-@@ -388,6 +388,10 @@ static int iface_allowed(struct iface_param *param, int if_index, char *label,
-                {
-                   al->addr.addr.addr6 = addr->in6.sin6_addr;
-                   al->flags = ADDRLIST_IPV6;
-+                  /* Privacy addresses and addresses still undergoing DAD and deprecated addresses
-+                     don't appear in forward queries, but will in reverse ones. */
-+                  if (!(iface_flags & IFACE_PERMANENT) || (iface_flags & (IFACE_DEPRECATED | IFACE_TENTATIVE)))
-+                    al->flags |= ADDRLIST_REVONLY;
-                } 
- #endif
-             }
-@@ -399,7 +403,7 @@ static int iface_allowed(struct iface_param *param, int if_index, char *label,
-   for (iface = daemon->interfaces; iface; iface = iface->next) 
-     if (sockaddr_isequal(&iface->addr, addr))
-       {
--      iface->dad = dad;
-+      iface->dad = !!(iface_flags & IFACE_TENTATIVE);
-       iface->found = 1; /* for garbage collection */
-       return 1;
-       }
-@@ -474,7 +478,7 @@ static int iface_allowed(struct iface_param *param, int if_index, char *label,
-       iface->dhcp_ok = dhcp_ok;
-       iface->dns_auth = auth_dns;
-       iface->mtu = mtu;
--      iface->dad = dad;
-+      iface->dad = !!(iface_flags & IFACE_TENTATIVE);
-       iface->found = 1;
-       iface->done = iface->multicast_done = iface->warned = 0;
-       iface->index = if_index;
-@@ -519,7 +523,7 @@ static int iface_allowed_v6(struct in6_addr *local, int prefix,
-   else
-     addr.in6.sin6_scope_id = 0;
-   
--  return iface_allowed((struct iface_param *)vparam, if_index, NULL, &addr, netmask, prefix, !!(flags & IFACE_TENTATIVE));
-+  return iface_allowed((struct iface_param *)vparam, if_index, NULL, &addr, netmask, prefix, flags);
- }
- #endif
-diff --git a/src/rfc1035.c b/src/rfc1035.c
-index 8a7d2608dac5..bdeb3fb10e68 100644
---- a/src/rfc1035.c
-+++ b/src/rfc1035.c
-@@ -1923,14 +1923,17 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
-                 for (intr = daemon->int_names; intr; intr = intr->next)
-                   if (hostname_isequal(name, intr->name))
-                     {
--                      ans = 1;
--                      if (!dryrun)
--                        {
--                          
--                          for (addrlist = intr->addr; addrlist; addrlist = addrlist->next)
-+                      for (addrlist = intr->addr; addrlist; addrlist = addrlist->next)
- #ifdef HAVE_IPV6
--                            if (((addrlist->flags & ADDRLIST_IPV6) ? T_AAAA : T_A) == type)
-+                        if (((addrlist->flags & ADDRLIST_IPV6) ? T_AAAA : T_A) == type)
- #endif
-+                          {
-+#ifdef HAVE_IPV6
-+                            if (addrlist->flags & ADDRLIST_REVONLY)
-+                              continue;
-+#endif        
-+                            ans = 1;  
-+                            if (!dryrun)
-                               {
-                                 gotit = 1;
-                                 log_query(F_FORWARD | F_CONFIG | flag, name, &addrlist->addr, NULL);
-@@ -1939,7 +1942,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
-                                                         type == T_A ? "4" : "6", &addrlist->addr))
-                                   anscount++;
-                               }
--                        }
-+                          }
-                     }
-                 
-                 if (!dryrun && !gotit)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch b/src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch
deleted file mode 100644 (file)
index e669a50..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From 3267804598047bd1781cab91508d1bc516e5ddbb Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 17 Dec 2014 20:38:20 +0000
-Subject: [PATCH 16/78] Tweak field width in cache dump to avoid truncating
- IPv6 addresses.
-
----
- src/cache.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index 2c3a49887053..f9e1d31e8c99 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1411,7 +1411,7 @@ void dump_cache(time_t now)
-           *a = 0;
-           if (strlen(n) == 0 && !(cache->flags & F_REVERSE))
-             n = "<Root>";
--          p += sprintf(p, "%-40.40s ", n);
-+          p += sprintf(p, "%-30.30s ", n);
-           if ((cache->flags & F_CNAME) && !is_outdated_cname_pointer(cache))
-             a = cache_get_cname_target(cache);
- #ifdef HAVE_DNSSEC
-@@ -1454,7 +1454,7 @@ void dump_cache(time_t now)
-           else if (cache->flags & F_DNSKEY)
-             t = "K";
- #endif
--          p += sprintf(p, "%-30.30s %s%s%s%s%s%s%s%s%s  ", a, t,
-+          p += sprintf(p, "%-40.40s %s%s%s%s%s%s%s%s%s  ", a, t,
-                        cache->flags & F_FORWARD ? "F" : " ",
-                        cache->flags & F_REVERSE ? "R" : " ",
-                        cache->flags & F_IMMORTAL ? "I" : " ",
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch b/src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch
deleted file mode 100644 (file)
index 2fe233d..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-From 094b5c3d904bae9aeb3206d9f3b8348926b84975 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 21 Dec 2014 16:11:52 +0000
-Subject: [PATCH 17/78] Fix crash in DNSSEC code when attempting to verify
- large RRs.
-
----
- CHANGELOG    |  3 +++
- src/dnssec.c | 27 +++++++++++++++++++--------
- 2 files changed, 22 insertions(+), 8 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 01f5208ec006..956b71a151db 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -19,6 +19,9 @@ version 2.73
-           the answers given by --interface-name. Note that reverse queries
-           (ie looking for names, given addresses) are not affected. 
-           Thanks to Michael Gorbach for the suggestion.
-+
-+          Fix crash in DNSSEC code with long RRs. Thanks to Marco Davids
-+          for the bug report.
-       
- version 2.72
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 69bfc29e355f..3208ac701149 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -456,16 +456,27 @@ static u16 *get_desc(int type)
- /* Return bytes of canonicalised rdata, when the return value is zero, the remaining 
-    data, pointed to by *p, should be used raw. */
--static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end, char *buff, 
-+static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end, char *buff, int bufflen,
-                    unsigned char **p, u16 **desc)
- {
-   int d = **desc;
-   
--  (*desc)++;
--  
-   /* No more data needs mangling */
-   if (d == (u16)-1)
--    return 0;
-+    {
-+      /* If there's more data than we have space for, just return what fits,
-+       we'll get called again for more chunks */
-+      if (end - *p > bufflen)
-+      {
-+        memcpy(buff, *p, bufflen);
-+        *p += bufflen;
-+        return bufflen;
-+      }
-+      
-+      return 0;
-+    }
-+ 
-+  (*desc)++;
-   
-   if (d == 0 && extract_name(header, plen, p, buff, 1, 0))
-     /* domain-name, canonicalise */
-@@ -560,7 +571,7 @@ static void sort_rrset(struct dns_header *header, size_t plen, u16 *rr_desc, int
-             if (left1 != 0)
-               memmove(buff1, buff1 + len1 - left1, left1);
-             
--            if ((len1 = get_rdata(header, plen, end1, buff1 + left1, &p1, &dp1)) == 0)
-+            if ((len1 = get_rdata(header, plen, end1, buff1 + left1, MAXDNAME - left1, &p1, &dp1)) == 0)
-               {
-                 quit = 1;
-                 len1 = end1 - p1;
-@@ -571,7 +582,7 @@ static void sort_rrset(struct dns_header *header, size_t plen, u16 *rr_desc, int
-             if (left2 != 0)
-               memmove(buff2, buff2 + len2 - left2, left2);
-             
--            if ((len2 = get_rdata(header, plen, end2, buff2 + left2, &p2, &dp2)) == 0)
-+            if ((len2 = get_rdata(header, plen, end2, buff2 + left2, MAXDNAME - left2, &p2, &dp2)) == 0)
-               {
-                 quit = 1;
-                 len2 = end2 - p2;
-@@ -808,7 +819,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-         /* canonicalise rdata and calculate length of same, use name buffer as workspace */
-         cp = p;
-         dp = rr_desc;
--        for (len = 0; (seg = get_rdata(header, plen, end, name, &cp, &dp)) != 0; len += seg);
-+        for (len = 0; (seg = get_rdata(header, plen, end, name, MAXDNAME, &cp, &dp)) != 0; len += seg);
-         len += end - cp;
-         len = htons(len);
-         hash->update(ctx, 2, (unsigned char *)&len); 
-@@ -816,7 +827,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-         /* Now canonicalise again and digest. */
-         cp = p;
-         dp = rr_desc;
--        while ((seg = get_rdata(header, plen, end, name, &cp, &dp)))
-+        while ((seg = get_rdata(header, plen, end, name, MAXDNAME, &cp, &dp)))
-           hash->update(ctx, seg, (unsigned char *)name);
-         if (cp != end)
-           hash->update(ctx, end - cp, cp);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch b/src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch
deleted file mode 100644 (file)
index 2ec47e6..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-From cbc652423403e3cef00e00240f6beef713142246 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 21 Dec 2014 21:21:53 +0000
-Subject: [PATCH 18/78] Make caching work for CNAMEs pointing to A/AAAA records
- shadowed in /etc/hosts
-
-If the answer to an upstream query is a CNAME which points to an
-A/AAAA record which also exists in /etc/hosts and friends, then
-caching is suppressed, to avoid inconsistent answers. This is
-now modified to allow caching when the upstream and local A/AAAA
-records have the same value.
----
- src/cache.c | 34 +++++++++++++++++++++++++---------
- 1 file changed, 25 insertions(+), 9 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index f9e1d31e8c99..ff1ca6f1c352 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -322,7 +322,7 @@ static int is_expired(time_t now, struct crec *crecp)
-   return 1;
- }
--static int cache_scan_free(char *name, struct all_addr *addr, time_t now, unsigned short flags)
-+static struct crec *cache_scan_free(char *name, struct all_addr *addr, time_t now, unsigned short flags)
- {
-   /* Scan and remove old entries.
-      If (flags & F_FORWARD) then remove any forward entries for name and any expired
-@@ -331,8 +331,8 @@ static int cache_scan_free(char *name, struct all_addr *addr, time_t now, unsign
-      entries in the whole cache.
-      If (flags == 0) remove any expired entries in the whole cache. 
--     In the flags & F_FORWARD case, the return code is valid, and returns zero if the
--     name exists in the cache as a HOSTS or DHCP entry (these are never deleted)
-+     In the flags & F_FORWARD case, the return code is valid, and returns a non-NULL pointer
-+     to a cache entry if the name exists in the cache as a HOSTS or DHCP entry (these are never deleted)
-      We take advantage of the fact that hash chains have stuff in the order <reverse>,<other>,<immortal>
-      so that when we hit an entry which isn't reverse and is immortal, we're done. */
-@@ -361,7 +361,7 @@ static int cache_scan_free(char *name, struct all_addr *addr, time_t now, unsign
-                 (((crecp->flags | flags) & F_CNAME) && !(crecp->flags & (F_DNSKEY | F_DS))))
-               {
-                 if (crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG))
--                  return 0;
-+                  return crecp;
-                 *up = crecp->hash_next;
-                 cache_unlink(crecp);
-                 cache_free(crecp);
-@@ -378,7 +378,7 @@ static int cache_scan_free(char *name, struct all_addr *addr, time_t now, unsign
-                  crecp->addr.sig.type_covered == addr->addr.dnssec.type))
-               {
-                 if (crecp->flags & F_CONFIG)
--                  return 0;
-+                  return crecp;
-                 *up = crecp->hash_next;
-                 cache_unlink(crecp);
-                 cache_free(crecp);
-@@ -423,7 +423,7 @@ static int cache_scan_free(char *name, struct all_addr *addr, time_t now, unsign
-           up = &crecp->hash_next;
-     }
-   
--  return 1;
-+  return NULL;
- }
- /* Note: The normal calling sequence is
-@@ -471,10 +471,26 @@ struct crec *cache_insert(char *name, struct all_addr *addr,
-     return NULL;
-   
-   /* First remove any expired entries and entries for the name/address we
--     are currently inserting. Fail if we attempt to delete a name from
--     /etc/hosts or DHCP. */
--  if (!cache_scan_free(name, addr, now, flags))
-+     are currently inserting. */
-+  if ((new = cache_scan_free(name, addr, now, flags)))
-     {
-+      /* We're trying to insert a record over one from 
-+       /etc/hosts or DHCP, or other config. If the 
-+       existing record is for an A or AAAA and
-+       the record we're trying to insert is the same, 
-+       just drop the insert, but don't error the whole process. */
-+      if ((flags & (F_IPV4 | F_IPV6)) && (flags & F_FORWARD))
-+      {
-+        if ((flags & F_IPV4) && (new->flags & F_IPV4) &&
-+            new->addr.addr.addr.addr4.s_addr == addr->addr.addr4.s_addr)
-+          return new;
-+#ifdef HAVE_IPV6
-+        else if ((flags & F_IPV6) && (new->flags & F_IPV6) &&
-+                 IN6_ARE_ADDR_EQUAL(&new->addr.addr.addr.addr6, &addr->addr.addr6))
-+          return new;
-+#endif
-+      }
-+      
-       insert_error = 1;
-       return NULL;
-     }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch b/src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch
deleted file mode 100644 (file)
index 7e6f821..0000000
+++ /dev/null
@@ -1,365 +0,0 @@
-From fbc5205702c7f6f431d9f1043c553d7fb62ddfdb Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Tue, 23 Dec 2014 15:46:08 +0000
-Subject: [PATCH 19/78] Fix problems validating NSEC3 and wildcards.
-
----
- src/dnssec.c | 253 ++++++++++++++++++++++++++++++-----------------------------
- 1 file changed, 128 insertions(+), 125 deletions(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 3208ac701149..9350d3e8c963 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -615,6 +615,7 @@ static void sort_rrset(struct dns_header *header, size_t plen, u16 *rr_desc, int
-    Return code:
-    STAT_SECURE   if it validates.
-    STAT_SECURE_WILDCARD if it validates and is the result of wildcard expansion.
-+   (In this case *wildcard_out points to the "body" of the wildcard within name.) 
-    STAT_NO_SIG no RRsigs found.
-    STAT_INSECURE RRset empty.
-    STAT_BOGUS    signature is wrong, bad packet.
-@@ -625,8 +626,8 @@ static void sort_rrset(struct dns_header *header, size_t plen, u16 *rr_desc, int
-    name is unchanged on exit. keyname is used as workspace and trashed.
- */
--static int validate_rrset(time_t now, struct dns_header *header, size_t plen, int class, 
--                        int type, char *name, char *keyname, struct blockdata *key, int keylen, int algo_in, int keytag_in)
-+static int validate_rrset(time_t now, struct dns_header *header, size_t plen, int class, int type, 
-+                        char *name, char *keyname, char **wildcard_out, struct blockdata *key, int keylen, int algo_in, int keytag_in)
- {
-   static unsigned char **rrset = NULL, **sigs = NULL;
-   static int rrset_sz = 0, sig_sz = 0;
-@@ -798,8 +799,16 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-           {
-             int k;
-             for (k = name_labels - labels; k != 0; k--)
--              while (*name_start != '.' && *name_start != 0)
--                name_start++;
-+              {
-+                while (*name_start != '.' && *name_start != 0)
-+                  name_start++;
-+                if (k != 1)
-+                  name_start++;
-+              }
-+            
-+            if (wildcard_out)
-+              *wildcard_out = name_start+1;
-+
-             name_start--;
-             *name_start = '*';
-           }
-@@ -974,7 +983,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-             if (recp1->addr.ds.keylen == (int)hash->digest_size &&
-                 (ds_digest = blockdata_retrieve(recp1->addr.key.keydata, recp1->addr.ds.keylen, NULL)) &&
-                 memcmp(ds_digest, digest, recp1->addr.ds.keylen) == 0 &&
--                validate_rrset(now, header, plen, class, T_DNSKEY, name, keyname, key, rdlen - 4, algo, keytag) == STAT_SECURE)
-+                validate_rrset(now, header, plen, class, T_DNSKEY, name, keyname, NULL, key, rdlen - 4, algo, keytag) == STAT_SECURE)
-               {
-                 valid = 1;
-                 break;
-@@ -1443,11 +1452,88 @@ static int base32_decode(char *in, unsigned char *out)
-   return p - out;
- }
-+static int check_nsec3_coverage(struct dns_header *header, size_t plen, int digest_len, unsigned char *digest, int type,
-+                              char *workspace1, char *workspace2, unsigned char **nsecs, int nsec_count)
-+{
-+  int i, hash_len, salt_len, base32_len, rdlen;
-+  unsigned char *p, *psave;
-+
-+  for (i = 0; i < nsec_count; i++)
-+    if ((p = nsecs[i]))
-+      {
-+              if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
-+          !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
-+        return 0;
-+      
-+      p += 8; /* class, type, TTL */
-+      GETSHORT(rdlen, p);
-+      psave = p;
-+      p += 4; /* algo, flags, iterations */
-+      salt_len = *p++; /* salt_len */
-+      p += salt_len; /* salt */
-+      hash_len = *p++; /* p now points to next hashed name */
-+      
-+      if (!CHECK_LEN(header, p, plen, hash_len))
-+        return 0;
-+      
-+      if (digest_len == base32_len && hash_len == base32_len)
-+        {
-+          int rc = memcmp(workspace2, digest, digest_len);
-+
-+          if (rc == 0)
-+            {
-+              /* We found an NSEC3 whose hashed name exactly matches the query, so
-+                 we just need to check the type map. p points to the RR data for the record. */
-+              
-+              int offset = (type & 0xff) >> 3;
-+              int mask = 0x80 >> (type & 0x07);
-+              
-+              p += hash_len; /* skip next-domain hash */
-+              rdlen -= p - psave;
-+
-+              if (!CHECK_LEN(header, p, plen, rdlen))
-+                return 0;
-+              
-+              while (rdlen >= 2)
-+                {
-+                  if (p[0] == type >> 8)
-+                    {
-+                      /* Does the NSEC3 say our type exists? */
-+                      if (offset < p[1] && (p[offset+2] & mask) != 0)
-+                        return STAT_BOGUS;
-+                      
-+                      break; /* finshed checking */
-+                    }
-+                  
-+                  rdlen -= p[1];
-+                  p +=  p[1];
-+                }
-+
-+              return 1;
-+            }
-+          else if (rc <= 0)
-+            {
-+              /* Normal case, hash falls between NSEC3 name-hash and next domain name-hash,
-+                 wrap around case, name-hash falls between NSEC3 name-hash and end */
-+              if (memcmp(p, digest, digest_len) > 0 || memcmp(workspace2, p, digest_len) > 0)
-+                return 1;
-+            }
-+          else 
-+            {
-+              /* wrap around case, name falls between start and next domain name */
-+              if (memcmp(workspace2, p, digest_len) > 0 && memcmp(p, digest, digest_len) > 0)
-+                return 1;
-+            }
-+        }
-+      }
-+  return 0;
-+}
-+
- static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, unsigned char **nsecs, int nsec_count,
--                                   char *workspace1, char *workspace2, char *name, int type)
-+                                   char *workspace1, char *workspace2, char *name, int type, char *wildname)
- {
-   unsigned char *salt, *p, *digest;
--  int digest_len, i, iterations, salt_len, hash_len, base32_len, algo = 0;
-+  int digest_len, i, iterations, salt_len, base32_len, algo = 0;
-   struct nettle_hash const *hash;
-   char *closest_encloser, *next_closest, *wildcard;
-  
-@@ -1520,7 +1606,14 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-   if (!(hash = hash_find("sha1")))
-     return STAT_BOGUS;
--  /* Now, we need the "closest encloser NSEC3" */
-+  if ((digest_len = hash_name(name, &digest, hash, salt, salt_len, iterations)) == 0)
-+    return STAT_BOGUS;
-+  
-+  if (check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count))
-+    return STAT_SECURE;
-+
-+  /* Can't find an NSEC3 which covers the name directly, we need the "closest encloser NSEC3" 
-+     or an answer inferred from a wildcard record. */
-   closest_encloser = name;
-   next_closest = NULL;
-@@ -1529,6 +1622,9 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-       if (*closest_encloser == '.')
-       closest_encloser++;
-+      if (wildname && hostname_isequal(closest_encloser, wildname))
-+      break;
-+
-       if ((digest_len = hash_name(closest_encloser, &digest, hash, salt, salt_len, iterations)) == 0)
-       return STAT_BOGUS;
-       
-@@ -1551,127 +1647,33 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-     }
-   while ((closest_encloser = strchr(closest_encloser, '.')));
-   
--  /* No usable NSEC3s */
--  if (i == nsec_count)
-+  if (!closest_encloser)
-     return STAT_BOGUS;
-   
--  if (!next_closest)
--    {
--      /* We found an NSEC3 whose hashed name exactly matches the query, so
--       Now we just need to check the type map. p points to the RR data for the record. */
--      int rdlen;
--      unsigned char *psave;
--      int offset = (type & 0xff) >> 3;
--      int mask = 0x80 >> (type & 0x07);
--      
--      p += 8; /* class, type, TTL */
--      GETSHORT(rdlen, p);
--      psave = p;
--      p += 5 + salt_len; /* algo, flags, iterations, salt_len, salt */
--      hash_len = *p++;
--      if (!CHECK_LEN(header, p, plen, hash_len))
--      return STAT_BOGUS; /* bad packet */
--      p += hash_len;
--      rdlen -= p - psave;
--      
--      while (rdlen >= 2)
--      {
--        if (!CHECK_LEN(header, p, plen, rdlen))
--          return STAT_BOGUS;
--        
--        if (p[0] == type >> 8)
--          {
--            /* Does the NSEC3 say our type exists? */
--            if (offset < p[1] && (p[offset+2] & mask) != 0)
--              return STAT_BOGUS;
--            
--            break; /* finshed checking */
--          }
--        
--        rdlen -= p[1];
--        p +=  p[1];
--      }
--      
--      return STAT_SECURE;
--    }
--
-   /* Look for NSEC3 that proves the non-existence of the next-closest encloser */
-   if ((digest_len = hash_name(next_closest, &digest, hash, salt, salt_len, iterations)) == 0)
-     return STAT_BOGUS;
--  for (i = 0; i < nsec_count; i++)
--    if ((p = nsecs[i]))
--      {
--              if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
--          !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
--        return STAT_BOGUS;
--         
--      p += 15 + salt_len; /* class, type, TTL, rdlen, algo, flags, iterations, salt_len, salt */
--      hash_len = *p++; /* p now points to next hashed name */
-- 
--      if (!CHECK_LEN(header, p, plen, hash_len))
--        return STAT_BOGUS;
--      
--      if (digest_len == base32_len && hash_len == base32_len)
--        {
--          if (memcmp(workspace2, digest, digest_len) <= 0)
--            {
--              /* Normal case, hash falls between NSEC3 name-hash and next domain name-hash,
--                 wrap around case, name-hash falls between NSEC3 name-hash and end */
--              if (memcmp(p, digest, digest_len) > 0 || memcmp(workspace2, p, digest_len) > 0)
--                return STAT_SECURE;
--            }
--          else 
--            {
--              /* wrap around case, name falls between start and next domain name */
--              if (memcmp(workspace2, p, digest_len) > 0 && memcmp(p, digest, digest_len) > 0)
--                return STAT_SECURE;
--            }
--        }
--      }
--  
--  /* Finally, check that there's no seat of wildcard synthesis */
--  if (!(wildcard = strchr(next_closest, '.')) || wildcard == next_closest)
--    return STAT_BOGUS;
--  
--  wildcard--;
--  *wildcard = '*';
--  
--  if ((digest_len = hash_name(wildcard, &digest, hash, salt, salt_len, iterations)) == 0)
-+  if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count))
-     return STAT_BOGUS;
-   
--  for (i = 0; i < nsec_count; i++)
--    if ((p = nsecs[i]))
--      {
--      if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
--          !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
--        return STAT_BOGUS;
--         
--      p += 15 + salt_len; /* class, type, TTL, rdlen, algo, flags, iterations, salt_len, salt */
--      hash_len = *p++; /* p now points to next hashed name */
-- 
--      if (!CHECK_LEN(header, p, plen, hash_len))
--        return STAT_BOGUS;
--      
--      if (digest_len == base32_len && hash_len == base32_len)
--        {
--          if (memcmp(workspace2, digest, digest_len) <= 0)
--            {
--              /* Normal case, hash falls between NSEC3 name-hash and next domain name-hash,
--                 wrap around case, name-hash falls between NSEC3 name-hash and end */
--              if (memcmp(p, digest, digest_len) > 0 || memcmp(workspace2, p, digest_len) > 0)
--                return STAT_SECURE;
--            }
--          else 
--            {
--              /* wrap around case, name falls between start and next domain name */
--              if (memcmp(workspace2, p, digest_len) > 0 && memcmp(p, digest, digest_len) > 0)
--                return STAT_SECURE;
--            }
--        }
--      }
-+  /* Finally, check that there's no seat of wildcard synthesis */
-+  if (!wildname)
-+    {
-+      if (!(wildcard = strchr(next_closest, '.')) || wildcard == next_closest)
-+      return STAT_BOGUS;
-+      
-+      wildcard--;
-+      *wildcard = '*';
-+      
-+      if ((digest_len = hash_name(wildcard, &digest, hash, salt, salt_len, iterations)) == 0)
-+      return STAT_BOGUS;
-+      
-+      if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count))
-+      return STAT_BOGUS;
-+    }
-   
--  return STAT_BOGUS;
-+  return STAT_SECURE;
- }
-     
- /* Validate all the RRsets in the answer and authority sections of the reply (4035:3.2.3) */
-@@ -1792,8 +1794,9 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-             struct all_addr a;
-             struct blockdata *key;
-             struct crec *crecp;
--            
--            rc = validate_rrset(now, header, plen, class1, type1, name, keyname, NULL, 0, 0, 0);
-+            char *wildname;
-+
-+            rc = validate_rrset(now, header, plen, class1, type1, name, keyname, &wildname, NULL, 0, 0, 0);
-             
-             if (rc == STAT_SECURE_WILDCARD)
-               {
-@@ -1807,7 +1810,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-                 if (nsec_type == T_NSEC)
-                   rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1);
-                 else
--                  rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1);
-+                  rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1, wildname);
-                 if (rc != STAT_SECURE)
-                   return rc;
-@@ -1933,7 +1936,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-   if (nsec_type == T_NSEC)
-     return prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype);
-   else
--    return prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype);
-+    return prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, NULL);
- }
- /* Chase the CNAME chain in the packet until the first record which _doesn't validate.
-@@ -1980,7 +1983,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
-           return STAT_INSECURE;
-         
-         /* validate CNAME chain, return if insecure or need more data */
--        rc = validate_rrset(now, header, plen, class, type, name, keyname, NULL, 0, 0, 0);
-+        rc = validate_rrset(now, header, plen, class, type, name, keyname, NULL, NULL, 0, 0, 0);
-         if (rc != STAT_SECURE)
-           {
-             if (rc == STAT_NO_SIG)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/002-enhance_add_subnet_to_allow_arbitary_subnet_addresses.patch b/src/patches/dnsmasq/002-enhance_add_subnet_to_allow_arbitary_subnet_addresses.patch
new file mode 100644 (file)
index 0000000..2d3d6e4
--- /dev/null
@@ -0,0 +1,271 @@
+From a7369bef8abd241c3d85633fa9c870943f091e76 Mon Sep 17 00:00:00 2001
+From: Ed Bardsley <ebardsley@google.com>
+Date: Wed, 5 Aug 2015 21:17:18 +0100
+Subject: [PATCH] Enhance --add-subnet to allow arbitary subnet addresses.
+
+---
+ CHANGELOG     |    4 ++++
+ man/dnsmasq.8 |   32 ++++++++++++++++++++-----------
+ src/dnsmasq.h |   13 ++++++++++---
+ src/option.c  |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
+ src/rfc1035.c |   39 +++++++++++++++++++++++++++++++-------
+ 5 files changed, 121 insertions(+), 26 deletions(-)
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 3f4026d..bbc2834 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -4,6 +4,10 @@ version 2.76
+           least, 0.0.0.0 accesses the local host, so could
+           be targets for DNS rebinding. See RFC 5735 section 3 
+           for details. Thanks to Stephen Röttger for the bug report.
++
++          Enhance --add-subnet to allow arbitrary subnet addresses.
++            Thanks to Ed Barsley for the patch.
++      
+           
+ version 2.75
+             Fix reversion on 2.74 which caused 100% CPU use when a 
+diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
+index c8913b5..a23c898 100644
+--- a/man/dnsmasq.8
++++ b/man/dnsmasq.8
+@@ -604,17 +604,27 @@ experimental. Also note that exposing MAC addresses in this way may
+ have security and privacy implications. The warning about caching
+ given for --add-subnet applies to --add-mac too.
+ .TP 
+-.B --add-subnet[[=<IPv4 prefix length>],<IPv6 prefix length>]
+-Add the subnet address of the requestor to the DNS queries which are
+-forwarded upstream. The amount of the address forwarded depends on the
+-prefix length parameter: 32 (128 for IPv6) forwards the whole address,
+-zero forwards none of it but still marks the request so that no
+-upstream nameserver will add client address information either. The
+-default is zero for both IPv4 and IPv6. Note that upstream nameservers
+-may be configured to return different results based on this
+-information, but the dnsmasq cache does not take account. If a dnsmasq
+-instance is configured such that different results may be encountered,
+-caching should be disabled.
++.B --add-subnet[[=[<IPv4 address>/]<IPv4 prefix length>][,[<IPv6 address>/]<IPv6 prefix length>]]
++Add a subnet address to the DNS queries which are forwarded
++upstream. If an address is specified in the flag, it will be used,
++otherwise, the address of the requestor will be used. The amount of
++the address forwarded depends on the prefix length parameter: 32 (128
++for IPv6) forwards the whole address, zero forwards none of it but
++still marks the request so that no upstream nameserver will add client
++address information either. The default is zero for both IPv4 and
++IPv6. Note that upstream nameservers may be configured to return
++different results based on this information, but the dnsmasq cache
++does not take account. If a dnsmasq instance is configured such that
++different results may be encountered, caching should be disabled.
++
++For example,
++.B --add-subnet=24,96
++will add the /24 and /96 subnets of the requestor for IPv4 and IPv6 requestors, respectively.
++.B --add-subnet=1.2.3.4/24
++will add 1.2.3.0/24 for IPv4 requestors and ::/0 for IPv6 requestors.
++.B --add-subnet=1.2.3.4/24,1.2.3.4/24
++will add 1.2.3.0/24 for both IPv4 and IPv6 requestors.
++
+ .TP
+ .B \-c, --cache-size=<cachesize>
+ Set the size of dnsmasq's cache. The default is 150 names. Setting the cache size to zero disables caching.
+diff --git a/src/dnsmasq.h b/src/dnsmasq.h
+index cf1a782..f42acdb 100644
+--- a/src/dnsmasq.h
++++ b/src/dnsmasq.h
+@@ -541,6 +541,13 @@ struct iname {
+   struct iname *next;
+ };
++/* subnet parameters from command line */
++struct mysubnet {
++  union mysockaddr addr;
++  int addr_used;
++  int mask;
++};
++
+ /* resolv-file parms from command-line */
+ struct resolvc {
+   struct resolvc *next;
+@@ -935,9 +942,9 @@ extern struct daemon {
+   struct auth_zone *auth_zones;
+   struct interface_name *int_names;
+   char *mxtarget;
+-  int addr4_netmask;
+-  int addr6_netmask;
+-  char *lease_file; 
++  struct mysubnet *add_subnet4;
++  struct mysubnet *add_subnet6;
++  char *lease_file;
+   char *username, *groupname, *scriptuser;
+   char *luascript;
+   char *authserver, *hostmaster;
+diff --git a/src/option.c b/src/option.c
+index ecc2619..746cd11 100644
+--- a/src/option.c
++++ b/src/option.c
+@@ -445,7 +445,7 @@ static struct {
+   { LOPT_PXE_SERV, ARG_DUP, "<service>", gettext_noop("Boot service for PXE menu."), NULL },
+   { LOPT_TEST, 0, NULL, gettext_noop("Check configuration syntax."), NULL },
+   { LOPT_ADD_MAC, OPT_ADD_MAC, NULL, gettext_noop("Add requestor's MAC address to forwarded DNS queries."), NULL },
+-  { LOPT_ADD_SBNET, ARG_ONE, "<v4 pref>[,<v6 pref>]", gettext_noop("Add requestor's IP subnet to forwarded DNS queries."), NULL },
++  { LOPT_ADD_SBNET, ARG_ONE, "<v4 pref>[,<v6 pref>]", gettext_noop("Add specified IP subnet to forwarded DNS queries."), NULL },
+   { LOPT_DNSSEC, OPT_DNSSEC_PROXY, NULL, gettext_noop("Proxy DNSSEC validation results from upstream nameservers."), NULL },
+   { LOPT_INCR_ADDR, OPT_CONSEC_ADDR, NULL, gettext_noop("Attempt to allocate sequential IP addresses to DHCP clients."), NULL },
+   { LOPT_CONNTRACK, OPT_CONNTRACK, NULL, gettext_noop("Copy connection-track mark from queries to upstream connections."), NULL },
+@@ -722,6 +722,20 @@ static void do_usage(void)
+ #define ret_err(x) do { strcpy(errstr, (x)); return 0; } while (0)
++static char *parse_mysockaddr(char *arg, union mysockaddr *addr) 
++{
++  if (inet_pton(AF_INET, arg, &addr->in.sin_addr) > 0)
++    addr->sa.sa_family = AF_INET;
++#ifdef HAVE_IPV6
++  else if (inet_pton(AF_INET6, arg, &addr->in6.sin6_addr) > 0)
++    addr->sa.sa_family = AF_INET6;
++#endif
++  else
++    return _("bad address");
++   
++  return NULL;
++}
++
+ char *parse_server(char *arg, union mysockaddr *addr, union mysockaddr *source_addr, char *interface, int *flags)
+ {
+   int source_port = 0, serv_port = NAMESERVER_PORT;
+@@ -1585,7 +1599,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
+           li = match_suffix->next;
+           free(match_suffix->suffix);
+           free(match_suffix);
+-        }    
++        }
+       break;
+       }
+@@ -1593,10 +1607,45 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
+       set_option_bool(OPT_CLIENT_SUBNET);
+       if (arg)
+       {
++          char *err, *end;
+         comma = split(arg);
+-        if (!atoi_check(arg, &daemon->addr4_netmask) || 
+-            (comma && !atoi_check(comma, &daemon->addr6_netmask)))
+-           ret_err(gen_err);
++
++          struct mysubnet* new = opt_malloc(sizeof(struct mysubnet));
++          if ((end = split_chr(arg, '/')))
++          {
++            /* has subnet+len */
++            err = parse_mysockaddr(arg, &new->addr);
++            if (err)
++              ret_err(err);
++            if (!atoi_check(end, &new->mask))
++              ret_err(gen_err);
++            new->addr_used = 1;
++          } 
++        else if (!atoi_check(arg, &new->mask))
++          ret_err(gen_err);
++          
++          daemon->add_subnet4 = new;
++
++          new = opt_malloc(sizeof(struct mysubnet));
++          if (comma)
++            {
++              if ((end = split_chr(comma, '/')))
++                {
++                  /* has subnet+len */
++                  err = parse_mysockaddr(comma, &new->addr);
++                  if (err)
++                    ret_err(err);
++                  if (!atoi_check(end, &new->mask))
++                    ret_err(gen_err);
++                  new->addr_used = 1;
++                }
++              else
++                {
++                  if (!atoi_check(comma, &new->mask))
++                    ret_err(gen_err);
++                }
++            }
++          daemon->add_subnet6 = new;
+       }
+       break;
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index 29e9e65..6a51b30 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -629,26 +629,47 @@ struct subnet_opt {
+ #endif
+ };
++static void *get_addrp(union mysockaddr *addr, const short family) 
++{
++#ifdef HAVE_IPV6
++  if (family == AF_INET6)
++    return &addr->in6.sin6_addr;
++#endif
++
++  return &addr->in.sin_addr;
++}
++
+ static size_t calc_subnet_opt(struct subnet_opt *opt, union mysockaddr *source)
+ {
+   /* http://tools.ietf.org/html/draft-vandergaast-edns-client-subnet-02 */
+   
+   int len;
+   void *addrp;
++  int sa_family = source->sa.sa_family;
+ #ifdef HAVE_IPV6
+   if (source->sa.sa_family == AF_INET6)
+     {
+-      opt->family = htons(2);
+-      opt->source_netmask = daemon->addr6_netmask;
+-      addrp = &source->in6.sin6_addr;
++      opt->source_netmask = daemon->add_subnet6->mask;
++      if (daemon->add_subnet6->addr_used) 
++      {
++        sa_family = daemon->add_subnet6->addr.sa.sa_family;
++        addrp = get_addrp(&daemon->add_subnet6->addr, sa_family);
++      } 
++      else 
++      addrp = &source->in6.sin6_addr;
+     }
+   else
+ #endif
+     {
+-      opt->family = htons(1);
+-      opt->source_netmask = daemon->addr4_netmask;
+-      addrp = &source->in.sin_addr;
++      opt->source_netmask = daemon->add_subnet4->mask;
++      if (daemon->add_subnet4->addr_used)
++      {
++        sa_family = daemon->add_subnet4->addr.sa.sa_family;
++        addrp = get_addrp(&daemon->add_subnet4->addr, sa_family);
++      } 
++      else 
++      addrp = &source->in.sin_addr;
+     }
+   
+   opt->scope_netmask = 0;
+@@ -656,6 +677,11 @@ static size_t calc_subnet_opt(struct subnet_opt *opt, union mysockaddr *source)
+   
+   if (opt->source_netmask != 0)
+     {
++#ifdef HAVE_IPV6
++      opt->family = htons(sa_family == AF_INET6 ? 2 : 1);
++#else
++      opt->family = htons(1);
++#endif
+       len = ((opt->source_netmask - 1) >> 3) + 1;
+       memcpy(opt->addr, addrp, len);
+       if (opt->source_netmask & 7)
+@@ -2335,4 +2361,3 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+   
+   return len;
+ }
+-
+-- 
+1.7.10.4
diff --git a/src/patches/dnsmasq/0020-Initialise-return-value.patch b/src/patches/dnsmasq/0020-Initialise-return-value.patch
deleted file mode 100644 (file)
index 362c596..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From 83d2ed09fc0216b567d7fb2197e4ff3eae150b0d Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Tue, 23 Dec 2014 18:42:38 +0000
-Subject: [PATCH 20/78] Initialise return value.
-
----
- src/dnssec.c | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 9350d3e8c963..ed8cf893bad2 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -637,10 +637,13 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-   struct crec *crecp = NULL;
-   int type_covered, algo, labels, orig_ttl, sig_expiration, sig_inception, key_tag;
-   u16 *rr_desc = get_desc(type);
--
-+ 
-+  if (wildcard_out)
-+    *wildcard_out = NULL;
-+  
-   if (!(p = skip_questions(header, plen)))
-     return STAT_BOGUS;
--
-+  
-   name_labels = count_labels(name); /* For 4035 5.3.2 check */
-   /* look for RRSIGs for this RRset and get pointers to each RR in the set. */
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0021-Add-ignore-address-option.patch b/src/patches/dnsmasq/0021-Add-ignore-address-option.patch
deleted file mode 100644 (file)
index b8ef47d..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-From 32fc6dbe03569d70dd394420ceb73532cf303c33 Mon Sep 17 00:00:00 2001
-From: Glen Huang <curvedmark@gmail.com>
-Date: Sat, 27 Dec 2014 15:28:12 +0000
-Subject: [PATCH 21/78] Add --ignore-address option.
-
----
- CHANGELOG     |  8 ++++++++
- man/dnsmasq.8 |  6 ++++++
- src/dnsmasq.h |  3 ++-
- src/forward.c |  4 ++++
- src/option.c  | 18 +++++++++++++++---
- src/rfc1035.c | 37 +++++++++++++++++++++++++++++++++++++
- 6 files changed, 72 insertions(+), 4 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 956b71a151db..2b6356bcfb02 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -22,6 +22,14 @@ version 2.73
-           Fix crash in DNSSEC code with long RRs. Thanks to Marco Davids
-           for the bug report.
-+          
-+          Add --ignore-address option. Ignore replies to A-record 
-+          queries which include the specified address. No error is
-+          generated, dnsmasq simply continues to listen for another 
-+          reply. This is useful to defeat blocking strategies which
-+          rely on quickly supplying a forged answer to a DNS 
-+          request for certain domains, before the correct answer can
-+            arrive. Thanks to Glen Huang for the patch.
-       
- version 2.72
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 0b8e04f0a897..4236ba307df3 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -293,6 +293,12 @@ an advertising web page in response to queries for unregistered names,
- instead of the correct NXDOMAIN response. This option tells dnsmasq to
- fake the correct response when it sees this behaviour. As at Sept 2003
- the IP address being returned by Verisign is 64.94.110.11
-+.TP 
-+.B \-B, --ignore-address=<ipaddr>
-+Ignore replies to A-record queries which include the specified address. 
-+No error is generated, dnsmasq simply continues to listen for another reply. 
-+This is useful to defeat blocking strategies which rely on quickly supplying a
-+forged answer to a DNS request for certain domain, before the correct answer can arrive.
- .TP
- .B \-f, --filterwin2k
- Later versions of windows make periodic DNS requests which don't get sensible answers from
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 1dd61c5edba3..7bc982ddf73c 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -930,7 +930,7 @@ extern struct daemon {
-   char *runfile; 
-   char *lease_change_command;
-   struct iname *if_names, *if_addrs, *if_except, *dhcp_except, *auth_peers, *tftp_interfaces;
--  struct bogus_addr *bogus_addr;
-+  struct bogus_addr *bogus_addr, *ignore_addr;
-   struct server *servers;
-   struct ipsets *ipsets;
-   int log_fac; /* log facility */
-@@ -1093,6 +1093,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
-                     time_t now, int *ad_reqd, int *do_bit);
- int check_for_bogus_wildcard(struct dns_header *header, size_t qlen, char *name, 
-                            struct bogus_addr *addr, time_t now);
-+int check_for_ignored_address(struct dns_header *header, size_t qlen, struct bogus_addr *baddr);
- unsigned char *find_pseudoheader(struct dns_header *header, size_t plen,
-                                size_t *len, unsigned char **p, int *is_sign);
- int check_for_local_domain(char *name, time_t now);
-diff --git a/src/forward.c b/src/forward.c
-index 408a179a20f4..f28c7d51f708 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -724,6 +724,10 @@ void reply_query(int fd, int family, time_t now)
-   if (!(forward = lookup_frec(ntohs(header->id), hash)))
-     return;
-   
-+  if (daemon->ignore_addr && RCODE(header) == NOERROR &&
-+      check_for_ignored_address(header, n, daemon->ignore_addr))
-+    return;
-+
-   if ((RCODE(header) == SERVFAIL || RCODE(header) == REFUSED) &&
-       !option_bool(OPT_ORDER) &&
-       forward->forwardall == 0)
-diff --git a/src/option.c b/src/option.c
-index 209fa6976609..907d0cf88de9 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -147,6 +147,7 @@ struct myoption {
- #define LOPT_LOCAL_SERVICE 335
- #define LOPT_DNSSEC_TIME   336
- #define LOPT_LOOP_DETECT   337
-+#define LOPT_IGNORE_ADDR   338
- #ifdef HAVE_GETOPT_LONG
- static const struct option opts[] =  
-@@ -181,6 +182,7 @@ static const struct myoption opts[] =
-     { "local-service", 0, 0, LOPT_LOCAL_SERVICE },
-     { "bogus-priv", 0, 0, 'b' },
-     { "bogus-nxdomain", 1, 0, 'B' },
-+    { "ignore-address", 1, 0, LOPT_IGNORE_ADDR },
-     { "selfmx", 0, 0, 'e' },
-     { "filterwin2k", 0, 0, 'f' },
-     { "pid-file", 2, 0, 'x' },
-@@ -457,6 +459,7 @@ static struct {
-   { LOPT_QUIET_RA, OPT_QUIET_RA, NULL, gettext_noop("Do not log RA."), NULL },
-   { LOPT_LOCAL_SERVICE, OPT_LOCAL_SERVICE, NULL, gettext_noop("Accept queries only from directly-connected networks"), NULL },
-   { LOPT_LOOP_DETECT, OPT_LOOP_DETECT, NULL, gettext_noop("Detect and remove DNS forwarding loops"), NULL },
-+  { LOPT_IGNORE_ADDR, ARG_DUP, "<ipaddr>", gettext_noop("Ignore DNS responses containing ipaddr."), NULL }, 
-   { 0, 0, NULL, NULL, NULL }
- }; 
-@@ -2119,14 +2122,23 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-       break;
-       
-     case 'B':  /* --bogus-nxdomain */
--      {
-+    case LOPT_IGNORE_ADDR: /* --ignore-address */
-+     {
-       struct in_addr addr;
-       unhide_metas(arg);
-       if (arg && (inet_pton(AF_INET, arg, &addr) > 0))
-         {
-           struct bogus_addr *baddr = opt_malloc(sizeof(struct bogus_addr));
--          baddr->next = daemon->bogus_addr;
--          daemon->bogus_addr = baddr;
-+          if (option == 'B')
-+            {
-+              baddr->next = daemon->bogus_addr;
-+              daemon->bogus_addr = baddr;
-+            }
-+          else
-+            {
-+              baddr->next = daemon->ignore_addr;
-+              daemon->ignore_addr = baddr;
-+            }
-           baddr->addr = addr;
-         }
-       else
-diff --git a/src/rfc1035.c b/src/rfc1035.c
-index bdeb3fb10e68..75c4266b47dd 100644
---- a/src/rfc1035.c
-+++ b/src/rfc1035.c
-@@ -1328,6 +1328,43 @@ int check_for_bogus_wildcard(struct dns_header *header, size_t qlen, char *name,
-   return 0;
- }
-+int check_for_ignored_address(struct dns_header *header, size_t qlen, struct bogus_addr *baddr)
-+{
-+  unsigned char *p;
-+  int i, qtype, qclass, rdlen;
-+  struct bogus_addr *baddrp;
-+
-+  /* skip over questions */
-+  if (!(p = skip_questions(header, qlen)))
-+    return 0; /* bad packet */
-+
-+  for (i = ntohs(header->ancount); i != 0; i--)
-+    {
-+      if (!(p = skip_name(p, header, qlen, 10)))
-+      return 0; /* bad packet */
-+      
-+      GETSHORT(qtype, p); 
-+      GETSHORT(qclass, p);
-+      p += 4; /* TTL */
-+      GETSHORT(rdlen, p);
-+      
-+      if (qclass == C_IN && qtype == T_A)
-+      {
-+        if (!CHECK_LEN(header, p, qlen, INADDRSZ))
-+          return 0;
-+        
-+        for (baddrp = baddr; baddrp; baddrp = baddrp->next)
-+          if (memcmp(&baddrp->addr, p, INADDRSZ) == 0)
-+            return 1;
-+      }
-+      
-+      if (!ADD_RDLEN(header, p, qlen, rdlen))
-+      return 0;
-+    }
-+  
-+  return 0;
-+}
-+
- int add_resource_record(struct dns_header *header, char *limit, int *truncp, int nameoffset, unsigned char **pp, 
-                       unsigned long ttl, int *offset, unsigned short type, unsigned short class, char *format, ...)
- {
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0022-Bad-packet-protection.patch b/src/patches/dnsmasq/0022-Bad-packet-protection.patch
deleted file mode 100644 (file)
index 749195f..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From 0b1008d367d44e77352134a4c5178f896f0db3e7 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 27 Dec 2014 15:33:32 +0000
-Subject: [PATCH 22/78] Bad packet protection.
-
----
- src/dnssec.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index ed8cf893bad2..026794b077e5 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -805,7 +805,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-               {
-                 while (*name_start != '.' && *name_start != 0)
-                   name_start++;
--                if (k != 1)
-+                if (k != 1 && *name_start == '.')
-                   name_start++;
-               }
-             
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch b/src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch
deleted file mode 100644 (file)
index 28fe61a..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-From d310ab7ecbffce79d3d90debba621e0222f9bced Mon Sep 17 00:00:00 2001
-From: Matthias Andree <matthias.andree@gmx.de>
-Date: Sat, 27 Dec 2014 15:36:38 +0000
-Subject: [PATCH 23/78] Fix build failure in new inotify code on BSD.
-
----
- src/inotify.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/inotify.c b/src/inotify.c
-index 960bf5efb41f..83730008c11b 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -15,10 +15,10 @@
- */
- #include "dnsmasq.h"
--#include <sys/inotify.h>
--
- #ifdef HAVE_LINUX_NETWORK
-+#include <sys/inotify.h>
-+
- /* the strategy is to set a inotify on the directories containing
-    resolv files, for any files in the directory which are close-write 
-    or moved into the directory.
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch b/src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch
deleted file mode 100644 (file)
index 31535dc..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-From 81c538efcebfce2ce4a1d3a420b6c885b8f08df9 Mon Sep 17 00:00:00 2001
-From: Yousong Zhou <yszhou4tech@gmail.com>
-Date: Sat, 3 Jan 2015 16:36:14 +0000
-Subject: [PATCH 24/78] Implement makefile dependencies on COPTS variable.
-
----
- .gitignore |  2 +-
- Makefile   | 10 ++++++----
- 2 files changed, 7 insertions(+), 5 deletions(-)
-
-diff --git a/.gitignore b/.gitignore
-index fcdbcbd135ae..23f11488ab4c 100644
---- a/.gitignore
-+++ b/.gitignore
-@@ -3,7 +3,7 @@ src/*.mo
- src/dnsmasq.pot
- src/dnsmasq
- src/dnsmasq_baseline
--src/.configured
-+src/.copts_*
- contrib/wrt/dhcp_lease_time
- contrib/wrt/dhcp_release
- debian/base/
-diff --git a/Makefile b/Makefile
-index c340f1c7b59a..5675f60c2036 100644
---- a/Makefile
-+++ b/Makefile
-@@ -64,6 +64,8 @@ nettle_libs =   `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC $(PKG_CONFIG
- gmp_libs =      `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC NO_GMP --copy -lgmp`
- sunos_libs =    `if uname | grep SunOS >/dev/null 2>&1; then echo -lsocket -lnsl -lposix4; fi`
- version =     -DVERSION='\"`$(top)/bld/get-version $(top)`\"'
-+copts_conf = .copts_$(shell $(CC) -DDNSMASQ_COMPILE_OPTS $(COPTS) -E $(top)/$(SRC)/dnsmasq.h | \
-+                      ( md5sum 2>/dev/null || md5 ) | cut -f 1 -d ' ')
- objs = cache.o rfc1035.o util.o option.o forward.o network.o \
-        dnsmasq.o dhcp.o lease.o rfc2131.o netlink.o dbus.o bpf.o \
-@@ -83,7 +85,7 @@ all : $(BUILDDIR)
- mostly_clean :
-       rm -f $(BUILDDIR)/*.mo $(BUILDDIR)/*.pot 
--      rm -f $(BUILDDIR)/.configured $(BUILDDIR)/*.o $(BUILDDIR)/dnsmasq.a $(BUILDDIR)/dnsmasq 
-+      rm -f $(BUILDDIR)/.copts_* $(BUILDDIR)/*.o $(BUILDDIR)/dnsmasq.a $(BUILDDIR)/dnsmasq
- clean : mostly_clean
-       rm -f $(BUILDDIR)/dnsmasq_baseline
-@@ -139,8 +141,8 @@ bloatcheck : $(BUILDDIR)/dnsmasq_baseline mostly_clean all
- # rules below are targets in recusive makes with cwd=$(BUILDDIR)
--.configured: $(hdrs)
--      @rm -f *.o
-+$(copts_conf): $(hdrs)
-+      @rm -f *.o .copts_*
-       @touch $@
- $(objs:.o=.c) $(hdrs):
-@@ -149,7 +151,7 @@ $(objs:.o=.c) $(hdrs):
- .c.o:
-       $(CC) $(CFLAGS) $(COPTS) $(i18n) $(build_cflags) $(RPM_OPT_FLAGS) -c $< 
--dnsmasq : .configured $(hdrs) $(objs)
-+dnsmasq : $(copts_conf) $(hdrs) $(objs)
-       $(CC) $(LDFLAGS) -o $@ $(objs) $(build_libs) $(LIBS) 
- dnsmasq.pot : $(objs:.o=.c) $(hdrs)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch b/src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch
deleted file mode 100644 (file)
index a99656d..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From d8dbd903d024f84a149dac2f8a674a68dfed47a3 Mon Sep 17 00:00:00 2001
-From: Yousong Zhou <yszhou4tech@gmail.com>
-Date: Mon, 5 Jan 2015 17:03:35 +0000
-Subject: [PATCH 25/78] Fix race condition issue in makefile.
-
----
- Makefile | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 5675f60c2036..bcbd5571671d 100644
---- a/Makefile
-+++ b/Makefile
-@@ -148,10 +148,12 @@ $(copts_conf): $(hdrs)
- $(objs:.o=.c) $(hdrs):
-       ln -s $(top)/$(SRC)/$@ .
-+$(objs): $(copts_conf) $(hdrs)
-+
- .c.o:
-       $(CC) $(CFLAGS) $(COPTS) $(i18n) $(build_cflags) $(RPM_OPT_FLAGS) -c $< 
--dnsmasq : $(copts_conf) $(hdrs) $(objs)
-+dnsmasq : $(objs)
-       $(CC) $(LDFLAGS) -o $@ $(objs) $(build_libs) $(LIBS) 
- dnsmasq.pot : $(objs:.o=.c) $(hdrs)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch b/src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch
deleted file mode 100644 (file)
index e0c8374..0000000
+++ /dev/null
@@ -1,792 +0,0 @@
-From 97e618a0e3f29465acc689d87288596b006f197e Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 7 Jan 2015 21:55:43 +0000
-Subject: [PATCH 26/78] DNSSEC: do top-down search for limit of secure
- delegation.
-
----
- CHANGELOG     |   9 ++
- src/dnsmasq.h |  11 +-
- src/dnssec.c  |  91 +++++++++-------
- src/forward.c | 327 +++++++++++++++++++++++++++++++++-------------------------
- 4 files changed, 260 insertions(+), 178 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 2b6356bcfb02..e8bf80f81baa 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -31,7 +31,16 @@ version 2.73
-           request for certain domains, before the correct answer can
-             arrive. Thanks to Glen Huang for the patch.
-       
-+          Revisit the part of DNSSEC validation which determines if an 
-+          unsigned answer is legit, or is in some part of the DNS 
-+          tree which should be signed. Dnsmasq now works from the 
-+          DNS root downward looking for the limit of signed 
-+          delegations, rather than working bottom up. This is 
-+          both more correct, and less likely to trip over broken 
-+          nameservers in the unsigned parts of the DNS tree 
-+          which don't respond well to DNSSEC queries.
-+      
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 7bc982ddf73c..2f4597294a56 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -569,8 +569,9 @@ struct hostsfile {
- #define STAT_SECURE_WILDCARD    7
- #define STAT_NO_SIG             8
- #define STAT_NO_DS              9
--#define STAT_NEED_DS_NEG       10
--#define STAT_CHASE_CNAME       11
-+#define STAT_NO_NS             10
-+#define STAT_NEED_DS_NEG       11
-+#define STAT_CHASE_CNAME       12
- #define FREC_NOREBIND           1
- #define FREC_CHECKING_DISABLED  2
-@@ -604,7 +605,9 @@ struct frec {
- #ifdef HAVE_DNSSEC 
-   int class, work_counter;
-   struct blockdata *stash; /* Saved reply, whilst we validate */
--  size_t stash_len;
-+  struct blockdata *orig_domain; /* domain of original query, whilst
-+                                  we're seeing is if in unsigned domain */
-+  size_t stash_len, name_start, name_len;
-   struct frec *dependent; /* Query awaiting internally-generated DNSKEY or DS query */
-   struct frec *blocking_query; /* Query which is blocking us. */
- #endif
-@@ -1126,7 +1129,7 @@ int in_zone(struct auth_zone *zone, char *name, char **cut);
- size_t dnssec_generate_query(struct dns_header *header, char *end, char *name, int class, int type, union mysockaddr *addr);
- int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t n, char *name, char *keyname, int class);
- int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class);
--int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int *class, int *neganswer);
-+int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int *class, int *neganswer, int *nons);
- int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname);
- int dnskey_keytag(int alg, int flags, unsigned char *rdata, int rdlen);
- size_t filter_rrsigs(struct dns_header *header, size_t plen);
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 026794b077e5..8f27677628b2 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -875,8 +875,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
- /* The DNS packet is expected to contain the answer to a DNSKEY query.
-    Put all DNSKEYs in the answer which are valid into the cache.
-    return codes:
--         STAT_INSECURE No DNSKEYs in reply.
--       STAT_SECURE   At least one valid DNSKEY found and in cache.
-+         STAT_SECURE   At least one valid DNSKEY found and in cache.
-        STAT_BOGUS    No DNSKEYs found, which  can be validated with DS,
-                      or self-sign for DNSKEY RRset is not valid, bad packet.
-        STAT_NEED_DS  DS records to validate a key not found, name in keyname 
-@@ -896,11 +895,8 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-   GETSHORT(qtype, p);
-   GETSHORT(qclass, p);
-   
--  if (qtype != T_DNSKEY || qclass != class)
-+  if (qtype != T_DNSKEY || qclass != class || ntohs(header->ancount) == 0)
-     return STAT_BOGUS;
--  
--  if (ntohs(header->ancount) == 0)
--    return STAT_INSECURE;
-   /* See if we have cached a DS record which validates this key */
-   if (!(crecp = cache_find_by_name(NULL, name, now, F_DS)))
-@@ -1103,17 +1099,17 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
- /* The DNS packet is expected to contain the answer to a DS query
-    Put all DSs in the answer which are valid into the cache.
-    return codes:
--   STAT_INSECURE    no DS in reply or not signed.
-    STAT_SECURE      At least one valid DS found and in cache.
-    STAT_NO_DS       It's proved there's no DS here.
--   STAT_BOGUS       At least one DS found, which fails validation, bad packet.
-+   STAT_NO_NS       It's proved there's no DS _or_ NS here.
-+   STAT_BOGUS       no DS in reply or not signed, fails validation, bad packet.
-    STAT_NEED_DNSKEY DNSKEY records to validate a DS not found, name in keyname
- */
- int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class)
- {
-   unsigned char *p = (unsigned char *)(header+1);
--  int qtype, qclass, val, i, neganswer;
-+  int qtype, qclass, val, i, neganswer, nons;
-   if (ntohs(header->qdcount) != 1 ||
-       !(p = skip_name(p, header, plen, 4)))
-@@ -1125,32 +1121,39 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
-   if (qtype != T_DS || qclass != class)
-     val = STAT_BOGUS;
-   else
--    val = dnssec_validate_reply(now, header, plen, name, keyname, NULL, &neganswer);
--
--  if (val == STAT_NO_SIG)
--    val = STAT_INSECURE;
-+    val = dnssec_validate_reply(now, header, plen, name, keyname, NULL, &neganswer, &nons);
-+  /* Note dnssec_validate_reply() will have cached positive answers */
-+  
-+  if (val == STAT_NO_SIG || val == STAT_INSECURE)
-+    val = STAT_BOGUS;
-   
-   p = (unsigned char *)(header+1);
-   extract_name(header, plen, &p, name, 1, 4);
-   p += 4; /* qtype, qclass */
-   
-   if (!(p = skip_section(p, ntohs(header->ancount), header, plen)))
--    return STAT_BOGUS;
-+    val = STAT_BOGUS;
-   
-   if (val == STAT_BOGUS)
--    log_query(F_UPSTREAM, name, NULL, "BOGUS DS");
--  
--  if ((val == STAT_SECURE || val == STAT_INSECURE) && neganswer)
-     {
--      int rdlen, flags = F_FORWARD | F_DS | F_NEG;
-+      log_query(F_UPSTREAM, name, NULL, "BOGUS DS");
-+      return STAT_BOGUS;
-+    }
-+
-+  /* By here, the answer is proved secure, and a positive answer has been cached. */
-+  if (val == STAT_SECURE && neganswer)
-+    {
-+      int rdlen, flags = F_FORWARD | F_DS | F_NEG | F_DNSSECOK;
-       unsigned long ttl, minttl = ULONG_MAX;
-       struct all_addr a;
-       if (RCODE(header) == NXDOMAIN)
-       flags |= F_NXDOMAIN;
-       
--      if (val == STAT_SECURE)
--      flags |= F_DNSSECOK;
-+      /* We only cache validated DS records, DNSSECOK flag hijacked 
-+       to store presence/absence of NS. */
-+      if (nons)
-+      flags &= ~F_DNSSECOK;
-       
-       for (i = ntohs(header->nscount); i != 0; i--)
-       {
-@@ -1196,10 +1199,12 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
-         a.addr.dnssec.class = class;
-         cache_insert(name, &a, now, ttl, flags);
-         
--        cache_end_insert(); 
-+        cache_end_insert();  
-+        
-+        log_query(F_UPSTREAM, name, NULL, nons ? "no delegation" : "no DS");
-       }
--      return (val == STAT_SECURE) ? STAT_NO_DS : STAT_INSECURE; 
-+      return nons ? STAT_NO_NS : STAT_NO_DS; 
-     }
-   return val;
-@@ -1323,12 +1328,15 @@ static int find_nsec_records(struct dns_header *header, size_t plen, unsigned ch
- }
- static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsigned char **nsecs, int nsec_count,
--                                  char *workspace1, char *workspace2, char *name, int type)
-+                                  char *workspace1, char *workspace2, char *name, int type, int *nons)
- {
-   int i, rc, rdlen;
-   unsigned char *p, *psave;
-   int offset = (type & 0xff) >> 3;
-   int mask = 0x80 >> (type & 0x07);
-+
-+  if (nons)
-+    *nons = 0;
-   
-   /* Find NSEC record that proves name doesn't exist */
-   for (i = 0; i < nsec_count; i++)
-@@ -1355,6 +1363,10 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
-         rdlen -= p - psave;
-         /* rdlen is now length of type map, and p points to it */
-         
-+        /* If we can prove that there's no NS record, return that information. */
-+        if (nons && rdlen >= 2 && p[0] == 0 && (p[2] & (0x80 >> T_NS)) == 0)
-+          *nons = 1;
-+        
-         while (rdlen >= 2)
-           {
-             if (!CHECK_LEN(header, p, plen, rdlen))
-@@ -1456,7 +1468,7 @@ static int base32_decode(char *in, unsigned char *out)
- }
- static int check_nsec3_coverage(struct dns_header *header, size_t plen, int digest_len, unsigned char *digest, int type,
--                              char *workspace1, char *workspace2, unsigned char **nsecs, int nsec_count)
-+                              char *workspace1, char *workspace2, unsigned char **nsecs, int nsec_count, int *nons)
- {
-   int i, hash_len, salt_len, base32_len, rdlen;
-   unsigned char *p, *psave;
-@@ -1497,6 +1509,10 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
-               if (!CHECK_LEN(header, p, plen, rdlen))
-                 return 0;
-               
-+              /* If we can prove that there's no NS record, return that information. */
-+              if (nons && rdlen >= 2 && p[0] == 0 && (p[2] & (0x80 >> T_NS)) == 0)
-+                *nons = 1;
-+              
-               while (rdlen >= 2)
-                 {
-                   if (p[0] == type >> 8)
-@@ -1533,13 +1549,16 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
- }
- static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, unsigned char **nsecs, int nsec_count,
--                                   char *workspace1, char *workspace2, char *name, int type, char *wildname)
-+                                   char *workspace1, char *workspace2, char *name, int type, char *wildname, int *nons)
- {
-   unsigned char *salt, *p, *digest;
-   int digest_len, i, iterations, salt_len, base32_len, algo = 0;
-   struct nettle_hash const *hash;
-   char *closest_encloser, *next_closest, *wildcard;
-- 
-+  
-+  if (nons)
-+    *nons = 0;
-+  
-   /* Look though the NSEC3 records to find the first one with 
-      an algorithm we support (currently only algo == 1).
-@@ -1612,7 +1631,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-   if ((digest_len = hash_name(name, &digest, hash, salt, salt_len, iterations)) == 0)
-     return STAT_BOGUS;
-   
--  if (check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count))
-+  if (check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count, nons))
-     return STAT_SECURE;
-   /* Can't find an NSEC3 which covers the name directly, we need the "closest encloser NSEC3" 
-@@ -1657,7 +1676,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-   if ((digest_len = hash_name(next_closest, &digest, hash, salt, salt_len, iterations)) == 0)
-     return STAT_BOGUS;
--  if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count))
-+  if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count, NULL))
-     return STAT_BOGUS;
-   
-   /* Finally, check that there's no seat of wildcard synthesis */
-@@ -1672,7 +1691,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-       if ((digest_len = hash_name(wildcard, &digest, hash, salt, salt_len, iterations)) == 0)
-       return STAT_BOGUS;
-       
--      if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count))
-+      if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count, NULL))
-       return STAT_BOGUS;
-     }
-   
-@@ -1681,7 +1700,8 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-     
- /* Validate all the RRsets in the answer and authority sections of the reply (4035:3.2.3) */
- /* Returns are the same as validate_rrset, plus the class if the missing key is in *class */
--int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int *class, int *neganswer)
-+int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, 
-+                        int *class, int *neganswer, int *nons)
- {
-   unsigned char *ans_start, *qname, *p1, *p2, **nsecs;
-   int type1, class1, rdlen1, type2, class2, rdlen2, qclass, qtype;
-@@ -1811,10 +1831,11 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-                   return STAT_BOGUS; /* No NSECs or bad packet */
-                 
-                 if (nsec_type == T_NSEC)
--                  rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1);
-+                  rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1, NULL);
-                 else
--                  rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1, wildname);
--
-+                  rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, 
-+                                                 keyname, name, type1, wildname, NULL);
-+                
-                 if (rc != STAT_SECURE)
-                   return rc;
-               } 
-@@ -1937,9 +1958,9 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-     return STAT_BOGUS;
-   
-   if (nsec_type == T_NSEC)
--    return prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype);
-+    return prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, nons);
-   else
--    return prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, NULL);
-+    return prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, NULL, nons);
- }
- /* Chase the CNAME chain in the packet until the first record which _doesn't validate.
-diff --git a/src/forward.c b/src/forward.c
-index f28c7d51f708..ee8d7b52d5e5 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -26,8 +26,9 @@ static void free_frec(struct frec *f);
- #ifdef HAVE_DNSSEC
- static int tcp_key_recurse(time_t now, int status, struct dns_header *header, size_t n, 
-                          int class, char *name, char *keyname, struct server *server, int *keycount);
--static int do_check_sign(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class);
--static int send_check_sign(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname);
-+static int do_check_sign(struct frec *forward, int status, time_t now, char *name, char *keyname);
-+static int send_check_sign(struct frec *forward, time_t now, struct dns_header *header, size_t plen, 
-+                         char *name, char *keyname);
- #endif
-@@ -815,18 +816,22 @@ void reply_query(int fd, int family, time_t now)
-         else if (forward->flags & FREC_DS_QUERY)
-           {
-             status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
--            if (status == STAT_NO_DS)
--              status = STAT_INSECURE;
-+            if (status == STAT_NO_DS || status == STAT_NO_NS)
-+              status = STAT_BOGUS;
-           }
-         else if (forward->flags & FREC_CHECK_NOSIGN)
--          status = do_check_sign(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
-+          {
-+            status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
-+            if (status != STAT_NEED_KEY)
-+              status = do_check_sign(forward, status, now, daemon->namebuff, daemon->keyname);
-+          }
-         else
-           {
--            status = dnssec_validate_reply(now, header, n, daemon->namebuff, daemon->keyname, &forward->class, NULL);
-+            status = dnssec_validate_reply(now, header, n, daemon->namebuff, daemon->keyname, &forward->class, NULL, NULL);
-             if (status == STAT_NO_SIG)
-               {
-                 if (option_bool(OPT_DNSSEC_NO_SIGN))
--                  status = send_check_sign(now, header, n, daemon->namebuff, daemon->keyname);
-+                  status = send_check_sign(forward, now, header, n, daemon->namebuff, daemon->keyname);
-                 else
-                   status = STAT_INSECURE;
-               }
-@@ -861,6 +866,7 @@ void reply_query(int fd, int family, time_t now)
-                 new->blocking_query = NULL;
-                 new->sentto = server;
-                 new->rfd4 = NULL;
-+                new->orig_domain = NULL;
- #ifdef HAVE_IPV6
-                 new->rfd6 = NULL;
- #endif
-@@ -889,7 +895,9 @@ void reply_query(int fd, int family, time_t now)
-                 new->new_id = get_id();
-                 header->id = htons(new->new_id);
-                 /* Save query for retransmission */
--                new->stash = blockdata_alloc((char *)header, nn);
-+                if (!(new->stash = blockdata_alloc((char *)header, nn)))
-+                  return;
-+                    
-                 new->stash_len = nn;
-                 
-                 /* Don't resend this. */
-@@ -946,18 +954,22 @@ void reply_query(int fd, int family, time_t now)
-                 else if (forward->flags & FREC_DS_QUERY)
-                   {
-                     status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
--                    if (status == STAT_NO_DS)
--                      status = STAT_INSECURE;
-+                    if (status == STAT_NO_DS || status == STAT_NO_NS)
-+                      status = STAT_BOGUS;
-                   }
-                 else if (forward->flags & FREC_CHECK_NOSIGN)
--                  status = do_check_sign(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
-+                  {
-+                    status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
-+                    if (status != STAT_NEED_KEY)
-+                      status = do_check_sign(forward, status, now, daemon->namebuff, daemon->keyname);
-+                  }
-                 else
-                   {
--                    status = dnssec_validate_reply(now, header, n, daemon->namebuff, daemon->keyname, &forward->class, NULL); 
-+                    status = dnssec_validate_reply(now, header, n, daemon->namebuff, daemon->keyname, &forward->class, NULL, NULL);   
-                     if (status == STAT_NO_SIG)
-                       {
-                         if (option_bool(OPT_DNSSEC_NO_SIGN))
--                          status = send_check_sign(now, header, n, daemon->namebuff, daemon->keyname);
-+                          status = send_check_sign(forward, now, header, n, daemon->namebuff, daemon->keyname);
-                         else
-                           status = STAT_INSECURE;
-                       }
-@@ -1319,70 +1331,80 @@ void receive_query(struct listener *listen, time_t now)
- /* UDP: we've got an unsigned answer, return STAT_INSECURE if we can prove there's no DS
-    and therefore the answer shouldn't be signed, or STAT_BOGUS if it should be, or 
-    STAT_NEED_DS_NEG and keyname if we need to do the query. */
--static int send_check_sign(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname)
-+static int send_check_sign(struct frec *forward, time_t now, struct dns_header *header, size_t plen, 
-+                         char *name, char *keyname)
- {
--  struct crec *crecp;
--  char *name_start = name;
-   int status = dnssec_chase_cname(now, header, plen, name, keyname);
-   
-   if (status != STAT_INSECURE)
-     return status;
-+  /* Store the domain we're trying to check. */
-+  forward->name_start = strlen(name);
-+  forward->name_len = forward->name_start + 1;
-+  if (!(forward->orig_domain = blockdata_alloc(name, forward->name_len)))
-+    return STAT_BOGUS;
-+  
-+  return do_check_sign(forward, 0, now, name, keyname);
-+}
-+ 
-+/* We either have a a reply (header non-NULL, or we need to start by looking in the cache */ 
-+static int do_check_sign(struct frec *forward, int status, time_t now, char *name, char *keyname)
-+{
-+  /* get domain we're checking back from blockdata store, it's stored on the original query. */
-+  while (forward->dependent)
-+    forward = forward->dependent;
-+
-+  blockdata_retrieve(forward->orig_domain, forward->name_len, name);
-+  
-   while (1)
-     {
--      crecp = cache_find_by_name(NULL, name_start, now, F_DS);
--      
--      if (crecp && (crecp->flags & F_DNSSECOK))
--      return (crecp->flags & F_NEG) ? STAT_INSECURE : STAT_BOGUS;
--       
--      if (crecp && (crecp->flags & F_NEG) && (name_start = strchr(name_start, '.')))
-+      char *p; 
-+
-+      if (status == 0)
-       {
--        name_start++; /* chop a label off and try again */
--        continue;
-+        struct crec *crecp;
-+
-+        /* Haven't received answer, see if in cache */
-+        if (!(crecp = cache_find_by_name(NULL, &name[forward->name_start], now, F_DS)))
-+          {
-+            /* put name of DS record we're missing into keyname */
-+            strcpy(keyname, &name[forward->name_start]);
-+            /* and wait for reply to arrive */
-+            return STAT_NEED_DS_NEG;
-+          }
-+
-+        /* F_DNSSECOK misused in DS cache records to non-existance of NS record */ 
-+        if (!(crecp->flags & F_NEG))
-+          status = STAT_SECURE;
-+        else if (crecp->flags & F_DNSSECOK)
-+          status = STAT_NO_DS;
-+        else
-+          status = STAT_NO_NS;
-       }
-+      
-+      /* Have entered non-signed part of DNS tree. */ 
-+      if (status == STAT_NO_DS)
-+      return STAT_INSECURE;
--      /* Reached the root */
--      if (!name_start)
-+      if (status == STAT_BOGUS)
-       return STAT_BOGUS;
--      strcpy(keyname, name_start);
--      return STAT_NEED_DS_NEG;
--    }
--}
--
--/* Got answer to DS query from send_check_sign, check for proven non-existence, or make the next DS query to try. */
--static int do_check_sign(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class)
--  
--{ 
--  char *name_start;
--  unsigned char *p;
--  int status;
-+      /* There's a proven DS record, or we're within a zone, where there doesn't need
-+       to be a DS record. Add a name and try again. 
-+       If we've already tried the whole name, then fail */
--  /* In this case only, a SERVFAIL reply allows us to continue up the tree, looking for a 
--     suitable NSEC reply to DS queries. */
--  if (RCODE(header) != SERVFAIL)
--    { 
--      status = dnssec_validate_ds(now, header, plen, name, keyname, class);
-+      if (forward->name_start == 0)
-+      return STAT_BOGUS;
-       
--      if (status != STAT_INSECURE)
--      {
--        if (status == STAT_NO_DS)
--          status = STAT_INSECURE;
--        return status;
--      }
--    }
--  
--  p = (unsigned char *)(header+1);
--  
--  if (extract_name(header, plen, &p, name, 1, 4) &&
--      (name_start = strchr(name, '.')))
--    {
--      name_start++; /* chop a label off and try again */
--      strcpy(keyname, name_start);
--      return STAT_NEED_DS_NEG;
-+      for (p = &name[forward->name_start-2]; (*p != '.') && (p != name); p--);
-+      
-+      if (p != name)
-+      p++;
-+      
-+      forward->name_start = p - name;
-+      status = 0; /* force to cache when we iterate. */
-     }
--  
--  return STAT_BOGUS;
- }
- /* Move toward the root, until we find a signed non-existance of a DS, in which case
-@@ -1395,8 +1417,10 @@ static int  tcp_check_for_unsigned_zone(time_t now, struct dns_header *header, s
-   unsigned char *packet, *payload;
-   u16 *length;
-   unsigned char *p = (unsigned char *)(header+1);
--  int status;
--  char *name_start = name;
-+  int status, name_len;
-+  struct blockdata *block;
-+
-+  char *name_start;
-   /* Get first insecure entry in CNAME chain */
-   status = tcp_key_recurse(now, STAT_CHASE_CNAME, header, plen, class, name, keyname, server, keycount);
-@@ -1409,95 +1433,113 @@ static int  tcp_check_for_unsigned_zone(time_t now, struct dns_header *header, s
-   payload = &packet[2];
-   header = (struct dns_header *)payload;
-   length = (u16 *)packet;
-+
-+  /* Stash the name away, since the buffer will be trashed when we recurse */
-+  name_len = strlen(name) + 1;
-+  name_start = name + name_len - 1;
-   
-+  if (!(block = blockdata_alloc(name, name_len)))
-+    {
-+      free(packet);
-+      return STAT_BOGUS;
-+    }
-+
-   while (1)
-     {
--      unsigned char *newhash, hash[HASH_SIZE];
-       unsigned char c1, c2;
--      struct crec *crecp = cache_find_by_name(NULL, name_start, now, F_DS);
-- 
-+      struct crec *crecp;
-+
-       if (--(*keycount) == 0)
-       {
-         free(packet);
-+        blockdata_free(block);
-         return STAT_BOGUS;    
-       }
--
--      if (crecp && (crecp->flags & F_DNSSECOK))
--      {
--        free(packet);
--        return (crecp->flags & F_NEG) ? STAT_INSECURE : STAT_BOGUS;
--      }
-       
--      /* If we have cached insecurely that a DS doesn't exist, 
--       ise that is a hit for where to start looking for the secure one */
--      if (crecp && (crecp->flags & F_NEG) && (name_start = strchr(name_start, '.')))
--      {
--        name_start++; /* chop a label off and try again */
--        continue;
--      }
--
--      /* reached the root */
--      if (!name_start)
--      {
--        free(packet);
--        return STAT_BOGUS;
-+      while (crecp = cache_find_by_name(NULL, name_start, now, F_DS))
-+      {      
-+        if ((crecp->flags & F_NEG) && (crecp->flags & F_DNSSECOK))
-+          {
-+            /* Found a secure denial of DS - delegation is indeed insecure */
-+            free(packet);
-+            blockdata_free(block);
-+            return STAT_INSECURE;
-+          }
-+      
-+        /* Here, either there's a secure DS, or no NS and no DS, and therefore no delegation.
-+           Add another label and continue. */
-+ 
-+        if (name_start == name)
-+          {
-+            free(packet);
-+            blockdata_free(block);
-+            return STAT_BOGUS; /* run out of labels */
-+          }
-+        
-+        name_start -= 2;
-+        while (*name_start != '.' && name_start != name) 
-+          name_start--;
-+        if (name_start != name)
-+          name_start++;
-       }
-+      
-+      /* Can't find it in the cache, have to send a query */
-       m = dnssec_generate_query(header, ((char *) header) + 65536, name_start, class, T_DS, &server->addr);
-       
--      /* We rely on the question section coming back unchanged, ensure it is with the hash. */
--      if ((newhash = hash_questions(header, (unsigned int)m, name)))
--      {
--        memcpy(hash, newhash, HASH_SIZE);
-+      *length = htons(m);
-       
--        *length = htons(m);
-+      if (read_write(server->tcpfd, packet, m + sizeof(u16), 0) &&
-+        read_write(server->tcpfd, &c1, 1, 1) &&
-+        read_write(server->tcpfd, &c2, 1, 1) &&
-+        read_write(server->tcpfd, payload, (c1 << 8) | c2, 1))
-+      {
-+        m = (c1 << 8) | c2;
-+        
-+        /* Note this trashes all three name workspaces */
-+        status = tcp_key_recurse(now, STAT_NEED_DS_NEG, header, m, class, name, keyname, server, keycount);
-         
--        if (read_write(server->tcpfd, packet, m + sizeof(u16), 0) &&
--            read_write(server->tcpfd, &c1, 1, 1) &&
--            read_write(server->tcpfd, &c2, 1, 1) &&
--            read_write(server->tcpfd, payload, (c1 << 8) | c2, 1))
-+        if (status == STAT_NO_DS)
-           {
--            m = (c1 << 8) | c2;
--            
--            newhash = hash_questions(header, (unsigned int)m, name);
--            if (newhash && memcmp(hash, newhash, HASH_SIZE) == 0)
--              {
--                 /* In this case only, a SERVFAIL reply allows us to continue up the tree, looking for a 
--                    suitable NSEC reply to DS queries. */
--                if (RCODE(header) == SERVFAIL)
--                  status = STAT_INSECURE;
--                else
--                  /* Note this trashes all three name workspaces */
--                  status = tcp_key_recurse(now, STAT_NEED_DS_NEG, header, m, class, name, keyname, server, keycount);
--                
--                /* We've found a DS which proves the bit of the DNS where the
--                   original query is, is unsigned, so the answer is OK, 
--                   if unvalidated. */
--                if (status == STAT_NO_DS)
--                  {
--                    free(packet);
--                    return STAT_INSECURE;
--                  }
--            
--                /* No DS, not got to DNSSEC-land yet, go up. */
--                if (status == STAT_INSECURE)
--                  {
--                    p = (unsigned char *)(header+1);
--                    
--                    if (extract_name(header, plen, &p, name, 1, 4) &&
--                        (name_start = strchr(name, '.')))
--                      {
--                        name_start++; /* chop a label off and try again */
--                        continue;
--                      }
--                  }
--              }
-+            /* Found a secure denial of DS - delegation is indeed insecure */
-+            free(packet);
-+            blockdata_free(block);
-+            return STAT_INSECURE;
-+          }
-+        
-+        if (status == STAT_BOGUS)
-+          {
-+            free(packet);
-+            blockdata_free(block);
-+            return STAT_BOGUS;
-+          }
-+        
-+        /* Here, either there's a secure DS, or no NS and no DS, and therefore no delegation.
-+           Add another label and continue. */
-+        
-+        /* Get name we're checking back. */
-+        blockdata_retrieve(block, name_len, name);
-+        
-+        if (name_start == name)
-+          {
-+            free(packet);
-+            blockdata_free(block);
-+            return STAT_BOGUS; /* run out of labels */
-           }
-+        
-+        name_start -= 2;
-+        while (*name_start != '.' && name_start != name) 
-+          name_start--;
-+        if (name_start != name)
-+          name_start++;
-+      }
-+      else
-+      {
-+        /* IO failure */
-+        free(packet);
-+        blockdata_free(block);
-+        return STAT_BOGUS; /* run out of labels */
-       }
--      
--      free(packet);
--
--      return STAT_BOGUS;
-     }
- }
-@@ -1516,14 +1558,14 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si
-   else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG)
-     {
-       new_status = dnssec_validate_ds(now, header, n, name, keyname, class);
--      if (status == STAT_NEED_DS  && new_status == STAT_NO_DS)
--      new_status = STAT_INSECURE;
-+      if (status == STAT_NEED_DS && (new_status == STAT_NO_DS || new_status == STAT_NO_NS))
-+      new_status = STAT_BOGUS;
-     }
-   else if (status == STAT_CHASE_CNAME)
-     new_status = dnssec_chase_cname(now, header, n, name, keyname);
-   else 
-     {
--      new_status = dnssec_validate_reply(now, header, n, name, keyname, &class, NULL);
-+      new_status = dnssec_validate_reply(now, header, n, name, keyname, &class, NULL, NULL);
-       
-       if (new_status == STAT_NO_SIG)
-       {
-@@ -1576,14 +1618,14 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si
-             else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG)
-               {
-                 new_status = dnssec_validate_ds(now, header, n, name, keyname, class);
--                if (status == STAT_NEED_DS && new_status == STAT_NO_DS)
--                  new_status = STAT_INSECURE; /* Validated no DS */
-+                if (status == STAT_NEED_DS  && (new_status == STAT_NO_DS || new_status == STAT_NO_NS))
-+                  new_status = STAT_BOGUS; /* Validated no DS */
-               }
-             else if (status == STAT_CHASE_CNAME)
-               new_status = dnssec_chase_cname(now, header, n, name, keyname);
-             else 
-               {
--                new_status = dnssec_validate_reply(now, header, n, name, keyname, &class, NULL);
-+                new_status = dnssec_validate_reply(now, header, n, name, keyname, &class, NULL, NULL);
-                 
-                 if (new_status == STAT_NO_SIG)
-                   {
-@@ -1961,6 +2003,7 @@ static struct frec *allocate_frec(time_t now)
-       f->dependent = NULL;
-       f->blocking_query = NULL;
-       f->stash = NULL;
-+      f->orig_domain = NULL;
- #endif
-       daemon->frec_list = f;
-     }
-@@ -2029,6 +2072,12 @@ static void free_frec(struct frec *f)
-       f->stash = NULL;
-     }
-+  if (f->orig_domain)
-+    {
-+      blockdata_free(f->orig_domain);
-+      f->orig_domain = NULL;
-+    }
-+
-   /* Anything we're waiting on is pointless now, too */
-   if (f->blocking_query)
-     free_frec(f->blocking_query);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch b/src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch
deleted file mode 100644 (file)
index 8812bba..0000000
+++ /dev/null
@@ -1,346 +0,0 @@
-From 25cf5e373eb41c088d4ee5e625209c4cf6a5659e Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Fri, 9 Jan 2015 15:53:03 +0000
-Subject: [PATCH 27/78] Add --log-queries=extra option for more complete
- logging.
-
----
- CHANGELOG     |  3 +++
- man/dnsmasq.8 |  5 ++++-
- src/cache.c   | 11 ++++++++++-
- src/config.h  |  1 +
- src/dnsmasq.c |  5 +++++
- src/dnsmasq.h |  9 +++++++--
- src/dnssec.c  | 14 +++++++-------
- src/forward.c | 30 ++++++++++++++++++++++++++----
- src/option.c  | 11 +++++++++--
- 9 files changed, 72 insertions(+), 17 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index e8bf80f81baa..0bbb7835df4f 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -40,6 +40,9 @@ version 2.73
-           nameservers in the unsigned parts of the DNS tree 
-           which don't respond well to DNSSEC queries.
-+          Add --log-queries=extra option, which makes logs easier
-+          to search automatically.
-+
-       
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 4236ba307df3..227d74bd80e7 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -98,7 +98,10 @@ only, to stop dnsmasq daemonising in production, use
- .B -k.
- .TP
- .B \-q, --log-queries
--Log the results of DNS queries handled by dnsmasq. Enable a full cache dump on receipt of SIGUSR1.
-+Log the results of DNS queries handled by dnsmasq. Enable a full cache dump on receipt of SIGUSR1. If the argument "extra" is supplied, ie
-+.B --log-queries=extra
-+then the log has extra information at the start of each line.
-+This consists of a serial number which ties together the log lines associated with an individual query, and the IP address of the requestor.
- .TP
- .B \-8, --log-facility=<facility>
- Set the facility to which dnsmasq will send syslog entries, this
-diff --git a/src/cache.c b/src/cache.c
-index ff1ca6f1c352..960bb7938778 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1638,7 +1638,16 @@ void log_query(unsigned int flags, char *name, struct all_addr *addr, char *arg)
-   if (strlen(name) == 0)
-     name = ".";
--  my_syslog(LOG_INFO, "%s %s %s %s", source, name, verb, dest);
-+  if (option_bool(OPT_EXTRALOG))
-+    {
-+      prettyprint_addr(daemon->log_source_addr, daemon->addrbuff2);
-+      if (flags & F_NOEXTRA)
-+      my_syslog(LOG_INFO, "* %s %s %s %s %s", daemon->addrbuff2, source, name, verb, dest);
-+      else
-+      my_syslog(LOG_INFO, "%u %s %s %s %s %s", daemon->log_display_id, daemon->addrbuff2, source, name, verb, dest);
-+    }
-+  else
-+    my_syslog(LOG_INFO, "%s %s %s %s", source, name, verb, dest);
- }
-  
-diff --git a/src/config.h b/src/config.h
-index 145820ad2510..3b88d8193dca 100644
---- a/src/config.h
-+++ b/src/config.h
-@@ -17,6 +17,7 @@
- #define FTABSIZ 150 /* max number of outstanding requests (default) */
- #define MAX_PROCS 20 /* max no children for TCP requests */
- #define CHILD_LIFETIME 150 /* secs 'till terminated (RFC1035 suggests > 120s) */
-+#define TCP_MAX_QUERIES 100 /* Maximum number of queries per incoming TCP connection */
- #define EDNS_PKTSZ 4096 /* default max EDNS.0 UDP packet from RFC5625 */
- #define KEYBLOCK_LEN 40 /* choose to mininise fragmentation when storing DNSSEC keys */
- #define DNSSEC_WORK 50 /* Max number of queries to validate one question */
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index 5c7750d365fa..c0c0589d4ce1 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -93,6 +93,8 @@ int main (int argc, char **argv)
-   daemon->packet = safe_malloc(daemon->packet_buff_sz);
-   
-   daemon->addrbuff = safe_malloc(ADDRSTRLEN);
-+  if (option_bool(OPT_EXTRALOG))
-+    daemon->addrbuff2 = safe_malloc(ADDRSTRLEN);
-   
- #ifdef HAVE_DNSSEC
-   if (option_bool(OPT_DNSSEC_VALID))
-@@ -1587,6 +1589,9 @@ static void check_dns_listeners(fd_set *set, time_t now)
-                     }
-               }
-             close(confd);
-+
-+            /* The child can use up to TCP_MAX_QUERIES ids, so skip that many. */
-+            daemon->log_id += TCP_MAX_QUERIES;
-           }
- #endif
-         else
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 2f4597294a56..4e9aea401b75 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -238,7 +238,8 @@ struct event_desc {
- #define OPT_DNSSEC_NO_SIGN 48 
- #define OPT_LOCAL_SERVICE  49
- #define OPT_LOOP_DETECT    50
--#define OPT_LAST           51
-+#define OPT_EXTRALOG       51
-+#define OPT_LAST           52
- /* extra flags for my_syslog, we use a couple of facilities since they are known 
-    not to occupy the same bits as priorities, no matter how syslog.h is set up. */
-@@ -442,6 +443,7 @@ struct crec {
- #define F_NO_RR     (1u<<25)
- #define F_IPSET     (1u<<26)
- #define F_NSIGMATCH (1u<<27)
-+#define F_NOEXTRA   (1u<<28)
- /* Values of uid in crecs with F_CONFIG bit set. */
- #define SRC_INTERFACE 0
-@@ -599,7 +601,7 @@ struct frec {
- #endif
-   unsigned int iface;
-   unsigned short orig_id, new_id;
--  int fd, forwardall, flags;
-+  int log_id, fd, forwardall, flags;
-   time_t time;
-   unsigned char *hash[HASH_SIZE];
- #ifdef HAVE_DNSSEC 
-@@ -1002,6 +1004,8 @@ extern struct daemon {
-   struct randfd randomsocks[RANDOM_SOCKS];
-   int v6pktinfo; 
-   struct addrlist *interface_addrs; /* list of all addresses/prefix lengths associated with all local interfaces */
-+  int log_id, log_display_id; /* ids of transactions for logging */
-+  union mysockaddr *log_source_addr;
-   /* DHCP state */
-   int dhcpfd, helperfd, pxefd; 
-@@ -1033,6 +1037,7 @@ extern struct daemon {
-   /* utility string buffer, hold max sized IP address as string */
-   char *addrbuff;
-+  char *addrbuff2; /* only allocated when OPT_EXTRALOG */
- } *daemon;
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 8f27677628b2..afb3dca38cb1 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -1038,7 +1038,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-                     else
-                       {
-                         a.addr.keytag = keytag;
--                        log_query(F_KEYTAG | F_UPSTREAM, name, &a, "DNSKEY keytag %u");
-+                        log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DNSKEY keytag %u");
-                         
-                         recp1->addr.key.keylen = rdlen - 4;
-                         recp1->addr.key.keydata = key;
-@@ -1092,7 +1092,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-       return STAT_SECURE;
-     }
--  log_query(F_UPSTREAM, name, NULL, "BOGUS DNSKEY");
-+  log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "BOGUS DNSKEY");
-   return STAT_BOGUS;
- }
-@@ -1136,7 +1136,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
-   
-   if (val == STAT_BOGUS)
-     {
--      log_query(F_UPSTREAM, name, NULL, "BOGUS DS");
-+      log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "BOGUS DS");
-       return STAT_BOGUS;
-     }
-@@ -1201,7 +1201,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
-         
-         cache_end_insert();  
-         
--        log_query(F_UPSTREAM, name, NULL, nons ? "no delegation" : "no DS");
-+        log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, nons ? "no delegation" : "no DS");
-       }
-       return nons ? STAT_NO_NS : STAT_NO_DS; 
-@@ -1885,7 +1885,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-                             else
-                               {
-                                 a.addr.keytag = keytag;
--                                log_query(F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
-+                                log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
-                                 crecp->addr.ds.digest = digest;
-                                 crecp->addr.ds.keydata = key;
-                                 crecp->addr.ds.algo = algo;
-@@ -2058,10 +2058,10 @@ size_t dnssec_generate_query(struct dns_header *header, char *end, char *name, i
-   char *types = querystr("dnssec-query", type);
-   if (addr->sa.sa_family == AF_INET) 
--    log_query(F_DNSSEC | F_IPV4, name, (struct all_addr *)&addr->in.sin_addr, types);
-+    log_query(F_NOEXTRA | F_DNSSEC | F_IPV4, name, (struct all_addr *)&addr->in.sin_addr, types);
- #ifdef HAVE_IPV6
-   else
--    log_query(F_DNSSEC | F_IPV6, name, (struct all_addr *)&addr->in6.sin6_addr, types);
-+    log_query(F_NOEXTRA | F_DNSSEC | F_IPV6, name, (struct all_addr *)&addr->in6.sin6_addr, types);
- #endif
-   
-   header->qdcount = htons(1);
-diff --git a/src/forward.c b/src/forward.c
-index 55f583383bc6..713a64c0fa58 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -279,10 +279,10 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
-         plen = forward->stash_len;
-         
-         if (forward->sentto->addr.sa.sa_family == AF_INET) 
--          log_query(F_DNSSEC | F_IPV4, "retry", (struct all_addr *)&forward->sentto->addr.in.sin_addr, "dnssec");
-+          log_query(F_NOEXTRA | F_DNSSEC | F_IPV4, "retry", (struct all_addr *)&forward->sentto->addr.in.sin_addr, "dnssec");
- #ifdef HAVE_IPV6
-         else
--          log_query(F_DNSSEC | F_IPV6, "retry", (struct all_addr *)&forward->sentto->addr.in6.sin6_addr, "dnssec");
-+          log_query(F_NOEXTRA | F_DNSSEC | F_IPV6, "retry", (struct all_addr *)&forward->sentto->addr.in6.sin6_addr, "dnssec");
- #endif
-   
-         if (forward->sentto->sfd)
-@@ -389,6 +389,9 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
-       struct server *firstsentto = start;
-       int forwarded = 0;
-       
-+      /* If a query is retried, use the log_id for the retry when logging the answer. */
-+      forward->log_id = daemon->log_id;
-+      
-       if (option_bool(OPT_ADD_MAC))
-       plen = add_mac(header, plen, ((char *) header) + daemon->packet_buff_sz, &forward->source);
-       
-@@ -725,6 +728,11 @@ void reply_query(int fd, int family, time_t now)
-   if (!(forward = lookup_frec(ntohs(header->id), hash)))
-     return;
-   
-+  /* log_query gets called indirectly all over the place, so 
-+     pass these in global variables - sorry. */
-+  daemon->log_display_id = forward->log_id;
-+  daemon->log_source_addr = &forward->source;
-+  
-   if (daemon->ignore_addr && RCODE(header) == NOERROR &&
-       check_for_ignored_address(header, n, daemon->ignore_addr))
-     return;
-@@ -1258,6 +1266,11 @@ void receive_query(struct listener *listen, time_t now)
-           dst_addr_4.s_addr = 0;
-       }
-     }
-+   
-+  /* log_query gets called indirectly all over the place, so 
-+     pass these in global variables - sorry. */
-+  daemon->log_display_id = ++daemon->log_id;
-+  daemon->log_source_addr = &source_addr;
-   
-   if (extract_request(header, (size_t)n, daemon->namebuff, &type))
-     {
-@@ -1675,7 +1688,8 @@ unsigned char *tcp_request(int confd, time_t now,
-   struct in_addr dst_addr_4;
-   union mysockaddr peer_addr;
-   socklen_t peer_len = sizeof(union mysockaddr);
--  
-+  int query_count = 0;
-+
-   if (getpeername(confd, (struct sockaddr *)&peer_addr, &peer_len) == -1)
-     return packet;
-   
-@@ -1712,7 +1726,8 @@ unsigned char *tcp_request(int confd, time_t now,
-   while (1)
-     {
--      if (!packet ||
-+      if (query_count == TCP_MAX_QUERIES ||
-+        !packet ||
-         !read_write(confd, &c1, 1, 1) || !read_write(confd, &c2, 1, 1) ||
-         !(size = c1 << 8 | c2) ||
-         !read_write(confd, payload, size, 1))
-@@ -1721,6 +1736,13 @@ unsigned char *tcp_request(int confd, time_t now,
-       if (size < (int)sizeof(struct dns_header))
-       continue;
-       
-+      query_count++;
-+
-+      /* log_query gets called indirectly all over the place, so 
-+       pass these in global variables - sorry. */
-+      daemon->log_display_id = ++daemon->log_id;
-+      daemon->log_source_addr = &peer_addr;
-+      
-       check_subnet = 0;
-       /* save state of "cd" flag in query */
-diff --git a/src/option.c b/src/option.c
-index 907d0cf88de9..b7372be0a090 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -149,6 +149,7 @@ struct myoption {
- #define LOPT_LOOP_DETECT   337
- #define LOPT_IGNORE_ADDR   338
-+
- #ifdef HAVE_GETOPT_LONG
- static const struct option opts[] =  
- #else
-@@ -160,7 +161,7 @@ static const struct myoption opts[] =
-     { "no-poll", 0, 0, 'n' },
-     { "help", 0, 0, 'w' },
-     { "no-daemon", 0, 0, 'd' },
--    { "log-queries", 0, 0, 'q' },
-+    { "log-queries", 2, 0, 'q' },
-     { "user", 2, 0, 'u' },
-     { "group", 2, 0, 'g' },
-     { "resolv-file", 2, 0, 'r' },
-@@ -357,7 +358,7 @@ static struct {
-   { LOPT_FORCE, ARG_DUP, "<optspec>", gettext_noop("DHCP option sent even if the client does not request it."), NULL},
-   { 'p', ARG_ONE, "<integer>", gettext_noop("Specify port to listen for DNS requests on (defaults to 53)."), NULL },
-   { 'P', ARG_ONE, "<integer>", gettext_noop("Maximum supported UDP packet size for EDNS.0 (defaults to %s)."), "*" },
--  { 'q', OPT_LOG, NULL, gettext_noop("Log DNS queries."), NULL },
-+  { 'q', ARG_DUP, NULL, gettext_noop("Log DNS queries."), NULL },
-   { 'Q', ARG_ONE, "<integer>", gettext_noop("Force the originating port for upstream DNS queries."), NULL },
-   { 'R', OPT_NO_RESOLV, NULL, gettext_noop("Do NOT read resolv.conf."), NULL },
-   { 'r', ARG_DUP, "<path>", gettext_noop("Specify path to resolv.conf (defaults to %s)."), RESOLVFILE }, 
-@@ -2421,6 +2422,12 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-       ret_err(gen_err);
-       break;  
-     
-+    case 'q': /* --log-queries */
-+      set_option_bool(OPT_LOG);
-+      if (arg && strcmp(arg, "extra") == 0)
-+      set_option_bool(OPT_EXTRALOG);
-+      break;
-+
-     case LOPT_MAX_LOGS:  /* --log-async */
-       daemon->max_logs = LOG_MAX; /* default */
-       if (arg && !atoi_check(arg, &daemon->max_logs))
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch b/src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch
deleted file mode 100644 (file)
index 2f60995..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-From 28de38768e2c7d763b9aa5b7a4d251d5e56bab0b Mon Sep 17 00:00:00 2001
-From: RinSatsuki <aa65535@live.com>
-Date: Sat, 10 Jan 2015 15:22:21 +0000
-Subject: [PATCH 28/78] Add --min-cache-ttl option.
-
----
- CHANGELOG     |  7 +++++++
- man/dnsmasq.8 |  6 ++++++
- src/cache.c   |  4 +++-
- src/config.h  |  1 +
- src/dnsmasq.h |  2 +-
- src/option.c  | 11 +++++++++++
- 6 files changed, 29 insertions(+), 2 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 0bbb7835df4f..23fc6d0530cf 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -43,6 +43,13 @@ version 2.73
-           Add --log-queries=extra option, which makes logs easier
-           to search automatically.
-+          Add --min-cache-ttl option. I've resisted this for a long 
-+          time, on the grounds that disbelieving TTLs is never a 
-+          good idea, but I've been persuaded that there are 
-+          sometimes reasons to do it. (Step forward, GFW).
-+          To avoid misuse, there's a hard limit on the TTL 
-+          floor of one hour. Thansk to RinSatsuki for the patch.
-+      
-       
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 227d74bd80e7..5cfa355dea4a 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -81,6 +81,12 @@ the upstream DNS servers.
- .B --max-cache-ttl=<time>
- Set a maximum TTL value for entries in the cache.
- .TP
-+.B --min-cache-ttl=<time>
-+Extend short TTL values to the time given when caching them. Note that
-+artificially extending TTL values is in general a bad idea, do not do it 
-+unless you have a good reason, and understand what you are doing. 
-+Dnsmasq limits the value of this option to one hour, unless recompiled.
-+.TP
- .B --auth-ttl=<time>
- Set the TTL value returned in answers from the authoritative server.
- .TP
-diff --git a/src/cache.c b/src/cache.c
-index 960bb7938778..945be071a0b6 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -461,9 +461,11 @@ struct crec *cache_insert(char *name, struct all_addr *addr,
-   if (flags & (F_IPV4 | F_IPV6 | F_CNAME))
-     {
-       log_query(flags | F_UPSTREAM, name, addr, NULL);
--      /* Don;t mess with TTL for DNSSEC records. */
-+      /* Don't mess with TTL for DNSSEC records. */
-       if (daemon->max_cache_ttl != 0 && daemon->max_cache_ttl < ttl)
-       ttl = daemon->max_cache_ttl;
-+      if (daemon->min_cache_ttl != 0 && daemon->min_cache_ttl > ttl)
-+      ttl = daemon->min_cache_ttl;
-     }
-   /* if previous insertion failed give up now. */
-diff --git a/src/config.h b/src/config.h
-index 3b88d8193dca..cdca231b4079 100644
---- a/src/config.h
-+++ b/src/config.h
-@@ -27,6 +27,7 @@
- #define RANDOM_SOCKS 64 /* max simultaneous random ports */
- #define LEASE_RETRY 60 /* on error, retry writing leasefile after LEASE_RETRY seconds */
- #define CACHESIZ 150 /* default cache size */
-+#define TTL_FLOOR_LIMIT 3600 /* don't allow --min-cache-ttl to raise TTL above this under any circumstances */
- #define MAXLEASES 1000 /* maximum number of DHCP leases */
- #define PING_WAIT 3 /* wait for ping address-in-use test */
- #define PING_CACHE_TIME 30 /* Ping test assumed to be valid this long. */
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 4e9aea401b75..f8275e3ac479 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -943,7 +943,7 @@ extern struct daemon {
-   int max_logs;  /* queue limit */
-   int cachesize, ftabsize;
-   int port, query_port, min_port;
--  unsigned long local_ttl, neg_ttl, max_ttl, max_cache_ttl, auth_ttl;
-+  unsigned long local_ttl, neg_ttl, max_ttl, min_cache_ttl, max_cache_ttl, auth_ttl;
-   struct hostsfile *addn_hosts;
-   struct dhcp_context *dhcp, *dhcp6;
-   struct ra_interface *ra_interfaces;
-diff --git a/src/option.c b/src/option.c
-index b7372be0a090..8b994098cc9f 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -148,6 +148,7 @@ struct myoption {
- #define LOPT_DNSSEC_TIME   336
- #define LOPT_LOOP_DETECT   337
- #define LOPT_IGNORE_ADDR   338
-+#define LOPT_MINCTTL       339
- #ifdef HAVE_GETOPT_LONG
-@@ -256,6 +257,7 @@ static const struct myoption opts[] =
-     { "dhcp-broadcast", 2, 0, LOPT_BROADCAST },
-     { "neg-ttl", 1, 0, LOPT_NEGTTL },
-     { "max-ttl", 1, 0, LOPT_MAXTTL },
-+    { "min-cache-ttl", 1, 0, LOPT_MINCTTL },
-     { "max-cache-ttl", 1, 0, LOPT_MAXCTTL },
-     { "dhcp-alternate-port", 2, 0, LOPT_ALTPORT },
-     { "dhcp-scriptuser", 1, 0, LOPT_SCRIPTUSR },
-@@ -371,6 +373,8 @@ static struct {
-   { 'T', ARG_ONE, "<integer>", gettext_noop("Specify time-to-live in seconds for replies from /etc/hosts."), NULL },
-   { LOPT_NEGTTL, ARG_ONE, "<integer>", gettext_noop("Specify time-to-live in seconds for negative caching."), NULL },
-   { LOPT_MAXTTL, ARG_ONE, "<integer>", gettext_noop("Specify time-to-live in seconds for maximum TTL to send to clients."), NULL },
-+  { LOPT_MAXCTTL, ARG_ONE, "<integer>", gettext_noop("Specify time-to-live ceiling for cache."), NULL },
-+  { LOPT_MINCTTL, ARG_ONE, "<integer>", gettext_noop("Specify time-to-live floor for cache."), NULL },
-   { 'u', ARG_ONE, "<username>", gettext_noop("Change to this user after startup. (defaults to %s)."), CHUSER }, 
-   { 'U', ARG_DUP, "set:<tag>,<class>", gettext_noop("Map DHCP vendor class to tag."), NULL },
-   { 'v', 0, NULL, gettext_noop("Display dnsmasq version and copyright information."), NULL },
-@@ -2457,6 +2461,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-     case 'T':         /* --local-ttl */
-     case LOPT_NEGTTL: /* --neg-ttl */
-     case LOPT_MAXTTL: /* --max-ttl */
-+    case LOPT_MINCTTL: /* --min-cache-ttl */
-     case LOPT_MAXCTTL: /* --max-cache-ttl */
-     case LOPT_AUTHTTL: /* --auth-ttl */
-       {
-@@ -2467,6 +2472,12 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-         daemon->neg_ttl = (unsigned long)ttl;
-       else if (option == LOPT_MAXTTL)
-         daemon->max_ttl = (unsigned long)ttl;
-+      else if (option == LOPT_MINCTTL)
-+        {
-+          if (ttl > TTL_FLOOR_LIMIT)
-+            ttl = TTL_FLOOR_LIMIT;
-+          daemon->min_cache_ttl = (unsigned long)ttl;
-+        }
-       else if (option == LOPT_MAXCTTL)
-         daemon->max_cache_ttl = (unsigned long)ttl;
-       else if (option == LOPT_AUTHTTL)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch b/src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch
deleted file mode 100644 (file)
index 3288ce8..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-From 9f79ee4ae34886c0319f06d8f162b81ef79d62fb Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 12 Jan 2015 20:18:18 +0000
-Subject: [PATCH 29/78] Log port of requestor when doing extra logging.
-
----
- src/cache.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index 945be071a0b6..09b6dbf8087a 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1642,11 +1642,11 @@ void log_query(unsigned int flags, char *name, struct all_addr *addr, char *arg)
-   if (option_bool(OPT_EXTRALOG))
-     {
--      prettyprint_addr(daemon->log_source_addr, daemon->addrbuff2);
-+      int port = prettyprint_addr(daemon->log_source_addr, daemon->addrbuff2);
-       if (flags & F_NOEXTRA)
--      my_syslog(LOG_INFO, "* %s %s %s %s %s", daemon->addrbuff2, source, name, verb, dest);
-+      my_syslog(LOG_INFO, "* %s/%u %s %s %s %s", daemon->addrbuff2, port, source, name, verb, dest);
-       else
--      my_syslog(LOG_INFO, "%u %s %s %s %s %s", daemon->log_display_id, daemon->addrbuff2, source, name, verb, dest);
-+      my_syslog(LOG_INFO, "%u %s/%u %s %s %s %s", daemon->log_display_id, daemon->addrbuff2, port, source, name, verb, dest);
-     }
-   else
-     my_syslog(LOG_INFO, "%s %s %s %s", source, name, verb, dest);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/003-dont_answer_non_auth_queries_for_auth_zones_locally_when_localise_queries_set.patch b/src/patches/dnsmasq/003-dont_answer_non_auth_queries_for_auth_zones_locally_when_localise_queries_set.patch
new file mode 100644 (file)
index 0000000..cfbcdfb
--- /dev/null
@@ -0,0 +1,34 @@
+From 3a3965ac21b1b759eab8799b6edb09195b671306 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sun, 9 Aug 2015 17:45:06 +0100
+Subject: [PATCH] Don't answer non-auth queries for auth zones locally when
+ --localise-queries set.
+
+---
+ src/forward.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/forward.c b/src/forward.c
+index 2731b90..b76a974 100644
+--- a/src/forward.c
++++ b/src/forward.c
+@@ -1365,7 +1365,7 @@ void receive_query(struct listener *listen, time_t now)
+ #ifdef HAVE_AUTH
+       /* find queries for zones we're authoritative for, and answer them directly */
+-      if (!auth_dns)
++      if (!auth_dns && !option_bool(OPT_LOCALISE))
+       for (zone = daemon->auth_zones; zone; zone = zone->next)
+         if (in_zone(zone, daemon->namebuff, NULL))
+           {
+@@ -1904,7 +1904,7 @@ unsigned char *tcp_request(int confd, time_t now,
+         
+ #ifdef HAVE_AUTH
+         /* find queries for zones we're authoritative for, and answer them directly */
+-        if (!auth_dns)
++        if (!auth_dns && !option_bool(OPT_LOCALISE))
+           for (zone = daemon->auth_zones; zone; zone = zone->next)
+             if (in_zone(zone, daemon->namebuff, NULL))
+               {
+-- 
+1.7.10.4
diff --git a/src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch b/src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch
deleted file mode 100644 (file)
index 81b5eb2..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From 5e321739db381a1d7b5964d76e9c81471d2564c9 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 12 Jan 2015 23:16:56 +0000
-Subject: [PATCH 30/78] Don't answer from cache RRsets from wildcards, as we
- don't have NSECs.
-
----
- src/dnssec.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index afb3dca38cb1..d39ab85ed966 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -1818,11 +1818,14 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-             struct blockdata *key;
-             struct crec *crecp;
-             char *wildname;
-+            int have_wildcard = 0;
-             rc = validate_rrset(now, header, plen, class1, type1, name, keyname, &wildname, NULL, 0, 0, 0);
-             
-             if (rc == STAT_SECURE_WILDCARD)
-               {
-+                have_wildcard = 1;
-+
-                 /* An attacker replay a wildcard answer with a different
-                    answer and overlay a genuine RR. To prove this
-                    hasn't happened, the answer must prove that
-@@ -1913,7 +1916,11 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-                             p2 += 13; /* labels, orig_ttl, expiration, inception */
-                             GETSHORT(keytag, p2);
-                             
--                            if ((key = blockdata_alloc((char*)psave, rdlen2)))
-+                            /* We don't cache sigs for wildcard answers, because to reproduce the
-+                               answer from the cache will require one or more NSEC/NSEC3 records 
-+                               which we don't cache. The lack of the RRSIG ensures that a query for
-+                               this RRset asking for a secure answer will always be forwarded. */
-+                            if (!have_wildcard && (key = blockdata_alloc((char*)psave, rdlen2)))
-                               {
-                                 if (!(crecp = cache_insert(name, &a, now, ttl,  F_FORWARD | F_DNSKEY | F_DS)))
-                                   blockdata_free(key);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch b/src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch
deleted file mode 100644 (file)
index ead984e..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From ae4624bf46b5e37ff1a9a2ba3c927e0dede95adb Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 12 Jan 2015 23:22:08 +0000
-Subject: [PATCH 31/78] Logs for DS records consistent.
-
----
- src/rfc1035.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/rfc1035.c b/src/rfc1035.c
-index 75c4266b47dd..262274fc5b80 100644
---- a/src/rfc1035.c
-+++ b/src/rfc1035.c
-@@ -1643,7 +1643,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
-                             {
-                               if (crecp->flags & F_NXDOMAIN)
-                                 nxdomain = 1;
--                              log_query(F_UPSTREAM, name, NULL, "secure no DS");      
-+                              log_query(F_UPSTREAM, name, NULL, "no DS");     
-                             }
-                           else if ((keydata = blockdata_retrieve(crecp->addr.ds.keydata, crecp->addr.ds.keylen, NULL)))
-                             {                                               
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch b/src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch
deleted file mode 100644 (file)
index f571501..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-From 393415597c8b5b09558b789ab9ac238dbe3db65d Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 18 Jan 2015 22:11:10 +0000
-Subject: [PATCH 32/78] Cope with multiple interfaces with the same LL address.
-
----
- CHANGELOG  | 4 ++++
- src/auth.c | 5 ++++-
- src/util.c | 1 +
- 3 files changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 23fc6d0530cf..bbd7e6619689 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -49,6 +49,10 @@ version 2.73
-           sometimes reasons to do it. (Step forward, GFW).
-           To avoid misuse, there's a hard limit on the TTL 
-           floor of one hour. Thansk to RinSatsuki for the patch.
-+
-+          Cope with multiple interfaces with the same link-local 
-+          address. (IPv6 addresses are scoped, so this is allowed.)
-+          Thanks to Cory Benfield for help with this.
-       
-       
- version 2.72
-diff --git a/src/auth.c b/src/auth.c
-index a327f16d8c0b..59e05d3da38e 100644
---- a/src/auth.c
-+++ b/src/auth.c
-@@ -413,7 +413,10 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-               peer_addr->in.sin_port = 0;
- #ifdef HAVE_IPV6
-             else
--              peer_addr->in6.sin6_port = 0; 
-+              {
-+                peer_addr->in6.sin6_port = 0; 
-+                peer_addr->in6.sin6_scope_id = 0;
-+              }
- #endif
-             
-             for (peers = daemon->auth_peers; peers; peers = peers->next)
-diff --git a/src/util.c b/src/util.c
-index a729f339e219..d532444da207 100644
---- a/src/util.c
-+++ b/src/util.c
-@@ -274,6 +274,7 @@ int sockaddr_isequal(union mysockaddr *s1, union mysockaddr *s2)
- #ifdef HAVE_IPV6      
-       if (s1->sa.sa_family == AF_INET6 &&
-         s1->in6.sin6_port == s2->in6.sin6_port &&
-+        s1->in6.sin6_scope_id == s2->in6.sin6_scope_id &&
-         IN6_ARE_ADDR_EQUAL(&s1->in6.sin6_addr, &s2->in6.sin6_addr))
-       return 1;
- #endif
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch b/src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch
deleted file mode 100644 (file)
index f381635..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From 2ae195f5a71f7c5a75717845de1bd72fc7dd67f3 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 18 Jan 2015 22:20:48 +0000
-Subject: [PATCH 33/78] Don't treat SERVFAIL as a recoverable error.....
-
----
- src/forward.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/forward.c b/src/forward.c
-index 713a64c0fa58..b17bc34f865f 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -737,7 +737,7 @@ void reply_query(int fd, int family, time_t now)
-       check_for_ignored_address(header, n, daemon->ignore_addr))
-     return;
--  if ((RCODE(header) == SERVFAIL || RCODE(header) == REFUSED) &&
-+  if (RCODE(header) == REFUSED &&
-       !option_bool(OPT_ORDER) &&
-       forward->forwardall == 0)
-     /* for broken servers, attempt to send to another one. */
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch b/src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch
deleted file mode 100644 (file)
index 86401c9..0000000
+++ /dev/null
@@ -1,419 +0,0 @@
-From 5f4dc5c6ca50655ab14f572c7e30815ed74cd51a Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Tue, 20 Jan 2015 20:51:02 +0000
-Subject: [PATCH 34/78] Add --dhcp-hostsdir config option.
-
----
- CHANGELOG     |   5 +++
- man/dnsmasq.8 |   9 +++++
- src/dnsmasq.c |  28 ++++++++++----
- src/dnsmasq.h |  15 ++++++--
- src/inotify.c | 119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
- src/option.c  |  22 +++++++++--
- 6 files changed, 177 insertions(+), 21 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index bbd7e6619689..0076b557e95e 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -53,6 +53,11 @@ version 2.73
-           Cope with multiple interfaces with the same link-local 
-           address. (IPv6 addresses are scoped, so this is allowed.)
-           Thanks to Cory Benfield for help with this.
-+
-+          Add --dhcp-hostsdir. This allows addition of new host
-+          configurations to a running dnsmasq instance much more 
-+          cheaply than having dnsmasq re-read all its existing
-+          configuration each time. 
-       
-       
- version 2.72
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 5cfa355dea4a..005b5cca8d1f 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -977,6 +977,15 @@ is given, then read all the files contained in that directory. The advantage of
- using this option is the same as for --dhcp-hostsfile: the
- dhcp-optsfile will be re-read when dnsmasq receives SIGHUP. Note that
- it is possible to encode the information in a
-+.TP
-+.B --dhcp-hostsdir=<path>
-+This is exactly equivalent to dhcp-hostfile, except for the following. The path MUST be a
-+directory, and not an individual file. Changed or new files within
-+the directory are read automatically, without the need to send SIGHUP.
-+If a file is deleted for changed after it has been read by dnsmasq, then the
-+host record it contained will remain until dnsmasq recieves a SIGHUP, or 
-+is restarted; ie host records are only added dynamically.
-+.TP
- .B --dhcp-boot
- flag as DHCP options, using the options names bootfile-name,
- server-ip-address and tftp-server. This allows these to be included
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index c0c0589d4ce1..04cc98278f62 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -142,6 +142,9 @@ int main (int argc, char **argv)
-       set_option_bool(OPT_NOWILD);
-       reset_option_bool(OPT_CLEVERBIND);
-     }
-+
-+  if (daemon->inotify_hosts)
-+    die(_("dhcp-hostsdir not supported on this platform"), NULL, EC_BADCONF);
- #endif
-   
-   if (option_bool(OPT_DNSSEC_VALID))
-@@ -316,13 +319,16 @@ int main (int argc, char **argv)
- #ifdef HAVE_DNSSEC
-       blockdata_init();
- #endif
-+    }
- #ifdef HAVE_LINUX_NETWORK
--      if (!option_bool(OPT_NO_POLL))
--      inotify_dnsmasq_init();
-+  if ((!option_bool(OPT_NO_POLL) && daemon->port != 0) ||
-+      daemon->dhcp || daemon->doing_dhcp6)
-+    inotify_dnsmasq_init();
-+  else
-+    daemon->inotifyfd = -1;
- #endif
--    }
--    
-+       
-   if (option_bool(OPT_DBUS))
- #ifdef HAVE_DBUS
-     {
-@@ -745,7 +751,7 @@ int main (int argc, char **argv)
- #endif
- #ifdef HAVE_TFTP
--      if (option_bool(OPT_TFTP))
-+  if (option_bool(OPT_TFTP))
-     {
- #ifdef FD_SETSIZE
-       if (FD_SETSIZE < (unsigned)max_fd)
-@@ -870,7 +876,7 @@ int main (int argc, char **argv)
- #if defined(HAVE_LINUX_NETWORK)
-       FD_SET(daemon->netlinkfd, &rset);
-       bump_maxfd(daemon->netlinkfd, &maxfd);
--      if (daemon->port != 0 && !option_bool(OPT_NO_POLL))
-+      if (daemon->inotifyfd != -1)
-       {
-         FD_SET(daemon->inotifyfd, &rset);
-         bump_maxfd(daemon->inotifyfd, &maxfd);
-@@ -943,8 +949,11 @@ int main (int argc, char **argv)
- #endif
- #ifdef HAVE_LINUX_NETWORK
--      if (daemon->port != 0 && !option_bool(OPT_NO_POLL) && FD_ISSET(daemon->inotifyfd, &rset) && inotify_check())
--      poll_resolv(1, 1, now);           
-+      if  (daemon->inotifyfd != -1 && FD_ISSET(daemon->inotifyfd, &rset) && inotify_check(now))
-+      {
-+        if (daemon->port != 0 && !option_bool(OPT_NO_POLL))
-+          poll_resolv(1, 1, now);
-+      }         
- #else
-       /* Check for changes to resolv files once per second max. */
-       /* Don't go silent for long periods if the clock goes backwards. */
-@@ -1385,6 +1394,9 @@ void clear_cache_and_reload(time_t now)
-       if (option_bool(OPT_ETHERS))
-       dhcp_read_ethers();
-       reread_dhcp();
-+#ifdef HAVE_LINUX_NETWORK
-+      set_dhcp_inotify();
-+#endif
-       dhcp_update_configs(daemon->dhcp_conf);
-       lease_update_from_configs(); 
-       lease_update_file(now); 
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index f8275e3ac479..d841fdc064ad 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -550,13 +550,17 @@ struct resolvc {
- #endif
- };
--/* adn-hosts parms from command-line (also dhcp-hostsfile and dhcp-optsfile */
-+/* adn-hosts parms from command-line (also dhcp-hostsfile and dhcp-optsfile and dhcp-hostsdir*/
- #define AH_DIR      1
- #define AH_INACTIVE 2
-+#define AH_WD_DONE  4
- struct hostsfile {
-   struct hostsfile *next;
-   int flags;
-   char *fname;
-+#ifdef HAVE_LINUX_NETWORK
-+  int wd; /* inotify watch descriptor */
-+#endif
-   unsigned int index; /* matches to cache entries for logging */
- };
-@@ -961,7 +965,7 @@ extern struct daemon {
-   int doing_ra, doing_dhcp6;
-   struct dhcp_netid_list *dhcp_ignore, *dhcp_ignore_names, *dhcp_gen_names; 
-   struct dhcp_netid_list *force_broadcast, *bootp_dynamic;
--  struct hostsfile *dhcp_hosts_file, *dhcp_opts_file;
-+  struct hostsfile *dhcp_hosts_file, *dhcp_opts_file, *inotify_hosts;
-   int dhcp_max, tftp_max;
-   int dhcp_server_port, dhcp_client_port;
-   int start_tftp_port, end_tftp_port; 
-@@ -1197,7 +1201,7 @@ void reset_option_bool(unsigned int opt);
- struct hostsfile *expand_filelist(struct hostsfile *list);
- char *parse_server(char *arg, union mysockaddr *addr, 
-                  union mysockaddr *source_addr, char *interface, int *flags);
--
-+int option_read_hostsfile(char *file);
- /* forward.c */
- void reply_query(int fd, int family, time_t now);
- void receive_query(struct listener *listen, time_t now);
-@@ -1486,5 +1490,8 @@ int detect_loop(char *query, int type);
- /* inotify.c */
- #ifdef HAVE_LINUX_NETWORK
- void inotify_dnsmasq_init();
--int inotify_check(void);
-+int inotify_check(time_t now);
-+#  ifdef HAVE_DHCP
-+void set_dhcp_inotify(void);
-+#  endif
- #endif
-diff --git a/src/inotify.c b/src/inotify.c
-index 83730008c11b..52a30d7f44db 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -19,6 +19,11 @@
- #include <sys/inotify.h>
-+#ifdef HAVE_DHCP
-+static void check_for_dhcp_inotify(struct inotify_event *in, time_t now);
-+#endif
-+
-+
- /* the strategy is to set a inotify on the directories containing
-    resolv files, for any files in the directory which are close-write 
-    or moved into the directory.
-@@ -40,8 +45,6 @@ void inotify_dnsmasq_init()
-   struct resolvc *res;
-   inotify_buffer = safe_malloc(INOTIFY_SZ);
--
--
-   daemon->inotifyfd = inotify_init1(IN_NONBLOCK | IN_CLOEXEC);
-   
-   if (daemon->inotifyfd == -1)
-@@ -66,6 +69,7 @@ void inotify_dnsmasq_init()
-       {
-         *d = 0; /* make path just directory */
-         res->wd = inotify_add_watch(daemon->inotifyfd, path, IN_CLOSE_WRITE | IN_MOVED_TO);
-+
-         res->file = d+1; /* pointer to filename */
-         *d = '/';
-         
-@@ -78,7 +82,7 @@ void inotify_dnsmasq_init()
-     }
- }
--int inotify_check(void)
-+int inotify_check(time_t now)
- {
-   int hit = 0;
-   
-@@ -101,13 +105,116 @@ int inotify_check(void)
-         for (res = daemon->resolv_files; res; res = res->next)
-           if (res->wd == in->wd && in->len != 0 && strcmp(res->file, in->name) == 0)
-             hit = 1;
-+
-+#ifdef HAVE_DHCP
-+        if (daemon->dhcp || daemon->doing_dhcp6)
-+          check_for_dhcp_inotify(in, now);
-+#endif
-       }
-     }
--
-   return hit;
- }
--#endif
-+#ifdef HAVE_DHCP 
-+/* initialisation for dhcp-hostdir. Set inotify watch for each directory, and read pre-existing files */
-+void set_dhcp_inotify(void)
-+{
-+  struct hostsfile *ah;
--  
-+  for (ah = daemon->inotify_hosts; ah; ah = ah->next)
-+    {
-+       DIR *dir_stream = NULL;
-+       struct dirent *ent;
-+       struct stat buf;
-+
-+       if (stat(ah->fname, &buf) == -1 || !(S_ISDIR(buf.st_mode)))
-+       {
-+         my_syslog(LOG_ERR, _("bad directory in dhcp-hostsdir %s"), ah->fname);
-+         continue;
-+       }
-+
-+       if (!(ah->flags & AH_WD_DONE))
-+       {
-+         ah->wd = inotify_add_watch(daemon->inotifyfd, ah->fname, IN_CLOSE_WRITE | IN_MOVED_TO);
-+         ah->flags |= AH_WD_DONE;
-+       }
-+       /* Read contents of dir _after_ calling add_watch, in the ho[e of avoiding
-+        a race which misses files being added as we start */
-+       if (ah->wd == -1 || !(dir_stream = opendir(ah->fname)))
-+       {
-+         my_syslog(LOG_ERR, _("failed to create inotify for %s"), ah->fname);
-+         continue;
-+       }
-+
-+       while ((ent = readdir(dir_stream)))
-+       {
-+         size_t lendir = strlen(ah->fname);
-+         size_t lenfile = strlen(ent->d_name);
-+         char *path;
-+         
-+         /* ignore emacs backups and dotfiles */
-+         if (lenfile == 0 || 
-+             ent->d_name[lenfile - 1] == '~' ||
-+             (ent->d_name[0] == '#' && ent->d_name[lenfile - 1] == '#') ||
-+             ent->d_name[0] == '.')
-+           continue;
-+         
-+         if ((path = whine_malloc(lendir + lenfile + 2)))
-+           {
-+             strcpy(path, ah->fname);
-+             strcat(path, "/");
-+             strcat(path, ent->d_name);
-+             
-+             /* ignore non-regular files */
-+             if (stat(path, &buf) != -1 && S_ISREG(buf.st_mode))
-+               option_read_hostsfile(path);
-+             
-+             free(path);
-+           }
-+       }
-+    }
-+}
-+
-+static void check_for_dhcp_inotify(struct inotify_event *in, time_t now)
-+{
-+  struct hostsfile *ah;
-+
-+  /* ignore emacs backups and dotfiles */
-+  if (in->len == 0 || 
-+      in->name[in->len - 1] == '~' ||
-+      (in->name[0] == '#' && in->name[in->len - 1] == '#') ||
-+      in->name[0] == '.')
-+    return;
-+
-+  for (ah = daemon->inotify_hosts; ah; ah = ah->next)
-+    if (ah->wd == in->wd)
-+      {
-+      size_t lendir = strlen(ah->fname);
-+      char *path;
-+         
-+      if ((path = whine_malloc(lendir + in->len + 2)))
-+        {
-+          strcpy(path, ah->fname);
-+          strcat(path, "/");
-+          strcat(path, in->name);
-+          
-+          if (option_read_hostsfile(path))
-+            {
-+              /* Propogate the consequences of loading a new dhcp-host */
-+              dhcp_update_configs(daemon->dhcp_conf);
-+              lease_update_from_configs(); 
-+              lease_update_file(now); 
-+              lease_update_dns(1);
-+            }
-+          
-+          free(path);
-+        }
-+      
-+      return;
-+      }
-+}
-+
-+#endif /* DHCP */
-+
-+#endif  /* LINUX_NETWORK */
-   
-diff --git a/src/option.c b/src/option.c
-index 8b994098cc9f..22e11c37d374 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -149,7 +149,7 @@ struct myoption {
- #define LOPT_LOOP_DETECT   337
- #define LOPT_IGNORE_ADDR   338
- #define LOPT_MINCTTL       339
--
-+#define LOPT_DHCP_INOTIFY  340
- #ifdef HAVE_GETOPT_LONG
- static const struct option opts[] =  
-@@ -248,6 +248,7 @@ static const struct myoption opts[] =
-     { "interface-name", 1, 0, LOPT_INTNAME },
-     { "dhcp-hostsfile", 1, 0, LOPT_DHCP_HOST },
-     { "dhcp-optsfile", 1, 0, LOPT_DHCP_OPTS },
-+    { "dhcp-hostsdir", 1, 0, LOPT_DHCP_INOTIFY },
-     { "dhcp-no-override", 0, 0, LOPT_OVERRIDE },
-     { "tftp-port-range", 1, 0, LOPT_TFTPPORTS },
-     { "stop-dns-rebind", 0, 0, LOPT_REBIND },
-@@ -336,6 +337,7 @@ static struct {
-   { 'G', ARG_DUP, "<hostspec>", gettext_noop("Set address or hostname for a specified machine."), NULL },
-   { LOPT_DHCP_HOST, ARG_DUP, "<path>", gettext_noop("Read DHCP host specs from file."), NULL },
-   { LOPT_DHCP_OPTS, ARG_DUP, "<path>", gettext_noop("Read DHCP option specs from file."), NULL },
-+  { LOPT_DHCP_INOTIFY, ARG_DUP, "<path>", gettext_noop("Read DHCP host specs from a directory."), NULL }, 
-   { LOPT_TAG_IF, ARG_DUP, "tag-expression", gettext_noop("Evaluate conditional tag expression."), NULL },
-   { 'h', OPT_NO_HOSTS, NULL, gettext_noop("Do NOT load %s file."), HOSTSFILE },
-   { 'H', ARG_DUP, "<path>", gettext_noop("Specify a hosts file to be read in addition to %s."), HOSTSFILE },
-@@ -1710,8 +1712,9 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-       break;
- #endif /* HAVE_DHCP */
--    case LOPT_DHCP_HOST: /* --dhcp-hostfile */
-+    case LOPT_DHCP_HOST: /* --dhcp-hostsfile */
-     case LOPT_DHCP_OPTS: /* --dhcp-optsfile */
-+    case LOPT_DHCP_INOTIFY: /* dhcp-hostsdir */
-     case 'H': /* --addn-hosts */
-       {
-       struct hostsfile *new = opt_malloc(sizeof(struct hostsfile));
-@@ -1734,6 +1737,12 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-           new->next = daemon->dhcp_opts_file;
-           daemon->dhcp_opts_file = new;
-         }       
-+      else if (option == LOPT_DHCP_INOTIFY)
-+        {
-+          new->next = daemon->inotify_hosts;
-+          daemon->inotify_hosts = new;
-+        }
-+      
-       break;
-       }
-       
-@@ -4042,6 +4051,13 @@ static void read_file(char *file, FILE *f, int hard_opt)
-   fclose(f);
- }
-+#ifdef HAVE_DHCP
-+int option_read_hostsfile(char *file)
-+{
-+  return one_file(file, LOPT_BANK);
-+}
-+#endif
-+
- static int one_file(char *file, int hard_opt)
- {
-   FILE *f;
-@@ -4139,7 +4155,7 @@ struct hostsfile *expand_filelist(struct hostsfile *list)
-           
-           /* don't read this as a file */
-           ah->flags |= AH_INACTIVE;
--
-+          
-           if (!(dir_stream = opendir(ah->fname)))
-             my_syslog(LOG_ERR, _("cannot access directory %s: %s"), 
-                       ah->fname, strerror(errno));
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0035-Update-German-translation.patch b/src/patches/dnsmasq/0035-Update-German-translation.patch
deleted file mode 100644 (file)
index cd9ec56..0000000
+++ /dev/null
@@ -1,327 +0,0 @@
-From fbf01f7046e75f9aa73fd4aab2a94e43386d9052 Mon Sep 17 00:00:00 2001
-From: Conrad Kostecki <ck@conrad-kostecki.de>
-Date: Tue, 20 Jan 2015 21:07:56 +0000
-Subject: [PATCH 35/78] Update German translation.
-
----
- po/de.po | 101 +++++++++++++++++++++++++++++----------------------------------
- 1 file changed, 47 insertions(+), 54 deletions(-)
-
-diff --git a/po/de.po b/po/de.po
-index e2317376d8a9..4c93c5b28ef2 100644
---- a/po/de.po
-+++ b/po/de.po
-@@ -9,10 +9,10 @@
- # Simon Kelley <simon@thekelleys.org.uk>, 2005.
- msgid ""
- msgstr ""
--"Project-Id-Version: dnsmasq 2.70\n"
-+"Project-Id-Version: dnsmasq 2.73\n"
- "Report-Msgid-Bugs-To: \n"
- "POT-Creation-Date: 2009-06-18 12:24+0100\n"
--"PO-Revision-Date: 2014-05-01 22:51+0100\n"
-+"PO-Revision-Date: 2015-01-19 15:43+0100\n"
- "Last-Translator: Conrad Kostecki <ck@conrad-kostecki.de>\n"
- "Language-Team: German <de@li.org>\n"
- "Language: de\n"
-@@ -20,12 +20,12 @@ msgstr ""
- "Content-Type: text/plain; charset=UTF-8\n"
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
--"X-Generator: Poedit 1.6.5\n"
-+"X-Generator: Poedit 1.7.3\n"
- "X-Poedit-SourceCharset: UTF-8\n"
- #: cache.c:505
- msgid "Internal error in cache."
--msgstr ""
-+msgstr "Interner Fehler im Cache."
- #: cache.c:908
- #, c-format
-@@ -126,7 +126,7 @@ msgstr "Lokale abzuhörende Adresse(n) angeben."
- #: option.c:319
- msgid "Return ipaddr for all hosts in specified domains."
--msgstr "IP-Adresse für alle Hosts in angebenen Domänen festlegen."
-+msgstr "IP-Adresse für alle Hosts in angegebenen Domänen festlegen."
- # FIXME: the English test is not to the point. Just use a shortened description
- # from the manpage instead. -- MA
-@@ -310,18 +310,16 @@ msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Pfad zu resolv.conf festlegen (%s voreingestellt)."
- #: option.c:362
--#, fuzzy
- msgid "Specify path to file with server= options"
--msgstr "Dateipfad für Prozesskennung (PID) festlegen (Voreinstellung: %s)."
-+msgstr " Dateipfad mit der Option server= angeben"
- #: option.c:363
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Adresse(n) vorgelagerter Server festlegen, optional mit Domänen."
- #: option.c:364
--#, fuzzy
- msgid "Specify address of upstream servers for reverse address queries"
--msgstr "Adresse(n) vorgelagerter Server festlegen, optional mit Domänen."
-+msgstr "Adresse(n) vorgelagerter Server festlegen, für reverse Adressanfragen"
- #: option.c:365
- msgid "Never forward queries to specified domains."
-@@ -657,23 +655,23 @@ msgstr "Spezifiziere eine Domain und Adressbereich für synthetisierte Namen"
- #: option.c:446
- msgid "Activate DNSSEC validation"
--msgstr ""
-+msgstr "Aktiviere DNSSEC-Validierung"
- #: option.c:447
- msgid "Specify trust anchor key digest."
--msgstr ""
-+msgstr "Spezifiziere Vertrauensursprung (Trust Anchor) der Schlüssel-Prüfdaten (Key Digest)."
- #: option.c:448
- msgid "Disable upstream checking for DNSSEC debugging."
--msgstr ""
-+msgstr "Deaktiviere die Überprüfung vorgelagerter Server für DNSSEC-Debugging"
- #: option.c:449
- msgid "Ensure answers without DNSSEC are in unsigned zones."
--msgstr ""
-+msgstr "Stellt sicher, dass Antworten ohne DNSSEC sich in einer unsignierten Zone befinden."
- #: option.c:450
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
--msgstr ""
-+msgstr "DNSSEC Signatur-Zeitstempel nicht prüfen, bis erstmalig der Cache neugeladen wird"
- #: option.c:452
- msgid "Specify DHCPv6 prefix class"
-@@ -697,11 +695,11 @@ msgstr "RA nicht protokollieren."
- #: option.c:458
- msgid "Accept queries only from directly-connected networks"
--msgstr ""
-+msgstr "Akzeptiere nur Anfragen von direkt verbundenen Netzwerken"
- #: option.c:459
- msgid "Detect and remove DNS forwarding loops"
--msgstr ""
-+msgstr "Erkennen und Entfernen von DNS-Weiterleitungsschleifen"
- #: option.c:661
- #, c-format
-@@ -958,18 +956,16 @@ msgid "Bad name in host-record"
- msgstr "Unzulässiger Name in host-record"
- #: option.c:3826
--#, fuzzy
- msgid "bad trust anchor"
--msgstr "unzulässiger Portbereich"
-+msgstr "unzulässiger Vertrauensursprung (Trust Anchor)"
- #: option.c:3840
- msgid "bad HEX in trust anchor"
--msgstr ""
-+msgstr "unzulässiger Hexwert in Vertrauensursprung (Trust Anchor)"
- #: option.c:3850
--#, fuzzy
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
--msgstr "unzulässige Option (prüfen Sie, ob dnsmasq mit DHCP/TFTP/DBus-Unterstützt übersetzt wurde)"
-+msgstr "Nicht unterstützte Option (prüfen Sie, ob DNSMasq mit DHCP/TFTP/DNSSEC/DBus-Unterstützung übersetzt wurde)"
- #: option.c:3909
- msgid "missing \""
-@@ -988,7 +984,6 @@ msgid "missing parameter"
- msgstr "fehler Parameter"
- #: option.c:3972
--#, fuzzy
- msgid "illegal option"
- msgstr "unzulässige Option"
-@@ -1110,7 +1105,7 @@ msgstr "möglichen DNS-Rebind-Angriff entdeckt: %s"
- #: forward.c:1132 forward.c:1663
- msgid "Ignoring query from non-local network"
--msgstr ""
-+msgstr "Ignoriere Anfragen vom nicht lokalen Netzwerk"
- #: forward.c:2101
- #, c-format
-@@ -1189,9 +1184,9 @@ msgid "using nameserver %s#%d for %s %s"
- msgstr "Benutze Namensserver %s#%d für %s %s"
- #: network.c:1483
--#, fuzzy, c-format
-+#, c-format
- msgid "NOT using nameserver %s#%d - query loop detected"
--msgstr "Benutze Namensserver %s#%d für %s %s"
-+msgstr "Benutze Namensserver %s#%d NICHT - Anfragenschleife festgetellt"
- #: network.c:1486
- #, c-format
-@@ -1205,16 +1200,15 @@ msgstr "Benutze Namensserver %s#%d"
- #: dnsmasq.c:154
- msgid "No trust anchors provided for DNSSEC"
--msgstr ""
-+msgstr "Keine Vertrauensursprünge (Trust Anchor) für DNSSEC verfügbar"
- #: dnsmasq.c:157
- msgid "Cannot reduce cache size from default when DNSSEC enabled"
--msgstr ""
-+msgstr "Kann die Standard Cachegröße nicht verkleinern, wenn DNSSEC aktiviert ist"
- #: dnsmasq.c:159
--#, fuzzy
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
--msgstr "DBus nicht verfügbar: setzen Sie HAVE_DBUS in src/config.h"
-+msgstr "DNSSEC nicht verfügbar: setzen Sie HAVE_DNSSEC in src/config.h"
- #: dnsmasq.c:165
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
-@@ -1241,9 +1235,8 @@ msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "Authoritatives DNS nicht verfügbar: Es muss HAVE_AUTH in src/config.h gesetzt sein"
- #: dnsmasq.c:193
--#, fuzzy
- msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
--msgstr "TFTP-Server nicht verfügbar, setzen Sie HAVE_TFTP in src/config.h"
-+msgstr "Loop-Erkennung nicht verfügbar, setzen Sie HAVE_LOOP in src/config.h"
- #: dnsmasq.c:201
- msgid "zone serial must be configured in --auth-soa"
-@@ -1317,15 +1310,15 @@ msgstr "DBus-Unterstützung eingeschaltet: warte auf Systembus-Verbindung"
- #: dnsmasq.c:672
- msgid "DNS service limited to local subnets"
--msgstr ""
-+msgstr "DNS-Dienst auf lokale Subnetze eingeschränkt"
- #: dnsmasq.c:677
- msgid "DNSSEC validation enabled"
--msgstr ""
-+msgstr "DNSSEC-Validierung aktiviert"
- #: dnsmasq.c:679
- msgid "DNSSEC signature timestamps not checked until first cache reload"
--msgstr ""
-+msgstr "DNSSEC Signatur-Zeitstempel werden erst ab dem ersten Neuladen des Caches überprüft"
- #: dnsmasq.c:684
- #, c-format
-@@ -1366,7 +1359,7 @@ msgstr "DHCP, Sockets exklusiv an das Interface %s gebunden"
- # FIXME: this and the next few must be full strings to be translatable - do not assemble in code"
- #: dnsmasq.c:753
- msgid "root is "
--msgstr "Wurzel ist"
-+msgstr "Wurzel ist "
- #: dnsmasq.c:753
- msgid "enabled"
-@@ -1432,7 +1425,7 @@ msgstr "Das TFTP-Verzeichnis %s ist nicht zugreifbar: %s"
- #: dnsmasq.c:1151
- msgid "now checking DNSSEC signature timestamps"
--msgstr ""
-+msgstr "Prüfe jetzt DNSSEC Signatur-Zeitstempel"
- #: dnsmasq.c:1218
- #, c-format
-@@ -1506,7 +1499,7 @@ msgstr "DHCP-Paket ohne Adresse an Schnittstelle %s empfangen"
- #: dhcp.c:408
- #, c-format
- msgid "ARP-cache injection failed: %s"
--msgstr ""
-+msgstr "APR-Cache Injektion fehlgeschlagen: %s"
- #: dhcp.c:506
- #, c-format
-@@ -1763,13 +1756,13 @@ msgid "DHCP request for unsupported hardware type (%d) received on %s"
- msgstr "DHCP-Anfrage für nicht unterstützen Hardwaretyp (%d) auf %s empfangen"
- #: bpf.c:376
--#, fuzzy, c-format
-+#, c-format
- msgid "cannot create PF_ROUTE socket: %s"
--msgstr "kann DHCP-Socket nicht erzeugen: %s"
-+msgstr "Kann PF_ROUTE socket nicht erzeugen: %s"
- #: bpf.c:397
- msgid "Unknown protocol version from route socket"
--msgstr ""
-+msgstr "Unbekannte Protokollversion vom Route Socket"
- #: helper.c:153
- msgid "lease() function missing in Lua script"
-@@ -2020,50 +2013,50 @@ msgstr "konnte IPset-Kontroll-Socket nicht erzeugen: %s"
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
--msgstr ""
-+msgstr "DNSSEC Speicher in Benutzung %u, Max %u, zugewiesen %u"
- #: tables.c:76
- msgid "error: fill_addr missused"
--msgstr ""
-+msgstr "Fehler: fill_addr falsch verwendet"
- #: tables.c:105
--#, fuzzy, c-format
-+#, c-format
- msgid "failed to access pf devices: %s"
--msgstr "konnte auf %s nicht zugreifen: %s"
-+msgstr "konnte auf pf Geräte nicht zugreifen: %s"
- #: tables.c:119
--#, fuzzy, c-format
-+#, c-format
- msgid "warning: no opened pf devices %s"
--msgstr "Warnung: Keine Adresse für die Schnittstelle %s gefunden"
-+msgstr "Warnung: Keine geöffneten pf Geräte %s"
- #: tables.c:127
--#, fuzzy, c-format
-+#, c-format
- msgid "error: cannot use table name %s"
--msgstr "kann Hostnamen nicht ermitteln: %s"
-+msgstr "Fehler: Kann Tabellenname %s nicht benutzen"
- #: tables.c:135
- #, c-format
- msgid "error: cannot strlcpy table name %s"
--msgstr ""
-+msgstr "Fehler: Kann den Tabellennamen %s nicht strlcpy"
- #: tables.c:141
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
--msgstr ""
-+msgstr "Warnung: pfr_add_tables: %s(%d)"
- #: tables.c:147
- msgid "info: table created"
--msgstr ""
-+msgstr "Info: Tabelle erstellt"
- #: tables.c:158
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
--msgstr ""
-+msgstr "Warnung: DIOCR%sADDRS: %s"
- #: tables.c:162
--#, fuzzy, c-format
-+#, c-format
- msgid "%d addresses %s"
--msgstr "Fehlerhafte Adresse"
-+msgstr "%d Adressen %s"
- #~ msgid "no interface with address %s"
- #~ msgstr "keine Schnittstelle mit Adresse %s"
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch b/src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch
deleted file mode 100644 (file)
index 144a254..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-From 61b838dd574c51d96fef100285a0d225824534f9 Mon Sep 17 00:00:00 2001
-From: Win King Wan <pinwing+dnsmasq@gmail.com>
-Date: Wed, 21 Jan 2015 20:41:48 +0000
-Subject: [PATCH 36/78] Don't reply to DHCPv6 SOLICIT messages when not
- configured for statefull DHCPv6.
-
----
- CHANGELOG     |  4 ++++
- src/rfc3315.c | 13 +++++++++++++
- 2 files changed, 17 insertions(+)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 0076b557e95e..a4cb901e83ae 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -59,6 +59,10 @@ version 2.73
-           cheaply than having dnsmasq re-read all its existing
-           configuration each time. 
-       
-+          Don't reply to DHCPv6 SOLICIT messages if we're not 
-+          configured to do stateful DHCPv6. Thanks to Win King Wan 
-+          for the patch.
-+
-       
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/src/rfc3315.c b/src/rfc3315.c
-index ddb390bf1136..e593ec9c362c 100644
---- a/src/rfc3315.c
-+++ b/src/rfc3315.c
-@@ -824,6 +824,19 @@ static int dhcp6_no_relay(struct state *state, int msg_type, void *inbuff, size_
-         }
-       else
-         { 
-+          /* Windows 8 always requests an address even if the Managed bit
-+             in RA is 0 and it keeps retrying if it receives a reply
-+             stating that no addresses are available. We solve this 
-+             by not replying at all if we're not configured to give any 
-+             addresses by DHCPv6. RFC 3315 17.2.1. appears to allow this. */
-+          
-+          for (c = state->context; c; c = c->current)
-+            if (!(c->flags & CONTEXT_RA_STATELESS))
-+              break;
-+          
-+          if (!c)
-+            return 0;
-+          
-           /* no address, return error */
-           o1 = new_opt6(OPTION6_STATUS_CODE);
-           put_opt6_short(DHCP6NOADDRS);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch b/src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch
deleted file mode 100644 (file)
index 99606cc..0000000
+++ /dev/null
@@ -1,213 +0,0 @@
-From 0491805d2ff6e7727f0272c94fd97d9897d1e22c Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 26 Jan 2015 11:23:43 +0000
-Subject: [PATCH 37/78] Allow inotify to be disabled at compile time on Linux.
-
----
- CHANGELOG     |  4 +++-
- src/config.h  | 13 ++++++++++++-
- src/dnsmasq.c | 21 +++++++++++++--------
- src/dnsmasq.h | 11 +++++++----
- src/inotify.c |  4 ++--
- 5 files changed, 37 insertions(+), 16 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index a4cb901e83ae..c05dec63c587 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -9,7 +9,9 @@ version 2.73
-           Use inotify for checking on updates to /etc/resolv.conf and
-           friends under Linux. This fixes race conditions when the files are 
--          updated rapidly and saves CPU by noy polling.
-+          updated rapidly and saves CPU by noy polling. To build
-+          a binary that runs on old Linux kernels without inotify,
-+          use make COPTS=-DNO_INOTIFY
-           Fix breakage of --domain=<domain>,<subnet>,local - only reverse
-           queries were intercepted. THis appears to have been broken 
-diff --git a/src/config.h b/src/config.h
-index cdca231b4079..5e5009271eba 100644
---- a/src/config.h
-+++ b/src/config.h
-@@ -115,6 +115,8 @@ HAVE_DNSSEC
- HAVE_LOOP
-    include functionality to probe for and remove DNS forwarding loops.
-+HAVE_INOTIFY
-+   use the Linux inotify facility to efficiently re-read configuration files.
- NO_IPV6
- NO_TFTP
-@@ -123,6 +125,7 @@ NO_DHCP6
- NO_SCRIPT
- NO_LARGEFILE
- NO_AUTH
-+NO_INOTIFY
-    these are avilable to explictly disable compile time options which would 
-    otherwise be enabled automatically (HAVE_IPV6, >2Gb file sizes) or 
-    which are enabled  by default in the distributed source tree. Building dnsmasq
-@@ -355,6 +358,10 @@ HAVE_SOCKADDR_SA_LEN
- #undef HAVE_LOOP
- #endif
-+#if defined (HAVE_LINUX_NETWORK) && !defined(NO_INOTIFY)
-+#define HAVE_INOTIFY
-+#endif
-+
- /* Define a string indicating which options are in use.
-    DNSMASQP_COMPILE_OPTS is only defined in dnsmasq.c */
-@@ -428,7 +435,11 @@ static char *compile_opts =
- #ifndef HAVE_LOOP
- "no-"
- #endif
--"loop-detect";
-+"loop-detect "
-+#ifndef HAVE_INOTIFY
-+"no-"
-+#endif
-+"inotify";
- #endif
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index 04cc98278f62..bc4f47170705 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -142,7 +142,9 @@ int main (int argc, char **argv)
-       set_option_bool(OPT_NOWILD);
-       reset_option_bool(OPT_CLEVERBIND);
-     }
-+#endif
-+#ifndef HAVE_INOTIFY
-   if (daemon->inotify_hosts)
-     die(_("dhcp-hostsdir not supported on this platform"), NULL, EC_BADCONF);
- #endif
-@@ -321,7 +323,7 @@ int main (int argc, char **argv)
- #endif
-     }
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
-   if ((!option_bool(OPT_NO_POLL) && daemon->port != 0) ||
-       daemon->dhcp || daemon->doing_dhcp6)
-     inotify_dnsmasq_init();
-@@ -802,7 +804,7 @@ int main (int argc, char **argv)
-   
-   pid = getpid();
-   
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
-   /* Using inotify, have to select a resolv file at startup */
-   poll_resolv(1, 0, now);
- #endif
-@@ -872,15 +874,18 @@ int main (int argc, char **argv)
-         bump_maxfd(daemon->icmp6fd, &maxfd); 
-       }
- #endif
--
--#if defined(HAVE_LINUX_NETWORK)
--      FD_SET(daemon->netlinkfd, &rset);
--      bump_maxfd(daemon->netlinkfd, &maxfd);
-+    
-+#ifdef HAVE_INOTIFY
-       if (daemon->inotifyfd != -1)
-       {
-         FD_SET(daemon->inotifyfd, &rset);
-         bump_maxfd(daemon->inotifyfd, &maxfd);
-       }
-+#endif
-+
-+#if defined(HAVE_LINUX_NETWORK)
-+      FD_SET(daemon->netlinkfd, &rset);
-+      bump_maxfd(daemon->netlinkfd, &maxfd);
- #elif defined(HAVE_BSD_NETWORK)
-       FD_SET(daemon->routefd, &rset);
-       bump_maxfd(daemon->routefd, &maxfd);
-@@ -948,7 +953,7 @@ int main (int argc, char **argv)
-       route_sock();
- #endif
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
-       if  (daemon->inotifyfd != -1 && FD_ISSET(daemon->inotifyfd, &rset) && inotify_check(now))
-       {
-         if (daemon->port != 0 && !option_bool(OPT_NO_POLL))
-@@ -1394,7 +1399,7 @@ void clear_cache_and_reload(time_t now)
-       if (option_bool(OPT_ETHERS))
-       dhcp_read_ethers();
-       reread_dhcp();
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
-       set_dhcp_inotify();
- #endif
-       dhcp_update_configs(daemon->dhcp_conf);
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index d841fdc064ad..8091634f69db 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -544,7 +544,7 @@ struct resolvc {
-   int is_default, logged;
-   time_t mtime;
-   char *name;
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
-   int wd; /* inotify watch descriptor */
-   char *file; /* pointer to file part if path */
- #endif
-@@ -558,7 +558,7 @@ struct hostsfile {
-   struct hostsfile *next;
-   int flags;
-   char *fname;
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
-   int wd; /* inotify watch descriptor */
- #endif
-   unsigned int index; /* matches to cache entries for logging */
-@@ -1013,8 +1013,11 @@ extern struct daemon {
-   /* DHCP state */
-   int dhcpfd, helperfd, pxefd; 
-+#ifdef HAVE_INOTIFY
-+  int inotifyfd;
-+#endif
- #if defined(HAVE_LINUX_NETWORK)
--  int netlinkfd, inotifyfd;
-+  int netlinkfd;
- #elif defined(HAVE_BSD_NETWORK)
-   int dhcp_raw_fd, dhcp_icmp_fd, routefd;
- #endif
-@@ -1488,7 +1491,7 @@ int detect_loop(char *query, int type);
- #endif
- /* inotify.c */
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
- void inotify_dnsmasq_init();
- int inotify_check(time_t now);
- #  ifdef HAVE_DHCP
-diff --git a/src/inotify.c b/src/inotify.c
-index 52a30d7f44db..818fe8eddda4 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -15,7 +15,7 @@
- */
- #include "dnsmasq.h"
--#ifdef HAVE_LINUX_NETWORK
-+#ifdef HAVE_INOTIFY
- #include <sys/inotify.h>
-@@ -216,5 +216,5 @@ static void check_for_dhcp_inotify(struct inotify_event *in, time_t now)
- #endif /* DHCP */
--#endif  /* LINUX_NETWORK */
-+#endif  /* INOTIFY */
-   
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch b/src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch
deleted file mode 100644 (file)
index db0d4fc..0000000
+++ /dev/null
@@ -1,562 +0,0 @@
-From 70d1873dd9e70041ed4bb88c69d5b886b7cc634c Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 31 Jan 2015 19:59:29 +0000
-Subject: [PATCH 38/78] Expand inotify code to dhcp-hostsdir, dhcp-optsdir and
- hostsdir.
-
----
- src/cache.c   |  81 +++++++++++++++++---------
- src/dnsmasq.c |   9 ++-
- src/dnsmasq.h |  14 +++--
- src/inotify.c | 179 +++++++++++++++++++++++++++++-----------------------------
- src/option.c  |  37 +++++++++---
- 5 files changed, 187 insertions(+), 133 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index 09b6dbf8087a..abaf25ec0f18 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -835,27 +835,42 @@ static void add_hosts_entry(struct crec *cache, struct all_addr *addr, int addrl
-      Only insert each unique address once into this hashing structure.
-      This complexity avoids O(n^2) divergent CPU use whilst reading
--     large (10000 entry) hosts files. */
--  
--  /* hash address */
--  for (j = 0, i = 0; i < addrlen; i++)
--    j = (j*2 +((unsigned char *)addr)[i]) % hashsz;
--  
--  for (lookup = rhash[j]; lookup; lookup = lookup->next)
--    if ((lookup->flags & cache->flags & (F_IPV4 | F_IPV6)) &&
--      memcmp(&lookup->addr.addr, addr, addrlen) == 0)
--      {
--      cache->flags &= ~F_REVERSE;
--      break;
--      }
-+     large (10000 entry) hosts files. 
-+
-+     Note that we only do this process when bulk-reading hosts files, 
-+     for incremental reads, rhash is NULL, and we use cache lookups
-+     instead.
-+  */
-   
--  /* maintain address hash chain, insert new unique address */
--  if (!lookup)
-+  if (rhash)
-     {
--      cache->next = rhash[j];
--      rhash[j] = cache;
-+      /* hash address */
-+      for (j = 0, i = 0; i < addrlen; i++)
-+      j = (j*2 +((unsigned char *)addr)[i]) % hashsz;
-+      
-+      for (lookup = rhash[j]; lookup; lookup = lookup->next)
-+      if ((lookup->flags & cache->flags & (F_IPV4 | F_IPV6)) &&
-+          memcmp(&lookup->addr.addr, addr, addrlen) == 0)
-+        {
-+          cache->flags &= ~F_REVERSE;
-+          break;
-+        }
-+      
-+      /* maintain address hash chain, insert new unique address */
-+      if (!lookup)
-+      {
-+        cache->next = rhash[j];
-+        rhash[j] = cache;
-+      }
-     }
--  
-+  else
-+    {
-+      /* incremental read, lookup in cache */
-+      lookup = cache_find_by_addr(NULL, addr, 0, cache->flags & (F_IPV4 | F_IPV6));
-+      if (lookup && lookup->flags & F_HOSTS)
-+      cache->flags &= ~F_REVERSE;
-+    }
-+
-   cache->uid = index;
-   memcpy(&cache->addr.addr, addr, addrlen);  
-   cache_hash(cache);
-@@ -912,7 +927,7 @@ static int gettok(FILE *f, char *token)
-     }
- }
--static int read_hostsfile(char *filename, unsigned int index, int cache_size, struct crec **rhash, int hashsz)
-+int read_hostsfile(char *filename, unsigned int index, int cache_size, struct crec **rhash, int hashsz)
- {  
-   FILE *f = fopen(filename, "r");
-   char *token = daemon->namebuff, *domain_suffix = NULL;
-@@ -958,7 +973,7 @@ static int read_hostsfile(char *filename, unsigned int index, int cache_size, st
-       addr_count++;
-       
-       /* rehash every 1000 names. */
--      if ((name_count - cache_size) > 1000)
-+      if (rhash && ((name_count - cache_size) > 1000))
-       {
-         rehash(name_count);
-         cache_size = name_count;
-@@ -1005,10 +1020,13 @@ static int read_hostsfile(char *filename, unsigned int index, int cache_size, st
-     } 
-   fclose(f);
--  rehash(name_count);
--  
--  my_syslog(LOG_INFO, _("read %s - %d addresses"), filename, addr_count);
-   
-+  if (rhash)
-+    {
-+      rehash(name_count); 
-+      my_syslog(LOG_INFO, _("read %s - %d addresses"), filename, addr_count);
-+    }
-+
-   return name_count;
- }
-           
-@@ -1118,14 +1136,19 @@ void cache_reload(void)
-       my_syslog(LOG_INFO, _("cleared cache"));
-       return;
-     }
--    
-+  
-   if (!option_bool(OPT_NO_HOSTS))
-     total_size = read_hostsfile(HOSTSFILE, SRC_HOSTS, total_size, (struct crec **)daemon->packet, revhashsz);
--         
-+  
-   daemon->addn_hosts = expand_filelist(daemon->addn_hosts);
-   for (ah = daemon->addn_hosts; ah; ah = ah->next)
-     if (!(ah->flags & AH_INACTIVE))
-       total_size = read_hostsfile(ah->fname, ah->index, total_size, (struct crec **)daemon->packet, revhashsz);
-+  
-+#ifdef HAVE_INOTIFY
-+  set_dynamic_inotify(AH_HOSTS, total_size, (struct crec **)daemon->packet, revhashsz);
-+#endif
-+  
- } 
- #ifdef HAVE_DHCP
-@@ -1505,7 +1528,13 @@ char *record_source(unsigned int index)
-   for (ah = daemon->addn_hosts; ah; ah = ah->next)
-     if (ah->index == index)
-       return ah->fname;
--  
-+
-+#ifdef HAVE_INOTIFY
-+  for (ah = daemon->dynamic_dirs; ah; ah = ah->next)
-+     if (ah->index == index)
-+       return ah->fname;
-+#endif
-+
-   return "<unknown>";
- }
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index bc4f47170705..2c629fe422aa 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -145,8 +145,8 @@ int main (int argc, char **argv)
- #endif
- #ifndef HAVE_INOTIFY
--  if (daemon->inotify_hosts)
--    die(_("dhcp-hostsdir not supported on this platform"), NULL, EC_BADCONF);
-+  if (daemon->dynamic_dirs)
-+    die(_("dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"), NULL, EC_BADCONF);
- #endif
-   
-   if (option_bool(OPT_DNSSEC_VALID))
-@@ -324,8 +324,7 @@ int main (int argc, char **argv)
-     }
- #ifdef HAVE_INOTIFY
--  if ((!option_bool(OPT_NO_POLL) && daemon->port != 0) ||
--      daemon->dhcp || daemon->doing_dhcp6)
-+  if (daemon->port != 0 || daemon->dhcp || daemon->doing_dhcp6)
-     inotify_dnsmasq_init();
-   else
-     daemon->inotifyfd = -1;
-@@ -1400,7 +1399,7 @@ void clear_cache_and_reload(time_t now)
-       dhcp_read_ethers();
-       reread_dhcp();
- #ifdef HAVE_INOTIFY
--      set_dhcp_inotify();
-+      set_dynamic_inotify(AH_DHCP_HST | AH_DHCP_OPT, 0, NULL, 0);
- #endif
-       dhcp_update_configs(daemon->dhcp_conf);
-       lease_update_from_configs(); 
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 8091634f69db..0c322a93993e 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -554,6 +554,9 @@ struct resolvc {
- #define AH_DIR      1
- #define AH_INACTIVE 2
- #define AH_WD_DONE  4
-+#define AH_HOSTS    8
-+#define AH_DHCP_HST 16
-+#define AH_DHCP_OPT 32
- struct hostsfile {
-   struct hostsfile *next;
-   int flags;
-@@ -965,7 +968,7 @@ extern struct daemon {
-   int doing_ra, doing_dhcp6;
-   struct dhcp_netid_list *dhcp_ignore, *dhcp_ignore_names, *dhcp_gen_names; 
-   struct dhcp_netid_list *force_broadcast, *bootp_dynamic;
--  struct hostsfile *dhcp_hosts_file, *dhcp_opts_file, *inotify_hosts;
-+  struct hostsfile *dhcp_hosts_file, *dhcp_opts_file, *dynamic_dirs;
-   int dhcp_max, tftp_max;
-   int dhcp_server_port, dhcp_client_port;
-   int start_tftp_port, end_tftp_port; 
-@@ -1071,6 +1074,8 @@ int cache_make_stat(struct txt_record *t);
- char *cache_get_name(struct crec *crecp);
- char *cache_get_cname_target(struct crec *crecp);
- struct crec *cache_enumerate(int init);
-+int read_hostsfile(char *filename, unsigned int index, int cache_size, 
-+                 struct crec **rhash, int hashsz);
- /* blockdata.c */
- #ifdef HAVE_DNSSEC
-@@ -1204,7 +1209,8 @@ void reset_option_bool(unsigned int opt);
- struct hostsfile *expand_filelist(struct hostsfile *list);
- char *parse_server(char *arg, union mysockaddr *addr, 
-                  union mysockaddr *source_addr, char *interface, int *flags);
--int option_read_hostsfile(char *file);
-+int option_read_dynfile(char *file, int flags);
-+
- /* forward.c */
- void reply_query(int fd, int family, time_t now);
- void receive_query(struct listener *listen, time_t now);
-@@ -1494,7 +1500,5 @@ int detect_loop(char *query, int type);
- #ifdef HAVE_INOTIFY
- void inotify_dnsmasq_init();
- int inotify_check(time_t now);
--#  ifdef HAVE_DHCP
--void set_dhcp_inotify(void);
--#  endif
-+void set_dynamic_inotify(int flag, int total_size, struct crec **rhash, int revhashsz);
- #endif
-diff --git a/src/inotify.c b/src/inotify.c
-index 818fe8eddda4..c537f4c1562a 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -19,11 +19,6 @@
- #include <sys/inotify.h>
--#ifdef HAVE_DHCP
--static void check_for_dhcp_inotify(struct inotify_event *in, time_t now);
--#endif
--
--
- /* the strategy is to set a inotify on the directories containing
-    resolv files, for any files in the directory which are close-write 
-    or moved into the directory.
-@@ -82,57 +77,28 @@ void inotify_dnsmasq_init()
-     }
- }
--int inotify_check(time_t now)
-+
-+/* initialisation for dynamic-dir. Set inotify watch for each directory, and read pre-existing files */
-+void set_dynamic_inotify(int flag, int total_size, struct crec **rhash, int revhashsz)
- {
--  int hit = 0;
-+  struct hostsfile *ah;
-   
--  while (1)
-+  for (ah = daemon->dynamic_dirs; ah; ah = ah->next)
-     {
--      int rc;
--      char *p;
--      struct resolvc *res;
--      struct inotify_event *in;
--
--      while ((rc = read(daemon->inotifyfd, inotify_buffer, INOTIFY_SZ)) == -1 && errno == EINTR);
--      
--      if (rc <= 0)
--      break;
--      
--      for (p = inotify_buffer; rc - (p - inotify_buffer) >= (int)sizeof(struct inotify_event); p += sizeof(struct inotify_event) + in->len) 
-+      DIR *dir_stream = NULL;
-+      struct dirent *ent;
-+      struct stat buf;
-+     
-+      if (!(ah->flags & flag))
-+      continue;
-+ 
-+      if (stat(ah->fname, &buf) == -1 || !(S_ISDIR(buf.st_mode)))
-       {
--        in = (struct inotify_event*)p;
--        
--        for (res = daemon->resolv_files; res; res = res->next)
--          if (res->wd == in->wd && in->len != 0 && strcmp(res->file, in->name) == 0)
--            hit = 1;
--
--#ifdef HAVE_DHCP
--        if (daemon->dhcp || daemon->doing_dhcp6)
--          check_for_dhcp_inotify(in, now);
--#endif
-+        my_syslog(LOG_ERR, _("bad dynamic directory %s: %s"), 
-+                  ah->fname, strerror(errno));
-+        continue;
-       }
--    }
--  return hit;
--}
--
--#ifdef HAVE_DHCP 
--/* initialisation for dhcp-hostdir. Set inotify watch for each directory, and read pre-existing files */
--void set_dhcp_inotify(void)
--{
--  struct hostsfile *ah;
--
--  for (ah = daemon->inotify_hosts; ah; ah = ah->next)
--    {
--       DIR *dir_stream = NULL;
--       struct dirent *ent;
--       struct stat buf;
--
--       if (stat(ah->fname, &buf) == -1 || !(S_ISDIR(buf.st_mode)))
--       {
--         my_syslog(LOG_ERR, _("bad directory in dhcp-hostsdir %s"), ah->fname);
--         continue;
--       }
--
-+      
-        if (!(ah->flags & AH_WD_DONE))
-        {
-          ah->wd = inotify_add_watch(daemon->inotifyfd, ah->fname, IN_CLOSE_WRITE | IN_MOVED_TO);
-@@ -142,7 +108,8 @@ void set_dhcp_inotify(void)
-         a race which misses files being added as we start */
-        if (ah->wd == -1 || !(dir_stream = opendir(ah->fname)))
-        {
--         my_syslog(LOG_ERR, _("failed to create inotify for %s"), ah->fname);
-+         my_syslog(LOG_ERR, _("failed to create inotify for %s: %s"),
-+                   ah->fname, strerror(errno));
-          continue;
-        }
-@@ -167,54 +134,90 @@ void set_dhcp_inotify(void)
-              
-              /* ignore non-regular files */
-              if (stat(path, &buf) != -1 && S_ISREG(buf.st_mode))
--               option_read_hostsfile(path);
--             
-+               {
-+                 if (ah->flags & AH_HOSTS)
-+                   total_size = read_hostsfile(path, ah->index, total_size, rhash, revhashsz);
-+#ifdef HAVE_DHCP
-+                 else if (ah->flags & (AH_DHCP_HST | AH_DHCP_OPT))
-+                   option_read_dynfile(path, ah->flags);
-+#endif                   
-+               }
-+
-              free(path);
-            }
-        }
-     }
- }
--static void check_for_dhcp_inotify(struct inotify_event *in, time_t now)
-+int inotify_check(time_t now)
- {
-+  int hit = 0;
-   struct hostsfile *ah;
--  /* ignore emacs backups and dotfiles */
--  if (in->len == 0 || 
--      in->name[in->len - 1] == '~' ||
--      (in->name[0] == '#' && in->name[in->len - 1] == '#') ||
--      in->name[0] == '.')
--    return;
--
--  for (ah = daemon->inotify_hosts; ah; ah = ah->next)
--    if (ah->wd == in->wd)
--      {
--      size_t lendir = strlen(ah->fname);
--      char *path;
--         
--      if ((path = whine_malloc(lendir + in->len + 2)))
--        {
--          strcpy(path, ah->fname);
--          strcat(path, "/");
--          strcat(path, in->name);
--          
--          if (option_read_hostsfile(path))
-+  while (1)
-+    {
-+      int rc;
-+      char *p;
-+      struct resolvc *res;
-+      struct inotify_event *in;
-+
-+      while ((rc = read(daemon->inotifyfd, inotify_buffer, INOTIFY_SZ)) == -1 && errno == EINTR);
-+      
-+      if (rc <= 0)
-+      break;
-+      
-+      for (p = inotify_buffer; rc - (p - inotify_buffer) >= (int)sizeof(struct inotify_event); p += sizeof(struct inotify_event) + in->len) 
-+      {
-+        in = (struct inotify_event*)p;
-+        
-+        for (res = daemon->resolv_files; res; res = res->next)
-+          if (res->wd == in->wd && in->len != 0 && strcmp(res->file, in->name) == 0)
-+            hit = 1;
-+
-+        /* ignore emacs backups and dotfiles */
-+        if (in->len == 0 || 
-+            in->name[in->len - 1] == '~' ||
-+            (in->name[0] == '#' && in->name[in->len - 1] == '#') ||
-+            in->name[0] == '.')
-+          continue;
-+        
-+        for (ah = daemon->dynamic_dirs; ah; ah = ah->next)
-+          if (ah->wd == in->wd)
-             {
--              /* Propogate the consequences of loading a new dhcp-host */
--              dhcp_update_configs(daemon->dhcp_conf);
--              lease_update_from_configs(); 
--              lease_update_file(now); 
--              lease_update_dns(1);
-+              size_t lendir = strlen(ah->fname);
-+              char *path;
-+              
-+              if ((path = whine_malloc(lendir + in->len + 2)))
-+                {
-+                  strcpy(path, ah->fname);
-+                  strcat(path, "/");
-+                  strcat(path, in->name);
-+                  
-+                  if (ah->flags & AH_HOSTS)
-+                    read_hostsfile(path, ah->index, 0, NULL, 0);
-+#ifdef HAVE_DHCP
-+                  else if (ah->flags & AH_DHCP_HST)
-+                    {
-+                      if (option_read_dynfile(path, AH_DHCP_HST))
-+                        {
-+                          /* Propogate the consequences of loading a new dhcp-host */
-+                          dhcp_update_configs(daemon->dhcp_conf);
-+                          lease_update_from_configs(); 
-+                          lease_update_file(now); 
-+                          lease_update_dns(1);
-+                        }
-+                    }
-+                  else if (ah->flags & AH_DHCP_OPT)
-+                    option_read_dynfile(path, AH_DHCP_OPT);
-+#endif
-+                  
-+                  free(path);
-+                }
-             }
--          
--          free(path);
--        }
--      
--      return;
--      }
-+      }
-+    }
-+  return hit;
- }
--#endif /* DHCP */
--
- #endif  /* INOTIFY */
-   
-diff --git a/src/option.c b/src/option.c
-index 22e11c37d374..6ef80117cc8c 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -150,6 +150,8 @@ struct myoption {
- #define LOPT_IGNORE_ADDR   338
- #define LOPT_MINCTTL       339
- #define LOPT_DHCP_INOTIFY  340
-+#define LOPT_DHOPT_INOTIFY 341
-+#define LOPT_HOST_INOTIFY  342
- #ifdef HAVE_GETOPT_LONG
- static const struct option opts[] =  
-@@ -200,6 +202,7 @@ static const struct myoption opts[] =
-     { "local-ttl", 1, 0, 'T' },
-     { "no-negcache", 0, 0, 'N' },
-     { "addn-hosts", 1, 0, 'H' },
-+    { "hostsdir", 1, 0, LOPT_HOST_INOTIFY },
-     { "query-port", 1, 0, 'Q' },
-     { "except-interface", 1, 0, 'I' },
-     { "no-dhcp-interface", 1, 0, '2' },
-@@ -249,6 +252,7 @@ static const struct myoption opts[] =
-     { "dhcp-hostsfile", 1, 0, LOPT_DHCP_HOST },
-     { "dhcp-optsfile", 1, 0, LOPT_DHCP_OPTS },
-     { "dhcp-hostsdir", 1, 0, LOPT_DHCP_INOTIFY },
-+    { "dhcp-optsdir", 1, 0, LOPT_DHOPT_INOTIFY },
-     { "dhcp-no-override", 0, 0, LOPT_OVERRIDE },
-     { "tftp-port-range", 1, 0, LOPT_TFTPPORTS },
-     { "stop-dns-rebind", 0, 0, LOPT_REBIND },
-@@ -338,9 +342,11 @@ static struct {
-   { LOPT_DHCP_HOST, ARG_DUP, "<path>", gettext_noop("Read DHCP host specs from file."), NULL },
-   { LOPT_DHCP_OPTS, ARG_DUP, "<path>", gettext_noop("Read DHCP option specs from file."), NULL },
-   { LOPT_DHCP_INOTIFY, ARG_DUP, "<path>", gettext_noop("Read DHCP host specs from a directory."), NULL }, 
-+  { LOPT_DHOPT_INOTIFY, ARG_DUP, "<path>", gettext_noop("Read DHCP options from a directory."), NULL }, 
-   { LOPT_TAG_IF, ARG_DUP, "tag-expression", gettext_noop("Evaluate conditional tag expression."), NULL },
-   { 'h', OPT_NO_HOSTS, NULL, gettext_noop("Do NOT load %s file."), HOSTSFILE },
-   { 'H', ARG_DUP, "<path>", gettext_noop("Specify a hosts file to be read in addition to %s."), HOSTSFILE },
-+  { LOPT_HOST_INOTIFY, ARG_DUP, "<path>", gettext_noop("Read hosts files from a directory."), NULL },
-   { 'i', ARG_DUP, "<interface>", gettext_noop("Specify interface(s) to listen on."), NULL },
-   { 'I', ARG_DUP, "<interface>", gettext_noop("Specify interface(s) NOT to listen on.") , NULL },
-   { 'j', ARG_DUP, "set:<tag>,<class>", gettext_noop("Map DHCP user class to tag."), NULL },
-@@ -1712,10 +1718,12 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-       break;
- #endif /* HAVE_DHCP */
--    case LOPT_DHCP_HOST: /* --dhcp-hostsfile */
--    case LOPT_DHCP_OPTS: /* --dhcp-optsfile */
--    case LOPT_DHCP_INOTIFY: /* dhcp-hostsdir */
--    case 'H': /* --addn-hosts */
-+    case LOPT_DHCP_HOST:     /* --dhcp-hostsfile */
-+    case LOPT_DHCP_OPTS:     /* --dhcp-optsfile */
-+    case LOPT_DHCP_INOTIFY:  /* --dhcp-hostsdir */
-+    case LOPT_DHOPT_INOTIFY: /* --dhcp-optsdir */
-+    case LOPT_HOST_INOTIFY:  /* --hostsdir */
-+    case 'H':                /* --addn-hosts */
-       {
-       struct hostsfile *new = opt_malloc(sizeof(struct hostsfile));
-       static unsigned int hosts_index = SRC_AH;
-@@ -1737,10 +1745,16 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-           new->next = daemon->dhcp_opts_file;
-           daemon->dhcp_opts_file = new;
-         }       
--      else if (option == LOPT_DHCP_INOTIFY)
-+      else 
-         {
--          new->next = daemon->inotify_hosts;
--          daemon->inotify_hosts = new;
-+          new->next = daemon->dynamic_dirs;
-+          daemon->dynamic_dirs = new; 
-+          if (option == LOPT_DHCP_INOTIFY)
-+            new->flags |= AH_DHCP_HST;
-+          else if (option == LOPT_DHOPT_INOTIFY)
-+            new->flags |= AH_DHCP_OPT;
-+          else if (option == LOPT_HOST_INOTIFY)
-+            new->flags |= AH_HOSTS;
-         }
-       
-       break;
-@@ -4052,9 +4066,14 @@ static void read_file(char *file, FILE *f, int hard_opt)
- }
- #ifdef HAVE_DHCP
--int option_read_hostsfile(char *file)
-+int option_read_dynfile(char *file, int flags)
- {
--  return one_file(file, LOPT_BANK);
-+  if (flags & AH_DHCP_HST)
-+    return one_file(file, LOPT_BANK);
-+  else if (flags & AH_DHCP_OPT)
-+    return one_file(file, LOPT_OPTS);
-+
-+  return 0;
- }
- #endif
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch b/src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch
deleted file mode 100644 (file)
index 28282c2..0000000
+++ /dev/null
@@ -1,428 +0,0 @@
-From aff3396280e944833f0e23d834aa6acd5fe2605a Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 31 Jan 2015 20:13:40 +0000
-Subject: [PATCH 39/78] Update copyrights for dawn of 2015.
-
----
- Makefile             | 2 +-
- src/auth.c           | 2 +-
- src/blockdata.c      | 2 +-
- src/bpf.c            | 2 +-
- src/cache.c          | 2 +-
- src/config.h         | 2 +-
- src/conntrack.c      | 2 +-
- src/dbus.c           | 2 +-
- src/dhcp-common.c    | 2 +-
- src/dhcp-protocol.h  | 2 +-
- src/dhcp.c           | 2 +-
- src/dhcp6-protocol.h | 2 +-
- src/dhcp6.c          | 2 +-
- src/dns-protocol.h   | 2 +-
- src/dnsmasq.c        | 2 +-
- src/dnsmasq.h        | 4 ++--
- src/dnssec.c         | 2 +-
- src/domain.c         | 2 +-
- src/forward.c        | 2 +-
- src/helper.c         | 2 +-
- src/inotify.c        | 2 +-
- src/ip6addr.h        | 2 +-
- src/lease.c          | 2 +-
- src/log.c            | 2 +-
- src/loop.c           | 2 +-
- src/netlink.c        | 2 +-
- src/network.c        | 2 +-
- src/option.c         | 2 +-
- src/outpacket.c      | 2 +-
- src/radv-protocol.h  | 2 +-
- src/radv.c           | 2 +-
- src/rfc1035.c        | 2 +-
- src/rfc2131.c        | 2 +-
- src/rfc3315.c        | 2 +-
- src/slaac.c          | 2 +-
- src/tftp.c           | 2 +-
- src/util.c           | 2 +-
- 37 files changed, 38 insertions(+), 38 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index bcbd5571671d..21e4a5c4101c 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,4 +1,4 @@
--# dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+# dnsmasq is Copyright (c) 2000-2015 Simon Kelley
- #
- #  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
-diff --git a/src/auth.c b/src/auth.c
-index 59e05d3da38e..15721e52793f 100644
---- a/src/auth.c
-+++ b/src/auth.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/blockdata.c b/src/blockdata.c
-index 5a70a7967fa3..c8f5eae811eb 100644
---- a/src/blockdata.c
-+++ b/src/blockdata.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/bpf.c b/src/bpf.c
-index 4416b1c07287..997d87421bed 100644
---- a/src/bpf.c
-+++ b/src/bpf.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/cache.c b/src/cache.c
-index abaf25ec0f18..117ae279fd4e 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/config.h b/src/config.h
-index 5e5009271eba..8def6f200461 100644
---- a/src/config.h
-+++ b/src/config.h
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/conntrack.c b/src/conntrack.c
-index 6a5133ab93af..0fa2da903b03 100644
---- a/src/conntrack.c
-+++ b/src/conntrack.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dbus.c b/src/dbus.c
-index a2a94dc85dac..5b69de518beb 100644
---- a/src/dbus.c
-+++ b/src/dbus.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dhcp-common.c b/src/dhcp-common.c
-index 9d13ac8df6f1..ce115202a646 100644
---- a/src/dhcp-common.c
-+++ b/src/dhcp-common.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dhcp-protocol.h b/src/dhcp-protocol.h
-index 4c0961472482..701b6cb3346e 100644
---- a/src/dhcp-protocol.h
-+++ b/src/dhcp-protocol.h
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dhcp.c b/src/dhcp.c
-index 7acf2c4311a9..f29be9b489a7 100644
---- a/src/dhcp.c
-+++ b/src/dhcp.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dhcp6-protocol.h b/src/dhcp6-protocol.h
-index 5927dc32f6af..928a2fa162ed 100644
---- a/src/dhcp6-protocol.h
-+++ b/src/dhcp6-protocol.h
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dhcp6.c b/src/dhcp6.c
-index bc48fdddd3de..3c56e77c6085 100644
---- a/src/dhcp6.c
-+++ b/src/dhcp6.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dns-protocol.h b/src/dns-protocol.h
-index 0aced3ce6952..16fade33d98c 100644
---- a/src/dns-protocol.h
-+++ b/src/dns-protocol.h
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index 2c629fe422aa..e903a24c8105 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 0c322a93993e..89e758b56a0a 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-  
-    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
-@@ -14,7 +14,7 @@
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
--#define COPYRIGHT "Copyright (c) 2000-2014 Simon Kelley" 
-+#define COPYRIGHT "Copyright (c) 2000-2015 Simon Kelley" 
- #ifndef NO_LARGEFILE
- /* Ensure we can use files >2GB (log files may grow this big) */
-diff --git a/src/dnssec.c b/src/dnssec.c
-index d39ab85ed966..a8dfe3871c85 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -1,5 +1,5 @@
- /* dnssec.c is Copyright (c) 2012 Giovanni Bajo <rasky@develer.com>
--           and Copyright (c) 2012-2014 Simon Kelley
-+           and Copyright (c) 2012-2015 Simon Kelley
-    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
-diff --git a/src/domain.c b/src/domain.c
-index fdd5e4f0838f..278698ca04b3 100644
---- a/src/domain.c
-+++ b/src/domain.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/forward.c b/src/forward.c
-index b17bc34f865f..438e9fa490b8 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/helper.c b/src/helper.c
-index 4be53c361ee1..1fee72dead8c 100644
---- a/src/helper.c
-+++ b/src/helper.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/inotify.c b/src/inotify.c
-index c537f4c1562a..470d6ed99213 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-  
-    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
-diff --git a/src/ip6addr.h b/src/ip6addr.h
-index c7dcb39c33fa..f0b7e820e227 100644
---- a/src/ip6addr.h
-+++ b/src/ip6addr.h
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/lease.c b/src/lease.c
-index 5d56b1b9147e..545bbb7fd09c 100644
---- a/src/lease.c
-+++ b/src/lease.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/log.c b/src/log.c
-index 8083a8697323..a5ac605c7c5d 100644
---- a/src/log.c
-+++ b/src/log.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/loop.c b/src/loop.c
-index bb377ad12644..565f7d8e58e0 100644
---- a/src/loop.c
-+++ b/src/loop.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/netlink.c b/src/netlink.c
-index b39328376389..10f94db25a14 100644
---- a/src/netlink.c
-+++ b/src/netlink.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/network.c b/src/network.c
-index 14d2af2ce313..7045253d467b 100644
---- a/src/network.c
-+++ b/src/network.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/option.c b/src/option.c
-index 6ef80117cc8c..cb4e76ba0aa2 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/outpacket.c b/src/outpacket.c
-index dce68f7cb09f..5b1ff9318bbd 100644
---- a/src/outpacket.c
-+++ b/src/outpacket.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/radv-protocol.h b/src/radv-protocol.h
-index 72ccda49d7fe..4cc1ea426e69 100644
---- a/src/radv-protocol.h
-+++ b/src/radv-protocol.h
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/radv.c b/src/radv.c
-index 3c8b162dbd8e..6da125b864ae 100644
---- a/src/radv.c
-+++ b/src/radv.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/rfc1035.c b/src/rfc1035.c
-index 262274fc5b80..5ef5ddb7485e 100644
---- a/src/rfc1035.c
-+++ b/src/rfc1035.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/rfc2131.c b/src/rfc2131.c
-index 5c9040892f1d..55526443dc84 100644
---- a/src/rfc2131.c
-+++ b/src/rfc2131.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/rfc3315.c b/src/rfc3315.c
-index e593ec9c362c..c1ddc805988d 100644
---- a/src/rfc3315.c
-+++ b/src/rfc3315.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/slaac.c b/src/slaac.c
-index 351d6802f85e..abaad537e25a 100644
---- a/src/slaac.c
-+++ b/src/slaac.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/tftp.c b/src/tftp.c
-index a527911fc0df..a57a31514f44 100644
---- a/src/tftp.c
-+++ b/src/tftp.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
-diff --git a/src/util.c b/src/util.c
-index d532444da207..91d02410b13f 100644
---- a/src/util.c
-+++ b/src/util.c
-@@ -1,4 +1,4 @@
--/* dnsmasq is Copyright (c) 2000-2014 Simon Kelley
-+/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
-    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
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/004-fix_behaviour_of_empty_dhcp-option.patch b/src/patches/dnsmasq/004-fix_behaviour_of_empty_dhcp-option.patch
new file mode 100644 (file)
index 0000000..492ada9
--- /dev/null
@@ -0,0 +1,38 @@
+From 5e3e464ac4022ee0b3794513abe510817e2cf3ca Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 25 Aug 2015 23:08:39 +0100
+Subject: [PATCH] Fix behaviour of empty dhcp-option=option6:dns-server, which
+ should inhibit sending option.
+
+---
+ src/rfc3315.c |    9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/src/rfc3315.c b/src/rfc3315.c
+index 2665d0d..3f1f9ee 100644
+--- a/src/rfc3315.c
++++ b/src/rfc3315.c
+@@ -1320,15 +1320,16 @@ static struct dhcp_netid *add_options(struct state *state, int do_refresh)
+       
+       if (opt_cfg->opt == OPTION6_REFRESH_TIME)
+       done_refresh = 1;
++       
++      if (opt_cfg->opt == OPTION6_DNS_SERVER)
++      done_dns = 1;
+       
+-      if (opt_cfg->flags & DHOPT_ADDR6)
++      /* Empty DNS_SERVER option will not set DHOPT_ADDR6 */
++      if ((opt_cfg->flags & DHOPT_ADDR6) || opt_cfg->opt == OPTION6_DNS_SERVER)
+       {
+         int len, j;
+         struct in6_addr *a;
+         
+-        if (opt_cfg->opt == OPTION6_DNS_SERVER)
+-          done_dns = 1;
+-        
+         for (a = (struct in6_addr *)opt_cfg->val, len = opt_cfg->len, j = 0; 
+              j < opt_cfg->len; j += IN6ADDRSZ, a++)
+           if ((IN6_IS_ADDR_ULA_ZERO(a) && IN6_IS_ADDR_UNSPECIFIED(state->ula_addr)) ||
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/0040-inotify-documentation-updates.patch b/src/patches/dnsmasq/0040-inotify-documentation-updates.patch
deleted file mode 100644 (file)
index 2fb831c..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-From 3d04f46334d0e345f589eda1372e638b946fe637 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 31 Jan 2015 21:59:13 +0000
-Subject: [PATCH 40/78] inotify documentation updates.
-
----
- man/dnsmasq.8 | 11 +++++++++--
- 1 file changed, 9 insertions(+), 2 deletions(-)
-
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 005b5cca8d1f..c858323d78bd 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -50,6 +50,10 @@ Additional hosts file. Read the specified file as well as /etc/hosts. If -h is g
- only the specified file. This option may be repeated for more than one
- additional hosts file. If a directory is given, then read all the files contained in that directory. 
- .TP
-+.B --hostsdir=<path>
-+Read all the hosts files contained in the directory. New or changed files
-+are read automatically. See --dhcp-hostsdir for details.
-+.TP
- .B \-E, --expand-hosts
- Add the domain to simple names (without a period) in /etc/hosts
- in the same way as for DHCP-derived names. Note that this does not
-@@ -979,12 +983,14 @@ dhcp-optsfile will be re-read when dnsmasq receives SIGHUP. Note that
- it is possible to encode the information in a
- .TP
- .B --dhcp-hostsdir=<path>
--This is exactly equivalent to dhcp-hostfile, except for the following. The path MUST be a
-+This is equivalent to dhcp-hostsfile, except for the following. The path MUST be a
- directory, and not an individual file. Changed or new files within
- the directory are read automatically, without the need to send SIGHUP.
- If a file is deleted for changed after it has been read by dnsmasq, then the
- host record it contained will remain until dnsmasq recieves a SIGHUP, or 
- is restarted; ie host records are only added dynamically.
-+.B --dhcp-optsdir=<path>
-+This is equivalent to dhcp-optsfile, with the differences noted for --dhcp-hostsdir.
- .TP
- .B --dhcp-boot
- flag as DHCP options, using the options names bootfile-name,
-@@ -1791,7 +1797,8 @@ clears its cache and then re-loads
- .I /etc/hosts
- and 
- .I /etc/ethers 
--and any file given by --dhcp-hostsfile, --dhcp-optsfile or --addn-hosts.
-+and any file given by --dhcp-hostsfile, --dhcp-hostsdir, --dhcp-optsfile, 
-+--dhcp-optsdir, --addn-hosts or --hostsdir.
- The dhcp lease change script is called for all
- existing DHCP leases. If 
- .B
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch b/src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch
deleted file mode 100644 (file)
index 68e1ca6..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 6ef15b34ca83c62a939f69356d5c3f7a6bfef3d0 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 31 Jan 2015 22:44:26 +0000
-Subject: [PATCH 41/78] Fix broken ECDSA DNSSEC signatures.
-
----
- CHANGELOG    | 2 ++
- src/dnssec.c | 2 +-
- 2 files changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index c05dec63c587..c80dc0fdbe9e 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -65,6 +65,8 @@ version 2.73
-           configured to do stateful DHCPv6. Thanks to Win King Wan 
-           for the patch.
-+          Fix broken DNSSEC validation of ECDSA signatures.
-+      
-       
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/src/dnssec.c b/src/dnssec.c
-index a8dfe3871c85..26932373cd3e 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -275,7 +275,7 @@ static int dnsmasq_ecdsa_verify(struct blockdata *key_data, unsigned int key_len
-     }
-   
-   if (sig_len != 2*t || key_len != 2*t ||
--      (p = blockdata_retrieve(key_data, key_len, NULL)))
-+      !(p = blockdata_retrieve(key_data, key_len, NULL)))
-     return 0;
-   
-   mpz_import(x, t , 1, 1, 0, 0, p);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0042-BSD-make-support.patch b/src/patches/dnsmasq/0042-BSD-make-support.patch
deleted file mode 100644 (file)
index ced5868..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-From 106266761828a0acb006346ae47bf031dee46a5d Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 1 Feb 2015 00:15:16 +0000
-Subject: [PATCH 42/78] BSD make support
-
----
- Makefile | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 21e4a5c4101c..2910320b6452 100644
---- a/Makefile
-+++ b/Makefile
-@@ -64,8 +64,10 @@ nettle_libs =   `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC $(PKG_CONFIG
- gmp_libs =      `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC NO_GMP --copy -lgmp`
- sunos_libs =    `if uname | grep SunOS >/dev/null 2>&1; then echo -lsocket -lnsl -lposix4; fi`
- version =     -DVERSION='\"`$(top)/bld/get-version $(top)`\"'
--copts_conf = .copts_$(shell $(CC) -DDNSMASQ_COMPILE_OPTS $(COPTS) -E $(top)/$(SRC)/dnsmasq.h | \
--                      ( md5sum 2>/dev/null || md5 ) | cut -f 1 -d ' ')
-+
-+sum?=$(shell $(CC) -DDNSMASQ_COMPILE_OPTS $(COPTS) -E $(top)/$(SRC)/dnsmasq.h | ( md5sum 2>/dev/null || md5 ) | cut -f 1 -d ' ')
-+sum!=$(CC) -DDNSMASQ_COMPILE_OPTS $(COPTS) -E $(top)/$(SRC)/dnsmasq.h | ( md5sum 2>/dev/null || md5 ) | cut -f 1 -d ' '
-+copts_conf = .copts_$(sum)
- objs = cache.o rfc1035.o util.o option.o forward.o network.o \
-        dnsmasq.o dhcp.o lease.o rfc2131.o netlink.o dbus.o bpf.o \
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch b/src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch
deleted file mode 100644 (file)
index 2aa543d..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From 8d8a54ec79d9f96979fabbd97b1dd2ddebc7d78f Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 1 Feb 2015 21:48:46 +0000
-Subject: [PATCH 43/78] Fix build failure on openBSD.
-
----
- src/tables.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/tables.c b/src/tables.c
-index dcdef794c4d2..aae1252708db 100644
---- a/src/tables.c
-+++ b/src/tables.c
-@@ -21,7 +21,7 @@
- #if defined(HAVE_IPSET) && defined(HAVE_BSD_NETWORK)
- #ifndef __FreeBSD__
--#include <bsd/string.h>
-+#include <string.h>
- #endif
- #include <sys/types.h>
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0044-Manpage-typo-fix.patch b/src/patches/dnsmasq/0044-Manpage-typo-fix.patch
deleted file mode 100644 (file)
index ef606e8..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From d36b732c4cfa91ea09af64b5dc0f3a85a075e5bc Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Thi=C3=A9baud=20Weksteen?= <thiebaud@weksteen.fr>
-Date: Mon, 2 Feb 2015 21:37:27 +0000
-Subject: [PATCH 44/78] Manpage typo fix.
-
----
- man/dnsmasq.8 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index c858323d78bd..27f85d40fbbb 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -516,7 +516,7 @@ zone files: the port, weight and priority numbers are in a different
- order. More than one SRV record for a given service/domain is allowed,
- all that match are returned.
- .TP
--.B --host-record=<name>[,<name>....][<IPv4-address>],[<IPv6-address>]
-+.B --host-record=<name>[,<name>....],[<IPv4-address>],[<IPv6-address>]
- Add A, AAAA and PTR records to the DNS. This adds one or more names to
- the DNS with associated IPv4 (A) and IPv6 (AAAA) records. A name may
- appear in more than one 
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch b/src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch
deleted file mode 100644 (file)
index 1f87a9e..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-From 2941d3ac898cf84b544e47c9735c5e4111711db1 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 2 Feb 2015 22:36:42 +0000
-Subject: [PATCH 45/78] Fixup dhcp-configs after reading extra hostfiles with
- inotify.
-
----
- src/inotify.c | 14 +++++++++++++-
- 1 file changed, 13 insertions(+), 1 deletion(-)
-
-diff --git a/src/inotify.c b/src/inotify.c
-index 470d6ed99213..6f4cd79e0030 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -194,7 +194,19 @@ int inotify_check(time_t now)
-                   strcat(path, in->name);
-                   
-                   if (ah->flags & AH_HOSTS)
--                    read_hostsfile(path, ah->index, 0, NULL, 0);
-+                    {
-+                      read_hostsfile(path, ah->index, 0, NULL, 0);
-+#ifdef HAVE_DHCP
-+                      if (daemon->dhcp || daemon->doing_dhcp6) 
-+                        {
-+                          /* Propogate the consequences of loading a new dhcp-host */
-+                          dhcp_update_configs(daemon->dhcp_conf);
-+                          lease_update_from_configs(); 
-+                          lease_update_file(now); 
-+                          lease_update_dns(1);
-+                        }
-+#endif
-+                    }
- #ifdef HAVE_DHCP
-                   else if (ah->flags & AH_DHCP_HST)
-                     {
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch b/src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch
deleted file mode 100644 (file)
index 754d0a8..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-From f9c863708c6b0aea31ff7a466647685dc739de50 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Tue, 3 Feb 2015 21:52:48 +0000
-Subject: [PATCH 46/78] Extra logging for inotify code.
-
----
- src/cache.c   | 9 ++++-----
- src/inotify.c | 4 +++-
- src/option.c  | 4 +++-
- 3 files changed, 10 insertions(+), 7 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index 117ae279fd4e..43245b771b53 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1022,11 +1022,10 @@ int read_hostsfile(char *filename, unsigned int index, int cache_size, struct cr
-   fclose(f);
-   
-   if (rhash)
--    {
--      rehash(name_count); 
--      my_syslog(LOG_INFO, _("read %s - %d addresses"), filename, addr_count);
--    }
--
-+    rehash(name_count); 
-+  
-+  my_syslog(LOG_INFO, _("read %s - %d addresses"), filename, addr_count);
-+  
-   return name_count;
- }
-           
-diff --git a/src/inotify.c b/src/inotify.c
-index 6f4cd79e0030..44ce0c9af051 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -192,7 +192,9 @@ int inotify_check(time_t now)
-                   strcpy(path, ah->fname);
-                   strcat(path, "/");
-                   strcat(path, in->name);
--                  
-+                   
-+                  my_syslog(LOG_INFO, _("inotify, new or changed file %s"), path);
-+
-                   if (ah->flags & AH_HOSTS)
-                     {
-                       read_hostsfile(path, ah->index, 0, NULL, 0);
-diff --git a/src/option.c b/src/option.c
-index cb4e76ba0aa2..e4b4865d07a5 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -4068,11 +4068,13 @@ static void read_file(char *file, FILE *f, int hard_opt)
- #ifdef HAVE_DHCP
- int option_read_dynfile(char *file, int flags)
- {
-+  my_syslog(MS_DHCP | LOG_INFO, _("read %s"), file);
-+  
-   if (flags & AH_DHCP_HST)
-     return one_file(file, LOPT_BANK);
-   else if (flags & AH_DHCP_OPT)
-     return one_file(file, LOPT_OPTS);
--
-+  
-   return 0;
- }
- #endif
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0047-man-page-typo.patch b/src/patches/dnsmasq/0047-man-page-typo.patch
deleted file mode 100644 (file)
index 9fdd87e..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-From efb8b5566aafc1f3ce18514a2df93af5a2e4998c Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 7 Feb 2015 22:36:34 +0000
-Subject: [PATCH 47/78] man page typo.
-
----
- man/dnsmasq.8 | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 27f85d40fbbb..5cdd186afaa0 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -989,6 +989,7 @@ the directory are read automatically, without the need to send SIGHUP.
- If a file is deleted for changed after it has been read by dnsmasq, then the
- host record it contained will remain until dnsmasq recieves a SIGHUP, or 
- is restarted; ie host records are only added dynamically.
-+.TP
- .B --dhcp-optsdir=<path>
- This is equivalent to dhcp-optsfile, with the differences noted for --dhcp-hostsdir.
- .TP
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch b/src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch
deleted file mode 100644 (file)
index fd0da9b..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From f4f400776b3c1aa303d1a0fcd500f0ab5bc970f2 Mon Sep 17 00:00:00 2001
-From: Shantanu Gadgil <shantanugadgil@yahoo.com>
-Date: Wed, 11 Feb 2015 20:16:59 +0000
-Subject: [PATCH 48/78] Fix get-version script which returned wrong tag in some
- situations.
-
----
- bld/get-version | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/bld/get-version b/bld/get-version
-index c246a3cc6a47..7ab75db729ac 100755
---- a/bld/get-version
-+++ b/bld/get-version
-@@ -20,7 +20,7 @@ else
-      vers=`cat $1/VERSION | sed 's/[(), ]/,/ g' | tr ',' '\n' | grep ^v[0-9]`
-      if [ $? -eq 0 ]; then
--         echo "${vers}" | sort | head -n 1 | sed 's/^v//'
-+         echo "${vers}" | sort -r | head -n 1 | sed 's/^v//'
-      else
-          cat $1/VERSION
-      fi
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0049-Typos.patch b/src/patches/dnsmasq/0049-Typos.patch
deleted file mode 100644 (file)
index ab57c77..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 8ff70de618eb7de9147dbfbd4deca4a2dd62f0cb Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 14 Feb 2015 20:02:37 +0000
-Subject: [PATCH 49/78] Typos.
-
----
- src/inotify.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/inotify.c b/src/inotify.c
-index 44ce0c9af051..9422066257f5 100644
---- a/src/inotify.c
-+++ b/src/inotify.c
-@@ -104,7 +104,8 @@ void set_dynamic_inotify(int flag, int total_size, struct crec **rhash, int revh
-          ah->wd = inotify_add_watch(daemon->inotifyfd, ah->fname, IN_CLOSE_WRITE | IN_MOVED_TO);
-          ah->flags |= AH_WD_DONE;
-        }
--       /* Read contents of dir _after_ calling add_watch, in the ho[e of avoiding
-+
-+       /* Read contents of dir _after_ calling add_watch, in the hope of avoiding
-         a race which misses files being added as we start */
-        if (ah->wd == -1 || !(dir_stream = opendir(ah->fname)))
-        {
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/005-suggest_solution_to_ENOMEM_error_with_IPv6_multicast.patch b/src/patches/dnsmasq/005-suggest_solution_to_ENOMEM_error_with_IPv6_multicast.patch
new file mode 100644 (file)
index 0000000..c7cee60
--- /dev/null
@@ -0,0 +1,50 @@
+From 9cdcfe9f19ffd45bac4e5b459879bf7c50a287ed Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Wed, 26 Aug 2015 22:38:08 +0100
+Subject: [PATCH] Suggest solution to ENOMEM error with IPv6 multicast.
+
+---
+ src/network.c |   13 ++++++++++---
+ 1 file changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/src/network.c b/src/network.c
+index a1d90c8..819302f 100644
+--- a/src/network.c
++++ b/src/network.c
+@@ -1076,23 +1076,30 @@ void join_multicast(int dienow)
+           
+           if ((daemon->doing_dhcp6 || daemon->relay6) &&
+               setsockopt(daemon->dhcp6fd, IPPROTO_IPV6, IPV6_JOIN_GROUP, &mreq, sizeof(mreq)) == -1)
+-            err = 1;
++            err = errno;
+           
+           inet_pton(AF_INET6, ALL_SERVERS, &mreq.ipv6mr_multiaddr);
+           
+           if (daemon->doing_dhcp6 && 
+               setsockopt(daemon->dhcp6fd, IPPROTO_IPV6, IPV6_JOIN_GROUP, &mreq, sizeof(mreq)) == -1)
+-            err = 1;
++            err = errno;
+           
+           inet_pton(AF_INET6, ALL_ROUTERS, &mreq.ipv6mr_multiaddr);
+           
+           if (daemon->doing_ra &&
+               setsockopt(daemon->icmp6fd, IPPROTO_IPV6, IPV6_JOIN_GROUP, &mreq, sizeof(mreq)) == -1)
+-            err = 1;
++            err = errno;
+           
+           if (err)
+             {
+               char *s = _("interface %s failed to join DHCPv6 multicast group: %s");
++              errno = err;
++
++#ifdef HAVE_LINUX_NETWORK
++              if (errno == ENOMEM)
++                my_syslog(LOG_ERR, _("try increasing /proc/sys/net/core/optmem_max"));
++#endif
++
+               if (dienow)
+                 die(s, iface->name, EC_BADNET);
+               else
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch b/src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch
deleted file mode 100644 (file)
index df3bf18..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From caeea190f12efd20139f694aac4942d1ac00019f Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 14 Feb 2015 20:08:56 +0000
-Subject: [PATCH 50/78] Make dynamic hosts files work when --no-hosts set.
-
----
- src/cache.c | 21 +++++++++++----------
- 1 file changed, 11 insertions(+), 10 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index 43245b771b53..c95624c42b1c 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1133,17 +1133,18 @@ void cache_reload(void)
-     {
-       if (daemon->cachesize > 0)
-       my_syslog(LOG_INFO, _("cleared cache"));
--      return;
-     }
--  
--  if (!option_bool(OPT_NO_HOSTS))
--    total_size = read_hostsfile(HOSTSFILE, SRC_HOSTS, total_size, (struct crec **)daemon->packet, revhashsz);
--  
--  daemon->addn_hosts = expand_filelist(daemon->addn_hosts);
--  for (ah = daemon->addn_hosts; ah; ah = ah->next)
--    if (!(ah->flags & AH_INACTIVE))
--      total_size = read_hostsfile(ah->fname, ah->index, total_size, (struct crec **)daemon->packet, revhashsz);
--  
-+  else
-+    {
-+      if (!option_bool(OPT_NO_HOSTS))
-+      total_size = read_hostsfile(HOSTSFILE, SRC_HOSTS, total_size, (struct crec **)daemon->packet, revhashsz);
-+      
-+      daemon->addn_hosts = expand_filelist(daemon->addn_hosts);
-+      for (ah = daemon->addn_hosts; ah; ah = ah->next)
-+      if (!(ah->flags & AH_INACTIVE))
-+        total_size = read_hostsfile(ah->fname, ah->index, total_size, (struct crec **)daemon->packet, revhashsz);
-+    }
-+
- #ifdef HAVE_INOTIFY
-   set_dynamic_inotify(AH_HOSTS, total_size, (struct crec **)daemon->packet, revhashsz);
- #endif
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch b/src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch
deleted file mode 100644 (file)
index ad7ecd7..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-From 28b879ac47b872af6e8c5e86d76806c69338434d Mon Sep 17 00:00:00 2001
-From: Chen Wei <weichen302@icloud.com>
-Date: Tue, 17 Feb 2015 22:07:35 +0000
-Subject: [PATCH 51/78] Fix trivial memory leaks to quieten valgrind.
-
----
- src/dnsmasq.c |  2 ++
- src/option.c  | 11 +++++++++--
- 2 files changed, 11 insertions(+), 2 deletions(-)
-
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index e903a24c8105..e6dabbf556f7 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -627,6 +627,8 @@ int main (int argc, char **argv)
-     }
-   
- #ifdef HAVE_LINUX_NETWORK
-+  free(hdr);
-+  free(data);
-   if (option_bool(OPT_DEBUG)) 
-     prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
- #endif
-diff --git a/src/option.c b/src/option.c
-index e4b4865d07a5..ae0ad002d8b8 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -4361,7 +4361,7 @@ void read_opts(int argc, char **argv, char *compile_opts)
- {
-   char *buff = opt_malloc(MAXDNAME);
-   int option, conffile_opt = '7', testmode = 0;
--  char *arg, *conffile = CONFFILE;
-+  char *arg, *conffile = NULL;
-       
-   opterr = 0;
-@@ -4476,7 +4476,14 @@ void read_opts(int argc, char **argv, char *compile_opts)
-     }
-   if (conffile)
--    one_file(conffile, conffile_opt);
-+    {
-+      one_file(conffile, conffile_opt);
-+      free(conffile);
-+    }
-+  else
-+    {
-+      one_file(CONFFILE, conffile_opt);
-+    }
-   /* port might not be known when the address is parsed - fill in here */
-   if (daemon->servers)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch b/src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch
deleted file mode 100644 (file)
index 9556f3b..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From 0705a7e2d57654b27c7e14f35ca77241c1821f4d Mon Sep 17 00:00:00 2001
-From: Tomas Hozza <thozza@redhat.com>
-Date: Mon, 23 Feb 2015 21:26:26 +0000
-Subject: [PATCH 52/78] Fix uninitialized value used in get_client_mac()
-
----
- src/dhcp6.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/dhcp6.c b/src/dhcp6.c
-index 3c56e77c6085..c7144f5fee7c 100644
---- a/src/dhcp6.c
-+++ b/src/dhcp6.c
-@@ -246,7 +246,9 @@ void get_client_mac(struct in6_addr *client, int iface, unsigned char *mac, unsi
-   neigh.code = 0;
-   neigh.reserved = 0;
-   neigh.target = *client;
--  
-+  /* RFC4443 section-2.3: checksum has to be zero to be calculated */
-+  neigh.checksum = 0;
-+   
-   memset(&addr, 0, sizeof(addr));
- #ifdef HAVE_SOCKADDR_SA_LEN
-   addr.sin6_len = sizeof(struct sockaddr_in6);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch b/src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch
deleted file mode 100644 (file)
index 03d20f6..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-From 47b9ac59c715827252ae6e6732903c3dabb697fb Mon Sep 17 00:00:00 2001
-From: Joachim Zobel <jz-2014@heute-morgen.de>
-Date: Mon, 23 Feb 2015 21:38:11 +0000
-Subject: [PATCH 53/78] Log parsing utils in contrib/reverse-dns
-
----
- contrib/reverse-dns/README             | 18 ++++++++++++++++++
- contrib/reverse-dns/reverse_replace.sh | 28 ++++++++++++++++++++++++++++
- 2 files changed, 46 insertions(+)
- create mode 100644 contrib/reverse-dns/README
- create mode 100644 contrib/reverse-dns/reverse_replace.sh
-
-diff --git a/contrib/reverse-dns/README b/contrib/reverse-dns/README
-new file mode 100644
-index 000000000000..f87eb77c4c22
---- /dev/null
-+++ b/contrib/reverse-dns/README
-@@ -0,0 +1,18 @@
-+Hi.\r
-+\r
-+To translate my routers netstat-nat output into names that actually talk\r
-+to me I have started writing to simple shell scripts. They require \r
-+\r
-+log-queries\r
-+log-facility=/var/log/dnsmasq.log\r
-+\r
-+to be set. With\r
-+\r
-+netstat-nat -n -4 | reverse_replace.sh \r
-+\r
-+I get retranslated output.\r
-+\r
-+Sincerely,\r
-+Joachim\r
-+\r
-+\r
-diff --git a/contrib/reverse-dns/reverse_replace.sh b/contrib/reverse-dns/reverse_replace.sh
-new file mode 100644
-index 000000000000..a11c164b7f19
---- /dev/null
-+++ b/contrib/reverse-dns/reverse_replace.sh
-@@ -0,0 +1,28 @@
-+#!/bin/bash
-+# $Id: reverse_replace.sh 4 2015-02-17 20:14:59Z jo $
-+#
-+# Usage e.g.: netstat -n -4 | reverse_replace.sh 
-+# Parses stdin for IP4 addresses and replaces them 
-+# with names retrieved by reverse_dns.sh
-+#
-+
-+DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
-+DNS=$DIR/reverse_dns.sh
-+
-+# sed regex
-+IP_regex='[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'
-+
-+while read LINE; do
-+  if grep --quiet $IP_regex <<< "$LINE"; then
-+    IPs=`sed "s#.*\b\($IP_regex\)\b.*#\1 #g" <<< "$LINE"`
-+    IPs=($IPs)
-+    for IP in "${IPs[@]}"
-+    do
-+      NAME=`$DNS $IP`
-+      # echo "$NAME is $IP";
-+      LINE="${LINE/$IP/$NAME}" 
-+    done
-+  fi
-+  echo $LINE
-+done < /dev/stdin
-+
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch b/src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch
deleted file mode 100644 (file)
index 2d47566..0000000
+++ /dev/null
@@ -1,252 +0,0 @@
-From f6e62e2af96f5fa0d1e3d93167a93a8f09bf6e61 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 1 Mar 2015 18:17:54 +0000
-Subject: [PATCH 54/78] Add --dnssec-timestamp option and facility.
-
----
- CHANGELOG     |  6 +++++
- man/dnsmasq.8 |  6 +++++
- src/dnsmasq.c | 11 +++++++-
- src/dnsmasq.h |  2 ++
- src/dnssec.c  | 82 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
- src/option.c  |  7 +++++
- 6 files changed, 108 insertions(+), 6 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index c80dc0fdbe9e..4f4fa305deaa 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -66,6 +66,12 @@ version 2.73
-           for the patch.
-           Fix broken DNSSEC validation of ECDSA signatures.
-+
-+          Add --dnssec-timestamp option, which provides an automatic
-+          way to detect when the system time becomes valid after boot
-+          on systems without an RTC, whilst allowing DNS queries before the
-+          clock is valid so that NTP can run. Thanks to
-+          Kevin Darbyshire-Bryant for developing this idea.
-       
-       
- version 2.72
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 5cdd186afaa0..097e7d75145c 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -674,6 +674,12 @@ that dnsmasq should be started with this flag when the platform determines that
- reliable time is established, a SIGHUP should be sent to dnsmasq, which enables time checking, and purges the cache of DNS records
- which have not been throughly checked.
- .TP
-+.B --dnssec-timestamp=<path>
-+Enables an alternative way of checking the validity of the system time for DNSSEC (see --dnssec-no-timecheck). In this case, the 
-+system time is considered to be valid once it becomes later than the timestamp on the specified file. The file is created and 
-+its timestamp set automatically by dnsmasq. The file must be stored on a persistent filesystem, so that it and its mtime are carried 
-+over system restarts. 
-+.TP
- .B --proxy-dnssec
- Copy the DNSSEC Authenticated Data bit from upstream servers to downstream clients and cache it.  This is an 
- alternative to having dnsmasq validate DNSSEC, but it depends on the security of the network between 
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index e6dabbf556f7..769a19afe6c5 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -58,6 +58,9 @@ int main (int argc, char **argv)
-   struct dhcp_context *context;
-   struct dhcp_relay *relay;
- #endif
-+#ifdef HAVE_DNSSEC
-+  int badtime;
-+#endif
- #ifdef LOCALEDIR
-   setlocale(LC_ALL, "");
-@@ -369,7 +372,11 @@ int main (int argc, char **argv)
-   if (baduser)
-     die(_("unknown user or group: %s"), baduser, EC_BADCONF);
--   
-+
-+#ifdef HAVE_DNSSEC  
-+  badtime = setup_timestamp(ent_pw->pw_uid);
-+#endif
-+
-   /* implement group defaults, "dip" if available, or group associated with uid */
-   if (!daemon->group_set && !gp)
-     {
-@@ -689,6 +696,8 @@ int main (int argc, char **argv)
-       my_syslog(LOG_INFO, _("DNSSEC validation enabled"));
-       if (option_bool(OPT_DNSSEC_TIME))
-       my_syslog(LOG_INFO, _("DNSSEC signature timestamps not checked until first cache reload"));
-+      if (badtime)
-+      my_syslog(LOG_INFO, _("DNSSEC signature timestamps not checked until system time valid"));
-     }
- #endif
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 89e758b56a0a..b2f02dda63f0 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -986,6 +986,7 @@ extern struct daemon {
- #endif
- #ifdef HAVE_DNSSEC
-   struct ds_config *ds;
-+  char *timestamp_file;
- #endif
-   /* globally used stuff for DNS */
-@@ -1151,6 +1152,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
- int dnskey_keytag(int alg, int flags, unsigned char *rdata, int rdlen);
- size_t filter_rrsigs(struct dns_header *header, size_t plen);
- unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name);
-+int setup_timestamp(uid_t uid);
- /* util.c */
- void rand_init(void);
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 26932373cd3e..bf4406469de0 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -34,6 +34,7 @@
- #include <nettle/dsa-compat.h>
- #endif
-+#include <utime.h>
- #define SERIAL_UNDEF  -100
- #define SERIAL_EQ        0
-@@ -394,17 +395,88 @@ static int serial_compare_32(unsigned long s1, unsigned long s2)
-   return SERIAL_UNDEF;
- }
-+/* Called at startup. If the timestamp file is configured and exists, put its mtime on
-+   timestamp_time. If it doesn't exist, create it, and set the mtime to 1-1-2015.
-+   Change the ownership to the user we'll be running as, so that we can update the mtime.
-+*/
-+static time_t timestamp_time;
-+static int back_to_the_future;
-+
-+int setup_timestamp(uid_t uid)
-+{
-+  struct stat statbuf;
-+  
-+  back_to_the_future = 0;
-+  
-+  if (!option_bool(OPT_DNSSEC_VALID) || !daemon->timestamp_file)
-+    return 0;
-+  
-+  if (stat(daemon->timestamp_file, &statbuf) != -1)
-+    {
-+      timestamp_time = statbuf.st_mtime;
-+    check_and_exit:
-+      if (difftime(timestamp_time, time(0)) <=  0)
-+      {
-+        /* time already OK, update timestamp, and do key checking from the start. */
-+        if (utime(daemon->timestamp_file, NULL) == -1)
-+          my_syslog(LOG_ERR, _("failed to update mtime on %s: %s"), daemon->timestamp_file, strerror(errno));
-+        back_to_the_future = 1;
-+        return 0;
-+      }
-+      return 1;
-+    }
-+  
-+  if (errno == ENOENT)
-+    {
-+      int fd = open(daemon->timestamp_file, O_WRONLY | O_CREAT | O_NONBLOCK, 0666);
-+      if (fd != -1)
-+      {
-+        struct utimbuf timbuf;
-+
-+        close(fd);
-+        
-+        timestamp_time = timbuf.actime = timbuf.modtime = 1420070400; /* 1-1-2015 */
-+        if (utime(daemon->timestamp_file, &timbuf) == 0 &&
-+            (getuid() != 0 || chown(daemon->timestamp_file, uid, -1) == 0))
-+          goto check_and_exit;
-+      }
-+    }
-+
-+  die(_("Cannot create timestamp file %s: %s" ), daemon->timestamp_file, EC_BADCONF);
-+  return 0;
-+}
-+
- /* Check whether today/now is between date_start and date_end */
- static int check_date_range(unsigned long date_start, unsigned long date_end)
- {
--  unsigned long curtime;
--
-+  unsigned long curtime = time(0);
-+ 
-   /* Checking timestamps may be temporarily disabled */
--  if (option_bool(OPT_DNSSEC_TIME))
-+    
-+  /* If the current time if _before_ the timestamp
-+     on our persistent timestamp file, then assume the
-+     time if not yet correct, and don't check the
-+     key timestamps. As soon as the current time is
-+     later then the timestamp, update the timestamp
-+     and start checking keys */
-+  if (daemon->timestamp_file)
-+    {
-+      if (back_to_the_future == 0 && difftime(timestamp_time, curtime) <= 0)
-+      {
-+        if (utime(daemon->timestamp_file, NULL) != 0)
-+          my_syslog(LOG_ERR, _("failed to update mtime on %s: %s"), daemon->timestamp_file, strerror(errno));
-+        
-+        back_to_the_future = 1;       
-+        set_option_bool(OPT_DNSSEC_TIME);
-+        queue_event(EVENT_RELOAD); /* purge cache */
-+      } 
-+
-+      if (back_to_the_future == 0)
-+      return 1;
-+    }
-+  else if (option_bool(OPT_DNSSEC_TIME))
-     return 1;
-   
--  curtime = time(0);
--  
-   /* We must explicitly check against wanted values, because of SERIAL_UNDEF */
-   return serial_compare_32(curtime, date_start) == SERIAL_GT
-     && serial_compare_32(curtime, date_end) == SERIAL_LT;
-diff --git a/src/option.c b/src/option.c
-index ae0ad002d8b8..eace40bb566c 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -152,6 +152,7 @@ struct myoption {
- #define LOPT_DHCP_INOTIFY  340
- #define LOPT_DHOPT_INOTIFY 341
- #define LOPT_HOST_INOTIFY  342
-+#define LOPT_DNSSEC_STAMP  343
- #ifdef HAVE_GETOPT_LONG
- static const struct option opts[] =  
-@@ -300,6 +301,7 @@ static const struct myoption opts[] =
-     { "dnssec-debug", 0, 0, LOPT_DNSSEC_DEBUG },
-     { "dnssec-check-unsigned", 0, 0, LOPT_DNSSEC_CHECK },
-     { "dnssec-no-timecheck", 0, 0, LOPT_DNSSEC_TIME },
-+    { "dnssec-timestamp", 1, 0, LOPT_DNSSEC_STAMP },
- #ifdef OPTION6_PREFIX_CLASS 
-     { "dhcp-prefix-class", 1, 0, LOPT_PREF_CLSS },
- #endif
-@@ -463,6 +465,7 @@ static struct {
-   { LOPT_DNSSEC_DEBUG, OPT_DNSSEC_DEBUG, NULL, gettext_noop("Disable upstream checking for DNSSEC debugging."), NULL },
-   { LOPT_DNSSEC_CHECK, OPT_DNSSEC_NO_SIGN, NULL, gettext_noop("Ensure answers without DNSSEC are in unsigned zones."), NULL },
-   { LOPT_DNSSEC_TIME, OPT_DNSSEC_TIME, NULL, gettext_noop("Don't check DNSSEC signature timestamps until first cache-reload"), NULL },
-+  { LOPT_DNSSEC_STAMP, ARG_ONE, "<path>", gettext_noop("Timestamp file to verify system clock for DNSSEC"), NULL },
- #ifdef OPTION6_PREFIX_CLASS 
-   { LOPT_PREF_CLSS, ARG_DUP, "set:tag,<class>", gettext_noop("Specify DHCPv6 prefix class"), NULL },
- #endif
-@@ -3867,6 +3870,10 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-       }
- #ifdef HAVE_DNSSEC
-+    case LOPT_DNSSEC_STAMP:
-+      daemon->timestamp_file = opt_string_alloc(arg); 
-+      break;
-+
-     case LOPT_TRUST_ANCHOR:
-       {
-       struct ds_config *new = opt_malloc(sizeof(struct ds_config));
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch b/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch
deleted file mode 100644 (file)
index ba48df3..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-From 9003b50b13da624ca45f3e0cf99abb623b8d026b Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 2 Mar 2015 22:47:23 +0000
-Subject: [PATCH 55/78] Fix last commit to not crash if uid changing not
- configured.
-
----
- src/dnsmasq.c | 2 +-
- src/dnsmasq.h | 2 +-
- src/dnssec.c  | 4 ++--
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index 769a19afe6c5..9e05c0e31569 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -374,7 +374,7 @@ int main (int argc, char **argv)
-     die(_("unknown user or group: %s"), baduser, EC_BADCONF);
- #ifdef HAVE_DNSSEC  
--  badtime = setup_timestamp(ent_pw->pw_uid);
-+  badtime = setup_timestamp(ent_pw);
- #endif
-   /* implement group defaults, "dip" if available, or group associated with uid */
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index b2f02dda63f0..a451cb4dd03c 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -1152,7 +1152,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
- int dnskey_keytag(int alg, int flags, unsigned char *rdata, int rdlen);
- size_t filter_rrsigs(struct dns_header *header, size_t plen);
- unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name);
--int setup_timestamp(uid_t uid);
-+int setup_timestamp(struct passwd *ent_pw);
- /* util.c */
- void rand_init(void);
-diff --git a/src/dnssec.c b/src/dnssec.c
-index bf4406469de0..c60eacf73c6b 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -402,7 +402,7 @@ static int serial_compare_32(unsigned long s1, unsigned long s2)
- static time_t timestamp_time;
- static int back_to_the_future;
--int setup_timestamp(uid_t uid)
-+int setup_timestamp(struct passwd *ent_pw)
- {
-   struct stat statbuf;
-   
-@@ -437,7 +437,7 @@ int setup_timestamp(uid_t uid)
-         
-         timestamp_time = timbuf.actime = timbuf.modtime = 1420070400; /* 1-1-2015 */
-         if (utime(daemon->timestamp_file, &timbuf) == 0 &&
--            (getuid() != 0 || chown(daemon->timestamp_file, uid, -1) == 0))
-+            (!ent_pw || getuid() != 0 || chown(daemon->timestamp_file, ent_pw->pw_uid, -1) == 0))
-           goto check_and_exit;
-       }
-     }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch b/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch
deleted file mode 100644 (file)
index dc52d90..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-From 4c960fa90a975d20f75a1ecabd217247f1922c8f Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 4 Mar 2015 20:32:26 +0000
-Subject: [PATCH 56/78] New version of contrib/reverse-dns
-
----
- contrib/reverse-dns/README             |  22 +++---
- contrib/reverse-dns/reverse_replace.sh | 131 ++++++++++++++++++++++++++++-----
- 2 files changed, 125 insertions(+), 28 deletions(-)
-
-diff --git a/contrib/reverse-dns/README b/contrib/reverse-dns/README
-index f87eb77c4c22..2ec4df1f957e 100644
---- a/contrib/reverse-dns/README
-+++ b/contrib/reverse-dns/README
-@@ -1,18 +1,18 @@
--Hi.\r
-+The script reads stdin and replaces all IP addresses with names before\r
-+outputting it again. IPs from private networks are reverse looked  up\r
-+via dns. Other IP adresses are searched for in the dnsmasq query log.\r
-+This gives names (CNAMEs if I understand DNS correctly) that are closer\r
-+to the name the client originally asked for then the names obtained by\r
-+reverse lookup. Just run\r
\r
--To translate my routers netstat-nat output into names that actually talk\r
--to me I have started writing to simple shell scripts. They require \r
-+netstat -n -4 | ./reverse_replace.sh \r
-+\r
-+to see what it does. It needs \r
\r
- log-queries\r
- log-facility=/var/log/dnsmasq.log\r
\r
--to be set. With\r
--\r
--netstat-nat -n -4 | reverse_replace.sh \r
--\r
--I get retranslated output.\r
--\r
--Sincerely,\r
--Joachim\r
-+in the dnsmasq configuration.\r
\r
-+The script runs on debian (with ash installed) and on busybox.\r
\r
-diff --git a/contrib/reverse-dns/reverse_replace.sh b/contrib/reverse-dns/reverse_replace.sh
-index a11c164b7f19..5b4aebd71456 100644
---- a/contrib/reverse-dns/reverse_replace.sh
-+++ b/contrib/reverse-dns/reverse_replace.sh
-@@ -1,28 +1,125 @@
--#!/bin/bash
--# $Id: reverse_replace.sh 4 2015-02-17 20:14:59Z jo $
-+#!/bin/ash
-+# $Id: reverse_replace.sh 18 2015-03-01 16:12:35Z jo $
- #
- # Usage e.g.: netstat -n -4 | reverse_replace.sh 
- # Parses stdin for IP4 addresses and replaces them 
--# with names retrieved by reverse_dns.sh
-+# with names retrieved by parsing the dnsmasq log.
-+# This currently only gives CNAMEs. But these 
-+# usually tell ou more than the mones from reverse 
-+# lookups. 
-+#
-+# This has been tested on debian and asuswrt. Plese
-+# report successful tests on other platforms.
-+#
-+# Author: Joachim Zobel <jz-2014@heute-morgen.de>
-+# License: Consider this MIT style licensed. You can 
-+#   do as you ike, but you must not remove my name.
- #
--DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
--DNS=$DIR/reverse_dns.sh
-+LOG=/var/log/dnsmasq.log
-+MAX_LINES=15000
--# sed regex
-+# sed regex do match IPs
- IP_regex='[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'
-+# private IP ranges
-+IP_private='\(^127\.\)\|\(^192\.168\.\)\|\(^10\.\)\|\(^172\.1[6-9]\.\)\|\(^172\.2[0-9]\.\)\|\(^172\.3[0-1]\.\)'
--while read LINE; do
--  if grep --quiet $IP_regex <<< "$LINE"; then
--    IPs=`sed "s#.*\b\($IP_regex\)\b.*#\1 #g" <<< "$LINE"`
--    IPs=($IPs)
--    for IP in "${IPs[@]}"
--    do
--      NAME=`$DNS $IP`
--      # echo "$NAME is $IP";
--      LINE="${LINE/$IP/$NAME}" 
--    done
-+#######################################################################
-+# Find Commands
-+  
-+HOST=nslookup
-+if type host > /dev/null 2>&1; then
-+  # echo "No need for nslookup, host is there"
-+  HOST=host
-+fi
-+
-+#######################################################################
-+# Functions
-+
-+# Use shell variables for an (IP) lookup table
-+create_lookup_table()
-+{
-+  # Parse log into lookup table
-+  local CMDS="$( tail -"$MAX_LINES" "$LOG" | \
-+    grep " is $IP_regex" | \
-+    sed "s#.* \([^ ]*\) is \($IP_regex\).*#set_val \2 \1;#" )"
-+
-+  local IFS='
-+'
-+  for CMD in $CMDS
-+  do
-+    eval $CMD
-+  done
-+}
-+
-+set_val()
-+{
-+  local _IP=$(echo $1 | tr . _)
-+  local KEY="__IP__$_IP"
-+  eval "$KEY"=$2
-+}
-+
-+get_val()
-+{
-+  local _IP=$(echo $1 | tr . _)
-+  local KEY="__IP__$_IP"
-+  eval echo -n '${'"$KEY"'}'
-+}
-+
-+dns_lookup()
-+{
-+  local IP=$1
-+
-+  local RTN="$($HOST $IP | \
-+        sed 's#\s\+#\n#g' | \
-+        grep -v '^$' | \
-+        tail -1 | tr -d '\n' | \
-+        sed 's#\.$##')"
-+  if echo $RTN | grep -q NXDOMAIN; then
-+    echo -n $IP
-+  else
-+    echo -n "$RTN"
-+  fi     
-+}
-+
-+reverse_dns()
-+{
-+  local IP=$1
-+
-+  # Skip if it is not an IP
-+  if ! echo $IP | grep -q "^$IP_regex$"; then
-+    echo -n $IP
-+    return 
-+  fi
-+    
-+  # Do a dns lookup, if it is a local IP
-+  if echo $IP | grep -q $IP_private; then
-+    dns_lookup $IP
-+    return
-   fi
-+    
-+  local NAME="$(get_val $IP)"
-+  
-+  if [ -z "$NAME" ]; then
-+    echo -n $IP
-+  else
-+    echo -n $NAME
-+  fi
-+}
-+
-+#######################################################################
-+# Main
-+create_lookup_table
-+
-+while read LINE; do
-+  for IP in $(echo "$LINE" | \
-+              sed "s#\b\($IP_regex\)\b#\n\1\n#g" | \
-+              grep $IP_regex) 
-+  do
-+    NAME=`reverse_dns $IP `
-+    # echo "$NAME $IP"
-+    LINE=`echo "$LINE" | sed "s#$IP#$NAME#" ` 
-+  done
-   echo $LINE
--done < /dev/stdin
-+done
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch b/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch
deleted file mode 100644 (file)
index d17d23f..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-From 360f2513ab12a9bf1e262d388dd2ea8a566590a3 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 7 Mar 2015 18:28:06 +0000
-Subject: [PATCH 57/78] Tweak DNSSEC timestamp code to create file later,
- removing need to chown it.
-
----
- man/dnsmasq.8 |  3 ++-
- src/dnsmasq.c | 35 ++++++++++++++++++++++-------------
- src/dnsmasq.h |  3 ++-
- src/dnssec.c  | 18 ++++++++++--------
- 4 files changed, 36 insertions(+), 23 deletions(-)
-
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 097e7d75145c..2db780d90987 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -678,7 +678,8 @@ which have not been throughly checked.
- Enables an alternative way of checking the validity of the system time for DNSSEC (see --dnssec-no-timecheck). In this case, the 
- system time is considered to be valid once it becomes later than the timestamp on the specified file. The file is created and 
- its timestamp set automatically by dnsmasq. The file must be stored on a persistent filesystem, so that it and its mtime are carried 
--over system restarts. 
-+over system restarts. The timestamp file is created after dnsmasq has dropped root, so it must be in a location writable by the 
-+unprivileged user that dnsmasq runs as.
- .TP
- .B --proxy-dnssec
- Copy the DNSSEC Authenticated Data bit from upstream servers to downstream clients and cache it.  This is an 
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index 9e05c0e31569..f3e5bcffec4f 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -58,9 +58,6 @@ int main (int argc, char **argv)
-   struct dhcp_context *context;
-   struct dhcp_relay *relay;
- #endif
--#ifdef HAVE_DNSSEC
--  int badtime;
--#endif
- #ifdef LOCALEDIR
-   setlocale(LC_ALL, "");
-@@ -156,10 +153,10 @@ int main (int argc, char **argv)
-     {
- #ifdef HAVE_DNSSEC
-       if (!daemon->ds)
--      die(_("No trust anchors provided for DNSSEC"), NULL, EC_BADCONF);
-+      die(_("no trust anchors provided for DNSSEC"), NULL, EC_BADCONF);
-       
-       if (daemon->cachesize < CACHESIZ)
--      die(_("Cannot reduce cache size from default when DNSSEC enabled"), NULL, EC_BADCONF);
-+      die(_("cannot reduce cache size from default when DNSSEC enabled"), NULL, EC_BADCONF);
- #else 
-       die(_("DNSSEC not available: set HAVE_DNSSEC in src/config.h"), NULL, EC_BADCONF);
- #endif
-@@ -172,10 +169,10 @@ int main (int argc, char **argv)
- #ifdef HAVE_CONNTRACK
-   if (option_bool(OPT_CONNTRACK) && (daemon->query_port != 0 || daemon->osport))
--    die (_("Cannot use --conntrack AND --query-port"), NULL, EC_BADCONF); 
-+    die (_("cannot use --conntrack AND --query-port"), NULL, EC_BADCONF); 
- #else
-   if (option_bool(OPT_CONNTRACK))
--    die(_("Conntrack support not available: set HAVE_CONNTRACK in src/config.h"), NULL, EC_BADCONF);
-+    die(_("conntrack support not available: set HAVE_CONNTRACK in src/config.h"), NULL, EC_BADCONF);
- #endif
- #ifdef HAVE_SOLARIS_NETWORK
-@@ -195,7 +192,7 @@ int main (int argc, char **argv)
- #ifndef HAVE_LOOP
-   if (option_bool(OPT_LOOP_DETECT))
--    die(_("Loop detection not available: set HAVE_LOOP in src/config.h"), NULL, EC_BADCONF);
-+    die(_("loop detection not available: set HAVE_LOOP in src/config.h"), NULL, EC_BADCONF);
- #endif
-   
-   now = dnsmasq_time();
-@@ -373,10 +370,6 @@ int main (int argc, char **argv)
-   if (baduser)
-     die(_("unknown user or group: %s"), baduser, EC_BADCONF);
--#ifdef HAVE_DNSSEC  
--  badtime = setup_timestamp(ent_pw);
--#endif
--
-   /* implement group defaults, "dip" if available, or group associated with uid */
-   if (!daemon->group_set && !gp)
-     {
-@@ -693,10 +686,23 @@ int main (int argc, char **argv)
- #ifdef HAVE_DNSSEC
-   if (option_bool(OPT_DNSSEC_VALID))
-     {
-+      int rc;
-+
-+      /* Delay creating the timestamp file until here, after we've changed user, so that
-+       it has the correct owner to allow updating the mtime later. 
-+       This means we have to report fatal errors via the pipe. */
-+      if ((rc = setup_timestamp()) == -1)
-+      {
-+        send_event(err_pipe[1], EVENT_TIME_ERR, errno, daemon->timestamp_file);
-+        _exit(0);
-+      }
-+      
-       my_syslog(LOG_INFO, _("DNSSEC validation enabled"));
-+      
-       if (option_bool(OPT_DNSSEC_TIME))
-       my_syslog(LOG_INFO, _("DNSSEC signature timestamps not checked until first cache reload"));
--      if (badtime)
-+      
-+      if (rc == 1)
-       my_syslog(LOG_INFO, _("DNSSEC signature timestamps not checked until system time valid"));
-     }
- #endif
-@@ -1170,6 +1176,9 @@ static void fatal_event(struct event_desc *ev, char *msg)
-     case EVENT_TFTP_ERR:
-       die(_("TFTP directory %s inaccessible: %s"), msg, EC_FILE);
-+    
-+    case EVENT_TIME_ERR:
-+      die(_("cannot create timestamp file %s: %s" ), msg, EC_BADCONF);
-     }
- }     
-       
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index a451cb4dd03c..fc7259881358 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -167,6 +167,7 @@ struct event_desc {
- #define EVENT_INIT      21
- #define EVENT_NEWADDR   22
- #define EVENT_NEWROUTE  23
-+#define EVENT_TIME_ERR  24
- /* Exit codes. */
- #define EC_GOOD        0
-@@ -1152,7 +1153,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
- int dnskey_keytag(int alg, int flags, unsigned char *rdata, int rdlen);
- size_t filter_rrsigs(struct dns_header *header, size_t plen);
- unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name);
--int setup_timestamp(struct passwd *ent_pw);
-+int setup_timestamp(void);
- /* util.c */
- void rand_init(void);
-diff --git a/src/dnssec.c b/src/dnssec.c
-index c60eacf73c6b..ad0d6f072ba2 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -397,18 +397,21 @@ static int serial_compare_32(unsigned long s1, unsigned long s2)
- /* Called at startup. If the timestamp file is configured and exists, put its mtime on
-    timestamp_time. If it doesn't exist, create it, and set the mtime to 1-1-2015.
--   Change the ownership to the user we'll be running as, so that we can update the mtime.
-+   return -1 -> Cannot create file.
-+           0 -> not using timestamp, or timestamp exists and is in past.
-+           1 -> timestamp exists and is in future.
- */
-+
- static time_t timestamp_time;
- static int back_to_the_future;
--int setup_timestamp(struct passwd *ent_pw)
-+int setup_timestamp(void)
- {
-   struct stat statbuf;
-   
-   back_to_the_future = 0;
-   
--  if (!option_bool(OPT_DNSSEC_VALID) || !daemon->timestamp_file)
-+  if (!daemon->timestamp_file)
-     return 0;
-   
-   if (stat(daemon->timestamp_file, &statbuf) != -1)
-@@ -428,7 +431,8 @@ int setup_timestamp(struct passwd *ent_pw)
-   
-   if (errno == ENOENT)
-     {
--      int fd = open(daemon->timestamp_file, O_WRONLY | O_CREAT | O_NONBLOCK, 0666);
-+      /* NB. for explanation of O_EXCL flag, see comment on pidfile in dnsmasq.c */ 
-+      int fd = open(daemon->timestamp_file, O_WRONLY | O_CREAT | O_NONBLOCK | O_EXCL, 0666);
-       if (fd != -1)
-       {
-         struct utimbuf timbuf;
-@@ -436,14 +440,12 @@ int setup_timestamp(struct passwd *ent_pw)
-         close(fd);
-         
-         timestamp_time = timbuf.actime = timbuf.modtime = 1420070400; /* 1-1-2015 */
--        if (utime(daemon->timestamp_file, &timbuf) == 0 &&
--            (!ent_pw || getuid() != 0 || chown(daemon->timestamp_file, ent_pw->pw_uid, -1) == 0))
-+        if (utime(daemon->timestamp_file, &timbuf) == 0)
-           goto check_and_exit;
-       }
-     }
--  die(_("Cannot create timestamp file %s: %s" ), daemon->timestamp_file, EC_BADCONF);
--  return 0;
-+  return -1;
- }
- /* Check whether today/now is between date_start and date_end */
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch b/src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch
deleted file mode 100644 (file)
index 4dd9568..0000000
+++ /dev/null
@@ -1,458 +0,0 @@
-From ff841ebf5a5d6864ff48571f607c32ce80dbb75a Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 11 Mar 2015 21:36:30 +0000
-Subject: [PATCH 58/78] Fix boilerplate code for re-running system calls on
- EINTR and EAGAIN etc.
-
-The nasty code with static variable in retry_send() which
-avoids looping forever needs to be called on success of the syscall,
-to reset the static variable.
----
- src/bpf.c     |  2 +-
- src/dhcp.c    |  2 +-
- src/dhcp6.c   |  6 +++---
- src/dnsmasq.c | 35 +++++++++++++++++----------------
- src/dnsmasq.h |  2 +-
- src/forward.c | 41 ++++++++++++++++++--------------------
- src/ipset.c   |  8 ++++----
- src/loop.c    |  5 +++--
- src/netlink.c |  8 ++++----
- src/radv.c    |  5 +++--
- src/util.c    | 63 ++++++++++++++++++++++++++++++++++-------------------------
- 11 files changed, 93 insertions(+), 84 deletions(-)
-
-diff --git a/src/bpf.c b/src/bpf.c
-index 997d87421bed..a066641f969f 100644
---- a/src/bpf.c
-+++ b/src/bpf.c
-@@ -359,7 +359,7 @@ void send_via_bpf(struct dhcp_packet *mess, size_t len,
-   iov[3].iov_base = mess;
-   iov[3].iov_len = len;
--  while (writev(daemon->dhcp_raw_fd, iov, 4) == -1 && retry_send());
-+  while (retry_send(writev(daemon->dhcp_raw_fd, iov, 4)));
- }
- #endif /* defined(HAVE_BSD_NETWORK) && defined(HAVE_DHCP) */
-diff --git a/src/dhcp.c b/src/dhcp.c
-index f29be9b489a7..5c3089ab94ff 100644
---- a/src/dhcp.c
-+++ b/src/dhcp.c
-@@ -443,7 +443,7 @@ void dhcp_packet(time_t now, int pxe_fd)
-   setsockopt(fd, IPPROTO_IP, IP_BOUND_IF, &iface_index, sizeof(iface_index));
- #endif
-   
--  while(sendmsg(fd, &msg, 0) == -1 && retry_send());
-+  while(retry_send(sendmsg(fd, &msg, 0)));
- }
-  
- /* check against secondary interface addresses */
-diff --git a/src/dhcp6.c b/src/dhcp6.c
-index c7144f5fee7c..ee2aa5d3bf3c 100644
---- a/src/dhcp6.c
-+++ b/src/dhcp6.c
-@@ -225,9 +225,9 @@ void dhcp6_packet(time_t now)
-   if (port != 0)
-     {
-       from.sin6_port = htons(port);
--      while (sendto(daemon->dhcp6fd, daemon->outpacket.iov_base, save_counter(0), 
--                  0, (struct sockaddr *)&from, sizeof(from)) == -1 &&
--         retry_send());
-+      while (retry_send(sendto(daemon->dhcp6fd, daemon->outpacket.iov_base, 
-+                             save_counter(0), 0, (struct sockaddr *)&from, 
-+                             sizeof(from))));
-     }
- }
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index f3e5bcffec4f..b784951950d4 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -444,7 +444,7 @@ int main (int argc, char **argv)
-             char *msg;
-             /* close our copy of write-end */
--            close(err_pipe[1]);
-+            while (retry_send(close(err_pipe[1])));
-             
-             /* check for errors after the fork */
-             if (read_event(err_pipe[0], &ev, &msg))
-@@ -453,7 +453,7 @@ int main (int argc, char **argv)
-             _exit(EC_GOOD);
-           } 
-         
--        close(err_pipe[0]);
-+        while (retry_send(close(err_pipe[0])));
-         /* NO calls to die() from here on. */
-         
-@@ -505,10 +505,12 @@ int main (int argc, char **argv)
-           {
-             if (!read_write(fd, (unsigned char *)daemon->namebuff, strlen(daemon->namebuff), 0))
-               err = 1;
--            
--            while (!err && close(fd) == -1)
--              if (!retry_send())
--                err = 1;
-+            else 
-+              {
-+                while (retry_send(close(fd)));
-+                if (errno != 0)
-+                  err = 1;
-+              }
-           }
-         if (err)
-@@ -813,7 +815,7 @@ int main (int argc, char **argv)
-   /* finished start-up - release original process */
-   if (err_pipe[1] != -1)
--    close(err_pipe[1]);
-+    while (retry_send(close(err_pipe[1])));
-   
-   if (daemon->port != 0)
-     check_servers();
-@@ -1319,7 +1321,7 @@ static void async_event(int pipe, time_t now)
-           do {
-             helper_write();
-           } while (!helper_buf_empty() || do_script_run(now));
--          close(daemon->helperfd);
-+          while (retry_send(close(daemon->helperfd)));
-         }
- #endif
-       
-@@ -1544,7 +1546,7 @@ static void check_dns_listeners(fd_set *set, time_t now)
-         
-         if (getsockname(confd, (struct sockaddr *)&tcp_addr, &tcp_len) == -1)
-           {
--            close(confd);
-+            while (retry_send(close(confd)));
-             continue;
-           }
-         
-@@ -1609,7 +1611,7 @@ static void check_dns_listeners(fd_set *set, time_t now)
-         if (!client_ok)
-           {
-             shutdown(confd, SHUT_RDWR);
--            close(confd);
-+            while (retry_send(close(confd)));
-           }
- #ifndef NO_FORK
-         else if (!option_bool(OPT_DEBUG) && (p = fork()) != 0)
-@@ -1624,7 +1626,7 @@ static void check_dns_listeners(fd_set *set, time_t now)
-                       break;
-                     }
-               }
--            close(confd);
-+            while (retry_send(close(confd)));
-             /* The child can use up to TCP_MAX_QUERIES ids, so skip that many. */
-             daemon->log_id += TCP_MAX_QUERIES;
-@@ -1669,7 +1671,7 @@ static void check_dns_listeners(fd_set *set, time_t now)
-             buff = tcp_request(confd, now, &tcp_addr, netmask, auth_dns);
-              
-             shutdown(confd, SHUT_RDWR);
--            close(confd);
-+            while (retry_send(close(confd)));
-             
-             if (buff)
-               free(buff);
-@@ -1678,7 +1680,7 @@ static void check_dns_listeners(fd_set *set, time_t now)
-               if (s->tcpfd != -1)
-                 {
-                   shutdown(s->tcpfd, SHUT_RDWR);
--                  close(s->tcpfd);
-+                  while (retry_send(close(s->tcpfd)));
-                 }
- #ifndef NO_FORK                  
-             if (!option_bool(OPT_DEBUG))
-@@ -1756,9 +1758,8 @@ int icmp_ping(struct in_addr addr)
-     j = (j & 0xffff) + (j >> 16);  
-   packet.icmp.icmp_cksum = (j == 0xffff) ? j : ~j;
-   
--  while (sendto(fd, (char *)&packet.icmp, sizeof(struct icmp), 0, 
--              (struct sockaddr *)&saddr, sizeof(saddr)) == -1 &&
--       retry_send());
-+  while (retry_send(sendto(fd, (char *)&packet.icmp, sizeof(struct icmp), 0, 
-+                         (struct sockaddr *)&saddr, sizeof(saddr))));
-   
-   for (now = start = dnsmasq_time(); 
-        difftime(now, start) < (float)PING_WAIT;)
-@@ -1820,7 +1821,7 @@ int icmp_ping(struct in_addr addr)
-     }
-   
- #if defined(HAVE_LINUX_NETWORK) || defined(HAVE_SOLARIS_NETWORK)
--  close(fd);
-+  while (retry_send(close(fd)));
- #else
-   opt = 1;
-   setsockopt(fd, SOL_SOCKET, SO_RCVBUF, &opt, sizeof(opt));
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index fc7259881358..de95d0e875e3 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -1177,7 +1177,7 @@ int is_same_net6(struct in6_addr *a, struct in6_addr *b, int prefixlen);
- u64 addr6part(struct in6_addr *addr);
- void setaddr6part(struct in6_addr *addr, u64 host);
- #endif
--int retry_send(void);
-+int retry_send(ssize_t rc);
- void prettyprint_time(char *buf, unsigned int t);
- int prettyprint_addr(union mysockaddr *addr, char *buf);
- int parse_hex(char *in, unsigned char *out, int maxlen, 
-diff --git a/src/forward.c b/src/forward.c
-index 438e9fa490b8..7c0fa8da3fdf 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -103,15 +103,11 @@ int send_from(int fd, int nowild, char *packet, size_t len,
- #endif
-     }
-   
--  while (sendmsg(fd, &msg, 0) == -1)
-+  while (retry_send(sendmsg(fd, &msg, 0)));
-+
-+  /* If interface is still in DAD, EINVAL results - ignore that. */
-+  if (errno != 0 && errno != EINVAL)
-     {
--      if (retry_send())
--      continue;
--      
--      /* If interface is still in DAD, EINVAL results - ignore that. */
--      if (errno == EINVAL)
--      break;
--      
-       my_syslog(LOG_ERR, _("failed to send packet: %s"), strerror(errno));
-       return 0;
-     }
-@@ -297,9 +293,9 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
-               fd = forward->rfd4->fd;
-           }
-         
--        while (sendto(fd, (char *)header, plen, 0,
--                      &forward->sentto->addr.sa,
--                      sa_len(&forward->sentto->addr)) == -1 && retry_send());
-+        while (retry_send( sendto(fd, (char *)header, plen, 0,
-+                                  &forward->sentto->addr.sa,
-+                                  sa_len(&forward->sentto->addr))));
-         
-         return 1;
-       }
-@@ -469,14 +465,12 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
- #endif
-               }
-             
--            if (sendto(fd, (char *)header, plen, 0,
--                       &start->addr.sa,
--                       sa_len(&start->addr)) == -1)
--              {
--                if (retry_send())
--                  continue;
--              }
--            else
-+            if (retry_send(sendto(fd, (char *)header, plen, 0,
-+                                  &start->addr.sa,
-+                                  sa_len(&start->addr))))
-+              continue;
-+          
-+            if (errno == 0)
-               {
-                 /* Keep info in case we want to re-send this packet */
-                 daemon->srv_save = start;
-@@ -932,7 +926,9 @@ void reply_query(int fd, int family, time_t now)
-                 
-                 if (fd != -1)
-                   {
--                    while (sendto(fd, (char *)header, nn, 0, &server->addr.sa, sa_len(&server->addr)) == -1 && retry_send()); 
-+                    while (retry_send(sendto(fd, (char *)header, nn, 0, 
-+                                             &server->addr.sa, 
-+                                             sa_len(&server->addr)))); 
-                     server->queries++;
-                   }
-                 
-@@ -2228,8 +2224,9 @@ void resend_query()
-       else
-       return;
-       
--      while(sendto(fd, daemon->packet, daemon->packet_len, 0,
--                 &daemon->srv_save->addr.sa, sa_len(&daemon->srv_save->addr)) == -1 && retry_send()); 
-+      while(retry_send(sendto(fd, daemon->packet, daemon->packet_len, 0,
-+                            &daemon->srv_save->addr.sa, 
-+                            sa_len(&daemon->srv_save->addr)))); 
-     }
- }
-diff --git a/src/ipset.c b/src/ipset.c
-index 8c5b72722371..a315e86bc7f4 100644
---- a/src/ipset.c
-+++ b/src/ipset.c
-@@ -121,7 +121,6 @@ static int new_add_to_ipset(const char *setname, const struct all_addr *ipaddr,
-   struct my_nlattr *nested[2];
-   uint8_t proto;
-   int addrsz = INADDRSZ;
--  ssize_t rc;
- #ifdef HAVE_IPV6
-   if (af == AF_INET6)
-@@ -162,9 +161,10 @@ static int new_add_to_ipset(const char *setname, const struct all_addr *ipaddr,
-   nested[1]->nla_len = (void *)buffer + NL_ALIGN(nlh->nlmsg_len) - (void *)nested[1];
-   nested[0]->nla_len = (void *)buffer + NL_ALIGN(nlh->nlmsg_len) - (void *)nested[0];
-       
--  while ((rc = sendto(ipset_sock, buffer, nlh->nlmsg_len, 0,
--                    (struct sockaddr *)&snl, sizeof(snl))) == -1 && retry_send());
--  return rc;
-+  while (retry_send(sendto(ipset_sock, buffer, nlh->nlmsg_len, 0,
-+                         (struct sockaddr *)&snl, sizeof(snl))));
-+                                                                  
-+  return errno == 0 ? 0 : -1;
- }
-diff --git a/src/loop.c b/src/loop.c
-index 565f7d8e58e0..c9ed075670de 100644
---- a/src/loop.c
-+++ b/src/loop.c
-@@ -45,8 +45,9 @@ void loop_send_probes()
-            fd = rfd->fd;
-          }
--       while (sendto(fd, daemon->packet, len, 0, &serv->addr.sa, sa_len(&serv->addr)) == -1 && retry_send());
--
-+       while (retry_send(sendto(fd, daemon->packet, len, 0, 
-+                                &serv->addr.sa, sa_len(&serv->addr))));
-+       
-        free_rfd(rfd);
-        }
- }
-diff --git a/src/netlink.c b/src/netlink.c
-index 10f94db25a14..753784dc20b4 100644
---- a/src/netlink.c
-+++ b/src/netlink.c
-@@ -169,10 +169,10 @@ int iface_enumerate(int family, void *parm, int (*callback)())
-   req.g.rtgen_family = family; 
-   /* Don't block in recvfrom if send fails */
--  while((len = sendto(daemon->netlinkfd, (void *)&req, sizeof(req), 0, 
--                    (struct sockaddr *)&addr, sizeof(addr))) == -1 && retry_send());
--  
--  if (len == -1)
-+  while(retry_send(sendto(daemon->netlinkfd, (void *)&req, sizeof(req), 0, 
-+                        (struct sockaddr *)&addr, sizeof(addr))));
-+
-+  if (errno != 0)
-     return 0;
-     
-   while (1)
-diff --git a/src/radv.c b/src/radv.c
-index 6da125b864ae..d0faddf8684a 100644
---- a/src/radv.c
-+++ b/src/radv.c
-@@ -479,8 +479,9 @@ static void send_ra(time_t now, int iface, char *iface_name, struct in6_addr *de
-       setsockopt(daemon->icmp6fd, IPPROTO_IPV6, IPV6_MULTICAST_IF, &iface, sizeof(iface));
-     }
-   
--  while (sendto(daemon->icmp6fd, daemon->outpacket.iov_base, save_counter(0), 0, 
--              (struct sockaddr *)&addr, sizeof(addr)) == -1 && retry_send());
-+  while (retry_send(sendto(daemon->icmp6fd, daemon->outpacket.iov_base, 
-+                         save_counter(0), 0, (struct sockaddr *)&addr, 
-+                         sizeof(addr))));
-   
- }
-diff --git a/src/util.c b/src/util.c
-index 91d02410b13f..648bc4d4b428 100644
---- a/src/util.c
-+++ b/src/util.c
-@@ -569,17 +569,27 @@ void bump_maxfd(int fd, int *max)
-     *max = fd;
- }
--int retry_send(void)
-+/* rc is return from sendto and friends.
-+   Return 1 if we should retry.
-+   Set errno to zero if we succeeded. */
-+int retry_send(ssize_t rc)
- {
-+  static int retries = 0;
-+  struct timespec waiter;
-+  
-+  if (rc != -1)
-+    {
-+      retries = 0;
-+      errno = 0;
-+      return 0;
-+    }
-+  
-   /* Linux kernels can return EAGAIN in perpetuity when calling
-      sendmsg() and the relevant interface has gone. Here we loop
-      retrying in EAGAIN for 1 second max, to avoid this hanging 
-      dnsmasq. */
--  static int retries = 0;
--  struct timespec waiter;
--
--   if (errno == EAGAIN || errno == EWOULDBLOCK)
-+  if (errno == EAGAIN || errno == EWOULDBLOCK)
-      {
-        waiter.tv_sec = 0;
-        waiter.tv_nsec = 10000;
-@@ -587,13 +597,13 @@ int retry_send(void)
-        if (retries++ < 1000)
-        return 1;
-      }
--
--   retries = 0;
--   
--   if (errno == EINTR)
--     return 1;
--   
--   return 0;
-+  
-+  retries = 0;
-+  
-+  if (errno == EINTR)
-+    return 1;
-+  
-+  return 0;
- }
- int read_write(int fd, unsigned char *packet, int size, int rw)
-@@ -602,22 +612,21 @@ int read_write(int fd, unsigned char *packet, int size, int rw)
-   
-   for (done = 0; done < size; done += n)
-     {
--    retry:
--      if (rw)
--        n = read(fd, &packet[done], (size_t)(size - done));
--      else
--        n = write(fd, &packet[done], (size_t)(size - done));
--
--      if (n == 0)
--        return 0;
--      else if (n == -1)
--        {
--          if (retry_send() || errno == ENOMEM || errno == ENOBUFS)
--            goto retry;
--          else
--            return 0;
--        }
-+      do { 
-+      if (rw)
-+        n = read(fd, &packet[done], (size_t)(size - done));
-+      else
-+        n = write(fd, &packet[done], (size_t)(size - done));
-+      
-+      if (n == 0)
-+        return 0;
-+      
-+      } while (retry_send(n) || errno == ENOMEM || errno == ENOBUFS);
-+
-+      if (errno != 0)
-+      return 0;
-     }
-+     
-   return 1;
- }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch b/src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch
deleted file mode 100644 (file)
index a072474..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-From 979fe86bc8693f660eddea232ae39cbbb50b294c Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 19 Mar 2015 22:50:22 +0000
-Subject: [PATCH 59/78] Make --address=/example.com/ equivalent to
- --server=/example.com/
-
----
- man/dnsmasq.8 | 7 +++++--
- src/network.c | 4 ++--
- src/option.c  | 2 --
- 3 files changed, 7 insertions(+), 6 deletions(-)
-
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 2db780d90987..1f1dd7b69c53 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -460,7 +460,7 @@ but provides some syntactic sugar to make specifying address-to-name queries eas
- is exactly equivalent to 
- .B --server=/3.2.1.in-addr.arpa/192.168.0.1
- .TP
--.B \-A, --address=/<domain>/[domain/]<ipaddr>
-+.B \-A, --address=/<domain>/[domain/][<ipaddr>]
- Specify an IP address to return for any host in the given domains.
- Queries in the domains are never forwarded and always replied to
- with the specified IP address which may be IPv4 or IPv6. To give
-@@ -472,7 +472,10 @@ domain specification works in the same was as for --server, with the
- additional facility that /#/ matches any domain. Thus
- --address=/#/1.2.3.4 will always return 1.2.3.4 for any query not
- answered from /etc/hosts or DHCP and not sent to an upstream
--nameserver by a more specific --server directive.
-+nameserver by a more specific --server directive. As for --server,
-+one or more domains with no address returns a no-such-domain answer, so
-+--address=/example.com/ is equivalent to --server=/example.com/ and returns 
-+NXDOMAIN for example.com and all its subdomains.
- .TP
- .B --ipset=/<domain>/[domain/]<ipset>[,<ipset>]
- Places the resolved IP addresses of queries for the specified domains
-diff --git a/src/network.c b/src/network.c
-index 7045253d467b..992f023c31de 100644
---- a/src/network.c
-+++ b/src/network.c
-@@ -1459,7 +1459,7 @@ void check_servers(void)
-           }
-       }
-       
--      if (!(serv->flags & SERV_NO_REBIND))
-+      if (!(serv->flags & SERV_NO_REBIND) && !(serv->flags & SERV_LITERAL_ADDRESS))
-       {
-         if (serv->flags & (SERV_HAS_DOMAIN | SERV_FOR_NODOTS | SERV_USE_RESOLV))
-           {
-@@ -1475,7 +1475,7 @@ void check_servers(void)
-               my_syslog(LOG_INFO, _("using local addresses only for %s %s"), s1, s2);
-             else if (serv->flags & SERV_USE_RESOLV)
-               my_syslog(LOG_INFO, _("using standard nameservers for %s %s"), s1, s2);
--            else if (!(serv->flags & SERV_LITERAL_ADDRESS))
-+            else 
-               my_syslog(LOG_INFO, _("using nameserver %s#%d for %s %s"), daemon->namebuff, port, s1, s2);
-           }
- #ifdef HAVE_LOOP
-diff --git a/src/option.c b/src/option.c
-index eace40bb566c..3009eb545fde 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -2284,8 +2284,6 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
-         {
-           if (!(newlist->flags & SERV_NO_REBIND))
-             newlist->flags |= SERV_NO_ADDR; /* no server */
--          if (newlist->flags & SERV_LITERAL_ADDRESS)
--            ret_err(gen_err);
-         }
-       else if (strcmp(arg, "#") == 0)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/006-clarify_man_page_on_RDNSS_set_in_router_advertisement.patch b/src/patches/dnsmasq/006-clarify_man_page_on_RDNSS_set_in_router_advertisement.patch
new file mode 100644 (file)
index 0000000..19c76e6
--- /dev/null
@@ -0,0 +1,35 @@
+From 20fd11e11a9d09edcea94de135396ae1541fbbab Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Wed, 26 Aug 2015 22:48:13 +0100
+Subject: [PATCH] Clarify man page on RDNSS set in router advertisement.
+
+---
+ man/dnsmasq.8 |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
+index a23c898..d51b10f 100644
+--- a/man/dnsmasq.8
++++ b/man/dnsmasq.8
+@@ -1687,15 +1687,15 @@ creation are handled by a different protocol. When DHCP is in use,
+ only a subset of this is needed, and dnsmasq can handle it, using
+ existing DHCP configuration to provide most data. When RA is enabled,
+ dnsmasq will advertise a prefix for each dhcp-range, with default
+-router and recursive DNS server as the relevant link-local address on 
+-the machine running dnsmasq. By default, he "managed address" bits are set, and
++router  as the relevant link-local address on 
++the machine running dnsmasq. By default, the "managed address" bits are set, and
+ the "use SLAAC" bit is reset. This can be changed for individual
+ subnets with the mode keywords described in
+ .B --dhcp-range.
+ RFC6106 DNS parameters are included in the advertisements. By default,
+ the relevant link-local address of the machine running dnsmasq is sent
+ as recursive DNS server. If provided, the DHCPv6 options dns-server and
+-domain-search are used for RDNSS and DNSSL.
++domain-search are used for the DNS server (RDNSS) and the domain serach list (DNSSL).
+ .TP
+ .B --ra-param=<interface>,[high|low],[[<ra-interval>],<router lifetime>]
+ Set non-default values for router advertisements sent via an
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch b/src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch
deleted file mode 100644 (file)
index 429f56a..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-From 65c721200023ef0023114459a8d12f8b0a24cfd8 Mon Sep 17 00:00:00 2001
-From: Lung-Pin Chang <changlp@cs.nctu.edu.tw>
-Date: Thu, 19 Mar 2015 23:22:21 +0000
-Subject: [PATCH 60/78] dhcp: set outbound interface via cmsg in unicast reply
-
-  If multiple routes to the same network exist, Linux blindly picks
-  the first interface (route) based on destination address, which might not be
-  the one we're actually offering leases. Rather than relying on this,
-  always set the interface for outgoing unicast DHCP packets.
----
- src/dhcp.c | 45 +++++++++++++++++++++++++--------------------
- 1 file changed, 25 insertions(+), 20 deletions(-)
-
-diff --git a/src/dhcp.c b/src/dhcp.c
-index 5c3089ab94ff..f1f43f8d8f90 100644
---- a/src/dhcp.c
-+++ b/src/dhcp.c
-@@ -376,10 +376,9 @@ void dhcp_packet(time_t now, int pxe_fd)
-       }
-     } 
- #if defined(HAVE_LINUX_NETWORK)
--  else if ((ntohs(mess->flags) & 0x8000) || mess->hlen == 0 ||
--         mess->hlen > sizeof(ifr.ifr_addr.sa_data) || mess->htype == 0)
-+  else
-     {
--      /* broadcast to 255.255.255.255 (or mac address invalid) */
-+      /* fill cmsg for outbound interface (both broadcast & unicast) */
-       struct in_pktinfo *pkt;
-       msg.msg_control = control_u.control;
-       msg.msg_controllen = sizeof(control_u);
-@@ -389,23 +388,29 @@ void dhcp_packet(time_t now, int pxe_fd)
-       pkt->ipi_spec_dst.s_addr = 0;
-       msg.msg_controllen = cmptr->cmsg_len = CMSG_LEN(sizeof(struct in_pktinfo));
-       cmptr->cmsg_level = IPPROTO_IP;
--      cmptr->cmsg_type = IP_PKTINFO;  
--      dest.sin_addr.s_addr = INADDR_BROADCAST;
--      dest.sin_port = htons(daemon->dhcp_client_port);
--    }
--  else
--    {
--      /* unicast to unconfigured client. Inject mac address direct into ARP cache. 
--       struct sockaddr limits size to 14 bytes. */
--      dest.sin_addr = mess->yiaddr;
--      dest.sin_port = htons(daemon->dhcp_client_port);
--      memcpy(&arp_req.arp_pa, &dest, sizeof(struct sockaddr_in));
--      arp_req.arp_ha.sa_family = mess->htype;
--      memcpy(arp_req.arp_ha.sa_data, mess->chaddr, mess->hlen);
--      /* interface name already copied in */
--      arp_req.arp_flags = ATF_COM;
--      if (ioctl(daemon->dhcpfd, SIOCSARP, &arp_req) == -1)
--      my_syslog(MS_DHCP | LOG_ERR, _("ARP-cache injection failed: %s"), strerror(errno));
-+      cmptr->cmsg_type = IP_PKTINFO;
-+
-+      if ((ntohs(mess->flags) & 0x8000) || mess->hlen == 0 ||
-+         mess->hlen > sizeof(ifr.ifr_addr.sa_data) || mess->htype == 0)
-+        {
-+          /* broadcast to 255.255.255.255 (or mac address invalid) */
-+          dest.sin_addr.s_addr = INADDR_BROADCAST;
-+          dest.sin_port = htons(daemon->dhcp_client_port);
-+        }
-+      else
-+        {
-+          /* unicast to unconfigured client. Inject mac address direct into ARP cache.
-+          struct sockaddr limits size to 14 bytes. */
-+          dest.sin_addr = mess->yiaddr;
-+          dest.sin_port = htons(daemon->dhcp_client_port);
-+          memcpy(&arp_req.arp_pa, &dest, sizeof(struct sockaddr_in));
-+          arp_req.arp_ha.sa_family = mess->htype;
-+          memcpy(arp_req.arp_ha.sa_data, mess->chaddr, mess->hlen);
-+          /* interface name already copied in */
-+          arp_req.arp_flags = ATF_COM;
-+          if (ioctl(daemon->dhcpfd, SIOCSARP, &arp_req) == -1)
-+            my_syslog(MS_DHCP | LOG_ERR, _("ARP-cache injection failed: %s"), strerror(errno));
-+        }
-     }
- #elif defined(HAVE_SOLARIS_NETWORK)
-   else if ((ntohs(mess->flags) & 0x8000) || mess->hlen != ETHER_ADDR_LEN || mess->htype != ARPHRD_ETHER)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch b/src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch
deleted file mode 100644 (file)
index aece6fa..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From 8805283088d670baecb92569252c01cf754cda51 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 26 Mar 2015 21:15:43 +0000
-Subject: [PATCH 61/78] Don't fail DNSSEC when a signed CNAME dangles into an
- unsigned zone.
-
----
- src/dnssec.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index ad0d6f072ba2..db5c768bd751 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -2032,7 +2032,8 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-   /* NXDOMAIN or NODATA reply, prove that (name, class1, type1) can't exist */
-   /* First marshall the NSEC records, if we've not done it previously */
-   if (!nsec_type && !(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, qclass)))
--    return STAT_BOGUS; /* No NSECs */
-+    return STAT_NO_SIG; /* No NSECs, this is probably a dangling CNAME pointing into
-+                         an unsigned zone. Return STAT_NO_SIG to cause this to be proved. */
-    
-   /* Get name of missing answer */
-   if (!extract_name(header, plen, &qname, name, 1, 0))
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch b/src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch
deleted file mode 100644 (file)
index 81280dc..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-From 150162bc37170a6edae9d488435e836b1e4e3a4e Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Fri, 27 Mar 2015 09:58:26 +0000
-Subject: [PATCH 62/78] Return SERVFAIL when validation abandoned.
-
----
- src/forward.c | 11 +++++++++--
- 1 file changed, 9 insertions(+), 2 deletions(-)
-
-diff --git a/src/forward.c b/src/forward.c
-index 7c0fa8da3fdf..985814c3aec5 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -663,6 +663,7 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server
-       header->ancount = htons(0);
-       header->nscount = htons(0);
-       header->arcount = htons(0);
-+      header->hb3 &= ~HB3_TC;
-     }
-   
-   /* the bogus-nxdomain stuff, doctor and NXDOMAIN->NODATA munging can all elide
-@@ -991,7 +992,10 @@ void reply_query(int fd, int family, time_t now)
-             char *result;
-             
-             if (forward->work_counter == 0)
--              result = "ABANDONED";
-+              {
-+                result = "ABANDONED";
-+                status = STAT_BOGUS;
-+              }
-             else
-               result = (status == STAT_SECURE ? "SECURE" : (status == STAT_INSECURE ? "INSECURE" : "BOGUS"));
-             
-@@ -1938,7 +1942,10 @@ unsigned char *tcp_request(int confd, time_t now,
-                         char *result;
-                         if (keycount == 0)
--                          result = "ABANDONED";
-+                          {
-+                            result = "ABANDONED";
-+                            status = STAT_BOGUS;
-+                          }
-                         else
-                           result = (status == STAT_SECURE ? "SECURE" : (status == STAT_INSECURE ? "INSECURE" : "BOGUS"));
-                         
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch b/src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch
deleted file mode 100644 (file)
index bd79a1a..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-From 0b8a5a30a77331974ba24a04e43e720585dfbc61 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Fri, 27 Mar 2015 11:44:55 +0000
-Subject: [PATCH 63/78] Protect against broken DNSSEC upstreams.
-
----
- src/dnssec.c | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index db5c768bd751..14bae7e9bf75 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -1177,7 +1177,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-    STAT_NO_DS       It's proved there's no DS here.
-    STAT_NO_NS       It's proved there's no DS _or_ NS here.
-    STAT_BOGUS       no DS in reply or not signed, fails validation, bad packet.
--   STAT_NEED_DNSKEY DNSKEY records to validate a DS not found, name in keyname
-+   STAT_NEED_KEY    DNSKEY records to validate a DS not found, name in keyname
- */
- int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class)
-@@ -1208,7 +1208,10 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
-   if (!(p = skip_section(p, ntohs(header->ancount), header, plen)))
-     val = STAT_BOGUS;
-   
--  if (val == STAT_BOGUS)
-+  /* If the key needed to validate the DS is on the same domain as the DS, we'll
-+     loop getting nowhere. Stop that now. This can happen of the DS answer comes
-+     from the DS's zone, and not the parent zone. */
-+  if (val == STAT_BOGUS ||  (val == STAT_NEED_KEY && hostname_isequal(name, keyname)))
-     {
-       log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "BOGUS DS");
-       return STAT_BOGUS;
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch b/src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch
deleted file mode 100644 (file)
index c020af5..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-From 1e153945def3c50d1e59ceea6a768db0ac770f98 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sat, 28 Mar 2015 21:34:07 +0000
-Subject: [PATCH 64/78] DNSSEC fix for non-ascii characters in labels.
-
----
- src/dnssec.c  | 34 +++++++++++++++++-----------------
- src/rfc1035.c |  5 +++--
- 2 files changed, 20 insertions(+), 19 deletions(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 14bae7e9bf75..8bd5294ce773 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -552,7 +552,7 @@ static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end,
-  
-   (*desc)++;
-   
--  if (d == 0 && extract_name(header, plen, p, buff, 1, 0))
-+  if (d == 0 && extract_name(header, plen, p, buff, 2, 0))
-     /* domain-name, canonicalise */
-     return to_wire(buff);
-   else
-@@ -811,7 +811,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-       GETLONG(sig_inception, p);
-       GETSHORT(key_tag, p);
-       
--      if (!extract_name(header, plen, &p, keyname, 1, 0))
-+      if (!extract_name(header, plen, &p, keyname, 2, 0))
-       return STAT_BOGUS;
-       /* RFC 4035 5.3.1 says that the Signer's Name field MUST equal
-@@ -866,7 +866,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-         u16 len, *dp;
-         
-         p = rrset[i];
--        if (!extract_name(header, plen, &p, name, 1, 10)) 
-+        if (!extract_name(header, plen, &p, name, 2, 10)) 
-           return STAT_BOGUS;
-         name_start = name;
-@@ -923,7 +923,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-       
-       /* namebuff used for workspace above, restore to leave unchanged on exit */
-       p = (unsigned char*)(rrset[0]);
--      extract_name(header, plen, &p, name, 1, 0);
-+      extract_name(header, plen, &p, name, 2, 0);
-       if (key)
-       {
-@@ -963,7 +963,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-   struct all_addr a;
-   if (ntohs(header->qdcount) != 1 ||
--      !extract_name(header, plen, &p, name, 1, 4))
-+      !extract_name(header, plen, &p, name, 2, 4))
-     return STAT_BOGUS;
-   GETSHORT(qtype, p);
-@@ -1202,7 +1202,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
-     val = STAT_BOGUS;
-   
-   p = (unsigned char *)(header+1);
--  extract_name(header, plen, &p, name, 1, 4);
-+  extract_name(header, plen, &p, name, 2, 4);
-   p += 4; /* qtype, qclass */
-   
-   if (!(p = skip_section(p, ntohs(header->ancount), header, plen)))
-@@ -1419,12 +1419,12 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
-   for (i = 0; i < nsec_count; i++)
-     {
-       p = nsecs[i];
--      if (!extract_name(header, plen, &p, workspace1, 1, 10))
-+      if (!extract_name(header, plen, &p, workspace1, 2, 10))
-       return STAT_BOGUS;
-       p += 8; /* class, type, TTL */
-       GETSHORT(rdlen, p);
-       psave = p;
--      if (!extract_name(header, plen, &p, workspace2, 1, 10))
-+      if (!extract_name(header, plen, &p, workspace2, 2, 10))
-       return STAT_BOGUS;
-       
-       rc = hostname_cmp(workspace1, name);
-@@ -1553,7 +1553,7 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
-   for (i = 0; i < nsec_count; i++)
-     if ((p = nsecs[i]))
-       {
--              if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
-+              if (!extract_name(header, plen, &p, workspace1, 2, 0) ||
-           !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
-         return 0;
-       
-@@ -1730,7 +1730,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-       for (i = 0; i < nsec_count; i++)
-       if ((p = nsecs[i]))
-         {
--          if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
-+          if (!extract_name(header, plen, &p, workspace1, 2, 0) ||
-               !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
-             return STAT_BOGUS;
-         
-@@ -1796,7 +1796,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-   qname = p1 = (unsigned char *)(header+1);
-   
--  if (!extract_name(header, plen, &p1, name, 1, 4))
-+  if (!extract_name(header, plen, &p1, name, 2, 4))
-     return STAT_BOGUS;
-   GETSHORT(qtype, p1);
-@@ -1836,7 +1836,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-             qname = p1;
-             
-             /* looped CNAMES */
--            if (!cname_count-- || !extract_name(header, plen, &p1, name, 1, 0))
-+            if (!cname_count-- || !extract_name(header, plen, &p1, name, 2, 0))
-               return STAT_BOGUS;
-              
-             p1 = ans_start;
-@@ -1857,7 +1857,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-   
-   for (p1 = ans_start, i = 0; i < ntohs(header->ancount) + ntohs(header->nscount); i++)
-     {
--      if (!extract_name(header, plen, &p1, name, 1, 10))
-+      if (!extract_name(header, plen, &p1, name, 2, 10))
-       return STAT_BOGUS; /* bad packet */
-       
-       GETSHORT(type1, p1);
-@@ -2039,7 +2039,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-                          an unsigned zone. Return STAT_NO_SIG to cause this to be proved. */
-    
-   /* Get name of missing answer */
--  if (!extract_name(header, plen, &qname, name, 1, 0))
-+  if (!extract_name(header, plen, &qname, name, 2, 0))
-     return STAT_BOGUS;
-   
-   if (nsec_type == T_NSEC)
-@@ -2061,7 +2061,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
-   int cname_count = CNAME_CHAIN;
-   /* Get question */
--  if (!extract_name(header, plen, &p, name, 1, 4))
-+  if (!extract_name(header, plen, &p, name, 2, 4))
-     return STAT_BOGUS;
-   
-   p +=2; /* type */
-@@ -2102,7 +2102,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
-         /* Loop down CNAME chain/ */
-         if (!cname_count-- || 
--            !extract_name(header, plen, &p, name, 1, 0) ||
-+            !extract_name(header, plen, &p, name, 2, 0) ||
-             !(p = skip_questions(header, plen)))
-           return STAT_BOGUS;
-         
-@@ -2419,7 +2419,7 @@ unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name
-   
-   for (q = ntohs(header->qdcount); q != 0; q--) 
-     {
--      if (!extract_name(header, plen, &p, name, 1, 4))
-+      if (!extract_name(header, plen, &p, name, 2, 4))
-       break; /* bad packet */
-       
-       len = to_wire(name);
-diff --git a/src/rfc1035.c b/src/rfc1035.c
-index 5ef5ddb7485e..10832a3d5d2e 100644
---- a/src/rfc1035.c
-+++ b/src/rfc1035.c
-@@ -16,6 +16,7 @@
- #include "dnsmasq.h"
-+/* isExtract == 2 -> DNSSEC mode, no bitstrings, no ascii checks. */
- int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, 
-                char *name, int isExtract, int extrabytes)
- {
-@@ -86,7 +87,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
-         if ((l & 0x3f) != 1)
-           return 0; /* we only understand bitstrings */
--        if (!isExtract)
-+        if (isExtract != 1)
-           return 0; /* Cannot compare bitsrings */
-         
-         count = *p++;
-@@ -128,7 +129,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
-           if (isExtract)
-             {
-               unsigned char c = *p;
--              if (isascii(c) && !iscntrl(c) && c != '.')
-+              if ((isExtract == 2 || (isascii(c) && !iscntrl(c))) && c != '.')
-                 *cp++ = *p;
-               else
-                 return 0;
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch b/src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch
deleted file mode 100644 (file)
index a9b6f40..0000000
+++ /dev/null
@@ -1,246 +0,0 @@
-From 394ff492da6af5da7e7d356be9586683bc5fc011 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 29 Mar 2015 22:17:14 +0100
-Subject: [PATCH 65/78] Allow control characters in names in the cache, handle
- when logging.
-
----
- src/cache.c   | 19 +++++++++++++++++--
- src/dnssec.c  | 34 +++++++++++++++++-----------------
- src/rfc1035.c |  7 +++----
- 3 files changed, 37 insertions(+), 23 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index c95624c42b1c..873c5779044c 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1399,6 +1399,19 @@ int cache_make_stat(struct txt_record *t)
-   return 1;
- }
-+/* There can be names in the cache containing control chars, don't 
-+   mess up logging or open security holes. */
-+static char *sanitise(char *name)
-+{
-+  unsigned char *r;
-+  for (r = (unsigned char *)name; *r; r++)
-+    if (!isprint((int)*r))
-+      return "<name unprintable>";
-+
-+  return name;
-+}
-+
-+
- void dump_cache(time_t now)
- {
-   struct server *serv, *serv1;
-@@ -1452,9 +1465,9 @@ void dump_cache(time_t now)
-           *a = 0;
-           if (strlen(n) == 0 && !(cache->flags & F_REVERSE))
-             n = "<Root>";
--          p += sprintf(p, "%-30.30s ", n);
-+          p += sprintf(p, "%-30.30s ", sanitise(n));
-           if ((cache->flags & F_CNAME) && !is_outdated_cname_pointer(cache))
--            a = cache_get_cname_target(cache);
-+            a = sanitise(cache_get_cname_target(cache));
- #ifdef HAVE_DNSSEC
-           else if (cache->flags & F_DS)
-             {
-@@ -1587,6 +1600,8 @@ void log_query(unsigned int flags, char *name, struct all_addr *addr, char *arg)
-   if (!option_bool(OPT_LOG))
-     return;
-+  name = sanitise(name);
-+
-   if (addr)
-     {
-       if (flags & F_KEYTAG)
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 8bd5294ce773..14bae7e9bf75 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -552,7 +552,7 @@ static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end,
-  
-   (*desc)++;
-   
--  if (d == 0 && extract_name(header, plen, p, buff, 2, 0))
-+  if (d == 0 && extract_name(header, plen, p, buff, 1, 0))
-     /* domain-name, canonicalise */
-     return to_wire(buff);
-   else
-@@ -811,7 +811,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-       GETLONG(sig_inception, p);
-       GETSHORT(key_tag, p);
-       
--      if (!extract_name(header, plen, &p, keyname, 2, 0))
-+      if (!extract_name(header, plen, &p, keyname, 1, 0))
-       return STAT_BOGUS;
-       /* RFC 4035 5.3.1 says that the Signer's Name field MUST equal
-@@ -866,7 +866,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-         u16 len, *dp;
-         
-         p = rrset[i];
--        if (!extract_name(header, plen, &p, name, 2, 10)) 
-+        if (!extract_name(header, plen, &p, name, 1, 10)) 
-           return STAT_BOGUS;
-         name_start = name;
-@@ -923,7 +923,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
-       
-       /* namebuff used for workspace above, restore to leave unchanged on exit */
-       p = (unsigned char*)(rrset[0]);
--      extract_name(header, plen, &p, name, 2, 0);
-+      extract_name(header, plen, &p, name, 1, 0);
-       if (key)
-       {
-@@ -963,7 +963,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-   struct all_addr a;
-   if (ntohs(header->qdcount) != 1 ||
--      !extract_name(header, plen, &p, name, 2, 4))
-+      !extract_name(header, plen, &p, name, 1, 4))
-     return STAT_BOGUS;
-   GETSHORT(qtype, p);
-@@ -1202,7 +1202,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
-     val = STAT_BOGUS;
-   
-   p = (unsigned char *)(header+1);
--  extract_name(header, plen, &p, name, 2, 4);
-+  extract_name(header, plen, &p, name, 1, 4);
-   p += 4; /* qtype, qclass */
-   
-   if (!(p = skip_section(p, ntohs(header->ancount), header, plen)))
-@@ -1419,12 +1419,12 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
-   for (i = 0; i < nsec_count; i++)
-     {
-       p = nsecs[i];
--      if (!extract_name(header, plen, &p, workspace1, 2, 10))
-+      if (!extract_name(header, plen, &p, workspace1, 1, 10))
-       return STAT_BOGUS;
-       p += 8; /* class, type, TTL */
-       GETSHORT(rdlen, p);
-       psave = p;
--      if (!extract_name(header, plen, &p, workspace2, 2, 10))
-+      if (!extract_name(header, plen, &p, workspace2, 1, 10))
-       return STAT_BOGUS;
-       
-       rc = hostname_cmp(workspace1, name);
-@@ -1553,7 +1553,7 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
-   for (i = 0; i < nsec_count; i++)
-     if ((p = nsecs[i]))
-       {
--              if (!extract_name(header, plen, &p, workspace1, 2, 0) ||
-+              if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
-           !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
-         return 0;
-       
-@@ -1730,7 +1730,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
-       for (i = 0; i < nsec_count; i++)
-       if ((p = nsecs[i]))
-         {
--          if (!extract_name(header, plen, &p, workspace1, 2, 0) ||
-+          if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
-               !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
-             return STAT_BOGUS;
-         
-@@ -1796,7 +1796,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-   qname = p1 = (unsigned char *)(header+1);
-   
--  if (!extract_name(header, plen, &p1, name, 2, 4))
-+  if (!extract_name(header, plen, &p1, name, 1, 4))
-     return STAT_BOGUS;
-   GETSHORT(qtype, p1);
-@@ -1836,7 +1836,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-             qname = p1;
-             
-             /* looped CNAMES */
--            if (!cname_count-- || !extract_name(header, plen, &p1, name, 2, 0))
-+            if (!cname_count-- || !extract_name(header, plen, &p1, name, 1, 0))
-               return STAT_BOGUS;
-              
-             p1 = ans_start;
-@@ -1857,7 +1857,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-   
-   for (p1 = ans_start, i = 0; i < ntohs(header->ancount) + ntohs(header->nscount); i++)
-     {
--      if (!extract_name(header, plen, &p1, name, 2, 10))
-+      if (!extract_name(header, plen, &p1, name, 1, 10))
-       return STAT_BOGUS; /* bad packet */
-       
-       GETSHORT(type1, p1);
-@@ -2039,7 +2039,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
-                          an unsigned zone. Return STAT_NO_SIG to cause this to be proved. */
-    
-   /* Get name of missing answer */
--  if (!extract_name(header, plen, &qname, name, 2, 0))
-+  if (!extract_name(header, plen, &qname, name, 1, 0))
-     return STAT_BOGUS;
-   
-   if (nsec_type == T_NSEC)
-@@ -2061,7 +2061,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
-   int cname_count = CNAME_CHAIN;
-   /* Get question */
--  if (!extract_name(header, plen, &p, name, 2, 4))
-+  if (!extract_name(header, plen, &p, name, 1, 4))
-     return STAT_BOGUS;
-   
-   p +=2; /* type */
-@@ -2102,7 +2102,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char
-         /* Loop down CNAME chain/ */
-         if (!cname_count-- || 
--            !extract_name(header, plen, &p, name, 2, 0) ||
-+            !extract_name(header, plen, &p, name, 1, 0) ||
-             !(p = skip_questions(header, plen)))
-           return STAT_BOGUS;
-         
-@@ -2419,7 +2419,7 @@ unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name
-   
-   for (q = ntohs(header->qdcount); q != 0; q--) 
-     {
--      if (!extract_name(header, plen, &p, name, 2, 4))
-+      if (!extract_name(header, plen, &p, name, 1, 4))
-       break; /* bad packet */
-       
-       len = to_wire(name);
-diff --git a/src/rfc1035.c b/src/rfc1035.c
-index 10832a3d5d2e..7a07b0cee906 100644
---- a/src/rfc1035.c
-+++ b/src/rfc1035.c
-@@ -16,7 +16,6 @@
- #include "dnsmasq.h"
--/* isExtract == 2 -> DNSSEC mode, no bitstrings, no ascii checks. */
- int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, 
-                char *name, int isExtract, int extrabytes)
- {
-@@ -87,7 +86,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
-         if ((l & 0x3f) != 1)
-           return 0; /* we only understand bitstrings */
--        if (isExtract != 1)
-+        if (!isExtract)
-           return 0; /* Cannot compare bitsrings */
-         
-         count = *p++;
-@@ -129,8 +128,8 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
-           if (isExtract)
-             {
-               unsigned char c = *p;
--              if ((isExtract == 2 || (isascii(c) && !iscntrl(c))) && c != '.')
--                *cp++ = *p;
-+              if (c != 0 && c != '.')
-+                *cp++ = c;
-               else
-                 return 0;
-             }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch b/src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch
deleted file mode 100644 (file)
index 8a496b0..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From 794fccca7ffebfba4468bfffc6276b68bbf6afd9 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 29 Mar 2015 22:35:44 +0100
-Subject: [PATCH 66/78] Fix crash in last commit.
-
----
- src/cache.c | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/src/cache.c b/src/cache.c
-index 873c5779044c..d7bea574c0d8 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1404,9 +1404,10 @@ int cache_make_stat(struct txt_record *t)
- static char *sanitise(char *name)
- {
-   unsigned char *r;
--  for (r = (unsigned char *)name; *r; r++)
--    if (!isprint((int)*r))
--      return "<name unprintable>";
-+  if (name)
-+    for (r = (unsigned char *)name; *r; r++)
-+      if (!isprint((int)*r))
-+      return "<name unprintable>";
-   return name;
- }
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0067-Merge-message-translations.patch b/src/patches/dnsmasq/0067-Merge-message-translations.patch
deleted file mode 100644 (file)
index f6c5225..0000000
+++ /dev/null
@@ -1,20329 +0,0 @@
-From fd6ad9e481ab7c812a6b1515244908818cbb0442 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 30 Mar 2015 07:52:21 +0100
-Subject: [PATCH 67/78] Merge message translations.
-
----
- po/de.po    | 803 +++++++++++++++++++++++++++++++++--------------------------
- po/es.po    | 798 ++++++++++++++++++++++++++++++++--------------------------
- po/fi.po    | 786 +++++++++++++++++++++++++++++++--------------------------
- po/fr.po    | 799 ++++++++++++++++++++++++++++++++--------------------------
- po/id.po    | 814 +++++++++++++++++++++++++++++++++---------------------------
- po/it.po    | 786 +++++++++++++++++++++++++++++++--------------------------
- po/no.po    | 797 ++++++++++++++++++++++++++++++++--------------------------
- po/pl.po    | 803 +++++++++++++++++++++++++++++++++--------------------------
- po/pt_BR.po | 786 +++++++++++++++++++++++++++++++--------------------------
- po/ro.po    | 797 ++++++++++++++++++++++++++++++++--------------------------
- 10 files changed, 4396 insertions(+), 3573 deletions(-)
-
-diff --git a/po/de.po b/po/de.po
-index 4c93c5b28ef2..a03173845b35 100644
---- a/po/de.po
-+++ b/po/de.po
-@@ -23,70 +23,70 @@ msgstr ""
- "X-Generator: Poedit 1.7.3\n"
- "X-Poedit-SourceCharset: UTF-8\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr "Interner Fehler im Cache."
--#: cache.c:908
-+#: cache.c:941
- #, c-format
- msgid "failed to load names from %s: %s"
- msgstr "Fehler beim Laden der Namen von %s: %s"
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr "Fehlerhafte Adresse in %s Zeile %d"
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr "Fehlerhafter Name in %s Zeile %d"
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr "%s gelesen - %d Adressen"
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr "Cache geleert"
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr "Keine IPv4-Adresse für %s gefunden"
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr "%s ist ein CNAME, weise es der DHCP-Lease von %s nicht zu"
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr "Name %s wurde dem DHCP-Lease von %s nicht zugewiesen, da der Name in %s bereits mit Adresse %s existiert"
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr "Zeit %lu"
--#: cache.c:1367
-+#: cache.c:1422
- #, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr "Cache Größe %d, %d/%d Cache-Einfügungen verwendeten nicht abgelaufene Cache-Einträge wieder."
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr "%u weitergeleitete Anfragen, %u lokal beantwortete Anfragen"
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr "Anfragen nach autoritativen Zonen %u"
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr "Server %s#%d: %u Anfragen gesendet, %u erneut versucht oder fehlgeschlagen"
-@@ -100,7 +100,7 @@ msgstr "Konnte den Zufallszahlengenerator nicht initialisieren: %s"
- msgid "failed to allocate memory"
- msgstr "Konnte Speicher nicht belegen"
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr "Speicher nicht verfügbar"
-@@ -115,593 +115,626 @@ msgid "failed to allocate %d bytes"
- msgstr "Konnte %d Bytes nicht belegen"
- # @Simon: not perfect but I cannot get nearer right now.
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr "unendlich"
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr "Lokale abzuhörende Adresse(n) angeben."
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr "IP-Adresse für alle Hosts in angegebenen Domänen festlegen."
- # FIXME: the English test is not to the point. Just use a shortened description
- # from the manpage instead. -- MA
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr "Für private Adressbereiche nach RFC1918 \"keine solche Domain\" liefern."
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr "Diese IP-Adresse als NXDOMAIN interpretieren (wehrt \"Suchhilfen\" ab)."
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr "Größe des Caches (Zahl der Einträge) festlegen (Voreinstellung: %s)."
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr "Konfigurationsdatei festlegen (Voreinstellung: %s)."
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr "NICHT in den Hintergrund gehen: Betrieb im Debug-Modus"
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr "Anfragen ohne Domänen-Teil NICHT weiterschicken."
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr "Für lokale Einträge MX-Einträge liefern, die auf sich selbst zeigen."
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr "Erweitere einfache Namen in /etc/hosts mit der Domänen-Endung."
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr "'unechte' DNS-Anfragen von Windows-Rechnern nicht weiterleiten"
- # @Simon: I'm a bit unsure about "spurious"
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr "DHCP für angegebenen Bereich und Dauer einschalten"
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr "Nach dem Start in diese Benutzergruppe wechseln (Voreinstellung %s)."
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr "Adresse oder Hostnamen für einen angegebenen Computer setzen."
--#: option.c:332
-+#: option.c:344
- msgid "Read DHCP host specs from file."
- msgstr "DHCP-Host-Angaben aus Datei lesen."
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr "DHCP-Optionen aus Datei lesen."
--#: option.c:334
-+#: option.c:346
-+#, fuzzy
-+msgid "Read DHCP host specs from a directory."
-+msgstr "DHCP-Host-Angaben aus Datei lesen."
-+
-+#: option.c:347
-+#, fuzzy
-+msgid "Read DHCP options from a directory."
-+msgstr "DHCP-Optionen aus Datei lesen."
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr "Auswertung eines Ausdrucks bedingter Marken."
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr "%s-Datei NICHT laden."
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr "Hosts-Datei festlegen, die zusätzlich zu %s gelesen wird."
--#: option.c:337
-+#: option.c:351
-+#, fuzzy
-+msgid "Read hosts files from a directory."
-+msgstr "DHCP-Host-Angaben aus Datei lesen."
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr "Schnittstelle(n) zum Empfang festlegen."
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr "Schnittstelle(n) festlegen, die NICHT empfangen sollen."
--#: option.c:339
-+#: option.c:354
- msgid "Map DHCP user class to tag."
- msgstr "DHCP-Benutzerklasse auf Marke abbilden."
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr "RFC3046 \"circuit-id\" auf Marke abbilden."
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr "RFC3046 \"remote-id\" auf Marke abbilden."
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr "RFC3993 \"subscriber-id\" auf Marke abbilden."
--#: option.c:343
-+#: option.c:358
- msgid "Don't do DHCP for hosts with tag set."
- msgstr "Kein DHCP für Hosts mit gesetzter Marke verwenden."
--#: option.c:344
-+#: option.c:359
- msgid "Force broadcast replies for hosts with tag set."
- msgstr "Rundsendung für Hosts mit gesetzter Marke erzwingen."
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr "NICHT in den Hintergrund wechseln, NICHT im Debug-Modus laufen."
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr "Voraussetzen, dass wir der einzige DHCP-Server im lokalen Netz sind."
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr "Festlegen, wo DHCP-Leases gespeichert werden (Voreinstellung %s)."
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr "MX-Einträge für lokale Hosts liefern."
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr "Einen MX-Eintrag festlegen."
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr "BOOTP-Optionen für DHCP-Server festlegen."
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr "%s-Datei NICHT abfragen, nur bei SIGHUP neu laden."
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr "Fehlerhafte Suchergebnisse NICHT zwischenspeichern."
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr "Namensserver streng in der in %s angegebenen Reihenfolge verwenden."
--#: option.c:354
-+#: option.c:369
- msgid "Specify options to be sent to DHCP clients."
- msgstr "Optionen festlegen, die an DHCP-Klienten gesendet werden."
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr "DHCP-Option, die selbst ohne Klientenanfrage gesendet wird."
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr "Port zum Abhören der DNS-Anfragen festlegen (53 voreingestellt)."
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr "Maximale unterstützte UDP-Paketgröße für EDNS.0 (Voreinstellung %s)."
--#: option.c:358
-+#: option.c:373
- msgid "Log DNS queries."
- msgstr "DNS-Anfragen protokollieren."
--#: option.c:359
-+#: option.c:374
- msgid "Force the originating port for upstream DNS queries."
- msgstr "Ausgehenden Port erzwingen für DNS-Anfragen an vorgelagerte Server."
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr "resolv.conf NICHT lesen."
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Pfad zu resolv.conf festlegen (%s voreingestellt)."
--#: option.c:362
-+#: option.c:377
- msgid "Specify path to file with server= options"
- msgstr " Dateipfad mit der Option server= angeben"
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Adresse(n) vorgelagerter Server festlegen, optional mit Domänen."
--#: option.c:364
-+#: option.c:379
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr "Adresse(n) vorgelagerter Server festlegen, für reverse Adressanfragen"
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr "Anfragen für angegebene Domänen niemals weiterleiten."
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr "Domäne festlegen, die für DHCP-Leases zugewiesen wird."
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr "Voreingestelltes Ziel für MX-Einträge festlegen."
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr "Gültigkeitsdauer für Antworten aus /etc/hosts festlegen."
--#: option.c:369
-+#: option.c:384
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen."
--#: option.c:370
-+#: option.c:385
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen."
--#: option.c:371
-+#: option.c:386
-+#, fuzzy
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen."
-+
-+#: option.c:387
-+#, fuzzy
-+msgid "Specify time-to-live floor for cache."
-+msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen."
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr "Nach dem Start diese Benutzerrechte annehmen (%s voreingestellt)."
--#: option.c:372
-+#: option.c:389
- msgid "Map DHCP vendor class to tag."
- msgstr "DHCP-\"vendor class\" auf Marke abbilden."
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr "dnsmasq-Version und Urheberrecht anzeigen."
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr "IPv4-Adressen von vorgelagerten Servern übersetzen."
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr "SRV-Eintrag festlegen."
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr "Diese Hilfe anzeigen. Benutzen Sie --help dhcp für bekannte DHCP-Optionen."
--#: option.c:377
-+#: option.c:394
- #, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr "Dateipfad für Prozesskennung (PID) festlegen (Voreinstellung: %s)."
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr "Höchstzahl der DHCP-Leases festlegen (%s voreingestellt)."
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr "DNS-Anfragen abhängig der Emfpangsschnittstelle beantworten."
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr "DNS-TXT-Eintrag festlegen."
--#: option.c:381
-+#: option.c:398
- msgid "Specify PTR DNS record."
- msgstr "DNS-PTR-Eintrag festlegen."
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr "Schnittstellennamen zur IPv4-Adresse des Interfaces auflösen."
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr "Nur an verwendete Schnittstellen binden."
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr "Statische DHCP-Host-Information aus %s lesen."
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr "DBus-Schnittstelle zum Festlegen vorgelagerter Server usw. festlegen."
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr "Auf dieser Schnittstelle kein DHCP anbieten, sondern nur DNS."
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr "Dynamische Adressbelegung für bootp einschalten."
--#: option.c:388
-+#: option.c:405
- msgid "Map MAC address (with wildcards) to option set."
- msgstr "MAC-Adresse (mit Jokerzeichen) auf Netzmarke abbilden."
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr "DHCP-Anfragen von Alias-Schnittstellen für die Hauptschnittstelle beantworten."
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr "ICMP-Echo-Adressprüfung im DHCP-Server abschalten."
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr "Skript, das bei Erzeugung/Löschung einer DHCP-Lease laufen soll."
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr "Lua-Skript, welches bei Erzeugung/Löschung eines DHCP-Leases laufen soll."
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr "Lease-Änderungs-Skript mit den Rechten dieses Nutzers ausführen."
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr "Konfiguration aus allen Dateien in diesem Verzeichnis lesen."
--#: option.c:395
-+#: option.c:412
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr "Für diese Syslog-Anlage oder in Datei loggen (Voreinstellung DAEMON)."
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr "Keine Lease-Datei benützen."
--#: option.c:397
-+#: option.c:414
- #, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr "Höchstzahl nebenläufiger DNS-Anfragen (%s voreingestellt)."
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr "DNS-Cache beim Neuladen von %s löschen."
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr "Von DHCP-Clients gelieferte Hostnamen ignorieren."
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr "Dateinamen und Server-Datenfehler für zusätzliche DHCP-Optionen NICHT wiederverwenden."
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr "Eingebauten Nur-Lese-TFTP-Server einschalten."
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr "Nur vom festgelegten Unterbaum Dateien per TFTP exportieren."
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr "IP-Adresse des Klienten an tftp-root anhängen."
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr "Zugriff nur auf Dateien gestatten, die dem dnsmasq aufrufenden Benutzer gehören."
--#: option.c:405
-+#: option.c:422
- #, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr "Höchstzahl nebenläufiger TFTP-Übertragungen (%s voreingestellt)."
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr "TFTP-Blockgrößen-Erweiterung abschalten."
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr "Konvertiere TFTP Dateinamen in Kleinschreibung"
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr "Bereich für vorübergehende Ports für TFTP-Übertragungen."
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr "Erweiterte DHCP-Protokollierung."
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr "Asynchrone Protokollierung einschalten, opt. Warteschlangenlänge festlegen."
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr "DNS-Rebinding unterbinden, private IP-Bereiche bei der Auflösung ausfiltern."
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr "Auflösung zu 127.0.0.0/8 erlauben, für RBL-Server."
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr "DNS-Rebind-Schutz für diese Domäne sperren."
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr "DNS-Anfragen immer an alle Server weiterleiten."
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr "Marke setzen, wenn Klient eine entsprechende Option anfragt."
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr "Alternative Ports für DHCP verwenden."
--#: option.c:417
-+#: option.c:434
- msgid "Specify NAPTR DNS record."
- msgstr "DNS-NAPTR-Eintrag festlegen."
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr "Niedrigsten verfügbaren Port für Übertragung von DNS-Anfragen festlegen."
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr "Für DHCP-Klienten nur vollständig bestimmte Domänennamen benutzen."
- # FIXME: probably typo in original message. -- MA
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr "Generiere Hostnamen auf Basis der MAC-Adresse für namenlose Klienten."
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr "Diese DHCP-Relais als vollwertige Proxies verwenden."
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr "Leute DHCP Anfragen an entfernten Server weiter"
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr "Alias für LOKALEN DNS-Namen festlegen."
--#: option.c:424
-+#: option.c:441
- msgid "Prompt to send to PXE clients."
- msgstr "Aufforderung, die an PXE-Klienten geschickt wird."
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr "Boot-Dienst für PXE-Menü."
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr "Konfigurationssyntax prüfen."
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr "Anfragende MAC-Adresse in die weiterleitende DNS-Anfrage einfügen"
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr "Füge das IP-Subnetz des Anfragenden in die weitergeleiteten DNS-Anfragen hinzu."
--#: option.c:429
-+#: option.c:446
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr "Proxy-DNSSEC-Validierung-Ergebnisse von Upstream-Namensservern."
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr "Versuche sequenzielle IP-Adressen an DHCP-Klienten zu vergeben."
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr "Kopiere \"connection-track mark\" von Anfragen nach Upstream-Verbindungen."
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr "Erlaube DHCP-Klienten ihre eigenen DDNS-Updates durchzuführen."
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr "Sende \"Router-Advertisments\" für Netzwerkschnittstellen, welche DHCPv6 nutzen"
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr "Spezifiziere DUID_EN-type DHCPv6 Server DUID"
--#: option.c:435
-+#: option.c:452
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr "Spezifiziere Host (A/AAAA und PTR) Einträge"
--#: option.c:436
-+#: option.c:453
- msgid "Specify arbitrary DNS resource record"
- msgstr "Spezifiziere einen beliebiegen DNS Eintrag"
--#: option.c:437
-+#: option.c:454
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr "Bindung zu Schnittstellen in Benutzung - prüfe auf neue Schnittstellen"
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr "Exportiere lokale Namen in das globale DNS"
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr "Domain für das Exportieren des globalen DNS"
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr "Setzte TTL für autoritative Antworten"
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr "Setze autoritative Zoneninformationen"
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr "Sekundärer autoritativer Nameserver für weitergeleitete Domains"
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr "Peers welche einen Zonentransfer durchführen dürfen"
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr "Spezifiziere IPSets zu welcher passende Domains hinzugefügt werden sollen"
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr "Spezifiziere eine Domain und Adressbereich für synthetisierte Namen"
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr "Aktiviere DNSSEC-Validierung"
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr "Spezifiziere Vertrauensursprung (Trust Anchor) der Schlüssel-Prüfdaten (Key Digest)."
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr "Deaktiviere die Überprüfung vorgelagerter Server für DNSSEC-Debugging"
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr "Stellt sicher, dass Antworten ohne DNSSEC sich in einer unsignierten Zone befinden."
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr "DNSSEC Signatur-Zeitstempel nicht prüfen, bis erstmalig der Cache neugeladen wird"
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr "Spezifiziere DHCPv6 Prefix Klasse"
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr "Setze Priorität, Intervall des erneuten Sendens und Router Lebenszeit"
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr "Protokolliere kein DHCP."
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr "Protokolliere kein DHCPv6."
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr "RA nicht protokollieren."
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr "Akzeptiere nur Anfragen von direkt verbundenen Netzwerken"
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr "Erkennen und Entfernen von DNS-Weiterleitungsschleifen"
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
-@@ -710,312 +743,312 @@ msgstr ""
- "Verwendung: dnsmasq [Optionen]\n"
- "\n"
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr "Auf der Befehlszeile nur kurze Optionen verwenden!\n"
--#: option.c:665
-+#: option.c:684
- #, c-format
- msgid "Valid options are:\n"
- msgstr "Gültige Optionen sind:\n"
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr "unzulässiger Port"
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr "Schnittstellenbindung nicht unterstützt"
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- msgid "bad interface name"
- msgstr "unzulässiger Schnittestellenname"
--#: option.c:792
-+#: option.c:811
- msgid "bad address"
- msgstr "Fehlerhafte Adresse"
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr "Nicht unterstützte Verkapselung für eine IPv6-Option"
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr "Fehlerhafte DHCP-Option"
--#: option.c:1056
-+#: option.c:1075
- msgid "bad IP address"
- msgstr "Fehlerhafte IP-Adresse"
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- msgid "bad IPv6 address"
- msgstr "Fehlerhafte IPv6-Adresse"
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr "Fehlerhafte Domäne in DHCP-Option"
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr "DHCP-Option zu lang"
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr "Unzulässige dhcp-match-Option"
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr "unzulässig wiederholte Markierung"
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr "unzulässig wiederholtes Schlüsselwort"
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, c-format
- msgid "cannot access directory %s: %s"
- msgstr "Kann auf Verzeichnis %s nicht zugreifen: %s"
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, c-format
- msgid "cannot access %s: %s"
- msgstr "Kann auf %s nicht zugreifen: %s"
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr "Die Einstellung Protokolliereinrichtung kann unter Android nicht gesetzt werden"
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr "Falsche Protokolliereinrichtung"
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr "unzulässige MX-Präferenz-Angabe"
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr "unzulässiger MX-Name"
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr "unzulässiges MX-Ziel"
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr "unter uClinux ist die Skriptausführung nicht möglich"
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr "Neuübersetzung mit HAVE_SCRIPT nötig, um Lease-Änderungs-Skripte auszuführen"
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr "Um Benutzerdefinierte Lua-Scripte zu ermöglichen, muss mit HAVE_LUASCRIPT neu kompiliert werden"
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- msgid "bad prefix"
- msgstr "unzulässiger Präfix"
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr "Um IPSet-Direktiven zu aktivieren, muss mit HAVE_IPSET neu übersetzt werden"
--#: option.c:2469
-+#: option.c:2545
- msgid "bad port range"
- msgstr "unzulässiger Portbereich"
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr "unzulässige Brücken-Schnittstelle"
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr "nur eine Marke zulässig"
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr "unzulässiger DHCP-Bereich"
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr "inkonsistenter DHCP-Bereich"
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr "Die Präfixlenge muss genau 64 für RA Subnetze sein"
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr "Die Präfixlenge muss genau 64 für Subnet Konstruktoren sein"
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr "Die Präfixlänge muss mindestens 64 sein"
--#: option.c:2660
-+#: option.c:2736
- msgid "inconsistent DHCPv6 range"
- msgstr "Inkonsistenter DHCPv6-Bereich"
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr "Prefix muss mit dem \"constructor:\" Argument Null sein"
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- msgid "bad hex constant"
- msgstr "Falscher Hexwert"
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr "Kann die Tags in --dhcp-host nicht abgleichen"
--#: option.c:2852
-+#: option.c:2928
- #, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr "doppelte dhcp-host IP-Adresse %s"
--#: option.c:2910
-+#: option.c:2986
- msgid "bad DHCP host name"
- msgstr "unzulässiger DHCP-Hostname"
--#: option.c:2992
-+#: option.c:3068
- msgid "bad tag-if"
- msgstr "unzulässige bedingte Marke (tag-if)"
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr "unzulässige Portnummer"
--#: option.c:3378
-+#: option.c:3454
- msgid "bad dhcp-proxy address"
- msgstr "Fehlerhafte DHCP-Proxy-Adresse"
--#: option.c:3404
-+#: option.c:3480
- msgid "Bad dhcp-relay"
- msgstr "unzulässiger dhcp-relay"
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr "unzulässige RA-Parameter"
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr "unzulässige DUID"
--#: option.c:3481
-+#: option.c:3557
- msgid "invalid alias range"
- msgstr "unzulässiger Alias-Bereich"
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr "unzulässiger CNAME"
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr "doppelter CNAME"
--#: option.c:3560
-+#: option.c:3636
- msgid "bad PTR record"
- msgstr "unzulässiger PTR-Eintrag"
--#: option.c:3591
-+#: option.c:3667
- msgid "bad NAPTR record"
- msgstr "unzulässiger NAPTR-Eintrag"
--#: option.c:3625
-+#: option.c:3701
- msgid "bad RR record"
- msgstr "unzulässiger RR-Eintrag"
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr "unzulässiger TXT-Eintrag"
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr "unzulässiger SRV-Eintrag"
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr "unzulässiges SRV-Ziel"
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr "unzulässige Priorität"
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr "unzulässige Wichtung"
--#: option.c:3748
-+#: option.c:3824
- msgid "Bad host-record"
- msgstr "unzulässiger host-record"
--#: option.c:3765
-+#: option.c:3841
- msgid "Bad name in host-record"
- msgstr "Unzulässiger Name in host-record"
--#: option.c:3826
-+#: option.c:3906
- msgid "bad trust anchor"
- msgstr "unzulässiger Vertrauensursprung (Trust Anchor)"
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr "unzulässiger Hexwert in Vertrauensursprung (Trust Anchor)"
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr "Nicht unterstützte Option (prüfen Sie, ob DNSMasq mit DHCP/TFTP/DNSSEC/DBus-Unterstützung übersetzt wurde)"
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr "fehlende \\\""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr "unzulässige Option"
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr "überschüssiger Parameter"
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr "fehler Parameter"
--#: option.c:3972
-+#: option.c:4052
- msgid "illegal option"
- msgstr "unzulässige Option"
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr "Fehler"
--#: option.c:3981
-+#: option.c:4061
- #, c-format
- msgid " at line %d of %s"
- msgstr " in Zeile %d von %s"
--#: option.c:4045 option.c:4168 tftp.c:667
--#, c-format
--msgid "cannot read %s: %s"
--msgstr "kann %s nicht lesen: %s"
--
--#: option.c:4229 option.c:4265
-+#: option.c:4076 option.c:4323 option.c:4359
- #, c-format
- msgid "read %s"
- msgstr "%s gelesen"
--#: option.c:4331
-+#: option.c:4139 option.c:4262 tftp.c:667
-+#, c-format
-+msgid "cannot read %s: %s"
-+msgstr "kann %s nicht lesen: %s"
-+
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr "Mist in der Kommandozeile gefunden"
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr "Dnsmasq Version %s  %s\n"
--#: option.c:4367
-+#: option.c:4461
- #, c-format
- msgid ""
- "Compile time options: %s\n"
-@@ -1024,90 +1057,90 @@ msgstr ""
- "Kompilierungs-Optionen %s\n"
- "\n"
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr "Für diese Software wird ABSOLUT KEINE GARANTIE gewährt.\n"
- # FIXME: this must be one long string! -- MA
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr "Dnsmasq ist freie Software, und du bist willkommen es weiter zu verteilen\n"
--#: option.c:4370
-+#: option.c:4464
- #, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr "unter den Bedingungen der GNU General Public Lizenz, Version 2 oder 3.\n"
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr "versuchen Sie --help"
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr "versuchen Sie -w"
--#: option.c:4385
-+#: option.c:4479
- #, c-format
- msgid "bad command line options: %s"
- msgstr "unzulässige Optionen auf der Befehlszeile: %s"
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr "kann Hostnamen nicht ermitteln: %s"
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr "mit -n/--no-poll ist nur eine resolv.conf-Datei zulässig."
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr "Um die Domäne zu lesen, muss genau eine resolv.conf-Datei verwendet werden."
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, c-format
- msgid "failed to read %s: %s"
- msgstr "konnte %s nicht lesen: %s"
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr "keine \"search\"-Anweisung in %s gefunden"
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr "Es muss eine standard Domain gesetzt sein, wenn --dhcp-fqdn gesetzt ist"
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr "Syntaxprüfung OK"
--#: forward.c:114
-+#: forward.c:111
- #, c-format
- msgid "failed to send packet: %s"
- msgstr "Fehlgeschlagen, folgendes Paket zu senden: %s"
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr "Verwerfe DNS Antwort: Subnetoption stimmt nicht überrein"
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr "Namensserver %s hat eine rekursive Anfrage verweigert"
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr "möglichen DNS-Rebind-Angriff entdeckt: %s"
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr "Ignoriere Anfragen vom nicht lokalen Netzwerk"
--#: forward.c:2101
-+#: forward.c:2178
- #, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr "Maximale Anzahl an nebenläufiger DNS-Anfragen erreicht (Max: %d)"
-@@ -1198,265 +1231,284 @@ msgstr "Benutze Namensserver %s#%d(via %s)"
- msgid "using nameserver %s#%d"
- msgstr "Benutze Namensserver %s#%d"
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
-+msgstr ""
-+
-+#: dnsmasq.c:156
-+#, fuzzy
-+msgid "no trust anchors provided for DNSSEC"
- msgstr "Keine Vertrauensursprünge (Trust Anchor) für DNSSEC verfügbar"
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:159
-+#, fuzzy
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
- msgstr "Kann die Standard Cachegröße nicht verkleinern, wenn DNSSEC aktiviert ist"
--#: dnsmasq.c:159
-+#: dnsmasq.c:161
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr "DNSSEC nicht verfügbar: setzen Sie HAVE_DNSSEC in src/config.h"
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr "TFTP-Server nicht verfügbar, setzen Sie HAVE_TFTP in src/config.h"
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+#, fuzzy
-+msgid "cannot use --conntrack AND --query-port"
- msgstr "Kann nicht --conntrack UND --query-port einsetzen"
--#: dnsmasq.c:173
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+#: dnsmasq.c:175
-+#, fuzzy
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr "Conntrack-Unterstützung nicht verfügbar: setze HAVE_CONNTRACK in src/config.h"
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr "asynchrone Protokollierung unter Solaris nicht verfügbar"
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr "Asynchrone Protokollierung unter Android nicht verfügbar"
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "Authoritatives DNS nicht verfügbar: Es muss HAVE_AUTH in src/config.h gesetzt sein"
--#: dnsmasq.c:193
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+#: dnsmasq.c:195
-+#, fuzzy
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr "Loop-Erkennung nicht verfügbar, setzen Sie HAVE_LOOP in src/config.h"
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr "Zonen Seriennummer muss mit --auth-soa konfiguriert werden"
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr "dhcp-range Konstruktor ist auf dieser Plattform nicht verfübar"
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr "Kann nicht --bind-interfaces und --bind-dynamic setzen"
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr "konnte Schnitstellenliste nicht beziehen: %s"
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr "unbekannte Schnittstelle %s"
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr "DBus-Fehler: %s"
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr "DBus nicht verfügbar: setzen Sie HAVE_DBUS in src/config.h"
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr "Unbekannter Benutzer oder Gruppe: %s"
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr "kann nicht ins Wurzelverzeichnis des Dateisystems wechseln: %s"
- # FIXME: this and the next would need commas after the version
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, c-format
- msgid "started, version %s DNS disabled"
- msgstr "gestartet, Version %s, DNS abgeschaltet"
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr "gestartet, Version %s, Cachegröße %d"
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr "Gestartet, Version %s Cache deaktiviert"
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr "Übersetzungsoptionen: %s"
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr "DBus-Unterstützung eingeschaltet: mit Systembus verbunden"
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr "DBus-Unterstützung eingeschaltet: warte auf Systembus-Verbindung"
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr "DNS-Dienst auf lokale Subnetze eingeschränkt"
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr "DNSSEC-Validierung aktiviert"
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr "DNSSEC Signatur-Zeitstempel werden erst ab dem ersten Neuladen des Caches überprüft"
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+#, fuzzy
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr "DNSSEC Signatur-Zeitstempel werden erst ab dem ersten Neuladen des Caches überprüft"
-+
-+#: dnsmasq.c:713
- #, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr "Warnung: konnte den Besitzer von %s nicht ändern: %s"
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr "Aktiviere --bind-interfaces wegen Einschränkungen des Betriebssystems"
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr "Warnung: Schnittstelle %s existiert derzeit nicht"
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr "Warnung: Ignoriere \"resolv-file\", weil \"no-resolv\" aktiv ist"
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- msgid "warning: no upstream servers configured"
- msgstr "Warnung: keine vorgelagerten (Upstream) Server konfiguriert"
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr "asynchrone Protokollierung eingeschaltet, Warteschlange fasst %d Nachrichten"
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr "IPv6-Router-Advertisement aktiviert"
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr "DHCP, Sockets exklusiv an das Interface %s gebunden"
- # FIXME: this and the next few must be full strings to be translatable - do not assemble in code"
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr "Wurzel ist "
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "enabled"
- msgstr "Aktiviert"
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr "sicherer Modus"
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr "Begrenze gleichzeitige TFTP-Übertragungen auf maximal %d"
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr "Mit System-DBus verbunden"
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr "kann nicht in den Hintergrund abspalten: %s"
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, c-format
- msgid "failed to create helper: %s"
- msgstr "kann Helfer nicht erzeugen: %s"
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr "kann \"capabilities\" nicht setzen: %s"
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr "Kann nicht Benutzerrechte %s annehmen: %s"
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr "Kann nicht Gruppenrechte %s annehmen: %s"
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr "kann die Prozessidentifikations-(PID)-Datei %s nicht öffnen: %s"
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, c-format
- msgid "cannot open log %s: %s"
- msgstr "Kann Logdatei %s nicht öffnen: %s"
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, c-format
- msgid "failed to load Lua script: %s"
- msgstr "Konnte Lua-Script nicht laden: %s"
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr "Das TFTP-Verzeichnis %s ist nicht zugreifbar: %s"
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, fuzzy, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr "kann Lease-Datei %s nicht öffnen: %s"
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr "Prüfe jetzt DNSSEC Signatur-Zeitstempel"
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr "Scriptprozess durch Signal %d getötet"
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr "Scriptprozess hat sich mit Status %d beendet"
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, c-format
- msgid "failed to execute %s: %s"
- msgstr "konnte %s nicht ausführen: %s"
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr "beende nach Empfang von SIGTERM"
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, c-format
- msgid "failed to access %s: %s"
- msgstr "konnte auf %s nicht zugreifen: %s"
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr "lese %s"
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, c-format
- msgid "no servers found in %s, will retry"
- msgstr "keine Server in %s gefunden, werde es später neu versuchen"
-@@ -1496,27 +1548,27 @@ msgstr "unbekannte Schnittstelle %s in bridge-interface"
- msgid "DHCP packet received on %s which has no address"
- msgstr "DHCP-Paket ohne Adresse an Schnittstelle %s empfangen"
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr "APR-Cache Injektion fehlgeschlagen: %s"
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr "DHCP-Bereich %s - %s passt nicht zur Netzmaske %s"
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr "ungültige Zeile %2$d in Datei %1$s"
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr "ignoriere %s Zeile %d, doppelter Name oder doppelte IP-Adresse"
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr "DHCP Weiterleitung %s -> %s"
-@@ -1591,12 +1643,12 @@ msgstr "%u Benutzerklasse: %s"
- msgid "disabled"
- msgstr "deaktiviert"
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr "ignoriert"
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr "Adresse in Nutzung"
-@@ -1616,7 +1668,7 @@ msgstr "Keine Adresse konfiguriert"
- msgid "no leases left"
- msgstr "Keine Leases übrig"
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr "%u Klient stellt Name bereit: %s"
-@@ -1625,7 +1677,7 @@ msgstr "%u Klient stellt Name bereit: %s"
- msgid "PXE BIS not supported"
- msgstr "PXE BIS nicht unterstützt"
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr "schalte statische DHCP-Adresse %s für %s ab"
-@@ -1663,7 +1715,7 @@ msgstr "Falsche Server-ID"
- msgid "wrong address"
- msgstr "Falsche Adresse"
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr "Lease nicht gefunden"
-@@ -1713,7 +1765,7 @@ msgstr "kann DHCP/BOOTP-Opition %d nicht setzen: kein Platz mehr im Paket"
- msgid "PXE menu too large"
- msgstr "PXE-Menüeintrag zu groß"
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, c-format
- msgid "%u requested options: %s"
- msgstr "%u angeforderte Optionen: %s"
-@@ -1728,7 +1780,7 @@ msgstr "Kann RFC3925-Option nicht senden: zu viele Optionen für Unternehmen Nr.
- msgid "cannot create netlink socket: %s"
- msgstr "kann Netlink-Socket nicht erzeugen: %s"
--#: netlink.c:347
-+#: netlink.c:348
- #, c-format
- msgid "netlink returns error: %s"
- msgstr "Netlink liefert Fehler %s"
-@@ -1846,63 +1898,63 @@ msgstr "Kein Adressbereich verfügbar für die DHCPv6-Anfrage via %s"
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr "%u verfügbare(s) DHCPv6-Subnetz: %s/%d"
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, c-format
- msgid "%u vendor class: %u"
- msgstr "%u Herstellerklasse: %u"
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, c-format
- msgid "%u client MAC address: %s"
- msgstr "%u Klient MAC-Adresse: %s"
- # FIXME: do not assemble
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, c-format
- msgid "unknown prefix-class %d"
- msgstr "unbekannte Präfixklasse %d"
--#: rfc3315.c:791 rfc3315.c:913
-+#: rfc3315.c:803 rfc3315.c:902
-+msgid "address unavailable"
-+msgstr "Adresse nicht verfügbar"
-+
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
- msgid "success"
- msgstr "Erfolg"
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
- msgid "no addresses available"
- msgstr "Keine Adressen verfügbar"
--#: rfc3315.c:865
--msgid "address unavailable"
--msgstr "Adresse nicht verfügbar"
--
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr "nicht on link"
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr "Keine Bindung gefunden"
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr "veraltet"
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- msgid "address invalid"
- msgstr "Adresse ungültig"
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr "Bestätigung fehlgeschlagen"
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- msgid "all addresses still on link"
- msgstr "Alle Adressen immer noch on link"
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr "Freigabe empfangen"
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr "Kann nicht zum DHCPv6 Server multicasten ohne korrekte Schnittstelle"
-@@ -1995,7 +2047,7 @@ msgstr "DHCP Weiterleitung von %s nach %s"
- msgid "cannot create ICMPv6 socket: %s"
- msgstr "Kann ICMPv6-Socket nicht erzeugen: %s"
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr "ignoriere Zonentransfer-Anfrage von %s"
-@@ -2010,54 +2062,89 @@ msgstr "konnte Kernelversion nicht finden: %s"
- msgid "failed to create IPset control socket: %s"
- msgstr "konnte IPset-Kontroll-Socket nicht erzeugen: %s"
-+#: dnssec.c:425 dnssec.c:469
-+#, fuzzy, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr "kann die Prozessidentifikations-(PID)-Datei %s nicht öffnen: %s"
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr "DNSSEC Speicher in Benutzung %u, Max %u, zugewiesen %u"
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr "Fehler: fill_addr falsch verwendet"
--#: tables.c:105
-+#: tables.c:109
- #, c-format
- msgid "failed to access pf devices: %s"
- msgstr "konnte auf pf Geräte nicht zugreifen: %s"
--#: tables.c:119
-+#: tables.c:123
- #, c-format
- msgid "warning: no opened pf devices %s"
- msgstr "Warnung: Keine geöffneten pf Geräte %s"
--#: tables.c:127
-+#: tables.c:131
- #, c-format
- msgid "error: cannot use table name %s"
- msgstr "Fehler: Kann Tabellenname %s nicht benutzen"
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr "Fehler: Kann den Tabellennamen %s nicht strlcpy"
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr "Warnung: pfr_add_tables: %s(%d)"
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr "Info: Tabelle erstellt"
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr "Warnung: DIOCR%sADDRS: %s"
--#: tables.c:162
-+#: tables.c:166
- #, c-format
- msgid "%d addresses %s"
- msgstr "%d Adressen %s"
-+#: inotify.c:46
-+#, fuzzy, c-format
-+msgid "failed to create inotify: %s"
-+msgstr "kann Helfer nicht erzeugen: %s"
-+
-+#: inotify.c:60
-+#, fuzzy, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr "kann Lease-Datei %s nicht öffnen: %s"
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, fuzzy, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr "Konnte Empfangs-Socket für %s: %s nicht erzeugen"
-+
-+#: inotify.c:97
-+#, fuzzy, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr "Kann auf Verzeichnis %s nicht zugreifen: %s"
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-+
- #~ msgid "no interface with address %s"
- #~ msgstr "keine Schnittstelle mit Adresse %s"
-diff --git a/po/es.po b/po/es.po
-index 0bdff67f720b..b85696072661 100644
---- a/po/es.po
-+++ b/po/es.po
-@@ -16,70 +16,70 @@ msgstr ""
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
--#: cache.c:908
-+#: cache.c:941
- #, fuzzy, c-format
- msgid "failed to load names from %s: %s"
- msgstr "no se pudo cargar nombres desde %s: %s"
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, fuzzy, c-format
- msgid "bad address at %s line %d"
- msgstr "dirección errónea en %s línea %d"
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr "nombre erróneo en %s línea %d"
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr "direcciónes %s - %d leídas"
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr "el caché fue liberado"
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr ""
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr "%s es un CNAME, no se le está dando concesión DHCP de %s"
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr "no otorgando nombre %s a concesión DHCP de %s porque el nombre existe en %s con dirección %s"
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr "tiempo %lu"
--#: cache.c:1367
-+#: cache.c:1422
- #, fuzzy, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr "tamaño de caché %d, %d/%d inserciónes de caché reutilizaron objetos no vencidos."
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr "búsquedas reenviadas %u, búsquedas respondidas localmente %u"
--#: cache.c:1372
-+#: cache.c:1427
- #, fuzzy, c-format
- msgid "queries for authoritative zones %u"
- msgstr "Fijar TTL para respuestas autoritarias"
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr "servidor %s#%d: búsquedas enviadas %u, reintentadas o fallidas %u"
-@@ -94,7 +94,7 @@ msgstr "no se pudo crear valor semilla para el generador de n
- msgid "failed to allocate memory"
- msgstr "no se pudo asignar memoria"
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr "no se pudo adquirir memoria"
-@@ -108,617 +108,650 @@ msgstr "no se puede crear pipe: %s"
- msgid "failed to allocate %d bytes"
- msgstr "no se pudo asignar %d bytes"
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr "infinito"
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr "Especificar dirección(es) locales dónde escuchar."
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr "Retornar ipaddr (dirección IP) para todos los hosts en los dominios especificados."
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr "Falsificar búsquedas reversas para rangos de dirección privados RFC1918."
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr "Tratar ipaddr (dirección IP) como NXDOMAIN (derrota comodín Verisign)."
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr "Especificar tamaño de caché en cuanto a cantidad de objetos (%s por predeterminado)."
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr "Especificar archivo de configuración (%s por predeterminado)."
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr "NO hacer un fork hacia el fondo: correr en modo debug."
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr "NO reenviar búsquedas sin parte de dominio."
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr "Retornar expedientes MX auto-señaladores para hosts locales."
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr "Expandir nombres simples en /etc/hosts con domain-suffix (sufijo de dominio)."
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr "No reenviar pedidos DNS falsos desde máquinas Windows."
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr "Habilitar DHCP dentro del rango brindado con duración de concesión."
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr "Cambiar a este grupo después del inicio (%s por predeterminado)."
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr "Fijar dirección o nombre de host para una máquina especificada."
--#: option.c:332
-+#: option.c:344
- #, fuzzy
- msgid "Read DHCP host specs from file."
- msgstr "Leer especificaciones DHCP de host desde archivo"
--#: option.c:333
-+#: option.c:345
- #, fuzzy
- msgid "Read DHCP option specs from file."
- msgstr "Leer opciones DHCP de host desde archivo"
--#: option.c:334
-+#: option.c:346
-+#, fuzzy
-+msgid "Read DHCP host specs from a directory."
-+msgstr "Leer especificaciones DHCP de host desde archivo"
-+
-+#: option.c:347
-+#, fuzzy
-+msgid "Read DHCP options from a directory."
-+msgstr "Leer opciones DHCP de host desde archivo"
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr "Evaluar expresión condicional de etiqueta."
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr "NO cargar archivo %s."
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr "Especificar un archivo de hosts para ser leído adicionalmente a %s."
--#: option.c:337
-+#: option.c:351
-+#, fuzzy
-+msgid "Read hosts files from a directory."
-+msgstr "Leer especificaciones DHCP de host desde archivo"
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr "Especificar interfase(s) donde escuchar."
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr "Especificar interfase(s) donde NO escuchar."
--#: option.c:339
-+#: option.c:354
- #, fuzzy
- msgid "Map DHCP user class to tag."
- msgstr "Trazar clase de usuario DHCP a etiqueta."
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr "Trazar circuit-id (identificación de circuito) RFC3046 a etiqueta."
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr "Trazar remote-id (identificación remota) RFC3046 a etiqueta."
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr "Trazar subscriber-id (identificación de suscritor) RFC3993 a etiqueta."
--#: option.c:343
-+#: option.c:358
- #, fuzzy
- msgid "Don't do DHCP for hosts with tag set."
- msgstr "No hacer DHCP para hosts con etiqueta fijada."
--#: option.c:344
-+#: option.c:359
- #, fuzzy
- msgid "Force broadcast replies for hosts with tag set."
- msgstr "Forzar respuestas broadcast para hosts con etiqueta fijada."
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr "NO hacer un fork hacia el fondo, NO correr en modo debug."
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr "Asumir que somos el único servidor DHCP en la red local."
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr "Especificar donde almacenar concesión DHCP (%s por predeterminado)."
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr "Retornar expedientes MX para hosts locales."
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr "Especificar un expediente MX."
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr "Especificar opciones BOOTP a servidor DHCP."
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr "NO revisar archivo %s periódicamente, recargar solo con SIGHUP."
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr "NO almacenar en caché resultados de búsquedas fallidas."
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr "Usar servidores DNS estrictamente en el órden brindado en %s."
--#: option.c:354
-+#: option.c:369
- #, fuzzy
- msgid "Specify options to be sent to DHCP clients."
- msgstr "Especificar opciones para ser enviadas a clientes DHCP."
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr "Opción DHCP enviada aún si el cliente no la pide."
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr "Especificar puerto donde escuchar por búsquedas DNS (53 por predeterminado)."
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr "Tamaño máximo de paquetes UDP soportado para EDNS.0 (%s por predeterminado)."
--#: option.c:358
-+#: option.c:373
- #, fuzzy
- msgid "Log DNS queries."
- msgstr "Bitacorear búsquedas DNS."
--#: option.c:359
-+#: option.c:374
- #, fuzzy
- msgid "Force the originating port for upstream DNS queries."
- msgstr "Enforzar el puerto original para búsquedas DNS subida."
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr "NO leer resolv.conf."
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Especificar el path hacia resolv.conf (%s por predeterminado)."
--#: option.c:362
-+#: option.c:377
- #, fuzzy
- msgid "Specify path to file with server= options"
- msgstr "Especificar path de archivo PID (%s por predeterminado)."
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Especificar dirección(es) de servidores subida con dominios opcionales."
--#: option.c:364
-+#: option.c:379
- #, fuzzy
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr "Especificar dirección(es) de servidores subida con dominios opcionales."
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr "Nunca reenviar búsquedas a dominios especificados."
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr "Especificar el dominio para ser asignado en concesión DHCP."
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr "Especificar destino predeterminado en un expediente MX."
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr "Especificar tiempo de vida en segundos para respuestas desde /etc/hosts."
--#: option.c:369
-+#: option.c:384
- #, fuzzy
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr "Especificar tiempo de vida en segundos para caché negativo."
--#: option.c:370
-+#: option.c:385
- #, fuzzy
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr "Especificar tiempo de vida en segundos para respuestas desde /etc/hosts."
--#: option.c:371
-+#: option.c:386
-+#, fuzzy
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr "Especificar tiempo de vida en segundos para caché negativo."
-+
-+#: option.c:387
-+#, fuzzy
-+msgid "Specify time-to-live floor for cache."
-+msgstr "Especificar tiempo de vida en segundos para caché negativo."
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr "Cambiar a este usuario despues del inicio (%s por predeterminado)."
--#: option.c:372
-+#: option.c:389
- #, fuzzy
- msgid "Map DHCP vendor class to tag."
- msgstr "Trazar clase de vendedor DHCP a etiqueta."
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr "Mostrar información sobre la versión y copyright de dnsmasq."
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr "Traducir direcciones IPv4 desde servidores subida."
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr "Especificar un expediente SRV."
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr "Mostrar este mensaje. Usar --help dhcp para opciones DHCP conocidas."
--#: option.c:377
-+#: option.c:394
- #, fuzzy, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr "Especificar path de archivo PID (%s por predeterminado)."
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr "Especificar número máximo de concesión DHCP (%s por predeterminado)."
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr "Responder a búsquedas DNS en base a la interfase a la cuál fueron enviadas."
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr "Especificar expediente DNS TXT."
--#: option.c:381
-+#: option.c:398
- #, fuzzy
- msgid "Specify PTR DNS record."
- msgstr "Especificar expediente DNS PTR."
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr "Otorgar nombre DNS a dirección IPv4 de interfase."
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr "Acoplar solo a interfases en uso."
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr "Leer información sobre hosts DHCP estáticos desde %s."
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr "Habilitar la interfase DBus para fijar servidores subida, etc."
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr "No proveer DHCP en esta interfase, sólo proveer DNS."
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr "Habilitar alocación dinámica de direcciónes para BOOTP."
--#: option.c:388
-+#: option.c:405
- #, fuzzy
- msgid "Map MAC address (with wildcards) to option set."
- msgstr "Trazar dirección MAC (con comodínes) a opción fijada."
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr "Tratar pedidos DHCP en alias como si llegaran de la interfase."
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr "Deshabilitar verificación de direcciónes para echo ICMP en el servidor DHCP."
--#: option.c:391
-+#: option.c:408
- #, fuzzy
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr "Archivo guión para ejecutar cuando se crea o destruye una concesión DHCP."
--#: option.c:392
-+#: option.c:409
- #, fuzzy
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr "Archivo guión para ejecutar cuando se crea o destruye una concesión DHCP."
--#: option.c:393
-+#: option.c:410
- #, fuzzy
- msgid "Run lease-change scripts as this user."
- msgstr "Correr archivo guión de cambio de concesión como este usuario."
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr "Leer configuración desde todos los archivos en este directorio."
--#: option.c:395
-+#: option.c:412
- #, fuzzy
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr "Bitacorear a esta facilidad syslog o archivo. (DAEMON por predeterminado)"
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr "No usar archivo de concesión."
--#: option.c:397
-+#: option.c:414
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr "Número máximo de búsquedas DNS simultáneas. (%s por predeterminado)"
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr "Liberar caché DNS al recargar %s."
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr "Ignorar nombres de host brindados por clientes DHCP."
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr "NO reutilizar campos de nombre de archivo y servidor para opciones DHCP extra."
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr "Habilitar servidor integrado TFTP solo-lectura."
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr "Exportar archivos vía TFTP solo del sub-árbol especificado."
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr "Agregar IP de cliente a tftp-root."
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr "Permitir acceso solo a archivos pertenecientes al usuario que corre dnsmasq."
--#: option.c:405
-+#: option.c:422
- #, fuzzy, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr "Número máximo de transferencias TFTP simultáneas (%s por predeterminado)."
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr "Deshabilitar la extensión TFTP blocksize (tamaño de bloque)."
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr "Convertir a minúsculas los nombres de archivos TFTP"
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr "Rango de puertos efímeros para ser usados en transferencias TFTP."
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr "Log extra para DHCP."
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr "Habilitar registro asíncrono; opcionalmente fijar tamaño de cola."
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr "Detener revinculación DNS. Filtrar rangos de IP privados al resolver."
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr "Permitir revinculación de 127.0.0.0/8, para servidores RBL."
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr "Inhibir protección de revinculación DNS en este dominio."
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr "Siempre realizar búsquedas DNS a todos los servidores."
--#: option.c:415
-+#: option.c:432
- #, fuzzy
- msgid "Set tag if client includes matching option in request."
- msgstr "Fijar etiqueta si cliente incluye opción coincidente en pedido."
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr "Usar puertos alternativos para DHCP."
--#: option.c:417
-+#: option.c:434
- #, fuzzy
- msgid "Specify NAPTR DNS record."
- msgstr "Especificar expediente DNS NAPTR."
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr "Especificar puerto más bajo disponible para transmisión de búsquedas DNS."
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr "Usar solo nombres de dominio completamente calificados para clientes DHCP."
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr "Generar hostnames basados en direcciones MAC para clientes sin nombre."
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr "Usar estos relays DHCP como proxies completos."
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr ""
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr "Especificar nombre alias para nombre DNS LOCAL."
--#: option.c:424
-+#: option.c:441
- #, fuzzy
- msgid "Prompt to send to PXE clients."
- msgstr "Aviso a ser enviado a clientes PXE."
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr "Servicio de arranque para menú PXE."
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr "Revisar sintaxis de configuración."
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr "Añadir direcciones MAC de los peticionarios a los filtros DNS enviados"
--#: option.c:428
-+#: option.c:445
- #, fuzzy
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr "Añadir direcciones MAC de los peticionarios a los filtros DNS enviados"
--#: option.c:429
-+#: option.c:446
- #, fuzzy
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr "Traducir direcciones IPv4 desde servidores subida."
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr "Intento de instaurar direcciones IP secuenciales a cliente DHCP"
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr "Copiar la marca de connection-track desde los filtros a las conexiones salientes"
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr "Permite a clientes DHCP realizar sus propias actualizaciones DDNS"
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr "Enviar anuncios del router a los interfases realizando DHCPv6"
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr ""
--#: option.c:435
-+#: option.c:452
- #, fuzzy
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr "Especificar un expediente MX."
--#: option.c:436
-+#: option.c:453
- #, fuzzy
- msgid "Specify arbitrary DNS resource record"
- msgstr "Especificar expediente DNS TXT."
--#: option.c:437
-+#: option.c:454
- #, fuzzy
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr "interfase desconocida %s en bridge-interfase"
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr "Exportar nombres DNS locales a globales"
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr "Dominio a exportar a DNS global"
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr "Fijar TTL para respuestas autoritarias"
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr "Fijar información de zona autoritaria"
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr "Nombres de servidor secundario autoritatorios para dominios enviados"
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr "Colegas autorizados a la zona de transferencia (transfer)"
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr "Especificar los ipsets coincidentes en dominio que debrían ser añadidos"
--#: option.c:445
-+#: option.c:462
- #, fuzzy
- msgid "Specify a domain and address range for synthesised names"
- msgstr "Especificar dominio y rango de direcciones para los nombres acrónimos"
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr "Especificar prefijo de clase DHCPv6"
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
-@@ -727,335 +760,335 @@ msgstr ""
- "Modo de uso: dnsmasq [opciones]\n"
- "\n"
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr "Usar opciones cortas solo en la línea de comandos.\n"
--#: option.c:665
-+#: option.c:684
- #, fuzzy, c-format
- msgid "Valid options are:\n"
- msgstr "Opciones válidas son :\n"
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr "puerto erróneo"
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr "vinculación de interfase no está soportado"
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- #, fuzzy
- msgid "bad interface name"
- msgstr "nombre de interfase erróneo"
--#: option.c:792
-+#: option.c:811
- #, fuzzy
- msgid "bad address"
- msgstr "dirección IP errónea"
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr "Encapsulación no soportada para opción IPv6"
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr "opción dhcp-option errónea"
--#: option.c:1056
-+#: option.c:1075
- #, fuzzy
- msgid "bad IP address"
- msgstr "dirección IP errónea"
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- #, fuzzy
- msgid "bad IPv6 address"
- msgstr "dirección IP errónea"
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr "dominio erróneo en dhcp-option"
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr "opción dhcp-option demasiado larga"
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr "dhcp-match ilegal"
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr "opción repetida ilegal"
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr "palabra clave repetida ilegal"
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, fuzzy, c-format
- msgid "cannot access directory %s: %s"
- msgstr "no se puede acceder a directorio %s: %s"
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, fuzzy, c-format
- msgid "cannot access %s: %s"
- msgstr "no se puede acceder %s: %s"
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr "la creación de un registro no es posible en Android"
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr "ubicación del registro errónea"
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr "preferencia MX errónea"
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr "nombre MX erróneo"
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr "destino MX erróneo"
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr "no se pueden correr archivos 'script' bajo uClinux"
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr "recompilar con HAVE_SCRIPT definido para habilitar guiónes de cambio de concesión"
--#: option.c:1687
-+#: option.c:1714
- #, fuzzy
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr "recompilar con HAVE_SCRIPT definido para habilitar 'scripts' en Lua"
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- #, fuzzy
- msgid "bad prefix"
- msgstr "prefijo erróneo"
--#: option.c:2289
-+#: option.c:2352
- #, fuzzy
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr "recompilar con HAVE_SCRIPT definido para habilitar directivas ipset"
--#: option.c:2469
-+#: option.c:2545
- #, fuzzy
- msgid "bad port range"
- msgstr "rango de puertos erróneo"
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr "opción bridge-interface (interfase puente) errónea"
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr "solo una etiqueta permitida"
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr "opción dhcp-range (rango DHCP) errónea"
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr "rango DHCP inconsistente"
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr "la longitud del prefijo debe ser 64 exacto para subredes RA"
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr "la longitud del prefijo debe ser 64 exacto para subredes constructoras"
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr "la longitud del prefijo debe ser al menos 64"
--#: option.c:2660
-+#: option.c:2736
- #, fuzzy
- msgid "inconsistent DHCPv6 range"
- msgstr "rango DHCP inconsistente"
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr "prefijo debe ser cero con argumento \"constructor:\""
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- #, fuzzy
- msgid "bad hex constant"
- msgstr "constante hexadecimal errónea"
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr "no coinciden etiquetas en --dhcp-host"
--#: option.c:2852
-+#: option.c:2928
- #, fuzzy, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr "dirección IP duplicada %s en %s."
--#: option.c:2910
-+#: option.c:2986
- #, fuzzy
- msgid "bad DHCP host name"
- msgstr "nombre de host DHCP erróneo"
--#: option.c:2992
-+#: option.c:3068
- #, fuzzy
- msgid "bad tag-if"
- msgstr "etiqueta tag-if errónea"
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr "número de puerto inválido"
--#: option.c:3378
-+#: option.c:3454
- #, fuzzy
- msgid "bad dhcp-proxy address"
- msgstr "dirección IP errónea"
--#: option.c:3404
-+#: option.c:3480
- #, fuzzy
- msgid "Bad dhcp-relay"
- msgstr "opción dhcp-range (rango DHCP) errónea"
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr "DUID erróneo"
--#: option.c:3481
-+#: option.c:3557
- #, fuzzy
- msgid "invalid alias range"
- msgstr "rango alias inválido"
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr "CNAME erróneo"
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr "CNAME duplicado"
--#: option.c:3560
-+#: option.c:3636
- #, fuzzy
- msgid "bad PTR record"
- msgstr "registro PTR erróneo"
--#: option.c:3591
-+#: option.c:3667
- #, fuzzy
- msgid "bad NAPTR record"
- msgstr "registro NAPTR erróneo"
--#: option.c:3625
-+#: option.c:3701
- #, fuzzy
- msgid "bad RR record"
- msgstr "registro PTR erróneo"
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr "registro TXT erróneo"
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr "registro SRV erróneo"
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr "destino SRV erróneo"
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr "prioridad inválida"
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr "peso inválido"
--#: option.c:3748
-+#: option.c:3824
- #, fuzzy
- msgid "Bad host-record"
- msgstr "registro PTR erróneo"
--#: option.c:3765
-+#: option.c:3841
- #, fuzzy
- msgid "Bad name in host-record"
- msgstr "nombre erróneo en %s"
--#: option.c:3826
-+#: option.c:3906
- #, fuzzy
- msgid "bad trust anchor"
- msgstr "rango de puertos erróneo"
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- #, fuzzy
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr "opción no soportada (verificar que dnsmasq fue compilado con soporte para DHCP/TFTP/DBus)"
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr "falta \""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr "opción errónea"
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr "parámetro extraño"
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr "parámetro ausente"
--#: option.c:3972
-+#: option.c:4052
- #, fuzzy
- msgid "illegal option"
- msgstr "opción errónea"
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr "error"
--#: option.c:3981
-+#: option.c:4061
- #, fuzzy, c-format
- msgid " at line %d of %s"
- msgstr "%s en línea %d de %%s"
--#: option.c:4045 option.c:4168 tftp.c:667
--#, c-format
--msgid "cannot read %s: %s"
--msgstr "no se puede leer %s: %s"
--
--#: option.c:4229 option.c:4265
-+#: option.c:4076 option.c:4323 option.c:4359
- #, fuzzy, c-format
- msgid "read %s"
- msgstr "lee %s"
--#: option.c:4331
-+#: option.c:4139 option.c:4262 tftp.c:667
-+#, c-format
-+msgid "cannot read %s: %s"
-+msgstr "no se puede leer %s: %s"
-+
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr "basura encontrada en linea de comando"
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr "Versión dnsmasq %s  %s\n"
--#: option.c:4367
-+#: option.c:4461
- #, fuzzy, c-format
- msgid ""
- "Compile time options: %s\n"
-@@ -1064,90 +1097,90 @@ msgstr ""
- "Opciones de compilación %s\n"
- "\n"
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr "Este software viene SIN NINGUNA GARANTIA.\n"
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr "Dnsmasq es software libre, y usted está autorizado a redistribuirlo\n"
--#: option.c:4370
-+#: option.c:4464
- #, fuzzy, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr "bajo los términos de la GNU General Public License, versión 2 o 3.\n"
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr "pruebe --help"
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr "pruebe -w"
--#: option.c:4385
-+#: option.c:4479
- #, fuzzy, c-format
- msgid "bad command line options: %s"
- msgstr "opciones de línea de comandos erróneas: %s"
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr "no se puede obtener host-name (nombre de host): %s"
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr "solo un archivo resolv.conf está permitido en modo no-poll."
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr "debe haber exáctamente un resolv.conf desde donde leer dominio."
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, fuzzy, c-format
- msgid "failed to read %s: %s"
- msgstr "no se pudo leer %s: %s"
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr "ninguna directiva de búsqueda encontrada en %s"
--#: option.c:4513
-+#: option.c:4614
- #, fuzzy
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr "debe haber un dominio predeterminado cuando --dhcp-fqdn está fijado"
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr "revisión de sintaxis OK"
--#: forward.c:114
-+#: forward.c:111
- #, fuzzy, c-format
- msgid "failed to send packet: %s"
- msgstr "no se pudo escuchar en socket: %s"
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr "servidor DNS %s rechazó realizar una búsqueda recursiva"
--#: forward.c:629
-+#: forward.c:627
- #, fuzzy, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr "posible ataque de revinculación DNS detectado"
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
--#: forward.c:2101
-+#: forward.c:2178
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr "Número máximo de búsquedas DNS simultáneas alcanzado. (%s por predeterminado)"
-@@ -1237,272 +1270,286 @@ msgstr "usando nombre de servidor %s#%d(v
- msgid "using nameserver %s#%d"
- msgstr "usando nombre de servidor %s#%d"
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+#: dnsmasq.c:161
- #, fuzzy
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr "DBus no disponible: fijar HAVE_DBUS en src/config.h"
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- #, fuzzy
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr "servidor TFTP no disponible: fijar HAVE_TFTP en src/config.h"
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+#, fuzzy
-+msgid "cannot use --conntrack AND --query-port"
- msgstr "No puede usar --conntrack AND --query-port"
--#: dnsmasq.c:173
-+#: dnsmasq.c:175
- #, fuzzy
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr "servidor TFTP no disponible: fijar HAVE_TFTP en src/config.h"
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- #, fuzzy
- msgid "asychronous logging is not available under Solaris"
- msgstr "registro asíncrono no está disponible bajo Solaris"
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- #, fuzzy
- msgid "asychronous logging is not available under Android"
- msgstr "registro asíncrono no está disponible bajo Solaris"
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- #, fuzzy
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "DBus no disponible: fijar HAVE_DBUS en src/config.h"
--#: dnsmasq.c:193
-+#: dnsmasq.c:195
- #, fuzzy
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr "servidor TFTP no disponible: fijar HAVE_TFTP en src/config.h"
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr "zona serie debe ser configurada en --auth-soa"
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr "constructor rango dhcp no disponible en esta plataforma"
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr "no puede usar --bind-interfases y --bind-dynamic"
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr "no se pudo encontrar lista de interfases: %s"
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr "interfase desconocida %s"
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr "error DBus: %s"
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr "DBus no disponible: fijar HAVE_DBUS en src/config.h"
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr "usuario o grupo desconocido: %s"
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr "no se puede cambiar directorio a raíz de sistema de archivos: %s"
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, fuzzy, c-format
- msgid "started, version %s DNS disabled"
- msgstr "iniciado, versión %s DNS deshabilitado"
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr "iniciado, versión %s tamaño de caché %d"
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr "iniciado, versión %s caché deshabilitado"
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr "opciones de compilación: %s"
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr "soporte DBus habilitado: conectado a bus de sistema"
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr "soporte DBus habilitado: conexión a bus pendiente"
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
-+#: dnsmasq.c:713
- #, fuzzy, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr "advertencia: no se pudo cambiar propietario de %s: %s"
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr "fijando opción --bind-interfases debido a limitaciones de sistema operativo"
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr "advertencia: interfase %s no existe actualmente"
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr "advertencia: ignorando opción resolv-file porque no-resolv está fijado"
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- #, fuzzy
- msgid "warning: no upstream servers configured"
- msgstr "advertencia: ningún servidor de subida configurado"
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr "registro asíncrono habilitado, el límite de la cola es %d mensajes"
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr "Anuncio de router IPv6 habilitado"
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr "root está "
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- #, fuzzy
- msgid "enabled"
- msgstr "habilitado"
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr "modo seguro"
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr "limitando número máximo de transferencias TFTP simultáneas a %d"
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr "conectado a DBus de sistema"
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr "no se puede hacer fork en background: %s"
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, fuzzy, c-format
- msgid "failed to create helper: %s"
- msgstr "no se pudo crear ayudante: %s"
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, fuzzy, c-format
- msgid "setting capabilities failed: %s"
- msgstr "configuración de capacidades ha fallado: %s"
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, fuzzy, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr "no se pudo cambiar user-id a %s: %s"
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, fuzzy, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr "no se pudo cambiar group-id a %s: %s"
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, fuzzy, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr "no se pudo abrir archivo PID %s: %s"
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, fuzzy, c-format
- msgid "cannot open log %s: %s"
- msgstr "no se puede abrir registro %s: %s"
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, fuzzy, c-format
- msgid "failed to load Lua script: %s"
- msgstr "no se pudo cargar script Lua %s: %s"
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr "directorio TFTP % inaccesible: %s"
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, fuzzy, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr "no se puede abrir o crear archivo de concesión %s: %s"
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, fuzzy, c-format
- msgid "script process killed by signal %d"
- msgstr "proceso script eliminado por señal %d"
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, fuzzy, c-format
- msgid "script process exited with status %d"
- msgstr "proceso script salió con con estado %d"
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, fuzzy, c-format
- msgid "failed to execute %s: %s"
- msgstr "no se pudo ejecutar %s: %s"
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr "saliendo al recibir SIGTERM"
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, fuzzy, c-format
- msgid "failed to access %s: %s"
- msgstr "no se pudo acceder %s: %s"
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr "leyendo %s"
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, fuzzy, c-format
- msgid "no servers found in %s, will retry"
- msgstr "ningún servidor encontrado en %s, se reintentará"
-@@ -1542,27 +1589,27 @@ msgstr "interfase desconocida %s en bridge-interface"
- msgid "DHCP packet received on %s which has no address"
- msgstr "Paquete DHCP recibido en %s que no tiene dirección"
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr "rango DHCP %s -- %s no coincide con máscara de subred %s"
--#: dhcp.c:807
-+#: dhcp.c:812
- #, fuzzy, c-format
- msgid "bad line at %s line %d"
- msgstr "línea errónea en %s línea %d"
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr "ignorando %s línea %d, nombre o dirección IP duplicada"
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr "DHCP relay %s -> %s"
-@@ -1633,12 +1680,12 @@ msgstr "%u Clase de usuario: %s"
- msgid "disabled"
- msgstr "deshabilitado"
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr "ignorado"
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr "dirección en uso"
-@@ -1658,7 +1705,7 @@ msgstr "ninguna direcci
- msgid "no leases left"
- msgstr "no sobra ninguna concesión"
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, fuzzy, c-format
- msgid "%u client provides name: %s"
- msgstr "%u cliente provee nombre: %s"
-@@ -1667,7 +1714,7 @@ msgstr "%u cliente provee nombre: %s"
- msgid "PXE BIS not supported"
- msgstr "no hay soporte para BIS PXE"
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, fuzzy, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr "deshabilitando dirección DHCP estática %s para %s"
-@@ -1703,7 +1750,7 @@ msgstr "ID de servidor equivocada"
- msgid "wrong address"
- msgstr "dirección equivocada"
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr "concesión no encontrada"
-@@ -1753,7 +1800,7 @@ msgstr "no se puede enviar opci
- msgid "PXE menu too large"
- msgstr "menú PXE demasiado largo"
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, fuzzy, c-format
- msgid "%u requested options: %s"
- msgstr "%u opciones solicitadas: %s"
-@@ -1768,7 +1815,7 @@ msgstr "no se puede enviar opci
- msgid "cannot create netlink socket: %s"
- msgstr "no se puede crear zócalo netlink: %s"
--#: netlink.c:347
-+#: netlink.c:348
- #, fuzzy, c-format
- msgid "netlink returns error: %s"
- msgstr "netlink retorna error: %s"
-@@ -1886,66 +1933,66 @@ msgstr "ning
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr "%u Subred DHCP disponible: %s/%s"
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, fuzzy, c-format
- msgid "%u vendor class: %u"
- msgstr "%u Clase de vendedor: %s"
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, fuzzy, c-format
- msgid "%u client MAC address: %s"
- msgstr "%u cliente provee nombre: %s"
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, fuzzy, c-format
- msgid "unknown prefix-class %d"
- msgstr "clase de prefijo desconocida"
--#: rfc3315.c:791 rfc3315.c:913
-+#: rfc3315.c:803 rfc3315.c:902
-+#, fuzzy
-+msgid "address unavailable"
-+msgstr "dirección no disponible"
-+
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
- msgid "success"
- msgstr ""
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
- #, fuzzy
- msgid "no addresses available"
- msgstr "ninguna dirección disponible"
--#: rfc3315.c:865
--#, fuzzy
--msgid "address unavailable"
--msgstr "dirección no disponible"
--
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr "no en el enlace"
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr "uniones no encontradas"
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr "descartado"
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- #, fuzzy
- msgid "address invalid"
- msgstr "dirección en uso"
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr "confirmación falló"
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- #, fuzzy
- msgid "all addresses still on link"
- msgstr "dirección errónea en %s línea %d"
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr "concesión recibida"
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr "No puede hacer multicast DHCPv6 sin el interfase correcto"
-@@ -2038,7 +2085,7 @@ msgstr ""
- msgid "cannot create ICMPv6 socket: %s"
- msgstr "no se puede crear socket DHCP: %s"
--#: auth.c:429
-+#: auth.c:436
- #, fuzzy, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr "pedido no-soportado desde %s"
-@@ -2053,54 +2100,89 @@ msgstr "no se pudo acoplar socket de servidor DHCP: %s"
- msgid "failed to create IPset control socket: %s"
- msgstr "no se pudo crear socket TFTP: %s"
-+#: dnssec.c:425 dnssec.c:469
-+#, fuzzy, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr "no se pudo abrir archivo PID %s: %s"
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
--#: tables.c:105
-+#: tables.c:109
- #, fuzzy, c-format
- msgid "failed to access pf devices: %s"
- msgstr "no se pudo acceder %s: %s"
--#: tables.c:119
-+#: tables.c:123
- #, fuzzy, c-format
- msgid "warning: no opened pf devices %s"
- msgstr "usando direcciones locales solo para %s %s"
--#: tables.c:127
-+#: tables.c:131
- #, fuzzy, c-format
- msgid "error: cannot use table name %s"
- msgstr "no se puede obtener host-name (nombre de host): %s"
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
--#: tables.c:162
-+#: tables.c:166
- #, fuzzy, c-format
- msgid "%d addresses %s"
- msgstr "dirección IP errónea"
-+#: inotify.c:46
-+#, fuzzy, c-format
-+msgid "failed to create inotify: %s"
-+msgstr "no se pudo crear ayudante: %s"
-+
-+#: inotify.c:60
-+#, fuzzy, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr "no se puede abrir o crear archivo de concesión %s: %s"
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, fuzzy, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr "no se pudo crear un zócalo de escucha: %s"
-+
-+#: inotify.c:97
-+#, fuzzy, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr "no se puede acceder a directorio %s: %s"
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-+
- #~ msgid "no interface with address %s"
- #~ msgstr "ninguna interfase con dirección %s"
-diff --git a/po/fi.po b/po/fi.po
-index 36f430986e79..760b08107510 100644
---- a/po/fi.po
-+++ b/po/fi.po
-@@ -16,70 +16,70 @@ msgstr ""
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
--#: cache.c:908
-+#: cache.c:941
- #, c-format
- msgid "failed to load names from %s: %s"
- msgstr ""
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr ""
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr ""
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr ""
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr ""
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr ""
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr ""
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr ""
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr ""
--#: cache.c:1367
-+#: cache.c:1422
- #, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr ""
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr ""
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr ""
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr ""
-@@ -93,7 +93,7 @@ msgstr ""
- msgid "failed to allocate memory"
- msgstr ""
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr ""
-@@ -107,990 +107,1018 @@ msgstr ""
- msgid "failed to allocate %d bytes"
- msgstr ""
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr ""
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr ""
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr ""
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr ""
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr ""
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr ""
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr ""
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr ""
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr ""
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr ""
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr ""
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr ""
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr ""
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr ""
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr ""
--#: option.c:332
-+#: option.c:344
- msgid "Read DHCP host specs from file."
- msgstr ""
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr ""
--#: option.c:334
-+#: option.c:346
-+msgid "Read DHCP host specs from a directory."
-+msgstr ""
-+
-+#: option.c:347
-+msgid "Read DHCP options from a directory."
-+msgstr ""
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr ""
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr ""
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr ""
--#: option.c:337
-+#: option.c:351
-+msgid "Read hosts files from a directory."
-+msgstr ""
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr ""
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr ""
--#: option.c:339
-+#: option.c:354
- msgid "Map DHCP user class to tag."
- msgstr ""
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr ""
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr ""
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr ""
--#: option.c:343
-+#: option.c:358
- msgid "Don't do DHCP for hosts with tag set."
- msgstr ""
--#: option.c:344
-+#: option.c:359
- msgid "Force broadcast replies for hosts with tag set."
- msgstr ""
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr ""
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr ""
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr ""
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr ""
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr ""
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr ""
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr ""
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr ""
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr ""
--#: option.c:354
-+#: option.c:369
- msgid "Specify options to be sent to DHCP clients."
- msgstr ""
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr ""
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr ""
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr ""
--#: option.c:358
-+#: option.c:373
- msgid "Log DNS queries."
- msgstr ""
--#: option.c:359
-+#: option.c:374
- msgid "Force the originating port for upstream DNS queries."
- msgstr ""
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr ""
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr ""
--#: option.c:362
-+#: option.c:377
- msgid "Specify path to file with server= options"
- msgstr ""
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr ""
--#: option.c:364
-+#: option.c:379
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr ""
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr ""
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr ""
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr ""
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr ""
--#: option.c:369
-+#: option.c:384
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr ""
--#: option.c:370
-+#: option.c:385
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr ""
--#: option.c:371
-+#: option.c:386
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr ""
-+
-+#: option.c:387
-+msgid "Specify time-to-live floor for cache."
-+msgstr ""
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr ""
--#: option.c:372
-+#: option.c:389
- msgid "Map DHCP vendor class to tag."
- msgstr ""
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr ""
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr ""
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr ""
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr ""
--#: option.c:377
-+#: option.c:394
- #, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr ""
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr ""
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr ""
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr ""
--#: option.c:381
-+#: option.c:398
- msgid "Specify PTR DNS record."
- msgstr ""
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr ""
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr ""
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr ""
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr ""
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr ""
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr ""
--#: option.c:388
-+#: option.c:405
- msgid "Map MAC address (with wildcards) to option set."
- msgstr ""
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr ""
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr ""
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr ""
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr ""
--#: option.c:395
-+#: option.c:412
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr ""
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr ""
--#: option.c:397
-+#: option.c:414
- #, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr ""
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr ""
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr ""
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr ""
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr ""
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr ""
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr ""
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr ""
--#: option.c:405
-+#: option.c:422
- #, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr ""
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr ""
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr ""
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr ""
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr ""
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr ""
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr ""
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr ""
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr ""
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr ""
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr ""
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr ""
--#: option.c:417
-+#: option.c:434
- msgid "Specify NAPTR DNS record."
- msgstr ""
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr ""
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr ""
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr ""
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr ""
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr ""
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr ""
--#: option.c:424
-+#: option.c:441
- msgid "Prompt to send to PXE clients."
- msgstr ""
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr ""
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr ""
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr ""
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr ""
--#: option.c:429
-+#: option.c:446
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr ""
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr ""
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr ""
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr ""
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr ""
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr ""
--#: option.c:435
-+#: option.c:452
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr ""
--#: option.c:436
-+#: option.c:453
- msgid "Specify arbitrary DNS resource record"
- msgstr ""
--#: option.c:437
-+#: option.c:454
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr ""
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr ""
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr ""
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr ""
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr ""
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr ""
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr ""
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr ""
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr ""
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr ""
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
- "\n"
- msgstr ""
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr ""
--#: option.c:665
-+#: option.c:684
- #, c-format
- msgid "Valid options are:\n"
- msgstr ""
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr ""
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr ""
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- msgid "bad interface name"
- msgstr ""
--#: option.c:792
-+#: option.c:811
- msgid "bad address"
- msgstr ""
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr ""
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr ""
--#: option.c:1056
-+#: option.c:1075
- msgid "bad IP address"
- msgstr ""
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- msgid "bad IPv6 address"
- msgstr ""
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr ""
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr ""
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr ""
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr ""
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr ""
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, c-format
- msgid "cannot access directory %s: %s"
- msgstr ""
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, c-format
- msgid "cannot access %s: %s"
- msgstr ""
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr ""
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr ""
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr ""
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr ""
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr ""
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr ""
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr ""
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr ""
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- msgid "bad prefix"
- msgstr ""
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr ""
--#: option.c:2469
-+#: option.c:2545
- msgid "bad port range"
- msgstr ""
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr ""
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr ""
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr ""
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr ""
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr ""
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr ""
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr ""
--#: option.c:2660
-+#: option.c:2736
- msgid "inconsistent DHCPv6 range"
- msgstr ""
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr ""
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- msgid "bad hex constant"
- msgstr ""
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr ""
--#: option.c:2852
-+#: option.c:2928
- #, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr ""
--#: option.c:2910
-+#: option.c:2986
- msgid "bad DHCP host name"
- msgstr ""
--#: option.c:2992
-+#: option.c:3068
- msgid "bad tag-if"
- msgstr ""
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr ""
--#: option.c:3378
-+#: option.c:3454
- msgid "bad dhcp-proxy address"
- msgstr ""
--#: option.c:3404
-+#: option.c:3480
- msgid "Bad dhcp-relay"
- msgstr ""
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr ""
--#: option.c:3481
-+#: option.c:3557
- msgid "invalid alias range"
- msgstr ""
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr ""
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr ""
--#: option.c:3560
-+#: option.c:3636
- msgid "bad PTR record"
- msgstr ""
--#: option.c:3591
-+#: option.c:3667
- msgid "bad NAPTR record"
- msgstr ""
--#: option.c:3625
-+#: option.c:3701
- msgid "bad RR record"
- msgstr ""
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr ""
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr ""
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr ""
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr ""
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr ""
--#: option.c:3748
-+#: option.c:3824
- msgid "Bad host-record"
- msgstr ""
--#: option.c:3765
-+#: option.c:3841
- msgid "Bad name in host-record"
- msgstr ""
--#: option.c:3826
-+#: option.c:3906
- msgid "bad trust anchor"
- msgstr ""
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr ""
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr ""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr ""
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr ""
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr ""
--#: option.c:3972
-+#: option.c:4052
- msgid "illegal option"
- msgstr ""
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr ""
--#: option.c:3981
-+#: option.c:4061
- #, c-format
- msgid " at line %d of %s"
- msgstr ""
--#: option.c:4045 option.c:4168 tftp.c:667
-+#: option.c:4076 option.c:4323 option.c:4359
- #, c-format
--msgid "cannot read %s: %s"
-+msgid "read %s"
- msgstr ""
--#: option.c:4229 option.c:4265
-+#: option.c:4139 option.c:4262 tftp.c:667
- #, c-format
--msgid "read %s"
-+msgid "cannot read %s: %s"
- msgstr ""
--#: option.c:4331
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr ""
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr ""
--#: option.c:4367
-+#: option.c:4461
- #, c-format
- msgid ""
- "Compile time options: %s\n"
- "\n"
- msgstr ""
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr ""
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr ""
--#: option.c:4370
-+#: option.c:4464
- #, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr ""
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr ""
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr ""
--#: option.c:4385
-+#: option.c:4479
- #, c-format
- msgid "bad command line options: %s"
- msgstr ""
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr ""
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr ""
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr ""
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, c-format
- msgid "failed to read %s: %s"
- msgstr ""
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr ""
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr ""
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr ""
--#: forward.c:114
-+#: forward.c:111
- #, c-format
- msgid "failed to send packet: %s"
- msgstr ""
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr ""
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr ""
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
--#: forward.c:2101
-+#: forward.c:2178
- #, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr ""
-@@ -1180,263 +1208,276 @@ msgstr ""
- msgid "using nameserver %s#%d"
- msgstr ""
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+#: dnsmasq.c:161
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr ""
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr ""
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+msgid "cannot use --conntrack AND --query-port"
- msgstr ""
--#: dnsmasq.c:173
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+#: dnsmasq.c:175
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr ""
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr ""
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr ""
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr ""
--#: dnsmasq.c:193
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+#: dnsmasq.c:195
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr ""
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr ""
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr ""
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr ""
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr ""
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr ""
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr ""
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr ""
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr ""
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr ""
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, c-format
- msgid "started, version %s DNS disabled"
- msgstr ""
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr ""
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr ""
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr ""
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr ""
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr ""
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
-+#: dnsmasq.c:713
- #, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr ""
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr ""
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr ""
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr ""
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- msgid "warning: no upstream servers configured"
- msgstr ""
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr ""
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr ""
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "enabled"
- msgstr ""
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr ""
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr ""
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr ""
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr ""
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, c-format
- msgid "failed to create helper: %s"
- msgstr ""
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr ""
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr ""
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr ""
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr ""
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, c-format
- msgid "cannot open log %s: %s"
- msgstr ""
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, c-format
- msgid "failed to load Lua script: %s"
- msgstr ""
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr ""
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr ""
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr ""
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr ""
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, c-format
- msgid "failed to execute %s: %s"
- msgstr ""
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr ""
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, c-format
- msgid "failed to access %s: %s"
- msgstr ""
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr ""
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, c-format
- msgid "no servers found in %s, will retry"
- msgstr ""
-@@ -1476,27 +1517,27 @@ msgstr ""
- msgid "DHCP packet received on %s which has no address"
- msgstr ""
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr ""
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr ""
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr ""
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr ""
-@@ -1567,12 +1608,12 @@ msgstr ""
- msgid "disabled"
- msgstr ""
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr ""
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr ""
-@@ -1592,7 +1633,7 @@ msgstr ""
- msgid "no leases left"
- msgstr ""
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr ""
-@@ -1601,7 +1642,7 @@ msgstr ""
- msgid "PXE BIS not supported"
- msgstr ""
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr ""
-@@ -1637,7 +1678,7 @@ msgstr ""
- msgid "wrong address"
- msgstr ""
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr ""
-@@ -1687,7 +1728,7 @@ msgstr ""
- msgid "PXE menu too large"
- msgstr ""
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, c-format
- msgid "%u requested options: %s"
- msgstr ""
-@@ -1702,7 +1743,7 @@ msgstr ""
- msgid "cannot create netlink socket: %s"
- msgstr ""
--#: netlink.c:347
-+#: netlink.c:348
- #, c-format
- msgid "netlink returns error: %s"
- msgstr ""
-@@ -1820,62 +1861,62 @@ msgstr ""
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr ""
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, c-format
- msgid "%u vendor class: %u"
- msgstr ""
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, c-format
- msgid "%u client MAC address: %s"
- msgstr ""
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, c-format
- msgid "unknown prefix-class %d"
- msgstr ""
--#: rfc3315.c:791 rfc3315.c:913
--msgid "success"
-+#: rfc3315.c:803 rfc3315.c:902
-+msgid "address unavailable"
- msgstr ""
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
--msgid "no addresses available"
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
-+msgid "success"
- msgstr ""
--#: rfc3315.c:865
--msgid "address unavailable"
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
-+msgid "no addresses available"
- msgstr ""
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr ""
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr ""
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr ""
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- msgid "address invalid"
- msgstr ""
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr ""
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- msgid "all addresses still on link"
- msgstr ""
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr ""
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr ""
-@@ -1968,7 +2009,7 @@ msgstr ""
- msgid "cannot create ICMPv6 socket: %s"
- msgstr ""
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr ""
-@@ -1983,50 +2024,85 @@ msgstr ""
- msgid "failed to create IPset control socket: %s"
- msgstr ""
-+#: dnssec.c:425 dnssec.c:469
-+#, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr ""
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
--#: tables.c:105
-+#: tables.c:109
- #, c-format
- msgid "failed to access pf devices: %s"
- msgstr ""
--#: tables.c:119
-+#: tables.c:123
- #, c-format
- msgid "warning: no opened pf devices %s"
- msgstr ""
--#: tables.c:127
-+#: tables.c:131
- #, c-format
- msgid "error: cannot use table name %s"
- msgstr ""
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
--#: tables.c:162
-+#: tables.c:166
- #, c-format
- msgid "%d addresses %s"
- msgstr ""
-+
-+#: inotify.c:46
-+#, c-format
-+msgid "failed to create inotify: %s"
-+msgstr ""
-+
-+#: inotify.c:60
-+#, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr ""
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr ""
-+
-+#: inotify.c:97
-+#, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr ""
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-diff --git a/po/fr.po b/po/fr.po
-index 1ac4848b9fa9..fbddad73887a 100644
---- a/po/fr.po
-+++ b/po/fr.po
-@@ -14,70 +14,70 @@ msgstr ""
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=2; plural=(n > 1);\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
--#: cache.c:908
-+#: cache.c:941
- #, c-format
- msgid "failed to load names from %s: %s"
- msgstr "Impossible de charger les noms à partir de %s : %s"
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr "mauvaise adresse dans %s ligne %d"
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr "mauvais nom dans %s ligne %d"
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr "lecture %s - %d adresses"
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr "cache vidé"
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr "Aucune adresse IPv4 trouvée pour %s"
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr "%s est un CNAME, il ne sera pas donné au bail DHCP de %s"
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr "ne donne pas de nom %s au bail DHCP de %s parce-que le nom existe dans %s avec l'adresse %s"
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr "horodatage %lu"
--#: cache.c:1367
-+#: cache.c:1422
- #, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr "taille de cache %d, %d/%d insertions dans le cache entrées non-expirées réutilisées"
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr "requêtes transmises %u, requêtes résolues localement %u"
--#: cache.c:1372
-+#: cache.c:1427
- #, fuzzy, c-format
- msgid "queries for authoritative zones %u"
- msgstr "Configure la durée de vie (Time To Live) pour les réponses faisant autorité"
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr "serveur %s#%d: requêtes envoyées %u, requêtes réessayées ou échouées %u"
-@@ -91,7 +91,7 @@ msgstr "impossible d'initialiser le g
- msgid "failed to allocate memory"
- msgstr "impossible d'allouer la mémoire"
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr "impossible d'allouer de la mémoire"
-@@ -105,607 +105,642 @@ msgstr "Ne peut pas cr
- msgid "failed to allocate %d bytes"
- msgstr "impossible d'allouer %d octets"
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr "illimité(e)"
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr "Spécifie la ou les adresse(s) locales où le démon doit se mettre à l'écoute."
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr "Retourne les adresses IP pour toutes les machines présentes dans les domaines spécifiés"
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr "Traduction inverse truquée pour la plage d'adresse privée RFC1918"
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr "Traite l'adresse IP comme un domaine inexistant NXDOMAIN (contourne le systeme de redirection de Verisign)"
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr "Spécifie le nombre d'entrées que contiendra le cache (par défaut : %s)."
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr "Spécifie le nom du fichier de configuration (par défaut : %s)"
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr "Ne passe pas en tâche de fond : démarre en mode debug"
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr "Ne retransmet pas les requêtes qui n'ont pas de domaine."
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr "Retourne les champs MX pour les machines locales."
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr "Etend les noms uniques des machines dans /etc/hosts avec le suffixe du domaine."
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr "Ne retransmet pas les fausses requêtes DNS en provenance des machines Windows."
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr "Autorise DHCP dans la plage d'adresses donnée sur la durée de validité du bail."
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr "On change pour ce groupe après le démarrage (par défaut : %s)."
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr "On assigne une adresse ou un nom pour une machine spécifiée."
--#: option.c:332
-+#: option.c:344
- msgid "Read DHCP host specs from file."
- msgstr "Lecture des spécifications d'hôtes DHCP à partir du fichier"
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr "Lecture des options DHCP à partir du fichier"
--#: option.c:334
-+#: option.c:346
-+#, fuzzy
-+msgid "Read DHCP host specs from a directory."
-+msgstr "Lecture des spécifications d'hôtes DHCP à partir du fichier"
-+
-+#: option.c:347
-+#, fuzzy
-+msgid "Read DHCP options from a directory."
-+msgstr "Lecture des options DHCP à partir du fichier"
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr "Expression d'évaluation conditionnelle d'étiquette"
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr "Ne charge PAS le fichier %s."
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr "Spécifie un nom de fichier hosts à lire en complément de %s"
--#: option.c:337
-+#: option.c:351
-+#, fuzzy
-+msgid "Read hosts files from a directory."
-+msgstr "Lecture des spécifications d'hôtes DHCP à partir du fichier"
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr "Spécifie la ou les interface(s) où le démon doit se mettre à l'écoute."
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr "Spécifie la ou les interface(s) que le démon ne doit PAS traiter."
- #
--#: option.c:339
-+#: option.c:354
- msgid "Map DHCP user class to tag."
- msgstr "Associe les classes d'utilisateurs ('user class') DHCP aux options."
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr "Associe les identifiants de circuits RFC3046 ('circuit-id') aux options"
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr "Associe les identifiants distants RFC3046 ('remote-id') aux options"
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr "Associe les identifiants de souscripteurs RFC3993 ('subscriber-id') aux options"
- #
--#: option.c:343
-+#: option.c:358
- msgid "Don't do DHCP for hosts with tag set."
- msgstr "Ne pas autoriser DHCP pour les machines énumerées dans les options."
- #
--#: option.c:344
-+#: option.c:359
- msgid "Force broadcast replies for hosts with tag set."
- msgstr "Forcer les réponses par 'broadcast' pour les machines énumerées dans les options."
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr "Ne passe pas en tâche de fond, ne pas s'exécuter en mode debug."
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr "On considère que l'on est le seul serveur DHCP sur le réseau local."
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr "Spécifie où il faut sauvegarder les baux DHCP (par défaut : %s)."
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr "Retourne les champs MX pour les machines locales."
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr "Spécifie un champ MX."
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr "Spécifie les options BOOTP pour le serveur DHCP."
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr "Ne pas scruter le fichier %s, ne recharger les modifications que sur réception du signal SIGHUP."
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr "Ne place pas en cache le résultat des requêtes qui ont échouées."
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr "Utilise les serveurs de noms dans l'ordre donné dans %s."
- #
--#: option.c:354
-+#: option.c:369
- msgid "Specify options to be sent to DHCP clients."
- msgstr "Options supplémentaires à associer aux clients DHCP."
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr "Option DHCP envoyée même si le client de la demande pas."
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr "Spécifie le port où il faut écouter les requêtes DNS (par défaut : 53)."
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr "Taille maximale des paquets UDP supportés pour EDNS.0 (par défaut : %s)."
- #
--#: option.c:358
-+#: option.c:373
- msgid "Log DNS queries."
- msgstr "Enregistre les requêtes DNS dans un journal d'activité."
- #
--#: option.c:359
-+#: option.c:374
- msgid "Force the originating port for upstream DNS queries."
- msgstr "Force le port d'origine pour les requêtes vers les serveurs amonts."
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr "Ne pas lire le fichier resolv.conf."
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Spécifie le chemin pour le fichier resolv.conf (par défaut : %s)."
--#: option.c:362
-+#: option.c:377
- #, fuzzy
- msgid "Specify path to file with server= options"
- msgstr "Spécifie un chemin pour le fichier PID (par défaut : %s)."
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Spécifie la ou les adresses des serveurs amonts avec des domaines optionels."
--#: option.c:364
-+#: option.c:379
- #, fuzzy
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr "Spécifie la ou les adresses des serveurs amonts avec des domaines optionels."
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr "Ne jamais retransmettre les requêtes pour les domaines spécifiés."
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr "Spécifie le domaine qui doit etre assigné aux baux DHCP."
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr "Spécifie la cible par défaut dans un champ MX."
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts."
- #
--#: option.c:369
-+#: option.c:384
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts."
--#: option.c:370
-+#: option.c:385
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr "Spécifie, en secondes, la valeur maximum de TTL à renvoyer aux clients."
--#: option.c:371
-+#
-+#: option.c:386
-+#, fuzzy
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts."
-+
-+#
-+#: option.c:387
-+#, fuzzy
-+msgid "Specify time-to-live floor for cache."
-+msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts."
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr "Change pour cet utilisateur après le démarrage (par défaut : %s)."
- #
--#: option.c:372
-+#: option.c:389
- msgid "Map DHCP vendor class to tag."
- msgstr "Associe les classes de fournisseurs ('vendor class') DHCP aux options."
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr "Affiche la version de Dnsmasq et les informations liées au copyright."
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr "Traduit les adresses IPV4 des serveurs amonts."
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr "Spécifie un champ SRV."
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr "Afficher ce message. Utiliser --help dhcp pour obtenir la liste des options DHCP connues."
--#: option.c:377
-+#: option.c:394
- #, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr "Spécifie un chemin pour le fichier PID (par défaut : %s)."
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr "Spécifie le nombre maximum de baux DHCP (par défaut : %s)."
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr "Repond aux requêtes DNS en se basant sur l'interface ou a été envoyée la requête."
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr "Spécifie un champ DNS TXT"
- #
--#: option.c:381
-+#: option.c:398
- msgid "Specify PTR DNS record."
- msgstr "Spécifie un champ DNS PTR"
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr "Donne le nom DNS pour l'adresse IPv4 de l'interface."
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr "Association uniquement aux interfaces réseau actuellement actives."
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr "Lecture des informations de DHCP statique à partir de %s."
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr "Autorise l'interface DBus pour la configuration des serveurs amonts, etc."
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr "Ne pas assurer de fonction DHCP sur cette interface, mais seulement la fonction DNS."
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr "Autorise l'allocation dynamique d'adresse pour bootp."
- #
--#: option.c:388
-+#: option.c:405
- msgid "Map MAC address (with wildcards) to option set."
- msgstr "Associe l'adresse MAC (avec les jokers) aux options."
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr "Traiter les requêtes DHCP sur les alias comme arrivant de l'interface."
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr "Supprime la vérification d'adresse sur le serveur au moyen de paquets ICMP echo"
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr "Script shell à exécuter lors de la création ou destruction de bail DHCP."
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr "Script Lua à exécuter lors de la création ou destruction de bail DHCP."
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr "Lancer le script 'lease-change' avec cet utilisateur."
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr "Lecture de la configuration dans tous les fichiers de ce répertoire."
- #
--#: option.c:395
-+#: option.c:412
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr "Enregistrer les journaux d'activité dans cette facilité syslog. (défaut : DAEMON)"
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr "Ne pas utiliser de fichier de baux."
--#: option.c:397
-+#: option.c:414
- #, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr "Spécifie le nombre maximum de requêtes DHCP concurrentes (par défaut : %s)."
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr "Vider le cache DNS lors du rechargement de %s."
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr "Ignorer les noms d'hôtes fournis par les clients DHCP"
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr "Ne pas réutiliser les champs nom de fichier et serveur dans les options DHCP supplémentaires."
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr "Activer le server TFTP intégré (fonctionnant en lecture seulement)"
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr "N'exporter par TFTP que les fichiers de l'arborescence de fichier spécifiée"
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr "Ajouter les adresses IP clientes à la racine tftp ('tftp-root')."
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr "Accès aux seuls fichiers appartenants à l'utilisateur sous lequel tourne dnsmasq"
--#: option.c:405
-+#: option.c:422
- #, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr "Spécifie le nombre maximum de transfert TFTP concurrents (défaut : %s)."
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr "Désactivation de l'extension TFTP « taille de bloc »"
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr "Convertis les noms de fichiers TFTP en minuscule"
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr "Gamme de ports dans laquelle seront choisis les ports temporaires utilisés dans les transferts TFTP."
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr "Traces supplémentaires pour le DHCP."
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr "Active l'écriture de traces en mode asynchrone. Peut prendre en option la valeur de la longueur de la queue."
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr "Stopper la réassociation DNS ('DNS rebinding'). Filtre les gammes d'adresses IP privées lors de la résolution."
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr "Autorise la réassociation de 127.0.0/8, pour les serveurs RBL (Realtime Blackhole List)"
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr "Désactive la protection contre les réassociation DNS pour ce domaine"
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr "Toujours effectuer les requêtes DNS à tous les serveurs."
- #
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr "Spécifie le label si le client inclus l'option dans la requête."
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr "Utiliser des ports alternatifs pour le DHCP."
- #
--#: option.c:417
-+#: option.c:434
- msgid "Specify NAPTR DNS record."
- msgstr "Spécifie un champ DNS NAPTR."
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr "Définie le plus petit port utilisé pour la transmission d'une requête DNS."
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr "Utilise seulement les noms de domaine pleinement qualifiés pour les clients DHCP."
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr "Génère les noms d'hôtes à partir de l'adresse MAC pour les clients sans nom."
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr "Utilise ces relais DHCP en temps que proxy complets."
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr "Requêtes de relais DHCP à un serveur distant"
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr "Spécifie un alias pour un nom DNS local."
- #
--#: option.c:424
-+#: option.c:441
- msgid "Prompt to send to PXE clients."
- msgstr "Invite à envoyer aux clients PXE."
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr "Service de démarrage pour menu PXE."
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr "vérification de la syntaxe de la configuration."
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr "Ajoute l'adresse MAC du requêteur aux requêtes DNS transmises"
--#: option.c:428
-+#: option.c:445
- #, fuzzy
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr "Ajoute l'adresse MAC du requêteur aux requêtes DNS transmises"
--#: option.c:429
-+#: option.c:446
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr "Copie dans la réponse DNS le résultat de la validation DNSSEC effectuée par les serveurs DNS amonts."
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr "Essaie d'allouer des adresses IP séquentielles aux clients DHCP."
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr "Copie les marques de suivi de connexion pour les requêtes amont."
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr "Autoriser les clients DHCP à faire leurs propres mises à jour DDNS (Dynamic DNS)"
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr "Envoyer des annonces de routeurs pour toutes les interfaces faisant du DHCPv6"
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr "Spécifie pour le serveur DHCPv6 un identifiant unique DHCP (DUID) basé sur un numéro unique de vendeur (DUID_EN)"
--#: option.c:435
-+#: option.c:452
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr "Spécifie les enregistrements (A/AAAA et PTR) d'un hôte."
--#: option.c:436
-+#: option.c:453
- msgid "Specify arbitrary DNS resource record"
- msgstr "Définie une resource DNS d'un type spécifique"
--#: option.c:437
-+#: option.c:454
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr "Se lie aux interfaces préexistantes - vérifie l'apparition de nouvelles interfaces"
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr "Exporte les noms locaux dans le DNS global"
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr "Domaine à exporter dans le DNS global"
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr "Configure la durée de vie (Time To Live) pour les réponses faisant autorité"
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr "Configure les informations pour une zone de nom faisant autorité"
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr "Serveurs de noms secondaires faisant autorité pour les domaines délégués"
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr "Pairs autorisés à faire des transferts de zone"
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr "Spécifie les ipsets auxquels les domaines correspondants doivent-être ajoutés"
--#: option.c:445
-+#: option.c:462
- #, fuzzy
- msgid "Specify a domain and address range for synthesised names"
- msgstr "Spécifie un domaine et une plage d'adresses pour les noms auto-générés"
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr "Spécifie le préfixe de classe DHCPv6"
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
-@@ -714,328 +749,328 @@ msgstr ""
- "Usage : dnsmasq [options]\n"
- "\n"
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr "Utilisez les options courtes uniquement sur la ligne de commande.\n"
--#: option.c:665
-+#: option.c:684
- #, c-format
- msgid "Valid options are:\n"
- msgstr "Les options valides sont :\n"
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr "numéro de port incorrect"
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr "association d'interface non supportée"
- #
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- msgid "bad interface name"
- msgstr "nom d'interface invalide"
- #
--#: option.c:792
-+#: option.c:811
- msgid "bad address"
- msgstr "mauvaise adresse"
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr "encapsulation d'option non supportée pour IPv6"
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr "mauvaise valeur de 'dhcp-option'"
- #
--#: option.c:1056
-+#: option.c:1075
- msgid "bad IP address"
- msgstr "mauvaise adresse IP"
- #
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- msgid "bad IPv6 address"
- msgstr "mauvaise adresse IPv6"
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr "mauvais domaine dans dhcp-option"
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr "dhcp-option trop long"
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr "valeur illégale pour 'dhcp-match'"
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr "Une option ne pouvant être spécifié qu'une seule fois à été donnée plusieurs fois"
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr "Mot-clef ne pouvant être répété"
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, c-format
- msgid "cannot access directory %s: %s"
- msgstr "Ne peut pas lire le répertoire %s : %s"
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, c-format
- msgid "cannot access %s: %s"
- msgstr "Ne peut pas lire %s : %s"
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr "Sous android, impossible de positionner la cible (facility) pour les traces (logs)."
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr "Mauvaise cible (facility) pour les traces."
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr "préference MX incorrecte"
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr "nom MX incorrect"
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr "valeur MX cible incorrecte"
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr "ne peut exécuter de script sous uClinux"
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr "recompiler en définissant HAVE_SCRIPT pour permettre l'exécution de scripts shell au changement de bail (lease-change)"
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr "recompiler en définissant HAVE_LUASCRIPT pour permettre l'exécution de scripts LUA au changement de bail (lease-change)"
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- msgid "bad prefix"
- msgstr "mauvais préfixe"
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr "recompiler en définissant HAVE_IPSET pour permettre l'utilisation de directives de groupes d'IP (IPset)"
- #
--#: option.c:2469
-+#: option.c:2545
- msgid "bad port range"
- msgstr "gamme de ports incorrecte"
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr "interface-pont incorrecte"
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr "une seule étiquette est autorisée"
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr "plage d'adresses DHCP (dhcp-range) incorrecte"
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr "plage d'adresses DHCP incohérente"
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr "la taille du préfixe doit être exactement 64 pour les sous-réseaux d'annonces de routeurs (RA)"
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr "la taille du préfixe doit être exactement 64 pour le constructeur de sous-réseaux"
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr "la taille de préfixe doit être au minimum 64"
--#: option.c:2660
-+#: option.c:2736
- msgid "inconsistent DHCPv6 range"
- msgstr "plage d'adresses DHCPv6 incohérente"
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr "le préfixe doit avoir une taille de 0 lorsque l'argument \"constructor:\" est utilisé"
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- msgid "bad hex constant"
- msgstr "mauvaise constante hexadecimale"
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr "L'utilisation de labels est prohibée dans --dhcp-host"
--#: option.c:2852
-+#: option.c:2928
- #, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr "adresse IP dhcp-host dupliquée dans %s."
- #
--#: option.c:2910
-+#: option.c:2986
- msgid "bad DHCP host name"
- msgstr "nom d'hôte DHCP incorrect"
--#: option.c:2992
-+#: option.c:3068
- msgid "bad tag-if"
- msgstr "mauvaise étiquette tag-if"
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr "numéro de port invalide"
- #
--#: option.c:3378
-+#: option.c:3454
- msgid "bad dhcp-proxy address"
- msgstr "adresse dhcp-proxy incorrecte"
--#: option.c:3404
-+#: option.c:3480
- msgid "Bad dhcp-relay"
- msgstr "valeur incorrecte pour le relais DHCP (dhcp-relay)"
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr "mauvais identifiant unique DHCP (DUID)"
- #
--#: option.c:3481
-+#: option.c:3557
- msgid "invalid alias range"
- msgstr "poids invalide"
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr "mauvais CNAME"
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr "ce CNAME existe déja"
- #
--#: option.c:3560
-+#: option.c:3636
- msgid "bad PTR record"
- msgstr "mauvais champ PTR"
- #
--#: option.c:3591
-+#: option.c:3667
- msgid "bad NAPTR record"
- msgstr "mauvais champ NAPTR"
- #
--#: option.c:3625
-+#: option.c:3701
- msgid "bad RR record"
- msgstr "mauvais enregistrement RR"
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr "champ TXT invalide"
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr "champ SRV invalide"
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr "cible SRV invalide"
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr "priorité invalide"
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr "poids invalide"
- #
--#: option.c:3748
-+#: option.c:3824
- msgid "Bad host-record"
- msgstr "mauvais champ host-record"
--#: option.c:3765
-+#: option.c:3841
- msgid "Bad name in host-record"
- msgstr "mauvais nom dans le champ host-record"
- #
--#: option.c:3826
-+#: option.c:3906
- #, fuzzy
- msgid "bad trust anchor"
- msgstr "gamme de ports incorrecte"
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- #, fuzzy
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr "option non supportée (vérifier que Dnsmasq a été compilé avec le support DHCP/TFTP/DBus)"
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr "il manque \""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr "mauvaise option"
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr "paramètre en trop"
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr "paramètre manquant"
--#: option.c:3972
-+#: option.c:4052
- #, fuzzy
- msgid "illegal option"
- msgstr "mauvaise option"
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr "erreur"
--#: option.c:3981
-+#: option.c:4061
- #, c-format
- msgid " at line %d of %s"
- msgstr "à la ligne %d de %s"
--#: option.c:4045 option.c:4168 tftp.c:667
--#, c-format
--msgid "cannot read %s: %s"
--msgstr "Ne peut pas lire %s : %s"
--
--#: option.c:4229 option.c:4265
-+#: option.c:4076 option.c:4323 option.c:4359
- #, c-format
- msgid "read %s"
- msgstr "Lecture de %s"
--#: option.c:4331
-+#: option.c:4139 option.c:4262 tftp.c:667
-+#, c-format
-+msgid "cannot read %s: %s"
-+msgstr "Ne peut pas lire %s : %s"
-+
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr "la ligne de commande contient des éléments indésirables ou incompréhensibles"
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr "Version de Dnsmasq %s  %s\n"
--#: option.c:4367
-+#: option.c:4461
- #, c-format
- msgid ""
- "Compile time options: %s\n"
-@@ -1044,89 +1079,89 @@ msgstr ""
- "Options à la compilation %s\n"
- "\n"
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr "Ce logiciel est fourni sans AUCUNE GARANTIE.\n"
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr "Dnsmasq est un logiciel libre, il vous est permis de le redistribuer\n"
--#: option.c:4370
-+#: option.c:4464
- #, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr "sous les termes de la licence GPL (GNU General Public License), version 2 ou 3.\n"
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr "essayez avec --help"
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr "essayez avec -w"
--#: option.c:4385
-+#: option.c:4479
- #, c-format
- msgid "bad command line options: %s"
- msgstr "mauvaises options en ligne de commande : %s."
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr "ne peut pas obtenir le nom de la machine : %s"
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr "seul un fichier resolv.conf est autorisé dans le mode no-poll"
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr "un fichier resolv.conf (et un seul) est nécessaire pour y récuperer le nom de domaine."
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, c-format
- msgid "failed to read %s: %s"
- msgstr "impossible de lire %s : %s"
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr "pas de directive de recherche trouvée dans %s"
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr "un domaine par défaut doit être spécifié lorsque l'option --dhcp-fqdn est utilisée"
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr "vérification de syntaxe OK"
--#: forward.c:114
-+#: forward.c:111
- #, c-format
- msgid "failed to send packet: %s"
- msgstr "impossible d'envoyer le paquet : %s"
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr "le serveur de nom %s a refusé de faire une recherche récursive"
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr "détection d'une possible attaque de type DNS-rebind: %s"
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
--#: forward.c:2101
-+#: forward.c:2178
- #, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr "Nombre maximum de requêtes DNS concurrentes atteint (maximum : %d)."
-@@ -1216,271 +1251,286 @@ msgstr "utilise le serveur de nom %s#%d (via %s)"
- msgid "using nameserver %s#%d"
- msgstr "utilise le serveur de nom %s#%d"
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+#: dnsmasq.c:161
- #, fuzzy
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr "DBus n'est pas disponible : activez HAVE_DBUS dans src/config.h"
- #
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr "TFTP n'est pas disponible : activez HAVE_TFTP dans src/config.h"
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+#, fuzzy
-+msgid "cannot use --conntrack AND --query-port"
- msgstr "impossible d'utiliser conjointement --conntrack et --query-port"
- #
--#: dnsmasq.c:173
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+#: dnsmasq.c:175
-+#, fuzzy
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr "Support de suivi de connexion non disponible : activez HAVE_CONNTRACK dans src/config.h"
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr "l'écriture de traces en mode asynchrone n'est pas disponible sous Solaris."
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr "l'écriture de traces en mode asynchrone n'est pas disponible sous Android."
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "le mode « autorité DNS » n'est pas disponible : activez HAVE_AUTH dans src/config.h"
- #
--#: dnsmasq.c:193
-+#: dnsmasq.c:195
- #, fuzzy
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr "TFTP n'est pas disponible : activez HAVE_TFTP dans src/config.h"
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr "le numéro de série de la zone doit être configuré dans --auth-soa"
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr "le constructeur de plage dhcp n'est pas disponible sur cette plate-forme"
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr "--bind-interfaces et --bind-dynamic sont mutuellement exclusives"
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr "impossible de trouver la liste des interfaces : %s"
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr "interface %s inconnue"
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr "Erreur DBus : %s"
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr "DBus n'est pas disponible : activez HAVE_DBUS dans src/config.h"
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr "utilisateur ou groupe inconnu : %s"
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr "Ne peut effectuer un 'chdir' à la racine du système de fichier : %s"
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, c-format
- msgid "started, version %s DNS disabled"
- msgstr "démarrage avec le DNS désactivé (version %s)"
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr "demarré, version %s (taille de cache %d)"
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr "démarrage avec le cache désactivé (version %s)"
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr "options à la compilation : %s"
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr "Support DBus autorisé : connecté au bus système"
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr "Support DBus autorisé : connexion au bus en attente"
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
-+#: dnsmasq.c:713
- #, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr "Impossible de changer pour l'utilisateur %s : %s"
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr "active l'option --bind-interfaces à cause de limitations dans le système d'exploitation"
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr "attention : l'interface %s n'existe pas actuellement"
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr "attention : l'option « resolv-file » sera ignorée car « no-resolv » a été spécifié"
- #
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- msgid "warning: no upstream servers configured"
- msgstr "attention : aucun serveur amont n'est configuré"
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr "mode asynchrone d'écriture de traces, la taille maximum de la queue est de %d messages."
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr "annonces de routeur IPv6 activées"
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr "root est"
- #
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "enabled"
- msgstr "activé"
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr "mode sécurisé"
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr "le nombre maximum de transferts TFTP simultanés sera restreint à %d"
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr "connecté au systeme DBus"
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr "Ne peut se lancer en tâche de fond : %s"
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, c-format
- msgid "failed to create helper: %s"
- msgstr "impossible de créer le 'helper' : %s"
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr "impossible de configurer la capacité %s"
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr "Impossible de changer l'identifiant utilisateur pour %s : %s"
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr "Impossible de changer l'identifiant de groupe pour %s : %s"
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr "impossible de lire le fichier de PID %s : %s"
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, c-format
- msgid "cannot open log %s: %s"
- msgstr "Ne peut ouvrir le fichier de log %s : %s"
- #
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, c-format
- msgid "failed to load Lua script: %s"
- msgstr "impossible de charger le script Lua : %s"
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr "répertoire TFTP %s inaccessible : %s"
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, fuzzy, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr "ne peut ouvrir ou créer le fichiers de baux %s : %s"
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr "Le script a été terminé par le signal %d"
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr "Le script s'est terminé avec le statut %d"
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, c-format
- msgid "failed to execute %s: %s"
- msgstr "impossible d'exécuter à %s : %s"
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr "sortie sur réception du signal SIGTERM"
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, c-format
- msgid "failed to access %s: %s"
- msgstr "impossible d'accéder à %s : %s"
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr "Lecture de %s"
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, c-format
- msgid "no servers found in %s, will retry"
- msgstr "aucun serveur trouvé dans %s, va réessayer"
-@@ -1520,27 +1570,27 @@ msgstr "interface %s inconnue sp
- msgid "DHCP packet received on %s which has no address"
- msgstr "Paquet DHCP reçu sur %s qui n'a pas d'adresse"
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr "La plage d'adresses DHCP %s -- %s n'est pas cohérente avec le masque de réseau %s"
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr "mauvaise ligne dans %s ligne %d"
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr "ignore %s à la ligne %d : duplication de nom ou d'adresse IP"
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr "Relais DHCP %s -> %s"
-@@ -1611,12 +1661,12 @@ msgstr "%u Classe d'utilisateur : %s"
- msgid "disabled"
- msgstr "désactivé"
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr "ignoré"
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr "adresse déjà utilisée"
-@@ -1636,7 +1686,7 @@ msgstr "pas d'adresse configur
- msgid "no leases left"
- msgstr "plus aucun bail disponible"
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr "le client %u fourni le nom : %s"
-@@ -1645,7 +1695,7 @@ msgstr "le client %u fourni le nom : %s"
- msgid "PXE BIS not supported"
- msgstr "Service PXE BIS (Boot Integrity Services) non supporté"
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr "désactive l'adresse statique DHCP %s pour %s"
-@@ -1681,7 +1731,7 @@ msgstr "mauvais identifiant de serveur"
- msgid "wrong address"
- msgstr "mauvaise adresse"
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr "bail non trouvé"
-@@ -1731,7 +1781,7 @@ msgstr "Impossible d'envoyer l'option DHCP/BOOTP %d : pas assez d'espace dans le
- msgid "PXE menu too large"
- msgstr "menu PXE trop grand"
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, c-format
- msgid "%u requested options: %s"
- msgstr "%u options demandées : %s"
-@@ -1746,7 +1796,7 @@ msgstr "ne peux envoyer l'option RFC3925 : trop d'options pour le num
- msgid "cannot create netlink socket: %s"
- msgstr "ne peux lier une socket netlink : %s"
--#: netlink.c:347
-+#: netlink.c:348
- #, c-format
- msgid "netlink returns error: %s"
- msgstr "Erreur netlink : %s"
-@@ -1864,62 +1914,62 @@ msgstr "pas de plage d'adresse disponible pour la requ
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr "%u sous-réseaux DHCPv6 disponibles : %s/%d"
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, c-format
- msgid "%u vendor class: %u"
- msgstr "%u Classe de vendeur ('Vendor Class') : %u"
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, c-format
- msgid "%u client MAC address: %s"
- msgstr "%u MAC adresse du client : %s"
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, c-format
- msgid "unknown prefix-class %d"
- msgstr "préfixe de classe inconnu %d"
--#: rfc3315.c:791 rfc3315.c:913
-+#: rfc3315.c:803 rfc3315.c:902
-+msgid "address unavailable"
-+msgstr "adresse non disponible"
-+
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
- msgid "success"
- msgstr "réussi"
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
- msgid "no addresses available"
- msgstr "pas d'adresse disponible"
--#: rfc3315.c:865
--msgid "address unavailable"
--msgstr "adresse non disponible"
--
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr "pas sur ce lien"
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr "aucune liaison trouvée"
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr "obsolète"
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- msgid "address invalid"
- msgstr "adresse non valide"
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr "confirmation d'échec"
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- msgid "all addresses still on link"
- msgstr "toutes les adresses sont toujours sur le lien"
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr "libération reçue"
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr "Impossible de faire du multicast au server DHCPv6 sans interface valide"
-@@ -2012,7 +2062,7 @@ msgstr "Relais DHCP de %s 
- msgid "cannot create ICMPv6 socket: %s"
- msgstr "ne peut créer la socket ICMPv6: %s"
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr "la requête de transfert de zone en provenance de %s est ignorée"
-@@ -2027,55 +2077,90 @@ msgstr "impossible de trouver la version de noyau : %s"
- msgid "failed to create IPset control socket: %s"
- msgstr "impossible de créer une socket de contrôle IPset : %s"
-+#: dnssec.c:425 dnssec.c:469
-+#, fuzzy, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr "impossible de lire le fichier de PID %s : %s"
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
--#: tables.c:105
-+#: tables.c:109
- #, fuzzy, c-format
- msgid "failed to access pf devices: %s"
- msgstr "impossible d'accéder à %s : %s"
--#: tables.c:119
-+#: tables.c:123
- #, fuzzy, c-format
- msgid "warning: no opened pf devices %s"
- msgstr "utilise les adresses locales seulement pour %s %s"
--#: tables.c:127
-+#: tables.c:131
- #, fuzzy, c-format
- msgid "error: cannot use table name %s"
- msgstr "ne peut pas obtenir le nom de la machine : %s"
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
- #
--#: tables.c:162
-+#: tables.c:166
- #, fuzzy, c-format
- msgid "%d addresses %s"
- msgstr "mauvaise adresse"
-+#: inotify.c:46
-+#, fuzzy, c-format
-+msgid "failed to create inotify: %s"
-+msgstr "impossible de créer le 'helper' : %s"
-+
-+#: inotify.c:60
-+#, fuzzy, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr "ne peut ouvrir ou créer le fichiers de baux %s : %s"
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, fuzzy, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr "impossible de créer une socket d'écoute pour %s : %s"
-+
-+#: inotify.c:97
-+#, fuzzy, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr "Ne peut pas lire le répertoire %s : %s"
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-+
- #~ msgid "Always send frequent router-advertisements"
- #~ msgstr "Envoyer des annonces de routeurs fréquentes"
-diff --git a/po/id.po b/po/id.po
-index b1809b695168..a0ff0f062e8b 100644
---- a/po/id.po
-+++ b/po/id.po
-@@ -15,77 +15,77 @@ msgstr ""
- "Content-Type: text/plain; charset=ASCII\n"
- "Content-Transfer-Encoding: 8bit\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
- # OK
--#: cache.c:908
-+#: cache.c:941
- #, fuzzy, c-format
- msgid "failed to load names from %s: %s"
- msgstr "gagal memuat nama-nama dari %s: %s"
- # OK
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, fuzzy, c-format
- msgid "bad address at %s line %d"
- msgstr "kesalahan nama pada %s baris %d"
- # OK
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr "kesalahan nama pada %s baris %d"
- # OK
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr "membaca %s - %d alamat"
- # OK
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr "cache telah dihapus"
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr ""
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr ""
- # OK
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr "tidak memberikan nama %s kepada lease DHCP %s karena nama telah ada dalam %sdengan alamat %s"
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr ""
- # OK
--#: cache.c:1367
-+#: cache.c:1422
- #, fuzzy, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr "ukuran cache %d, %d/%d penyisipan cache menimpa cache yang belum kadaluwarsa"
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr ""
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr ""
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr ""
-@@ -103,7 +103,7 @@ msgid "failed to allocate memory"
- msgstr "gagal memuat %S: %m"
- # OK
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr "tidak bisa mendapatkan memory"
-@@ -120,682 +120,720 @@ msgid "failed to allocate %d bytes"
- msgstr "gagal memuat %S: %m"
- # OK
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr "tak terbatas"
- # OK
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr "Tentukan alamat lokal untuk mendengarkan."
- # OK
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr "Menghasilkan ipaddr untuk semua host dalam domain yang dipilih."
- # OK
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr "Fake pencarian balik untuk alamat private sesuai dengan RFC1918."
- # OK
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr "Perlakukan ipaddr sebagai NXDOMAIN (mengalahkan wildcard Verisign)."
- # OK
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr "Tentukan ukuran cache, dalam jumlah isian (default %s)."
- # OK
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr "Tentukan file konfigurasi (default %s)."
- # OK
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr "JANGAN berjalan di background: berjalan dalam modus debug."
- # OK
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr "JANGAN teruskan permintaan tanpa bagian domain."
- # OK
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr "Mengembalikan record MX untuk diri sendiri host-host lokal."
- # OK
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr "Melengkapi nama-nama di /etc/hosts dengan akhiran domain."
- # OK
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr "Jangan meneruskan permintaan DNS spurious dari host-host Windows."
- # OK
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr "Bolehkan DHCP dalam jangkauan yang diberikan dengan durasi lease."
- # OK
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr "Ubah ke group ini setelah mulai (default %s)."
- # OK
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr "Setel alamat atau nama host untuk mesin yang disebutkan."
- # OK
--#: option.c:332
-+#: option.c:344
- #, fuzzy
- msgid "Read DHCP host specs from file."
- msgstr "nama MX salah"
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr ""
--#: option.c:334
-+# OK
-+#: option.c:346
-+#, fuzzy
-+msgid "Read DHCP host specs from a directory."
-+msgstr "nama MX salah"
-+
-+# OK
-+#: option.c:347
-+#, fuzzy
-+msgid "Read DHCP options from a directory."
-+msgstr "nama MX salah"
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr ""
- # OK
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr "JANGAN muat file %s."
- # OK
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr "Sebutkan sebuah file hosts yang harus dibaca sebagai tambahan untuk %s."
- # OK
--#: option.c:337
-+#: option.c:351
-+#, fuzzy
-+msgid "Read hosts files from a directory."
-+msgstr "nama MX salah"
-+
-+# OK
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr "Sebutkan antarmuka untuk mendengarkan."
- # OK
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr "Sebutkan antarmuka untuk TIDAK mendengarkan."
- # OK
--#: option.c:339
-+#: option.c:354
- #, fuzzy
- msgid "Map DHCP user class to tag."
- msgstr "Petakan kelas user DHCP ke setelan yang dipilih."
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr ""
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr ""
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr ""
- # OK
--#: option.c:343
-+#: option.c:358
- #, fuzzy
- msgid "Don't do DHCP for hosts with tag set."
- msgstr "Jangan menggunakan DHCP untuk host-host yang dipilih."
- # OK
--#: option.c:344
-+#: option.c:359
- #, fuzzy
- msgid "Force broadcast replies for hosts with tag set."
- msgstr "Jangan menggunakan DHCP untuk host-host yang dipilih."
- # OK
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr "JANGAN berjalan di background, jangan berjalan dalam modus debug."
- # OK
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr "Berpikir bahwa kita satu-satunya DHCP server dalam jaringan."
- # OK
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr "Sebutkan lokasi untuk menyimpan lease DHCP (default %s)."
- # OK
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr "Kembalikan rekord MX untuk host-host lokal."
- # OK
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr "Sebutkan sebuah rekord MX."
- # OK
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr "Sebutkan pilihan-pilihan BOOTP untuk DHCP server."
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr "Jangan kumpulkan file %s, muat kembali saat SIGHUP."
- # OK
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr "JANGAN menyimpan hasil pencarian yang gagal."
- # OK
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr "Gunakan secara ketat namaserver yang disebutkan sesuai urutan di %s."
- # OK
--#: option.c:354
-+#: option.c:369
- #, fuzzy
- msgid "Specify options to be sent to DHCP clients."
- msgstr "Setel pilihan-pilihan tambahan yang akan disetel untuk klien-klien DHCP."
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr ""
- # OK
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr "Sebutkan port untuk mendengarkan permintaan DNS (default port 53)."
- # OK
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr "Ukuran maksimum paket UDP yang didukung untuk EDNS.0 (default %s)."
- # OK
--#: option.c:358
-+#: option.c:373
- #, fuzzy
- msgid "Log DNS queries."
- msgstr "Permintaan log."
- # OK
--#: option.c:359
-+#: option.c:374
- #, fuzzy
- msgid "Force the originating port for upstream DNS queries."
- msgstr "Paksa port asal untuk permintaan ke atas."
- # OK
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr "JANGAN baca resolv.conf."
- # OK
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Sebutkan path ke resolv.conf (default %s)."
- # OK
--#: option.c:362
-+#: option.c:377
- #, fuzzy
- msgid "Specify path to file with server= options"
- msgstr "Sebutkan path file PID. (default %s)."
- # OK
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Sebutkan alamat-alamat server di atas, boleh dilengkapi dengan nama domain."
- # OK
--#: option.c:364
-+#: option.c:379
- #, fuzzy
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr "Sebutkan alamat-alamat server di atas, boleh dilengkapi dengan nama domain."
- # OK
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr "JANGAN pernah meneruskan permintaan ke domain yang disebutkan."
- # OK
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr "Sebutkan domain yang digunakan dalam lease DHCP."
- # OK
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr "Sebutkan tujuan default dalam rekord MX."
- # OK
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts."
- # OK
--#: option.c:369
-+#: option.c:384
- #, fuzzy
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts."
- # OK
--#: option.c:370
-+#: option.c:385
- #, fuzzy
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts."
- # OK
--#: option.c:371
-+#: option.c:386
-+#, fuzzy
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts."
-+
-+# OK
-+#: option.c:387
-+#, fuzzy
-+msgid "Specify time-to-live floor for cache."
-+msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts."
-+
-+# OK
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr "Ubah ke user ini setelah mulai. (default %s)."
- # OK
--#: option.c:372
-+#: option.c:389
- #, fuzzy
- msgid "Map DHCP vendor class to tag."
- msgstr "Memetakan kelas vendor DHCP ke daftar pilihan."
- # OK
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr "Menampilkan versi dan informasi hak cipta dnsmasq."
- # OK
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr "Terjemahkan alamat-alamat IPv4 dari server-server di atas."
- # OK
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr "Sebutkan rekord SRV."
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr ""
- # OK
--#: option.c:377
-+#: option.c:394
- #, fuzzy, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr "Sebutkan path file PID. (default %s)."
- # OK
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)."
- # OK
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr "Jawab permintaan DNS berdasarkan antarmuka dimana permintaan dikirimkan."
- # OK
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr "Sebutkan rekord TXT DNS."
- # OK
--#: option.c:381
-+#: option.c:398
- #, fuzzy
- msgid "Specify PTR DNS record."
- msgstr "Sebutkan rekord TXT DNS."
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr ""
- # OK
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr "Hanya kaitkan ke antarmuka yang sedang digunakan saja."
- # OK
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr "Baca informasi statik host DHCP dari %s."
- # OK
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr "Mungkinkan antar muka DBus untuk menyetel server-server di atas, dsb."
- # OK
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr "JANGAN menyediakan DHCP pada antarmuka ini, hanya menyediakan DNS."
- # OK
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr "Mungkinkan alokasi alamat dinamis untuk bootp."
- # OK
--#: option.c:388
-+#: option.c:405
- #, fuzzy
- msgid "Map MAC address (with wildcards) to option set."
- msgstr "Memetakan kelas vendor DHCP ke daftar pilihan."
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr ""
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr ""
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr ""
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr ""
- # OK
--#: option.c:395
-+#: option.c:412
- #, fuzzy
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr "Ubah ke user ini setelah mulai. (default %s)."
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr ""
- # OK
--#: option.c:397
-+#: option.c:414
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)."
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr ""
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr ""
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr ""
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr ""
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr ""
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr ""
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr ""
- # OK
--#: option.c:405
-+#: option.c:422
- #, fuzzy, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)."
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr ""
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr ""
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr ""
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr ""
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr ""
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr ""
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr ""
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr ""
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr ""
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr ""
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr ""
- # OK
--#: option.c:417
-+#: option.c:434
- #, fuzzy
- msgid "Specify NAPTR DNS record."
- msgstr "Sebutkan rekord TXT DNS."
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr ""
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr ""
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr ""
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr ""
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr ""
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr ""
- # OK
--#: option.c:424
-+#: option.c:441
- #, fuzzy
- msgid "Prompt to send to PXE clients."
- msgstr "Setel pilihan-pilihan tambahan yang akan disetel untuk klien-klien DHCP."
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr ""
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr ""
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr ""
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr ""
- # OK
--#: option.c:429
-+#: option.c:446
- #, fuzzy
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr "Terjemahkan alamat-alamat IPv4 dari server-server di atas."
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr ""
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr ""
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr ""
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr ""
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr ""
- # OK
--#: option.c:435
-+#: option.c:452
- #, fuzzy
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr "Sebutkan sebuah rekord MX."
- # OK
--#: option.c:436
-+#: option.c:453
- #, fuzzy
- msgid "Specify arbitrary DNS resource record"
- msgstr "Sebutkan rekord TXT DNS."
- # OK
--#: option.c:437
-+#: option.c:454
- #, fuzzy
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr "antarmuka tidak dikenal %s"
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr ""
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr ""
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr ""
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr ""
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr ""
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr ""
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr ""
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr ""
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr ""
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
- # OK
--#: option.c:661
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
-@@ -805,381 +843,381 @@ msgstr ""
- "\n"
- # OK
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr "Gunakan pilihan pendek saja pada perintah baris.\n"
- # OK
--#: option.c:665
-+#: option.c:684
- #, fuzzy, c-format
- msgid "Valid options are:\n"
- msgstr "Pilihan yang boleh adalah:\n"
- # OK
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr "port salah"
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr ""
- # OK
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- #, fuzzy
- msgid "bad interface name"
- msgstr "nama MX salah"
- # OK
--#: option.c:792
-+#: option.c:811
- #, fuzzy
- msgid "bad address"
- msgstr "membaca %s - %d alamat"
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr ""
- # OK
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr "dhcp-option salah"
- # OK
--#: option.c:1056
-+#: option.c:1075
- #, fuzzy
- msgid "bad IP address"
- msgstr "membaca %s - %d alamat"
- # OK
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- #, fuzzy
- msgid "bad IPv6 address"
- msgstr "membaca %s - %d alamat"
- # OK
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr "domain dalam dhcp-option salah"
- # OK
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr "dhcp-option terlalu panjang"
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr ""
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr ""
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr ""
- # OK
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, fuzzy, c-format
- msgid "cannot access directory %s: %s"
- msgstr "tidak bisa membaca %s: %s"
- # OK
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, fuzzy, c-format
- msgid "cannot access %s: %s"
- msgstr "tidak bisa membaca %s: %s"
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr ""
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr ""
- # OK
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr "kesukaan MX salah"
- # OK
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr "nama MX salah"
- # OK
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr "target MX salah"
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr ""
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr ""
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr ""
- # OK
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- #, fuzzy
- msgid "bad prefix"
- msgstr "port salah"
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr ""
- # OK
--#: option.c:2469
-+#: option.c:2545
- #, fuzzy
- msgid "bad port range"
- msgstr "port salah"
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr ""
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr ""
- # OK
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr "dhcp-range salah"
- # OK
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr "jangkauan DHCP tidak konsisten"
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr ""
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr ""
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr ""
- # OK
--#: option.c:2660
-+#: option.c:2736
- #, fuzzy
- msgid "inconsistent DHCPv6 range"
- msgstr "jangkauan DHCP tidak konsisten"
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr ""
- # OK
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- #, fuzzy
- msgid "bad hex constant"
- msgstr "dhcp-host salah"
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr ""
- # OK
--#: option.c:2852
-+#: option.c:2928
- #, fuzzy, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr "alamat IP kembar %s dalam direktif dhcp-config"
- # OK
--#: option.c:2910
-+#: option.c:2986
- #, fuzzy
- msgid "bad DHCP host name"
- msgstr "nama MX salah"
- # OK
--#: option.c:2992
-+#: option.c:3068
- #, fuzzy
- msgid "bad tag-if"
- msgstr "target MX salah"
- # OK
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr "nomor port tidak benar"
- # OK
--#: option.c:3378
-+#: option.c:3454
- #, fuzzy
- msgid "bad dhcp-proxy address"
- msgstr "membaca %s - %d alamat"
- # OK
--#: option.c:3404
-+#: option.c:3480
- #, fuzzy
- msgid "Bad dhcp-relay"
- msgstr "dhcp-range salah"
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr ""
- # OK
--#: option.c:3481
-+#: option.c:3557
- #, fuzzy
- msgid "invalid alias range"
- msgstr "weight tidak benar"
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr ""
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr ""
- # OK
--#: option.c:3560
-+#: option.c:3636
- #, fuzzy
- msgid "bad PTR record"
- msgstr "rekord SRV salah"
- # OK
--#: option.c:3591
-+#: option.c:3667
- #, fuzzy
- msgid "bad NAPTR record"
- msgstr "rekord SRV salah"
- # OK
--#: option.c:3625
-+#: option.c:3701
- #, fuzzy
- msgid "bad RR record"
- msgstr "rekord SRV salah"
- # OK
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr "rekord TXT salah"
- # OK
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr "rekord SRV salah"
- # OK
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr "target SRV salah"
- # OK
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr "prioritas tidak benar"
- # OK
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr "weight tidak benar"
- # OK
--#: option.c:3748
-+#: option.c:3824
- #, fuzzy
- msgid "Bad host-record"
- msgstr "rekord SRV salah"
- # OK
--#: option.c:3765
-+#: option.c:3841
- #, fuzzy
- msgid "Bad name in host-record"
- msgstr "kesalahan nama di %s"
- # OK
--#: option.c:3826
-+#: option.c:3906
- #, fuzzy
- msgid "bad trust anchor"
- msgstr "port salah"
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr ""
- # OK
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr "kurang \""
- # OK
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr "pilihan salah"
- # OK
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr "parameter berlebihan"
- # OK
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr "parameter kurang"
- # OK
--#: option.c:3972
-+#: option.c:4052
- #, fuzzy
- msgid "illegal option"
- msgstr "pilihan salah"
- # OK
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr "kesalahan"
- # OK
--#: option.c:3981
-+#: option.c:4061
- #, fuzzy, c-format
- msgid " at line %d of %s"
- msgstr "%s pada baris %d dari %%s"
- # OK
--#: option.c:4045 option.c:4168 tftp.c:667
--#, c-format
--msgid "cannot read %s: %s"
--msgstr "tidak bisa membaca %s: %s"
--
--# OK
--#: option.c:4229 option.c:4265
-+#: option.c:4076 option.c:4323 option.c:4359
- #, fuzzy, c-format
- msgid "read %s"
- msgstr "membaca %s"
--#: option.c:4331
-+# OK
-+#: option.c:4139 option.c:4262 tftp.c:667
-+#, c-format
-+msgid "cannot read %s: %s"
-+msgstr "tidak bisa membaca %s: %s"
-+
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr ""
- # OK
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr "Dnsmasq versi %s  %s\n"
- # OK
--#: option.c:4367
-+#: option.c:4461
- #, fuzzy, c-format
- msgid ""
- "Compile time options: %s\n"
-@@ -1189,100 +1227,100 @@ msgstr ""
- "\n"
- # OK
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr "Perangkat lunak ini tersedia TANPA JAMINAN SEDIKITPUN.\n"
- # OK
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr "Dnsdmasq adalah perangkat lunak bebas, dan Anda dipersilahkan untuk membagikannya\n"
- # OK
--#: option.c:4370
-+#: option.c:4464
- #, fuzzy, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr "dengan aturan GNU General Public License, versi 2.\n"
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr ""
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr ""
- # OK
--#: option.c:4385
-+#: option.c:4479
- #, fuzzy, c-format
- msgid "bad command line options: %s"
- msgstr "pilihan baris perintah salah: %s."
- # OK
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr "tidak bisa mendapatkan host-name: %s"
- # OK
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr "hanya satu file resolv.conf yang diperbolehkan dalam modus no-poll."
- # OK
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr "harus mempunyai tepat satu resolv.conf untuk mendapatkan nama domain."
- # OK
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, fuzzy, c-format
- msgid "failed to read %s: %s"
- msgstr "gagal membaca %s: %s"
- # OK
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr "tidak ditemukan direktif search di %s"
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr ""
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr ""
- # OK
--#: forward.c:114
-+#: forward.c:111
- #, fuzzy, c-format
- msgid "failed to send packet: %s"
- msgstr "gagal mendengarkan di socket: %s"
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
- # OK
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr "nameserver %s menolak melakukan resolusi rekursif"
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr ""
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
- # OK
--#: forward.c:2101
-+#: forward.c:2178
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)."
-@@ -1385,301 +1423,315 @@ msgstr "menggunakan nameserver %s#%d"
- msgid "using nameserver %s#%d"
- msgstr "menggunakan nameserver %s#%d"
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
--# OK
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+# OK
-+#: dnsmasq.c:161
- #, fuzzy
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h"
- # OK
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- #, fuzzy
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h"
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+msgid "cannot use --conntrack AND --query-port"
- msgstr ""
- # OK
--#: dnsmasq.c:173
-+#: dnsmasq.c:175
- #, fuzzy
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h"
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr ""
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr ""
- # OK
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- #, fuzzy
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h"
- # OK
--#: dnsmasq.c:193
-+#: dnsmasq.c:195
- #, fuzzy
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h"
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr ""
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr ""
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr ""
- # OK
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr "gagal mendapatkan daftar antarmuka: %s"
- # OK
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr "antarmuka tidak dikenal %s"
- # OK
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr "DBus error: %s"
- # OK
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h"
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr ""
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr ""
- # OK
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, fuzzy, c-format
- msgid "started, version %s DNS disabled"
- msgstr "dimulai, cache versi %s di disable"
- # OK
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr "dimulai, versi %s ukuran cache %d"
- # OK
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr "dimulai, cache versi %s di disable"
- # OK
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr "pilihan-pilihan saat kompilasi: %s"
- # OK
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr "dukungan DBus dimungkinkan: terkoneksi pada bus sistem"
- # OK
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr "dukungan DBus dimungkinkan: koneksi bus ditunda"
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
- # OK
--#: dnsmasq.c:684
-+#: dnsmasq.c:713
- #, fuzzy, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr "gagal memuat nama-nama dari %s: %s"
- # OK
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr "setelan opsi --bind-interfaces disebabkan keterbatasan OS"
- # OK
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr "peringatan: antarmuka %s tidak ada"
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr ""
- # OK
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- #, fuzzy
- msgid "warning: no upstream servers configured"
- msgstr "menyetel server-server di atas dengan DBus"
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr ""
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr ""
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr ""
- # OK
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- #, fuzzy
- msgid "enabled"
- msgstr "di disable"
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr ""
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr ""
- # OK
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr "terhubung ke sistem DBus"
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr ""
- # OK
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, fuzzy, c-format
- msgid "failed to create helper: %s"
- msgstr "gagal membaca %s: %s"
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr ""
- # OK
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, fuzzy, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr "gagal memuat nama-nama dari %s: %s"
- # OK
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, fuzzy, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr "gagal memuat nama-nama dari %s: %s"
- # OK
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, fuzzy, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr "gagal membaca %s: %s"
- # OK
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, fuzzy, c-format
- msgid "cannot open log %s: %s"
- msgstr "tidak bisa membuka %s:%s"
- # OK
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, fuzzy, c-format
- msgid "failed to load Lua script: %s"
- msgstr "gagal memuat %S: %s"
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr ""
--#: dnsmasq.c:1151
-+# OK
-+#: dnsmasq.c:1183
-+#, fuzzy, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr "tidak dapat membuka atau membuat file lease: %s"
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr ""
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr ""
- # OK
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, fuzzy, c-format
- msgid "failed to execute %s: %s"
- msgstr "gagal mengakses %s: %s"
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr "keluar karena menerima SIGTERM"
- # OK
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, fuzzy, c-format
- msgid "failed to access %s: %s"
- msgstr "gagal mengakses %s: %s"
- # OK
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr "membaca %s"
- # OK
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, fuzzy, c-format
- msgid "no servers found in %s, will retry"
- msgstr "tidak ditemukan direktif search di %s"
-@@ -1725,29 +1777,29 @@ msgstr "antarmuka tidak dikenal %s"
- msgid "DHCP packet received on %s which has no address"
- msgstr ""
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
- # OK
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr "jangkauan DHCP %s -- %s tidak konsisten dengan netmask %s"
- # OK
--#: dhcp.c:807
-+#: dhcp.c:812
- #, fuzzy, c-format
- msgid "bad line at %s line %d"
- msgstr "kesalahan nama pada %s baris %d"
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr ""
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr ""
-@@ -1830,13 +1882,13 @@ msgid "disabled"
- msgstr "di disable"
- # OK
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr "diabaikan"
- # OK
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr "alamat telah digunakan"
-@@ -1860,7 +1912,7 @@ msgstr "tak ada alamat yang disetel"
- msgid "no leases left"
- msgstr "tak ada lease yang tersisa"
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr ""
-@@ -1870,7 +1922,7 @@ msgid "PXE BIS not supported"
- msgstr ""
- # OK
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, fuzzy, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr "men-disable alamat statik DHCP %s"
-@@ -1909,7 +1961,7 @@ msgid "wrong address"
- msgstr "alamat salah"
- # OK
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr "lease tak ditemukan"
-@@ -1965,7 +2017,7 @@ msgid "PXE menu too large"
- msgstr ""
- # OK
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, fuzzy, c-format
- msgid "%u requested options: %s"
- msgstr "pilihan-pilihan saat kompilasi: %s"
-@@ -1982,7 +2034,7 @@ msgid "cannot create netlink socket: %s"
- msgstr "tidak bisa mem-bind netlink socket: %s"
- # OK
--#: netlink.c:347
-+#: netlink.c:348
- #, fuzzy, c-format
- msgid "netlink returns error: %s"
- msgstr "DBus error: %s"
-@@ -2116,72 +2168,72 @@ msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr "tidak ada alamat yang bisa dipakai untuk permintaan DHCP %s %s"
- # OK
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, fuzzy, c-format
- msgid "%u vendor class: %u"
- msgstr "DBus error: %s"
- # OK
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, fuzzy, c-format
- msgid "%u client MAC address: %s"
- msgstr "tidak ada antarmuka dengan alamat %s"
- # OK
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, fuzzy, c-format
- msgid "unknown prefix-class %d"
- msgstr "lease tidak diketahui"
--#: rfc3315.c:791 rfc3315.c:913
-+# OK
-+#: rfc3315.c:803 rfc3315.c:902
-+#, fuzzy
-+msgid "address unavailable"
-+msgstr "alamat tak tersedia"
-+
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
- msgid "success"
- msgstr ""
- # OK
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
- #, fuzzy
- msgid "no addresses available"
- msgstr "tak ada alamat yang tersedia"
--# OK
--#: rfc3315.c:865
--#, fuzzy
--msgid "address unavailable"
--msgstr "alamat tak tersedia"
--
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr ""
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr ""
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr ""
- # OK
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- #, fuzzy
- msgid "address invalid"
- msgstr "alamat telah digunakan"
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr ""
- # OK
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- #, fuzzy
- msgid "all addresses still on link"
- msgstr "kesalahan nama pada %s baris %d"
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr ""
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr ""
-@@ -2280,7 +2332,7 @@ msgstr ""
- msgid "cannot create ICMPv6 socket: %s"
- msgstr "tidak bisa membuat socket DHCP: %s"
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr ""
-@@ -2297,59 +2349,99 @@ msgstr "gagal mem-bind socket server DHCP: %s"
- msgid "failed to create IPset control socket: %s"
- msgstr "gagal membuat socket: %s "
-+# OK
-+#: dnssec.c:425 dnssec.c:469
-+#, fuzzy, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr "gagal membaca %s: %s"
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
- # OK
--#: tables.c:105
-+#: tables.c:109
- #, fuzzy, c-format
- msgid "failed to access pf devices: %s"
- msgstr "gagal mengakses %s: %s"
- # OK
--#: tables.c:119
-+#: tables.c:123
- #, fuzzy, c-format
- msgid "warning: no opened pf devices %s"
- msgstr "menggunakan alamat lokal saja untuk %s %s"
- # OK
--#: tables.c:127
-+#: tables.c:131
- #, fuzzy, c-format
- msgid "error: cannot use table name %s"
- msgstr "tidak bisa mendapatkan host-name: %s"
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
- # OK
--#: tables.c:162
-+#: tables.c:166
- #, fuzzy, c-format
- msgid "%d addresses %s"
- msgstr "membaca %s - %d alamat"
- # OK
-+#: inotify.c:46
-+#, fuzzy, c-format
-+msgid "failed to create inotify: %s"
-+msgstr "gagal membaca %s: %s"
-+
-+# OK
-+#: inotify.c:60
-+#, fuzzy, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr "tidak dapat membuka atau membuat file lease: %s"
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+# OK
-+#: inotify.c:75 inotify.c:112
-+#, fuzzy, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr "gagal membuat socket: %s "
-+
-+# OK
-+#: inotify.c:97
-+#, fuzzy, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr "tidak bisa membaca %s: %s"
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-+
-+# OK
- #~ msgid "duplicate IP address %s in dhcp-config directive."
- #~ msgstr "alamat IP kembar %s dalam direktif dhcp-config"
-diff --git a/po/it.po b/po/it.po
-index f3b547576ba4..64342c9804ba 100644
---- a/po/it.po
-+++ b/po/it.po
-@@ -16,70 +16,70 @@ msgstr ""
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
--#: cache.c:908
-+#: cache.c:941
- #, c-format
- msgid "failed to load names from %s: %s"
- msgstr ""
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr ""
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr ""
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr ""
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr ""
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr ""
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr ""
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr ""
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr ""
--#: cache.c:1367
-+#: cache.c:1422
- #, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr ""
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr ""
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr ""
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr ""
-@@ -93,7 +93,7 @@ msgstr ""
- msgid "failed to allocate memory"
- msgstr ""
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr ""
-@@ -107,990 +107,1018 @@ msgstr ""
- msgid "failed to allocate %d bytes"
- msgstr ""
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr ""
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr ""
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr ""
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr ""
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr ""
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr ""
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr ""
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr ""
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr ""
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr ""
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr ""
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr ""
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr ""
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr ""
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr ""
--#: option.c:332
-+#: option.c:344
- msgid "Read DHCP host specs from file."
- msgstr ""
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr ""
--#: option.c:334
-+#: option.c:346
-+msgid "Read DHCP host specs from a directory."
-+msgstr ""
-+
-+#: option.c:347
-+msgid "Read DHCP options from a directory."
-+msgstr ""
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr ""
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr ""
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr ""
--#: option.c:337
-+#: option.c:351
-+msgid "Read hosts files from a directory."
-+msgstr ""
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr ""
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr ""
--#: option.c:339
-+#: option.c:354
- msgid "Map DHCP user class to tag."
- msgstr ""
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr ""
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr ""
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr ""
--#: option.c:343
-+#: option.c:358
- msgid "Don't do DHCP for hosts with tag set."
- msgstr ""
--#: option.c:344
-+#: option.c:359
- msgid "Force broadcast replies for hosts with tag set."
- msgstr ""
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr ""
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr ""
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr ""
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr ""
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr ""
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr ""
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr ""
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr ""
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr ""
--#: option.c:354
-+#: option.c:369
- msgid "Specify options to be sent to DHCP clients."
- msgstr ""
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr ""
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr ""
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr ""
--#: option.c:358
-+#: option.c:373
- msgid "Log DNS queries."
- msgstr ""
--#: option.c:359
-+#: option.c:374
- msgid "Force the originating port for upstream DNS queries."
- msgstr ""
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr ""
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr ""
--#: option.c:362
-+#: option.c:377
- msgid "Specify path to file with server= options"
- msgstr ""
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr ""
--#: option.c:364
-+#: option.c:379
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr ""
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr ""
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr ""
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr ""
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr ""
--#: option.c:369
-+#: option.c:384
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr ""
--#: option.c:370
-+#: option.c:385
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr ""
--#: option.c:371
-+#: option.c:386
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr ""
-+
-+#: option.c:387
-+msgid "Specify time-to-live floor for cache."
-+msgstr ""
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr ""
--#: option.c:372
-+#: option.c:389
- msgid "Map DHCP vendor class to tag."
- msgstr ""
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr ""
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr ""
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr ""
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr ""
--#: option.c:377
-+#: option.c:394
- #, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr ""
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr ""
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr ""
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr ""
--#: option.c:381
-+#: option.c:398
- msgid "Specify PTR DNS record."
- msgstr ""
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr ""
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr ""
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr ""
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr ""
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr ""
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr ""
--#: option.c:388
-+#: option.c:405
- msgid "Map MAC address (with wildcards) to option set."
- msgstr ""
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr ""
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr ""
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr ""
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr ""
--#: option.c:395
-+#: option.c:412
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr ""
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr ""
--#: option.c:397
-+#: option.c:414
- #, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr ""
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr ""
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr ""
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr ""
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr ""
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr ""
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr ""
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr ""
--#: option.c:405
-+#: option.c:422
- #, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr ""
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr ""
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr ""
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr ""
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr ""
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr ""
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr ""
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr ""
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr ""
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr ""
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr ""
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr ""
--#: option.c:417
-+#: option.c:434
- msgid "Specify NAPTR DNS record."
- msgstr ""
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr ""
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr ""
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr ""
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr ""
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr ""
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr ""
--#: option.c:424
-+#: option.c:441
- msgid "Prompt to send to PXE clients."
- msgstr ""
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr ""
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr ""
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr ""
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr ""
--#: option.c:429
-+#: option.c:446
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr ""
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr ""
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr ""
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr ""
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr ""
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr ""
--#: option.c:435
-+#: option.c:452
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr ""
--#: option.c:436
-+#: option.c:453
- msgid "Specify arbitrary DNS resource record"
- msgstr ""
--#: option.c:437
-+#: option.c:454
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr ""
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr ""
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr ""
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr ""
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr ""
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr ""
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr ""
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr ""
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr ""
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr ""
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
- "\n"
- msgstr ""
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr ""
--#: option.c:665
-+#: option.c:684
- #, c-format
- msgid "Valid options are:\n"
- msgstr ""
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr ""
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr ""
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- msgid "bad interface name"
- msgstr ""
--#: option.c:792
-+#: option.c:811
- msgid "bad address"
- msgstr ""
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr ""
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr ""
--#: option.c:1056
-+#: option.c:1075
- msgid "bad IP address"
- msgstr ""
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- msgid "bad IPv6 address"
- msgstr ""
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr ""
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr ""
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr ""
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr ""
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr ""
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, c-format
- msgid "cannot access directory %s: %s"
- msgstr ""
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, c-format
- msgid "cannot access %s: %s"
- msgstr ""
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr ""
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr ""
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr ""
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr ""
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr ""
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr ""
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr ""
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr ""
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- msgid "bad prefix"
- msgstr ""
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr ""
--#: option.c:2469
-+#: option.c:2545
- msgid "bad port range"
- msgstr ""
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr ""
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr ""
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr ""
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr ""
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr ""
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr ""
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr ""
--#: option.c:2660
-+#: option.c:2736
- msgid "inconsistent DHCPv6 range"
- msgstr ""
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr ""
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- msgid "bad hex constant"
- msgstr ""
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr ""
--#: option.c:2852
-+#: option.c:2928
- #, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr ""
--#: option.c:2910
-+#: option.c:2986
- msgid "bad DHCP host name"
- msgstr ""
--#: option.c:2992
-+#: option.c:3068
- msgid "bad tag-if"
- msgstr ""
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr ""
--#: option.c:3378
-+#: option.c:3454
- msgid "bad dhcp-proxy address"
- msgstr ""
--#: option.c:3404
-+#: option.c:3480
- msgid "Bad dhcp-relay"
- msgstr ""
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr ""
--#: option.c:3481
-+#: option.c:3557
- msgid "invalid alias range"
- msgstr ""
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr ""
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr ""
--#: option.c:3560
-+#: option.c:3636
- msgid "bad PTR record"
- msgstr ""
--#: option.c:3591
-+#: option.c:3667
- msgid "bad NAPTR record"
- msgstr ""
--#: option.c:3625
-+#: option.c:3701
- msgid "bad RR record"
- msgstr ""
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr ""
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr ""
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr ""
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr ""
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr ""
--#: option.c:3748
-+#: option.c:3824
- msgid "Bad host-record"
- msgstr ""
--#: option.c:3765
-+#: option.c:3841
- msgid "Bad name in host-record"
- msgstr ""
--#: option.c:3826
-+#: option.c:3906
- msgid "bad trust anchor"
- msgstr ""
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr ""
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr ""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr ""
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr ""
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr ""
--#: option.c:3972
-+#: option.c:4052
- msgid "illegal option"
- msgstr ""
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr ""
--#: option.c:3981
-+#: option.c:4061
- #, c-format
- msgid " at line %d of %s"
- msgstr ""
--#: option.c:4045 option.c:4168 tftp.c:667
-+#: option.c:4076 option.c:4323 option.c:4359
- #, c-format
--msgid "cannot read %s: %s"
-+msgid "read %s"
- msgstr ""
--#: option.c:4229 option.c:4265
-+#: option.c:4139 option.c:4262 tftp.c:667
- #, c-format
--msgid "read %s"
-+msgid "cannot read %s: %s"
- msgstr ""
--#: option.c:4331
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr ""
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr ""
--#: option.c:4367
-+#: option.c:4461
- #, c-format
- msgid ""
- "Compile time options: %s\n"
- "\n"
- msgstr ""
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr ""
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr ""
--#: option.c:4370
-+#: option.c:4464
- #, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr ""
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr ""
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr ""
--#: option.c:4385
-+#: option.c:4479
- #, c-format
- msgid "bad command line options: %s"
- msgstr ""
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr ""
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr ""
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr ""
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, c-format
- msgid "failed to read %s: %s"
- msgstr ""
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr ""
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr ""
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr ""
--#: forward.c:114
-+#: forward.c:111
- #, c-format
- msgid "failed to send packet: %s"
- msgstr ""
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr ""
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr ""
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
--#: forward.c:2101
-+#: forward.c:2178
- #, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr ""
-@@ -1180,263 +1208,276 @@ msgstr ""
- msgid "using nameserver %s#%d"
- msgstr ""
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+#: dnsmasq.c:161
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr ""
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr ""
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+msgid "cannot use --conntrack AND --query-port"
- msgstr ""
--#: dnsmasq.c:173
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+#: dnsmasq.c:175
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr ""
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr ""
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr ""
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr ""
--#: dnsmasq.c:193
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+#: dnsmasq.c:195
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr ""
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr ""
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr ""
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr ""
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr ""
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr ""
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr ""
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr ""
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr ""
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr ""
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, c-format
- msgid "started, version %s DNS disabled"
- msgstr ""
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr ""
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr ""
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr ""
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr ""
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr ""
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
-+#: dnsmasq.c:713
- #, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr ""
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr ""
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr ""
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr ""
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- msgid "warning: no upstream servers configured"
- msgstr ""
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr ""
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr ""
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "enabled"
- msgstr ""
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr ""
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr ""
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr ""
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr ""
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, c-format
- msgid "failed to create helper: %s"
- msgstr ""
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr ""
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr ""
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr ""
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr ""
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, c-format
- msgid "cannot open log %s: %s"
- msgstr ""
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, c-format
- msgid "failed to load Lua script: %s"
- msgstr ""
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr ""
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr ""
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr ""
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr ""
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, c-format
- msgid "failed to execute %s: %s"
- msgstr ""
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr ""
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, c-format
- msgid "failed to access %s: %s"
- msgstr ""
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr ""
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, c-format
- msgid "no servers found in %s, will retry"
- msgstr ""
-@@ -1476,27 +1517,27 @@ msgstr ""
- msgid "DHCP packet received on %s which has no address"
- msgstr ""
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr ""
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr ""
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr ""
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr ""
-@@ -1567,12 +1608,12 @@ msgstr ""
- msgid "disabled"
- msgstr ""
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr ""
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr ""
-@@ -1592,7 +1633,7 @@ msgstr ""
- msgid "no leases left"
- msgstr ""
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr ""
-@@ -1601,7 +1642,7 @@ msgstr ""
- msgid "PXE BIS not supported"
- msgstr ""
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr ""
-@@ -1637,7 +1678,7 @@ msgstr ""
- msgid "wrong address"
- msgstr ""
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr ""
-@@ -1687,7 +1728,7 @@ msgstr ""
- msgid "PXE menu too large"
- msgstr ""
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, c-format
- msgid "%u requested options: %s"
- msgstr ""
-@@ -1702,7 +1743,7 @@ msgstr ""
- msgid "cannot create netlink socket: %s"
- msgstr ""
--#: netlink.c:347
-+#: netlink.c:348
- #, c-format
- msgid "netlink returns error: %s"
- msgstr ""
-@@ -1820,62 +1861,62 @@ msgstr ""
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr ""
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, c-format
- msgid "%u vendor class: %u"
- msgstr ""
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, c-format
- msgid "%u client MAC address: %s"
- msgstr ""
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, c-format
- msgid "unknown prefix-class %d"
- msgstr ""
--#: rfc3315.c:791 rfc3315.c:913
--msgid "success"
-+#: rfc3315.c:803 rfc3315.c:902
-+msgid "address unavailable"
- msgstr ""
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
--msgid "no addresses available"
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
-+msgid "success"
- msgstr ""
--#: rfc3315.c:865
--msgid "address unavailable"
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
-+msgid "no addresses available"
- msgstr ""
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr ""
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr ""
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr ""
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- msgid "address invalid"
- msgstr ""
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr ""
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- msgid "all addresses still on link"
- msgstr ""
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr ""
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr ""
-@@ -1968,7 +2009,7 @@ msgstr ""
- msgid "cannot create ICMPv6 socket: %s"
- msgstr ""
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr ""
-@@ -1983,50 +2024,85 @@ msgstr ""
- msgid "failed to create IPset control socket: %s"
- msgstr ""
-+#: dnssec.c:425 dnssec.c:469
-+#, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr ""
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
--#: tables.c:105
-+#: tables.c:109
- #, c-format
- msgid "failed to access pf devices: %s"
- msgstr ""
--#: tables.c:119
-+#: tables.c:123
- #, c-format
- msgid "warning: no opened pf devices %s"
- msgstr ""
--#: tables.c:127
-+#: tables.c:131
- #, c-format
- msgid "error: cannot use table name %s"
- msgstr ""
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
--#: tables.c:162
-+#: tables.c:166
- #, c-format
- msgid "%d addresses %s"
- msgstr ""
-+
-+#: inotify.c:46
-+#, c-format
-+msgid "failed to create inotify: %s"
-+msgstr ""
-+
-+#: inotify.c:60
-+#, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr ""
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr ""
-+
-+#: inotify.c:97
-+#, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr ""
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-diff --git a/po/no.po b/po/no.po
-index ff7eaad9cad1..c2e7067d2304 100644
---- a/po/no.po
-+++ b/po/no.po
-@@ -18,70 +18,70 @@ msgstr ""
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
--#: cache.c:908
-+#: cache.c:941
- #, fuzzy, c-format
- msgid "failed to load names from %s: %s"
- msgstr "feilet å laste navn fra %s: %s"
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr "dårlig adresse ved %s linje %d"
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr "dårlig navn ved %s linje %d"
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr "les %s - %d adresser"
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr "mellomlager tømt"
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr ""
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr ""
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr "gir ikke navnet %s til DHCP leien for %s fordi navnet eksisterer i %s med adressen %s"
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr ""
--#: cache.c:1367
-+#: cache.c:1422
- #, fuzzy, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr "mellomlager størrelse %d, %d/%d mellomlager innsettinger re-bruker mellomlager plasser som ikke er utløpt"
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr ""
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr ""
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr ""
-@@ -96,7 +96,7 @@ msgstr "feilet 
- msgid "failed to allocate memory"
- msgstr "feilet å laste %d bytes"
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr "kunne ikke få minne"
-@@ -110,610 +110,643 @@ msgstr "kan ikke lese %s: %s"
- msgid "failed to allocate %d bytes"
- msgstr "feilet å laste %d bytes"
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr "uendelig"
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr "Spesifiser lokal(e) adresse(r) å lytte på."
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr "Returner ipaddr for alle verter i det spesifiserte domenet."
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr "Forfalsk revers oppslag for RFC1918 private adresse områder."
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr "Behandle ipaddr som NXDOMAIN (omgår Verisign wildcard)."
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr "Spesifiser størrelsen på mellomlager plassene (standard er %s)."
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr "Spesifiser konfigurasjonsfil (standard er %s)."
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr "IKKE legg (fork) som bakgrunnsprosess: kjør i debug modus."
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr "IKKE videresend oppslag som mangler domene del."
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr "Returner selv-pekende MX post for lokale verter."
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr "Utvid enkle navn i /etc/hosts med domene-suffiks."
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr "Ikke videresend falske/uekte DNS forespørsler fra Windows verter."
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr "Aktiver DHCP i det gitte området med leie varighet"
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr "Skift til denne gruppen etter oppstart (standard er %s)."
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr "Sett adresse eller vertsnavn for en spesifikk maskin."
--#: option.c:332
-+#: option.c:344
- #, fuzzy
- msgid "Read DHCP host specs from file."
- msgstr "dårlig MX navn"
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr ""
--#: option.c:334
-+#: option.c:346
-+#, fuzzy
-+msgid "Read DHCP host specs from a directory."
-+msgstr "dårlig MX navn"
-+
-+#: option.c:347
-+#, fuzzy
-+msgid "Read DHCP options from a directory."
-+msgstr "dårlig MX navn"
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr ""
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr "IKKE last %s filen."
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr "Spesifiser en verts (hosts) fil som skal leses i tilleg til %s."
--#: option.c:337
-+#: option.c:351
-+#, fuzzy
-+msgid "Read hosts files from a directory."
-+msgstr "dårlig MX navn"
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr "Spesifiser nettverkskort det skal lyttes på."
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr "Spesifiser nettverkskort det IKKE skal lyttes på."
--#: option.c:339
-+#: option.c:354
- #, fuzzy
- msgid "Map DHCP user class to tag."
- msgstr "Map DHCP bruker klasse til opsjon sett."
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr ""
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr ""
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr ""
--#: option.c:343
-+#: option.c:358
- #, fuzzy
- msgid "Don't do DHCP for hosts with tag set."
- msgstr "Ikke utfør DHCP for klienter i opsjon sett."
--#: option.c:344
-+#: option.c:359
- #, fuzzy
- msgid "Force broadcast replies for hosts with tag set."
- msgstr "Ikke utfør DHCP for klienter i opsjon sett."
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr "IKKE last (fork) som bakgrunnsprosess, IKKE kjør i debug modus."
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr "Anta at vi er den eneste DHCP tjeneren på det lokale nettverket."
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr "Spesifiser hvor DHCP leiene skal lagres (standard er %s)."
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr "Returner MX records for lokale verter."
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr "Spesifiser en MX post."
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr "Spesifiser BOOTP opsjoner til DHCP tjener."
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr "IKKE spør (poll) %s fil, les på nytt kun ved SIGHUP"
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr "IKKE mellomlagre søkeresultater som feiler."
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr "Bruk navnetjenere kun som bestemt i rekkefølgen gitt i %s."
--#: option.c:354
-+#: option.c:369
- #, fuzzy
- msgid "Specify options to be sent to DHCP clients."
- msgstr "Sett ekstra opsjoner som skal fordeles til DHCP klientene."
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr ""
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr "Spesifiser lytteport for DNS oppslag (standard er 53)."
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr "Maksimal støttet UDP pakkestørrelse for EDNS.0 (standard er %s)."
--#: option.c:358
-+#: option.c:373
- #, fuzzy
- msgid "Log DNS queries."
- msgstr "Logg oppslag."
--#: option.c:359
-+#: option.c:374
- #, fuzzy
- msgid "Force the originating port for upstream DNS queries."
- msgstr "Tving bruk av opprinnelig port for oppstrøms oppslag."
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr "IKKE les resolv.conf."
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Spesifiser stien til resolv.conf (standard er %s)."
--#: option.c:362
-+#: option.c:377
- #, fuzzy
- msgid "Specify path to file with server= options"
- msgstr "Spesifiser stien til PID fil. (standard er %s)."
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Spesifiser adressen(e) til oppstrøms tjenere med valgfrie domener."
--#: option.c:364
-+#: option.c:379
- #, fuzzy
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr "Spesifiser adressen(e) til oppstrøms tjenere med valgfrie domener."
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr "Aldri videresend oppslag til spesifiserte domener."
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr "Spesifiser domenet som skal tildeles i DHCP leien."
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr "Spesifiser default mål i en MX post."
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts."
--#: option.c:369
-+#: option.c:384
- #, fuzzy
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts."
--#: option.c:370
-+#: option.c:385
- #, fuzzy
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts."
--#: option.c:371
-+#: option.c:386
-+#, fuzzy
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts."
-+
-+#: option.c:387
-+#, fuzzy
-+msgid "Specify time-to-live floor for cache."
-+msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts."
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr "Skift til denne bruker etter oppstart (standard er %s)."
--#: option.c:372
-+#: option.c:389
- #, fuzzy
- msgid "Map DHCP vendor class to tag."
- msgstr "Map DHCP produsent klasse til opsjon sett."
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr "Vis dnsmasq versjon og copyright informasjon."
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr "Oversett IPv4 adresser fra oppstrøms tjenere."
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr "Spesifiser en SRV post."
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr ""
--#: option.c:377
-+#: option.c:394
- #, fuzzy, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr "Spesifiser stien til PID fil. (standard er %s)."
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)"
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr "Svar DNS oppslag basert på nettverkskortet oppslaget ble sendt til."
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr "Spesifiser TXT DNS post."
--#: option.c:381
-+#: option.c:398
- #, fuzzy
- msgid "Specify PTR DNS record."
- msgstr "Spesifiser TXT DNS post."
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr ""
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr "Bind kun til nettverkskort som er i bruk."
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr "Les DHCP statisk vert informasjon fra %s."
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr "Aktiver DBus interface for å sette oppstrøms tjenere, osv."
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr "Ikke lever DHCP på dette nettverkskortet, kun lever DNS."
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr "Aktiver dynamisk adresse allokering for bootp."
--#: option.c:388
-+#: option.c:405
- #, fuzzy
- msgid "Map MAC address (with wildcards) to option set."
- msgstr "Map DHCP produsent klasse til opsjon sett."
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr ""
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr ""
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr ""
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr ""
--#: option.c:395
-+#: option.c:412
- #, fuzzy
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr "Skift til denne bruker etter oppstart (standard er %s)."
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr ""
--#: option.c:397
-+#: option.c:414
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)"
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr ""
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr ""
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr ""
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr ""
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr ""
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr ""
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr ""
--#: option.c:405
-+#: option.c:422
- #, fuzzy, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)"
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr ""
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr ""
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr ""
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr ""
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr ""
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr ""
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr ""
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr ""
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr ""
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr ""
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr ""
--#: option.c:417
-+#: option.c:434
- #, fuzzy
- msgid "Specify NAPTR DNS record."
- msgstr "Spesifiser TXT DNS post."
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr ""
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr ""
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr ""
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr ""
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr ""
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr ""
--#: option.c:424
-+#: option.c:441
- #, fuzzy
- msgid "Prompt to send to PXE clients."
- msgstr "Sett ekstra opsjoner som skal fordeles til DHCP klientene."
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr ""
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr ""
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr ""
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr ""
--#: option.c:429
-+#: option.c:446
- #, fuzzy
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr "Oversett IPv4 adresser fra oppstrøms tjenere."
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr ""
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr ""
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr ""
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr ""
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr ""
--#: option.c:435
-+#: option.c:452
- #, fuzzy
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr "Spesifiser en MX post."
--#: option.c:436
-+#: option.c:453
- #, fuzzy
- msgid "Specify arbitrary DNS resource record"
- msgstr "Spesifiser TXT DNS post."
--#: option.c:437
-+#: option.c:454
- #, fuzzy
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr "ukjent tilknytning (interface) %s"
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr ""
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr ""
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr ""
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr ""
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr ""
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr ""
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr ""
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr ""
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr ""
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
-@@ -722,332 +755,332 @@ msgstr ""
- "Bruk: dnsmasq [opsjoner]\n"
- "\n"
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr "Bruk korte opsjoner kun på kommandolinjen.\n"
--#: option.c:665
-+#: option.c:684
- #, fuzzy, c-format
- msgid "Valid options are:\n"
- msgstr "Gyldige opsjoner er :\n"
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr "dårlig port"
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr ""
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- #, fuzzy
- msgid "bad interface name"
- msgstr "dårlig MX navn"
--#: option.c:792
-+#: option.c:811
- #, fuzzy
- msgid "bad address"
- msgstr "les %s - %d adresser"
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr ""
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr "dårlig dhcp-opsjon"
--#: option.c:1056
-+#: option.c:1075
- #, fuzzy
- msgid "bad IP address"
- msgstr "les %s - %d adresser"
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- #, fuzzy
- msgid "bad IPv6 address"
- msgstr "les %s - %d adresser"
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr "dårlig domene i dhcp-opsjon"
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr "dhcp-opsjon for lang"
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr ""
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr ""
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr ""
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, fuzzy, c-format
- msgid "cannot access directory %s: %s"
- msgstr "kan ikke lese %s: %s"
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, fuzzy, c-format
- msgid "cannot access %s: %s"
- msgstr "kan ikke lese %s: %s"
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr ""
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr ""
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr "dårlig MX preferanse"
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr "dårlig MX navn"
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr "dårlig MX mål"
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr ""
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr ""
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr ""
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- #, fuzzy
- msgid "bad prefix"
- msgstr "dårlig port"
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr ""
--#: option.c:2469
-+#: option.c:2545
- #, fuzzy
- msgid "bad port range"
- msgstr "dårlig port"
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr ""
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr ""
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr "dårlig dhcp-område"
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr "ikke konsistent DHCP område"
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr ""
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr ""
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr ""
--#: option.c:2660
-+#: option.c:2736
- #, fuzzy
- msgid "inconsistent DHCPv6 range"
- msgstr "ikke konsistent DHCP område"
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr ""
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- #, fuzzy
- msgid "bad hex constant"
- msgstr "dårlig dhcp-vert"
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr ""
--#: option.c:2852
-+#: option.c:2928
- #, fuzzy, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr "dubliserte IP adresser i %s dhcp-config direktiv."
--#: option.c:2910
-+#: option.c:2986
- #, fuzzy
- msgid "bad DHCP host name"
- msgstr "dårlig MX navn"
--#: option.c:2992
-+#: option.c:3068
- #, fuzzy
- msgid "bad tag-if"
- msgstr "dårlig MX mål"
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr "ugyldig portnummer"
--#: option.c:3378
-+#: option.c:3454
- #, fuzzy
- msgid "bad dhcp-proxy address"
- msgstr "les %s - %d adresser"
--#: option.c:3404
-+#: option.c:3480
- #, fuzzy
- msgid "Bad dhcp-relay"
- msgstr "dårlig dhcp-område"
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr ""
--#: option.c:3481
-+#: option.c:3557
- #, fuzzy
- msgid "invalid alias range"
- msgstr "ugyldig vekt"
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr ""
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr ""
--#: option.c:3560
-+#: option.c:3636
- #, fuzzy
- msgid "bad PTR record"
- msgstr "dårlig SRV post"
--#: option.c:3591
-+#: option.c:3667
- #, fuzzy
- msgid "bad NAPTR record"
- msgstr "dårlig SRV post"
--#: option.c:3625
-+#: option.c:3701
- #, fuzzy
- msgid "bad RR record"
- msgstr "dårlig SRV post"
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr "dårlig TXT post"
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr "dårlig SRV post"
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr "dårlig SRV mål"
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr "ugyldig prioritet"
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr "ugyldig vekt"
--#: option.c:3748
-+#: option.c:3824
- #, fuzzy
- msgid "Bad host-record"
- msgstr "dårlig SRV post"
--#: option.c:3765
-+#: option.c:3841
- #, fuzzy
- msgid "Bad name in host-record"
- msgstr "dårlig navn i %s"
--#: option.c:3826
-+#: option.c:3906
- #, fuzzy
- msgid "bad trust anchor"
- msgstr "dårlig port"
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr ""
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr "mangler \""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr "dårlig opsjon"
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr "overflødig parameter"
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr "mangler parameter"
--#: option.c:3972
-+#: option.c:4052
- #, fuzzy
- msgid "illegal option"
- msgstr "dårlig opsjon"
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr "feil"
--#: option.c:3981
-+#: option.c:4061
- #, fuzzy, c-format
- msgid " at line %d of %s"
- msgstr "%s på linje %d av %%s"
--#: option.c:4045 option.c:4168 tftp.c:667
--#, c-format
--msgid "cannot read %s: %s"
--msgstr "kan ikke lese %s: %s"
--
--#: option.c:4229 option.c:4265
-+#: option.c:4076 option.c:4323 option.c:4359
- #, fuzzy, c-format
- msgid "read %s"
- msgstr "leser %s"
--#: option.c:4331
-+#: option.c:4139 option.c:4262 tftp.c:667
-+#, c-format
-+msgid "cannot read %s: %s"
-+msgstr "kan ikke lese %s: %s"
-+
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr ""
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr "Dnsmasq versjon %s %s\n"
--#: option.c:4367
-+#: option.c:4461
- #, fuzzy, c-format
- msgid ""
- "Compile time options: %s\n"
-@@ -1056,89 +1089,89 @@ msgstr ""
- "Kompileringsopsjoner %s\n"
- "\n"
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr "Denne programvaren kommer med ABSOLUTT INGEN GARANTI.\n"
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr "DNsmasq er fri programvare, du er velkommen til å redistribuere den\n"
--#: option.c:4370
-+#: option.c:4464
- #, fuzzy, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr "under vilkårene gitt i GNU General Public License, versjon 2.\n"
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr ""
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr ""
--#: option.c:4385
-+#: option.c:4479
- #, fuzzy, c-format
- msgid "bad command line options: %s"
- msgstr "dårlige kommandlinje opsjoner: %s."
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr "klarer ikke å få vertsnavn: %s"
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr "kun en resolv.conf fil tillat i no-poll modus."
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr "må ha nøyaktig en resolv.conf å lese domene fra."
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, fuzzy, c-format
- msgid "failed to read %s: %s"
- msgstr "feilet å lese %s: %s"
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr "intet søke direktiv funnet i %s"
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr ""
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr ""
--#: forward.c:114
-+#: forward.c:111
- #, fuzzy, c-format
- msgid "failed to send packet: %s"
- msgstr "feilet å lytte på socket: %s"
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr "navnetjener %s nektet å gjøre et rekursivt oppslag"
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr ""
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
--#: forward.c:2101
-+#: forward.c:2178
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)"
-@@ -1228,270 +1261,283 @@ msgstr "benytter navnetjener %s#%d"
- msgid "using nameserver %s#%d"
- msgstr "benytter navnetjener %s#%d"
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+#: dnsmasq.c:161
- #, fuzzy
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h"
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- #, fuzzy
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h"
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+msgid "cannot use --conntrack AND --query-port"
- msgstr ""
--#: dnsmasq.c:173
-+#: dnsmasq.c:175
- #, fuzzy
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h"
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr ""
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr ""
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- #, fuzzy
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h"
--#: dnsmasq.c:193
-+#: dnsmasq.c:195
- #, fuzzy
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h"
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr ""
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr ""
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr ""
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr "feilet å finne liste av tilknytninger (interfaces): %s"
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr "ukjent tilknytning (interface) %s"
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr "DBus feil: %s"
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h"
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr ""
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr ""
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, fuzzy, c-format
- msgid "started, version %s DNS disabled"
- msgstr "startet, versjon %s mellomlager deaktivert"
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr "startet, versjon %s mellomlager størrelse %d"
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr "startet, versjon %s mellomlager deaktivert"
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr "kompilerings opsjoner: %s"
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr "DBus støtte aktivert: koblet til system buss"
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr "DBus støtte aktivert: avventer buss tilkobling"
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
-+#: dnsmasq.c:713
- #, fuzzy, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr "feilet å laste navn fra %s: %s"
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr "setter --bind-interfaces opsjon på grunn av OS begrensninger"
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr "advarsel: nettverkskort %s eksisterer ikke for tiden"
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr ""
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- #, fuzzy
- msgid "warning: no upstream servers configured"
- msgstr "setter oppstrøms tjener fra DBus"
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr ""
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr ""
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- #, fuzzy
- msgid "enabled"
- msgstr "deaktivert"
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr ""
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr ""
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr "tilkoblet til system DBus"
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr ""
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, fuzzy, c-format
- msgid "failed to create helper: %s"
- msgstr "feilet å lese %s: %s"
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr ""
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, fuzzy, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr "feilet å laste navn fra %s: %s"
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, fuzzy, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr "feilet å laste navn fra %s: %s"
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, fuzzy, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr "feilet å lese %s: %s"
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, fuzzy, c-format
- msgid "cannot open log %s: %s"
- msgstr "kan ikke åpne %s:%s"
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, fuzzy, c-format
- msgid "failed to load Lua script: %s"
- msgstr "feilet å laste %s: %s"
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr ""
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, fuzzy, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr "kan ikke åpne eller lage leie fil: %s"
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr ""
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr ""
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, fuzzy, c-format
- msgid "failed to execute %s: %s"
- msgstr "feilet å få tilgang til %s: %s"
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr "avslutter etter mottak av SIGTERM"
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, fuzzy, c-format
- msgid "failed to access %s: %s"
- msgstr "feilet å få tilgang til %s: %s"
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr "leser %s"
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, fuzzy, c-format
- msgid "no servers found in %s, will retry"
- msgstr "intet søke direktiv funnet i %s"
-@@ -1531,27 +1577,27 @@ msgstr "ukjent tilknytning (interface) %s"
- msgid "DHCP packet received on %s which has no address"
- msgstr ""
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr "DHCP område %s -- %s er ikke konsistent med nettmaske %s"
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr "dårlig linje ved %s linje %d"
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr ""
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr ""
-@@ -1622,12 +1668,12 @@ msgstr "DBus feil: %s"
- msgid "disabled"
- msgstr "deaktivert"
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr "oversett"
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr "adresse i bruk"
-@@ -1647,7 +1693,7 @@ msgstr "ingen adresse konfigurert"
- msgid "no leases left"
- msgstr "ingen leier igjen"
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr ""
-@@ -1656,7 +1702,7 @@ msgstr ""
- msgid "PXE BIS not supported"
- msgstr ""
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, fuzzy, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr "deaktiverer DHCP statisk adresse %s"
-@@ -1692,7 +1738,7 @@ msgstr ""
- msgid "wrong address"
- msgstr "gal adresse"
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr "leie ikke funnet"
-@@ -1742,7 +1788,7 @@ msgstr "kan ikke sende DHCP opsjon %d: ikke mer plass i pakken"
- msgid "PXE menu too large"
- msgstr ""
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, fuzzy, c-format
- msgid "%u requested options: %s"
- msgstr "kompilerings opsjoner: %s"
-@@ -1757,7 +1803,7 @@ msgstr ""
- msgid "cannot create netlink socket: %s"
- msgstr "kan ikke binde netlink socket: %s"
--#: netlink.c:347
-+#: netlink.c:348
- #, fuzzy, c-format
- msgid "netlink returns error: %s"
- msgstr "DBus feil: %s"
-@@ -1875,66 +1921,66 @@ msgstr "ingen adresse omr
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr "ingen adresse område tilgjengelig for DHCP krav %s %s"
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, fuzzy, c-format
- msgid "%u vendor class: %u"
- msgstr "DBus feil: %s"
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, fuzzy, c-format
- msgid "%u client MAC address: %s"
- msgstr "ingen tilknytning (interface) med adresse %s"
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, fuzzy, c-format
- msgid "unknown prefix-class %d"
- msgstr "ukjent leie"
--#: rfc3315.c:791 rfc3315.c:913
-+#: rfc3315.c:803 rfc3315.c:902
-+#, fuzzy
-+msgid "address unavailable"
-+msgstr "adresse ikke tilgjengelig"
-+
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
- msgid "success"
- msgstr ""
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
- #, fuzzy
- msgid "no addresses available"
- msgstr "ingen adresse tilgjengelig"
--#: rfc3315.c:865
--#, fuzzy
--msgid "address unavailable"
--msgstr "adresse ikke tilgjengelig"
--
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr ""
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr ""
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr ""
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- #, fuzzy
- msgid "address invalid"
- msgstr "adresse i bruk"
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr ""
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- #, fuzzy
- msgid "all addresses still on link"
- msgstr "dårlig adresse ved %s linje %d"
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr ""
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr ""
-@@ -2027,7 +2073,7 @@ msgstr ""
- msgid "cannot create ICMPv6 socket: %s"
- msgstr "kan ikke lage DHCP socket: %s"
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr ""
-@@ -2042,54 +2088,89 @@ msgstr "feilet 
- msgid "failed to create IPset control socket: %s"
- msgstr "feilet å lage lytte socket: %s"
-+#: dnssec.c:425 dnssec.c:469
-+#, fuzzy, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr "feilet å lese %s: %s"
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
--#: tables.c:105
-+#: tables.c:109
- #, fuzzy, c-format
- msgid "failed to access pf devices: %s"
- msgstr "feilet å få tilgang til %s: %s"
--#: tables.c:119
-+#: tables.c:123
- #, fuzzy, c-format
- msgid "warning: no opened pf devices %s"
- msgstr "benytter lokale adresser kun for %s %s"
--#: tables.c:127
-+#: tables.c:131
- #, fuzzy, c-format
- msgid "error: cannot use table name %s"
- msgstr "klarer ikke å få vertsnavn: %s"
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
--#: tables.c:162
-+#: tables.c:166
- #, fuzzy, c-format
- msgid "%d addresses %s"
- msgstr "les %s - %d adresser"
-+#: inotify.c:46
-+#, fuzzy, c-format
-+msgid "failed to create inotify: %s"
-+msgstr "feilet å lese %s: %s"
-+
-+#: inotify.c:60
-+#, fuzzy, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr "kan ikke åpne eller lage leie fil: %s"
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, fuzzy, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr "feilet å lage lytte socket: %s"
-+
-+#: inotify.c:97
-+#, fuzzy, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr "kan ikke lese %s: %s"
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-+
- #~ msgid "duplicate IP address %s in dhcp-config directive."
- #~ msgstr "dubliserte IP adresser i %s dhcp-config direktiv."
-diff --git a/po/pl.po b/po/pl.po
-index 705f1779390f..362e41226644 100644
---- a/po/pl.po
-+++ b/po/pl.po
-@@ -21,70 +21,70 @@ msgstr ""
- "X-Generator: Poedit 1.6.9\n"
- "X-Language: pl_PL\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr "Wewnętrzny błąd w pamięci podręcznej."
--#: cache.c:908
-+#: cache.c:941
- #, c-format
- msgid "failed to load names from %s: %s"
- msgstr "nie potrafię wczytać nazw z %s: %s"
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr "błędny adres w pliku %s, w linii %d"
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr "błędna nazwa w pliku %s, w linii %d"
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr "wczytałem %s - %d adresów"
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr "wyczyszczono pamięć podręczną"
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr "Nie znalazłem adresu IPv4 komputera %s"
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr "%s to nazwa CNAME, nie przypisuję jej dzierżawie DHCP %s"
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr "nazwa %s nie została nadana dzierżawie DHCP %s, ponieważ nazwa istnieje w %s i ma już adres %s"
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr "czas %lu"
--#: cache.c:1367
-+#: cache.c:1422
- #, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr "wielkość pamięci podręcznej: %d; %d z %d miejsc aktualnych wpisów użyto ponownie."
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr "%u zapytań przesłanych dalej, %u odpowiedzi udzielonych samodzielnie"
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr "zapytań do stref autorytatywnych %u"
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr "serwer %s#%d: %u zapytań wysłanych, %u ponowionych lub nieudanych"
-@@ -98,7 +98,7 @@ msgstr "brak możliwości użycia generatora liczb losowych: %s"
- msgid "failed to allocate memory"
- msgstr "nie udało się przydzielić pamięci"
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr "nie można dostać pamięci"
-@@ -112,589 +112,622 @@ msgstr "błąd podczas próby utworzenia potoku: %s"
- msgid "failed to allocate %d bytes"
- msgstr "niemożliwość przydzielenia %d bajtów pamięci"
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr "nieskończona"
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr "Wskazanie adresów, na których należy nasłuchiwać."
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr "Zwracanie adresu IP dla wszystkich hostów we wskazanych domenach."
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr "Wyłączenie przekazywania zapytań odwrotnych dla prywatnych zakresów IP."
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr "Traktowanie adresu IP jako NXDOMAIN (unieważnia ,,Verisign wildcard'')."
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr "Wskazanie wielkości pamięci podręcznej (domyślnie: %s miejsc)."
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr "Wskazanie pliku konfiguracyjnego (domyślnie: %s)."
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr "NIE twórz procesu potomnego w tle: działanie w trybie debugowania."
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr "Wyłączenie przekazywania zapytań bez podanej części domenowej."
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr "Zwracanie samowskazującego rekordu MX dla lokalnych hostów."
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr "Rozwijanie prostych nazw z /etc/hosts przyrostkiem domenowym."
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr "Wyłączenie przekazywania pozornych zapytań DNS z komputerów działających pod Windows."
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr "Włączenie serwera DHCP dla wskazanego zakresu adresów."
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr "Po uruchomieniu zmiana grupy procesu na podaną (domyślnie: %s)."
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr "Ustawienie adresu lub nazwy dla wskazanego komputera."
--#: option.c:332
-+#: option.c:344
- msgid "Read DHCP host specs from file."
- msgstr "Wskazanie pliku z wartościami 'dhcp-host='."
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr "Wskazanie pliku z wartościami 'dhcp-option='."
--#: option.c:334
-+#: option.c:346
-+#, fuzzy
-+msgid "Read DHCP host specs from a directory."
-+msgstr "Wskazanie pliku z wartościami 'dhcp-host='."
-+
-+#: option.c:347
-+#, fuzzy
-+msgid "Read DHCP options from a directory."
-+msgstr "Wskazanie pliku z wartościami 'dhcp-option='."
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr "Warunkowe ustawianie znaczników."
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr "NIE wczytywanie pliku %s."
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr "Wskazanie dodatkowego pliku 'hosts' oprócz %s."
--#: option.c:337
-+#: option.c:351
-+#, fuzzy
-+msgid "Read hosts files from a directory."
-+msgstr "Wskazanie pliku z wartościami 'dhcp-host='."
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr "Interfejsy, na których nasłuchiwać."
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr "Interfejsy, na których NIE nasłuchiwać."
--#: option.c:339
-+#: option.c:354
- msgid "Map DHCP user class to tag."
- msgstr "Przyporządkowanie znacznika w zależności od klasy użytkownika DHCP."
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr "Przyporządkowanie znacznika w zależności od numeru obwodu (w rozumieniu RFC3046)."
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr "Przyporządkowanie znacznika w zależności od numeru agenta (w rozumieniu RFC3046)."
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr "Przyporządkowanie znacznika w zależności od numeru subskrybenta (w rozumieniu RFC3993)."
--#: option.c:343
-+#: option.c:358
- msgid "Don't do DHCP for hosts with tag set."
- msgstr "Wyłączenie DHCP dla hostów z określonym znacznikiem."
--#: option.c:344
-+#: option.c:359
- msgid "Force broadcast replies for hosts with tag set."
- msgstr "Wymuszenie odpowiedzi w trybie rozgłoszeniowym dla hostów z określonym znacznikiem."
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr "NIE twórz procesu potomnego w tle i NIE włączaj trybu debugowania."
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr "Zakładanie, że jesteśmy jedynym serwerem DHCP w sieci lokalnej."
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr "Ścieżka przechowywania pliku dzierżaw DHCP (domyślnie: %s)."
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr "Włączenie zwracania rekordu MX dla hostów lokalnych."
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr "Specyfikacja rekordu MX."
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr "Określenie opcji BOOTP serwera DHCP."
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr "Wyłączenie obserwowania pliku %s; ponowne odczytywanie tylko po odebraniu sygnału SIGHUP."
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr "Wyłączenie przechowywania w pamięci podręcznej wyników nieudanych wyszukiwań."
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr "Odpytywanie serwerów nazw w kolejności ich wystąpienia w %s."
--#: option.c:354
-+#: option.c:369
- msgid "Specify options to be sent to DHCP clients."
- msgstr "Specyfikacja opcji wysyłanej do klientów DHCP."
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr "Opcja DHCP wysyłana nawet jeżeli klient o nią nie prosi."
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr "Wskazanie portu do nasłuchiwania zapytań DNS (domyślnie: 53)."
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr "Maksymalna obsługiwana wielkość pakietu EDNS.0 (domyślnie: %s)."
--#: option.c:358
-+#: option.c:373
- msgid "Log DNS queries."
- msgstr "Włączenie spisywania zapytań DNS do logu."
--#: option.c:359
-+#: option.c:374
- msgid "Force the originating port for upstream DNS queries."
- msgstr "Wymuszenie użycia wskazanego portu UDP do odpytywania nadrzędnych serwerów DNS i odbierania od nich odpowiedzi."
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr "Wyłączenie czytania pliku resolv.conf."
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Wskazanie położenia pliku resolv.conf (domyślnie: %s)."
--#: option.c:362
-+#: option.c:377
- msgid "Specify path to file with server= options"
- msgstr "Wskazanie położenia pliku z opcjami server="
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Wskazywanie adresów serwerów nazw, opcjonalnie z przypisaniem do domeny."
--#: option.c:364
-+#: option.c:379
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr "Wskazanie serwerów nazw do odwrotnej translacji adresów."
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr "Wyłączenie przekazywania zapytań do wskazanych domen."
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr "Wskazanie domeny dla serwera DHCP."
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr "Określenie domyślnego celu w rekordzie MX."
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr "Określenie (w sekundach) czasu ważności odpowiedzi udzielonych na podstawie /etc/hosts (domyślnie 0)."
--#: option.c:369
-+#: option.c:384
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr "Określenie (w sekundach) czasu ważności negatywnych odpowiedzi."
--#: option.c:370
-+#: option.c:385
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr "Ograniczenie maksymalnego czasu ważności odpowiedzi (TTL) podawanego klientom [w sekundach]."
--#: option.c:371
-+#: option.c:386
-+#, fuzzy
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr "Określenie (w sekundach) czasu ważności negatywnych odpowiedzi."
-+
-+#: option.c:387
-+#, fuzzy
-+msgid "Specify time-to-live floor for cache."
-+msgstr "Określenie (w sekundach) czasu ważności negatywnych odpowiedzi."
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr "Zmiana użytkownika procesu na wskazanego (po uruchomieniu, domyślnie: %s)."
--#: option.c:372
-+#: option.c:389
- msgid "Map DHCP vendor class to tag."
- msgstr "Przyporządkowanie znacznika w zależności od typu klienta DHCP."
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr "Wydrukowanie informacji o programie i ochronie praw autorskich."
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr "Tłumaczenie adresów IPv4 z serwerów nadrzędnych."
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr "Określenie rekordu SRV."
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr "Wyświetla ten komunikat. Użyj '--help dhcp' chcąc przejrzeć listę opcji DHCP (dhcp-option=xxx,...)."
--#: option.c:377
-+#: option.c:394
- #, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr "Określenie ścieżki do pliku PID (domyślnie: %s)."
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr "Maksymalna liczba dzierżaw DHCP (domyślnie: %s)."
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr "Uzależnienie odpowiedzi DNS od interfejsu, na którym odebrano zapytanie (wygodne dla serwerów kilku podsieci z różnymi adresami w /etc/hosts)."
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr "Specyfikacja rekordu DNS TXT."
--#: option.c:381
-+#: option.c:398
- msgid "Specify PTR DNS record."
- msgstr "Specyfikacja rekordu DNS PTR."
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr "Zwraca nazwę domenową powiązaną z adresem interfejsu sieciowego."
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr "Nasłuchiwanie tylko na wykorzystywanych interfejsach (umożliwia uruchomienie osobnych serwerów dla różnych kart)."
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr "Wczytanie przyporządkowań adresów z %s."
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr "Włączenie używania interfejsu DBus do informowania o zmianach konfiguracji."
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr "Uruchomienie na wskazanym interfejsie tylko DNS-a, bez usług DHCP i TFTP."
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr "Włączenie dynamicznego przydzielania adresów dla klientów BOOTP."
--#: option.c:388
-+#: option.c:405
- msgid "Map MAC address (with wildcards) to option set."
- msgstr "Przyporządkowanie znacznika w zależności od adresu MAC (można używać uogólnień: *)."
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr "Traktowanie żądań DHCP odebranych na interfejsach alias, ..., jako odebranych na iface."
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr "Pominięcie sprawdzania za pomocą ICMP niezajętości adresu przed jego wydzierżawieniem."
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr "Skrypt powłoki uruchamiany po przyznaniu lub zwolnieniu adresu."
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr "Skrypt Lua uruchamiany po przyznaniu lub zwolnieniu adresu."
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr "Wskazanie użytkownika z którego uprawnieniami będą uruchamiane skrypty."
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr "Wczytanie wszystkich plików ze wskazanego katalogu jako konfiguracyjnych."
--#: option.c:395
-+#: option.c:412
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr "Wskazanie kanału syslog-a do którego mają trafiać komunikaty (domyślnie: DAEMON)"
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr "Nieużywanie bazy dzierżaw."
--#: option.c:397
-+#: option.c:414
- #, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr "Maksymalna liczba jednocześnie obsługiwanych zapytań DNS (domyślnie: %s)"
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr "Czyszczenie pamięci podręcznej serwera nazw w przypadku ponownego odczytu %s."
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr "Nie zwracanie uwagi na nazwę podawaną przez klienta w przypadku dopasowania wszystkich wymienionych znaczników."
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr "Wyłączenie oszczędzania miejsca w pakiecie DHCP przez przesuwanie pól servername i filename do opcji DHCP. Wymusza prostszy tryb budowy pakietu rozwiązując problemy z nieprzystosowanymi klientami DHCP."
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr "Włączenie wbudowanego serwera TFTP (tylko do wysyłania)."
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr "Ograniczenie działania serwera TFTP do wskazanego katalogu i podkatalogów. Nazwy z .. są odrzucane, / odnosi się do wskazanego katalogu."
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr "Doklejanie adresu IP klienta do głównego katalogu TFTP. Jeżeli wynikowy katalog nie istnieje, nadal wykorzystuje się tftp-root."
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr "Ograniczenie dostępu do plików przez TFTP do tych, których właścicielem jest użytkownik uruchamiający dnsmasq-a."
--#: option.c:405
-+#: option.c:422
- #, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr "Maksymalna liczba jednocześnie obsługiwanych połączeń TFTP (domyślnie %s)."
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr "Wyłączenie możliwości negocjowania wielkości bloku dla przesyłów przez TFTP."
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr "Konwertowanie nazw plików żądanych przez TFTP do małych liter"
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr "Wskazanie zakresu portów do użytku TFTP."
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr "Włączenie spisywania w logu operacji DHCP."
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr "Włączenie asynchronicznego zapisywania do logu z ewentualnym wskazaniem długości kolejki."
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr "Odfiltrowywanie adresów wskazujących na komputery w sieciach wewnętrznych spośród odpowiedzi od zewnętrznych serwerów DNS."
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr "Zezwolenie na przekazywanie odpowiedzi w klasie 127.0.0.0/8. Dla serwerów RBL."
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr "Dezaktywacja zabezpieczenia przed atakami DNS-rebind dla wskazanych domen."
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr "Jednoczesne odpytywanie wszystkich serwerów nadrzędnych; klientowi przekazywana jest pierwsza odpowiedź."
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr "Ustawienie znacznika jeżeli w żądaniu DHCP pojawi się wskazana opcja, ewentualnie o konkretnej wartości."
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr "Użycie alternatywnych portów dla usługi DHCP."
--#: option.c:417
-+#: option.c:434
- msgid "Specify NAPTR DNS record."
- msgstr "Specyfikacja rekordu DNS NAPTR."
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr "Ustawienie dolnej granicy numerów portów do przesyłania zapytań DNS."
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr "Przechowywanie w serwerze DNS dnsmasq-a tylko w pełni kwalifikowanych nazw zgłaszanych przez klientów DHCP."
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr "Generowanie nazw na podstawie MAC-adresów dla klientów bez nazwy."
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr "Traktowanie wskazanych serwerów pośredniczących DHCP jako działających w trybie \"pełnomocnika\" (full-proxy)."
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr "Przekazywanie żądań DHCP do zdalnego serwera"
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr "Wskazanie synonimu nazwy komputera lokalnego - znanego z /etc/hosts albo z DHCP."
--#: option.c:424
-+#: option.c:441
- msgid "Prompt to send to PXE clients."
- msgstr "Zgłoszenie wysyłane klientom PXE."
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr "Składnik menu PXE (--> man)."
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr "Sprawdzenie składni."
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr "Przekazywanie MAC-adresu komputera pytającego w ruchu wychodzącym DNS."
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr "Zamieszczanie adresu IP pytającego w przekazywanych zapytaniach DNS."
--#: option.c:429
-+#: option.c:446
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr "Przekazywanie wyników weryfikacji DNSSEC z serwerów nadrzędnych."
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr "Zmiana sposobu przydzielania adresów IP na sekwencyjny."
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr "Zachowanie znacznika połączenia z odebranego zapytania DNS w ruchu zewnętrznym."
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr "Zezwolenie klientom DHCP na uaktualnianie DDNS-ów."
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr "Załączenie anonsowania (RA) na interfejsach serwujących DHCPv6"
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr "Określenie DHCPv6 DUID"
--#: option.c:435
-+#: option.c:452
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr "Określenie rekordów A/AAAA i PTR"
--#: option.c:436
-+#: option.c:453
- msgid "Specify arbitrary DNS resource record"
- msgstr "Określenie rekordu TXT"
--#: option.c:437
-+#: option.c:454
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr "Dynamiczne podpinanie do interfejsów sieciowych"
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr "Eksportowanie lokalnych nazw hostów do globalnego DNS-a"
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr "Domena pod którą będą eksportowane lokalne nazwy"
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr "Określenie TTL dla odpowiedzi autorytatywnych"
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr "Określenie danych strefy autorytatywnej (SOA)"
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr "Pomocnicze serwery autorytatywne dla forwardowanych domen"
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr "Wskazanie serwerów uprawnionych do transferu stref"
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr "Wyszczególnienie ipset-ów, do których będą dopisywane adresy IP leżące we wskazanych domenach"
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr "Wskazanie domeny i zakresu adresów dla generowanych nazw"
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr "Uaktywnienie walidacji DNSSEC"
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr "Wskazanie punktu zaufania dla uwierzytelniania DNSSEC."
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr "Akceptowanie nieuwiarygodnionych odpowiedzi DNSSEC (ustawienie bitu CD w zapytaniach)."
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr "Upewnianie się, że odpowiedzi bez DNSSEC pochodzą ze stref niepodpisanych."
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr "Wyłączenie sprawdzania sygnatur czasowych DNSSEC do pierwszego przeładowania pamięci podręcznej."
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr "Określenie prefiksu klasy DHCPv6"
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr "Ustawianie priorytetu, okresu rozsyłania oraz czasu życia rutera (RA)."
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr "Wyłączenie logowania zwyczajnego DHCP."
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr "Wyłączenie logowania zwyczajnego DHCPv6."
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr "Wyłączenie logowania RA."
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr "Akceptowanie zapytań wyłącznie z sieci podpiętych bezpośrednio."
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr "Wykrywanie i usuwanie pętli zapytań DNS."
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
-@@ -703,312 +736,312 @@ msgstr ""
- "Użycie: dnsmasq [opcje]\n"
- "\n"
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr "W tym systemie w linii poleceń można używać wyłącznie jednoliterowych opcji.\n"
--#: option.c:665
-+#: option.c:684
- #, c-format
- msgid "Valid options are:\n"
- msgstr "Dostępne opcje:\n"
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr "nieprawidłowy numer portu"
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr "nie ma możliwości dowiązywania do interfejsu"
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- msgid "bad interface name"
- msgstr "nieprawidłowa nazwa interfejsu"
--#: option.c:792
-+#: option.c:811
- msgid "bad address"
- msgstr "zły adres"
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr "nieobsługiwany rodzaj enkapsulacji opcji IPv6"
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr "błąd w dhcp-option"
--#: option.c:1056
-+#: option.c:1075
- msgid "bad IP address"
- msgstr "zły adres IP"
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- msgid "bad IPv6 address"
- msgstr "zły adres IPv6"
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr "nieprawidłowa nazwa domeny w dhcp-option"
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr "zbyt długa dhcp-option (>255 znaków)"
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr "niedopuszczalne dhcp-match"
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr "wielokrotne użycie opcji niedozwolone (pojawiła się wcześniej w linii poleceń)"
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr "wielokrotne użycie opcji niedozwolone (pojawiła się wsześniej w pliku konfiguracyjnym)"
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, c-format
- msgid "cannot access directory %s: %s"
- msgstr "brak dostępu do katalogu %s: %s"
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, c-format
- msgid "cannot access %s: %s"
- msgstr "brak dostępu do %s: %s"
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr "zmiana log-facility w systemie Android nie jest możliwa"
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr "nierozpoznany znacznik logów"
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr "nieprawidłowa wartość preferencji MX"
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr "nieprawidłowa nazwa MX"
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr "nieprawidłowa wartość celu MX"
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr "w uClinuksie nie ma możliwości uruchamiania skryptów"
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr "żeby mieć możliwość używania skryptów wywoływanych przy zmianie dzierżawy, przekompiluj dnsmasq-a z włączoną flagą HAVE_SCRIPT"
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr "używanie skryptów Lua, wymaga skompilowania dnsmasq-a z flagą HAVE_LUASCRIPT"
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- msgid "bad prefix"
- msgstr "zła maska"
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr "chcąc korzystać z ipsets przekompiluj dnsmasq-a z HAVE_IPSET"
--#: option.c:2469
-+#: option.c:2545
- msgid "bad port range"
- msgstr "nieprawidłowy zakres numerów portów"
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr "nieprawidłowa nazwa urządzenia w bridge-interface"
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr "można wskazać tylko jeden znacznik sieci"
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr "nieprawidłowy zakres dhcp-range"
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr "niespójny zakres adresów DHCP"
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr "długość prefiksu musi wynosić dokładnie 64 dla podsieci RA"
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr "długość prefiksu musi wynosić dokładnie 64 dla konstruktorów podsieci"
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr "długość prefiksu musi wynosić co najmniej 64"
--#: option.c:2660
-+#: option.c:2736
- msgid "inconsistent DHCPv6 range"
- msgstr "niespójny zakres adresów DHCPv6"
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr "prefiks musi wynosić zero z argumentem \"constructor:\""
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- msgid "bad hex constant"
- msgstr "zapis niezgodny z formatem szesnastkowym"
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr "--dhcp-host nie dopuszcza dopasowywania na podstawie znaczników"
--#: option.c:2852
-+#: option.c:2928
- #, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr "powtórzony adres IP %s w specyfikacji dhcp-host"
--#: option.c:2910
-+#: option.c:2986
- msgid "bad DHCP host name"
- msgstr "niedopuszczalna nazwa komputera w dhcp-host"
--#: option.c:2992
-+#: option.c:3068
- msgid "bad tag-if"
- msgstr "nieprawidłowa składnia 'tag-if'"
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr "nieprawidłowy numer portu"
--#: option.c:3378
-+#: option.c:3454
- msgid "bad dhcp-proxy address"
- msgstr "zły adres dhcp-proxy"
--#: option.c:3404
-+#: option.c:3480
- msgid "Bad dhcp-relay"
- msgstr "zły dhcp-relay"
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr "nieprawidłowe argumenty RA"
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr "zły DUID"
--#: option.c:3481
-+#: option.c:3557
- msgid "invalid alias range"
- msgstr "nieprawidłowy zakres adresów w --alias"
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr "zła CNAME"
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr "powtórzona CNAME"
--#: option.c:3560
-+#: option.c:3636
- msgid "bad PTR record"
- msgstr "nieprawidłowy zapis rekordu PTR"
--#: option.c:3591
-+#: option.c:3667
- msgid "bad NAPTR record"
- msgstr "nieprawidłowy zapis rekordu NAPTR"
--#: option.c:3625
-+#: option.c:3701
- msgid "bad RR record"
- msgstr "nieprawidłowy zapis rekordu RR"
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr "nieprawidłowy zapis rekordu TXT"
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr "nieprawidłowy zapis rekordu SRV"
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr "nieprawidłowa wartość celu SRV"
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr "nieprawidłowy priorytet"
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr "nieprawidłowa waga"
--#: option.c:3748
-+#: option.c:3824
- msgid "Bad host-record"
- msgstr "nieprawidłowy zapis host-record"
--#: option.c:3765
-+#: option.c:3841
- msgid "Bad name in host-record"
- msgstr "niedopuszczalna nazwa w host-record"
--#: option.c:3826
-+#: option.c:3906
- msgid "bad trust anchor"
- msgstr "nieprawidłowa specyfikacja punktu zaufania"
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr "zły zapis szesnastkowy"
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr "nieobsługiwana opcja (sprawdź, czy obsługa DHCP/TFTP/DNSSEC/DBus została wkompilowana)"
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr "brakuje \""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr "nieprawidłowa opcja"
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr "nadwyżkowy parametr"
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr "brak parametru"
--#: option.c:3972
-+#: option.c:4052
- msgid "illegal option"
- msgstr "niedopuszczalna opcja"
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr "błąd"
--#: option.c:3981
-+#: option.c:4061
- #, c-format
- msgid " at line %d of %s"
- msgstr " w linii %d pliku %s"
--#: option.c:4045 option.c:4168 tftp.c:667
--#, c-format
--msgid "cannot read %s: %s"
--msgstr "błąd odczytu z pliku %s: %s"
--
--#: option.c:4229 option.c:4265
-+#: option.c:4076 option.c:4323 option.c:4359
- #, c-format
- msgid "read %s"
- msgstr "przeczytałem %s"
--#: option.c:4331
-+#: option.c:4139 option.c:4262 tftp.c:667
-+#, c-format
-+msgid "cannot read %s: %s"
-+msgstr "błąd odczytu z pliku %s: %s"
-+
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr "jakieś śmieci w linii poleceń"
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr "Dnsmasq, wersja %s  %s\n"
--#: option.c:4367
-+#: option.c:4461
- #, c-format
- msgid ""
- "Compile time options: %s\n"
-@@ -1017,89 +1050,89 @@ msgstr ""
- "Wkompilowane opcje %s\n"
- "\n"
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr "Autor nie daje ŻADNYCH GWARANCJI egzekwowalnych prawnie.\n"
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr "Dnsmasq jest wolnym oprogramowaniem, możesz go rozprowadzać\n"
--#: option.c:4370
-+#: option.c:4464
- #, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr "na warunkach określonych w GNU General Public Licence, w wersji 2 lub 3.\n"
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr "spróbuj: --help"
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr "spróbuj: -w"
--#: option.c:4385
-+#: option.c:4479
- #, c-format
- msgid "bad command line options: %s"
- msgstr "nieprawidłowa opcja w linii poleceń %s"
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr "nie można pobrać nazwy hosta: %s"
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr "w trybie no-poll można wskazać najwyżej jeden plik resolv.conf."
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr "musisz mieć dokładnie jeden plik resolv.conf do odczytu domen."
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, c-format
- msgid "failed to read %s: %s"
- msgstr "nie udało się odczytać %s: %s"
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr "brak wytycznych wyszukiwania w %s"
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr "w przypadku używania --dhcp-fqdn trzeba wskazać domyślną domenę"
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr "składnia sprawdzona, jest prawidłowa"
--#: forward.c:114
-+#: forward.c:111
- #, c-format
- msgid "failed to send packet: %s"
- msgstr "wysyłanie pakietu nie powiodło się: %s"
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr "odrzucam odpowiedź DNS: nie zgadza się specyfikacja podsieci"
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr "serwer nazw %s odmawia wykonania zapytania rekurencyjnego"
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr "prawdopodobnie wykryto atak DNS-rebind: %s"
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr "Ignorowanie zapytań z sieci pozalokalnych."
--#: forward.c:2101
-+#: forward.c:2178
- #, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr "Osiągnięto graniczną ilość jednocześnie obsługiwanych zapytań DNS (maks: %d)"
-@@ -1189,263 +1222,282 @@ msgstr "używam serwera nazw %s#%d (przez %s)"
- msgid "using nameserver %s#%d"
- msgstr "używam serwera nazw %s#%d"
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
-+msgstr ""
-+
-+#: dnsmasq.c:156
-+#, fuzzy
-+msgid "no trust anchors provided for DNSSEC"
- msgstr "Nie wskazano punktów zaufania dla DNSSEC."
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:159
-+#, fuzzy
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
- msgstr "Brak możliwości zmniejszenia pamięci podręcznej poniżej wielkości domyślnej w przypadku używania DNSSEC."
--#: dnsmasq.c:159
-+#: dnsmasq.c:161
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr "obsługa DNSSEC niedostępna - ustaw HAVE_DNSSEC w src/config.h"
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr "Serwer TFTP nie został wkompilowany -- ustaw HAVE_TFTP w src/config.h"
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+#, fuzzy
-+msgid "cannot use --conntrack AND --query-port"
- msgstr "--conntrack i --query-port wykluczają się wzajemnie"
--#: dnsmasq.c:173
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+#: dnsmasq.c:175
-+#, fuzzy
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr "Wsparcie dla przekazywania znaczników połączeń (conntrack) nie zostało wkompilowane - ustaw HAVE_CONNTRACK w src/config.h"
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr "zapis do logów w trybie asynchronicznym nie jest dostępny w Solarisie"
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr "zapis do logów w trybie asynchronicznym nie jest dostępny w Androidzie"
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "tryb autorytatywny DNS-a niedostępny - ustaw HAVE_AUTH w src/config.h"
--#: dnsmasq.c:193
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+#: dnsmasq.c:195
-+#, fuzzy
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr "Wykrywanie pętli zapytań nie zostało wkompilowane - ustaw HAVE_LOOP w src/config.h"
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr "za pomocą --auth-soa musi zostać ustawiony numer seryjny strefy"
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr "konstrukcja dhcp-range nie jest dostępna w tym systemie"
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr "--bind-interfaces i --bind-dynamic wzajemnie się wykluczają"
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr "błąd podczas tworzenia listy interfejsów sieciowych: %s"
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr "nieznany interfejs %s"
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr "błąd DBus: %s"
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr "Obsługa DBus nie została wkompilowana -- ustaw HAVE_DBUS w src/config.h"
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr "nieznany użytkownik lub grupa: %s"
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr "nie potrafię wejść do głównego katalogu: %s"
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, c-format
- msgid "started, version %s DNS disabled"
- msgstr "uruchomiony, wersja %s, DNS wyłączony"
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr "uruchomiony, wersja %s, %d miejsc w pamięci podręcznej"
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr "uruchomiony, wersja %s, pamięć podręczna wyłączona"
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr "opcje kompilacji: %s"
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr "obsługa DBus włączona, podłączono do serwera DBus"
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr "obsługa DBus włączona, trwa podłączanie do serwera DBus"
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr "usługa DNS ograniczona do lokalnych podsieci"
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr "walidacja DNSSEC włączona"
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr "sprawdzanie sygnatur czasowych DNSSEC wyłączone do czasu przeładowania pamięci podręcznej"
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+#, fuzzy
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr "sprawdzanie sygnatur czasowych DNSSEC wyłączone do czasu przeładowania pamięci podręcznej"
-+
-+#: dnsmasq.c:713
- #, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr "UWAGA! Nie udało się zmienić użytkownika pliku %s: %s"
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr "ustawiam --bind-interfaces z powodu ograniczeń systemu operacyjnego"
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr "uwaga: interfejs %s nie jest włączony"
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr "uwaga: ignoruję opcję resolv-file, ponieważ wybrano tryb no-resolv"
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- msgid "warning: no upstream servers configured"
- msgstr "uwaga: nie wskazano nadrzędnych serwerów DNS"
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr "włączono asynchroniczny tryb zapisu do logów z kolejką na %d komunikatów"
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr "anonsowanie rutera IPv6 włączone"
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr "DHCP, gniazda dowiązane na wyłączność interfejsowi %s"
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr "z głównym katalogiem w "
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "enabled"
- msgstr "włączony"
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr "w trybie bezpiecznym"
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr "ograniczam ilość jednoczesnych przesłań TFTP do %d"
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr "podłączono do DBus-a"
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr "nie potrafię przełączyć się do pracy w tle: %s"
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, c-format
- msgid "failed to create helper: %s"
- msgstr "nie udało się utworzyć procesu pomocniczego: %s"
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr "nie powiodło się ustawianie ograniczeń (capabilities): %s"
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr "nie udało się zmienić użytkownika procesu na %s: %s"
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr "nie udało się zmienić grupy procesu na %s: %s"
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr "nie udało się otworzyć pliku z PID-em %s: %s"
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, c-format
- msgid "cannot open log %s: %s"
- msgstr "nie udało się otworzyć logu %s: %s"
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, c-format
- msgid "failed to load Lua script: %s"
- msgstr "nie udało się wczytać skryptu Lua: %s"
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr "katalog TFTP %s nie jest dostępny: %s"
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, fuzzy, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr "nie potrafię otworzyć albo utworzyć pliku dzierżaw %s: %s"
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr "trwa sprawdzanie sygnatur czasowych podpisów DNSSEC"
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr "skrypt został zabity sygnałem %d"
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr "skrypt zakończył się z kodem powrotu %d"
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, c-format
- msgid "failed to execute %s: %s"
- msgstr "nie udało się uruchomić %s: %s"
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr "zakończyłem działanie z powodu odebrania SIGTERM"
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, c-format
- msgid "failed to access %s: %s"
- msgstr "brak dostępu do %s: %s"
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr "czytanie %s"
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, c-format
- msgid "no servers found in %s, will retry"
- msgstr "w %s nie znalazłem serwerów, spróbuję ponownie później"
-@@ -1485,27 +1537,27 @@ msgstr "nieznany interfejs %s w bridge-u"
- msgid "DHCP packet received on %s which has no address"
- msgstr "żądanie DHCP odebrano na interfejsie %s, który nie ma adresu"
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr "uzupełnienie pamięci podręcznej ARP nie powiodło się: %s"
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr "zakres adresów DHCP %s -- %s jest niespójny z maską sieci %s"
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr "zła zawartość pliku %s, w linii %d"
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr "w %s pomijam linię %d -- powtórzona nazwa lub adres IP"
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr "przekazywanie DHCP %s -> %s"
-@@ -1576,12 +1628,12 @@ msgstr "%u klasa użytkownika: %s"
- msgid "disabled"
- msgstr "wyłączony(a)"
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr "ignoruję"
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr "adres jest w użyciu"
-@@ -1601,7 +1653,7 @@ msgstr "brak skonfigurowanego adresu"
- msgid "no leases left"
- msgstr "brak wolnych dzierżaw"
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr "klient %u przedstawia się jako %s"
-@@ -1610,7 +1662,7 @@ msgstr "klient %u przedstawia się jako %s"
- msgid "PXE BIS not supported"
- msgstr "PXE BIS nie jest obsługiwane"
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr "wyłączam statyczne przypisanie adresu %s dla %s"
-@@ -1646,7 +1698,7 @@ msgstr "nieprawidłowy identyfikator serwera (server-ID)"
- msgid "wrong address"
- msgstr "błędny adres"
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr "dzierżawa nieznaleziona"
-@@ -1696,7 +1748,7 @@ msgstr "nie mam możliwości wysłania opcji %d DHCP/BOOTP: niedostateczna iloś
- msgid "PXE menu too large"
- msgstr "menu PXE zbyt duże"
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, c-format
- msgid "%u requested options: %s"
- msgstr "%u zażądano: %s"
-@@ -1711,7 +1763,7 @@ msgstr "nie mogę wysłać opcji RFC3925: za długi łańcuch opcji przy numerze
- msgid "cannot create netlink socket: %s"
- msgstr "nie potrafię utworzyć połączenia netlink %s"
--#: netlink.c:347
-+#: netlink.c:348
- #, c-format
- msgid "netlink returns error: %s"
- msgstr "wystąpił błąd w połączeniu netlink %s"
-@@ -1829,62 +1881,62 @@ msgstr "nie zdefiniowano zakresu adresów odpowiedniego dla żądania DHCPv6 od
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr "%u dostępna podsieć DHCPv6: %s/%d"
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, c-format
- msgid "%u vendor class: %u"
- msgstr "%u klasa dostawcy: %u"
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, c-format
- msgid "%u client MAC address: %s"
- msgstr "adres MAC klienta %u: %s"
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, c-format
- msgid "unknown prefix-class %d"
- msgstr "nieznana klasa sieci %d"
--#: rfc3315.c:791 rfc3315.c:913
-+#: rfc3315.c:803 rfc3315.c:902
-+msgid "address unavailable"
-+msgstr "adres niedostępny"
-+
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
- msgid "success"
- msgstr "udane"
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
- msgid "no addresses available"
- msgstr "brak wolnych adresów"
--#: rfc3315.c:865
--msgid "address unavailable"
--msgstr "adres niedostępny"
--
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr "poza zasięgiem"
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr "brak powiązania"
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr "przestarzały"
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- msgid "address invalid"
- msgstr "niepoprawny adres"
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr "brak potwierdzenia"
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- msgid "all addresses still on link"
- msgstr "wszystkie adresy ciągle w użyciu"
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr "adres został zwolniony"
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr "Nie mogę rozesłać do serwerów DHCPv6 nie mając prawidłowego interfejsu"
-@@ -1977,7 +2029,7 @@ msgstr "przekazywanie DHCP z %s do %s"
- msgid "cannot create ICMPv6 socket: %s"
- msgstr "nie udało się utworzyć gniazda dla ICMPv6: %s"
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr "ignoruję żądanie transferu strefy od %s"
-@@ -1992,54 +2044,89 @@ msgstr "niezgodna wersja jądra: %s"
- msgid "failed to create IPset control socket: %s"
- msgstr "nie powiodło się otwieranie gniazda sterującego IPset: %s"
-+#: dnssec.c:425 dnssec.c:469
-+#, fuzzy, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr "nie udało się otworzyć pliku z PID-em %s: %s"
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr "DNSSEC: zużycie pamięci %u, maks. %u, przydzielona %u"
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr "błąd: niepoprawnie użyty fill_addr"
--#: tables.c:105
-+#: tables.c:109
- #, c-format
- msgid "failed to access pf devices: %s"
- msgstr "brak dostępu do /dev/pf (filtra pakietów): %s"
--#: tables.c:119
-+#: tables.c:123
- #, c-format
- msgid "warning: no opened pf devices %s"
- msgstr "uwaga: brak otwartych filtrów pakietów %s"
--#: tables.c:127
-+#: tables.c:131
- #, c-format
- msgid "error: cannot use table name %s"
- msgstr "błąd: nie potrafię użyć nazwy tablicy %s"
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr "błąd: nie potrafię strlcpy nazwy tablicy %s"
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr "uwaga: pfr_add_tables: %s(%d)"
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr "info: tablica utworzona"
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr "uwaga: DIOCR%sADDRS: %s"
--#: tables.c:162
-+#: tables.c:166
- #, c-format
- msgid "%d addresses %s"
- msgstr "%d adresów %s"
-+#: inotify.c:46
-+#, fuzzy, c-format
-+msgid "failed to create inotify: %s"
-+msgstr "nie udało się utworzyć procesu pomocniczego: %s"
-+
-+#: inotify.c:60
-+#, fuzzy, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr "nie potrafię otworzyć albo utworzyć pliku dzierżaw %s: %s"
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, fuzzy, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr "nie udało się otworzyć gniazda %s: %s"
-+
-+#: inotify.c:97
-+#, fuzzy, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr "brak dostępu do katalogu %s: %s"
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-+
- #~ msgid "Always send frequent router-advertisements"
- #~ msgstr "Rozsyłanie wielokrotne anonsów rutera (RA)"
-diff --git a/po/pt_BR.po b/po/pt_BR.po
-index b91cf6ce53b4..ef6e4cbf529b 100644
---- a/po/pt_BR.po
-+++ b/po/pt_BR.po
-@@ -16,70 +16,70 @@ msgstr ""
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=2; plural=(n > 1);\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
--#: cache.c:908
-+#: cache.c:941
- #, c-format
- msgid "failed to load names from %s: %s"
- msgstr ""
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr ""
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr ""
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr ""
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr ""
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr ""
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr ""
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr ""
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr ""
--#: cache.c:1367
-+#: cache.c:1422
- #, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr ""
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr ""
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr ""
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr ""
-@@ -93,7 +93,7 @@ msgstr ""
- msgid "failed to allocate memory"
- msgstr ""
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr ""
-@@ -107,990 +107,1018 @@ msgstr ""
- msgid "failed to allocate %d bytes"
- msgstr ""
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr ""
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr ""
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr ""
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr ""
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr ""
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr ""
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr ""
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr ""
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr ""
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr ""
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr ""
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr ""
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr ""
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr ""
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr ""
--#: option.c:332
-+#: option.c:344
- msgid "Read DHCP host specs from file."
- msgstr ""
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr ""
--#: option.c:334
-+#: option.c:346
-+msgid "Read DHCP host specs from a directory."
-+msgstr ""
-+
-+#: option.c:347
-+msgid "Read DHCP options from a directory."
-+msgstr ""
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr ""
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr ""
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr ""
--#: option.c:337
-+#: option.c:351
-+msgid "Read hosts files from a directory."
-+msgstr ""
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr ""
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr ""
--#: option.c:339
-+#: option.c:354
- msgid "Map DHCP user class to tag."
- msgstr ""
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr ""
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr ""
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr ""
--#: option.c:343
-+#: option.c:358
- msgid "Don't do DHCP for hosts with tag set."
- msgstr ""
--#: option.c:344
-+#: option.c:359
- msgid "Force broadcast replies for hosts with tag set."
- msgstr ""
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr ""
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr ""
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr ""
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr ""
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr ""
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr ""
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr ""
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr ""
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr ""
--#: option.c:354
-+#: option.c:369
- msgid "Specify options to be sent to DHCP clients."
- msgstr ""
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr ""
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr ""
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr ""
--#: option.c:358
-+#: option.c:373
- msgid "Log DNS queries."
- msgstr ""
--#: option.c:359
-+#: option.c:374
- msgid "Force the originating port for upstream DNS queries."
- msgstr ""
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr ""
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr ""
--#: option.c:362
-+#: option.c:377
- msgid "Specify path to file with server= options"
- msgstr ""
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr ""
--#: option.c:364
-+#: option.c:379
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr ""
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr ""
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr ""
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr ""
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr ""
--#: option.c:369
-+#: option.c:384
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr ""
--#: option.c:370
-+#: option.c:385
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr ""
--#: option.c:371
-+#: option.c:386
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr ""
-+
-+#: option.c:387
-+msgid "Specify time-to-live floor for cache."
-+msgstr ""
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr ""
--#: option.c:372
-+#: option.c:389
- msgid "Map DHCP vendor class to tag."
- msgstr ""
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr ""
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr ""
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr ""
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr ""
--#: option.c:377
-+#: option.c:394
- #, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr ""
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr ""
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr ""
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr ""
--#: option.c:381
-+#: option.c:398
- msgid "Specify PTR DNS record."
- msgstr ""
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr ""
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr ""
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr ""
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr ""
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr ""
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr ""
--#: option.c:388
-+#: option.c:405
- msgid "Map MAC address (with wildcards) to option set."
- msgstr ""
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr ""
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr ""
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr ""
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr ""
--#: option.c:395
-+#: option.c:412
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr ""
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr ""
--#: option.c:397
-+#: option.c:414
- #, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr ""
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr ""
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr ""
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr ""
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr ""
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr ""
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr ""
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr ""
--#: option.c:405
-+#: option.c:422
- #, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr ""
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr ""
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr ""
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr ""
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr ""
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr ""
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr ""
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr ""
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr ""
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr ""
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr ""
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr ""
--#: option.c:417
-+#: option.c:434
- msgid "Specify NAPTR DNS record."
- msgstr ""
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr ""
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr ""
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr ""
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr ""
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr ""
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr ""
--#: option.c:424
-+#: option.c:441
- msgid "Prompt to send to PXE clients."
- msgstr ""
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr ""
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr ""
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr ""
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr ""
--#: option.c:429
-+#: option.c:446
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr ""
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr ""
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr ""
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr ""
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr ""
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr ""
--#: option.c:435
-+#: option.c:452
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr ""
--#: option.c:436
-+#: option.c:453
- msgid "Specify arbitrary DNS resource record"
- msgstr ""
--#: option.c:437
-+#: option.c:454
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr ""
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr ""
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr ""
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr ""
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr ""
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr ""
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr ""
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr ""
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr ""
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr ""
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
- "\n"
- msgstr ""
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr ""
--#: option.c:665
-+#: option.c:684
- #, c-format
- msgid "Valid options are:\n"
- msgstr ""
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr ""
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr ""
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- msgid "bad interface name"
- msgstr ""
--#: option.c:792
-+#: option.c:811
- msgid "bad address"
- msgstr ""
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr ""
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr ""
--#: option.c:1056
-+#: option.c:1075
- msgid "bad IP address"
- msgstr ""
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- msgid "bad IPv6 address"
- msgstr ""
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr ""
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr ""
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr ""
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr ""
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr ""
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, c-format
- msgid "cannot access directory %s: %s"
- msgstr ""
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, c-format
- msgid "cannot access %s: %s"
- msgstr ""
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr ""
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr ""
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr ""
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr ""
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr ""
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr ""
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr ""
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr ""
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- msgid "bad prefix"
- msgstr ""
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr ""
--#: option.c:2469
-+#: option.c:2545
- msgid "bad port range"
- msgstr ""
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr ""
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr ""
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr ""
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr ""
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr ""
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr ""
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr ""
--#: option.c:2660
-+#: option.c:2736
- msgid "inconsistent DHCPv6 range"
- msgstr ""
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr ""
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- msgid "bad hex constant"
- msgstr ""
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr ""
--#: option.c:2852
-+#: option.c:2928
- #, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr ""
--#: option.c:2910
-+#: option.c:2986
- msgid "bad DHCP host name"
- msgstr ""
--#: option.c:2992
-+#: option.c:3068
- msgid "bad tag-if"
- msgstr ""
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr ""
--#: option.c:3378
-+#: option.c:3454
- msgid "bad dhcp-proxy address"
- msgstr ""
--#: option.c:3404
-+#: option.c:3480
- msgid "Bad dhcp-relay"
- msgstr ""
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr ""
--#: option.c:3481
-+#: option.c:3557
- msgid "invalid alias range"
- msgstr ""
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr ""
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr ""
--#: option.c:3560
-+#: option.c:3636
- msgid "bad PTR record"
- msgstr ""
--#: option.c:3591
-+#: option.c:3667
- msgid "bad NAPTR record"
- msgstr ""
--#: option.c:3625
-+#: option.c:3701
- msgid "bad RR record"
- msgstr ""
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr ""
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr ""
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr ""
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr ""
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr ""
--#: option.c:3748
-+#: option.c:3824
- msgid "Bad host-record"
- msgstr ""
--#: option.c:3765
-+#: option.c:3841
- msgid "Bad name in host-record"
- msgstr ""
--#: option.c:3826
-+#: option.c:3906
- msgid "bad trust anchor"
- msgstr ""
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr ""
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr ""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr ""
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr ""
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr ""
--#: option.c:3972
-+#: option.c:4052
- msgid "illegal option"
- msgstr ""
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr ""
--#: option.c:3981
-+#: option.c:4061
- #, c-format
- msgid " at line %d of %s"
- msgstr ""
--#: option.c:4045 option.c:4168 tftp.c:667
-+#: option.c:4076 option.c:4323 option.c:4359
- #, c-format
--msgid "cannot read %s: %s"
-+msgid "read %s"
- msgstr ""
--#: option.c:4229 option.c:4265
-+#: option.c:4139 option.c:4262 tftp.c:667
- #, c-format
--msgid "read %s"
-+msgid "cannot read %s: %s"
- msgstr ""
--#: option.c:4331
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr ""
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr ""
--#: option.c:4367
-+#: option.c:4461
- #, c-format
- msgid ""
- "Compile time options: %s\n"
- "\n"
- msgstr ""
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr ""
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr ""
--#: option.c:4370
-+#: option.c:4464
- #, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr ""
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr ""
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr ""
--#: option.c:4385
-+#: option.c:4479
- #, c-format
- msgid "bad command line options: %s"
- msgstr ""
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr ""
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr ""
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr ""
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, c-format
- msgid "failed to read %s: %s"
- msgstr ""
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr ""
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr ""
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr ""
--#: forward.c:114
-+#: forward.c:111
- #, c-format
- msgid "failed to send packet: %s"
- msgstr ""
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr ""
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr ""
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
--#: forward.c:2101
-+#: forward.c:2178
- #, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr ""
-@@ -1180,263 +1208,276 @@ msgstr ""
- msgid "using nameserver %s#%d"
- msgstr ""
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+#: dnsmasq.c:161
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr ""
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr ""
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+msgid "cannot use --conntrack AND --query-port"
- msgstr ""
--#: dnsmasq.c:173
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+#: dnsmasq.c:175
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr ""
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr ""
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr ""
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr ""
--#: dnsmasq.c:193
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+#: dnsmasq.c:195
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr ""
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr ""
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr ""
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr ""
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr ""
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr ""
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr ""
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr ""
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr ""
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr ""
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, c-format
- msgid "started, version %s DNS disabled"
- msgstr ""
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr ""
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr ""
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr ""
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr ""
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr ""
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
--#: dnsmasq.c:684
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
-+#: dnsmasq.c:713
- #, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr ""
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr ""
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr ""
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr ""
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- msgid "warning: no upstream servers configured"
- msgstr ""
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr ""
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr ""
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "enabled"
- msgstr ""
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr ""
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr ""
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr ""
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr ""
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, c-format
- msgid "failed to create helper: %s"
- msgstr ""
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr ""
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr ""
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr ""
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr ""
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, c-format
- msgid "cannot open log %s: %s"
- msgstr ""
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, c-format
- msgid "failed to load Lua script: %s"
- msgstr ""
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr ""
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr ""
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr ""
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr ""
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, c-format
- msgid "failed to execute %s: %s"
- msgstr ""
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr ""
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, c-format
- msgid "failed to access %s: %s"
- msgstr ""
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr ""
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, c-format
- msgid "no servers found in %s, will retry"
- msgstr ""
-@@ -1476,27 +1517,27 @@ msgstr ""
- msgid "DHCP packet received on %s which has no address"
- msgstr ""
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr ""
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr ""
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr ""
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr ""
-@@ -1567,12 +1608,12 @@ msgstr ""
- msgid "disabled"
- msgstr ""
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr ""
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr ""
-@@ -1592,7 +1633,7 @@ msgstr ""
- msgid "no leases left"
- msgstr ""
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr ""
-@@ -1601,7 +1642,7 @@ msgstr ""
- msgid "PXE BIS not supported"
- msgstr ""
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr ""
-@@ -1637,7 +1678,7 @@ msgstr ""
- msgid "wrong address"
- msgstr ""
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr ""
-@@ -1687,7 +1728,7 @@ msgstr ""
- msgid "PXE menu too large"
- msgstr ""
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, c-format
- msgid "%u requested options: %s"
- msgstr ""
-@@ -1702,7 +1743,7 @@ msgstr ""
- msgid "cannot create netlink socket: %s"
- msgstr ""
--#: netlink.c:347
-+#: netlink.c:348
- #, c-format
- msgid "netlink returns error: %s"
- msgstr ""
-@@ -1820,62 +1861,62 @@ msgstr ""
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr ""
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, c-format
- msgid "%u vendor class: %u"
- msgstr ""
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, c-format
- msgid "%u client MAC address: %s"
- msgstr ""
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, c-format
- msgid "unknown prefix-class %d"
- msgstr ""
--#: rfc3315.c:791 rfc3315.c:913
--msgid "success"
-+#: rfc3315.c:803 rfc3315.c:902
-+msgid "address unavailable"
- msgstr ""
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
--msgid "no addresses available"
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
-+msgid "success"
- msgstr ""
--#: rfc3315.c:865
--msgid "address unavailable"
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
-+msgid "no addresses available"
- msgstr ""
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr ""
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr ""
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr ""
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- msgid "address invalid"
- msgstr ""
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr ""
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- msgid "all addresses still on link"
- msgstr ""
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr ""
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr ""
-@@ -1968,7 +2009,7 @@ msgstr ""
- msgid "cannot create ICMPv6 socket: %s"
- msgstr ""
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr ""
-@@ -1983,50 +2024,85 @@ msgstr ""
- msgid "failed to create IPset control socket: %s"
- msgstr ""
-+#: dnssec.c:425 dnssec.c:469
-+#, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr ""
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
--#: tables.c:105
-+#: tables.c:109
- #, c-format
- msgid "failed to access pf devices: %s"
- msgstr ""
--#: tables.c:119
-+#: tables.c:123
- #, c-format
- msgid "warning: no opened pf devices %s"
- msgstr ""
--#: tables.c:127
-+#: tables.c:131
- #, c-format
- msgid "error: cannot use table name %s"
- msgstr ""
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
--#: tables.c:162
-+#: tables.c:166
- #, c-format
- msgid "%d addresses %s"
- msgstr ""
-+
-+#: inotify.c:46
-+#, c-format
-+msgid "failed to create inotify: %s"
-+msgstr ""
-+
-+#: inotify.c:60
-+#, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr ""
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr ""
-+
-+#: inotify.c:97
-+#, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr ""
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-diff --git a/po/ro.po b/po/ro.po
-index 6887fcb62636..0ac8bd63e25f 100644
---- a/po/ro.po
-+++ b/po/ro.po
-@@ -15,71 +15,71 @@ msgstr ""
- "Content-Type: text/plain; charset=UTF-8\n"
- "Content-Transfer-Encoding: 8bit\n"
--#: cache.c:505
-+#: cache.c:523
- msgid "Internal error in cache."
- msgstr ""
- # for compatibility purposes the letters â, ă, ş, ţ and î can be written as their look-alike correspondent.
--#: cache.c:908
-+#: cache.c:941
- #, fuzzy, c-format
- msgid "failed to load names from %s: %s"
- msgstr "încărcarea numelor din %s: %s a eşuat"
--#: cache.c:934 dhcp.c:820
-+#: cache.c:967 dhcp.c:825
- #, c-format
- msgid "bad address at %s line %d"
- msgstr "adresă greşită în %s, linia %d"
--#: cache.c:985 dhcp.c:836
-+#: cache.c:1018 dhcp.c:841
- #, c-format
- msgid "bad name at %s line %d"
- msgstr "nume greşit în %s linia %d"
--#: cache.c:992 dhcp.c:911
-+#: cache.c:1027 dhcp.c:916
- #, c-format
- msgid "read %s - %d addresses"
- msgstr "citesc %s - %d adrese"
--#: cache.c:1100
-+#: cache.c:1135
- msgid "cleared cache"
- msgstr "memoria temporară a fost ştearsă"
--#: cache.c:1123
-+#: cache.c:1164
- #, c-format
- msgid "No IPv4 address found for %s"
- msgstr ""
--#: cache.c:1201
-+#: cache.c:1242
- #, c-format
- msgid "%s is a CNAME, not giving it to the DHCP lease of %s"
- msgstr ""
--#: cache.c:1225
-+#: cache.c:1266
- #, c-format
- msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s"
- msgstr "nu pot da numele %s împrumutului de adresă DHCP a lui %s deoarece numeleexistă în %s cu adresa %s"
--#: cache.c:1366
-+#: cache.c:1421
- #, c-format
- msgid "time %lu"
- msgstr ""
--#: cache.c:1367
-+#: cache.c:1422
- #, fuzzy, c-format
- msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries."
- msgstr "cantitate de memorie temporară %d, %d/%d stocări temporare aureutilizat locaţii neexpirate."
--#: cache.c:1369
-+#: cache.c:1424
- #, c-format
- msgid "queries forwarded %u, queries answered locally %u"
- msgstr ""
--#: cache.c:1372
-+#: cache.c:1427
- #, c-format
- msgid "queries for authoritative zones %u"
- msgstr ""
--#: cache.c:1398
-+#: cache.c:1453
- #, c-format
- msgid "server %s#%d: queries sent %u, retried or failed %u"
- msgstr ""
-@@ -94,7 +94,7 @@ msgstr "ascultarea pe socket a eşuat: %s"
- msgid "failed to allocate memory"
- msgstr "nu pot încărca %d bytes"
--#: util.c:243 option.c:579
-+#: util.c:243 option.c:598
- msgid "could not get memory"
- msgstr "nu am putut aloca memorie"
-@@ -108,610 +108,643 @@ msgstr "nu pot citi %s: %s"
- msgid "failed to allocate %d bytes"
- msgstr "nu pot încărca %d bytes"
--#: util.c:429
-+#: util.c:430
- #, c-format
- msgid "infinite"
- msgstr "infinit"
--#: option.c:318
-+#: option.c:330
- msgid "Specify local address(es) to listen on."
- msgstr "Specificaţi adresele locale deservite."
--#: option.c:319
-+#: option.c:331
- msgid "Return ipaddr for all hosts in specified domains."
- msgstr "Afişează adresele IP ale maşinilor în domeniul dat."
--#: option.c:320
-+#: option.c:332
- msgid "Fake reverse lookups for RFC1918 private address ranges."
- msgstr "Simulează căutări după adresă pentru domenii de adresă private (RFC1918)."
--#: option.c:321
-+#: option.c:333
- msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)."
- msgstr "Interpretează adresa IP ca NXDOMAIN (împotriva manipulărilor Verisign)"
--#: option.c:322
-+#: option.c:334
- #, c-format
- msgid "Specify the size of the cache in entries (defaults to %s)."
- msgstr "Specifică mărimea înregistrărilor temporare (implicit e %s)."
--#: option.c:323
-+#: option.c:335
- #, c-format
- msgid "Specify configuration file (defaults to %s)."
- msgstr "Specifică fişier de configurare (implicit e %s)."
--#: option.c:324
-+#: option.c:336
- msgid "Do NOT fork into the background: run in debug mode."
- msgstr "NU porneşte în fundal: rulează în modul depanare."
--#: option.c:325
-+#: option.c:337
- msgid "Do NOT forward queries with no domain part."
- msgstr "NU înainta cererile ce nu conţin domeniu DNS."
--#: option.c:326
-+#: option.c:338
- msgid "Return self-pointing MX records for local hosts."
- msgstr "Răspunde cu înregistrări MX spre el însuşi pentru maşini locale."
--#: option.c:327
-+#: option.c:339
- msgid "Expand simple names in /etc/hosts with domain-suffix."
- msgstr "Adaugă numelor simple din /etc/hosts numele domeniului ca sufix."
--#: option.c:328
-+#: option.c:340
- msgid "Don't forward spurious DNS requests from Windows hosts."
- msgstr "Nu inainta cereri DNS defecte provenite de la maşini Windows."
--#: option.c:329
-+#: option.c:341
- msgid "Enable DHCP in the range given with lease duration."
- msgstr "Activează DHCP în domeniul dat cu durată limitată de împrumut."
--#: option.c:330
-+#: option.c:342
- #, c-format
- msgid "Change to this group after startup (defaults to %s)."
- msgstr "Rulează sub acest grup după pornire (implicit e %s)."
--#: option.c:331
-+#: option.c:343
- msgid "Set address or hostname for a specified machine."
- msgstr "Schimbă adresa sau numele maşinii specificate."
--#: option.c:332
-+#: option.c:344
- #, fuzzy
- msgid "Read DHCP host specs from file."
- msgstr "nume MX invalid"
--#: option.c:333
-+#: option.c:345
- msgid "Read DHCP option specs from file."
- msgstr ""
--#: option.c:334
-+#: option.c:346
-+#, fuzzy
-+msgid "Read DHCP host specs from a directory."
-+msgstr "nume MX invalid"
-+
-+#: option.c:347
-+#, fuzzy
-+msgid "Read DHCP options from a directory."
-+msgstr "nume MX invalid"
-+
-+#: option.c:348
- msgid "Evaluate conditional tag expression."
- msgstr ""
--#: option.c:335
-+#: option.c:349
- #, c-format
- msgid "Do NOT load %s file."
- msgstr "Nu încarcă fişierul %s."
--#: option.c:336
-+#: option.c:350
- #, c-format
- msgid "Specify a hosts file to be read in addition to %s."
- msgstr "Specifică spre citire un fişier hosts adiţional la %s."
--#: option.c:337
-+#: option.c:351
-+#, fuzzy
-+msgid "Read hosts files from a directory."
-+msgstr "nume MX invalid"
-+
-+#: option.c:352
- msgid "Specify interface(s) to listen on."
- msgstr "Specifică interfeţele deservite."
--#: option.c:338
-+#: option.c:353
- msgid "Specify interface(s) NOT to listen on."
- msgstr "Specifică interfeţele NE-deservite."
--#: option.c:339
-+#: option.c:354
- #, fuzzy
- msgid "Map DHCP user class to tag."
- msgstr "Leagă clasa de utilizator DHCP cu grup de opţiuni."
--#: option.c:340
-+#: option.c:355
- msgid "Map RFC3046 circuit-id to tag."
- msgstr ""
--#: option.c:341
-+#: option.c:356
- msgid "Map RFC3046 remote-id to tag."
- msgstr ""
--#: option.c:342
-+#: option.c:357
- msgid "Map RFC3993 subscriber-id to tag."
- msgstr ""
--#: option.c:343
-+#: option.c:358
- #, fuzzy
- msgid "Don't do DHCP for hosts with tag set."
- msgstr "Nu furniza DHCP maşinilor din grupul de opţiuni."
--#: option.c:344
-+#: option.c:359
- #, fuzzy
- msgid "Force broadcast replies for hosts with tag set."
- msgstr "Nu furniza DHCP maşinilor din grupul de opţiuni."
--#: option.c:345
-+#: option.c:360
- msgid "Do NOT fork into the background, do NOT run in debug mode."
- msgstr "NU porneşte în fundal, NU rulează în modul depanare."
--#: option.c:346
-+#: option.c:361
- msgid "Assume we are the only DHCP server on the local network."
- msgstr "Presupune că suntem singurul server DHCP din reţeaua locală."
--#: option.c:347
-+#: option.c:362
- #, c-format
- msgid "Specify where to store DHCP leases (defaults to %s)."
- msgstr "Specifică fişierul de stocare a împrumuturilor DHCP (implicit e %s)."
--#: option.c:348
-+#: option.c:363
- msgid "Return MX records for local hosts."
- msgstr "Răspunde cu întregistrări MX pentru maşini locale."
--#: option.c:349
-+#: option.c:364
- msgid "Specify an MX record."
- msgstr "Specifică o înregistrare MX."
--#: option.c:350
-+#: option.c:365
- msgid "Specify BOOTP options to DHCP server."
- msgstr "Specifică opţiuni BOOTP serverului DHCP."
--#: option.c:351
-+#: option.c:366
- #, c-format
- msgid "Do NOT poll %s file, reload only on SIGHUP."
- msgstr "Nu încărca fişierul %s, citeşte-l doar la SIGHUP."
--#: option.c:352
-+#: option.c:367
- msgid "Do NOT cache failed search results."
- msgstr "NU memora rezultatele de căutare DNS eşuatată."
--#: option.c:353
-+#: option.c:368
- #, c-format
- msgid "Use nameservers strictly in the order given in %s."
- msgstr "Foloseşte servere DNS strict în ordinea dată în %s."
--#: option.c:354
-+#: option.c:369
- #, fuzzy
- msgid "Specify options to be sent to DHCP clients."
- msgstr "Configurează opţiuni în plusce trebuie trimise clienţilor DHCP."
--#: option.c:355
-+#: option.c:370
- msgid "DHCP option sent even if the client does not request it."
- msgstr ""
--#: option.c:356
-+#: option.c:371
- msgid "Specify port to listen for DNS requests on (defaults to 53)."
- msgstr "Specifică numărul portului pentru cereri DNS (implicit e 53)."
--#: option.c:357
-+#: option.c:372
- #, c-format
- msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)."
- msgstr "Marimea maximă a pachetului UDP pentru EDNS.0 (implicit e %s)."
--#: option.c:358
-+#: option.c:373
- #, fuzzy
- msgid "Log DNS queries."
- msgstr "Înregistrează tranzacţiile."
--#: option.c:359
-+#: option.c:374
- #, fuzzy
- msgid "Force the originating port for upstream DNS queries."
- msgstr "Forţează acest port pentru datele ce pleacă."
--#: option.c:360
-+#: option.c:375
- msgid "Do NOT read resolv.conf."
- msgstr "NU citi fişierul resolv.conf"
--#: option.c:361
-+#: option.c:376
- #, c-format
- msgid "Specify path to resolv.conf (defaults to %s)."
- msgstr "Specifică calea către resolv.conf (implicit e %s)."
--#: option.c:362
-+#: option.c:377
- #, fuzzy
- msgid "Specify path to file with server= options"
- msgstr "Specifică o cale pentru fişierul PID. (implicit %s)."
--#: option.c:363
-+#: option.c:378
- msgid "Specify address(es) of upstream servers with optional domains."
- msgstr "Specifică adresele server(elor) superioare cu domenii opţionale."
--#: option.c:364
-+#: option.c:379
- #, fuzzy
- msgid "Specify address of upstream servers for reverse address queries"
- msgstr "Specifică adresele server(elor) superioare cu domenii opţionale."
--#: option.c:365
-+#: option.c:380
- msgid "Never forward queries to specified domains."
- msgstr "Nu înaintează cererile spre domeniile specificate."
--#: option.c:366
-+#: option.c:381
- msgid "Specify the domain to be assigned in DHCP leases."
- msgstr "Specifică domeniul de transmis prin DHCP."
--#: option.c:367
-+#: option.c:382
- msgid "Specify default target in an MX record."
- msgstr "Specifică o ţintă într-o înregistrare MX."
--#: option.c:368
-+#: option.c:383
- msgid "Specify time-to-live in seconds for replies from /etc/hosts."
- msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts."
--#: option.c:369
-+#: option.c:384
- #, fuzzy
- msgid "Specify time-to-live in seconds for negative caching."
- msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts."
--#: option.c:370
-+#: option.c:385
- #, fuzzy
- msgid "Specify time-to-live in seconds for maximum TTL to send to clients."
- msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts."
--#: option.c:371
-+#: option.c:386
-+#, fuzzy
-+msgid "Specify time-to-live ceiling for cache."
-+msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts."
-+
-+#: option.c:387
-+#, fuzzy
-+msgid "Specify time-to-live floor for cache."
-+msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts."
-+
-+#: option.c:388
- #, c-format
- msgid "Change to this user after startup. (defaults to %s)."
- msgstr "Rulează sub acest utilizator după pornire. (implicit e %s)."
--#: option.c:372
-+#: option.c:389
- #, fuzzy
- msgid "Map DHCP vendor class to tag."
- msgstr "Trimite opţiuni DHCP în funcţie de marca plăcii de reţea."
--#: option.c:373
-+#: option.c:390
- msgid "Display dnsmasq version and copyright information."
- msgstr "Afişează versiunea dnsmasq şi drepturile de autor."
--#: option.c:374
-+#: option.c:391
- msgid "Translate IPv4 addresses from upstream servers."
- msgstr "Traduce adresele IPv4 de la serverele DNS superioare."
--#: option.c:375
-+#: option.c:392
- msgid "Specify a SRV record."
- msgstr "Specifică o înregistrare SRV."
--#: option.c:376
-+#: option.c:393
- msgid "Display this message. Use --help dhcp for known DHCP options."
- msgstr ""
--#: option.c:377
-+#: option.c:394
- #, fuzzy, c-format
- msgid "Specify path of PID file (defaults to %s)."
- msgstr "Specifică o cale pentru fişierul PID. (implicit %s)."
--#: option.c:378
-+#: option.c:395
- #, c-format
- msgid "Specify maximum number of DHCP leases (defaults to %s)."
- msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)."
--#: option.c:379
-+#: option.c:396
- msgid "Answer DNS queries based on the interface a query was sent to."
- msgstr "Răspunde cererilor DNS în funcţie de interfaţa pe care a venit cererea."
--#: option.c:380
-+#: option.c:397
- msgid "Specify TXT DNS record."
- msgstr "Specifică o înregistrare TXT."
--#: option.c:381
-+#: option.c:398
- #, fuzzy
- msgid "Specify PTR DNS record."
- msgstr "Specifică o înregistrare TXT."
--#: option.c:382
-+#: option.c:399
- msgid "Give DNS name to IPv4 address of interface."
- msgstr ""
--#: option.c:383
-+#: option.c:400
- msgid "Bind only to interfaces in use."
- msgstr "Ascultă doar pe interfeţele active."
--#: option.c:384
-+#: option.c:401
- #, c-format
- msgid "Read DHCP static host information from %s."
- msgstr "Citeşte informaţii DHCP statice despre maşină din %s."
--#: option.c:385
-+#: option.c:402
- msgid "Enable the DBus interface for setting upstream servers, etc."
- msgstr "Activeaza interfaţa DBus pentru configurarea serverelor superioare."
--#: option.c:386
-+#: option.c:403
- msgid "Do not provide DHCP on this interface, only provide DNS."
- msgstr "Nu activează DHCP ci doar DNS pe această interfaţă."
--#: option.c:387
-+#: option.c:404
- msgid "Enable dynamic address allocation for bootp."
- msgstr "Activează alocarea dinamică a adreselor pentru BOOTP."
--#: option.c:388
-+#: option.c:405
- #, fuzzy
- msgid "Map MAC address (with wildcards) to option set."
- msgstr "Trimite opţiuni DHCP în funcţie de marca plăcii de reţea."
--#: option.c:389
-+#: option.c:406
- msgid "Treat DHCP requests on aliases as arriving from interface."
- msgstr ""
--#: option.c:390
-+#: option.c:407
- msgid "Disable ICMP echo address checking in the DHCP server."
- msgstr ""
--#: option.c:391
-+#: option.c:408
- msgid "Shell script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:392
-+#: option.c:409
- msgid "Lua script to run on DHCP lease creation and destruction."
- msgstr ""
--#: option.c:393
-+#: option.c:410
- msgid "Run lease-change scripts as this user."
- msgstr ""
--#: option.c:394
-+#: option.c:411
- msgid "Read configuration from all the files in this directory."
- msgstr ""
--#: option.c:395
-+#: option.c:412
- #, fuzzy
- msgid "Log to this syslog facility or file. (defaults to DAEMON)"
- msgstr "Rulează sub acest utilizator după pornire. (implicit e %s)."
--#: option.c:396
-+#: option.c:413
- msgid "Do not use leasefile."
- msgstr ""
--#: option.c:397
-+#: option.c:414
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries. (defaults to %s)"
- msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)."
--#: option.c:398
-+#: option.c:415
- #, c-format
- msgid "Clear DNS cache when reloading %s."
- msgstr ""
--#: option.c:399
-+#: option.c:416
- msgid "Ignore hostnames provided by DHCP clients."
- msgstr ""
--#: option.c:400
-+#: option.c:417
- msgid "Do NOT reuse filename and server fields for extra DHCP options."
- msgstr ""
--#: option.c:401
-+#: option.c:418
- msgid "Enable integrated read-only TFTP server."
- msgstr ""
--#: option.c:402
-+#: option.c:419
- msgid "Export files by TFTP only from the specified subtree."
- msgstr ""
--#: option.c:403
-+#: option.c:420
- msgid "Add client IP address to tftp-root."
- msgstr ""
--#: option.c:404
-+#: option.c:421
- msgid "Allow access only to files owned by the user running dnsmasq."
- msgstr ""
--#: option.c:405
-+#: option.c:422
- #, fuzzy, c-format
- msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)."
- msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)."
--#: option.c:406
-+#: option.c:423
- msgid "Disable the TFTP blocksize extension."
- msgstr ""
--#: option.c:407
-+#: option.c:424
- msgid "Convert TFTP filenames to lowercase"
- msgstr ""
--#: option.c:408
-+#: option.c:425
- msgid "Ephemeral port range for use by TFTP transfers."
- msgstr ""
--#: option.c:409
-+#: option.c:426
- msgid "Extra logging for DHCP."
- msgstr ""
--#: option.c:410
-+#: option.c:427
- msgid "Enable async. logging; optionally set queue length."
- msgstr ""
--#: option.c:411
-+#: option.c:428
- msgid "Stop DNS rebinding. Filter private IP ranges when resolving."
- msgstr ""
--#: option.c:412
-+#: option.c:429
- msgid "Allow rebinding of 127.0.0.0/8, for RBL servers."
- msgstr ""
--#: option.c:413
-+#: option.c:430
- msgid "Inhibit DNS-rebind protection on this domain."
- msgstr ""
--#: option.c:414
-+#: option.c:431
- msgid "Always perform DNS queries to all servers."
- msgstr ""
--#: option.c:415
-+#: option.c:432
- msgid "Set tag if client includes matching option in request."
- msgstr ""
--#: option.c:416
-+#: option.c:433
- msgid "Use alternative ports for DHCP."
- msgstr ""
--#: option.c:417
-+#: option.c:434
- #, fuzzy
- msgid "Specify NAPTR DNS record."
- msgstr "Specifică o înregistrare TXT."
--#: option.c:418
-+#: option.c:435
- msgid "Specify lowest port available for DNS query transmission."
- msgstr ""
--#: option.c:419
-+#: option.c:436
- msgid "Use only fully qualified domain names for DHCP clients."
- msgstr ""
--#: option.c:420
-+#: option.c:437
- msgid "Generate hostnames based on MAC address for nameless clients."
- msgstr ""
--#: option.c:421
-+#: option.c:438
- msgid "Use these DHCP relays as full proxies."
- msgstr ""
--#: option.c:422
-+#: option.c:439
- msgid "Relay DHCP requests to a remote server"
- msgstr ""
--#: option.c:423
-+#: option.c:440
- msgid "Specify alias name for LOCAL DNS name."
- msgstr ""
--#: option.c:424
-+#: option.c:441
- #, fuzzy
- msgid "Prompt to send to PXE clients."
- msgstr "Configurează opţiuni în plusce trebuie trimise clienţilor DHCP."
--#: option.c:425
-+#: option.c:442
- msgid "Boot service for PXE menu."
- msgstr ""
--#: option.c:426
-+#: option.c:443
- msgid "Check configuration syntax."
- msgstr ""
--#: option.c:427
-+#: option.c:444
- msgid "Add requestor's MAC address to forwarded DNS queries."
- msgstr ""
--#: option.c:428
-+#: option.c:445
- msgid "Add requestor's IP subnet to forwarded DNS queries."
- msgstr ""
--#: option.c:429
-+#: option.c:446
- #, fuzzy
- msgid "Proxy DNSSEC validation results from upstream nameservers."
- msgstr "Traduce adresele IPv4 de la serverele DNS superioare."
--#: option.c:430
-+#: option.c:447
- msgid "Attempt to allocate sequential IP addresses to DHCP clients."
- msgstr ""
--#: option.c:431
-+#: option.c:448
- msgid "Copy connection-track mark from queries to upstream connections."
- msgstr ""
--#: option.c:432
-+#: option.c:449
- msgid "Allow DHCP clients to do their own DDNS updates."
- msgstr ""
--#: option.c:433
-+#: option.c:450
- msgid "Send router-advertisements for interfaces doing DHCPv6"
- msgstr ""
--#: option.c:434
-+#: option.c:451
- msgid "Specify DUID_EN-type DHCPv6 server DUID"
- msgstr ""
--#: option.c:435
-+#: option.c:452
- #, fuzzy
- msgid "Specify host (A/AAAA and PTR) records"
- msgstr "Specifică o înregistrare MX."
--#: option.c:436
-+#: option.c:453
- #, fuzzy
- msgid "Specify arbitrary DNS resource record"
- msgstr "Specifică o înregistrare TXT."
--#: option.c:437
-+#: option.c:454
- #, fuzzy
- msgid "Bind to interfaces in use - check for new interfaces"
- msgstr "interfaţă necunoscută %s"
--#: option.c:438
-+#: option.c:455
- msgid "Export local names to global DNS"
- msgstr ""
--#: option.c:439
-+#: option.c:456
- msgid "Domain to export to global DNS"
- msgstr ""
--#: option.c:440
-+#: option.c:457
- msgid "Set TTL for authoritative replies"
- msgstr ""
--#: option.c:441
-+#: option.c:458
- msgid "Set authoritive zone information"
- msgstr ""
--#: option.c:442
-+#: option.c:459
- msgid "Secondary authoritative nameservers for forward domains"
- msgstr ""
--#: option.c:443
-+#: option.c:460
- msgid "Peers which are allowed to do zone transfer"
- msgstr ""
--#: option.c:444
-+#: option.c:461
- msgid "Specify ipsets to which matching domains should be added"
- msgstr ""
--#: option.c:445
-+#: option.c:462
- msgid "Specify a domain and address range for synthesised names"
- msgstr ""
--#: option.c:446
-+#: option.c:463
- msgid "Activate DNSSEC validation"
- msgstr ""
--#: option.c:447
-+#: option.c:464
- msgid "Specify trust anchor key digest."
- msgstr ""
--#: option.c:448
-+#: option.c:465
- msgid "Disable upstream checking for DNSSEC debugging."
- msgstr ""
--#: option.c:449
-+#: option.c:466
- msgid "Ensure answers without DNSSEC are in unsigned zones."
- msgstr ""
--#: option.c:450
-+#: option.c:467
- msgid "Don't check DNSSEC signature timestamps until first cache-reload"
- msgstr ""
--#: option.c:452
-+#: option.c:468
-+msgid "Timestamp file to verify system clock for DNSSEC"
-+msgstr ""
-+
-+#: option.c:470
- msgid "Specify DHCPv6 prefix class"
- msgstr ""
--#: option.c:454
-+#: option.c:472
- msgid "Set priority, resend-interval and router-lifetime"
- msgstr ""
--#: option.c:455
-+#: option.c:473
- msgid "Do not log routine DHCP."
- msgstr ""
--#: option.c:456
-+#: option.c:474
- msgid "Do not log routine DHCPv6."
- msgstr ""
--#: option.c:457
-+#: option.c:475
- msgid "Do not log RA."
- msgstr ""
--#: option.c:458
-+#: option.c:476
- msgid "Accept queries only from directly-connected networks"
- msgstr ""
--#: option.c:459
-+#: option.c:477
- msgid "Detect and remove DNS forwarding loops"
- msgstr ""
--#: option.c:661
-+#: option.c:478
-+msgid "Ignore DNS responses containing ipaddr."
-+msgstr ""
-+
-+#: option.c:680
- #, c-format
- msgid ""
- "Usage: dnsmasq [options]\n"
-@@ -720,332 +753,332 @@ msgstr ""
- "Utilizare: dnsmasq [opţiuni]\n"
- "\n"
--#: option.c:663
-+#: option.c:682
- #, c-format
- msgid "Use short options only on the command line.\n"
- msgstr "Folosiţi opţiunile prescurtate doar în linie de comandă.\n"
--#: option.c:665
-+#: option.c:684
- #, fuzzy, c-format
- msgid "Valid options are:\n"
- msgstr "Opţiunile valide sunt:\n"
--#: option.c:722 option.c:726
-+#: option.c:741 option.c:745
- msgid "bad port"
- msgstr "port invalid"
--#: option.c:753 option.c:785
-+#: option.c:772 option.c:804
- msgid "interface binding not supported"
- msgstr ""
--#: option.c:762 option.c:3494
-+#: option.c:781 option.c:3570
- #, fuzzy
- msgid "bad interface name"
- msgstr "nume MX invalid"
--#: option.c:792
-+#: option.c:811
- #, fuzzy
- msgid "bad address"
- msgstr "citesc %s - %d adrese"
--#: option.c:974
-+#: option.c:993
- msgid "unsupported encapsulation for IPv6 option"
- msgstr ""
--#: option.c:988
-+#: option.c:1007
- msgid "bad dhcp-option"
- msgstr "dhcp-option invalid"
--#: option.c:1056
-+#: option.c:1075
- #, fuzzy
- msgid "bad IP address"
- msgstr "citesc %s - %d adrese"
--#: option.c:1059 option.c:1197 option.c:2812
-+#: option.c:1078 option.c:1216 option.c:2888
- #, fuzzy
- msgid "bad IPv6 address"
- msgstr "citesc %s - %d adrese"
--#: option.c:1224 option.c:1318
-+#: option.c:1243 option.c:1337
- msgid "bad domain in dhcp-option"
- msgstr "domeniu DNS invalid în declaraţia dhcp-option"
--#: option.c:1356
-+#: option.c:1375
- msgid "dhcp-option too long"
- msgstr "declararea dhcp-option este prea lungă"
--#: option.c:1363
-+#: option.c:1382
- msgid "illegal dhcp-match"
- msgstr ""
--#: option.c:1425
-+#: option.c:1444
- msgid "illegal repeated flag"
- msgstr ""
--#: option.c:1433
-+#: option.c:1452
- msgid "illegal repeated keyword"
- msgstr ""
--#: option.c:1495 option.c:4092
-+#: option.c:1517 option.c:4186
- #, fuzzy, c-format
- msgid "cannot access directory %s: %s"
- msgstr "nu pot citi %s: %s"
--#: option.c:1541 tftp.c:493
-+#: option.c:1563 tftp.c:493
- #, fuzzy, c-format
- msgid "cannot access %s: %s"
- msgstr "nu pot citi %s: %s"
--#: option.c:1588
-+#: option.c:1615
- msgid "setting log facility is not possible under Android"
- msgstr ""
--#: option.c:1597
-+#: option.c:1624
- msgid "bad log facility"
- msgstr ""
--#: option.c:1650
-+#: option.c:1677
- msgid "bad MX preference"
- msgstr "preferinţă MX invalidă"
--#: option.c:1655
-+#: option.c:1682
- msgid "bad MX name"
- msgstr "nume MX invalid"
--#: option.c:1669
-+#: option.c:1696
- msgid "bad MX target"
- msgstr "ţintă MX invalidă"
--#: option.c:1681
-+#: option.c:1708
- msgid "cannot run scripts under uClinux"
- msgstr ""
--#: option.c:1683
-+#: option.c:1710
- msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts"
- msgstr ""
--#: option.c:1687
-+#: option.c:1714
- msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts"
- msgstr ""
--#: option.c:1928 option.c:1966 option.c:2015
-+#: option.c:1970 option.c:2015 option.c:2071
- #, fuzzy
- msgid "bad prefix"
- msgstr "port invalid"
--#: option.c:2289
-+#: option.c:2352
- msgid "recompile with HAVE_IPSET defined to enable ipset directives"
- msgstr ""
--#: option.c:2469
-+#: option.c:2545
- #, fuzzy
- msgid "bad port range"
- msgstr "port invalid"
--#: option.c:2485
-+#: option.c:2561
- msgid "bad bridge-interface"
- msgstr ""
--#: option.c:2545
-+#: option.c:2621
- msgid "only one tag allowed"
- msgstr ""
--#: option.c:2565 option.c:2577 option.c:2683 option.c:2724
-+#: option.c:2641 option.c:2653 option.c:2759 option.c:2800
- msgid "bad dhcp-range"
- msgstr "dhcp-range invalid"
--#: option.c:2592
-+#: option.c:2668
- msgid "inconsistent DHCP range"
- msgstr "domeniu DHCP inconsistent"
--#: option.c:2651
-+#: option.c:2727
- msgid "prefix length must be exactly 64 for RA subnets"
- msgstr ""
--#: option.c:2653
-+#: option.c:2729
- msgid "prefix length must be exactly 64 for subnet constructors"
- msgstr ""
--#: option.c:2657
-+#: option.c:2733
- msgid "prefix length must be at least 64"
- msgstr ""
--#: option.c:2660
-+#: option.c:2736
- #, fuzzy
- msgid "inconsistent DHCPv6 range"
- msgstr "domeniu DHCP inconsistent"
--#: option.c:2671
-+#: option.c:2747
- msgid "prefix must be zero with \"constructor:\" argument"
- msgstr ""
--#: option.c:2782 option.c:2830
-+#: option.c:2858 option.c:2906
- #, fuzzy
- msgid "bad hex constant"
- msgstr "dhcp-host invalid"
--#: option.c:2804
-+#: option.c:2880
- msgid "cannot match tags in --dhcp-host"
- msgstr ""
--#: option.c:2852
-+#: option.c:2928
- #, fuzzy, c-format
- msgid "duplicate dhcp-host IP address %s"
- msgstr "adresă IP duplicat %s în declaraţia dhcp-config."
--#: option.c:2910
-+#: option.c:2986
- #, fuzzy
- msgid "bad DHCP host name"
- msgstr "nume MX invalid"
--#: option.c:2992
-+#: option.c:3068
- #, fuzzy
- msgid "bad tag-if"
- msgstr "ţintă MX invalidă"
--#: option.c:3316 option.c:3710
-+#: option.c:3392 option.c:3786
- msgid "invalid port number"
- msgstr "număr de port invalid"
--#: option.c:3378
-+#: option.c:3454
- #, fuzzy
- msgid "bad dhcp-proxy address"
- msgstr "citesc %s - %d adrese"
--#: option.c:3404
-+#: option.c:3480
- #, fuzzy
- msgid "Bad dhcp-relay"
- msgstr "dhcp-range invalid"
--#: option.c:3430
-+#: option.c:3506
- msgid "bad RA-params"
- msgstr ""
--#: option.c:3439
-+#: option.c:3515
- msgid "bad DUID"
- msgstr ""
--#: option.c:3481
-+#: option.c:3557
- #, fuzzy
- msgid "invalid alias range"
- msgstr "pondere invalidă"
--#: option.c:3535
-+#: option.c:3611
- msgid "bad CNAME"
- msgstr ""
--#: option.c:3540
-+#: option.c:3616
- msgid "duplicate CNAME"
- msgstr ""
--#: option.c:3560
-+#: option.c:3636
- #, fuzzy
- msgid "bad PTR record"
- msgstr "înregistrare SRV invalidă"
--#: option.c:3591
-+#: option.c:3667
- #, fuzzy
- msgid "bad NAPTR record"
- msgstr "înregistrare SRV invalidă"
--#: option.c:3625
-+#: option.c:3701
- #, fuzzy
- msgid "bad RR record"
- msgstr "înregistrare SRV invalidă"
--#: option.c:3655
-+#: option.c:3731
- msgid "bad TXT record"
- msgstr "înregistrare TXT invalidă"
--#: option.c:3696
-+#: option.c:3772
- msgid "bad SRV record"
- msgstr "înregistrare SRV invalidă"
--#: option.c:3703
-+#: option.c:3779
- msgid "bad SRV target"
- msgstr "ţintă SRV invalidă"
--#: option.c:3717
-+#: option.c:3793
- msgid "invalid priority"
- msgstr "prioritate invalidă"
--#: option.c:3724
-+#: option.c:3800
- msgid "invalid weight"
- msgstr "pondere invalidă"
--#: option.c:3748
-+#: option.c:3824
- #, fuzzy
- msgid "Bad host-record"
- msgstr "înregistrare SRV invalidă"
--#: option.c:3765
-+#: option.c:3841
- #, fuzzy
- msgid "Bad name in host-record"
- msgstr "nume invalid în %s"
--#: option.c:3826
-+#: option.c:3906
- #, fuzzy
- msgid "bad trust anchor"
- msgstr "port invalid"
--#: option.c:3840
-+#: option.c:3920
- msgid "bad HEX in trust anchor"
- msgstr ""
--#: option.c:3850
-+#: option.c:3930
- msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)"
- msgstr ""
--#: option.c:3909
-+#: option.c:3989
- msgid "missing \""
- msgstr "lipseşte \""
--#: option.c:3966
-+#: option.c:4046
- msgid "bad option"
- msgstr "opţiune invalidă"
--#: option.c:3968
-+#: option.c:4048
- msgid "extraneous parameter"
- msgstr "parametru nerecunoscut"
--#: option.c:3970
-+#: option.c:4050
- msgid "missing parameter"
- msgstr "parametru lipsa"
--#: option.c:3972
-+#: option.c:4052
- #, fuzzy
- msgid "illegal option"
- msgstr "opţiune invalidă"
--#: option.c:3979
-+#: option.c:4059
- msgid "error"
- msgstr "eroare"
--#: option.c:3981
-+#: option.c:4061
- #, fuzzy, c-format
- msgid " at line %d of %s"
- msgstr "%s la linia %d din %%s"
--#: option.c:4045 option.c:4168 tftp.c:667
--#, c-format
--msgid "cannot read %s: %s"
--msgstr "nu pot citi %s: %s"
--
--#: option.c:4229 option.c:4265
-+#: option.c:4076 option.c:4323 option.c:4359
- #, fuzzy, c-format
- msgid "read %s"
- msgstr "citesc %s"
--#: option.c:4331
-+#: option.c:4139 option.c:4262 tftp.c:667
-+#, c-format
-+msgid "cannot read %s: %s"
-+msgstr "nu pot citi %s: %s"
-+
-+#: option.c:4425
- msgid "junk found in command line"
- msgstr ""
--#: option.c:4366
-+#: option.c:4460
- #, c-format
- msgid "Dnsmasq version %s  %s\n"
- msgstr "dnsmasq versiunea %s  %s\n"
--#: option.c:4367
-+#: option.c:4461
- #, fuzzy, c-format
- msgid ""
- "Compile time options: %s\n"
-@@ -1054,89 +1087,89 @@ msgstr ""
- "Opţiuni cu care a fost compilat %s\n"
- "\n"
--#: option.c:4368
-+#: option.c:4462
- #, c-format
- msgid "This software comes with ABSOLUTELY NO WARRANTY.\n"
- msgstr "Acest program vine FĂRĂ NICI O GARANŢIE.\n"
--#: option.c:4369
-+#: option.c:4463
- #, c-format
- msgid "Dnsmasq is free software, and you are welcome to redistribute it\n"
- msgstr "Dnsmasq este un program gratuit, sunteţi invitaţi să-l redistribuiţi\n"
--#: option.c:4370
-+#: option.c:4464
- #, fuzzy, c-format
- msgid "under the terms of the GNU General Public License, version 2 or 3.\n"
- msgstr "în termenii Licenţei publice generale GNU, versiunea 2.\n"
--#: option.c:4381
-+#: option.c:4475
- msgid "try --help"
- msgstr ""
--#: option.c:4383
-+#: option.c:4477
- msgid "try -w"
- msgstr ""
--#: option.c:4385
-+#: option.c:4479
- #, fuzzy, c-format
- msgid "bad command line options: %s"
- msgstr "opţiuni în linie de comandă invalide: %s."
--#: option.c:4434
-+#: option.c:4535
- #, c-format
- msgid "cannot get host-name: %s"
- msgstr "nu pot citi numele maşinii: %s"
--#: option.c:4462
-+#: option.c:4563
- msgid "only one resolv.conf file allowed in no-poll mode."
- msgstr "se permite un singur fişier resolv.conf în modul no-poll"
--#: option.c:4472
-+#: option.c:4573
- msgid "must have exactly one resolv.conf to read domain from."
- msgstr "am nevoie de un singur resolv.conf din care să citesc numele domeniului."
--#: option.c:4475 network.c:1506 dhcp.c:769
-+#: option.c:4576 network.c:1506 dhcp.c:774
- #, fuzzy, c-format
- msgid "failed to read %s: %s"
- msgstr "nu pot citi %s: %s"
--#: option.c:4492
-+#: option.c:4593
- #, c-format
- msgid "no search directive found in %s"
- msgstr "nu s-a găsit nici un criteriu de căutare în %s"
--#: option.c:4513
-+#: option.c:4614
- msgid "there must be a default domain when --dhcp-fqdn is set"
- msgstr ""
--#: option.c:4522
-+#: option.c:4623
- msgid "syntax check OK"
- msgstr ""
--#: forward.c:114
-+#: forward.c:111
- #, fuzzy, c-format
- msgid "failed to send packet: %s"
- msgstr "ascultarea pe socket a eşuat: %s"
--#: forward.c:574
-+#: forward.c:572
- msgid "discarding DNS reply: subnet option mismatch"
- msgstr ""
--#: forward.c:597
-+#: forward.c:595
- #, c-format
- msgid "nameserver %s refused to do a recursive query"
- msgstr "serverul DNS %s refuză interogările recursive"
--#: forward.c:629
-+#: forward.c:627
- #, c-format
- msgid "possible DNS-rebind attack detected: %s"
- msgstr ""
--#: forward.c:1132 forward.c:1663
-+#: forward.c:1156 forward.c:1722
- msgid "Ignoring query from non-local network"
- msgstr ""
--#: forward.c:2101
-+#: forward.c:2178
- #, fuzzy, c-format
- msgid "Maximum number of concurrent DNS queries reached (max: %d)"
- msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)."
-@@ -1226,273 +1259,286 @@ msgstr "folosim serverul DNS %s#%d"
- msgid "using nameserver %s#%d"
- msgstr "folosim serverul DNS %s#%d"
--#: dnsmasq.c:154
--msgid "No trust anchors provided for DNSSEC"
-+#: dnsmasq.c:149
-+msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform"
- msgstr ""
--#: dnsmasq.c:157
--msgid "Cannot reduce cache size from default when DNSSEC enabled"
-+#: dnsmasq.c:156
-+msgid "no trust anchors provided for DNSSEC"
- msgstr ""
- #: dnsmasq.c:159
-+msgid "cannot reduce cache size from default when DNSSEC enabled"
-+msgstr ""
-+
-+#: dnsmasq.c:161
- #, fuzzy
- msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h"
- msgstr "DBus nu este disponibil: puneţi HAVE_DBUS in src/config.h"
--#: dnsmasq.c:165
-+#: dnsmasq.c:167
- #, fuzzy
- msgid "TFTP server not available: set HAVE_TFTP in src/config.h"
- msgstr "DBus nu este disponibil: puneţi HAVE_DBUS in src/config.h"
--#: dnsmasq.c:170
--msgid "Cannot use --conntrack AND --query-port"
-+#: dnsmasq.c:172
-+msgid "cannot use --conntrack AND --query-port"
- msgstr ""
--#: dnsmasq.c:173
-+#: dnsmasq.c:175
- #, fuzzy
--msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h"
-+msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h"
- msgstr "DBus nu este disponibil: puneţi HAVE_DBUS in src/config.h"
--#: dnsmasq.c:178
-+#: dnsmasq.c:180
- msgid "asychronous logging is not available under Solaris"
- msgstr ""
--#: dnsmasq.c:183
-+#: dnsmasq.c:185
- msgid "asychronous logging is not available under Android"
- msgstr ""
--#: dnsmasq.c:188
-+#: dnsmasq.c:190
- #, fuzzy
- msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h"
- msgstr "DBus nu este disponibil: puneţi HAVE_DBUS in src/config.h"
--#: dnsmasq.c:193
-+#: dnsmasq.c:195
- #, fuzzy
--msgid "Loop detection not available: set HAVE_LOOP in src/config.h"
-+msgid "loop detection not available: set HAVE_LOOP in src/config.h"
- msgstr "DBus nu este disponibil: puneţi HAVE_DBUS in src/config.h"
--#: dnsmasq.c:201
-+#: dnsmasq.c:203
- msgid "zone serial must be configured in --auth-soa"
- msgstr ""
--#: dnsmasq.c:219
-+#: dnsmasq.c:221
- msgid "dhcp-range constructor not available on this platform"
- msgstr ""
--#: dnsmasq.c:262
-+#: dnsmasq.c:264
- msgid "cannot set --bind-interfaces and --bind-dynamic"
- msgstr ""
--#: dnsmasq.c:265
-+#: dnsmasq.c:267
- #, c-format
- msgid "failed to find list of interfaces: %s"
- msgstr "enumerarea interfeţelor a eşuat: %s"
--#: dnsmasq.c:274
-+#: dnsmasq.c:276
- #, c-format
- msgid "unknown interface %s"
- msgstr "interfaţă necunoscută %s"
--#: dnsmasq.c:330 dnsmasq.c:954
-+#: dnsmasq.c:340 dnsmasq.c:1004
- #, c-format
- msgid "DBus error: %s"
- msgstr "eroare DBus: %s"
--#: dnsmasq.c:333
-+#: dnsmasq.c:343
- msgid "DBus not available: set HAVE_DBUS in src/config.h"
- msgstr "DBus nu este disponibil: puneţi HAVE_DBUS in src/config.h"
--#: dnsmasq.c:361
-+#: dnsmasq.c:371
- #, c-format
- msgid "unknown user or group: %s"
- msgstr ""
--#: dnsmasq.c:416
-+#: dnsmasq.c:426
- #, c-format
- msgid "cannot chdir to filesystem root: %s"
- msgstr ""
--#: dnsmasq.c:653
-+#: dnsmasq.c:667
- #, fuzzy, c-format
- msgid "started, version %s DNS disabled"
- msgstr "am pornit, versiunea %s memorie temporară dezactivată"
--#: dnsmasq.c:655
-+#: dnsmasq.c:669
- #, c-format
- msgid "started, version %s cachesize %d"
- msgstr "am ponit, versiunea %s memorie temporară %d"
--#: dnsmasq.c:657
-+#: dnsmasq.c:671
- #, c-format
- msgid "started, version %s cache disabled"
- msgstr "am pornit, versiunea %s memorie temporară dezactivată"
--#: dnsmasq.c:659
-+#: dnsmasq.c:673
- #, c-format
- msgid "compile time options: %s"
- msgstr "compilat cu opţiunile: %s"
--#: dnsmasq.c:665
-+#: dnsmasq.c:679
- msgid "DBus support enabled: connected to system bus"
- msgstr "suportul DBus activ: sunt conectat la magistrala sistem"
--#: dnsmasq.c:667
-+#: dnsmasq.c:681
- msgid "DBus support enabled: bus connection pending"
- msgstr "suportul DBus activ: aştept conexiunea la magistrală"
--#: dnsmasq.c:672
-+#: dnsmasq.c:686
- msgid "DNS service limited to local subnets"
- msgstr ""
--#: dnsmasq.c:677
-+#: dnsmasq.c:702
- msgid "DNSSEC validation enabled"
- msgstr ""
--#: dnsmasq.c:679
-+#: dnsmasq.c:705
- msgid "DNSSEC signature timestamps not checked until first cache reload"
- msgstr ""
-+#: dnsmasq.c:708
-+msgid "DNSSEC signature timestamps not checked until system time valid"
-+msgstr ""
-+
- # for compatibility purposes the letters â, ă, ş, ţ and î can be written as their look-alike correspondent.
--#: dnsmasq.c:684
-+#: dnsmasq.c:713
- #, fuzzy, c-format
- msgid "warning: failed to change owner of %s: %s"
- msgstr "încărcarea numelor din %s: %s a eşuat"
--#: dnsmasq.c:688
-+#: dnsmasq.c:717
- msgid "setting --bind-interfaces option because of OS limitations"
- msgstr "specific opţiunea --bind-interfaces din cauza limitărilor SO"
--#: dnsmasq.c:698
-+#: dnsmasq.c:727
- #, c-format
- msgid "warning: interface %s does not currently exist"
- msgstr "atenţie: interfaţa %s nu există momentan"
--#: dnsmasq.c:703
-+#: dnsmasq.c:732
- msgid "warning: ignoring resolv-file flag because no-resolv is set"
- msgstr ""
--#: dnsmasq.c:706
-+#: dnsmasq.c:735
- #, fuzzy
- msgid "warning: no upstream servers configured"
- msgstr "configurăm serverele superioare prin Dbus"
--#: dnsmasq.c:710
-+#: dnsmasq.c:739
- #, c-format
- msgid "asynchronous logging enabled, queue limit is %d messages"
- msgstr ""
--#: dnsmasq.c:731
-+#: dnsmasq.c:760
- msgid "IPv6 router advertisement enabled"
- msgstr ""
--#: dnsmasq.c:736
-+#: dnsmasq.c:765
- #, c-format
- msgid "DHCP, sockets bound exclusively to interface %s"
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- msgid "root is "
- msgstr ""
--#: dnsmasq.c:753
-+#: dnsmasq.c:782
- #, fuzzy
- msgid "enabled"
- msgstr "dezactivat"
--#: dnsmasq.c:755
-+#: dnsmasq.c:784
- msgid "secure mode"
- msgstr ""
--#: dnsmasq.c:781
-+#: dnsmasq.c:810
- #, c-format
- msgid "restricting maximum simultaneous TFTP transfers to %d"
- msgstr ""
--#: dnsmasq.c:956
-+#: dnsmasq.c:1006
- msgid "connected to system DBus"
- msgstr "magistrala sistem Dbus conectată"
--#: dnsmasq.c:1106
-+#: dnsmasq.c:1156
- #, c-format
- msgid "cannot fork into background: %s"
- msgstr ""
--#: dnsmasq.c:1109
-+#: dnsmasq.c:1159
- #, fuzzy, c-format
- msgid "failed to create helper: %s"
- msgstr "nu pot citi %s: %s"
--#: dnsmasq.c:1112
-+#: dnsmasq.c:1162
- #, c-format
- msgid "setting capabilities failed: %s"
- msgstr ""
- # for compatibility purposes the letters â, ă, ş, ţ and î can be written as their look-alike correspondent.
--#: dnsmasq.c:1115
-+#: dnsmasq.c:1165
- #, fuzzy, c-format
- msgid "failed to change user-id to %s: %s"
- msgstr "încărcarea numelor din %s: %s a eşuat"
- # for compatibility purposes the letters â, ă, ş, ţ and î can be written as their look-alike correspondent.
--#: dnsmasq.c:1118
-+#: dnsmasq.c:1168
- #, fuzzy, c-format
- msgid "failed to change group-id to %s: %s"
- msgstr "încărcarea numelor din %s: %s a eşuat"
--#: dnsmasq.c:1121
-+#: dnsmasq.c:1171
- #, fuzzy, c-format
- msgid "failed to open pidfile %s: %s"
- msgstr "nu pot citi %s: %s"
--#: dnsmasq.c:1124
-+#: dnsmasq.c:1174
- #, fuzzy, c-format
- msgid "cannot open log %s: %s"
- msgstr "nu pot deschide %s:%s"
--#: dnsmasq.c:1127
-+#: dnsmasq.c:1177
- #, fuzzy, c-format
- msgid "failed to load Lua script: %s"
- msgstr "nu pot încărca %s: %s"
--#: dnsmasq.c:1130
-+#: dnsmasq.c:1180
- #, c-format
- msgid "TFTP directory %s inaccessible: %s"
- msgstr ""
--#: dnsmasq.c:1151
-+#: dnsmasq.c:1183
-+#, fuzzy, c-format
-+msgid "cannot create timestamp file %s: %s"
-+msgstr "nu pot creea sau deschide fişierul cu împrumuturi: %s"
-+
-+#: dnsmasq.c:1204
- msgid "now checking DNSSEC signature timestamps"
- msgstr ""
--#: dnsmasq.c:1218
-+#: dnsmasq.c:1271
- #, c-format
- msgid "script process killed by signal %d"
- msgstr ""
--#: dnsmasq.c:1222
-+#: dnsmasq.c:1275
- #, c-format
- msgid "script process exited with status %d"
- msgstr ""
--#: dnsmasq.c:1226
-+#: dnsmasq.c:1279
- #, fuzzy, c-format
- msgid "failed to execute %s: %s"
- msgstr "accesarea serverului %s a eşuat: %s"
--#: dnsmasq.c:1281
-+#: dnsmasq.c:1334
- msgid "exiting on receipt of SIGTERM"
- msgstr "am primit SIGTERM, am terminat"
--#: dnsmasq.c:1309
-+#: dnsmasq.c:1362
- #, fuzzy, c-format
- msgid "failed to access %s: %s"
- msgstr "accesarea serverului %s a eşuat: %s"
--#: dnsmasq.c:1339
-+#: dnsmasq.c:1392
- #, c-format
- msgid "reading %s"
- msgstr "citesc %s"
--#: dnsmasq.c:1350
-+#: dnsmasq.c:1403
- #, fuzzy, c-format
- msgid "no servers found in %s, will retry"
- msgstr "nu s-a găsit nici un criteriu de căutare în %s"
-@@ -1532,27 +1578,27 @@ msgstr "interfaţă necunoscută %s"
- msgid "DHCP packet received on %s which has no address"
- msgstr ""
--#: dhcp.c:408
-+#: dhcp.c:412
- #, c-format
- msgid "ARP-cache injection failed: %s"
- msgstr ""
--#: dhcp.c:506
-+#: dhcp.c:511
- #, c-format
- msgid "DHCP range %s -- %s is not consistent with netmask %s"
- msgstr "domeniu DHCP %s -- %s nu este consistent cu masca de reţea %s"
--#: dhcp.c:807
-+#: dhcp.c:812
- #, c-format
- msgid "bad line at %s line %d"
- msgstr "linie invalidă în %s rândul %d"
--#: dhcp.c:850
-+#: dhcp.c:855
- #, c-format
- msgid "ignoring %s line %d, duplicate name or IP address"
- msgstr ""
--#: dhcp.c:994 rfc3315.c:2089
-+#: dhcp.c:999 rfc3315.c:2139
- #, c-format
- msgid "DHCP relay %s -> %s"
- msgstr ""
-@@ -1623,12 +1669,12 @@ msgstr "eroare DBus: %s"
- msgid "disabled"
- msgstr "dezactivat"
--#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823
--#: rfc3315.c:1095
-+#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860
-+#: rfc3315.c:1139
- msgid "ignored"
- msgstr "ignorat"
--#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873
-+#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910
- msgid "address in use"
- msgstr "adresa este folosită"
-@@ -1648,7 +1694,7 @@ msgstr "adresă lipsă"
- msgid "no leases left"
- msgstr "nu mai am de unde să împrumut"
--#: rfc2131.c:691 rfc3315.c:475
-+#: rfc2131.c:691 rfc3315.c:476
- #, c-format
- msgid "%u client provides name: %s"
- msgstr ""
-@@ -1657,7 +1703,7 @@ msgstr ""
- msgid "PXE BIS not supported"
- msgstr ""
--#: rfc2131.c:935 rfc3315.c:1189
-+#: rfc2131.c:935 rfc3315.c:1233
- #, fuzzy, c-format
- msgid "disabling DHCP static address %s for %s"
- msgstr "dezactivăm adresele DHCP statice %s"
-@@ -1693,7 +1739,7 @@ msgstr ""
- msgid "wrong address"
- msgstr "adresă greşită"
--#: rfc2131.c:1143 rfc3315.c:969
-+#: rfc2131.c:1143 rfc3315.c:1006
- msgid "lease not found"
- msgstr "împrumutul nu a fost găsit"
-@@ -1743,7 +1789,7 @@ msgstr "nu pot trimite opţiunea DHCP %d: nu mai este loc în pachet"
- msgid "PXE menu too large"
- msgstr ""
--#: rfc2131.c:2173 rfc3315.c:1456
-+#: rfc2131.c:2173 rfc3315.c:1506
- #, fuzzy, c-format
- msgid "%u requested options: %s"
- msgstr "compilat cu opţiunile: %s"
-@@ -1758,7 +1804,7 @@ msgstr ""
- msgid "cannot create netlink socket: %s"
- msgstr "nu pot să activez socket-ul netlink: %s"
--#: netlink.c:347
-+#: netlink.c:348
- #, fuzzy, c-format
- msgid "netlink returns error: %s"
- msgstr "eroare DBus: %s"
-@@ -1876,66 +1922,66 @@ msgstr "nici un domeniu de adrese disponibil pentru cererea DHCP %s %s"
- msgid "%u available DHCPv6 subnet: %s/%d"
- msgstr "nici un domeniu de adrese disponibil pentru cererea DHCP %s %s"
--#: rfc3315.c:379
-+#: rfc3315.c:380
- #, fuzzy, c-format
- msgid "%u vendor class: %u"
- msgstr "eroare DBus: %s"
--#: rfc3315.c:427
-+#: rfc3315.c:428
- #, fuzzy, c-format
- msgid "%u client MAC address: %s"
- msgstr "nu exista interfaţă pentru adresa %s"
--#: rfc3315.c:659
-+#: rfc3315.c:660
- #, fuzzy, c-format
- msgid "unknown prefix-class %d"
- msgstr "împrumut necunoscut"
--#: rfc3315.c:791 rfc3315.c:913
-+#: rfc3315.c:803 rfc3315.c:902
-+#, fuzzy
-+msgid "address unavailable"
-+msgstr "adresă indisponibilă"
-+
-+#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283
- msgid "success"
- msgstr ""
--#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923
-+#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960
- #, fuzzy
- msgid "no addresses available"
- msgstr "nici o adresă disponibilă"
--#: rfc3315.c:865
--#, fuzzy
--msgid "address unavailable"
--msgstr "adresă indisponibilă"
--
--#: rfc3315.c:900
-+#: rfc3315.c:937
- msgid "not on link"
- msgstr ""
--#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228
-+#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272
- msgid "no binding found"
- msgstr ""
--#: rfc3315.c:1011
-+#: rfc3315.c:1048
- msgid "deprecated"
- msgstr ""
--#: rfc3315.c:1016
-+#: rfc3315.c:1053
- #, fuzzy
- msgid "address invalid"
- msgstr "adresa este folosită"
--#: rfc3315.c:1061
-+#: rfc3315.c:1100
- msgid "confirm failed"
- msgstr ""
--#: rfc3315.c:1072
-+#: rfc3315.c:1116
- #, fuzzy
- msgid "all addresses still on link"
- msgstr "adresă greşită în %s, linia %d"
--#: rfc3315.c:1160
-+#: rfc3315.c:1204
- msgid "release received"
- msgstr ""
--#: rfc3315.c:2080
-+#: rfc3315.c:2130
- msgid "Cannot multicast to DHCPv6 server without correct interface"
- msgstr ""
-@@ -2028,7 +2074,7 @@ msgstr ""
- msgid "cannot create ICMPv6 socket: %s"
- msgstr "nu pot creea socket DHCP: %s"
--#: auth.c:429
-+#: auth.c:436
- #, c-format
- msgid "ignoring zone transfer request from %s"
- msgstr ""
-@@ -2043,54 +2089,89 @@ msgstr "activarea socket-ului server-ului DHCP a eşuat: %s"
- msgid "failed to create IPset control socket: %s"
- msgstr "creearea socket-ului de ascultare a eşuat: %s"
-+#: dnssec.c:425 dnssec.c:469
-+#, fuzzy, c-format
-+msgid "failed to update mtime on %s: %s"
-+msgstr "nu pot citi %s: %s"
-+
- #: blockdata.c:58
- #, c-format
- msgid "DNSSEC memory in use %u, max %u, allocated %u"
- msgstr ""
--#: tables.c:76
-+#: tables.c:80
- msgid "error: fill_addr missused"
- msgstr ""
--#: tables.c:105
-+#: tables.c:109
- #, fuzzy, c-format
- msgid "failed to access pf devices: %s"
- msgstr "accesarea serverului %s a eşuat: %s"
--#: tables.c:119
-+#: tables.c:123
- #, fuzzy, c-format
- msgid "warning: no opened pf devices %s"
- msgstr "folosim adresele locale doar pentru %S %s"
--#: tables.c:127
-+#: tables.c:131
- #, fuzzy, c-format
- msgid "error: cannot use table name %s"
- msgstr "nu pot citi numele maşinii: %s"
--#: tables.c:135
-+#: tables.c:139
- #, c-format
- msgid "error: cannot strlcpy table name %s"
- msgstr ""
--#: tables.c:141
-+#: tables.c:145
- #, c-format
- msgid "warning: pfr_add_tables: %s(%d)"
- msgstr ""
--#: tables.c:147
-+#: tables.c:151
- msgid "info: table created"
- msgstr ""
--#: tables.c:158
-+#: tables.c:162
- #, c-format
- msgid "warning: DIOCR%sADDRS: %s"
- msgstr ""
--#: tables.c:162
-+#: tables.c:166
- #, fuzzy, c-format
- msgid "%d addresses %s"
- msgstr "citesc %s - %d adrese"
-+#: inotify.c:46
-+#, fuzzy, c-format
-+msgid "failed to create inotify: %s"
-+msgstr "nu pot citi %s: %s"
-+
-+#: inotify.c:60
-+#, fuzzy, c-format
-+msgid "cannot cannonicalise resolv-file %s: %s"
-+msgstr "nu pot creea sau deschide fişierul cu împrumuturi: %s"
-+
-+#: inotify.c:72
-+#, c-format
-+msgid "directory %s for resolv-file is missing, cannot poll"
-+msgstr ""
-+
-+#: inotify.c:75 inotify.c:112
-+#, fuzzy, c-format
-+msgid "failed to create inotify for %s: %s"
-+msgstr "creearea socket-ului de ascultare a eşuat: %s"
-+
-+#: inotify.c:97
-+#, fuzzy, c-format
-+msgid "bad dynamic directory %s: %s"
-+msgstr "nu pot citi %s: %s"
-+
-+#: inotify.c:197
-+#, c-format
-+msgid "inotify, new or changed file %s"
-+msgstr ""
-+
- #~ msgid "duplicate IP address %s in dhcp-config directive."
- #~ msgstr "adresă IP duplicat %s în declaraţia dhcp-config."
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch b/src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch
deleted file mode 100644 (file)
index cf1f2af..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-From 30d0879ed55cb67b1b735beab3d93f3bb3ef1dd2 Mon Sep 17 00:00:00 2001
-From: Stefan Tomanek <stefan.tomanek+dnsmasq@wertarbyte.de>
-Date: Tue, 31 Mar 2015 22:32:11 +0100
-Subject: [PATCH 68/78] add --tftp-no-fail to ignore missing tftp root
-
----
- CHANGELOG            |  3 +++
- dnsmasq.conf.example |  3 +++
- man/dnsmasq.8        |  3 +++
- src/dnsmasq.c        | 40 ++++++++++++++++++++++++++++++----------
- src/dnsmasq.h        |  4 +++-
- src/option.c         |  3 +++
- 6 files changed, 45 insertions(+), 11 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 4f4fa305deaa..34432ae4807f 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -72,6 +72,9 @@ version 2.73
-           on systems without an RTC, whilst allowing DNS queries before the
-           clock is valid so that NTP can run. Thanks to
-           Kevin Darbyshire-Bryant for developing this idea.
-+
-+          Add --tftp-no-fail option. Thanks to Stefan Tomanek for
-+          the patch.
-       
-       
- version 2.72
-diff --git a/dnsmasq.conf.example b/dnsmasq.conf.example
-index 1bd305dbdbad..67be99acb028 100644
---- a/dnsmasq.conf.example
-+++ b/dnsmasq.conf.example
-@@ -486,6 +486,9 @@
- # Set the root directory for files available via FTP.
- #tftp-root=/var/ftpd
-+# Do not abort if the tftp-root is unavailable
-+#tftp-no-fail
-+
- # Make the TFTP server more secure: with this set, only files owned by
- # the user dnsmasq is running as will be send over the net.
- #tftp-secure
-diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
-index 1f1dd7b69c53..6b4626cc0aad 100644
---- a/man/dnsmasq.8
-+++ b/man/dnsmasq.8
-@@ -1711,6 +1711,9 @@ Absolute paths (starting with /) are allowed, but they must be within
- the tftp-root. If the optional interface argument is given, the
- directory is only used for TFTP requests via that interface.
- .TP
-+.B --tftp-no-fail
-+Do not abort startup if specified tftp root directories are inaccessible.
-+.TP
- .B --tftp-unique-root
- Add the IP address of the TFTP client as a path component on the end
- of the TFTP-root (in standard dotted-quad format). Only valid if a
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index b784951950d4..0d4d4558a2e2 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -58,6 +58,9 @@ int main (int argc, char **argv)
-   struct dhcp_context *context;
-   struct dhcp_relay *relay;
- #endif
-+#ifdef HAVE_TFTP
-+  int tftp_prefix_missing = 0;
-+#endif
- #ifdef LOCALEDIR
-   setlocale(LC_ALL, "");
-@@ -636,7 +639,7 @@ int main (int argc, char **argv)
- #endif
- #ifdef HAVE_TFTP
--      if (option_bool(OPT_TFTP))
-+  if (option_bool(OPT_TFTP))
-     {
-       DIR *dir;
-       struct tftp_prefix *p;
-@@ -645,24 +648,33 @@ int main (int argc, char **argv)
-       {
-         if (!((dir = opendir(daemon->tftp_prefix))))
-           {
--            send_event(err_pipe[1], EVENT_TFTP_ERR, errno, daemon->tftp_prefix);
--            _exit(0);
-+            tftp_prefix_missing = 1;
-+            if (!option_bool(OPT_TFTP_NO_FAIL))
-+              {
-+                send_event(err_pipe[1], EVENT_TFTP_ERR, errno, daemon->tftp_prefix);
-+                _exit(0);
-+              }
-           }
-         closedir(dir);
-       }
--
-+      
-       for (p = daemon->if_prefix; p; p = p->next)
-       {
-+        p->missing = 0;
-         if (!((dir = opendir(p->prefix))))
--         {
--           send_event(err_pipe[1], EVENT_TFTP_ERR, errno, p->prefix);
--           _exit(0);
--         } 
-+          {
-+            p->missing = 1;
-+            if (!option_bool(OPT_TFTP_NO_FAIL))
-+              {
-+                send_event(err_pipe[1], EVENT_TFTP_ERR, errno, p->prefix);
-+                _exit(0);
-+              }
-+          } 
-         closedir(dir);
-       }
-     }
- #endif
--
-+  
-   if (daemon->port == 0)
-     my_syslog(LOG_INFO, _("started, version %s DNS disabled"), VERSION);
-   else if (daemon->cachesize != 0)
-@@ -772,7 +784,8 @@ int main (int argc, char **argv)
- #ifdef HAVE_TFTP
-   if (option_bool(OPT_TFTP))
--    {
-+    { 
-+      struct tftp_prefix *p;
- #ifdef FD_SETSIZE
-       if (FD_SETSIZE < (unsigned)max_fd)
-       max_fd = FD_SETSIZE;
-@@ -782,7 +795,14 @@ int main (int argc, char **argv)
-               daemon->tftp_prefix ? _("root is ") : _("enabled"),
-               daemon->tftp_prefix ? daemon->tftp_prefix: "",
-               option_bool(OPT_TFTP_SECURE) ? _("secure mode") : "");
-+       
-+      if (tftp_prefix_missing)
-+      my_syslog(MS_TFTP | LOG_WARNING, _("warning: %s inaccessible"), daemon->tftp_prefix);
-       
-+      for (p = daemon->if_prefix; p; p = p->next)
-+      if (p->missing)
-+         my_syslog(MS_TFTP | LOG_WARNING, _("warning: TFTP directory %s inaccessible"), p->prefix);
-+
-       /* This is a guess, it assumes that for small limits, 
-        disjoint files might be served, but for large limits, 
-        a single file will be sent to may clients (the file only needs
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index de95d0e875e3..42952fc76c7a 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -240,7 +240,8 @@ struct event_desc {
- #define OPT_LOCAL_SERVICE  49
- #define OPT_LOOP_DETECT    50
- #define OPT_EXTRALOG       51
--#define OPT_LAST           52
-+#define OPT_TFTP_NO_FAIL   52
-+#define OPT_LAST           53
- /* extra flags for my_syslog, we use a couple of facilities since they are known 
-    not to occupy the same bits as priorities, no matter how syslog.h is set up. */
-@@ -901,6 +902,7 @@ struct addr_list {
- struct tftp_prefix {
-   char *interface;
-   char *prefix;
-+  int missing;
-   struct tftp_prefix *next;
- };
-diff --git a/src/option.c b/src/option.c
-index 3009eb545fde..f91cfbb1aa54 100644
---- a/src/option.c
-+++ b/src/option.c
-@@ -153,6 +153,7 @@ struct myoption {
- #define LOPT_DHOPT_INOTIFY 341
- #define LOPT_HOST_INOTIFY  342
- #define LOPT_DNSSEC_STAMP  343
-+#define LOPT_TFTP_NO_FAIL  344
- #ifdef HAVE_GETOPT_LONG
- static const struct option opts[] =  
-@@ -235,6 +236,7 @@ static const struct myoption opts[] =
-     { "dhcp-ignore-names", 2, 0, LOPT_NO_NAMES },
-     { "enable-tftp", 2, 0, LOPT_TFTP },
-     { "tftp-secure", 0, 0, LOPT_SECURE },
-+    { "tftp-no-fail", 0, 0, LOPT_TFTP_NO_FAIL },
-     { "tftp-unique-root", 0, 0, LOPT_APREF },
-     { "tftp-root", 1, 0, LOPT_PREFIX },
-     { "tftp-max", 1, 0, LOPT_TFTP_MAX },
-@@ -419,6 +421,7 @@ static struct {
-   { LOPT_PREFIX, ARG_DUP, "<dir>[,<iface>]", gettext_noop("Export files by TFTP only from the specified subtree."), NULL },
-   { LOPT_APREF, OPT_TFTP_APREF, NULL, gettext_noop("Add client IP address to tftp-root."), NULL },
-   { LOPT_SECURE, OPT_TFTP_SECURE, NULL, gettext_noop("Allow access only to files owned by the user running dnsmasq."), NULL },
-+  { LOPT_TFTP_NO_FAIL, OPT_TFTP_NO_FAIL, NULL, gettext_noop("Do not terminate the service if TFTP directories are inaccessible."), NULL },
-   { LOPT_TFTP_MAX, ARG_ONE, "<integer>", gettext_noop("Maximum number of conncurrent TFTP transfers (defaults to %s)."), "#" },
-   { LOPT_NOBLOCK, OPT_TFTP_NOBLOCK, NULL, gettext_noop("Disable the TFTP blocksize extension."), NULL },
-   { LOPT_TFTP_LC, OPT_TFTP_LC, NULL, gettext_noop("Convert TFTP filenames to lowercase"), NULL },
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0069-Whitespace-fixes.patch b/src/patches/dnsmasq/0069-Whitespace-fixes.patch
deleted file mode 100644 (file)
index a18c6be..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-From 7aa970e2c7043201663d86a4b5d8cd5c592cef39 Mon Sep 17 00:00:00 2001
-From: Stefan Tomanek <stefan.tomanek+dnsmasq@wertarbyte.de>
-Date: Wed, 1 Apr 2015 17:55:07 +0100
-Subject: [PATCH 69/78] Whitespace fixes.
-
----
- src/dnsmasq.c | 14 +++++++-------
- src/tftp.c    |  2 +-
- 2 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index 0d4d4558a2e2..a7c5da8fbd01 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -345,7 +345,7 @@ int main (int argc, char **argv)
- #else
-   die(_("DBus not available: set HAVE_DBUS in src/config.h"), NULL, EC_BADCONF);
- #endif
--  
-+
-   if (daemon->port != 0)
-     pre_allocate_sfds();
-@@ -657,7 +657,7 @@ int main (int argc, char **argv)
-           }
-         closedir(dir);
-       }
--      
-+
-       for (p = daemon->if_prefix; p; p = p->next)
-       {
-         p->missing = 0;
-@@ -669,12 +669,12 @@ int main (int argc, char **argv)
-                 send_event(err_pipe[1], EVENT_TFTP_ERR, errno, p->prefix);
-                 _exit(0);
-               }
--          } 
-+          }
-         closedir(dir);
-       }
-     }
- #endif
--  
-+
-   if (daemon->port == 0)
-     my_syslog(LOG_INFO, _("started, version %s DNS disabled"), VERSION);
-   else if (daemon->cachesize != 0)
-@@ -784,7 +784,7 @@ int main (int argc, char **argv)
- #ifdef HAVE_TFTP
-   if (option_bool(OPT_TFTP))
--    { 
-+    {
-       struct tftp_prefix *p;
- #ifdef FD_SETSIZE
-       if (FD_SETSIZE < (unsigned)max_fd)
-@@ -795,10 +795,10 @@ int main (int argc, char **argv)
-               daemon->tftp_prefix ? _("root is ") : _("enabled"),
-               daemon->tftp_prefix ? daemon->tftp_prefix: "",
-               option_bool(OPT_TFTP_SECURE) ? _("secure mode") : "");
--       
-+
-       if (tftp_prefix_missing)
-       my_syslog(MS_TFTP | LOG_WARNING, _("warning: %s inaccessible"), daemon->tftp_prefix);
--      
-+
-       for (p = daemon->if_prefix; p; p = p->next)
-       if (p->missing)
-          my_syslog(MS_TFTP | LOG_WARNING, _("warning: TFTP directory %s inaccessible"), p->prefix);
-diff --git a/src/tftp.c b/src/tftp.c
-index a57a31514f44..d3fb6d7492e4 100644
---- a/src/tftp.c
-+++ b/src/tftp.c
-@@ -236,7 +236,7 @@ void tftp_request(struct listener *listen, time_t now)
-       if (ioctl(listen->tftpfd, SIOCGIFMTU, &ifr) != -1)
-       mtu = ifr.ifr_mtu;      
-     }
--  
-+
-   if (name)
-     {
-       /* check for per-interface prefix */ 
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/007-handle_signed_dangling_CNAME_replies_to_DS_queries.patch b/src/patches/dnsmasq/007-handle_signed_dangling_CNAME_replies_to_DS_queries.patch
new file mode 100644 (file)
index 0000000..832a22e
--- /dev/null
@@ -0,0 +1,30 @@
+From 6de81f1250fd323c9155de065d5a9dc200a6f20b Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Wed, 9 Sep 2015 22:51:13 +0100
+Subject: [PATCH] Handle signed dangling CNAME replies to DS queries.
+
+---
+ src/dnssec.c |    7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 4deda24..67ce486 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1232,11 +1232,8 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+    
+   /* If we return STAT_NO_SIG, name contains the name of the DS query */
+   if (val == STAT_NO_SIG)
+-    {
+-      *keyname = 0;
+-      return val;
+-    }  
+-
++    return val;
++  
+   /* If the key needed to validate the DS is on the same domain as the DS, we'll
+      loop getting nowhere. Stop that now. This can happen of the DS answer comes
+      from the DS's zone, and not the parent zone. */
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch b/src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch
deleted file mode 100644 (file)
index b021aab..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-From fe3992f9fa69fa975ea31919c53933b5f6a63527 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Fri, 3 Apr 2015 21:25:05 +0100
-Subject: [PATCH 70/78] Return INSECURE, rather than BOGUS when DS proved not
- to exist.
-
-Return INSECURE when validating DNS replies which have RRSIGs, but
-when a needed DS record in the trust chain is proved not to exist.
-It's allowed for a zone to set up DNSKEY and RRSIG records first, then
-add a DS later, completing the chain of trust.
-
-Also, since we don't have the infrastructure to track that these
-non-validated replies have RRSIGS, don't cache them, so we don't
-provide answers with missing RRSIGS from the cache.
----
- src/dnsmasq.h |  1 +
- src/dnssec.c  |  2 +-
- src/forward.c | 87 +++++++++++++++++++++++++++++++++++++++++++++--------------
- 3 files changed, 69 insertions(+), 21 deletions(-)
-
-diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 42952fc76c7a..6fe4a4189188 100644
---- a/src/dnsmasq.h
-+++ b/src/dnsmasq.h
-@@ -583,6 +583,7 @@ struct hostsfile {
- #define STAT_NO_NS             10
- #define STAT_NEED_DS_NEG       11
- #define STAT_CHASE_CNAME       12
-+#define STAT_INSECURE_DS       13
- #define FREC_NOREBIND           1
- #define FREC_CHECKING_DISABLED  2
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 14bae7e9bf75..05e0983cb251 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -981,7 +981,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
-   
-   /* If we've cached that DS provably doesn't exist, result must be INSECURE */
-   if (crecp->flags & F_NEG)
--    return STAT_INSECURE;
-+    return STAT_INSECURE_DS;
-   
-   /* NOTE, we need to find ONE DNSKEY which matches the DS */
-   for (valid = 0, j = ntohs(header->ancount); j != 0 && !valid; j--) 
-diff --git a/src/forward.c b/src/forward.c
-index 985814c3aec5..e8cf615aa939 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -521,7 +521,8 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
- }
- static size_t process_reply(struct dns_header *header, time_t now, struct server *server, size_t n, int check_rebind, 
--                          int no_cache, int cache_secure, int ad_reqd, int do_bit, int added_pheader, int check_subnet, union mysockaddr *query_source)
-+                          int no_cache, int cache_secure, int bogusanswer, int ad_reqd, int do_bit, int added_pheader, 
-+                          int check_subnet, union mysockaddr *query_source)
- {
-   unsigned char *pheader, *sizep;
-   char **sets = 0;
-@@ -634,7 +635,7 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server
-     }
-   
- #ifdef HAVE_DNSSEC
--  if (no_cache && !(header->hb4 & HB4_CD)) 
-+  if (bogusanswer && !(header->hb4 & HB4_CD)) 
-     {
-       if (!option_bool(OPT_DNSSEC_DEBUG))
-       {
-@@ -786,7 +787,7 @@ void reply_query(int fd, int family, time_t now)
-      everything is broken */
-   if (forward->forwardall == 0 || --forward->forwardall == 1 || RCODE(header) != SERVFAIL)
-     {
--      int check_rebind = 0, no_cache_dnssec = 0, cache_secure = 0;
-+      int check_rebind = 0, no_cache_dnssec = 0, cache_secure = 0, bogusanswer = 0;
-       if (option_bool(OPT_NO_REBIND))
-       check_rebind = !(forward->flags & FREC_NOREBIND);
-@@ -819,7 +820,13 @@ void reply_query(int fd, int family, time_t now)
-         else if (forward->flags & FREC_DS_QUERY)
-           {
-             status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
--            if (status == STAT_NO_DS || status == STAT_NO_NS)
-+            /* Provably no DS, everything below is insecure, even if signatures are offered */
-+            if (status == STAT_NO_DS)
-+              /* We only cache sigs when we've validated a reply.
-+                 Avoid caching a reply with sigs if there's a vaildated break in the 
-+                 DS chain, so we don't return replies from cache missing sigs. */
-+              status = STAT_INSECURE_DS;
-+            else if (status == STAT_NO_NS)
-               status = STAT_BOGUS;
-           }
-         else if (forward->flags & FREC_CHECK_NOSIGN)
-@@ -959,8 +966,14 @@ void reply_query(int fd, int family, time_t now)
-                 else if (forward->flags & FREC_DS_QUERY)
-                   {
-                     status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
--                    if (status == STAT_NO_DS || status == STAT_NO_NS)
--                      status = STAT_BOGUS;
-+                     /* Provably no DS, everything below is insecure, even if signatures are offered */
-+                    if (status == STAT_NO_DS)
-+                      /* We only cache sigs when we've validated a reply.
-+                         Avoid caching a reply with sigs if there's a vaildated break in the 
-+                         DS chain, so we don't return replies from cache missing sigs. */
-+                      status = STAT_INSECURE_DS;
-+                    else if (status == STAT_NO_NS)
-+                      status = STAT_BOGUS; 
-                   }
-                 else if (forward->flags & FREC_CHECK_NOSIGN)
-                   {
-@@ -985,6 +998,17 @@ void reply_query(int fd, int family, time_t now)
-               }
-           }
-         
-+        no_cache_dnssec = 0;
-+
-+        if (status == STAT_INSECURE_DS)
-+          {
-+            /* We only cache sigs when we've validated a reply.
-+               Avoid caching a reply with sigs if there's a vaildated break in the 
-+               DS chain, so we don't return replies from cache missing sigs. */
-+            status = STAT_INSECURE;
-+            no_cache_dnssec = 1;
-+          }
-+        
-         if (status == STAT_TRUNCATED)
-           header->hb3 |= HB3_TC;
-         else
-@@ -1002,12 +1026,13 @@ void reply_query(int fd, int family, time_t now)
-             log_query(F_KEYTAG | F_SECSTAT, "result", NULL, result);
-           }
-         
--        no_cache_dnssec = 0;
--        
-         if (status == STAT_SECURE)
-           cache_secure = 1;
-         else if (status == STAT_BOGUS)
--          no_cache_dnssec = 1;
-+          {
-+            no_cache_dnssec = 1;
-+            bogusanswer = 1;
-+          }
-       }
- #endif     
-       
-@@ -1017,7 +1042,7 @@ void reply_query(int fd, int family, time_t now)
-       else
-       header->hb4 &= ~HB4_CD;
-       
--      if ((nn = process_reply(header, now, server, (size_t)n, check_rebind, no_cache_dnssec, cache_secure,
-+      if ((nn = process_reply(header, now, server, (size_t)n, check_rebind, no_cache_dnssec, cache_secure, bogusanswer, 
-                             forward->flags & FREC_AD_QUESTION, forward->flags & FREC_DO_QUESTION, 
-                             forward->flags & FREC_ADDED_PHEADER, forward->flags & FREC_HAS_SUBNET, &forward->source)))
-       {
-@@ -1420,7 +1445,7 @@ static int do_check_sign(struct frec *forward, int status, time_t now, char *nam
-     }
- }
--/* Move toward the root, until we find a signed non-existance of a DS, in which case
-+/* Move down from the root, until we find a signed non-existance of a DS, in which case
-    an unsigned answer is OK, or we find a signed DS, in which case there should be 
-    a signature, and the answer is BOGUS */
- static int  tcp_check_for_unsigned_zone(time_t now, struct dns_header *header, size_t plen, int class, char *name, 
-@@ -1570,8 +1595,13 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si
-   else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG)
-     {
-       new_status = dnssec_validate_ds(now, header, n, name, keyname, class);
--      if (status == STAT_NEED_DS && (new_status == STAT_NO_DS || new_status == STAT_NO_NS))
--      new_status = STAT_BOGUS;
-+      if (status == STAT_NEED_DS)
-+      {
-+        if (new_status == STAT_NO_DS)
-+          new_status = STAT_INSECURE_DS;
-+        else if (new_status == STAT_NO_NS)
-+          new_status = STAT_BOGUS;
-+      }
-     }
-   else if (status == STAT_CHASE_CNAME)
-     new_status = dnssec_chase_cname(now, header, n, name, keyname);
-@@ -1630,8 +1660,13 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si
-             else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG)
-               {
-                 new_status = dnssec_validate_ds(now, header, n, name, keyname, class);
--                if (status == STAT_NEED_DS  && (new_status == STAT_NO_DS || new_status == STAT_NO_NS))
--                  new_status = STAT_BOGUS; /* Validated no DS */
-+                if (status == STAT_NEED_DS)
-+                  {
-+                    if (new_status == STAT_NO_DS)
-+                      new_status = STAT_INSECURE_DS;
-+                    else if (new_status == STAT_NO_NS)
-+                      new_status = STAT_BOGUS; /* Validated no DS */
-+                  }
-               }
-             else if (status == STAT_CHASE_CNAME)
-               new_status = dnssec_chase_cname(now, header, n, name, keyname);
-@@ -1652,7 +1687,7 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si
-               goto another_tcp_key;
-           }
-       }
--
-+      
-       free(packet);
-     }
-   return new_status;
-@@ -1673,7 +1708,7 @@ unsigned char *tcp_request(int confd, time_t now,
-   int local_auth = 0;
- #endif
-   int checking_disabled, ad_question, do_bit, added_pheader = 0;
--  int check_subnet, no_cache_dnssec = 0, cache_secure = 0;
-+  int check_subnet, no_cache_dnssec = 0, cache_secure = 0, bogusanswer = 0;
-   size_t m;
-   unsigned short qtype;
-   unsigned int gotname;
-@@ -1941,6 +1976,15 @@ unsigned char *tcp_request(int confd, time_t now,
-                         int status = tcp_key_recurse(now, STAT_TRUNCATED, header, m, 0, daemon->namebuff, daemon->keyname, last_server, &keycount);
-                         char *result;
-+                        if (status == STAT_INSECURE_DS)
-+                          {
-+                            /* We only cache sigs when we've validated a reply.
-+                               Avoid caching a reply with sigs if there's a vaildated break in the 
-+                               DS chain, so we don't return replies from cache missing sigs. */
-+                            status = STAT_INSECURE;
-+                            no_cache_dnssec = 1;
-+                          }
-+                        
-                         if (keycount == 0)
-                           {
-                             result = "ABANDONED";
-@@ -1952,8 +1996,11 @@ unsigned char *tcp_request(int confd, time_t now,
-                         log_query(F_KEYTAG | F_SECSTAT, "result", NULL, result);
-                         
-                         if (status == STAT_BOGUS)
--                          no_cache_dnssec = 1;
--                        
-+                          {
-+                            no_cache_dnssec = 1;
-+                            bogusanswer = 1;
-+                          }
-+
-                         if (status == STAT_SECURE)
-                           cache_secure = 1;
-                       }
-@@ -1987,7 +2034,7 @@ unsigned char *tcp_request(int confd, time_t now,
- #endif
-                     m = process_reply(header, now, last_server, (unsigned int)m, 
--                                      option_bool(OPT_NO_REBIND) && !norebind, no_cache_dnssec,
-+                                      option_bool(OPT_NO_REBIND) && !norebind, no_cache_dnssec, bogusanswer,
-                                       cache_secure, ad_question, do_bit, added_pheader, check_subnet, &peer_addr); 
-                     
-                     break;
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch b/src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch
deleted file mode 100644 (file)
index b8e5cf8..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 982faf402487e265ed11ac03524531d42b03c966 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Fri, 3 Apr 2015 21:42:30 +0100
-Subject: [PATCH 71/78] Fix compiler warning when not including DNSSEC.
-
----
- src/forward.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/forward.c b/src/forward.c
-index e8cf615aa939..3f6b9a23b6ab 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -530,7 +530,8 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server
-   size_t plen; 
-   (void)ad_reqd;
--  (void) do_bit;
-+  (void)do_bit;
-+  (void)bogusanswer;
- #ifdef HAVE_IPSET
-   if (daemon->ipsets && extract_request(header, n, daemon->namebuff, NULL))
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0072-Fix-crash-caused-by-looking-up-servers.bind-when-man.patch b/src/patches/dnsmasq/0072-Fix-crash-caused-by-looking-up-servers.bind-when-man.patch
deleted file mode 100644 (file)
index e03606c..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-From 04b0ac05377936d121a36873bb63d492cde292c9 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 6 Apr 2015 17:19:13 +0100
-Subject: [PATCH 72/78] Fix crash caused by looking up servers.bind when many
- servers defined.
-
----
- CHANGELOG   | 7 ++++++-
- src/cache.c | 4 ++--
- 2 files changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 34432ae4807f..6aa3d851a297 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -75,7 +75,12 @@ version 2.73
-           Add --tftp-no-fail option. Thanks to Stefan Tomanek for
-           the patch.
--      
-+
-+          Fix crash caused by looking up servers.bind, CHAOS text record,
-+          when more than about five --servers= lines are in the dnsmasq
-+          config. This causes memory corruption which causes a crash later.
-+          Thanks to Matt Coddington for sterling work chasing this down.
-+
-       
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/src/cache.c b/src/cache.c
-index d7bea574c0d8..178d654ca92e 100644
---- a/src/cache.c
-+++ b/src/cache.c
-@@ -1367,7 +1367,7 @@ int cache_make_stat(struct txt_record *t)
-               }
-           port = prettyprint_addr(&serv->addr, daemon->addrbuff);
-           lenp = p++; /* length */
--          bytes_avail = (p - buff) + bufflen;
-+          bytes_avail = bufflen - (p - buff );
-           bytes_needed = snprintf(p, bytes_avail, "%s#%d %u %u", daemon->addrbuff, port, queries, failed_queries);
-           if (bytes_needed >= bytes_avail)
-             {
-@@ -1381,7 +1381,7 @@ int cache_make_stat(struct txt_record *t)
-               lenp = p - 1;
-               buff = new;
-               bufflen = newlen;
--              bytes_avail = (p - buff) + bufflen;
-+              bytes_avail =  bufflen - (p - buff );
-               bytes_needed = snprintf(p, bytes_avail, "%s#%d %u %u", daemon->addrbuff, port, queries, failed_queries);
-             }
-           *lenp = bytes_needed;
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0073-Fix-crash-on-receipt-of-certain-malformed-DNS-reques.patch b/src/patches/dnsmasq/0073-Fix-crash-on-receipt-of-certain-malformed-DNS-reques.patch
deleted file mode 100644 (file)
index c333e66..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-From ad4a8ff7d9097008d7623df8543df435bfddeac8 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 9 Apr 2015 21:48:00 +0100
-Subject: [PATCH 73/78] Fix crash on receipt of certain malformed DNS requests.
-
----
- CHANGELOG     | 3 +++
- src/rfc1035.c | 9 ++++++---
- 2 files changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 6aa3d851a297..9af617056f1f 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -125,6 +125,9 @@ version 2.72
-             Fix problem with --local-service option on big-endian platforms
-           Thanks to Richard Genoud for the patch.
-+          Fix crash on receipt of certain malformed DNS requests. Thanks
-+          to Nick Sampanis for spotting the problem.
-+      
- version 2.71
-             Subtle change to error handling to help DNSSEC validation 
-diff --git a/src/rfc1035.c b/src/rfc1035.c
-index 7a07b0cee906..a995ab50d74a 100644
---- a/src/rfc1035.c
-+++ b/src/rfc1035.c
-@@ -1198,7 +1198,10 @@ unsigned int extract_request(struct dns_header *header, size_t qlen, char *name,
- size_t setup_reply(struct dns_header *header, size_t qlen,
-               struct all_addr *addrp, unsigned int flags, unsigned long ttl)
- {
--  unsigned char *p = skip_questions(header, qlen);
-+  unsigned char *p;
-+
-+  if (!(p = skip_questions(header, qlen)))
-+    return 0;
-   
-   /* clear authoritative and truncated flags, set QR flag */
-   header->hb3 = (header->hb3 & ~(HB3_AA | HB3_TC)) | HB3_QR;
-@@ -1214,7 +1217,7 @@ size_t setup_reply(struct dns_header *header, size_t qlen,
-     SET_RCODE(header, NOERROR); /* empty domain */
-   else if (flags == F_NXDOMAIN)
-     SET_RCODE(header, NXDOMAIN);
--  else if (p && flags == F_IPV4)
-+  else if (flags == F_IPV4)
-     { /* we know the address */
-       SET_RCODE(header, NOERROR);
-       header->ancount = htons(1);
-@@ -1222,7 +1225,7 @@ size_t setup_reply(struct dns_header *header, size_t qlen,
-       add_resource_record(header, NULL, NULL, sizeof(struct dns_header), &p, ttl, NULL, T_A, C_IN, "4", addrp);
-     }
- #ifdef HAVE_IPV6
--  else if (p && flags == F_IPV6)
-+  else if (flags == F_IPV6)
-     {
-       SET_RCODE(header, NOERROR);
-       header->ancount = htons(1);
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0074-Fix-crash-in-auth-code-with-odd-configuration.patch b/src/patches/dnsmasq/0074-Fix-crash-in-auth-code-with-odd-configuration.patch
deleted file mode 100644 (file)
index 4a9cee0..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-From 38440b204db65f9be16c4c3daa7e991e4356f6ed Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Sun, 12 Apr 2015 21:52:47 +0100
-Subject: [PATCH 74/78] Fix crash in auth code with odd configuration.
-
----
- CHANGELOG  | 32 +++++++++++++++++++++-----------
- src/auth.c | 13 ++++++++-----
- 2 files changed, 29 insertions(+), 16 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 9af617056f1f..f2142c71cbdc 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -68,18 +68,31 @@ version 2.73
-           Fix broken DNSSEC validation of ECDSA signatures.
-           Add --dnssec-timestamp option, which provides an automatic
--          way to detect when the system time becomes valid after boot
--          on systems without an RTC, whilst allowing DNS queries before the
--          clock is valid so that NTP can run. Thanks to
--          Kevin Darbyshire-Bryant for developing this idea.
-+          way to detect when the system time becomes valid after 
-+          boot on systems without an RTC, whilst allowing DNS 
-+          queries before the clock is valid so that NTP can run. 
-+          Thanks to Kevin Darbyshire-Bryant for developing this idea.
-           Add --tftp-no-fail option. Thanks to Stefan Tomanek for
-           the patch.
--          Fix crash caused by looking up servers.bind, CHAOS text record,
--          when more than about five --servers= lines are in the dnsmasq
--          config. This causes memory corruption which causes a crash later.
--          Thanks to Matt Coddington for sterling work chasing this down.
-+          Fix crash caused by looking up servers.bind, CHAOS text 
-+          record, when more than about five --servers= lines are 
-+          in the dnsmasq config. This causes memory corruption 
-+          which causes a crash later. Thanks to Matt Coddington for 
-+          sterling work chasing this down.
-+
-+          Fix crash on receipt of certain malformed DNS requests.
-+          Thanks to Nick Sampanis for spotting the problem.
-+
-+            Fix crash in authoritative DNS code, if a .arpa zone 
-+          is declared as authoritative, and then a PTR query which
-+          is not to be treated as authoritative arrived. Normally, 
-+          directly declaring .arpa zone as authoritative is not 
-+          done, so this crash wouldn't be seen. Instead the 
-+          relevant .arpa zone should be specified as a subnet
-+          in the auth-zone declaration. Thanks to Johnny S. Lee
-+          for the bugreport and initial patch.
-       
- version 2.72
-@@ -125,10 +138,7 @@ version 2.72
-             Fix problem with --local-service option on big-endian platforms
-           Thanks to Richard Genoud for the patch.
--          Fix crash on receipt of certain malformed DNS requests. Thanks
--          to Nick Sampanis for spotting the problem.
-       
--
- version 2.71
-             Subtle change to error handling to help DNSSEC validation 
-           when servers fail to provide NODATA answers for 
-diff --git a/src/auth.c b/src/auth.c
-index 15721e52793f..4a5c39fc5c07 100644
---- a/src/auth.c
-+++ b/src/auth.c
-@@ -141,7 +141,7 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-             for (zone = daemon->auth_zones; zone; zone = zone->next)
-               if ((subnet = find_subnet(zone, flag, &addr)))
-                 break;
--            
-+                      
-             if (!zone)
-               {
-                 auth = 0;
-@@ -186,7 +186,7 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-         
-         if (intr)
-           {
--            if (in_zone(zone, intr->name, NULL))
-+            if (local_query || in_zone(zone, intr->name, NULL))
-               {       
-                 found = 1;
-                 log_query(flag | F_REVERSE | F_CONFIG, intr->name, &addr, NULL);
-@@ -208,8 +208,11 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-                   *p = 0; /* must be bare name */
-                 
-                 /* add  external domain */
--                strcat(name, ".");
--                strcat(name, zone->domain);
-+                if (zone)
-+                  {
-+                    strcat(name, ".");
-+                    strcat(name, zone->domain);
-+                  }
-                 log_query(flag | F_DHCP | F_REVERSE, name, &addr, record_source(crecp->uid));
-                 found = 1;
-                 if (add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
-@@ -217,7 +220,7 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-                                         T_PTR, C_IN, "d", name))
-                   anscount++;
-               }
--            else if (crecp->flags & (F_DHCP | F_HOSTS) && in_zone(zone, name, NULL))
-+            else if (crecp->flags & (F_DHCP | F_HOSTS) && (local_query || in_zone(zone, name, NULL)))
-               {
-                 log_query(crecp->flags & ~F_FORWARD, name, &addr, record_source(crecp->uid));
-                 found = 1;
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0075-Auth-correct-replies-to-NS-and-SOA-in-.arpa-zones.patch b/src/patches/dnsmasq/0075-Auth-correct-replies-to-NS-and-SOA-in-.arpa-zones.patch
deleted file mode 100644 (file)
index 705229f..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-From 78c6184752dce27849e36cce4360abc27b8d76d2 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 16 Apr 2015 15:05:30 +0100
-Subject: [PATCH 75/78] Auth: correct replies to NS and SOA in .arpa zones.
-
----
- CHANGELOG  |  8 ++++++++
- src/auth.c | 51 ++++++++++++++++++++++++++++++---------------------
- 2 files changed, 38 insertions(+), 21 deletions(-)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index f2142c71cbdc..0619788e9cef 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -94,6 +94,14 @@ version 2.73
-           in the auth-zone declaration. Thanks to Johnny S. Lee
-           for the bugreport and initial patch.
-+          Fix authoritative DNS code to correctly reply to NS 
-+          and SOA queries for .arpa zones for which we are 
-+          declared authoritative by means of a subnet in auth-zone.
-+          Previously we provided correct answers to PTR queries
-+          in such zones (including NS and SOA) but not direct
-+          NS and SOA queries. Thanks to Johnny S. Lee for 
-+          pointing out the problem.
-+
-       
- version 2.72
-             Add ra-advrouter mode, for RFC-3775 mobile IPv6 support.
-diff --git a/src/auth.c b/src/auth.c
-index 4a5c39fc5c07..2b0b7d6b052d 100644
---- a/src/auth.c
-+++ b/src/auth.c
-@@ -131,24 +131,27 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-         continue;
-       }
--      if (qtype == T_PTR)
-+      if ((qtype == T_PTR || qtype == T_SOA || qtype == T_NS) &&
-+        (flag = in_arpa_name_2_addr(name, &addr)) &&
-+        !local_query)
-       {
--        if (!(flag = in_arpa_name_2_addr(name, &addr)))
--          continue;
--
--        if (!local_query)
-+        for (zone = daemon->auth_zones; zone; zone = zone->next)
-+          if ((subnet = find_subnet(zone, flag, &addr)))
-+            break;
-+        
-+        if (!zone)
-           {
--            for (zone = daemon->auth_zones; zone; zone = zone->next)
--              if ((subnet = find_subnet(zone, flag, &addr)))
--                break;
--                      
--            if (!zone)
--              {
--                auth = 0;
--                continue;
--              }
-+            auth = 0;
-+            continue;
-           }
-+        else if (qtype == T_SOA)
-+          soa = 1, found = 1;
-+        else if (qtype == T_NS)
-+          ns = 1, found = 1;
-+      }
-+      if (qtype == T_PTR && flag)
-+      {
-         intr = NULL;
-         if (flag == F_IPV4)
-@@ -243,14 +246,20 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
-       }
-       
-     cname_restart:
--      for (zone = daemon->auth_zones; zone; zone = zone->next)
--      if (in_zone(zone, name, &cut))
--        break;
--      
--      if (!zone)
-+      if (found)
-+      /* NS and SOA .arpa requests have set found above. */
-+      cut = NULL;
-+      else
-       {
--        auth = 0;
--        continue;
-+        for (zone = daemon->auth_zones; zone; zone = zone->next)
-+          if (in_zone(zone, name, &cut))
-+            break;
-+        
-+        if (!zone)
-+          {
-+            auth = 0;
-+            continue;
-+          }
-       }
-       for (rec = daemon->mxnames; rec; rec = rec->next)
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0076-Fix-srk-induced-crash-in-new-tftp_no_fail-code.patch b/src/patches/dnsmasq/0076-Fix-srk-induced-crash-in-new-tftp_no_fail-code.patch
deleted file mode 100644 (file)
index e42dfb0..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From b4c0f092d8ce63ea4763c0ac17aa8d24318ad301 Mon Sep 17 00:00:00 2001
-From: Stefan Tomanek <stefan.tomanek+dnsmasq@wertarbyte.de>
-Date: Thu, 16 Apr 2015 15:20:59 +0100
-Subject: [PATCH 76/78] Fix (srk induced) crash in new tftp_no_fail code.
-
----
- src/dnsmasq.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index a7c5da8fbd01..20b15c05103a 100644
---- a/src/dnsmasq.c
-+++ b/src/dnsmasq.c
-@@ -655,7 +655,8 @@ int main (int argc, char **argv)
-                 _exit(0);
-               }
-           }
--        closedir(dir);
-+        else
-+          closedir(dir);
-       }
-       for (p = daemon->if_prefix; p; p = p->next)
-@@ -670,7 +671,8 @@ int main (int argc, char **argv)
-                 _exit(0);
-               }
-           }
--        closedir(dir);
-+        else
-+          closedir(dir);
-       }
-     }
- #endif
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0077-Note-CVE-2015-3294.patch b/src/patches/dnsmasq/0077-Note-CVE-2015-3294.patch
deleted file mode 100644 (file)
index 15f3a4d..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 0df29f5e23fd2f16181847db1fcf3a8b392d869a Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 16 Apr 2015 15:24:52 +0100
-Subject: [PATCH 77/78] Note CVE-2015-3294
-
----
- CHANGELOG | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/CHANGELOG b/CHANGELOG
-index 0619788e9cef..7f2b1e002e9e 100644
---- a/CHANGELOG
-+++ b/CHANGELOG
-@@ -84,6 +84,9 @@ version 2.73
-           Fix crash on receipt of certain malformed DNS requests.
-           Thanks to Nick Sampanis for spotting the problem.
-+          Note that this is could allow the dnsmasq process's
-+          memory to be read by an attacker under certain
-+          circumstances, so it has a CVE, CVE-2015-3294 
-             Fix crash in authoritative DNS code, if a .arpa zone 
-           is declared as authoritative, and then a PTR query which
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/0078-Log-domain-when-reporting-DNSSEC-validation-failure.patch b/src/patches/dnsmasq/0078-Log-domain-when-reporting-DNSSEC-validation-failure.patch
deleted file mode 100644 (file)
index 2f7fa0a..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-From 554b580e970275d5a869cb4fbfb2716f92b2f664 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Fri, 17 Apr 2015 22:50:20 +0100
-Subject: [PATCH 78/78] Log domain when reporting DNSSEC validation failure.
-
----
- src/forward.c | 15 ++++++++++-----
- 1 file changed, 10 insertions(+), 5 deletions(-)
-
-diff --git a/src/forward.c b/src/forward.c
-index 3f6b9a23b6ab..1c7da3f5655c 100644
---- a/src/forward.c
-+++ b/src/forward.c
-@@ -1014,7 +1014,7 @@ void reply_query(int fd, int family, time_t now)
-           header->hb3 |= HB3_TC;
-         else
-           {
--            char *result;
-+            char *result, *domain = "result";
-             
-             if (forward->work_counter == 0)
-               {
-@@ -1024,7 +1024,10 @@ void reply_query(int fd, int family, time_t now)
-             else
-               result = (status == STAT_SECURE ? "SECURE" : (status == STAT_INSECURE ? "INSECURE" : "BOGUS"));
-             
--            log_query(F_KEYTAG | F_SECSTAT, "result", NULL, result);
-+            if (status == STAT_BOGUS && extract_request(header, n, daemon->namebuff, NULL))
-+              domain = daemon->namebuff;
-+
-+            log_query(F_KEYTAG | F_SECSTAT, domain, NULL, result);
-           }
-         
-         if (status == STAT_SECURE)
-@@ -1975,7 +1978,7 @@ unsigned char *tcp_request(int confd, time_t now,
-                       {
-                         int keycount = DNSSEC_WORK; /* Limit to number of DNSSEC questions, to catch loops and avoid filling cache. */
-                         int status = tcp_key_recurse(now, STAT_TRUNCATED, header, m, 0, daemon->namebuff, daemon->keyname, last_server, &keycount);
--                        char *result;
-+                        char *result, *domain = "result";
-                         if (status == STAT_INSECURE_DS)
-                           {
-@@ -1993,8 +1996,10 @@ unsigned char *tcp_request(int confd, time_t now,
-                           }
-                         else
-                           result = (status == STAT_SECURE ? "SECURE" : (status == STAT_INSECURE ? "INSECURE" : "BOGUS"));
--                        
--                        log_query(F_KEYTAG | F_SECSTAT, "result", NULL, result);
-+                         if (status == STAT_BOGUS && extract_request(header, m, daemon->namebuff, NULL))
-+                           domain = daemon->namebuff;
-+
-+                        log_query(F_KEYTAG | F_SECSTAT, domain, NULL, result);
-                         
-                         if (status == STAT_BOGUS)
-                           {
--- 
-2.1.0
-
diff --git a/src/patches/dnsmasq/008-DHCPv6_option_56_does_not_hold_an_address_list.patch b/src/patches/dnsmasq/008-DHCPv6_option_56_does_not_hold_an_address_list.patch
new file mode 100644 (file)
index 0000000..fdccd0e
--- /dev/null
@@ -0,0 +1,25 @@
+From 102208df695e886a3086754d32bf7f8c541fbe46 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Thu, 10 Sep 2015 21:50:00 +0100
+Subject: [PATCH] DHCPv6 option 56 does not hold an address list. (RFC 5908).
+
+---
+ src/dhcp-common.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/dhcp-common.c b/src/dhcp-common.c
+index bc48f41..8fc171a 100644
+--- a/src/dhcp-common.c
++++ b/src/dhcp-common.c
+@@ -599,7 +599,7 @@ static const struct opttab_t opttab6[] = {
+   { "sntp-server", 31,  OT_ADDR_LIST },
+   { "information-refresh-time", 32, OT_TIME },
+   { "FQDN", 39, OT_INTERNAL | OT_RFC1035_NAME },
+-  { "ntp-server", 56,  OT_ADDR_LIST },
++  { "ntp-server", 56,  0 },
+   { "bootfile-url", 59, OT_NAME },
+   { "bootfile-param", 60, OT_CSTRING },
+   { NULL, 0, 0 }
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/009-Respect_the_--no_resolv_flag_in_inotify_code.patch b/src/patches/dnsmasq/009-Respect_the_--no_resolv_flag_in_inotify_code.patch
new file mode 100644 (file)
index 0000000..2014fdb
--- /dev/null
@@ -0,0 +1,47 @@
+From 77607cbea0ad0f876dfb79c8b2c121ee400d57d0 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Thu, 10 Sep 2015 23:08:43 +0100
+Subject: [PATCH] Respect the --no-resolv flag in inotify code.
+
+---
+ CHANGELOG        |    7 ++++++-
+ debian/changelog |    6 ++++++
+ src/inotify.c    |    3 +++
+ 3 files changed, 15 insertions(+), 1 deletion(-)
+
+diff --git a/CHANGELOG b/CHANGELOG
+index bbc2834..d6e309f 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -7,8 +7,13 @@ version 2.76
+           Enhance --add-subnet to allow arbitrary subnet addresses.
+             Thanks to Ed Barsley for the patch.
++
++          Respect the --no-resolv flag in inotify code. Fixes bug
++          which caused dnsmasq to fail to start if a resolv-file 
++          was a dangling symbolic link, even of --no-resolv set.
++          Thanks to Alexander Kurtz for spotting the problem.
++
+       
+-          
+ version 2.75
+             Fix reversion on 2.74 which caused 100% CPU use when a 
+           dhcp-script is configured. Thanks to Adrian Davey for
+diff --git a/src/inotify.c b/src/inotify.c
+index 52d412f..ef05c58 100644
+--- a/src/inotify.c
++++ b/src/inotify.c
+@@ -90,6 +90,9 @@ void inotify_dnsmasq_init()
+   
+   if (daemon->inotifyfd == -1)
+     die(_("failed to create inotify: %s"), NULL, EC_MISC);
++
++  if (option_bool(OPT_NO_RESOLV))
++    return;
+   
+   for (res = daemon->resolv_files; res; res = res->next)
+     {
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/010-Rationalise_5e3e464ac4022ee0b3794513abe510817e2cf3ca.patch b/src/patches/dnsmasq/010-Rationalise_5e3e464ac4022ee0b3794513abe510817e2cf3ca.patch
new file mode 100644 (file)
index 0000000..281697f
--- /dev/null
@@ -0,0 +1,26 @@
+From 27b78d990b7cd901866ad6f1a17b9d633a95fdce Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sat, 26 Sep 2015 21:40:45 +0100
+Subject: [PATCH] Rationalise 5e3e464ac4022ee0b3794513abe510817e2cf3ca
+
+---
+ src/rfc3315.c |    3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/rfc3315.c b/src/rfc3315.c
+index 3f1f9ee..3ed8623 100644
+--- a/src/rfc3315.c
++++ b/src/rfc3315.c
+@@ -1324,8 +1324,7 @@ static struct dhcp_netid *add_options(struct state *state, int do_refresh)
+       if (opt_cfg->opt == OPTION6_DNS_SERVER)
+       done_dns = 1;
+       
+-      /* Empty DNS_SERVER option will not set DHOPT_ADDR6 */
+-      if ((opt_cfg->flags & DHOPT_ADDR6) || opt_cfg->opt == OPTION6_DNS_SERVER)
++      if (opt_cfg->flags & DHOPT_ADDR6)
+       {
+         int len, j;
+         struct in6_addr *a;
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/011-Catch_errors_from_sendmsg_in_DHCP_code.patch b/src/patches/dnsmasq/011-Catch_errors_from_sendmsg_in_DHCP_code.patch
new file mode 100644 (file)
index 0000000..631495f
--- /dev/null
@@ -0,0 +1,32 @@
+From 98079ea89851da1df4966dfdfa1852a98da02912 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 13 Oct 2015 20:30:32 +0100
+Subject: [PATCH] Catch errors from sendmsg in DHCP code.  Logs, eg,  iptables
+ DROPS of dest 255.255.255.255
+
+---
+ src/dhcp.c |    7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/src/dhcp.c b/src/dhcp.c
+index e6fceb1..1c85e42 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -452,8 +452,13 @@ void dhcp_packet(time_t now, int pxe_fd)
+ #endif
+   
+   while(retry_send(sendmsg(fd, &msg, 0)));
++
++  /* This can fail when, eg, iptables DROPS destination 255.255.255.255 */
++  if (errno != 0)
++    my_syslog(MS_DHCP | LOG_WARNING, _("Error sending DHCP packet to %s: %s"),
++            inet_ntoa(dest.sin_addr), strerror(errno));
+ }
+- 
++
+ /* check against secondary interface addresses */
+ static int check_listen_addrs(struct in_addr local, int if_index, char *label,
+                             struct in_addr netmask, struct in_addr broadcast, void *vparam)
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/012-Update_list_of_subnet_for_--bogus-priv.patch b/src/patches/dnsmasq/012-Update_list_of_subnet_for_--bogus-priv.patch
new file mode 100644 (file)
index 0000000..3ba98fc
--- /dev/null
@@ -0,0 +1,48 @@
+From 90477fb79420a34124b66ebd808c578817a30e4c Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 20 Oct 2015 21:21:32 +0100
+Subject: [PATCH] Update list of subnet for --bogus-priv
+
+RFC6303 specifies & recommends following zones not be forwarded
+to globally facing servers.
++------------------------------+-----------------------+
+| Zone                         | Description           |
++------------------------------+-----------------------+
+| 0.IN-ADDR.ARPA               | IPv4 "THIS" NETWORK   |
+| 127.IN-ADDR.ARPA             | IPv4 Loopback NETWORK |
+| 254.169.IN-ADDR.ARPA         | IPv4 LINK LOCAL       |
+| 2.0.192.IN-ADDR.ARPA         | IPv4 TEST-NET-1       |
+| 100.51.198.IN-ADDR.ARPA      | IPv4 TEST-NET-2       |
+| 113.0.203.IN-ADDR.ARPA       | IPv4 TEST-NET-3       |
+| 255.255.255.255.IN-ADDR.ARPA | IPv4 BROADCAST        |
++------------------------------+-----------------------+
+
+Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
+---
+ src/rfc1035.c |    8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index 6a51b30..4eb1772 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -756,10 +756,14 @@ int private_net(struct in_addr addr, int ban_localhost)
+   return
+     (((ip_addr & 0xFF000000) == 0x7F000000) && ban_localhost)  /* 127.0.0.0/8    (loopback) */ ||
+     ((ip_addr & 0xFF000000) == 0x00000000)  /* RFC 5735 section 3. "here" network */ ||
+-    ((ip_addr & 0xFFFF0000) == 0xC0A80000)  /* 192.168.0.0/16 (private)  */ ||
+     ((ip_addr & 0xFF000000) == 0x0A000000)  /* 10.0.0.0/8     (private)  */ ||
+     ((ip_addr & 0xFFF00000) == 0xAC100000)  /* 172.16.0.0/12  (private)  */ ||
+-    ((ip_addr & 0xFFFF0000) == 0xA9FE0000)  /* 169.254.0.0/16 (zeroconf) */ ;
++    ((ip_addr & 0xFFFF0000) == 0xC0A80000)  /* 192.168.0.0/16 (private)  */ ||
++    ((ip_addr & 0xFFFF0000) == 0xA9FE0000)  /* 169.254.0.0/16 (zeroconf) */ ||
++    ((ip_addr & 0xFFFFFF00) == 0xC0000200)  /* 192.0.2.0/24   (test-net) */ ||
++    ((ip_addr & 0xFFFFFF00) == 0xC6336400)  /* 198.51.100.0/24(test-net) */ ||
++    ((ip_addr & 0xFFFFFF00) == 0xCB007100)  /* 203.0.113.0/24 (test-net) */ ||
++    ((ip_addr & 0xFFFFFFFF) == 0xFFFFFFFF)  /* 255.255.255.255/32 (broadcast)*/ ;
+ }
+ static unsigned char *do_doctor(unsigned char *p, int count, struct dns_header *header, size_t qlen, char *name, int *doctored)
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/013-Fix_crash_when_empty_address_from_DNS_overlays_A_record_from.patch b/src/patches/dnsmasq/013-Fix_crash_when_empty_address_from_DNS_overlays_A_record_from.patch
new file mode 100644 (file)
index 0000000..736cf38
--- /dev/null
@@ -0,0 +1,43 @@
+From 41a8d9e99be9f2cc8b02051dd322cb45e0faac87 Mon Sep 17 00:00:00 2001
+From: =?utf8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin+ml-cerowrt@etorok.net>
+Date: Sat, 14 Nov 2015 17:45:48 +0000
+Subject: [PATCH] Fix crash when empty address from DNS overlays A record from
+ hosts.
+
+---
+ CHANGELOG   |    5 +++++
+ src/cache.c |    2 +-
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/CHANGELOG b/CHANGELOG
+index d6e309f..93c73d0 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -13,6 +13,11 @@ version 2.76
+           was a dangling symbolic link, even of --no-resolv set.
+           Thanks to Alexander Kurtz for spotting the problem.
++          Fix crash when an A or AAAA record is defined locally,
++          in a hosts file, and an upstream server sends a reply
++          that the same name is empty. Thanks to Edwin Török for
++          the patch.
++
+       
+ version 2.75
+             Fix reversion on 2.74 which caused 100% CPU use when a 
+diff --git a/src/cache.c b/src/cache.c
+index 178d654..1b76b67 100644
+--- a/src/cache.c
++++ b/src/cache.c
+@@ -481,7 +481,7 @@ struct crec *cache_insert(char *name, struct all_addr *addr,
+        existing record is for an A or AAAA and
+        the record we're trying to insert is the same, 
+        just drop the insert, but don't error the whole process. */
+-      if ((flags & (F_IPV4 | F_IPV6)) && (flags & F_FORWARD))
++      if ((flags & (F_IPV4 | F_IPV6)) && (flags & F_FORWARD) && addr)
+       {
+         if ((flags & F_IPV4) && (new->flags & F_IPV4) &&
+             new->addr.addr.addr.addr4.s_addr == addr->addr.addr4.s_addr)
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/014-Handle_unknown_DS_hash_algos_correctly.patch b/src/patches/dnsmasq/014-Handle_unknown_DS_hash_algos_correctly.patch
new file mode 100644 (file)
index 0000000..8b17431
--- /dev/null
@@ -0,0 +1,39 @@
+From 67ab3285b5d9a1b1e20e034cf272867fdab8a0f9 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Fri, 20 Nov 2015 23:20:47 +0000
+Subject: [PATCH] Handle unknown DS hash algos correctly.
+
+When we can validate a DS RRset, but don't speak the hash algo it
+contains, treat that the same as an NSEC/3 proving that the DS
+doesn't exist. 4025 5.2
+---
+ src/dnssec.c |   13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 67ce486..b4dc14e 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1005,6 +1005,19 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+   if (crecp->flags & F_NEG)
+     return STAT_INSECURE_DS;
+   
++  /* 4035 5.2 
++     If the validator does not support any of the algorithms listed in an
++     authenticated DS RRset, then the resolver has no supported
++     authentication path leading from the parent to the child.  The
++     resolver should treat this case as it would the case of an
++     authenticated NSEC RRset proving that no DS RRset exists,  */
++  for (recp1 = crecp; recp1; recp1 = cache_find_by_name(recp1, name, now, F_DS))
++    if (hash_find(ds_digest_name(recp1->addr.ds.digest)))
++      break;
++  
++  if (!recp1)
++    return STAT_INSECURE_DS;
++
+   /* NOTE, we need to find ONE DNSKEY which matches the DS */
+   for (valid = 0, j = ntohs(header->ancount); j != 0 && !valid; j--) 
+     {
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/015-Fix_crash_at_start_up_with_conf-dir.patch b/src/patches/dnsmasq/015-Fix_crash_at_start_up_with_conf-dir.patch
new file mode 100644 (file)
index 0000000..a9102c1
--- /dev/null
@@ -0,0 +1,38 @@
+From 0007ee90646a5a78a96ee729932e89d31c69513a Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sat, 21 Nov 2015 21:47:41 +0000
+Subject: [PATCH] Fix crash at start up with conf-dir=/path,*
+
+Thanks to Brian Carpenter and American Fuzzy Lop for finding the bug.
+---
+ src/option.c |   14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/src/option.c b/src/option.c
+index 746cd11..71beb98 100644
+--- a/src/option.c
++++ b/src/option.c
+@@ -1515,10 +1515,16 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
+               li = opt_malloc(sizeof(struct list));
+               if (*arg == '*')
+                 {
+-                  li->next = match_suffix;
+-                  match_suffix = li;
+-                  /* Have to copy: buffer is overwritten */
+-                  li->suffix = opt_string_alloc(arg+1);
++                  /* "*" with no suffix is a no-op */
++                  if (arg[1] == 0)
++                    free(li);
++                  else
++                    {
++                      li->next = match_suffix;
++                      match_suffix = li;
++                      /* Have to copy: buffer is overwritten */
++                      li->suffix = opt_string_alloc(arg+1);
++                    }
+                 }
+               else
+                 {
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/016-Major_rationalisation_of_DNSSEC_validation.patch b/src/patches/dnsmasq/016-Major_rationalisation_of_DNSSEC_validation.patch
new file mode 100644 (file)
index 0000000..7f25066
--- /dev/null
@@ -0,0 +1,2209 @@
+From 9a31b68b59adcac01016d4026d906b69c4216c01 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 15 Dec 2015 10:20:39 +0000
+Subject: [PATCH] Major rationalisation of DNSSEC validation.
+
+Much gnarly special-case code removed and replaced with correct
+general implementaion. Checking of zone-status moved to DNSSEC code,
+where it should be, vastly simplifying query-forwarding code.
+---
+ src/dnsmasq.h |   19 +-
+ src/dnssec.c  |  926 ++++++++++++++++++++++++++++++---------------------------
+ src/forward.c |  741 ++++++++++-----------------------------------
+ 3 files changed, 653 insertions(+), 1033 deletions(-)
+
+diff --git a/src/dnsmasq.h b/src/dnsmasq.h
+index f42acdb..023a1cf 100644
+--- a/src/dnsmasq.h
++++ b/src/dnsmasq.h
+@@ -586,12 +586,8 @@ struct hostsfile {
+ #define STAT_NEED_KEY           5
+ #define STAT_TRUNCATED          6
+ #define STAT_SECURE_WILDCARD    7
+-#define STAT_NO_SIG             8
+-#define STAT_NO_DS              9
+-#define STAT_NO_NS             10
+-#define STAT_NEED_DS_NEG       11
+-#define STAT_CHASE_CNAME       12
+-#define STAT_INSECURE_DS       13
++#define STAT_OK                 8
++#define STAT_ABANDONED          9
+ #define FREC_NOREBIND           1
+ #define FREC_CHECKING_DISABLED  2
+@@ -601,8 +597,7 @@ struct hostsfile {
+ #define FREC_AD_QUESTION       32
+ #define FREC_DO_QUESTION       64
+ #define FREC_ADDED_PHEADER    128
+-#define FREC_CHECK_NOSIGN     256
+-#define FREC_TEST_PKTSZ       512
++#define FREC_TEST_PKTSZ       256
+ #ifdef HAVE_DNSSEC
+ #define HASH_SIZE 20 /* SHA-1 digest size */
+@@ -626,9 +621,7 @@ struct frec {
+ #ifdef HAVE_DNSSEC 
+   int class, work_counter;
+   struct blockdata *stash; /* Saved reply, whilst we validate */
+-  struct blockdata *orig_domain; /* domain of original query, whilst
+-                                  we're seeing is if in unsigned domain */
+-  size_t stash_len, name_start, name_len;
++  size_t stash_len;
+   struct frec *dependent; /* Query awaiting internally-generated DNSKEY or DS query */
+   struct frec *blocking_query; /* Query which is blocking us. */
+ #endif
+@@ -1162,8 +1155,8 @@ int in_zone(struct auth_zone *zone, char *name, char **cut);
+ size_t dnssec_generate_query(struct dns_header *header, char *end, char *name, int class, int type, union mysockaddr *addr, int edns_pktsz);
+ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t n, char *name, char *keyname, int class);
+ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class);
+-int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int *class, int *neganswer, int *nons);
+-int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname);
++int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int *class,
++                        int check_unsigned, int *neganswer, int *nons);
+ int dnskey_keytag(int alg, int flags, unsigned char *rdata, int rdlen);
+ size_t filter_rrsigs(struct dns_header *header, size_t plen);
+ unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name);
+diff --git a/src/dnssec.c b/src/dnssec.c
+index b4dc14e..de7b335 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -65,8 +65,10 @@ static char *algo_digest_name(int algo)
+     case 8: return "sha256";
+     case 10: return "sha512";
+     case 12: return "gosthash94";
++#ifndef NO_NETTLE_ECC
+     case 13: return "sha256";
+     case 14: return "sha384";
++#endif
+     default: return NULL;
+     }
+ }
+@@ -592,30 +594,30 @@ static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end,
+     }
+ }
+-static int expand_workspace(unsigned char ***wkspc, int *sz, int new)
++static int expand_workspace(unsigned char ***wkspc, int *szp, int new)
+ {
+   unsigned char **p;
+-  int new_sz = *sz;
+-  
+-  if (new_sz > new)
++  int old = *szp;
++
++  if (old >= new+1)
+     return 1;
+   if (new >= 100)
+     return 0;
+-  new_sz += 5;
++  new += 5;
+   
+-  if (!(p = whine_malloc((new_sz) * sizeof(unsigned char **))))
++  if (!(p = whine_malloc(new * sizeof(unsigned char **))))
+     return 0;  
+   
+-  if (*wkspc)
++  if (old != 0 && *wkspc)
+     {
+-      memcpy(p, *wkspc, *sz * sizeof(unsigned char **));
++      memcpy(p, *wkspc, old * sizeof(unsigned char **));
+       free(*wkspc);
+     }
+   
+   *wkspc = p;
+-  *sz = new_sz;
++  *szp = new;
+   return 1;
+ }
+@@ -706,47 +708,28 @@ static void sort_rrset(struct dns_header *header, size_t plen, u16 *rr_desc, int
+     } while (swap);
+ }
+-/* Validate a single RRset (class, type, name) in the supplied DNS reply 
+-   Return code:
+-   STAT_SECURE   if it validates.
+-   STAT_SECURE_WILDCARD if it validates and is the result of wildcard expansion.
+-   (In this case *wildcard_out points to the "body" of the wildcard within name.) 
+-   STAT_NO_SIG no RRsigs found.
+-   STAT_INSECURE RRset empty.
+-   STAT_BOGUS    signature is wrong, bad packet.
+-   STAT_NEED_KEY need DNSKEY to complete validation (name is returned in keyname)
+-
+-   if key is non-NULL, use that key, which has the algo and tag given in the params of those names,
+-   otherwise find the key in the cache.
++static unsigned char **rrset = NULL, **sigs = NULL;
+-   name is unchanged on exit. keyname is used as workspace and trashed.
+-*/
+-static int validate_rrset(time_t now, struct dns_header *header, size_t plen, int class, int type, 
+-                        char *name, char *keyname, char **wildcard_out, struct blockdata *key, int keylen, int algo_in, int keytag_in)
++/* Get pointers to RRset menbers and signature(s) for same.
++   Check signatures, and return keyname associated in keyname. */
++static int explore_rrset(struct dns_header *header, size_t plen, int class, int type, 
++                       char *name, char *keyname, int *sigcnt, int *rrcnt)
+ {
+-  static unsigned char **rrset = NULL, **sigs = NULL;
+-  static int rrset_sz = 0, sig_sz = 0;
+-  
++  static int rrset_sz = 0, sig_sz = 0; 
+   unsigned char *p;
+-  int rrsetidx, sigidx, res, rdlen, j, name_labels;
+-  struct crec *crecp = NULL;
+-  int type_covered, algo, labels, orig_ttl, sig_expiration, sig_inception, key_tag;
+-  u16 *rr_desc = get_desc(type);
+- 
+-  if (wildcard_out)
+-    *wildcard_out = NULL;
+-  
++  int rrsetidx, sigidx, j, rdlen, res;
++  int name_labels = count_labels(name); /* For 4035 5.3.2 check */
++  int gotkey = 0;
++
+   if (!(p = skip_questions(header, plen)))
+     return STAT_BOGUS;
+-  
+-  name_labels = count_labels(name); /* For 4035 5.3.2 check */
+-  /* look for RRSIGs for this RRset and get pointers to each RR in the set. */
++   /* look for RRSIGs for this RRset and get pointers to each RR in the set. */
+   for (rrsetidx = 0, sigidx = 0, j = ntohs(header->ancount) + ntohs(header->nscount); 
+        j != 0; j--) 
+     {
+       unsigned char *pstart, *pdata;
+-      int stype, sclass;
++      int stype, sclass, algo, type_covered, labels, sig_expiration, sig_inception;
+       pstart = p;
+       
+@@ -762,14 +745,14 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+       GETSHORT(rdlen, p);
+       
+       if (!CHECK_LEN(header, p, plen, rdlen))
+-      return STAT_BOGUS; 
++      return 0; 
+       
+       if (res == 1 && sclass == class)
+       {
+         if (stype == type)
+           {
+             if (!expand_workspace(&rrset, &rrset_sz, rrsetidx))
+-              return STAT_BOGUS; 
++              return 0; 
+             
+             rrset[rrsetidx++] = pstart;
+           }
+@@ -777,14 +760,54 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+         if (stype == T_RRSIG)
+           {
+             if (rdlen < 18)
+-              return STAT_BOGUS; /* bad packet */ 
++              return 0; /* bad packet */ 
+             
+             GETSHORT(type_covered, p);
++            algo = *p++;
++            labels = *p++;
++            p += 4; /* orig_ttl */
++            GETLONG(sig_expiration, p);
++            GETLONG(sig_inception, p);
++            p += 2; /* key_tag */
+             
+-            if (type_covered == type)
++            if (gotkey)
++              {
++                /* If there's more than one SIG, ensure they all have same keyname */
++                if (extract_name(header, plen, &p, keyname, 0, 0) != 1)
++                  return 0;
++              }
++            else
++              {
++                gotkey = 1;
++                
++                if (!extract_name(header, plen, &p, keyname, 1, 0))
++                  return 0;
++                
++                /* RFC 4035 5.3.1 says that the Signer's Name field MUST equal
++                   the name of the zone containing the RRset. We can't tell that
++                   for certain, but we can check that  the RRset name is equal to
++                   or encloses the signers name, which should be enough to stop 
++                   an attacker using signatures made with the key of an unrelated 
++                   zone he controls. Note that the root key is always allowed. */
++                if (*keyname != 0)
++                  {
++                    char *name_start;
++                    for (name_start = name; !hostname_isequal(name_start, keyname); )
++                      if ((name_start = strchr(name_start, '.')))
++                        name_start++; /* chop a label off and try again */
++                      else
++                        return 0;
++                  }
++              }
++                
++            /* Don't count signatures for algos we don't support */
++            if (check_date_range(sig_inception, sig_expiration) &&
++                labels <= name_labels &&
++                type_covered == type && 
++                algo_digest_name(algo))
+               {
+                 if (!expand_workspace(&sigs, &sig_sz, sigidx))
+-                  return STAT_BOGUS; 
++                  return 0; 
+                 
+                 sigs[sigidx++] = pdata;
+               } 
+@@ -794,17 +817,45 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+       }
+       
+       if (!ADD_RDLEN(header, p, plen, rdlen))
+-      return STAT_BOGUS;
++      return 0;
+     }
+   
+-  /* RRset empty */
+-  if (rrsetidx == 0)
+-    return STAT_INSECURE; 
++  *sigcnt = sigidx;
++  *rrcnt = rrsetidx;
++
++  return 1;
++}
++
++/* Validate a single RRset (class, type, name) in the supplied DNS reply 
++   Return code:
++   STAT_SECURE   if it validates.
++   STAT_SECURE_WILDCARD if it validates and is the result of wildcard expansion.
++   (In this case *wildcard_out points to the "body" of the wildcard within name.) 
++   STAT_BOGUS    signature is wrong, bad packet.
++   STAT_NEED_KEY need DNSKEY to complete validation (name is returned in keyname)
++   STAT_NEED_DS  need DS to complete validation (name is returned in keyname)
++
++   if key is non-NULL, use that key, which has the algo and tag given in the params of those names,
++   otherwise find the key in the cache.
+-  /* no RRSIGs */
+-  if (sigidx == 0)
+-    return STAT_NO_SIG; 
++   name is unchanged on exit. keyname is used as workspace and trashed.
++
++   Call explore_rrset first to find and count RRs and sigs.
++*/
++static int validate_rrset(time_t now, struct dns_header *header, size_t plen, int class, int type, int sigidx, int rrsetidx, 
++                        char *name, char *keyname, char **wildcard_out, struct blockdata *key, int keylen, int algo_in, int keytag_in)
++{
++  unsigned char *p;
++  int rdlen, j, name_labels;
++  struct crec *crecp = NULL;
++  int algo, labels, orig_ttl, key_tag;
++  u16 *rr_desc = get_desc(type);
++ 
++  if (wildcard_out)
++    *wildcard_out = NULL;
+   
++  name_labels = count_labels(name); /* For 4035 5.3.2 check */
++
+   /* Sort RRset records into canonical order. 
+      Note that at this point keyname and daemon->workspacename buffs are
+      unused, and used as workspace by the sort. */
+@@ -828,44 +879,16 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+       algo = *p++;
+       labels = *p++;
+       GETLONG(orig_ttl, p);
+-      GETLONG(sig_expiration, p);
+-      GETLONG(sig_inception, p);
++      p += 8; /* sig_expiration, sig_inception already checked */
+       GETSHORT(key_tag, p);
+       
+       if (!extract_name(header, plen, &p, keyname, 1, 0))
+       return STAT_BOGUS;
+-      /* RFC 4035 5.3.1 says that the Signer's Name field MUST equal
+-       the name of the zone containing the RRset. We can't tell that
+-       for certain, but we can check that  the RRset name is equal to
+-       or encloses the signers name, which should be enough to stop 
+-       an attacker using signatures made with the key of an unrelated 
+-       zone he controls. Note that the root key is always allowed. */
+-      if (*keyname != 0)
+-      {
+-        int failed = 0;
+-        
+-        for (name_start = name; !hostname_isequal(name_start, keyname); )
+-          if ((name_start = strchr(name_start, '.')))
+-            name_start++; /* chop a label off and try again */
+-          else
+-            {
+-              failed = 1;
+-              break;
+-            }
+-
+-        /* Bad sig, try another */
+-        if (failed)
+-          continue;
+-      }
+-      
+-      /* Other 5.3.1 checks */
+-      if (!check_date_range(sig_inception, sig_expiration) ||
+-        labels > name_labels ||
+-        !(hash = hash_find(algo_digest_name(algo))) ||
++      if (!(hash = hash_find(algo_digest_name(algo))) ||
+         !hash_init(hash, &ctx, &digest))
+       continue;
+-      
++      
+       /* OK, we have the signature record, see if the relevant DNSKEY is in the cache. */
+       if (!key && !(crecp = cache_find_by_name(NULL, keyname, now, F_DNSKEY)))
+       return STAT_NEED_KEY;
+@@ -971,10 +994,11 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+ /* The DNS packet is expected to contain the answer to a DNSKEY query.
+    Put all DNSKEYs in the answer which are valid into the cache.
+    return codes:
+-         STAT_SECURE   At least one valid DNSKEY found and in cache.
+-       STAT_BOGUS    No DNSKEYs found, which  can be validated with DS,
+-                     or self-sign for DNSKEY RRset is not valid, bad packet.
+-       STAT_NEED_DS  DS records to validate a key not found, name in keyname 
++         STAT_OK           Done, key(s) in cache.
++       STAT_BOGUS        No DNSKEYs found, which  can be validated with DS,
++                         or self-sign for DNSKEY RRset is not valid, bad packet.
++       STAT_NEED_DS      DS records to validate a key not found, name in keyname 
++       STAT_NEED_DNSKEY  DNSKEY records to validate a key not found, name in keyname 
+ */
+ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class)
+ {
+@@ -1001,23 +1025,6 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+       return STAT_NEED_DS;
+     }
+   
+-  /* If we've cached that DS provably doesn't exist, result must be INSECURE */
+-  if (crecp->flags & F_NEG)
+-    return STAT_INSECURE_DS;
+-  
+-  /* 4035 5.2 
+-     If the validator does not support any of the algorithms listed in an
+-     authenticated DS RRset, then the resolver has no supported
+-     authentication path leading from the parent to the child.  The
+-     resolver should treat this case as it would the case of an
+-     authenticated NSEC RRset proving that no DS RRset exists,  */
+-  for (recp1 = crecp; recp1; recp1 = cache_find_by_name(recp1, name, now, F_DS))
+-    if (hash_find(ds_digest_name(recp1->addr.ds.digest)))
+-      break;
+-  
+-  if (!recp1)
+-    return STAT_INSECURE_DS;
+-
+   /* NOTE, we need to find ONE DNSKEY which matches the DS */
+   for (valid = 0, j = ntohs(header->ancount); j != 0 && !valid; j--) 
+     {
+@@ -1070,7 +1077,8 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+         void *ctx;
+         unsigned char *digest, *ds_digest;
+         const struct nettle_hash *hash;
+-        
++        int sigcnt, rrcnt;
++
+         if (recp1->addr.ds.algo == algo && 
+             recp1->addr.ds.keytag == keytag &&
+             recp1->uid == (unsigned int)class &&
+@@ -1088,10 +1096,14 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+             
+             from_wire(name);
+             
+-            if (recp1->addr.ds.keylen == (int)hash->digest_size &&
++            if (!(recp1->flags & F_NEG) &&
++                recp1->addr.ds.keylen == (int)hash->digest_size &&
+                 (ds_digest = blockdata_retrieve(recp1->addr.key.keydata, recp1->addr.ds.keylen, NULL)) &&
+                 memcmp(ds_digest, digest, recp1->addr.ds.keylen) == 0 &&
+-                validate_rrset(now, header, plen, class, T_DNSKEY, name, keyname, NULL, key, rdlen - 4, algo, keytag) == STAT_SECURE)
++                explore_rrset(header, plen, class, T_DNSKEY, name, keyname, &sigcnt, &rrcnt) &&
++                sigcnt != 0 && rrcnt != 0 &&
++                validate_rrset(now, header, plen, class, T_DNSKEY, sigcnt, rrcnt, name, keyname, 
++                               NULL, key, rdlen - 4, algo, keytag) == STAT_SECURE)
+               {
+                 valid = 1;
+                 break;
+@@ -1112,7 +1124,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+       {
+         /* Ensure we have type, class  TTL and length */
+         if (!(rc = extract_name(header, plen, &p, name, 0, 10)))
+-          return STAT_INSECURE; /* bad packet */
++          return STAT_BOGUS; /* bad packet */
+         
+         GETSHORT(qtype, p); 
+         GETSHORT(qclass, p);
+@@ -1198,7 +1210,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+       
+       /* commit cache insert. */
+       cache_end_insert();
+-      return STAT_SECURE;
++      return STAT_OK;
+     }
+   log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "BOGUS DNSKEY");
+@@ -1207,12 +1219,14 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+ /* The DNS packet is expected to contain the answer to a DS query
+    Put all DSs in the answer which are valid into the cache.
++   Also handles replies which prove that there's no DS at this location, 
++   either because the zone is unsigned or this isn't a zone cut. These are
++   cached too.
+    return codes:
+-   STAT_SECURE      At least one valid DS found and in cache.
+-   STAT_NO_DS       It's proved there's no DS here.
+-   STAT_NO_NS       It's proved there's no DS _or_ NS here.
++   STAT_OK          At least one valid DS found and in cache.
+    STAT_BOGUS       no DS in reply or not signed, fails validation, bad packet.
+    STAT_NEED_KEY    DNSKEY records to validate a DS not found, name in keyname
++   STAT_NEED_DS     DS record needed.
+ */
+ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class)
+@@ -1230,7 +1244,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+   if (qtype != T_DS || qclass != class)
+     val = STAT_BOGUS;
+   else
+-    val = dnssec_validate_reply(now, header, plen, name, keyname, NULL, &neganswer, &nons);
++    val = dnssec_validate_reply(now, header, plen, name, keyname, NULL, 0, &neganswer, &nons);
+   /* Note dnssec_validate_reply() will have cached positive answers */
+   
+   if (val == STAT_INSECURE)
+@@ -1242,22 +1256,21 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+   
+   if (!(p = skip_section(p, ntohs(header->ancount), header, plen)))
+     val = STAT_BOGUS;
+-   
+-  /* If we return STAT_NO_SIG, name contains the name of the DS query */
+-  if (val == STAT_NO_SIG)
+-    return val;
+   
+   /* If the key needed to validate the DS is on the same domain as the DS, we'll
+      loop getting nowhere. Stop that now. This can happen of the DS answer comes
+      from the DS's zone, and not the parent zone. */
+-  if (val == STAT_BOGUS ||  (val == STAT_NEED_KEY && hostname_isequal(name, keyname)))
++  if (val == STAT_BOGUS || (val == STAT_NEED_KEY && hostname_isequal(name, keyname)))
+     {
+       log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "BOGUS DS");
+       return STAT_BOGUS;
+     }
++  
++  if (val != STAT_SECURE)
++    return val;
+   /* By here, the answer is proved secure, and a positive answer has been cached. */
+-  if (val == STAT_SECURE && neganswer)
++  if (neganswer)
+     {
+       int rdlen, flags = F_FORWARD | F_DS | F_NEG | F_DNSSECOK;
+       unsigned long ttl, minttl = ULONG_MAX;
+@@ -1317,15 +1330,14 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+         
+         cache_end_insert();  
+         
+-        log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, nons ? "no delegation" : "no DS");
++        log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "no DS");
+       }
+-
+-      return nons ? STAT_NO_NS : STAT_NO_DS; 
+     }
+-  return val;
++  return STAT_OK;
+ }
++
+ /* 4034 6.1 */
+ static int hostname_cmp(const char *a, const char *b)
+ {
+@@ -1452,7 +1464,7 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
+   int mask = 0x80 >> (type & 0x07);
+   if (nons)
+-    *nons = 0;
++    *nons = 1;
+   
+   /* Find NSEC record that proves name doesn't exist */
+   for (i = 0; i < nsec_count; i++)
+@@ -1480,9 +1492,22 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
+         /* rdlen is now length of type map, and p points to it */
+         
+         /* If we can prove that there's no NS record, return that information. */
+-        if (nons && rdlen >= 2 && p[0] == 0 && (p[2] & (0x80 >> T_NS)) == 0)
+-          *nons = 1;
++        if (nons && rdlen >= 2 && p[0] == 0 && (p[2] & (0x80 >> T_NS)) != 0)
++          *nons = 0;
+         
++        if (rdlen >= 2 && p[0] == 0)
++          {
++            /* A CNAME answer would also be valid, so if there's a CNAME is should 
++               have been returned. */
++            if ((p[2] & (0x80 >> T_CNAME)) != 0)
++              return STAT_BOGUS;
++            
++            /* If the SOA bit is set for a DS record, then we have the
++               DS from the wrong side of the delegation. */
++            if (type == T_DS && (p[2] & (0x80 >> T_SOA)) != 0)
++              return STAT_BOGUS;
++          }
++
+         while (rdlen >= 2)
+           {
+             if (!CHECK_LEN(header, p, plen, rdlen))
+@@ -1586,7 +1611,7 @@ static int base32_decode(char *in, unsigned char *out)
+ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int digest_len, unsigned char *digest, int type,
+                               char *workspace1, char *workspace2, unsigned char **nsecs, int nsec_count, int *nons)
+ {
+-  int i, hash_len, salt_len, base32_len, rdlen;
++  int i, hash_len, salt_len, base32_len, rdlen, flags;
+   unsigned char *p, *psave;
+   for (i = 0; i < nsec_count; i++)
+@@ -1599,7 +1624,9 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
+       p += 8; /* class, type, TTL */
+       GETSHORT(rdlen, p);
+       psave = p;
+-      p += 4; /* algo, flags, iterations */
++      p++; /* algo */
++      flags = *p++; /* flags */
++      p += 2; /* iterations */
+       salt_len = *p++; /* salt_len */
+       p += salt_len; /* salt */
+       hash_len = *p++; /* p now points to next hashed name */
+@@ -1626,16 +1653,29 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
+                 return 0;
+               
+               /* If we can prove that there's no NS record, return that information. */
+-              if (nons && rdlen >= 2 && p[0] == 0 && (p[2] & (0x80 >> T_NS)) == 0)
+-                *nons = 1;
++              if (nons && rdlen >= 2 && p[0] == 0 && (p[2] & (0x80 >> T_NS)) != 0)
++                *nons = 0;
+               
++              if (rdlen >= 2 && p[0] == 0)
++                {
++                  /* A CNAME answer would also be valid, so if there's a CNAME is should 
++                     have been returned. */
++                  if ((p[2] & (0x80 >> T_CNAME)) != 0)
++                    return 0;
++                  
++                  /* If the SOA bit is set for a DS record, then we have the
++                     DS from the wrong side of the delegation. */
++                  if (type == T_DS && (p[2] & (0x80 >> T_SOA)) != 0)
++                    return 0;
++                }
++
+               while (rdlen >= 2)
+                 {
+                   if (p[0] == type >> 8)
+                     {
+                       /* Does the NSEC3 say our type exists? */
+                       if (offset < p[1] && (p[offset+2] & mask) != 0)
+-                        return STAT_BOGUS;
++                        return 0;
+                       
+                       break; /* finshed checking */
+                     }
+@@ -1643,7 +1683,7 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
+                   rdlen -= p[1];
+                   p +=  p[1];
+                 }
+-
++              
+               return 1;
+             }
+           else if (rc < 0)
+@@ -1651,16 +1691,27 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige
+               /* Normal case, hash falls between NSEC3 name-hash and next domain name-hash,
+                  wrap around case, name-hash falls between NSEC3 name-hash and end */
+               if (memcmp(p, digest, digest_len) >= 0 || memcmp(workspace2, p, digest_len) >= 0)
+-                return 1;
++                {
++                  if ((flags & 0x01) && nons) /* opt out */
++                    *nons = 0;
++
++                  return 1;
++                }
+             }
+           else 
+             {
+               /* wrap around case, name falls between start and next domain name */
+               if (memcmp(workspace2, p, digest_len) >= 0 && memcmp(p, digest, digest_len) >= 0)
+-                return 1;
++                {
++                  if ((flags & 0x01) && nons) /* opt out */
++                    *nons = 0;
++
++                  return 1;
++                }
+             }
+         }
+       }
++
+   return 0;
+ }
+@@ -1673,7 +1724,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+   char *closest_encloser, *next_closest, *wildcard;
+   
+   if (nons)
+-    *nons = 0;
++    *nons = 1;
+   
+   /* Look though the NSEC3 records to find the first one with 
+      an algorithm we support (currently only algo == 1).
+@@ -1813,16 +1864,81 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+   
+   return STAT_SECURE;
+ }
+-    
+-/* Validate all the RRsets in the answer and authority sections of the reply (4035:3.2.3) */
+-/* Returns are the same as validate_rrset, plus the class if the missing key is in *class */
++
++/* Check signing status of name.
++   returns:
++   STAT_SECURE zone is signed.
++   STAT_INSECURE zone proved unsigned.
++   STAT_NEED_DS require DS record of name returned in keyname.
++   
++   name returned unaltered.
++*/
++static int zone_status(char *name, int class, char *keyname, time_t now)
++{
++  int name_start = strlen(name);
++  struct crec *crecp;
++  char *p;
++  
++  while (1)
++    {
++      strcpy(keyname, &name[name_start]);
++      
++      if (!(crecp = cache_find_by_name(NULL, keyname, now, F_DS)))
++      return STAT_NEED_DS;
++      else
++      do 
++        {
++          if (crecp->uid == (unsigned int)class)
++            {
++              /* F_DNSSECOK misused in DS cache records to non-existance of NS record.
++                 F_NEG && !F_DNSSECOK implies that we've proved there's no DS record here,
++                 but that's because there's no NS record either, ie this isn't the start
++                 of a zone. We only prove that the DNS tree below a node is unsigned when
++                 we prove that we're at a zone cut AND there's no DS record.
++              */        
++              if (crecp->flags & F_NEG)
++                {
++                  if (crecp->flags & F_DNSSECOK)
++                    return STAT_INSECURE; /* proved no DS here */
++                }
++              else if (!ds_digest_name(crecp->addr.ds.digest) || !algo_digest_name(crecp->addr.ds.algo))
++                return STAT_INSECURE; /* algo we can't use - insecure */
++            }
++        }
++      while ((crecp = cache_find_by_name(crecp, keyname, now, F_DS)));
++      
++      if (name_start == 0)
++      break;
++
++      for (p = &name[name_start-2]; (*p != '.') && (p != name); p--);
++      
++      if (p != name)
++        p++;
++      
++      name_start = p - name;
++    } 
++
++  return STAT_SECURE;
++}
++       
++/* Validate all the RRsets in the answer and authority sections of the reply (4035:3.2.3) 
++   Return code:
++   STAT_SECURE   if it validates.
++   STAT_INSECURE at least one RRset not validated, because in unsigned zone.
++   STAT_BOGUS    signature is wrong, bad packet, no validation where there should be.
++   STAT_NEED_KEY need DNSKEY to complete validation (name is returned in keyname, class in *class)
++   STAT_NEED_DS  need DS to complete validation (name is returned in keyname) 
++*/
+ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, 
+-                        int *class, int *neganswer, int *nons)
++                        int *class, int check_unsigned, int *neganswer, int *nons)
+ {
+-  unsigned char *ans_start, *qname, *p1, *p2, **nsecs;
+-  int type1, class1, rdlen1, type2, class2, rdlen2, qclass, qtype;
+-  int i, j, rc, nsec_count, cname_count = CNAME_CHAIN;
+-  int nsec_type = 0, have_answer = 0;
++  static unsigned char **targets = NULL;
++  static int target_sz = 0;
++
++  unsigned char *ans_start, *p1, *p2, **nsecs;
++  int type1, class1, rdlen1, type2, class2, rdlen2, qclass, qtype, targetidx;
++  int i, j, rc, nsec_count;
++  int nsec_type;
+   if (neganswer)
+     *neganswer = 0;
+@@ -1833,70 +1949,51 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+   if (RCODE(header) != NXDOMAIN && RCODE(header) != NOERROR)
+     return STAT_INSECURE;
+-  qname = p1 = (unsigned char *)(header+1);
++  p1 = (unsigned char *)(header+1);
+   
++   /* Find all the targets we're looking for answers to.
++     The zeroth array element is for the query, subsequent ones
++     for CNAME targets, unless the query is for a CNAME. */
++
++  if (!expand_workspace(&targets, &target_sz, 0))
++    return STAT_BOGUS;
++  
++  targets[0] = p1;
++  targetidx = 1;
++   
+   if (!extract_name(header, plen, &p1, name, 1, 4))
+     return STAT_BOGUS;
+-
++  
+   GETSHORT(qtype, p1);
+   GETSHORT(qclass, p1);
+   ans_start = p1;
+-
+-  if (qtype == T_ANY)
+-    have_answer = 1;
+  
+-  /* Can't validate an RRISG query */
++  /* Can't validate an RRSIG query */
+   if (qtype == T_RRSIG)
+     return STAT_INSECURE;
+- 
+- cname_loop:
+-  for (j = ntohs(header->ancount); j != 0; j--) 
+-    {
+-      /* leave pointer to missing name in qname */
+-           
+-      if (!(rc = extract_name(header, plen, &p1, name, 0, 10)))
+-      return STAT_BOGUS; /* bad packet */
+-      
+-      GETSHORT(type2, p1); 
+-      GETSHORT(class2, p1);
+-      p1 += 4; /* TTL */
+-      GETSHORT(rdlen2, p1);
+-
+-      if (rc == 1 && qclass == class2)
+-      {
+-        /* Do we have an answer for the question? */
+-        if (type2 == qtype)
+-          {
+-            have_answer = 1;
+-            break;
+-          }
+-        else if (type2 == T_CNAME)
+-          {
+-            qname = p1;
+-            
+-            /* looped CNAMES */
+-            if (!cname_count-- || !extract_name(header, plen, &p1, name, 1, 0))
+-              return STAT_BOGUS;
+-             
+-            p1 = ans_start;
+-            goto cname_loop;
+-          }
+-      } 
+-
+-      if (!ADD_RDLEN(header, p1, plen, rdlen2))
+-      return STAT_BOGUS;
+-    }
+-   
+-  if (neganswer && !have_answer)
+-    *neganswer = 1;
+   
+-  /* No data, therefore no sigs */
+-  if (ntohs(header->ancount) + ntohs(header->nscount) == 0)
+-    {
+-      *keyname = 0;
+-      return STAT_NO_SIG;
+-    }
+-
++  if (qtype != T_CNAME)
++    for (j = ntohs(header->ancount); j != 0; j--) 
++      {
++      if (!(p1 = skip_name(p1, header, plen, 10)))
++        return STAT_BOGUS; /* bad packet */
++      
++      GETSHORT(type2, p1); 
++      p1 += 6; /* class, TTL */
++      GETSHORT(rdlen2, p1);  
++      
++      if (type2 == T_CNAME)
++        {
++          if (!expand_workspace(&targets, &target_sz, targetidx))
++            return STAT_BOGUS;
++          
++          targets[targetidx++] = p1; /* pointer to target name */
++        }
++      
++      if (!ADD_RDLEN(header, p1, plen, rdlen2))
++        return STAT_BOGUS;
++      }
++  
+   for (p1 = ans_start, i = 0; i < ntohs(header->ancount) + ntohs(header->nscount); i++)
+     {
+       if (!extract_name(header, plen, &p1, name, 1, 10))
+@@ -1931,7 +2028,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+         /* Not done, validate now */
+         if (j == i)
+           {
+-            int ttl, keytag, algo, digest, type_covered;
++            int ttl, keytag, algo, digest, type_covered, sigcnt, rrcnt;
+             unsigned char *psave;
+             struct all_addr a;
+             struct blockdata *key;
+@@ -1939,143 +2036,186 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+             char *wildname;
+             int have_wildcard = 0;
+-            rc = validate_rrset(now, header, plen, class1, type1, name, keyname, &wildname, NULL, 0, 0, 0);
+-            
+-            if (rc == STAT_SECURE_WILDCARD)
+-              {
+-                have_wildcard = 1;
+-
+-                /* An attacker replay a wildcard answer with a different
+-                   answer and overlay a genuine RR. To prove this
+-                   hasn't happened, the answer must prove that
+-                   the gennuine record doesn't exist. Check that here. */
+-                if (!nsec_type && !(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, class1)))
+-                  return STAT_BOGUS; /* No NSECs or bad packet */
+-                
+-                if (nsec_type == T_NSEC)
+-                  rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1, NULL);
+-                else
+-                  rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, 
+-                                                 keyname, name, type1, wildname, NULL);
+-                
+-                if (rc != STAT_SECURE)
+-                  return rc;
+-              } 
+-            else if (rc != STAT_SECURE)
+-              {
+-                if (class)
+-                  *class = class1; /* Class for DS or DNSKEY */
++            if (!explore_rrset(header, plen, class1, type1, name, keyname, &sigcnt, &rrcnt))
++              return STAT_BOGUS;
+-                if (rc == STAT_NO_SIG)
++            /* No signatures for RRset. We can be configured to assume this is OK and return a INSECURE result. */
++            if (sigcnt == 0)
++              {
++                if (check_unsigned)
+                   {
+-                    /* If we dropped off the end of a CNAME chain, return
+-                       STAT_NO_SIG and the last name is keyname. This is used for proving non-existence
+-                       if DS records in CNAME chains. */
+-                    if (cname_count == CNAME_CHAIN || i < ntohs(header->ancount)) 
+-                      /* No CNAME chain, or no sig in answer section, return empty name. */
+-                      *keyname = 0;
+-                    else if (!extract_name(header, plen, &qname, keyname, 1, 0))
+-                      return STAT_BOGUS;
++                    rc = zone_status(name, class1, keyname, now);
++                    if (rc == STAT_SECURE)
++                      rc = STAT_BOGUS;
++                     if (class)
++                       *class = class1; /* Class for NEED_DS or NEED_DNSKEY */
+                   }
+- 
++                else 
++                  rc = STAT_INSECURE; 
++                
+                 return rc;
+               }
+             
+-            /* Cache RRsigs in answer section, and if we just validated a DS RRset, cache it */
+-            cache_start_insert();
++            /* explore_rrset() gives us key name from sigs in keyname.
++               Can't overwrite name here. */
++            strcpy(daemon->workspacename, keyname);
++            rc = zone_status(daemon->workspacename, class1, keyname, now);
++            if (rc != STAT_SECURE)
++              {
++                /* Zone is insecure, don't need to validate RRset */
++                if (class)
++                  *class = class1; /* Class for NEED_DS or NEED_DNSKEY */
++                return rc;
++              } 
++            
++            rc = validate_rrset(now, header, plen, class1, type1, sigcnt, rrcnt, name, keyname, &wildname, NULL, 0, 0, 0);
+             
+-            for (p2 = ans_start, j = 0; j < ntohs(header->ancount); j++)
++            if (rc == STAT_BOGUS || rc == STAT_NEED_KEY || rc == STAT_NEED_DS)
+               {
+-                if (!(rc = extract_name(header, plen, &p2, name, 0, 10)))
+-                  return STAT_BOGUS; /* bad packet */
++                if (class)
++                  *class = class1; /* Class for DS or DNSKEY */
++                return rc;
++              } 
++            else 
++              {
++                /* rc is now STAT_SECURE or STAT_SECURE_WILDCARD */
++               
++                /* Note if we've validated either the answer to the question
++                   or the target of a CNAME. Any not noted will need NSEC or
++                   to be in unsigned space. */
++
++                for (j = 0; j <targetidx; j++)
++                  if ((p2 = targets[j]))
++                    {
++                      if (!(rc = extract_name(header, plen, &p2, name, 0, 10)))
++                        return STAT_BOGUS; /* bad packet */
++                      
++                      if (class1 == qclass && rc == 1 && (type1 == T_CNAME || type1 == qtype || qtype == T_ANY ))
++                        targets[j] = NULL;
++                    }
++                          
++                if (rc == STAT_SECURE_WILDCARD)
++                  {
++                    have_wildcard = 1;
+                     
+-                GETSHORT(type2, p2);
+-                GETSHORT(class2, p2);
+-                GETLONG(ttl, p2);
+-                GETSHORT(rdlen2, p2);
+-                     
+-                if (!CHECK_LEN(header, p2, plen, rdlen2))
+-                  return STAT_BOGUS; /* bad packet */
+-                
+-                if (class2 == class1 && rc == 1)
+-                  { 
+-                    psave = p2;
++                    /* An attacker replay a wildcard answer with a different
++                       answer and overlay a genuine RR. To prove this
++                       hasn't happened, the answer must prove that
++                       the gennuine record doesn't exist. Check that here. */
++                    if (!(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, class1)))
++                      return STAT_BOGUS; /* No NSECs or bad packet */
++                    
++                    /* Note that we may not yet have validated the NSEC/NSEC3 RRsets. Since the check
++                       below returns either SECURE or BOGUS, that's not a problem. If the RRsets later fail
++                       we'll return BOGUS then. */
+-                    if (type1 == T_DS && type2 == T_DS)
+-                      {
+-                        if (rdlen2 < 4)
+-                          return STAT_BOGUS; /* bad packet */
+-                        
+-                        GETSHORT(keytag, p2);
+-                        algo = *p2++;
+-                        digest = *p2++;
+-                        
+-                        /* Cache needs to known class for DNSSEC stuff */
+-                        a.addr.dnssec.class = class2;
+-                        
+-                        if ((key = blockdata_alloc((char*)p2, rdlen2 - 4)))
+-                          {
+-                            if (!(crecp = cache_insert(name, &a, now, ttl, F_FORWARD | F_DS | F_DNSSECOK)))
+-                              blockdata_free(key);
+-                            else
+-                              {
+-                                a.addr.keytag = keytag;
+-                                log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
+-                                crecp->addr.ds.digest = digest;
+-                                crecp->addr.ds.keydata = key;
+-                                crecp->addr.ds.algo = algo;
+-                                crecp->addr.ds.keytag = keytag;
+-                                crecp->addr.ds.keylen = rdlen2 - 4; 
+-                              } 
+-                          }
+-                      }
+-                    else if (type2 == T_RRSIG)
+-                      {
+-                        if (rdlen2 < 18)
+-                          return STAT_BOGUS; /* bad packet */
++                    if (nsec_type == T_NSEC)
++                      rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1, NULL);
++                    else
++                      rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, 
++                                                     keyname, name, type1, wildname, NULL);
++                    
++                    if (rc == STAT_BOGUS)
++                      return rc;
++                  } 
++                
++                /* Cache RRsigs in answer section, and if we just validated a DS RRset, cache it */
++                /* Also note if the RRset is the answer to the question, or the target of a CNAME */
++                cache_start_insert();
++                
++                for (p2 = ans_start, j = 0; j < ntohs(header->ancount); j++)
++                  {
++                    if (!(rc = extract_name(header, plen, &p2, name, 0, 10)))
++                      return STAT_BOGUS; /* bad packet */
++                    
++                    GETSHORT(type2, p2);
++                    GETSHORT(class2, p2);
++                    GETLONG(ttl, p2);
++                    GETSHORT(rdlen2, p2);
++                    
++                    if (!CHECK_LEN(header, p2, plen, rdlen2))
++                      return STAT_BOGUS; /* bad packet */
++                    
++                    if (class2 == class1 && rc == 1)
++                      { 
++                        psave = p2;
+                         
+-                        GETSHORT(type_covered, p2);
+-
+-                        if (type_covered == type1 && 
+-                            (type_covered == T_A || type_covered == T_AAAA ||
+-                             type_covered == T_CNAME || type_covered == T_DS || 
+-                             type_covered == T_DNSKEY || type_covered == T_PTR)) 
++                        if (type1 == T_DS && type2 == T_DS)
+                           {
+-                            a.addr.dnssec.type = type_covered;
+-                            a.addr.dnssec.class = class1;
++                            if (rdlen2 < 4)
++                              return STAT_BOGUS; /* bad packet */
+                             
+-                            algo = *p2++;
+-                            p2 += 13; /* labels, orig_ttl, expiration, inception */
+                             GETSHORT(keytag, p2);
++                            algo = *p2++;
++                            digest = *p2++;
++                            
++                            /* Cache needs to known class for DNSSEC stuff */
++                            a.addr.dnssec.class = class2;
+                             
+-                            /* We don't cache sigs for wildcard answers, because to reproduce the
+-                               answer from the cache will require one or more NSEC/NSEC3 records 
+-                               which we don't cache. The lack of the RRSIG ensures that a query for
+-                               this RRset asking for a secure answer will always be forwarded. */
+-                            if (!have_wildcard && (key = blockdata_alloc((char*)psave, rdlen2)))
++                            if ((key = blockdata_alloc((char*)p2, rdlen2 - 4)))
+                               {
+-                                if (!(crecp = cache_insert(name, &a, now, ttl,  F_FORWARD | F_DNSKEY | F_DS)))
++                                if (!(crecp = cache_insert(name, &a, now, ttl, F_FORWARD | F_DS | F_DNSSECOK)))
+                                   blockdata_free(key);
+                                 else
+                                   {
+-                                    crecp->addr.sig.keydata = key;
+-                                    crecp->addr.sig.keylen = rdlen2;
+-                                    crecp->addr.sig.keytag = keytag;
+-                                    crecp->addr.sig.type_covered = type_covered;
+-                                    crecp->addr.sig.algo = algo;
++                                    a.addr.keytag = keytag;
++                                    log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
++                                    crecp->addr.ds.digest = digest;
++                                    crecp->addr.ds.keydata = key;
++                                    crecp->addr.ds.algo = algo;
++                                    crecp->addr.ds.keytag = keytag;
++                                    crecp->addr.ds.keylen = rdlen2 - 4; 
++                                  } 
++                              }
++                          }
++                        else if (type2 == T_RRSIG)
++                          {
++                            if (rdlen2 < 18)
++                              return STAT_BOGUS; /* bad packet */
++                            
++                            GETSHORT(type_covered, p2);
++                            
++                            if (type_covered == type1 && 
++                                (type_covered == T_A || type_covered == T_AAAA ||
++                                 type_covered == T_CNAME || type_covered == T_DS || 
++                                 type_covered == T_DNSKEY || type_covered == T_PTR)) 
++                              {
++                                a.addr.dnssec.type = type_covered;
++                                a.addr.dnssec.class = class1;
++                                
++                                algo = *p2++;
++                                p2 += 13; /* labels, orig_ttl, expiration, inception */
++                                GETSHORT(keytag, p2);
++                                
++                                /* We don't cache sigs for wildcard answers, because to reproduce the
++                                   answer from the cache will require one or more NSEC/NSEC3 records 
++                                   which we don't cache. The lack of the RRSIG ensures that a query for
++                                   this RRset asking for a secure answer will always be forwarded. */
++                                if (!have_wildcard && (key = blockdata_alloc((char*)psave, rdlen2)))
++                                  {
++                                    if (!(crecp = cache_insert(name, &a, now, ttl,  F_FORWARD | F_DNSKEY | F_DS)))
++                                      blockdata_free(key);
++                                    else
++                                      {
++                                        crecp->addr.sig.keydata = key;
++                                        crecp->addr.sig.keylen = rdlen2;
++                                        crecp->addr.sig.keytag = keytag;
++                                        crecp->addr.sig.type_covered = type_covered;
++                                        crecp->addr.sig.algo = algo;
++                                      }
+                                   }
+                               }
+                           }
++                        
++                        p2 = psave;
+                       }
+                     
+-                    p2 = psave;
++                    if (!ADD_RDLEN(header, p2, plen, rdlen2))
++                      return STAT_BOGUS; /* bad packet */
+                   }
+                 
+-                if (!ADD_RDLEN(header, p2, plen, rdlen2))
+-                  return STAT_BOGUS; /* bad packet */
++                cache_end_insert();
+               }
+-                
+-            cache_end_insert();
+           }
+       }
+@@ -2083,143 +2223,49 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+       return STAT_BOGUS;
+     }
+-  /* OK, all the RRsets validate, now see if we have a NODATA or NXDOMAIN reply */
+-  if (have_answer)
+-    return STAT_SECURE;
+-     
+-  /* NXDOMAIN or NODATA reply, prove that (name, class1, type1) can't exist */
+-  /* First marshall the NSEC records, if we've not done it previously */
+-  if (!nsec_type && !(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, qclass)))
+-    {
+-      /* No NSEC records. If we dropped off the end of a CNAME chain, return
+-       STAT_NO_SIG and the last name is keyname. This is used for proving non-existence
+-       if DS records in CNAME chains. */
+-      if (cname_count == CNAME_CHAIN) /* No CNAME chain, return empty name. */
+-      *keyname = 0;
+-      else if (!extract_name(header, plen, &qname, keyname, 1, 0))
+-      return STAT_BOGUS;
+-      return STAT_NO_SIG; /* No NSECs, this is probably a dangling CNAME pointing into
+-                           an unsigned zone. Return STAT_NO_SIG to cause this to be proved. */
+-    }
+-   
+-  /* Get name of missing answer */
+-  if (!extract_name(header, plen, &qname, name, 1, 0))
+-    return STAT_BOGUS;
+-  
+-  if (nsec_type == T_NSEC)
+-    return prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, nons);
+-  else
+-    return prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, NULL, nons);
+-}
+-
+-/* Chase the CNAME chain in the packet until the first record which _doesn't validate.
+-   Needed for proving answer in unsigned space.
+-   Return STAT_NEED_* 
+-          STAT_BOGUS - error
+-          STAT_INSECURE - name of first non-secure record in name 
+-*/
+-int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname)
+-{
+-  unsigned char *p = (unsigned char *)(header+1);
+-  int type, class, qclass, rdlen, j, rc;
+-  int cname_count = CNAME_CHAIN;
+-  char *wildname;
+-
+-  /* Get question */
+-  if (!extract_name(header, plen, &p, name, 1, 4))
+-    return STAT_BOGUS;
+-  
+-  p +=2; /* type */
+-  GETSHORT(qclass, p);
+-
+-  while (1)
+-    {
+-      for (j = ntohs(header->ancount); j != 0; j--) 
+-      {
+-        if (!(rc = extract_name(header, plen, &p, name, 0, 10)))
+-          return STAT_BOGUS; /* bad packet */
+-        
+-        GETSHORT(type, p); 
+-        GETSHORT(class, p);
+-        p += 4; /* TTL */
+-        GETSHORT(rdlen, p);
+-
+-        /* Not target, loop */
+-        if (rc == 2 || qclass != class)
+-          {
+-            if (!ADD_RDLEN(header, p, plen, rdlen))
+-              return STAT_BOGUS;
+-            continue;
+-          }
+-        
+-        /* Got to end of CNAME chain. */
+-        if (type != T_CNAME)
+-          return STAT_INSECURE;
+-        
+-        /* validate CNAME chain, return if insecure or need more data */
+-        rc = validate_rrset(now, header, plen, class, type, name, keyname, &wildname, NULL, 0, 0, 0);
+-         
+-        if (rc == STAT_SECURE_WILDCARD)
+-          {
+-            int nsec_type, nsec_count, i;
+-            unsigned char **nsecs;
+-
+-            /* An attacker can replay a wildcard answer with a different
+-               answer and overlay a genuine RR. To prove this
+-               hasn't happened, the answer must prove that
+-               the genuine record doesn't exist. Check that here. */
+-            if (!(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, class)))
+-              return STAT_BOGUS; /* No NSECs or bad packet */
+-            
+-            /* Note that we're called here because something didn't validate in validate_reply,
+-               so we can't assume that any NSEC records have been validated. We do them by steam here */
+-
+-            for (i = 0; i < nsec_count; i++)
+-              {
+-                unsigned char *p1 = nsecs[i];
+-                
+-                if (!extract_name(header, plen, &p1, daemon->workspacename, 1, 0))
+-                  return STAT_BOGUS;
+-
+-                rc = validate_rrset(now, header, plen, class, nsec_type, daemon->workspacename, keyname, NULL, NULL, 0, 0, 0);
++  /* OK, all the RRsets validate, now see if we have a missing answer or CNAME target. */
++  for (j = 0; j <targetidx; j++)
++    if ((p2 = targets[j]))
++      {
++      if (neganswer)
++        *neganswer = 1;
+-                /* NSECs can't be wildcards. */
+-                if (rc == STAT_SECURE_WILDCARD)
+-                  rc = STAT_BOGUS;
++      if (!extract_name(header, plen, &p2, name, 1, 10))
++        return STAT_BOGUS; /* bad packet */
++          
++      /* NXDOMAIN or NODATA reply, unanswered question is (name, qclass, qtype) */
+-                if (rc != STAT_SECURE)
++      /* For anything other than a DS record, this situation is OK if either
++         the answer is in an unsigned zone, or there's a NSEC records. */
++      if (!(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, qclass)))
++        {
++          /* Empty DS without NSECS */
++          if (qtype == T_DS)
++            return STAT_BOGUS;
++          else
++            {
++              rc = zone_status(name, qclass, keyname, now);
++              if (rc != STAT_SECURE)
++                {
++                  if (class)
++                    *class = qclass; /* Class for NEED_DS or NEED_DNSKEY */
+                   return rc;
+-              }
+-
+-            if (nsec_type == T_NSEC)
+-              rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type, NULL);
+-            else
+-              rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, 
+-                                             keyname, name, type, wildname, NULL);
+-            
+-            if (rc != STAT_SECURE)
+-              return rc;
+-          }
+-        
+-        if (rc != STAT_SECURE)
+-          {
+-            if (rc == STAT_NO_SIG)
+-              rc = STAT_INSECURE;
+-            return rc;
+-          }
++                } 
++              
++              return STAT_BOGUS; /* signed zone, no NSECs */
++            }
++        }
+-        /* Loop down CNAME chain/ */
+-        if (!cname_count-- || 
+-            !extract_name(header, plen, &p, name, 1, 0) ||
+-            !(p = skip_questions(header, plen)))
+-          return STAT_BOGUS;
+-        
+-        break;
+-      }
++        if (nsec_type == T_NSEC)
++        rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, nons);
++      else
++        rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, NULL, nons);
+-      /* End of CNAME chain */
+-      return STAT_INSECURE;   
+-    }
++      if (rc != STAT_SECURE)
++        return rc;
++      }
++  
++  return STAT_SECURE;
+ }
+diff --git a/src/forward.c b/src/forward.c
+index b76a974..dd22a62 100644
+--- a/src/forward.c
++++ b/src/forward.c
+@@ -23,15 +23,6 @@ static struct frec *lookup_frec_by_sender(unsigned short id,
+ static unsigned short get_id(void);
+ static void free_frec(struct frec *f);
+-#ifdef HAVE_DNSSEC
+-static int tcp_key_recurse(time_t now, int status, struct dns_header *header, size_t n, 
+-                         int class, char *name, char *keyname, struct server *server, int *keycount);
+-static int do_check_sign(struct frec *forward, int status, time_t now, char *name, char *keyname);
+-static int send_check_sign(struct frec *forward, time_t now, struct dns_header *header, size_t plen, 
+-                         char *name, char *keyname);
+-#endif
+-
+-
+ /* Send a UDP packet with its source address set as "source" 
+    unless nowild is true, when we just send it with the kernel default */
+ int send_from(int fd, int nowild, char *packet, size_t len, 
+@@ -825,236 +816,142 @@ void reply_query(int fd, int family, time_t now)
+ #ifdef HAVE_DNSSEC
+       if (server && option_bool(OPT_DNSSEC_VALID) && !(forward->flags & FREC_CHECKING_DISABLED))
+       {
+-        int status;
++        int status = 0;
+         /* We've had a reply already, which we're validating. Ignore this duplicate */
+         if (forward->blocking_query)
+           return;
+-
+-        if (header->hb3 & HB3_TC)
+-          {
+-            /* Truncated answer can't be validated.
++        
++         /* Truncated answer can't be validated.
+                If this is an answer to a DNSSEC-generated query, we still
+                need to get the client to retry over TCP, so return
+                an answer with the TC bit set, even if the actual answer fits.
+             */
+-            status = STAT_TRUNCATED;
+-          }
+-        else if (forward->flags & FREC_DNSKEY_QUERY)
+-          status = dnssec_validate_by_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
+-        else if (forward->flags & FREC_DS_QUERY)
+-          {
+-            status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
+-            /* Provably no DS, everything below is insecure, even if signatures are offered */
+-            if (status == STAT_NO_DS)
+-              /* We only cache sigs when we've validated a reply.
+-                 Avoid caching a reply with sigs if there's a vaildated break in the 
+-                 DS chain, so we don't return replies from cache missing sigs. */
+-                      status = STAT_INSECURE_DS;
+-            else if (status == STAT_NO_SIG)
+-                {
+-                  if (option_bool(OPT_DNSSEC_NO_SIGN))
+-                    {
+-                    status = send_check_sign(forward, now, header, n, daemon->namebuff, daemon->keyname);
+-                    if (status == STAT_INSECURE)
+-                      status = STAT_INSECURE_DS;
+-                  }
+-                else
+-                  status = STAT_INSECURE_DS;
+-              }
+-              else if (status == STAT_NO_NS)
+-              status = STAT_BOGUS;
+-          }
+-        else if (forward->flags & FREC_CHECK_NOSIGN)
+-          {
+-            status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
+-            if (status != STAT_NEED_KEY)
+-              status = do_check_sign(forward, status, now, daemon->namebuff, daemon->keyname);
+-          }
+-        else
++        if (header->hb3 & HB3_TC)
++          status = STAT_TRUNCATED;
++        
++        while (1)
+           {
+-            status = dnssec_validate_reply(now, header, n, daemon->namebuff, daemon->keyname, &forward->class, NULL, NULL);
+-            if (status == STAT_NO_SIG)
++            /* As soon as anything returns BOGUS, we stop and unwind, to do otherwise
++               would invite infinite loops, since the answers to DNSKEY and DS queries
++               will not be cached, so they'll be repeated. */
++            if (status != STAT_BOGUS && status != STAT_TRUNCATED && status != STAT_ABANDONED)
+               {
+-                if (option_bool(OPT_DNSSEC_NO_SIGN))
+-                  status = send_check_sign(forward, now, header, n, daemon->namebuff, daemon->keyname);
++                if (forward->flags & FREC_DNSKEY_QUERY)
++                  status = dnssec_validate_by_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
++                else if (forward->flags & FREC_DS_QUERY)
++                  status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
+                 else
+-                  status = STAT_INSECURE;
++                  status = dnssec_validate_reply(now, header, n, daemon->namebuff, daemon->keyname, &forward->class, 
++                                                 option_bool(OPT_DNSSEC_NO_SIGN), NULL, NULL);
+               }
+-          }
+-        /* Can't validate, as we're missing key data. Put this
+-           answer aside, whilst we get that. */     
+-        if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG || status == STAT_NEED_KEY)
+-          {
+-            struct frec *new, *orig;
+-            
+-            /* Free any saved query */
+-            if (forward->stash)
+-              blockdata_free(forward->stash);
+-            
+-            /* Now save reply pending receipt of key data */
+-            if (!(forward->stash = blockdata_alloc((char *)header, n)))
+-              return;
+-            forward->stash_len = n;
+             
+-          anotherkey:       
+-            /* Find the original query that started it all.... */
+-            for (orig = forward; orig->dependent; orig = orig->dependent);
+-
+-            if (--orig->work_counter == 0 || !(new = get_new_frec(now, NULL, 1)))
+-              status = STAT_INSECURE;
+-            else
++            /* Can't validate, as we're missing key data. Put this
++               answer aside, whilst we get that. */     
++            if (status == STAT_NEED_DS || status == STAT_NEED_KEY)
+               {
+-                int fd;
+-                struct frec *next = new->next;
+-                *new = *forward; /* copy everything, then overwrite */
+-                new->next = next;
+-                new->blocking_query = NULL;
+-                new->sentto = server;
+-                new->rfd4 = NULL;
+-                new->orig_domain = NULL;
+-#ifdef HAVE_IPV6
+-                new->rfd6 = NULL;
+-#endif
+-                new->flags &= ~(FREC_DNSKEY_QUERY | FREC_DS_QUERY | FREC_CHECK_NOSIGN);
++                struct frec *new, *orig;
+                 
+-                new->dependent = forward; /* to find query awaiting new one. */
+-                forward->blocking_query = new; /* for garbage cleaning */
+-                /* validate routines leave name of required record in daemon->keyname */
+-                if (status == STAT_NEED_KEY)
+-                  {
+-                    new->flags |= FREC_DNSKEY_QUERY; 
+-                    nn = dnssec_generate_query(header, ((char *) header) + daemon->packet_buff_sz,
+-                                               daemon->keyname, forward->class, T_DNSKEY, &server->addr, server->edns_pktsz);
+-                  }
+-                else 
+-                  {
+-                    if (status == STAT_NEED_DS_NEG)
+-                      new->flags |= FREC_CHECK_NOSIGN;
+-                    else
+-                      new->flags |= FREC_DS_QUERY;
+-                    nn = dnssec_generate_query(header,((char *) header) + daemon->packet_buff_sz,
+-                                               daemon->keyname, forward->class, T_DS, &server->addr, server->edns_pktsz);
+-                  }
+-                if ((hash = hash_questions(header, nn, daemon->namebuff)))
+-                  memcpy(new->hash, hash, HASH_SIZE);
+-                new->new_id = get_id();
+-                header->id = htons(new->new_id);
+-                /* Save query for retransmission */
+-                if (!(new->stash = blockdata_alloc((char *)header, nn)))
++                /* Free any saved query */
++                if (forward->stash)
++                  blockdata_free(forward->stash);
++                
++                /* Now save reply pending receipt of key data */
++                if (!(forward->stash = blockdata_alloc((char *)header, n)))
+                   return;
+-                    
+-                new->stash_len = nn;
++                forward->stash_len = n;
+                 
+-                /* Don't resend this. */
+-                daemon->srv_save = NULL;
++                /* Find the original query that started it all.... */
++                for (orig = forward; orig->dependent; orig = orig->dependent);
+                 
+-                if (server->sfd)
+-                  fd = server->sfd->fd;
++                if (--orig->work_counter == 0 || !(new = get_new_frec(now, NULL, 1)))
++                  status = STAT_ABANDONED;
+                 else
+                   {
+-                    fd = -1;
++                    int fd;
++                    struct frec *next = new->next;
++                    *new = *forward; /* copy everything, then overwrite */
++                    new->next = next;
++                    new->blocking_query = NULL;
++                    new->sentto = server;
++                    new->rfd4 = NULL;
+ #ifdef HAVE_IPV6
+-                    if (server->addr.sa.sa_family == AF_INET6)
++                    new->rfd6 = NULL;
++#endif
++                    new->flags &= ~(FREC_DNSKEY_QUERY | FREC_DS_QUERY);
++                    
++                    new->dependent = forward; /* to find query awaiting new one. */
++                    forward->blocking_query = new; /* for garbage cleaning */
++                    /* validate routines leave name of required record in daemon->keyname */
++                    if (status == STAT_NEED_KEY)
++                      {
++                        new->flags |= FREC_DNSKEY_QUERY; 
++                        nn = dnssec_generate_query(header, ((char *) header) + daemon->packet_buff_sz,
++                                                   daemon->keyname, forward->class, T_DNSKEY, &server->addr, server->edns_pktsz);
++                      }
++                    else 
+                       {
+-                        if (new->rfd6 || (new->rfd6 = allocate_rfd(AF_INET6)))
+-                          fd = new->rfd6->fd;
++                        new->flags |= FREC_DS_QUERY;
++                        nn = dnssec_generate_query(header,((char *) header) + daemon->packet_buff_sz,
++                                                   daemon->keyname, forward->class, T_DS, &server->addr, server->edns_pktsz);
+                       }
++                    if ((hash = hash_questions(header, nn, daemon->namebuff)))
++                      memcpy(new->hash, hash, HASH_SIZE);
++                    new->new_id = get_id();
++                    header->id = htons(new->new_id);
++                    /* Save query for retransmission */
++                    new->stash = blockdata_alloc((char *)header, nn);
++                    new->stash_len = nn;
++                    
++                    /* Don't resend this. */
++                    daemon->srv_save = NULL;
++                    
++                    if (server->sfd)
++                      fd = server->sfd->fd;
+                     else
++                      {
++                        fd = -1;
++#ifdef HAVE_IPV6
++                        if (server->addr.sa.sa_family == AF_INET6)
++                          {
++                            if (new->rfd6 || (new->rfd6 = allocate_rfd(AF_INET6)))
++                              fd = new->rfd6->fd;
++                          }
++                        else
+ #endif
++                          {
++                            if (new->rfd4 || (new->rfd4 = allocate_rfd(AF_INET)))
++                              fd = new->rfd4->fd;
++                          }
++                      }
++                    
++                    if (fd != -1)
+                       {
+-                        if (new->rfd4 || (new->rfd4 = allocate_rfd(AF_INET)))
+-                          fd = new->rfd4->fd;
++                        while (retry_send(sendto(fd, (char *)header, nn, 0, 
++                                                 &server->addr.sa, 
++                                                 sa_len(&server->addr)))); 
++                        server->queries++;
+                       }
+-                  }
+-                
+-                if (fd != -1)
+-                  {
+-                    while (retry_send(sendto(fd, (char *)header, nn, 0, 
+-                                             &server->addr.sa, 
+-                                             sa_len(&server->addr)))); 
+-                    server->queries++;
+-                  }
+-                
++                  }             
+                 return;
+               }
+-          }
+         
+-        /* Ok, we reached far enough up the chain-of-trust that we can validate something.
+-           Now wind back down, pulling back answers which wouldn't previously validate
+-           and validate them with the new data. Note that if an answer needs multiple
+-           keys to validate, we may find another key is needed, in which case we set off
+-           down another branch of the tree. Once we get to the original answer 
+-           (FREC_DNSSEC_QUERY not set) and it validates, return it to the original requestor. */
+-        while (forward->dependent)
+-          {
++            /* Validated original answer, all done. */
++            if (!forward->dependent)
++              break;
++            
++            /* validated subsdiary query, (and cached result)
++               pop that and return to the previous query we were working on. */
+             struct frec *prev = forward->dependent;
+             free_frec(forward);
+             forward = prev;
+             forward->blocking_query = NULL; /* already gone */
+             blockdata_retrieve(forward->stash, forward->stash_len, (void *)header);
+             n = forward->stash_len;
+-            
+-            if (status == STAT_SECURE)
+-              {
+-                if (forward->flags & FREC_DNSKEY_QUERY)
+-                  status = dnssec_validate_by_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
+-                else if (forward->flags & FREC_DS_QUERY)
+-                  {
+-                    status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
+-                     /* Provably no DS, everything below is insecure, even if signatures are offered */
+-                    if (status == STAT_NO_DS)
+-                      /* We only cache sigs when we've validated a reply.
+-                         Avoid caching a reply with sigs if there's a vaildated break in the 
+-                         DS chain, so we don't return replies from cache missing sigs. */
+-                      status = STAT_INSECURE_DS;
+-                     else if (status == STAT_NO_SIG)
+-                       {
+-                         if (option_bool(OPT_DNSSEC_NO_SIGN))
+-                           {
+-                             status = send_check_sign(forward, now, header, n, daemon->namebuff, daemon->keyname); 
+-                             if (status == STAT_INSECURE)
+-                               status = STAT_INSECURE_DS;
+-                           }
+-                         else
+-                           status = STAT_INSECURE_DS;
+-                       }
+-                     else if (status == STAT_NO_NS)
+-                       status = STAT_BOGUS;
+-                  }
+-                else if (forward->flags & FREC_CHECK_NOSIGN)
+-                  {
+-                    status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class);
+-                    if (status != STAT_NEED_KEY)
+-                      status = do_check_sign(forward, status, now, daemon->namebuff, daemon->keyname);
+-                  }
+-                else
+-                  {
+-                    status = dnssec_validate_reply(now, header, n, daemon->namebuff, daemon->keyname, &forward->class, NULL, NULL);   
+-                    if (status == STAT_NO_SIG)
+-                      {
+-                        if (option_bool(OPT_DNSSEC_NO_SIGN))
+-                          status = send_check_sign(forward, now, header, n, daemon->namebuff, daemon->keyname);
+-                        else
+-                          status = STAT_INSECURE;
+-                      }
+-                  }
+-             
+-                if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG || status == STAT_NEED_KEY)
+-                  goto anotherkey;
+-              }
+           }
++      
+         
+         no_cache_dnssec = 0;
+-
+-        if (status == STAT_INSECURE_DS)
+-          {
+-            /* We only cache sigs when we've validated a reply.
+-               Avoid caching a reply with sigs if there's a vaildated break in the 
+-               DS chain, so we don't return replies from cache missing sigs. */
+-            status = STAT_INSECURE;
+-            no_cache_dnssec = 1;
+-          }
+         
+         if (status == STAT_TRUNCATED)
+           header->hb3 |= HB3_TC;
+@@ -1062,7 +959,7 @@ void reply_query(int fd, int family, time_t now)
+           {
+             char *result, *domain = "result";
+             
+-            if (forward->work_counter == 0)
++            if (status == STAT_ABANDONED)
+               {
+                 result = "ABANDONED";
+                 status = STAT_BOGUS;
+@@ -1072,7 +969,7 @@ void reply_query(int fd, int family, time_t now)
+             
+             if (status == STAT_BOGUS && extract_request(header, n, daemon->namebuff, NULL))
+               domain = daemon->namebuff;
+-
++            
+             log_query(F_KEYTAG | F_SECSTAT, domain, NULL, result);
+           }
+         
+@@ -1415,315 +1312,49 @@ void receive_query(struct listener *listen, time_t now)
+ }
+ #ifdef HAVE_DNSSEC
+-
+-/* UDP: we've got an unsigned answer, return STAT_INSECURE if we can prove there's no DS
+-   and therefore the answer shouldn't be signed, or STAT_BOGUS if it should be, or 
+-   STAT_NEED_DS_NEG and keyname if we need to do the query. */
+-static int send_check_sign(struct frec *forward, time_t now, struct dns_header *header, size_t plen, 
+-                         char *name, char *keyname)
+-{
+-  int status = dnssec_chase_cname(now, header, plen, name, keyname);
+-  
+-  if (status != STAT_INSECURE)
+-    return status;
+-
+-  /* Store the domain we're trying to check. */
+-  forward->name_start = strlen(name);
+-  forward->name_len = forward->name_start + 1;
+-  if (!(forward->orig_domain = blockdata_alloc(name, forward->name_len)))
+-    return STAT_BOGUS;
+-  
+-  return do_check_sign(forward, 0, now, name, keyname);
+-}
+- 
+-/* We either have a a reply (header non-NULL, or we need to start by looking in the cache */ 
+-static int do_check_sign(struct frec *forward, int status, time_t now, char *name, char *keyname)
+-{
+-  /* get domain we're checking back from blockdata store, it's stored on the original query. */
+-  while (forward->dependent && !forward->orig_domain)
+-    forward = forward->dependent;
+-
+-  blockdata_retrieve(forward->orig_domain, forward->name_len, name);
+-  
+-  while (1)
+-    {
+-      char *p; 
+-
+-      if (status == 0)
+-      {
+-        struct crec *crecp;
+-
+-        /* Haven't received answer, see if in cache */
+-        if (!(crecp = cache_find_by_name(NULL, &name[forward->name_start], now, F_DS)))
+-          {
+-            /* put name of DS record we're missing into keyname */
+-            strcpy(keyname, &name[forward->name_start]);
+-            /* and wait for reply to arrive */
+-            return STAT_NEED_DS_NEG;
+-          }
+-
+-        /* F_DNSSECOK misused in DS cache records to non-existance of NS record */ 
+-        if (!(crecp->flags & F_NEG))
+-          status = STAT_SECURE;
+-        else if (crecp->flags & F_DNSSECOK)
+-          status = STAT_NO_DS;
+-        else
+-          status = STAT_NO_NS;
+-      }
+-      
+-      /* Have entered non-signed part of DNS tree. */ 
+-      if (status == STAT_NO_DS)
+-      return forward->dependent ? STAT_INSECURE_DS : STAT_INSECURE;
+-
+-      if (status == STAT_BOGUS)
+-      return STAT_BOGUS;
+-
+-      if (status == STAT_NO_SIG && *keyname != 0)
+-      {
+-        /* There is a validated CNAME chain that doesn't end in a DS record. Start 
+-           the search again in that domain. */
+-        blockdata_free(forward->orig_domain);
+-        forward->name_start = strlen(keyname);
+-        forward->name_len = forward->name_start + 1;
+-        if (!(forward->orig_domain = blockdata_alloc(keyname, forward->name_len)))
+-          return STAT_BOGUS;
+-        
+-        strcpy(name, keyname);
+-        status = 0; /* force to cache when we iterate. */
+-        continue;
+-      }
+-      
+-      /* There's a proven DS record, or we're within a zone, where there doesn't need
+-       to be a DS record. Add a name and try again. 
+-       If we've already tried the whole name, then fail */
+-
+-      if (forward->name_start == 0)
+-      return STAT_BOGUS;
+-      
+-      for (p = &name[forward->name_start-2]; (*p != '.') && (p != name); p--);
+-      
+-      if (p != name)
+-      p++;
+-      
+-      forward->name_start = p - name;
+-      status = 0; /* force to cache when we iterate. */
+-    }
+-}
+-
+-/* Move down from the root, until we find a signed non-existance of a DS, in which case
+-   an unsigned answer is OK, or we find a signed DS, in which case there should be 
+-   a signature, and the answer is BOGUS */
+-static int  tcp_check_for_unsigned_zone(time_t now, struct dns_header *header, size_t plen, int class, char *name, 
+-                                      char *keyname, struct server *server, int *keycount)
+-{
+-  size_t m;
+-  unsigned char *packet, *payload;
+-  u16 *length;
+-  int status, name_len;
+-  struct blockdata *block;
+-
+-  char *name_start;
+-
+-  /* Get first insecure entry in CNAME chain */
+-  status = tcp_key_recurse(now, STAT_CHASE_CNAME, header, plen, class, name, keyname, server, keycount);
+-  if (status == STAT_BOGUS)
+-    return STAT_BOGUS;
+-  
+-  if (!(packet = whine_malloc(65536 + MAXDNAME + RRFIXEDSZ + sizeof(u16))))
+-    return STAT_BOGUS;
+-  
+-  payload = &packet[2];
+-  header = (struct dns_header *)payload;
+-  length = (u16 *)packet;
+-
+-  /* Stash the name away, since the buffer will be trashed when we recurse */
+-  name_len = strlen(name) + 1;
+-  name_start = name + name_len - 1;
+-  
+-  if (!(block = blockdata_alloc(name, name_len)))
+-    {
+-      free(packet);
+-      return STAT_BOGUS;
+-    }
+-
+-  while (1)
+-    {
+-      unsigned char c1, c2;
+-      struct crec *crecp;
+-
+-      if (--(*keycount) == 0)
+-      {
+-        free(packet);
+-        blockdata_free(block);
+-        return STAT_BOGUS;    
+-      }
+-      
+-      while ((crecp = cache_find_by_name(NULL, name_start, now, F_DS)))
+-      {      
+-        if ((crecp->flags & F_NEG) && (crecp->flags & F_DNSSECOK))
+-          {
+-            /* Found a secure denial of DS - delegation is indeed insecure */
+-            free(packet);
+-            blockdata_free(block);
+-            return STAT_INSECURE;
+-          }
+-      
+-        /* Here, either there's a secure DS, or no NS and no DS, and therefore no delegation.
+-           Add another label and continue. */
+- 
+-        if (name_start == name)
+-          {
+-            free(packet);
+-            blockdata_free(block);
+-            return STAT_BOGUS; /* run out of labels */
+-          }
+-        
+-        name_start -= 2;
+-        while (*name_start != '.' && name_start != name) 
+-          name_start--;
+-        if (name_start != name)
+-          name_start++;
+-      }
+-      
+-      /* Can't find it in the cache, have to send a query */
+-
+-      m = dnssec_generate_query(header, ((char *) header) + 65536, name_start, class, T_DS, &server->addr, server->edns_pktsz);
+-      
+-      *length = htons(m);
+-      
+-      if (read_write(server->tcpfd, packet, m + sizeof(u16), 0) &&
+-        read_write(server->tcpfd, &c1, 1, 1) &&
+-        read_write(server->tcpfd, &c2, 1, 1) &&
+-        read_write(server->tcpfd, payload, (c1 << 8) | c2, 1))
+-      {
+-        m = (c1 << 8) | c2;
+-        
+-        /* Note this trashes all three name workspaces */
+-        status = tcp_key_recurse(now, STAT_NEED_DS_NEG, header, m, class, name, keyname, server, keycount);
+-        
+-        if (status == STAT_NO_DS)
+-          {
+-            /* Found a secure denial of DS - delegation is indeed insecure */
+-            free(packet);
+-            blockdata_free(block);
+-            return STAT_INSECURE;
+-          }
+-        
+-        if (status == STAT_NO_SIG && *keyname != 0)
+-          {
+-            /* There is a validated CNAME chain that doesn't end in a DS record. Start 
+-               the search again in that domain. */
+-            blockdata_free(block);
+-            name_len = strlen(keyname) + 1;
+-            name_start = name + name_len - 1;
+-            
+-            if (!(block = blockdata_alloc(keyname, name_len)))
+-              return STAT_BOGUS;
+-            
+-            strcpy(name, keyname);
+-            continue;
+-          }
+-        
+-        if (status == STAT_BOGUS)
+-          {
+-            free(packet);
+-            blockdata_free(block);
+-            return STAT_BOGUS;
+-          }
+-        
+-        /* Here, either there's a secure DS, or no NS and no DS, and therefore no delegation.
+-           Add another label and continue. */
+-        
+-        /* Get name we're checking back. */
+-        blockdata_retrieve(block, name_len, name);
+-        
+-        if (name_start == name)
+-          {
+-            free(packet);
+-            blockdata_free(block);
+-            return STAT_BOGUS; /* run out of labels */
+-          }
+-        
+-        name_start -= 2;
+-        while (*name_start != '.' && name_start != name) 
+-          name_start--;
+-        if (name_start != name)
+-          name_start++;
+-      }
+-      else
+-      {
+-        /* IO failure */
+-        free(packet);
+-        blockdata_free(block);
+-        return STAT_BOGUS; /* run out of labels */
+-      }
+-    }
+-}
+-
+ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, size_t n, 
+                          int class, char *name, char *keyname, struct server *server, int *keycount)
+ {
+   /* Recurse up the key heirarchy */
+   int new_status;
++  unsigned char *packet = NULL;
++  size_t m; 
++  unsigned char *payload = NULL;
++  struct dns_header *new_header = NULL;
++  u16 *length = NULL;
++  unsigned char c1, c2;
+-  /* limit the amount of work we do, to avoid cycling forever on loops in the DNS */
+-  if (--(*keycount) == 0)
+-    return STAT_INSECURE;
+-  
+-  if (status == STAT_NEED_KEY)
+-    new_status = dnssec_validate_by_ds(now, header, n, name, keyname, class);
+-  else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG)
++  while (1)
+     {
+-      new_status = dnssec_validate_ds(now, header, n, name, keyname, class);
+-      if (status == STAT_NEED_DS)
++      /* limit the amount of work we do, to avoid cycling forever on loops in the DNS */
++      if (--(*keycount) == 0)
++      new_status = STAT_ABANDONED;
++      else if (status == STAT_NEED_KEY)
++      new_status = dnssec_validate_by_ds(now, header, n, name, keyname, class);
++      else if (status == STAT_NEED_DS)
++      new_status = dnssec_validate_ds(now, header, n, name, keyname, class);
++      else 
++      new_status = dnssec_validate_reply(now, header, n, name, keyname, &class, option_bool(OPT_DNSSEC_NO_SIGN), NULL, NULL);
++      
++      if (new_status != STAT_NEED_DS && new_status != STAT_NEED_KEY)
++      break;
++
++      /* Can't validate because we need a key/DS whose name now in keyname.
++       Make query for same, and recurse to validate */
++      if (!packet)
+       {
+-        if (new_status == STAT_NO_DS)
+-          new_status = STAT_INSECURE_DS;
+-        if (new_status == STAT_NO_SIG)
+-         {
+-           if (option_bool(OPT_DNSSEC_NO_SIGN))
+-             {
+-               new_status = tcp_check_for_unsigned_zone(now, header, n, class, name, keyname, server, keycount);
+-               if (new_status == STAT_INSECURE)
+-                 new_status = STAT_INSECURE_DS;
+-             }
+-           else
+-             new_status = STAT_INSECURE_DS;
+-         }
+-        else if (new_status == STAT_NO_NS)
+-          new_status = STAT_BOGUS;
++        packet = whine_malloc(65536 + MAXDNAME + RRFIXEDSZ + sizeof(u16));
++        payload = &packet[2];
++        new_header = (struct dns_header *)payload;
++        length = (u16 *)packet;
+       }
+-    }
+-  else if (status == STAT_CHASE_CNAME)
+-    new_status = dnssec_chase_cname(now, header, n, name, keyname);
+-  else 
+-    {
+-      new_status = dnssec_validate_reply(now, header, n, name, keyname, &class, NULL, NULL);
+       
+-      if (new_status == STAT_NO_SIG)
++      if (!packet)
+       {
+-        if (option_bool(OPT_DNSSEC_NO_SIGN))
+-          new_status = tcp_check_for_unsigned_zone(now, header, n, class, name, keyname, server, keycount);
+-        else
+-          new_status = STAT_INSECURE;
++        new_status = STAT_ABANDONED;
++        break;
+       }
+-    }
+-
+-  /* Can't validate because we need a key/DS whose name now in keyname.
+-     Make query for same, and recurse to validate */
+-  if (new_status == STAT_NEED_DS || new_status == STAT_NEED_KEY)
+-    {
+-      size_t m; 
+-      unsigned char *packet = whine_malloc(65536 + MAXDNAME + RRFIXEDSZ + sizeof(u16));
+-      unsigned char *payload = &packet[2];
+-      struct dns_header *new_header = (struct dns_header *)payload;
+-      u16 *length = (u16 *)packet;
+-      unsigned char c1, c2;
+-       
+-      if (!packet)
+-      return STAT_INSECURE;
+-
+-    another_tcp_key:
++       
+       m = dnssec_generate_query(new_header, ((char *) new_header) + 65536, keyname, class, 
+                               new_status == STAT_NEED_KEY ? T_DNSKEY : T_DS, &server->addr, server->edns_pktsz);
+       
+@@ -1733,65 +1364,22 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si
+         !read_write(server->tcpfd, &c1, 1, 1) ||
+         !read_write(server->tcpfd, &c2, 1, 1) ||
+         !read_write(server->tcpfd, payload, (c1 << 8) | c2, 1))
+-      new_status = STAT_INSECURE;
+-      else
+       {
+-        m = (c1 << 8) | c2;
+-        
+-        new_status = tcp_key_recurse(now, new_status, new_header, m, class, name, keyname, server, keycount);
+-        
+-        if (new_status == STAT_SECURE)
+-          {
+-            /* Reached a validated record, now try again at this level.
+-               Note that we may get ANOTHER NEED_* if an answer needs more than one key.
+-               If so, go round again. */
+-            
+-            if (status == STAT_NEED_KEY)
+-              new_status = dnssec_validate_by_ds(now, header, n, name, keyname, class);
+-            else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG)
+-              {
+-                new_status = dnssec_validate_ds(now, header, n, name, keyname, class);
+-                if (status == STAT_NEED_DS)
+-                  {
+-                    if (new_status == STAT_NO_DS)
+-                      new_status = STAT_INSECURE_DS;
+-                    else if (new_status == STAT_NO_SIG)
+-                      {
+-                        if (option_bool(OPT_DNSSEC_NO_SIGN))
+-                          {
+-                            new_status = tcp_check_for_unsigned_zone(now, header, n, class, name, keyname, server, keycount); 
+-                            if (new_status == STAT_INSECURE)
+-                              new_status = STAT_INSECURE_DS;
+-                          }
+-                        else
+-                          new_status = STAT_INSECURE_DS;
+-                      }
+-                    else if (new_status == STAT_NO_NS)
+-                      new_status = STAT_BOGUS;
+-                  }
+-              }
+-            else if (status == STAT_CHASE_CNAME)
+-              new_status = dnssec_chase_cname(now, header, n, name, keyname);
+-            else 
+-              {
+-                new_status = dnssec_validate_reply(now, header, n, name, keyname, &class, NULL, NULL);
+-                
+-                if (new_status == STAT_NO_SIG)
+-                  {
+-                    if (option_bool(OPT_DNSSEC_NO_SIGN))
+-                      new_status = tcp_check_for_unsigned_zone(now, header, n, class, name, keyname, server, keycount);
+-                    else
+-                      new_status = STAT_INSECURE;
+-                  }
+-              }
+-            
+-            if (new_status == STAT_NEED_DS || new_status == STAT_NEED_KEY)
+-              goto another_tcp_key;
+-          }
++        new_status = STAT_ABANDONED;
++        break;
+       }
++
++      m = (c1 << 8) | c2;
+       
+-      free(packet);
++      new_status = tcp_key_recurse(now, new_status, new_header, m, class, name, keyname, server, keycount);
++      
++      if (new_status != STAT_OK)
++      break;
+     }
++
++  if (packet)
++    free(packet);
++    
+   return new_status;
+ }
+ #endif
+@@ -2075,19 +1663,10 @@ unsigned char *tcp_request(int confd, time_t now,
+                     if (option_bool(OPT_DNSSEC_VALID) && !checking_disabled)
+                       {
+                         int keycount = DNSSEC_WORK; /* Limit to number of DNSSEC questions, to catch loops and avoid filling cache. */
+-                        int status = tcp_key_recurse(now, STAT_TRUNCATED, header, m, 0, daemon->namebuff, daemon->keyname, last_server, &keycount);
++                        int status = tcp_key_recurse(now, STAT_OK, header, m, 0, daemon->namebuff, daemon->keyname, last_server, &keycount);
+                         char *result, *domain = "result";
+-
+-                        if (status == STAT_INSECURE_DS)
+-                          {
+-                            /* We only cache sigs when we've validated a reply.
+-                               Avoid caching a reply with sigs if there's a vaildated break in the 
+-                               DS chain, so we don't return replies from cache missing sigs. */
+-                            status = STAT_INSECURE;
+-                            no_cache_dnssec = 1;
+-                          }
+                         
+-                        if (keycount == 0)
++                        if (status == STAT_ABANDONED)
+                           {
+                             result = "ABANDONED";
+                             status = STAT_BOGUS;
+@@ -2179,7 +1758,6 @@ static struct frec *allocate_frec(time_t now)
+       f->dependent = NULL;
+       f->blocking_query = NULL;
+       f->stash = NULL;
+-      f->orig_domain = NULL;
+ #endif
+       daemon->frec_list = f;
+     }
+@@ -2248,12 +1826,6 @@ static void free_frec(struct frec *f)
+       f->stash = NULL;
+     }
+-  if (f->orig_domain)
+-    {
+-      blockdata_free(f->orig_domain);
+-      f->orig_domain = NULL;
+-    }
+-
+   /* Anything we're waiting on is pointless now, too */
+   if (f->blocking_query)
+     free_frec(f->blocking_query);
+@@ -2281,14 +1853,23 @@ struct frec *get_new_frec(time_t now, int *wait, int force)
+       target = f;
+     else 
+       {
+-      if (difftime(now, f->time) >= 4*TIMEOUT)
+-        {
+-          free_frec(f);
+-          target = f;
+-        }
+-      
+-      if (!oldest || difftime(f->time, oldest->time) <= 0)
+-        oldest = f;
++#ifdef HAVE_DNSSEC
++          /* Don't free DNSSEC sub-queries here, as we may end up with
++             dangling references to them. They'll go when their "real" query 
++             is freed. */
++          if (!f->dependent)
++#endif
++            {
++              if (difftime(now, f->time) >= 4*TIMEOUT)
++                {
++                  free_frec(f);
++                  target = f;
++                }
++           
++          
++              if (!oldest || difftime(f->time, oldest->time) <= 0)
++                oldest = f;
++            }
+       }
+   if (target)
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/017-Abandon_caching_RRSIGs_and_returning_them_from_cache.patch b/src/patches/dnsmasq/017-Abandon_caching_RRSIGs_and_returning_them_from_cache.patch
new file mode 100644 (file)
index 0000000..5ffaf97
--- /dev/null
@@ -0,0 +1,612 @@
+From 93be5b1e023b0c661e1ec2cd6d811a8ec9055c49 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 15 Dec 2015 12:04:40 +0000
+Subject: [PATCH] Abandon caching RRSIGs and returning them from cache.
+
+The list of exceptions to being able to locally answer
+cached data for validated records when DNSSEC data is requested
+was getting too long, so don't ever do that. This means
+that the cache no longer has to hold RRSIGS and allows
+us to lose lots of code. Note that cached validated
+answers are still returned as long as do=0
+---
+ src/cache.c   |   38 ++---------
+ src/dnsmasq.h |   10 +--
+ src/dnssec.c  |   94 ++++-----------------------
+ src/rfc1035.c |  197 ++++++---------------------------------------------------
+ 4 files changed, 42 insertions(+), 297 deletions(-)
+
+diff --git a/src/cache.c b/src/cache.c
+index 1b76b67..51ba7cc 100644
+--- a/src/cache.c
++++ b/src/cache.c
+@@ -189,12 +189,7 @@ static void cache_hash(struct crec *crecp)
+ static void cache_blockdata_free(struct crec *crecp)
+ {
+   if (crecp->flags & F_DNSKEY)
+-    {
+-      if (crecp->flags & F_DS)
+-      blockdata_free(crecp->addr.sig.keydata);
+-      else
+-      blockdata_free(crecp->addr.key.keydata);
+-    }
++    blockdata_free(crecp->addr.key.keydata);
+   else if ((crecp->flags & F_DS) && !(crecp->flags & F_NEG))
+     blockdata_free(crecp->addr.ds.keydata);
+ }
+@@ -369,13 +364,8 @@ static struct crec *cache_scan_free(char *name, struct all_addr *addr, time_t no
+               }
+             
+ #ifdef HAVE_DNSSEC
+-            /* Deletion has to be class-sensitive for DS, DNSKEY, RRSIG, also 
+-               type-covered sensitive for  RRSIG */
+-            if ((flags & (F_DNSKEY | F_DS)) &&
+-                (flags & (F_DNSKEY | F_DS)) == (crecp->flags & (F_DNSKEY | F_DS)) &&
+-                crecp->uid == addr->addr.dnssec.class &&
+-                (!((flags & (F_DS | F_DNSKEY)) == (F_DS | F_DNSKEY)) || 
+-                 crecp->addr.sig.type_covered == addr->addr.dnssec.type))
++            /* Deletion has to be class-sensitive for DS and DNSKEY */
++            if ((flags & crecp->flags & (F_DNSKEY | F_DS)) && crecp->uid == addr->addr.dnssec.class)
+               {
+                 if (crecp->flags & F_CONFIG)
+                   return crecp;
+@@ -532,13 +522,9 @@ struct crec *cache_insert(char *name, struct all_addr *addr,
+           struct all_addr free_addr = new->addr.addr;;
+ #ifdef HAVE_DNSSEC
+-          /* For DNSSEC records, addr holds class and type_covered for RRSIG */
++          /* For DNSSEC records, addr holds class. */
+           if (new->flags & (F_DS | F_DNSKEY))
+-            {
+-              free_addr.addr.dnssec.class = new->uid;
+-              if ((new->flags & (F_DS | F_DNSKEY)) == (F_DS | F_DNSKEY))
+-                free_addr.addr.dnssec.type = new->addr.sig.type_covered;
+-            }
++            free_addr.addr.dnssec.class = new->uid;
+ #endif
+           
+           free_avail = 1; /* Must be free space now. */
+@@ -653,9 +639,6 @@ struct crec *cache_find_by_name(struct crec *crecp, char *name, time_t now, unsi
+         if (!is_expired(now, crecp) && !is_outdated_cname_pointer(crecp))
+           {
+             if ((crecp->flags & F_FORWARD) && 
+-#ifdef HAVE_DNSSEC
+-                (((crecp->flags & (F_DNSKEY | F_DS)) == (prot & (F_DNSKEY | F_DS))) || (prot & F_NSIGMATCH)) &&
+-#endif
+                 (crecp->flags & prot) &&
+                 hostname_isequal(cache_get_name(crecp), name))
+               {
+@@ -713,9 +696,6 @@ struct crec *cache_find_by_name(struct crec *crecp, char *name, time_t now, unsi
+   if (ans && 
+       (ans->flags & F_FORWARD) &&
+-#ifdef HAVE_DNSSEC
+-      (((ans->flags & (F_DNSKEY | F_DS)) == (prot & (F_DNSKEY | F_DS))) || (prot & F_NSIGMATCH)) &&
+-#endif
+       (ans->flags & prot) &&     
+       hostname_isequal(cache_get_name(ans), name))
+     return ans;
+@@ -1472,11 +1452,7 @@ void dump_cache(time_t now)
+ #ifdef HAVE_DNSSEC
+           else if (cache->flags & F_DS)
+             {
+-              if (cache->flags & F_DNSKEY)
+-                /* RRSIG */
+-                sprintf(a, "%5u %3u %s", cache->addr.sig.keytag,
+-                        cache->addr.sig.algo, querystr("", cache->addr.sig.type_covered));
+-              else if (!(cache->flags & F_NEG))
++              if (!(cache->flags & F_NEG))
+                 sprintf(a, "%5u %3u %3u", cache->addr.ds.keytag,
+                         cache->addr.ds.algo, cache->addr.ds.digest);
+             }
+@@ -1502,8 +1478,6 @@ void dump_cache(time_t now)
+           else if (cache->flags & F_CNAME)
+             t = "C";
+ #ifdef HAVE_DNSSEC
+-          else if ((cache->flags & (F_DS | F_DNSKEY)) == (F_DS | F_DNSKEY))
+-            t = "G"; /* DNSKEY and DS set -> RRISG */
+           else if (cache->flags & F_DS)
+             t = "S";
+           else if (cache->flags & F_DNSKEY)
+diff --git a/src/dnsmasq.h b/src/dnsmasq.h
+index 023a1cf..4344cae 100644
+--- a/src/dnsmasq.h
++++ b/src/dnsmasq.h
+@@ -398,14 +398,9 @@ struct crec {
+       unsigned char algo;
+       unsigned char digest; 
+     } ds; 
+-    struct {
+-      struct blockdata *keydata;
+-      unsigned short keylen, type_covered, keytag;
+-      char algo;
+-    } sig;
+   } addr;
+   time_t ttd; /* time to die */
+-  /* used as class if DNSKEY/DS/RRSIG, index to source for F_HOSTS */
++  /* used as class if DNSKEY/DS, index to source for F_HOSTS */
+   unsigned int uid; 
+   unsigned short flags;
+   union {
+@@ -445,8 +440,7 @@ struct crec {
+ #define F_SECSTAT   (1u<<24)
+ #define F_NO_RR     (1u<<25)
+ #define F_IPSET     (1u<<26)
+-#define F_NSIGMATCH (1u<<27)
+-#define F_NOEXTRA   (1u<<28)
++#define F_NOEXTRA   (1u<<27)
+ /* Values of uid in crecs with F_CONFIG bit set. */
+ #define SRC_INTERFACE 0
+diff --git a/src/dnssec.c b/src/dnssec.c
+index de7b335..1ae03a6 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1004,7 +1004,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+ {
+   unsigned char *psave, *p = (unsigned char *)(header+1);
+   struct crec *crecp, *recp1;
+-  int rc, j, qtype, qclass, ttl, rdlen, flags, algo, valid, keytag, type_covered;
++  int rc, j, qtype, qclass, ttl, rdlen, flags, algo, valid, keytag;
+   struct blockdata *key;
+   struct all_addr a;
+@@ -1115,7 +1115,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+   if (valid)
+     {
+-      /* DNSKEY RRset determined to be OK, now cache it and the RRsigs that sign it. */
++      /* DNSKEY RRset determined to be OK, now cache it. */
+       cache_start_insert();
+       
+       p = skip_questions(header, plen);
+@@ -1155,7 +1155,10 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+                 if ((key = blockdata_alloc((char*)p, rdlen - 4)))
+                   {
+                     if (!(recp1 = cache_insert(name, &a, now, ttl, F_FORWARD | F_DNSKEY | F_DNSSECOK)))
+-                      blockdata_free(key);
++                      {
++                        blockdata_free(key);
++                        return STAT_BOGUS;
++                      }
+                     else
+                       {
+                         a.addr.keytag = keytag;
+@@ -1169,38 +1172,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+                       }
+                   }
+               }
+-            else if (qtype == T_RRSIG)
+-              {
+-                /* RRSIG, cache if covers DNSKEY RRset */
+-                if (rdlen < 18)
+-                  return STAT_BOGUS; /* bad packet */
+-                
+-                GETSHORT(type_covered, p);
+-                
+-                if (type_covered == T_DNSKEY)
+-                  {
+-                    a.addr.dnssec.class = class;
+-                    a.addr.dnssec.type = type_covered;
+-                    
+-                    algo = *p++;
+-                    p += 13; /* labels, orig_ttl, expiration, inception */
+-                    GETSHORT(keytag, p);      
+-                    if ((key = blockdata_alloc((char*)psave, rdlen)))
+-                      {
+-                        if (!(crecp = cache_insert(name, &a, now, ttl,  F_FORWARD | F_DNSKEY | F_DS)))
+-                          blockdata_free(key);
+-                        else
+-                          {
+-                            crecp->addr.sig.keydata = key;
+-                            crecp->addr.sig.keylen = rdlen;
+-                            crecp->addr.sig.keytag = keytag;
+-                            crecp->addr.sig.type_covered = type_covered;
+-                            crecp->addr.sig.algo = algo;
+-                          }
+-                      }
+-                  }
+-              }
+-            
++                    
+             p = psave;
+           }
+@@ -1326,7 +1298,8 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+         cache_start_insert();
+         
+         a.addr.dnssec.class = class;
+-        cache_insert(name, &a, now, ttl, flags);
++        if (!cache_insert(name, &a, now, ttl, flags))
++          return STAT_BOGUS;
+         
+         cache_end_insert();  
+         
+@@ -2028,14 +2001,13 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+         /* Not done, validate now */
+         if (j == i)
+           {
+-            int ttl, keytag, algo, digest, type_covered, sigcnt, rrcnt;
++            int ttl, keytag, algo, digest, sigcnt, rrcnt;
+             unsigned char *psave;
+             struct all_addr a;
+             struct blockdata *key;
+             struct crec *crecp;
+             char *wildname;
+-            int have_wildcard = 0;
+-
++            
+             if (!explore_rrset(header, plen, class1, type1, name, keyname, &sigcnt, &rrcnt))
+               return STAT_BOGUS;
+@@ -2096,8 +2068,6 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+                           
+                 if (rc == STAT_SECURE_WILDCARD)
+                   {
+-                    have_wildcard = 1;
+-                    
+                     /* An attacker replay a wildcard answer with a different
+                        answer and overlay a genuine RR. To prove this
+                        hasn't happened, the answer must prove that
+@@ -2119,7 +2089,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+                       return rc;
+                   } 
+                 
+-                /* Cache RRsigs in answer section, and if we just validated a DS RRset, cache it */
++                /* If we just validated a DS RRset, cache it */
+                 /* Also note if the RRset is the answer to the question, or the target of a CNAME */
+                 cache_start_insert();
+                 
+@@ -2168,45 +2138,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+                                   } 
+                               }
+                           }
+-                        else if (type2 == T_RRSIG)
+-                          {
+-                            if (rdlen2 < 18)
+-                              return STAT_BOGUS; /* bad packet */
+-                            
+-                            GETSHORT(type_covered, p2);
+-                            
+-                            if (type_covered == type1 && 
+-                                (type_covered == T_A || type_covered == T_AAAA ||
+-                                 type_covered == T_CNAME || type_covered == T_DS || 
+-                                 type_covered == T_DNSKEY || type_covered == T_PTR)) 
+-                              {
+-                                a.addr.dnssec.type = type_covered;
+-                                a.addr.dnssec.class = class1;
+-                                
+-                                algo = *p2++;
+-                                p2 += 13; /* labels, orig_ttl, expiration, inception */
+-                                GETSHORT(keytag, p2);
+-                                
+-                                /* We don't cache sigs for wildcard answers, because to reproduce the
+-                                   answer from the cache will require one or more NSEC/NSEC3 records 
+-                                   which we don't cache. The lack of the RRSIG ensures that a query for
+-                                   this RRset asking for a secure answer will always be forwarded. */
+-                                if (!have_wildcard && (key = blockdata_alloc((char*)psave, rdlen2)))
+-                                  {
+-                                    if (!(crecp = cache_insert(name, &a, now, ttl,  F_FORWARD | F_DNSKEY | F_DS)))
+-                                      blockdata_free(key);
+-                                    else
+-                                      {
+-                                        crecp->addr.sig.keydata = key;
+-                                        crecp->addr.sig.keylen = rdlen2;
+-                                        crecp->addr.sig.keytag = keytag;
+-                                        crecp->addr.sig.type_covered = type_covered;
+-                                        crecp->addr.sig.algo = algo;
+-                                      }
+-                                  }
+-                              }
+-                          }
+-                        
++
+                         p2 = psave;
+                       }
+                     
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index 4eb1772..def8fa0 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -1275,11 +1275,9 @@ int check_for_local_domain(char *name, time_t now)
+   struct naptr *naptr;
+   /* Note: the call to cache_find_by_name is intended to find any record which matches
+-     ie A, AAAA, CNAME, DS. Because RRSIG records are marked by setting both F_DS and F_DNSKEY,
+-     cache_find_by name ordinarily only returns records with an exact match on those bits (ie
+-     for the call below, only DS records). The F_NSIGMATCH bit changes this behaviour */
++     ie A, AAAA, CNAME. */
+-  if ((crecp = cache_find_by_name(NULL, name, now, F_IPV4 | F_IPV6 | F_CNAME | F_DS | F_NO_RR | F_NSIGMATCH)) &&
++  if ((crecp = cache_find_by_name(NULL, name, now, F_IPV4 | F_IPV6 | F_CNAME |F_NO_RR)) &&
+       (crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)))
+     return 1;
+   
+@@ -1566,9 +1564,11 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+       GETSHORT(flags, pheader);
+       
+       if ((sec_reqd = flags & 0x8000))
+-      *do_bit = 1;/* do bit */ 
++      {
++        *do_bit = 1;/* do bit */ 
++        *ad_reqd = 1;
++      }
+-      *ad_reqd = 1;
+       dryrun = 1;
+     }
+@@ -1636,98 +1636,6 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+           }
+       }
+-#ifdef HAVE_DNSSEC
+-      if (option_bool(OPT_DNSSEC_VALID) && (qtype == T_DNSKEY || qtype == T_DS))
+-      {
+-        int gotone = 0;
+-        struct blockdata *keydata;
+-
+-        /* Do we have RRSIG? Can't do DS or DNSKEY otherwise. */
+-        if (sec_reqd)
+-          {
+-            crecp = NULL;
+-            while ((crecp = cache_find_by_name(crecp, name, now, F_DNSKEY | F_DS)))
+-              if (crecp->uid == qclass && crecp->addr.sig.type_covered == qtype)
+-                break;
+-          }
+-        
+-        if (!sec_reqd || crecp)
+-          {
+-            if (qtype == T_DS)
+-              {
+-                crecp = NULL;
+-                while ((crecp = cache_find_by_name(crecp, name, now, F_DS)))
+-                  if (crecp->uid == qclass)
+-                    {
+-                      gotone = 1; 
+-                      if (!dryrun)
+-                        {
+-                          if (crecp->flags & F_NEG)
+-                            {
+-                              if (crecp->flags & F_NXDOMAIN)
+-                                nxdomain = 1;
+-                              log_query(F_UPSTREAM, name, NULL, "no DS");     
+-                            }
+-                          else if ((keydata = blockdata_retrieve(crecp->addr.ds.keydata, crecp->addr.ds.keylen, NULL)))
+-                            {                                               
+-                              struct all_addr a;
+-                              a.addr.keytag =  crecp->addr.ds.keytag;
+-                              log_query(F_KEYTAG | (crecp->flags & F_CONFIG), name, &a, "DS keytag %u");
+-                              if (add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
+-                                                      crec_ttl(crecp, now), &nameoffset,
+-                                                      T_DS, qclass, "sbbt", 
+-                                                      crecp->addr.ds.keytag, crecp->addr.ds.algo, 
+-                                                      crecp->addr.ds.digest, crecp->addr.ds.keylen, keydata))
+-                                anscount++;
+-                              
+-                            } 
+-                        }
+-                    }
+-              }
+-            else /* DNSKEY */
+-              {
+-                crecp = NULL;
+-                while ((crecp = cache_find_by_name(crecp, name, now, F_DNSKEY)))
+-                  if (crecp->uid == qclass)
+-                    {
+-                      gotone = 1;
+-                      if (!dryrun && (keydata = blockdata_retrieve(crecp->addr.key.keydata, crecp->addr.key.keylen, NULL)))
+-                        {                                                   
+-                          struct all_addr a;
+-                          a.addr.keytag =  crecp->addr.key.keytag;
+-                          log_query(F_KEYTAG | (crecp->flags & F_CONFIG), name, &a, "DNSKEY keytag %u");
+-                          if (add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
+-                                                  crec_ttl(crecp, now), &nameoffset,
+-                                                  T_DNSKEY, qclass, "sbbt", 
+-                                                  crecp->addr.key.flags, 3, crecp->addr.key.algo, crecp->addr.key.keylen, keydata))
+-                            anscount++;
+-                        }
+-                    }
+-              }
+-          }
+-        
+-        /* Now do RRSIGs */
+-        if (gotone)
+-          {
+-            ans = 1;
+-            auth = 0;
+-            if (!dryrun && sec_reqd)
+-              {
+-                crecp = NULL;
+-                while ((crecp = cache_find_by_name(crecp, name, now, F_DNSKEY | F_DS)))
+-                  if (crecp->uid == qclass && crecp->addr.sig.type_covered == qtype &&
+-                      (keydata = blockdata_retrieve(crecp->addr.sig.keydata, crecp->addr.sig.keylen, NULL)))
+-                    {
+-                      add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
+-                                          crec_ttl(crecp, now), &nameoffset,
+-                                          T_RRSIG, qclass, "t", crecp->addr.sig.keylen, keydata);
+-                      anscount++;
+-                    }
+-              }
+-          }
+-      }
+-#endif             
+-      
+       if (qclass == C_IN)
+       {
+         struct txt_record *t;
+@@ -1736,6 +1644,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+           if ((t->class == qtype || qtype == T_ANY) && hostname_isequal(name, t->name))
+             {
+               ans = 1;
++              sec_data = 0;
+               if (!dryrun)
+                 {
+                   log_query(F_CONFIG | F_RRNAME, name, NULL, "<RR>");
+@@ -1792,6 +1701,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+             
+             if (intr)
+               {
++                sec_data = 0;
+                 ans = 1;
+                 if (!dryrun)
+                   {
+@@ -1805,6 +1715,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+             else if (ptr)
+               {
+                 ans = 1;
++                sec_data = 0;
+                 if (!dryrun)
+                   {
+                     log_query(F_CONFIG | F_RRNAME, name, NULL, "<PTR>");
+@@ -1819,38 +1730,8 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+               }
+             else if ((crecp = cache_find_by_addr(NULL, &addr, now, is_arpa)))
+               {
+-                if (!(crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) && sec_reqd)
+-                  {
+-                    if (!option_bool(OPT_DNSSEC_VALID) || ((crecp->flags & F_NEG) && (crecp->flags & F_DNSSECOK)))
+-                      crecp = NULL;
+-#ifdef HAVE_DNSSEC
+-                    else if (crecp->flags & F_DNSSECOK)
+-                      {
+-                        int gotsig = 0;
+-                        struct crec *rr_crec = NULL;
+-
+-                        while ((rr_crec = cache_find_by_name(rr_crec, name, now, F_DS | F_DNSKEY)))
+-                          {
+-                            if (rr_crec->addr.sig.type_covered == T_PTR && rr_crec->uid == C_IN)
+-                              {
+-                                char *sigdata = blockdata_retrieve(rr_crec->addr.sig.keydata, rr_crec->addr.sig.keylen, NULL);
+-                                gotsig = 1;
+-                                
+-                                if (!dryrun && 
+-                                    add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
+-                                                        rr_crec->ttd - now, &nameoffset,
+-                                                        T_RRSIG, C_IN, "t", crecp->addr.sig.keylen, sigdata))
+-                                  anscount++;
+-                              }
+-                          } 
+-                        
+-                        if (!gotsig)
+-                          crecp = NULL;
+-                      }
+-#endif
+-                  }
+-
+-                if (crecp)
++                /* Don't use cache when DNSSEC data required. */
++                if ((crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) || !sec_reqd || !(crecp->flags & F_DNSSECOK))
+                   {
+                     do 
+                       { 
+@@ -1860,19 +1741,19 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+                         
+                         if (!(crecp->flags & F_DNSSECOK))
+                           sec_data = 0;
+-                        
++                         
++                        ans = 1;
++                         
+                         if (crecp->flags & F_NEG)
+                           {
+-                            ans = 1;
+                             auth = 0;
+                             if (crecp->flags & F_NXDOMAIN)
+                               nxdomain = 1;
+                             if (!dryrun)
+                               log_query(crecp->flags & ~F_FORWARD, name, &addr, NULL);
+                           }
+-                        else if ((crecp->flags & (F_HOSTS | F_DHCP)) || !sec_reqd || option_bool(OPT_DNSSEC_VALID))
++                        else
+                           {
+-                            ans = 1;
+                             if (!(crecp->flags & (F_HOSTS | F_DHCP)))
+                               auth = 0;
+                             if (!dryrun)
+@@ -1892,6 +1773,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+             else if (is_rev_synth(is_arpa, &addr, name))
+               {
+                 ans = 1;
++                sec_data = 0;
+                 if (!dryrun)
+                   {
+                     log_query(F_CONFIG | F_REVERSE | is_arpa, name, &addr, NULL); 
+@@ -1908,6 +1790,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+               {
+                 /* if not in cache, enabled and private IPV4 address, return NXDOMAIN */
+                 ans = 1;
++                sec_data = 0;
+                 nxdomain = 1;
+                 if (!dryrun)
+                   log_query(F_CONFIG | F_REVERSE | F_IPV4 | F_NEG | F_NXDOMAIN, 
+@@ -1955,6 +1838,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+                 if (i == 4)
+                   {
+                     ans = 1;
++                    sec_data = 0;
+                     if (!dryrun)
+                       {
+                         addr.addr.addr4.s_addr = htonl(a);
+@@ -1993,6 +1877,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+                               continue;
+ #endif        
+                             ans = 1;  
++                            sec_data = 0;
+                             if (!dryrun)
+                               {
+                                 gotit = 1;
+@@ -2032,48 +1917,8 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+                     crecp = save;
+                   }
+-                /* If the client asked for DNSSEC and we can't provide RRSIGs, either
+-                   because we've not doing DNSSEC or the cached answer is signed by negative,
+-                   don't answer from the cache, forward instead. */
+-                if (!(crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) && sec_reqd)
+-                  {
+-                    if (!option_bool(OPT_DNSSEC_VALID) || ((crecp->flags & F_NEG) && (crecp->flags & F_DNSSECOK)))
+-                      crecp = NULL;
+-#ifdef HAVE_DNSSEC
+-                    else if (crecp->flags & F_DNSSECOK)
+-                      {
+-                        /* We're returning validated data, need to return the RRSIG too. */
+-                        struct crec *rr_crec = NULL;
+-                        int sigtype = type;
+-                        /* The signature may have expired even though the data is still in cache, 
+-                           forward instead of answering from cache if so. */
+-                        int gotsig = 0;
+-                        
+-                        if (crecp->flags & F_CNAME)
+-                          sigtype = T_CNAME;
+-                        
+-                        while ((rr_crec = cache_find_by_name(rr_crec, name, now, F_DS | F_DNSKEY)))
+-                          {
+-                            if (rr_crec->addr.sig.type_covered == sigtype && rr_crec->uid == C_IN)
+-                              {
+-                                char *sigdata = blockdata_retrieve(rr_crec->addr.sig.keydata, rr_crec->addr.sig.keylen, NULL);
+-                                gotsig = 1;
+-                                
+-                                if (!dryrun && 
+-                                    add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
+-                                                        rr_crec->ttd - now, &nameoffset,
+-                                                        T_RRSIG, C_IN, "t", rr_crec->addr.sig.keylen, sigdata))
+-                                  anscount++;
+-                              }
+-                          }
+-                        
+-                        if (!gotsig)
+-                          crecp = NULL;
+-                      }
+-#endif
+-                  }            
+-
+-                if (crecp)
++                /* If the client asked for DNSSEC  don't use cached data. */
++                if ((crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) || !sec_reqd || !(crecp->flags & F_DNSSECOK))
+                   do
+                     { 
+                       /* don't answer wildcard queries with data not from /etc/hosts
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/018-Move_code_which_caches_DS_records_to_a_more_logical_place.patch b/src/patches/dnsmasq/018-Move_code_which_caches_DS_records_to_a_more_logical_place.patch
new file mode 100644 (file)
index 0000000..ff055f7
--- /dev/null
@@ -0,0 +1,269 @@
+From d64c81fff7faf4392b688223ef3a617c5c07e7dc Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 15 Dec 2015 16:11:06 +0000
+Subject: [PATCH] Move code which caches DS records to a more logical place.
+
+---
+ src/dnssec.c |  179 +++++++++++++++++++++++++++++-----------------------------
+ 1 file changed, 90 insertions(+), 89 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 1ae03a6..359231f 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1204,7 +1204,10 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class)
+ {
+   unsigned char *p = (unsigned char *)(header+1);
+-  int qtype, qclass, val, i, neganswer, nons;
++  int qtype, qclass, rc, i, neganswer, nons;
++  int aclass, atype, rdlen;
++  unsigned long ttl;
++  struct all_addr a;
+   if (ntohs(header->qdcount) != 1 ||
+       !(p = skip_name(p, header, plen, 4)))
+@@ -1214,40 +1217,100 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+   GETSHORT(qclass, p);
+   if (qtype != T_DS || qclass != class)
+-    val = STAT_BOGUS;
++    rc = STAT_BOGUS;
+   else
+-    val = dnssec_validate_reply(now, header, plen, name, keyname, NULL, 0, &neganswer, &nons);
++    rc = dnssec_validate_reply(now, header, plen, name, keyname, NULL, 0, &neganswer, &nons);
+   /* Note dnssec_validate_reply() will have cached positive answers */
+   
+-  if (val == STAT_INSECURE)
+-    val = STAT_BOGUS;
+-
++  if (rc == STAT_INSECURE)
++    rc = STAT_BOGUS;
++ 
+   p = (unsigned char *)(header+1);
+   extract_name(header, plen, &p, name, 1, 4);
+   p += 4; /* qtype, qclass */
+   
+-  if (!(p = skip_section(p, ntohs(header->ancount), header, plen)))
+-    val = STAT_BOGUS;
+-  
+   /* If the key needed to validate the DS is on the same domain as the DS, we'll
+      loop getting nowhere. Stop that now. This can happen of the DS answer comes
+      from the DS's zone, and not the parent zone. */
+-  if (val == STAT_BOGUS || (val == STAT_NEED_KEY && hostname_isequal(name, keyname)))
++  if (rc == STAT_BOGUS || (rc == STAT_NEED_KEY && hostname_isequal(name, keyname)))
+     {
+       log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "BOGUS DS");
+       return STAT_BOGUS;
+     }
+   
+-  if (val != STAT_SECURE)
+-    return val;
+-
+-  /* By here, the answer is proved secure, and a positive answer has been cached. */
+-  if (neganswer)
++  if (rc != STAT_SECURE)
++    return rc;
++   
++  if (!neganswer)
+     {
+-      int rdlen, flags = F_FORWARD | F_DS | F_NEG | F_DNSSECOK;
+-      unsigned long ttl, minttl = ULONG_MAX;
+-      struct all_addr a;
++      cache_start_insert();
++      
++      for (i = 0; i < ntohs(header->ancount); i++)
++      {
++        if (!(rc = extract_name(header, plen, &p, name, 0, 10)))
++          return STAT_BOGUS; /* bad packet */
++        
++        GETSHORT(atype, p);
++        GETSHORT(aclass, p);
++        GETLONG(ttl, p);
++        GETSHORT(rdlen, p);
++        
++        if (!CHECK_LEN(header, p, plen, rdlen))
++          return STAT_BOGUS; /* bad packet */
++        
++        if (aclass == class && atype == T_DS && rc == 1)
++          { 
++            int algo, digest, keytag;
++            unsigned char *psave = p;
++            struct blockdata *key;
++            struct crec *crecp;
++            if (rdlen < 4)
++              return STAT_BOGUS; /* bad packet */
++            
++            GETSHORT(keytag, p);
++            algo = *p++;
++            digest = *p++;
++            
++            /* Cache needs to known class for DNSSEC stuff */
++            a.addr.dnssec.class = class;
++            
++            if ((key = blockdata_alloc((char*)p, rdlen - 4)))
++              {
++                if (!(crecp = cache_insert(name, &a, now, ttl, F_FORWARD | F_DS | F_DNSSECOK)))
++                  {
++                    blockdata_free(key);
++                    return STAT_BOGUS;
++                  }
++                else
++                  {
++                    a.addr.keytag = keytag;
++                    log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
++                    crecp->addr.ds.digest = digest;
++                    crecp->addr.ds.keydata = key;
++                    crecp->addr.ds.algo = algo;
++                    crecp->addr.ds.keytag = keytag;
++                    crecp->addr.ds.keylen = rdlen - 4; 
++                  } 
++              }
++            
++            p = psave;
++            
++            if (!ADD_RDLEN(header, p, plen, rdlen))
++              return STAT_BOGUS; /* bad packet */
++          }
++        
++        cache_end_insert();
++      }
++    }
++  else
++    {
++      int flags = F_FORWARD | F_DS | F_NEG | F_DNSSECOK;
++      unsigned long minttl = ULONG_MAX;
++      
++      if (!(p = skip_section(p, ntohs(header->ancount), header, plen)))
++      return STAT_BOGUS;
++      
+       if (RCODE(header) == NXDOMAIN)
+       flags |= F_NXDOMAIN;
+       
+@@ -1261,20 +1324,20 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+         if (!(p = skip_name(p, header, plen, 0)))
+           return STAT_BOGUS;
+         
+-        GETSHORT(qtype, p); 
+-        GETSHORT(qclass, p);
++        GETSHORT(atype, p); 
++        GETSHORT(aclass, p);
+         GETLONG(ttl, p);
+         GETSHORT(rdlen, p);
+-
++        
+         if (!CHECK_LEN(header, p, plen, rdlen))
+           return STAT_BOGUS; /* bad packet */
+-          
+-        if (qclass != class || qtype != T_SOA)
++        
++        if (aclass != class || atype != T_SOA)
+           {
+             p += rdlen;
+             continue;
+           }
+-           
++        
+         if (ttl < minttl)
+           minttl = ttl;
+         
+@@ -1306,7 +1369,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+         log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "no DS");
+       }
+     }
+-
++      
+   return STAT_OK;
+ }
+@@ -2001,11 +2064,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+         /* Not done, validate now */
+         if (j == i)
+           {
+-            int ttl, keytag, algo, digest, sigcnt, rrcnt;
+-            unsigned char *psave;
+-            struct all_addr a;
+-            struct blockdata *key;
+-            struct crec *crecp;
++            int sigcnt, rrcnt;
+             char *wildname;
+             
+             if (!explore_rrset(header, plen, class1, type1, name, keyname, &sigcnt, &rrcnt))
+@@ -2032,6 +2091,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+                Can't overwrite name here. */
+             strcpy(daemon->workspacename, keyname);
+             rc = zone_status(daemon->workspacename, class1, keyname, now);
++
+             if (rc != STAT_SECURE)
+               {
+                 /* Zone is insecure, don't need to validate RRset */
+@@ -2088,65 +2148,6 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+                     if (rc == STAT_BOGUS)
+                       return rc;
+                   } 
+-                
+-                /* If we just validated a DS RRset, cache it */
+-                /* Also note if the RRset is the answer to the question, or the target of a CNAME */
+-                cache_start_insert();
+-                
+-                for (p2 = ans_start, j = 0; j < ntohs(header->ancount); j++)
+-                  {
+-                    if (!(rc = extract_name(header, plen, &p2, name, 0, 10)))
+-                      return STAT_BOGUS; /* bad packet */
+-                    
+-                    GETSHORT(type2, p2);
+-                    GETSHORT(class2, p2);
+-                    GETLONG(ttl, p2);
+-                    GETSHORT(rdlen2, p2);
+-                    
+-                    if (!CHECK_LEN(header, p2, plen, rdlen2))
+-                      return STAT_BOGUS; /* bad packet */
+-                    
+-                    if (class2 == class1 && rc == 1)
+-                      { 
+-                        psave = p2;
+-                        
+-                        if (type1 == T_DS && type2 == T_DS)
+-                          {
+-                            if (rdlen2 < 4)
+-                              return STAT_BOGUS; /* bad packet */
+-                            
+-                            GETSHORT(keytag, p2);
+-                            algo = *p2++;
+-                            digest = *p2++;
+-                            
+-                            /* Cache needs to known class for DNSSEC stuff */
+-                            a.addr.dnssec.class = class2;
+-                            
+-                            if ((key = blockdata_alloc((char*)p2, rdlen2 - 4)))
+-                              {
+-                                if (!(crecp = cache_insert(name, &a, now, ttl, F_FORWARD | F_DS | F_DNSSECOK)))
+-                                  blockdata_free(key);
+-                                else
+-                                  {
+-                                    a.addr.keytag = keytag;
+-                                    log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
+-                                    crecp->addr.ds.digest = digest;
+-                                    crecp->addr.ds.keydata = key;
+-                                    crecp->addr.ds.algo = algo;
+-                                    crecp->addr.ds.keytag = keytag;
+-                                    crecp->addr.ds.keylen = rdlen2 - 4; 
+-                                  } 
+-                              }
+-                          }
+-
+-                        p2 = psave;
+-                      }
+-                    
+-                    if (!ADD_RDLEN(header, p2, plen, rdlen2))
+-                      return STAT_BOGUS; /* bad packet */
+-                  }
+-                
+-                cache_end_insert();
+               }
+           }
+       }
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/019-Generalise_RR-filtering_code_for_use_with_EDNS0.patch b/src/patches/dnsmasq/019-Generalise_RR-filtering_code_for_use_with_EDNS0.patch
new file mode 100644 (file)
index 0000000..0a4942a
--- /dev/null
@@ -0,0 +1,755 @@
+From c2bcd1e183bcc5fdd63811c045355fc57e36ecfd Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 15 Dec 2015 17:25:21 +0000
+Subject: [PATCH] Generalise RR-filtering code, for use with EDNS0.
+
+---
+ Makefile       |    3 +-
+ bld/Android.mk |    2 +-
+ src/dnsmasq.h  |    5 +
+ src/dnssec.c   |  307 +-------------------------------------------------
+ src/forward.c  |    2 +-
+ src/rrfilter.c |  339 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 6 files changed, 349 insertions(+), 309 deletions(-)
+ create mode 100644 src/rrfilter.c
+
+diff --git a/Makefile b/Makefile
+index 4c87ea9..b664160 100644
+--- a/Makefile
++++ b/Makefile
+@@ -73,7 +73,8 @@ objs = cache.o rfc1035.o util.o option.o forward.o network.o \
+        dnsmasq.o dhcp.o lease.o rfc2131.o netlink.o dbus.o bpf.o \
+        helper.o tftp.o log.o conntrack.o dhcp6.o rfc3315.o \
+        dhcp-common.o outpacket.o radv.o slaac.o auth.o ipset.o \
+-       domain.o dnssec.o blockdata.o tables.o loop.o inotify.o poll.o
++       domain.o dnssec.o blockdata.o tables.o loop.o inotify.o \
++       poll.o rrfilter.o
+ hdrs = dnsmasq.h config.h dhcp-protocol.h dhcp6-protocol.h \
+        dns-protocol.h radv-protocol.h ip6addr.h
+diff --git a/bld/Android.mk b/bld/Android.mk
+index 5364ee7..67b9c4b 100644
+--- a/bld/Android.mk
++++ b/bld/Android.mk
+@@ -10,7 +10,7 @@ LOCAL_SRC_FILES :=  bpf.c cache.c dbus.c dhcp.c dnsmasq.c \
+                   dhcp6.c rfc3315.c dhcp-common.c outpacket.c \
+                   radv.c slaac.c auth.c ipset.c domain.c \
+                   dnssec.c dnssec-openssl.c blockdata.c tables.c \
+-                  loop.c inotify.c poll.c
++                  loop.c inotify.c poll.c rrfilter.c
+ LOCAL_MODULE := dnsmasq
+diff --git a/src/dnsmasq.h b/src/dnsmasq.h
+index 4344cae..39a930c 100644
+--- a/src/dnsmasq.h
++++ b/src/dnsmasq.h
+@@ -1513,3 +1513,8 @@ int poll_check(int fd, short event);
+ void poll_listen(int fd, short event);
+ int do_poll(int timeout);
++/* rrfilter.c */
++size_t rrfilter(struct dns_header *header, size_t plen, int mode);
++u16 *rrfilter_desc(int type);
++int expand_workspace(unsigned char ***wkspc, int *szp, int new);
++
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 359231f..fa3eb81 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -507,50 +507,6 @@ static int check_date_range(unsigned long date_start, unsigned long date_end)
+     && serial_compare_32(curtime, date_end) == SERIAL_LT;
+ }
+-static u16 *get_desc(int type)
+-{
+-  /* List of RRtypes which include domains in the data.
+-     0 -> domain
+-     integer -> no of plain bytes
+-     -1 -> end
+-
+-     zero is not a valid RRtype, so the final entry is returned for
+-     anything which needs no mangling.
+-  */
+-  
+-  static u16 rr_desc[] = 
+-    { 
+-      T_NS, 0, -1, 
+-      T_MD, 0, -1,
+-      T_MF, 0, -1,
+-      T_CNAME, 0, -1,
+-      T_SOA, 0, 0, -1,
+-      T_MB, 0, -1,
+-      T_MG, 0, -1,
+-      T_MR, 0, -1,
+-      T_PTR, 0, -1,
+-      T_MINFO, 0, 0, -1,
+-      T_MX, 2, 0, -1,
+-      T_RP, 0, 0, -1,
+-      T_AFSDB, 2, 0, -1,
+-      T_RT, 2, 0, -1,
+-      T_SIG, 18, 0, -1,
+-      T_PX, 2, 0, 0, -1,
+-      T_NXT, 0, -1,
+-      T_KX, 2, 0, -1,
+-      T_SRV, 6, 0, -1,
+-      T_DNAME, 0, -1,
+-      0, -1 /* wildcard/catchall */
+-    }; 
+-  
+-  u16 *p = rr_desc;
+-  
+-  while (*p != type && *p != 0)
+-    while (*p++ != (u16)-1);
+-
+-  return p+1;
+-}
+-
+ /* Return bytes of canonicalised rdata, when the return value is zero, the remaining 
+    data, pointed to by *p, should be used raw. */
+ static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end, char *buff, int bufflen,
+@@ -594,34 +550,6 @@ static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end,
+     }
+ }
+-static int expand_workspace(unsigned char ***wkspc, int *szp, int new)
+-{
+-  unsigned char **p;
+-  int old = *szp;
+-
+-  if (old >= new+1)
+-    return 1;
+-
+-  if (new >= 100)
+-    return 0;
+-
+-  new += 5;
+-  
+-  if (!(p = whine_malloc(new * sizeof(unsigned char **))))
+-    return 0;  
+-  
+-  if (old != 0 && *wkspc)
+-    {
+-      memcpy(p, *wkspc, old * sizeof(unsigned char **));
+-      free(*wkspc);
+-    }
+-  
+-  *wkspc = p;
+-  *szp = new;
+-
+-  return 1;
+-}
+-
+ /* Bubble sort the RRset into the canonical order. 
+    Note that the byte-streams from two RRs may get unsynced: consider 
+    RRs which have two domain-names at the start and then other data.
+@@ -849,7 +777,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+   int rdlen, j, name_labels;
+   struct crec *crecp = NULL;
+   int algo, labels, orig_ttl, key_tag;
+-  u16 *rr_desc = get_desc(type);
++  u16 *rr_desc = rrfilter_desc(type);
+  
+   if (wildcard_out)
+     *wildcard_out = NULL;
+@@ -2266,239 +2194,6 @@ size_t dnssec_generate_query(struct dns_header *header, char *end, char *name, i
+   return ret;
+ }
+-/* Go through a domain name, find "pointers" and fix them up based on how many bytes
+-   we've chopped out of the packet, or check they don't point into an elided part.  */
+-static int check_name(unsigned char **namep, struct dns_header *header, size_t plen, int fixup, unsigned char **rrs, int rr_count)
+-{
+-  unsigned char *ansp = *namep;
+-
+-  while(1)
+-    {
+-      unsigned int label_type;
+-      
+-      if (!CHECK_LEN(header, ansp, plen, 1))
+-      return 0;
+-      
+-      label_type = (*ansp) & 0xc0;
+-
+-      if (label_type == 0xc0)
+-      {
+-        /* pointer for compression. */
+-        unsigned int offset;
+-        int i;
+-        unsigned char *p;
+-        
+-        if (!CHECK_LEN(header, ansp, plen, 2))
+-          return 0;
+-
+-        offset = ((*ansp++) & 0x3f) << 8;
+-        offset |= *ansp++;
+-
+-        p = offset + (unsigned char *)header;
+-        
+-        for (i = 0; i < rr_count; i++)
+-          if (p < rrs[i])
+-            break;
+-          else
+-            if (i & 1)
+-              offset -= rrs[i] - rrs[i-1];
+-
+-        /* does the pointer end up in an elided RR? */
+-        if (i & 1)
+-          return 0;
+-
+-        /* No, scale the pointer */
+-        if (fixup)
+-          {
+-            ansp -= 2;
+-            *ansp++ = (offset >> 8) | 0xc0;
+-            *ansp++ = offset & 0xff;
+-          }
+-        break;
+-      }
+-      else if (label_type == 0x80)
+-      return 0; /* reserved */
+-      else if (label_type == 0x40)
+-      {
+-        /* Extended label type */
+-        unsigned int count;
+-        
+-        if (!CHECK_LEN(header, ansp, plen, 2))
+-          return 0;
+-        
+-        if (((*ansp++) & 0x3f) != 1)
+-          return 0; /* we only understand bitstrings */
+-        
+-        count = *(ansp++); /* Bits in bitstring */
+-        
+-        if (count == 0) /* count == 0 means 256 bits */
+-          ansp += 32;
+-        else
+-          ansp += ((count-1)>>3)+1;
+-      }
+-      else
+-      { /* label type == 0 Bottom six bits is length */
+-        unsigned int len = (*ansp++) & 0x3f;
+-        
+-        if (!ADD_RDLEN(header, ansp, plen, len))
+-          return 0;
+-
+-        if (len == 0)
+-          break; /* zero length label marks the end. */
+-      }
+-    }
+-
+-  *namep = ansp;
+-
+-  return 1;
+-}
+-
+-/* Go through RRs and check or fixup the domain names contained within */
+-static int check_rrs(unsigned char *p, struct dns_header *header, size_t plen, int fixup, unsigned char **rrs, int rr_count)
+-{
+-  int i, type, class, rdlen;
+-  unsigned char *pp;
+-  
+-  for (i = 0; i < ntohs(header->ancount) + ntohs(header->nscount) + ntohs(header->arcount); i++)
+-    {
+-      pp = p;
+-
+-      if (!(p = skip_name(p, header, plen, 10)))
+-      return 0;
+-      
+-      GETSHORT(type, p); 
+-      GETSHORT(class, p);
+-      p += 4; /* TTL */
+-      GETSHORT(rdlen, p);
+-
+-      if (type != T_NSEC && type != T_NSEC3 && type != T_RRSIG)
+-      {
+-        /* fixup name of RR */
+-        if (!check_name(&pp, header, plen, fixup, rrs, rr_count))
+-          return 0;
+-        
+-        if (class == C_IN)
+-          {
+-            u16 *d;
+- 
+-            for (pp = p, d = get_desc(type); *d != (u16)-1; d++)
+-              {
+-                if (*d != 0)
+-                  pp += *d;
+-                else if (!check_name(&pp, header, plen, fixup, rrs, rr_count))
+-                  return 0;
+-              }
+-          }
+-      }
+-      
+-      if (!ADD_RDLEN(header, p, plen, rdlen))
+-      return 0;
+-    }
+-  
+-  return 1;
+-}
+-      
+-
+-size_t filter_rrsigs(struct dns_header *header, size_t plen)
+-{
+-  static unsigned char **rrs;
+-  static int rr_sz = 0;
+-  
+-  unsigned char *p = (unsigned char *)(header+1);
+-  int i, rdlen, qtype, qclass, rr_found, chop_an, chop_ns, chop_ar;
+-
+-  if (ntohs(header->qdcount) != 1 ||
+-      !(p = skip_name(p, header, plen, 4)))
+-    return plen;
+-  
+-  GETSHORT(qtype, p);
+-  GETSHORT(qclass, p);
+-
+-  /* First pass, find pointers to start and end of all the records we wish to elide:
+-     records added for DNSSEC, unless explicity queried for */
+-  for (rr_found = 0, chop_ns = 0, chop_an = 0, chop_ar = 0, i = 0; 
+-       i < ntohs(header->ancount) + ntohs(header->nscount) + ntohs(header->arcount);
+-       i++)
+-    {
+-      unsigned char *pstart = p;
+-      int type, class;
+-
+-      if (!(p = skip_name(p, header, plen, 10)))
+-      return plen;
+-      
+-      GETSHORT(type, p); 
+-      GETSHORT(class, p);
+-      p += 4; /* TTL */
+-      GETSHORT(rdlen, p);
+-      
+-      if ((type == T_NSEC || type == T_NSEC3 || type == T_RRSIG) && 
+-        (type != qtype || class != qclass))
+-      {
+-        if (!expand_workspace(&rrs, &rr_sz, rr_found + 1))
+-          return plen; 
+-        
+-        rrs[rr_found++] = pstart;
+-
+-        if (!ADD_RDLEN(header, p, plen, rdlen))
+-          return plen;
+-        
+-        rrs[rr_found++] = p;
+-        
+-        if (i < ntohs(header->ancount))
+-          chop_an++;
+-        else if (i < (ntohs(header->nscount) + ntohs(header->ancount)))
+-          chop_ns++;
+-        else
+-          chop_ar++;
+-      }
+-      else if (!ADD_RDLEN(header, p, plen, rdlen))
+-      return plen;
+-    }
+-  
+-  /* Nothing to do. */
+-  if (rr_found == 0)
+-    return plen;
+-
+-  /* Second pass, look for pointers in names in the records we're keeping and make sure they don't
+-     point to records we're going to elide. This is theoretically possible, but unlikely. If
+-     it happens, we give up and leave the answer unchanged. */
+-  p = (unsigned char *)(header+1);
+-  
+-  /* question first */
+-  if (!check_name(&p, header, plen, 0, rrs, rr_found))
+-    return plen;
+-  p += 4; /* qclass, qtype */
+-  
+-  /* Now answers and NS */
+-  if (!check_rrs(p, header, plen, 0, rrs, rr_found))
+-    return plen;
+-  
+-  /* Third pass, elide records */
+-  for (p = rrs[0], i = 1; i < rr_found; i += 2)
+-    {
+-      unsigned char *start = rrs[i];
+-      unsigned char *end = (i != rr_found - 1) ? rrs[i+1] : ((unsigned char *)(header+1)) + plen;
+-      
+-      memmove(p, start, end-start);
+-      p += end-start;
+-    }
+-     
+-  plen = p - (unsigned char *)header;
+-  header->ancount = htons(ntohs(header->ancount) - chop_an);
+-  header->nscount = htons(ntohs(header->nscount) - chop_ns);
+-  header->arcount = htons(ntohs(header->arcount) - chop_ar);
+-
+-  /* Fourth pass, fix up pointers in the remaining records */
+-  p = (unsigned char *)(header+1);
+-  
+-  check_name(&p, header, plen, 1, rrs, rr_found);
+-  p += 4; /* qclass, qtype */
+-  
+-  check_rrs(p, header, plen, 1, rrs, rr_found);
+-  
+-  return plen;
+-}
+-
+ unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name)
+ {
+   int q;
+diff --git a/src/forward.c b/src/forward.c
+index dd22a62..3e801c8 100644
+--- a/src/forward.c
++++ b/src/forward.c
+@@ -662,7 +662,7 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server
+   /* If the requestor didn't set the DO bit, don't return DNSSEC info. */
+   if (!do_bit)
+-    n = filter_rrsigs(header, n);
++    n = rrfilter(header, n, 1);
+ #endif
+   /* do this after extract_addresses. Ensure NODATA reply and remove
+diff --git a/src/rrfilter.c b/src/rrfilter.c
+new file mode 100644
+index 0000000..ae12261
+--- /dev/null
++++ b/src/rrfilter.c
+@@ -0,0 +1,339 @@
++/* dnsmasq is Copyright (c) 2000-2015 Simon Kelley
++
++   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; version 2 dated June, 1991, or
++   (at your option) version 3 dated 29 June, 2007.
++ 
++   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/>.
++*/
++
++/* Code to safely remove RRs from an DNS answer */ 
++
++#include "dnsmasq.h"
++
++/* Go through a domain name, find "pointers" and fix them up based on how many bytes
++   we've chopped out of the packet, or check they don't point into an elided part.  */
++static int check_name(unsigned char **namep, struct dns_header *header, size_t plen, int fixup, unsigned char **rrs, int rr_count)
++{
++  unsigned char *ansp = *namep;
++
++  while(1)
++    {
++      unsigned int label_type;
++      
++      if (!CHECK_LEN(header, ansp, plen, 1))
++      return 0;
++      
++      label_type = (*ansp) & 0xc0;
++
++      if (label_type == 0xc0)
++      {
++        /* pointer for compression. */
++        unsigned int offset;
++        int i;
++        unsigned char *p;
++        
++        if (!CHECK_LEN(header, ansp, plen, 2))
++          return 0;
++
++        offset = ((*ansp++) & 0x3f) << 8;
++        offset |= *ansp++;
++
++        p = offset + (unsigned char *)header;
++        
++        for (i = 0; i < rr_count; i++)
++          if (p < rrs[i])
++            break;
++          else
++            if (i & 1)
++              offset -= rrs[i] - rrs[i-1];
++
++        /* does the pointer end up in an elided RR? */
++        if (i & 1)
++          return 0;
++
++        /* No, scale the pointer */
++        if (fixup)
++          {
++            ansp -= 2;
++            *ansp++ = (offset >> 8) | 0xc0;
++            *ansp++ = offset & 0xff;
++          }
++        break;
++      }
++      else if (label_type == 0x80)
++      return 0; /* reserved */
++      else if (label_type == 0x40)
++      {
++        /* Extended label type */
++        unsigned int count;
++        
++        if (!CHECK_LEN(header, ansp, plen, 2))
++          return 0;
++        
++        if (((*ansp++) & 0x3f) != 1)
++          return 0; /* we only understand bitstrings */
++        
++        count = *(ansp++); /* Bits in bitstring */
++        
++        if (count == 0) /* count == 0 means 256 bits */
++          ansp += 32;
++        else
++          ansp += ((count-1)>>3)+1;
++      }
++      else
++      { /* label type == 0 Bottom six bits is length */
++        unsigned int len = (*ansp++) & 0x3f;
++        
++        if (!ADD_RDLEN(header, ansp, plen, len))
++          return 0;
++
++        if (len == 0)
++          break; /* zero length label marks the end. */
++      }
++    }
++
++  *namep = ansp;
++
++  return 1;
++}
++
++/* Go through RRs and check or fixup the domain names contained within */
++static int check_rrs(unsigned char *p, struct dns_header *header, size_t plen, int fixup, unsigned char **rrs, int rr_count)
++{
++  int i, j, type, class, rdlen;
++  unsigned char *pp;
++  
++  for (i = 0; i < ntohs(header->ancount) + ntohs(header->nscount) + ntohs(header->arcount); i++)
++    {
++      pp = p;
++
++      if (!(p = skip_name(p, header, plen, 10)))
++      return 0;
++      
++      GETSHORT(type, p); 
++      GETSHORT(class, p);
++      p += 4; /* TTL */
++      GETSHORT(rdlen, p);
++
++      /* If this RR is to be elided, don't fix up its contents */
++      for (j = 0; j < rr_count; j += 2)
++      if (rrs[j] == pp)
++        break;
++
++      if (j >= rr_count)
++      {
++        /* fixup name of RR */
++        if (!check_name(&pp, header, plen, fixup, rrs, rr_count))
++          return 0;
++        
++        if (class == C_IN)
++          {
++            u16 *d;
++ 
++            for (pp = p, d = rrfilter_desc(type); *d != (u16)-1; d++)
++              {
++                if (*d != 0)
++                  pp += *d;
++                else if (!check_name(&pp, header, plen, fixup, rrs, rr_count))
++                  return 0;
++              }
++          }
++      }
++      
++      if (!ADD_RDLEN(header, p, plen, rdlen))
++      return 0;
++    }
++  
++  return 1;
++}
++      
++
++/* mode is 0 to remove EDNS0, 1 to filter DNSSEC RRs */
++size_t rrfilter(struct dns_header *header, size_t plen, int mode)
++{
++  static unsigned char **rrs;
++  static int rr_sz = 0;
++
++  unsigned char *p = (unsigned char *)(header+1);
++  int i, rdlen, qtype, qclass, rr_found, chop_an, chop_ns, chop_ar;
++
++  if (ntohs(header->qdcount) != 1 ||
++      !(p = skip_name(p, header, plen, 4)))
++    return plen;
++  
++  GETSHORT(qtype, p);
++  GETSHORT(qclass, p);
++
++  /* First pass, find pointers to start and end of all the records we wish to elide:
++     records added for DNSSEC, unless explicity queried for */
++  for (rr_found = 0, chop_ns = 0, chop_an = 0, chop_ar = 0, i = 0; 
++       i < ntohs(header->ancount) + ntohs(header->nscount) + ntohs(header->arcount);
++       i++)
++    {
++      unsigned char *pstart = p;
++      int type, class;
++
++      if (!(p = skip_name(p, header, plen, 10)))
++      return plen;
++      
++      GETSHORT(type, p); 
++      GETSHORT(class, p);
++      p += 4; /* TTL */
++      GETSHORT(rdlen, p);
++        
++      if (!ADD_RDLEN(header, p, plen, rdlen))
++      return plen;
++
++      /* Don't remove the answer. */
++      if (i < ntohs(header->ancount) && type == qtype && class == qclass)
++      continue;
++      
++      if (mode == 0) /* EDNS */
++      {
++        /* EDNS mode, remove T_OPT from additional section only */
++        if (i < (ntohs(header->nscount) + ntohs(header->ancount)) || type != T_OPT)
++          continue;
++      }
++      else if (type != T_NSEC && type != T_NSEC3 && type != T_RRSIG)
++      /* DNSSEC mode, remove SIGs and NSECs from all three sections. */
++      continue;
++      
++      
++      if (!expand_workspace(&rrs, &rr_sz, rr_found + 1))
++      return plen; 
++      
++      rrs[rr_found++] = pstart;
++      rrs[rr_found++] = p;
++      
++      if (i < ntohs(header->ancount))
++      chop_an++;
++      else if (i < (ntohs(header->nscount) + ntohs(header->ancount)))
++      chop_ns++;
++      else
++      chop_ar++;
++    }
++  
++  /* Nothing to do. */
++  if (rr_found == 0)
++    return plen;
++
++  /* Second pass, look for pointers in names in the records we're keeping and make sure they don't
++     point to records we're going to elide. This is theoretically possible, but unlikely. If
++     it happens, we give up and leave the answer unchanged. */
++  p = (unsigned char *)(header+1);
++  
++  /* question first */
++  if (!check_name(&p, header, plen, 0, rrs, rr_found))
++    return plen;
++  p += 4; /* qclass, qtype */
++  
++  /* Now answers and NS */
++  if (!check_rrs(p, header, plen, 0, rrs, rr_found))
++    return plen;
++  
++  /* Third pass, elide records */
++  for (p = rrs[0], i = 1; i < rr_found; i += 2)
++    {
++      unsigned char *start = rrs[i];
++      unsigned char *end = (i != rr_found - 1) ? rrs[i+1] : ((unsigned char *)(header+1)) + plen;
++      
++      memmove(p, start, end-start);
++      p += end-start;
++    }
++     
++  plen = p - (unsigned char *)header;
++  header->ancount = htons(ntohs(header->ancount) - chop_an);
++  header->nscount = htons(ntohs(header->nscount) - chop_ns);
++  header->arcount = htons(ntohs(header->arcount) - chop_ar);
++
++  /* Fourth pass, fix up pointers in the remaining records */
++  p = (unsigned char *)(header+1);
++  
++  check_name(&p, header, plen, 1, rrs, rr_found);
++  p += 4; /* qclass, qtype */
++  
++  check_rrs(p, header, plen, 1, rrs, rr_found);
++  
++  return plen;
++}
++
++/* This is used in the DNSSEC code too, hence it's exported */
++u16 *rrfilter_desc(int type)
++{
++  /* List of RRtypes which include domains in the data.
++     0 -> domain
++     integer -> no of plain bytes
++     -1 -> end
++
++     zero is not a valid RRtype, so the final entry is returned for
++     anything which needs no mangling.
++  */
++  
++  static u16 rr_desc[] = 
++    { 
++      T_NS, 0, -1, 
++      T_MD, 0, -1,
++      T_MF, 0, -1,
++      T_CNAME, 0, -1,
++      T_SOA, 0, 0, -1,
++      T_MB, 0, -1,
++      T_MG, 0, -1,
++      T_MR, 0, -1,
++      T_PTR, 0, -1,
++      T_MINFO, 0, 0, -1,
++      T_MX, 2, 0, -1,
++      T_RP, 0, 0, -1,
++      T_AFSDB, 2, 0, -1,
++      T_RT, 2, 0, -1,
++      T_SIG, 18, 0, -1,
++      T_PX, 2, 0, 0, -1,
++      T_NXT, 0, -1,
++      T_KX, 2, 0, -1,
++      T_SRV, 6, 0, -1,
++      T_DNAME, 0, -1,
++      0, -1 /* wildcard/catchall */
++    }; 
++  
++  u16 *p = rr_desc;
++  
++  while (*p != type && *p != 0)
++    while (*p++ != (u16)-1);
++
++  return p+1;
++}
++
++int expand_workspace(unsigned char ***wkspc, int *szp, int new)
++{
++  unsigned char **p;
++  int old = *szp;
++
++  if (old >= new+1)
++    return 1;
++
++  if (new >= 100)
++    return 0;
++
++  new += 5;
++  
++  if (!(p = whine_malloc(new * sizeof(unsigned char **))))
++    return 0;  
++  
++  if (old != 0 && *wkspc)
++    {
++      memcpy(p, *wkspc, old * sizeof(unsigned char **));
++      free(*wkspc);
++    }
++  
++  *wkspc = p;
++  *szp = new;
++
++  return 1;
++}
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/020-DNSSEC_validation_tweak.patch b/src/patches/dnsmasq/020-DNSSEC_validation_tweak.patch
new file mode 100644 (file)
index 0000000..ffb412b
--- /dev/null
@@ -0,0 +1,134 @@
+From 2dbba34b2c1289a108f876c78b84889f2a93115d Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Wed, 16 Dec 2015 13:41:58 +0000
+Subject: [PATCH] DNSSEC validation tweak.
+
+A zone which has at least one key with an algorithm we don't
+support should be considered as insecure.
+---
+ src/dnssec.c |   82 ++++++++++++++++++++++++++++++++++++++--------------------
+ 1 file changed, 54 insertions(+), 28 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index fa3eb81..dc563e0 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -763,10 +763,10 @@ static int explore_rrset(struct dns_header *header, size_t plen, int class, int
+    STAT_NEED_KEY need DNSKEY to complete validation (name is returned in keyname)
+    STAT_NEED_DS  need DS to complete validation (name is returned in keyname)
+-   if key is non-NULL, use that key, which has the algo and tag given in the params of those names,
++   If key is non-NULL, use that key, which has the algo and tag given in the params of those names,
+    otherwise find the key in the cache.
+-   name is unchanged on exit. keyname is used as workspace and trashed.
++   Name is unchanged on exit. keyname is used as workspace and trashed.
+    Call explore_rrset first to find and count RRs and sigs.
+ */
+@@ -919,6 +919,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+   return STAT_BOGUS;
+ }
+  
++
+ /* The DNS packet is expected to contain the answer to a DNSKEY query.
+    Put all DNSKEYs in the answer which are valid into the cache.
+    return codes:
+@@ -1831,15 +1832,15 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+ /* Check signing status of name.
+    returns:
+-   STAT_SECURE zone is signed.
+-   STAT_INSECURE zone proved unsigned.
+-   STAT_NEED_DS require DS record of name returned in keyname.
+-   
++   STAT_SECURE      zone is signed.
++   STAT_INSECURE    zone proved unsigned.
++   STAT_NEED_DS     require DS record of name returned in keyname.
++   STAT_NEED_DNSKEY require DNSKEY record of name returned in keyname.
+    name returned unaltered.
+ */
+ static int zone_status(char *name, int class, char *keyname, time_t now)
+ {
+-  int name_start = strlen(name);
++  int secure_ds, name_start = strlen(name);
+   struct crec *crecp;
+   char *p;
+   
+@@ -1850,27 +1851,52 @@ static int zone_status(char *name, int class, char *keyname, time_t now)
+       if (!(crecp = cache_find_by_name(NULL, keyname, now, F_DS)))
+       return STAT_NEED_DS;
+       else
+-      do 
+-        {
+-          if (crecp->uid == (unsigned int)class)
+-            {
+-              /* F_DNSSECOK misused in DS cache records to non-existance of NS record.
+-                 F_NEG && !F_DNSSECOK implies that we've proved there's no DS record here,
+-                 but that's because there's no NS record either, ie this isn't the start
+-                 of a zone. We only prove that the DNS tree below a node is unsigned when
+-                 we prove that we're at a zone cut AND there's no DS record.
+-              */        
+-              if (crecp->flags & F_NEG)
+-                {
+-                  if (crecp->flags & F_DNSSECOK)
+-                    return STAT_INSECURE; /* proved no DS here */
+-                }
+-              else if (!ds_digest_name(crecp->addr.ds.digest) || !algo_digest_name(crecp->addr.ds.algo))
+-                return STAT_INSECURE; /* algo we can't use - insecure */
+-            }
+-        }
+-      while ((crecp = cache_find_by_name(crecp, keyname, now, F_DS)));
+-      
++      {
++        secure_ds = 0;
++        
++        do 
++          {
++            if (crecp->uid == (unsigned int)class)
++              {
++                /* F_DNSSECOK misused in DS cache records to non-existance of NS record.
++                   F_NEG && !F_DNSSECOK implies that we've proved there's no DS record here,
++                   but that's because there's no NS record either, ie this isn't the start
++                   of a zone. We only prove that the DNS tree below a node is unsigned when
++                   we prove that we're at a zone cut AND there's no DS record.
++                */      
++                if (crecp->flags & F_NEG)
++                  {
++                    if (crecp->flags & F_DNSSECOK)
++                      return STAT_INSECURE; /* proved no DS here */
++                  }
++                else if (!ds_digest_name(crecp->addr.ds.digest) || !algo_digest_name(crecp->addr.ds.algo))
++                  return STAT_INSECURE; /* algo we can't use - insecure */
++                else
++                  secure_ds = 1;
++              }
++          }
++        while ((crecp = cache_find_by_name(crecp, keyname, now, F_DS)));
++      }
++
++      if (secure_ds)
++      {
++        /* We've found only DS records that attest to the DNSKEY RRset in the zone, so we believe
++           that RRset is good. Furthermore the DNSKEY whose hash is proved by the DS record is
++           one we can use. However the DNSKEY RRset may contain more than one key and
++           one of the other keys may use an algorithm we don't support. If that's 
++           the case the zone is insecure for us. */
++        
++        if (!(crecp = cache_find_by_name(NULL, keyname, now, F_DNSKEY)))
++          return STAT_NEED_KEY;
++
++        do 
++          {
++            if (crecp->uid == (unsigned int)class && !algo_digest_name(crecp->addr.key.algo))
++              return STAT_INSECURE;
++          }
++        while ((crecp = cache_find_by_name(crecp, keyname, now, F_DNSKEY)));
++      }
++
+       if (name_start == 0)
+       break;
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/021-Tweaks_to_EDNS0_handling_in_DNS_replies.patch b/src/patches/dnsmasq/021-Tweaks_to_EDNS0_handling_in_DNS_replies.patch
new file mode 100644 (file)
index 0000000..c3c74cc
--- /dev/null
@@ -0,0 +1,133 @@
+From dd4ad9ac7ea6d51dcc34a1f2cd2da14efbb87714 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Thu, 17 Dec 2015 10:44:58 +0000
+Subject: [PATCH] Tweaks to EDNS0 handling in DNS replies.
+
+---
+ src/dnssec.c  |   20 +++++++++-----------
+ src/rfc1035.c |   57 +++++++++++++++++++++++++++++++++------------------------
+ 2 files changed, 42 insertions(+), 35 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index dc563e0..012b2a6 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -2129,18 +2129,16 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+           /* Empty DS without NSECS */
+           if (qtype == T_DS)
+             return STAT_BOGUS;
+-          else
++          
++          rc = zone_status(name, qclass, keyname, now);
++          if (rc != STAT_SECURE)
+             {
+-              rc = zone_status(name, qclass, keyname, now);
+-              if (rc != STAT_SECURE)
+-                {
+-                  if (class)
+-                    *class = qclass; /* Class for NEED_DS or NEED_DNSKEY */
+-                  return rc;
+-                } 
+-              
+-              return STAT_BOGUS; /* signed zone, no NSECs */
+-            }
++              if (class)
++                *class = qclass; /* Class for NEED_DS or NEED_DNSKEY */
++              return rc;
++            } 
++          
++          return STAT_BOGUS; /* signed zone, no NSECs */
+         }
+         if (nsec_type == T_NSEC)
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index def8fa0..188d05f 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -1539,7 +1539,13 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+   int nxdomain = 0, auth = 1, trunc = 0, sec_data = 1;
+   struct mx_srv_record *rec;
+   size_t len;
+- 
++  
++  if (ntohs(header->ancount) != 0 ||
++      ntohs(header->nscount) != 0 ||
++      ntohs(header->qdcount) == 0 || 
++      OPCODE(header) != QUERY )
++    return 0;
++  
+   /* Don't return AD set if checking disabled. */
+   if (header->hb4 & HB4_CD)
+     sec_data = 0;
+@@ -1548,33 +1554,32 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+   *ad_reqd = header->hb4 & HB4_AD;
+   *do_bit = 0;
+-  /* If there is an RFC2671 pseudoheader then it will be overwritten by
++  /* If there is an  additional data section then it will be overwritten by
+      partial replies, so we have to do a dry run to see if we can answer
+-     the query. We check to see if the do bit is set, if so we always
+-     forward rather than answering from the cache, which doesn't include
+-     security information, unless we're in DNSSEC validation mode. */
++     the query. */
+-  if (find_pseudoheader(header, qlen, NULL, &pheader, NULL))
+-    { 
+-      unsigned short flags;
+-      
+-      have_pseudoheader = 1;
++  if (ntohs(header->arcount) != 0)
++    {
++      dryrun = 1;
+-      pheader += 4; /* udp size, ext_rcode */
+-      GETSHORT(flags, pheader);
+-      
+-      if ((sec_reqd = flags & 0x8000))
+-      {
+-        *do_bit = 1;/* do bit */ 
+-        *ad_reqd = 1;
++      /* If there's an additional section, there might be an EDNS(0) pseudoheader */
++      if (find_pseudoheader(header, qlen, NULL, &pheader, NULL))
++      { 
++        unsigned short flags;
++        
++        have_pseudoheader = 1;
++        
++        pheader += 4; /* udp size, ext_rcode */
++        GETSHORT(flags, pheader);
++        
++        if ((sec_reqd = flags & 0x8000))
++          {
++            *do_bit = 1;/* do bit */ 
++            *ad_reqd = 1;
++          }
+       }
+-
+-      dryrun = 1;
+     }
+-  if (ntohs(header->qdcount) == 0 || OPCODE(header) != QUERY )
+-    return 0;
+-  
+   for (rec = daemon->mxnames; rec; rec = rec->next)
+     rec->offset = 0;
+   
+@@ -1730,8 +1735,12 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+               }
+             else if ((crecp = cache_find_by_addr(NULL, &addr, now, is_arpa)))
+               {
+-                /* Don't use cache when DNSSEC data required. */
+-                if ((crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) || !sec_reqd || !(crecp->flags & F_DNSSECOK))
++                /* Don't use cache when DNSSEC data required, unless we know that
++                   the zone is unsigned, which implies that we're doing
++                   validation. */
++                if ((crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) || 
++                    !sec_reqd || 
++                    (option_bool(OPT_DNSSEC_VALID) && !(crecp->flags & F_DNSSECOK)))
+                   {
+                     do 
+                       { 
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/022-Tidy_up_DNSSEC_non-existence_code_Check_zone_status_is_NSEC_proof_bad.patch b/src/patches/dnsmasq/022-Tidy_up_DNSSEC_non-existence_code_Check_zone_status_is_NSEC_proof_bad.patch
new file mode 100644 (file)
index 0000000..60503e9
--- /dev/null
@@ -0,0 +1,409 @@
+From b40f26c0199235073abc37e1e1d6ed93bed372f5 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Thu, 17 Dec 2015 11:57:26 +0000
+Subject: [PATCH] Tidy up DNSSEC non-existence code. Check zone status is NSEC
+ proof bad.
+
+---
+ src/dnssec.c |  207 +++++++++++++++++++++++++---------------------------------
+ 1 file changed, 90 insertions(+), 117 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 012b2a6..ddae497 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1367,59 +1367,6 @@ static int hostname_cmp(const char *a, const char *b)
+     }
+ }
+-/* Find all the NSEC or NSEC3 records in a reply.
+-   return an array of pointers to them. */
+-static int find_nsec_records(struct dns_header *header, size_t plen, unsigned char ***nsecsetp, int *nsecsetl, int class_reqd)
+-{
+-  static unsigned char **nsecset = NULL;
+-  static int nsecset_sz = 0;
+-  
+-  int type_found = 0;
+-  unsigned char *p = skip_questions(header, plen);
+-  int type, class, rdlen, i, nsecs_found;
+-
+-  /* Move to NS section */
+-  if (!p || !(p = skip_section(p, ntohs(header->ancount), header, plen)))
+-    return 0;
+-  
+-  for (nsecs_found = 0, i = ntohs(header->nscount); i != 0; i--)
+-    {
+-      unsigned char *pstart = p;
+-      
+-      if (!(p = skip_name(p, header, plen, 10)))
+-      return 0;
+-      
+-      GETSHORT(type, p); 
+-      GETSHORT(class, p);
+-      p += 4; /* TTL */
+-      GETSHORT(rdlen, p);
+-
+-      if (class == class_reqd && (type == T_NSEC || type == T_NSEC3))
+-      {
+-        /* No mixed NSECing 'round here, thankyouverymuch */
+-        if (type_found == T_NSEC && type == T_NSEC3)
+-          return 0;
+-        if (type_found == T_NSEC3 && type == T_NSEC)
+-          return 0;
+-
+-        type_found = type;
+-
+-        if (!expand_workspace(&nsecset, &nsecset_sz, nsecs_found))
+-          return 0; 
+-        
+-        nsecset[nsecs_found++] = pstart;
+-      }
+-      
+-      if (!ADD_RDLEN(header, p, plen, rdlen))
+-      return 0;
+-    }
+-  
+-  *nsecsetp = nsecset;
+-  *nsecsetl = nsecs_found;
+-  
+-  return type_found;
+-}
+-
+ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsigned char **nsecs, int nsec_count,
+                                   char *workspace1, char *workspace2, char *name, int type, int *nons)
+ {
+@@ -1436,12 +1383,12 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
+     {
+       p = nsecs[i];
+       if (!extract_name(header, plen, &p, workspace1, 1, 10))
+-      return STAT_BOGUS;
++      return 0;
+       p += 8; /* class, type, TTL */
+       GETSHORT(rdlen, p);
+       psave = p;
+       if (!extract_name(header, plen, &p, workspace2, 1, 10))
+-      return STAT_BOGUS;
++      return 0;
+       
+       rc = hostname_cmp(workspace1, name);
+       
+@@ -1449,7 +1396,7 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
+       {
+         /* 4035 para 5.4. Last sentence */
+         if (type == T_NSEC || type == T_RRSIG)
+-          return STAT_SECURE;
++          return 1;
+         /* NSEC with the same name as the RR we're testing, check
+            that the type in question doesn't appear in the type map */
+@@ -1465,24 +1412,24 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
+             /* A CNAME answer would also be valid, so if there's a CNAME is should 
+                have been returned. */
+             if ((p[2] & (0x80 >> T_CNAME)) != 0)
+-              return STAT_BOGUS;
++              return 0;
+             
+             /* If the SOA bit is set for a DS record, then we have the
+                DS from the wrong side of the delegation. */
+             if (type == T_DS && (p[2] & (0x80 >> T_SOA)) != 0)
+-              return STAT_BOGUS;
++              return 0;
+           }
+         while (rdlen >= 2)
+           {
+             if (!CHECK_LEN(header, p, plen, rdlen))
+-              return STAT_BOGUS;
++              return 0;
+             
+             if (p[0] == type >> 8)
+               {
+                 /* Does the NSEC say our type exists? */
+                 if (offset < p[1] && (p[offset+2] & mask) != 0)
+-                  return STAT_BOGUS;
++                  return 0;
+                 
+                 break; /* finshed checking */
+               }
+@@ -1491,24 +1438,24 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi
+             p +=  p[1];
+           }
+         
+-        return STAT_SECURE;
++        return 1;
+       }
+       else if (rc == -1)
+       {
+         /* Normal case, name falls between NSEC name and next domain name,
+            wrap around case, name falls between NSEC name (rc == -1) and end */
+         if (hostname_cmp(workspace2, name) >= 0 || hostname_cmp(workspace1, workspace2) >= 0)
+-          return STAT_SECURE;
++          return 1;
+       }
+       else 
+       {
+         /* wrap around case, name falls between start and next domain name */
+         if (hostname_cmp(workspace1, workspace2) >= 0 && hostname_cmp(workspace2, name) >=0 )
+-          return STAT_SECURE;
++          return 1;
+       }
+     }
+   
+-  return STAT_BOGUS;
++  return 0;
+ }
+ /* return digest length, or zero on error */
+@@ -1701,7 +1648,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+   for (i = 0; i < nsec_count; i++)
+     {
+       if (!(p = skip_name(nsecs[i], header, plen, 15)))
+-      return STAT_BOGUS; /* bad packet */
++      return 0; /* bad packet */
+       
+       p += 10; /* type, class, TTL, rdlen */
+       algo = *p++;
+@@ -1712,14 +1659,14 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+   /* No usable NSEC3s */
+   if (i == nsec_count)
+-    return STAT_BOGUS;
++    return 0;
+   p++; /* flags */
+   GETSHORT (iterations, p);
+   salt_len = *p++;
+   salt = p;
+   if (!CHECK_LEN(header, salt, plen, salt_len))
+-    return STAT_BOGUS; /* bad packet */
++    return 0; /* bad packet */
+     
+   /* Now prune so we only have NSEC3 records with same iterations, salt and algo */
+   for (i = 0; i < nsec_count; i++)
+@@ -1730,7 +1677,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+       nsecs[i] = NULL; /* Speculative, will be restored if OK. */
+       
+       if (!(p = skip_name(nsec3p, header, plen, 15)))
+-      return STAT_BOGUS; /* bad packet */
++      return 0; /* bad packet */
+       
+       p += 10; /* type, class, TTL, rdlen */
+       
+@@ -1747,7 +1694,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+       continue;
+       
+       if (!CHECK_LEN(header, p, plen, salt_len))
+-      return STAT_BOGUS; /* bad packet */
++      return 0; /* bad packet */
+       if (memcmp(p, salt, salt_len) != 0)
+       continue;
+@@ -1758,13 +1705,13 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+   /* Algo is checked as 1 above */
+   if (!(hash = hash_find("sha1")))
+-    return STAT_BOGUS;
++    return 0;
+   if ((digest_len = hash_name(name, &digest, hash, salt, salt_len, iterations)) == 0)
+-    return STAT_BOGUS;
++    return 0;
+   
+   if (check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count, nons))
+-    return STAT_SECURE;
++    return 1;
+   /* Can't find an NSEC3 which covers the name directly, we need the "closest encloser NSEC3" 
+      or an answer inferred from a wildcard record. */
+@@ -1780,14 +1727,14 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+       break;
+       if ((digest_len = hash_name(closest_encloser, &digest, hash, salt, salt_len, iterations)) == 0)
+-      return STAT_BOGUS;
++      return 0;
+       
+       for (i = 0; i < nsec_count; i++)
+       if ((p = nsecs[i]))
+         {
+           if (!extract_name(header, plen, &p, workspace1, 1, 0) ||
+               !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2)))
+-            return STAT_BOGUS;
++            return 0;
+         
+           if (digest_len == base32_len &&
+               memcmp(digest, workspace2, digest_len) == 0)
+@@ -1802,32 +1749,81 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+   while ((closest_encloser = strchr(closest_encloser, '.')));
+   
+   if (!closest_encloser)
+-    return STAT_BOGUS;
++    return 0;
+   
+   /* Look for NSEC3 that proves the non-existence of the next-closest encloser */
+   if ((digest_len = hash_name(next_closest, &digest, hash, salt, salt_len, iterations)) == 0)
+-    return STAT_BOGUS;
++    return 0;
+   if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count, NULL))
+-    return STAT_BOGUS;
++    return 0;
+   
+   /* Finally, check that there's no seat of wildcard synthesis */
+   if (!wildname)
+     {
+       if (!(wildcard = strchr(next_closest, '.')) || wildcard == next_closest)
+-      return STAT_BOGUS;
++      return 0;
+       
+       wildcard--;
+       *wildcard = '*';
+       
+       if ((digest_len = hash_name(wildcard, &digest, hash, salt, salt_len, iterations)) == 0)
+-      return STAT_BOGUS;
++      return 0;
+       
+       if (!check_nsec3_coverage(header, plen, digest_len, digest, type, workspace1, workspace2, nsecs, nsec_count, NULL))
+-      return STAT_BOGUS;
++      return 0;
+     }
+   
+-  return STAT_SECURE;
++  return 1;
++}
++
++static int prove_non_existence(struct dns_header *header, size_t plen, char *keyname, char *name, int qtype, int qclass, char *wildname, int *nons)
++{
++  static unsigned char **nsecset = NULL;
++  static int nsecset_sz = 0;
++  
++  int type_found = 0;
++  unsigned char *p = skip_questions(header, plen);
++  int type, class, rdlen, i, nsecs_found;
++  
++  /* Move to NS section */
++  if (!p || !(p = skip_section(p, ntohs(header->ancount), header, plen)))
++    return 0;
++  
++  for (nsecs_found = 0, i = ntohs(header->nscount); i != 0; i--)
++    {
++      unsigned char *pstart = p;
++      
++      if (!(p = skip_name(p, header, plen, 10)))
++      return 0;
++      
++      GETSHORT(type, p); 
++      GETSHORT(class, p);
++      p += 4; /* TTL */
++      GETSHORT(rdlen, p);
++
++      if (class == qclass && (type == T_NSEC || type == T_NSEC3))
++      {
++        /* No mixed NSECing 'round here, thankyouverymuch */
++        if (type_found != 0 && type_found != type)
++          return 0;
++
++        type_found = type;
++
++        if (!expand_workspace(&nsecset, &nsecset_sz, nsecs_found))
++          return 0; 
++        
++        nsecset[nsecs_found++] = pstart;
++      }
++      
++      if (!ADD_RDLEN(header, p, plen, rdlen))
++      return 0;
++    }
++  
++  if (type_found == T_NSEC)
++    return prove_non_existence_nsec(header, plen, nsecset, nsecs_found, daemon->workspacename, keyname, name, qtype, nons);
++  else
++    return prove_non_existence_nsec3(header, plen, nsecset, nsecs_found, daemon->workspacename, keyname, name, qtype, wildname, nons);
+ }
+ /* Check signing status of name.
+@@ -1925,10 +1921,9 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+   static unsigned char **targets = NULL;
+   static int target_sz = 0;
+-  unsigned char *ans_start, *p1, *p2, **nsecs;
++  unsigned char *ans_start, *p1, *p2;
+   int type1, class1, rdlen1, type2, class2, rdlen2, qclass, qtype, targetidx;
+-  int i, j, rc, nsec_count;
+-  int nsec_type;
++  int i, j, rc;
+   if (neganswer)
+     *neganswer = 0;
+@@ -2080,28 +2075,15 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+                         targets[j] = NULL;
+                     }
+                           
+-                if (rc == STAT_SECURE_WILDCARD)
+-                  {
+-                    /* An attacker replay a wildcard answer with a different
+-                       answer and overlay a genuine RR. To prove this
+-                       hasn't happened, the answer must prove that
+-                       the gennuine record doesn't exist. Check that here. */
+-                    if (!(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, class1)))
+-                      return STAT_BOGUS; /* No NSECs or bad packet */
+-                    
+-                    /* Note that we may not yet have validated the NSEC/NSEC3 RRsets. Since the check
+-                       below returns either SECURE or BOGUS, that's not a problem. If the RRsets later fail
+-                       we'll return BOGUS then. */
+-
+-                    if (nsec_type == T_NSEC)
+-                      rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, type1, NULL);
+-                    else
+-                      rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, 
+-                                                     keyname, name, type1, wildname, NULL);
+-                    
+-                    if (rc == STAT_BOGUS)
+-                      return rc;
+-                  } 
++                 /* An attacker replay a wildcard answer with a different
++                    answer and overlay a genuine RR. To prove this
++                    hasn't happened, the answer must prove that
++                    the gennuine record doesn't exist. Check that here. 
++                    Note that we may not yet have validated the NSEC/NSEC3 RRsets. 
++                    That's not a problem since if the RRsets later fail
++                    we'll return BOGUS then. */
++                if (rc == STAT_SECURE_WILDCARD && !prove_non_existence(header, plen, keyname, name, type1, class1, wildname, NULL))
++                  return STAT_BOGUS;
+               }
+           }
+       }
+@@ -2124,14 +2106,13 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+       /* For anything other than a DS record, this situation is OK if either
+          the answer is in an unsigned zone, or there's a NSEC records. */
+-      if (!(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, qclass)))
++      if (!prove_non_existence(header, plen, keyname, name, qtype, qclass, NULL, nons))
+         {
+           /* Empty DS without NSECS */
+           if (qtype == T_DS)
+             return STAT_BOGUS;
+           
+-          rc = zone_status(name, qclass, keyname, now);
+-          if (rc != STAT_SECURE)
++          if ((rc = zone_status(name, qclass, keyname, now)) != STAT_SECURE)
+             {
+               if (class)
+                 *class = qclass; /* Class for NEED_DS or NEED_DNSKEY */
+@@ -2140,14 +2121,6 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+           
+           return STAT_BOGUS; /* signed zone, no NSECs */
+         }
+-
+-        if (nsec_type == T_NSEC)
+-        rc = prove_non_existence_nsec(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, nons);
+-      else
+-        rc = prove_non_existence_nsec3(header, plen, nsecs, nsec_count, daemon->workspacename, keyname, name, qtype, NULL, nons);
+-
+-      if (rc != STAT_SECURE)
+-        return rc;
+       }
+   
+   return STAT_SECURE;
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/023-Fix_brace_botch_in_dnssec_validate_ds.patch b/src/patches/dnsmasq/023-Fix_brace_botch_in_dnssec_validate_ds.patch
new file mode 100644 (file)
index 0000000..eda6fbd
--- /dev/null
@@ -0,0 +1,98 @@
+From 3b799c826db05fc2da1c6d15cbe372e394209d27 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Thu, 17 Dec 2015 16:58:04 +0000
+Subject: [PATCH] Fix brace botch in dnssec_validate_ds()
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf8
+Content-Transfer-Encoding: 8bit
+
+Thanks to MichaÅ\82 KÄ\99pieÅ\84 for spotting this.
+---
+ src/dnssec.c |   34 +++++++++++++++++-----------------
+ 1 file changed, 17 insertions(+), 17 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index ddae497..1f8c954 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -923,11 +923,11 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+ /* The DNS packet is expected to contain the answer to a DNSKEY query.
+    Put all DNSKEYs in the answer which are valid into the cache.
+    return codes:
+-         STAT_OK           Done, key(s) in cache.
+-       STAT_BOGUS        No DNSKEYs found, which  can be validated with DS,
+-                         or self-sign for DNSKEY RRset is not valid, bad packet.
+-       STAT_NEED_DS      DS records to validate a key not found, name in keyname 
+-       STAT_NEED_DNSKEY  DNSKEY records to validate a key not found, name in keyname 
++         STAT_OK        Done, key(s) in cache.
++       STAT_BOGUS     No DNSKEYs found, which  can be validated with DS,
++                      or self-sign for DNSKEY RRset is not valid, bad packet.
++       STAT_NEED_DS   DS records to validate a key not found, name in keyname 
++       STAT_NEED_KEY  DNSKEY records to validate a key not found, name in keyname 
+ */
+ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class)
+ {
+@@ -1224,13 +1224,13 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+               }
+             
+             p = psave;
+-            
+-            if (!ADD_RDLEN(header, p, plen, rdlen))
+-              return STAT_BOGUS; /* bad packet */
+           }
+-        
+-        cache_end_insert();
++        if (!ADD_RDLEN(header, p, plen, rdlen))
++          return STAT_BOGUS; /* bad packet */
+       }
++
++      cache_end_insert();
++
+     }
+   else
+     {
+@@ -1828,10 +1828,10 @@ static int prove_non_existence(struct dns_header *header, size_t plen, char *key
+ /* Check signing status of name.
+    returns:
+-   STAT_SECURE      zone is signed.
+-   STAT_INSECURE    zone proved unsigned.
+-   STAT_NEED_DS     require DS record of name returned in keyname.
+-   STAT_NEED_DNSKEY require DNSKEY record of name returned in keyname.
++   STAT_SECURE   zone is signed.
++   STAT_INSECURE zone proved unsigned.
++   STAT_NEED_DS  require DS record of name returned in keyname.
++   STAT_NEED_KEY require DNSKEY record of name returned in keyname.
+    name returned unaltered.
+ */
+ static int zone_status(char *name, int class, char *keyname, time_t now)
+@@ -2028,7 +2028,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+                     if (rc == STAT_SECURE)
+                       rc = STAT_BOGUS;
+                      if (class)
+-                       *class = class1; /* Class for NEED_DS or NEED_DNSKEY */
++                       *class = class1; /* Class for NEED_DS or NEED_KEY */
+                   }
+                 else 
+                   rc = STAT_INSECURE; 
+@@ -2045,7 +2045,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+               {
+                 /* Zone is insecure, don't need to validate RRset */
+                 if (class)
+-                  *class = class1; /* Class for NEED_DS or NEED_DNSKEY */
++                  *class = class1; /* Class for NEED_DS or NEED_KEY */
+                 return rc;
+               } 
+             
+@@ -2115,7 +2115,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch
+           if ((rc = zone_status(name, qclass, keyname, now)) != STAT_SECURE)
+             {
+               if (class)
+-                *class = qclass; /* Class for NEED_DS or NEED_DNSKEY */
++                *class = qclass; /* Class for NEED_DS or NEED_KEY */
+               return rc;
+             } 
+           
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/024-Do_a_better_job_of_determining_which_DNSSEC_sig_algos_are_supported.patch b/src/patches/dnsmasq/024-Do_a_better_job_of_determining_which_DNSSEC_sig_algos_are_supported.patch
new file mode 100644 (file)
index 0000000..abcae5c
--- /dev/null
@@ -0,0 +1,145 @@
+From 14a4ae883d51130d33da7133287e8867c64bab65 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Thu, 17 Dec 2015 17:23:03 +0000
+Subject: [PATCH] Do a better job of determining which DNSSEC sig algos are
+ supported.
+
+---
+ src/dnssec.c |   52 +++++++++++++++++++++++++++++++++++++---------------
+ 1 file changed, 37 insertions(+), 15 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 1f8c954..82394ee 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -65,10 +65,9 @@ static char *algo_digest_name(int algo)
+     case 8: return "sha256";
+     case 10: return "sha512";
+     case 12: return "gosthash94";
+-#ifndef NO_NETTLE_ECC
+     case 13: return "sha256";
+     case 14: return "sha384";
+-#endif
++
+     default: return NULL;
+     }
+ }
+@@ -129,13 +128,15 @@ static int hash_init(const struct nettle_hash *hash, void **ctxp, unsigned char
+ }
+   
+ static int dnsmasq_rsa_verify(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
+-                            unsigned char *digest, int algo)
++                            unsigned char *digest, size_t digest_len, int algo)
+ {
+   unsigned char *p;
+   size_t exp_len;
+   
+   static struct rsa_public_key *key = NULL;
+   static mpz_t sig_mpz;
++
++  (void)digest_len;
+   
+   if (key == NULL)
+     {
+@@ -181,7 +182,7 @@ static int dnsmasq_rsa_verify(struct blockdata *key_data, unsigned int key_len,
+ }  
+ static int dnsmasq_dsa_verify(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
+-                            unsigned char *digest, int algo)
++                            unsigned char *digest, size_t digest_len, int algo)
+ {
+   unsigned char *p;
+   unsigned int t;
+@@ -189,6 +190,8 @@ static int dnsmasq_dsa_verify(struct blockdata *key_data, unsigned int key_len,
+   static struct dsa_public_key *key = NULL;
+   static struct dsa_signature *sig_struct;
+   
++  (void)digest_len;
++
+   if (key == NULL)
+     {
+       if (!(sig_struct = whine_malloc(sizeof(struct dsa_signature))) || 
+@@ -292,26 +295,45 @@ static int dnsmasq_ecdsa_verify(struct blockdata *key_data, unsigned int key_len
+ } 
+ #endif 
+-static int verify(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
+-                unsigned char *digest, size_t digest_len, int algo)
++static int (*verify_func(int algo))(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
++                                  unsigned char *digest, size_t digest_len, int algo)
+ {
+-  (void)digest_len;
+-
++    
++  /* Enure at runtime that we have support for this digest */
++  if (!hash_find(algo_digest_name(algo)))
++    return NULL;
++  
++  /* This switch defines which sig algorithms we support, can't introspect Nettle for that. */
+   switch (algo)
+     {
+     case 1: case 5: case 7: case 8: case 10:
+-      return dnsmasq_rsa_verify(key_data, key_len, sig, sig_len, digest, algo);
++      return dnsmasq_rsa_verify;
+       
+     case 3: case 6: 
+-      return dnsmasq_dsa_verify(key_data, key_len, sig, sig_len, digest, algo);
++      return dnsmasq_dsa_verify;
+  
+ #ifndef NO_NETTLE_ECC   
+     case 13: case 14:
+-      return dnsmasq_ecdsa_verify(key_data, key_len, sig, sig_len, digest, digest_len, algo);
++      return dnsmasq_ecdsa_verify;
+ #endif
+     }
+   
+-  return 0;
++  return NULL;
++}
++
++static int verify(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
++                unsigned char *digest, size_t digest_len, int algo)
++{
++
++  int (*func)(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
++            unsigned char *digest, size_t digest_len, int algo);
++  
++  func = verify_func(algo);
++  
++  if (!func)
++    return 0;
++
++  return (*func)(key_data, key_len, sig, sig_len, digest, digest_len, algo);
+ }
+ /* Convert from presentation format to wire format, in place.
+@@ -732,7 +754,7 @@ static int explore_rrset(struct dns_header *header, size_t plen, int class, int
+             if (check_date_range(sig_inception, sig_expiration) &&
+                 labels <= name_labels &&
+                 type_covered == type && 
+-                algo_digest_name(algo))
++                verify_func(algo))
+               {
+                 if (!expand_workspace(&sigs, &sig_sz, sigidx))
+                   return 0; 
+@@ -1865,7 +1887,7 @@ static int zone_status(char *name, int class, char *keyname, time_t now)
+                     if (crecp->flags & F_DNSSECOK)
+                       return STAT_INSECURE; /* proved no DS here */
+                   }
+-                else if (!ds_digest_name(crecp->addr.ds.digest) || !algo_digest_name(crecp->addr.ds.algo))
++                else if (!hash_find(ds_digest_name(crecp->addr.ds.digest)) || !verify_func(crecp->addr.ds.algo))
+                   return STAT_INSECURE; /* algo we can't use - insecure */
+                 else
+                   secure_ds = 1;
+@@ -1887,7 +1909,7 @@ static int zone_status(char *name, int class, char *keyname, time_t now)
+         do 
+           {
+-            if (crecp->uid == (unsigned int)class && !algo_digest_name(crecp->addr.key.algo))
++            if (crecp->uid == (unsigned int)class && !verify_func(crecp->addr.key.algo))
+               return STAT_INSECURE;
+           }
+         while ((crecp = cache_find_by_name(crecp, keyname, now, F_DNSKEY)));
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/025-Major_tidy_up_of_EDNS0_handling_and_computation_use_of_udp.patch b/src/patches/dnsmasq/025-Major_tidy_up_of_EDNS0_handling_and_computation_use_of_udp.patch
new file mode 100644 (file)
index 0000000..c016e73
--- /dev/null
@@ -0,0 +1,643 @@
+From fa14bec83b2db010fd076910fddab56957b9375d Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sun, 20 Dec 2015 17:12:16 +0000
+Subject: [PATCH] Major tidy up of EDNS0 handling and computation/use of udp
+ packet size.
+
+---
+ src/auth.c     |    8 ++-
+ src/dnsmasq.h  |    7 ++-
+ src/dnssec.c   |    1 -
+ src/forward.c  |  184 ++++++++++++++++++++++++++++++++++++++++----------------
+ src/netlink.c  |    3 +-
+ src/rfc1035.c  |   81 +++++++------------------
+ src/rrfilter.c |    2 +-
+ 7 files changed, 168 insertions(+), 118 deletions(-)
+
+diff --git a/src/auth.c b/src/auth.c
+index 2b0b7d6..85bd5e7 100644
+--- a/src/auth.c
++++ b/src/auth.c
+@@ -81,7 +81,8 @@ int in_zone(struct auth_zone *zone, char *name, char **cut)
+ }
+-size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t now, union mysockaddr *peer_addr, int local_query) 
++size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t now, union mysockaddr *peer_addr, 
++                 int local_query, int do_bit, int have_pseudoheader) 
+ {
+   char *name = daemon->namebuff;
+   unsigned char *p, *ansp;
+@@ -820,6 +821,11 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n
+   header->ancount = htons(anscount);
+   header->nscount = htons(authcount);
+   header->arcount = htons(0);
++
++  /* Advertise our packet size limit in our reply */
++  if (have_pseudoheader)
++    return add_pseudoheader(header,  ansp - (unsigned char *)header, (unsigned char *)limit, daemon->edns_pktsz, 0, NULL, 0, do_bit);
++
+   return ansp - (unsigned char *)header;
+ }
+   
+diff --git a/src/dnsmasq.h b/src/dnsmasq.h
+index 39a930c..abb34c5 100644
+--- a/src/dnsmasq.h
++++ b/src/dnsmasq.h
+@@ -1113,7 +1113,7 @@ int extract_addresses(struct dns_header *header, size_t qlen, char *namebuff,
+                     int no_cache, int secure, int *doctored);
+ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,  
+                     struct in_addr local_addr, struct in_addr local_netmask, 
+-                    time_t now, int *ad_reqd, int *do_bit);
++                    time_t now, int ad_reqd, int do_bit, int have_pseudoheader);
+ int check_for_bogus_wildcard(struct dns_header *header, size_t qlen, char *name, 
+                            struct bogus_addr *addr, time_t now);
+ int check_for_ignored_address(struct dns_header *header, size_t qlen, struct bogus_addr *baddr);
+@@ -1123,6 +1123,8 @@ int check_for_local_domain(char *name, time_t now);
+ unsigned int questions_crc(struct dns_header *header, size_t plen, char *buff);
+ size_t resize_packet(struct dns_header *header, size_t plen, 
+                 unsigned char *pheader, size_t hlen);
++size_t add_pseudoheader(struct dns_header *header, size_t plen, unsigned char *limit, 
++                      unsigned short udp_sz, int optno, unsigned char *opt, size_t optlen, int set_do);
+ size_t add_mac(struct dns_header *header, size_t plen, char *limit, union mysockaddr *l3);
+ size_t add_source_addr(struct dns_header *header, size_t plen, char *limit, union mysockaddr *source);
+ #ifdef HAVE_DNSSEC
+@@ -1141,7 +1143,8 @@ int private_net(struct in_addr addr, int ban_localhost);
+ /* auth.c */
+ #ifdef HAVE_AUTH
+ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, 
+-                 time_t now, union mysockaddr *peer_addr, int local_query);
++                 time_t now, union mysockaddr *peer_addr, int local_query,
++                 int do_bit, int have_pseudoheader);
+ int in_zone(struct auth_zone *zone, char *name, char **cut);
+ #endif
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 82394ee..299ca64 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -67,7 +67,6 @@ static char *algo_digest_name(int algo)
+     case 12: return "gosthash94";
+     case 13: return "sha256";
+     case 14: return "sha384";
+-
+     default: return NULL;
+     }
+ }
+diff --git a/src/forward.c b/src/forward.c
+index 3e801c8..041353c 100644
+--- a/src/forward.c
++++ b/src/forward.c
+@@ -244,7 +244,6 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
+   void *hash = &crc;
+ #endif
+  unsigned int gotname = extract_request(header, plen, daemon->namebuff, NULL);
+- unsigned char *pheader;
+  (void)do_bit;
+@@ -264,7 +263,8 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
+        there's no point retrying the query, retry the key query instead...... */
+       if (forward->blocking_query)
+       {
+-        int fd;
++        int fd, is_sign;
++        unsigned char *pheader;
+         
+         forward->flags &= ~FREC_TEST_PKTSZ;
+         
+@@ -276,8 +276,8 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
+         blockdata_retrieve(forward->stash, forward->stash_len, (void *)header);
+         plen = forward->stash_len;
+         
+-        if (find_pseudoheader(header, plen, NULL, &pheader, NULL))
+-          PUTSHORT((forward->flags & FREC_TEST_PKTSZ) ? SAFE_PKTSZ : forward->sentto->edns_pktsz, pheader);
++        if (find_pseudoheader(header, plen, NULL, &pheader, &is_sign) && !is_sign)
++          PUTSHORT(SAFE_PKTSZ, pheader);
+         if (forward->sentto->addr.sa.sa_family == AF_INET) 
+           log_query(F_NOEXTRA | F_DNSSEC | F_IPV4, "retry", (struct all_addr *)&forward->sentto->addr.in.sin_addr, "dnssec");
+@@ -394,32 +394,40 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
+       forward->log_id = daemon->log_id;
+       
+       if (option_bool(OPT_ADD_MAC))
+-      plen = add_mac(header, plen, ((char *) header) + daemon->packet_buff_sz, &forward->source);
+-      
++      {
++        size_t new = add_mac(header, plen, ((char *) header) + daemon->packet_buff_sz, &forward->source);
++        if (new != plen)
++          {
++            plen = new;
++            forward->flags |= FREC_ADDED_PHEADER;
++          }
++      }
++
+       if (option_bool(OPT_CLIENT_SUBNET))
+       {
+         size_t new = add_source_addr(header, plen, ((char *) header) + daemon->packet_buff_sz, &forward->source); 
+         if (new != plen)
+           {
+             plen = new;
+-            forward->flags |= FREC_HAS_SUBNET;
++            forward->flags |= FREC_HAS_SUBNET | FREC_ADDED_PHEADER;
+           }
+       }
+ #ifdef HAVE_DNSSEC
+       if (option_bool(OPT_DNSSEC_VALID))
+       {
+-        size_t new_plen = add_do_bit(header, plen, ((char *) header) + daemon->packet_buff_sz);
++        size_t new = add_do_bit(header, plen, ((char *) header) + daemon->packet_buff_sz);
+        
++        if (new != plen)
++          forward->flags |= FREC_ADDED_PHEADER;
++
++        plen = new;
++            
+         /* For debugging, set Checking Disabled, otherwise, have the upstream check too,
+            this allows it to select auth servers when one is returning bad data. */
+         if (option_bool(OPT_DNSSEC_DEBUG))
+           header->hb4 |= HB4_CD;
+-        if (new_plen != plen)
+-          forward->flags |= FREC_ADDED_PHEADER;
+-
+-        plen = new_plen;
+       }
+ #endif
+       
+@@ -469,10 +477,23 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
+                   }
+ #endif
+               }
+-
+-            if (find_pseudoheader(header, plen, NULL, &pheader, NULL))
+-              PUTSHORT((forward->flags & FREC_TEST_PKTSZ) ? SAFE_PKTSZ : start->edns_pktsz, pheader);
+             
++#ifdef HAVE_DNSSEC
++            if (option_bool(OPT_DNSSEC_VALID) && !do_bit)
++              {
++                /* Difficult one here. If our client didn't send EDNS0, we will have set the UDP
++                   packet size to 512. But that won't provide space for the RRSIGS in many cases.
++                   The RRSIGS will be stripped out before the answer goes back, so the packet should
++                   shrink again. So, if we added a do-bit, bump the udp packet size to the value
++                   known to be OK for this server. Maybe check returned size after stripping and set
++                   the truncated bit? */                
++                unsigned char *pheader;
++                int is_sign;
++                if (find_pseudoheader(header, plen, NULL, &pheader, &is_sign))
++                  PUTSHORT(start->edns_pktsz, pheader);
++              }
++#endif
++
+             if (retry_send(sendto(fd, (char *)header, plen, 0,
+                                   &start->addr.sa,
+                                   sa_len(&start->addr))))
+@@ -563,30 +584,34 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server
+     }
+ #endif
+   
+-  /* If upstream is advertising a larger UDP packet size
+-     than we allow, trim it so that we don't get overlarge
+-     requests for the client. We can't do this for signed packets. */
+-
+   if ((pheader = find_pseudoheader(header, n, &plen, &sizep, &is_sign)))
+     {
+-      unsigned short udpsz;
+-      unsigned char *psave = sizep;
+-      
+-      GETSHORT(udpsz, sizep);
+-
+-      if (!is_sign && udpsz > daemon->edns_pktsz)
+-      PUTSHORT(daemon->edns_pktsz, psave);
+-      
+       if (check_subnet && !check_source(header, plen, pheader, query_source))
+       {
+         my_syslog(LOG_WARNING, _("discarding DNS reply: subnet option mismatch"));
+         return 0;
+       }
+       
+-      if (added_pheader)
++      if (!is_sign)
+       {
+-        pheader = 0; 
+-        header->arcount = htons(0);
++        if (added_pheader)
++          {
++            /* client didn't send EDNS0, we added one, strip it off before returning answer. */
++            n = rrfilter(header, n, 0);
++            pheader = NULL;
++          }
++        else
++          {
++            /* If upstream is advertising a larger UDP packet size
++               than we allow, trim it so that we don't get overlarge
++               requests for the client. We can't do this for signed packets. */
++            unsigned short udpsz;
++            unsigned char *psave = sizep;
++            
++            GETSHORT(udpsz, sizep);
++            if (udpsz > daemon->edns_pktsz)
++              PUTSHORT(daemon->edns_pktsz, psave);
++          }
+       }
+     }
+   
+@@ -655,14 +680,16 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server
+     }
+   if (option_bool(OPT_DNSSEC_VALID))
+-    header->hb4 &= ~HB4_AD;
+-  
+-  if (!(header->hb4 & HB4_CD) && ad_reqd && cache_secure)
+-    header->hb4 |= HB4_AD;
+-
+-  /* If the requestor didn't set the DO bit, don't return DNSSEC info. */
+-  if (!do_bit)
+-    n = rrfilter(header, n, 1);
++    {
++      header->hb4 &= ~HB4_AD;
++      
++      if (!(header->hb4 & HB4_CD) && ad_reqd && cache_secure)
++      header->hb4 |= HB4_AD;
++      
++      /* If the requestor didn't set the DO bit, don't return DNSSEC info. */
++      if (!do_bit)
++      n = rrfilter(header, n, 1);
++    }
+ #endif
+   /* do this after extract_addresses. Ensure NODATA reply and remove
+@@ -761,8 +788,14 @@ void reply_query(int fd, int family, time_t now)
+         if ((nn = resize_packet(header, (size_t)n, pheader, plen)))
+           {
+             header->hb3 &= ~(HB3_QR | HB3_AA | HB3_TC);
+-            header->hb4 &= ~(HB4_RA | HB4_RCODE);
+-            forward_query(-1, NULL, NULL, 0, header, nn, now, forward, 0, 0);
++            header->hb4 &= ~(HB4_RA | HB4_RCODE | HB4_CD | HB4_AD);
++            if (forward->flags |= FREC_CHECKING_DISABLED)
++              header->hb4 |= HB4_CD;
++            if (forward->flags |= FREC_AD_QUESTION)
++              header->hb4 |= HB4_AD;
++            if (forward->flags & FREC_DO_QUESTION)
++              add_do_bit(header, nn,  (char *)pheader + plen);
++            forward_query(-1, NULL, NULL, 0, header, nn, now, forward, forward->flags & FREC_AD_QUESTION, forward->flags & FREC_DO_QUESTION);
+             return;
+           }
+       }
+@@ -1007,12 +1040,13 @@ void receive_query(struct listener *listen, time_t now)
+ {
+   struct dns_header *header = (struct dns_header *)daemon->packet;
+   union mysockaddr source_addr;
+-  unsigned short type;
++  unsigned char *pheader;
++  unsigned short type, udp_size = PACKETSZ; /* default if no EDNS0 */
+   struct all_addr dst_addr;
+   struct in_addr netmask, dst_addr_4;
+   size_t m;
+   ssize_t n;
+-  int if_index = 0, auth_dns = 0;
++  int if_index = 0, auth_dns = 0, do_bit = 0, have_pseudoheader = 0;
+ #ifdef HAVE_AUTH
+   int local_auth = 0;
+ #endif
+@@ -1279,10 +1313,30 @@ void receive_query(struct listener *listen, time_t now)
+ #endif
+     }
+   
++  if (find_pseudoheader(header, (size_t)n, NULL, &pheader, NULL))
++    { 
++      unsigned short flags;
++      
++      have_pseudoheader = 1;
++      GETSHORT(udp_size, pheader);
++      pheader += 2; /* ext_rcode */
++      GETSHORT(flags, pheader);
++      
++      if (flags & 0x8000)
++      do_bit = 1;/* do bit */ 
++      
++      /* If the client provides an EDNS0 UDP size, use that to limit our reply.
++       (bounded by the maximum configured). If no EDNS0, then it
++       defaults to 512 */
++      if (udp_size > daemon->edns_pktsz)
++      udp_size = daemon->edns_pktsz;
++    }
++
+ #ifdef HAVE_AUTH
+   if (auth_dns)
+     {
+-      m = answer_auth(header, ((char *) header) + daemon->packet_buff_sz, (size_t)n, now, &source_addr, local_auth);
++      m = answer_auth(header, ((char *) header) + udp_size, (size_t)n, now, &source_addr, 
++                    local_auth, do_bit, have_pseudoheader);
+       if (m >= 1)
+       {
+         send_from(listen->fd, option_bool(OPT_NOWILD) || option_bool(OPT_CLEVERBIND),
+@@ -1293,9 +1347,13 @@ void receive_query(struct listener *listen, time_t now)
+   else
+ #endif
+     {
+-      int ad_reqd, do_bit;
+-      m = answer_request(header, ((char *) header) + daemon->packet_buff_sz, (size_t)n, 
+-                       dst_addr_4, netmask, now, &ad_reqd, &do_bit);
++      int ad_reqd = do_bit;
++       /* RFC 6840 5.7 */
++      if (header->hb4 & HB4_AD)
++      ad_reqd = 1;
++
++      m = answer_request(header, ((char *) header) + udp_size, (size_t)n, 
++                       dst_addr_4, netmask, now, ad_reqd, do_bit, have_pseudoheader);
+       
+       if (m >= 1)
+       {
+@@ -1397,7 +1455,7 @@ unsigned char *tcp_request(int confd, time_t now,
+ #ifdef HAVE_AUTH
+   int local_auth = 0;
+ #endif
+-  int checking_disabled, ad_question, do_bit, added_pheader = 0;
++  int checking_disabled, do_bit, added_pheader = 0, have_pseudoheader = 0;
+   int check_subnet, no_cache_dnssec = 0, cache_secure = 0, bogusanswer = 0;
+   size_t m;
+   unsigned short qtype;
+@@ -1414,6 +1472,7 @@ unsigned char *tcp_request(int confd, time_t now,
+   union mysockaddr peer_addr;
+   socklen_t peer_len = sizeof(union mysockaddr);
+   int query_count = 0;
++  unsigned char *pheader;
+   if (getpeername(confd, (struct sockaddr *)&peer_addr, &peer_len) == -1)
+     return packet;
+@@ -1508,15 +1567,35 @@ unsigned char *tcp_request(int confd, time_t now,
+       else
+       dst_addr_4.s_addr = 0;
+       
++      do_bit = 0;
++
++      if (find_pseudoheader(header, (size_t)size, NULL, &pheader, NULL))
++      { 
++        unsigned short flags;
++        
++        have_pseudoheader = 1;
++        pheader += 4; /* udp_size, ext_rcode */
++        GETSHORT(flags, pheader);
++      
++        if (flags & 0x8000)
++          do_bit = 1;/* do bit */ 
++      }
++
+ #ifdef HAVE_AUTH
+       if (auth_dns)
+-      m = answer_auth(header, ((char *) header) + 65536, (size_t)size, now, &peer_addr, local_auth);
++      m = answer_auth(header, ((char *) header) + 65536, (size_t)size, now, &peer_addr, 
++                      local_auth, do_bit, have_pseudoheader);
+       else
+ #endif
+       {
+-        /* m > 0 if answered from cache */
+-        m = answer_request(header, ((char *) header) + 65536, (size_t)size, 
+-                           dst_addr_4, netmask, now, &ad_question, &do_bit);
++         int ad_reqd = do_bit;
++         /* RFC 6840 5.7 */
++         if (header->hb4 & HB4_AD)
++           ad_reqd = 1;
++         
++         /* m > 0 if answered from cache */
++         m = answer_request(header, ((char *) header) + 65536, (size_t)size, 
++                            dst_addr_4, netmask, now, ad_reqd, do_bit, have_pseudoheader);
+         
+         /* Do this by steam now we're not in the select() loop */
+         check_log_writer(1); 
+@@ -1615,6 +1694,7 @@ unsigned char *tcp_request(int confd, time_t now,
+                           }
+                         
+ #ifdef HAVE_DNSSEC
++                        added_pheader = 0;                      
+                         if (option_bool(OPT_DNSSEC_VALID))
+                           {
+                             size_t new_size = add_do_bit(header, size, ((char *) header) + 65536);
+@@ -1719,7 +1799,7 @@ unsigned char *tcp_request(int confd, time_t now,
+                     m = process_reply(header, now, last_server, (unsigned int)m, 
+                                       option_bool(OPT_NO_REBIND) && !norebind, no_cache_dnssec, cache_secure, bogusanswer,
+-                                      ad_question, do_bit, added_pheader, check_subnet, &peer_addr); 
++                                      ad_reqd, do_bit, added_pheader, check_subnet, &peer_addr); 
+                     
+                     break;
+                   }
+diff --git a/src/netlink.c b/src/netlink.c
+index 753784d..3376d68 100644
+--- a/src/netlink.c
++++ b/src/netlink.c
+@@ -288,7 +288,8 @@ int iface_enumerate(int family, void *parm, int (*callback)())
+               rta = RTA_NEXT(rta, len1);
+             }
+-          if (inaddr && mac && callback_ok)
++          if (!(neigh->ndm_state & (NUD_NOARP | NUD_INCOMPLETE | NUD_FAILED)) &&
++              inaddr && mac && callback_ok)
+             if (!((*callback)(neigh->ndm_family, inaddr, mac, maclen, parm)))
+               callback_ok = 0;
+         }
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index 188d05f..18858a8 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -489,8 +489,8 @@ struct macparm {
+   union mysockaddr *l3;
+ };
+  
+-static size_t add_pseudoheader(struct dns_header *header, size_t plen, unsigned char *limit, 
+-                             int optno, unsigned char *opt, size_t optlen, int set_do)
++size_t add_pseudoheader(struct dns_header *header, size_t plen, unsigned char *limit, 
++                      unsigned short udp_sz, int optno, unsigned char *opt, size_t optlen, int set_do)
+ { 
+   unsigned char *lenp, *datap, *p;
+   int rdlen, is_sign;
+@@ -508,7 +508,7 @@ static size_t add_pseudoheader(struct dns_header *header, size_t plen, unsigned
+       return plen;
+       *p++ = 0; /* empty name */
+       PUTSHORT(T_OPT, p);
+-      PUTSHORT(SAFE_PKTSZ, p); /* max packet length, this will be overwritten */
++      PUTSHORT(udp_sz, p); /* max packet length, 512 if not given in EDNS0 header */
+       PUTSHORT(0, p);    /* extended RCODE and version */
+       PUTSHORT(set_do ? 0x8000 : 0, p); /* DO flag */
+       lenp = p;
+@@ -594,7 +594,7 @@ static int filter_mac(int family, char *addrp, char *mac, size_t maclen, void *p
+   if (!match)
+     return 1; /* continue */
+-  parm->plen = add_pseudoheader(parm->header, parm->plen, parm->limit,  EDNS0_OPTION_MAC, (unsigned char *)mac, maclen, 0);
++  parm->plen = add_pseudoheader(parm->header, parm->plen, parm->limit, PACKETSZ, EDNS0_OPTION_MAC, (unsigned char *)mac, maclen, 0);
+   
+   return 0; /* done */
+ }           
+@@ -603,12 +603,6 @@ size_t add_mac(struct dns_header *header, size_t plen, char *limit, union mysock
+ {
+   struct macparm parm;
+      
+-/* Must have an existing pseudoheader as the only ar-record, 
+-   or have no ar-records. Must also not be signed */
+-   
+-  if (ntohs(header->arcount) > 1)
+-    return plen;
+-
+   parm.header = header;
+   parm.limit = (unsigned char *)limit;
+   parm.plen = plen;
+@@ -699,13 +693,13 @@ size_t add_source_addr(struct dns_header *header, size_t plen, char *limit, unio
+   struct subnet_opt opt;
+   
+   len = calc_subnet_opt(&opt, source);
+-  return add_pseudoheader(header, plen, (unsigned char *)limit, EDNS0_OPTION_CLIENT_SUBNET, (unsigned char *)&opt, len, 0);
++  return add_pseudoheader(header, plen, (unsigned char *)limit, PACKETSZ, EDNS0_OPTION_CLIENT_SUBNET, (unsigned char *)&opt, len, 0);
+ }
+ #ifdef HAVE_DNSSEC
+ size_t add_do_bit(struct dns_header *header, size_t plen, char *limit)
+ {
+-  return add_pseudoheader(header, plen, (unsigned char *)limit, 0, NULL, 0, 1);
++  return add_pseudoheader(header, plen, (unsigned char *)limit, PACKETSZ, 0, NULL, 0, 1);
+ }
+ #endif
+@@ -1525,16 +1519,16 @@ static unsigned long crec_ttl(struct crec *crecp, time_t now)
+ /* return zero if we can't answer from cache, or packet size if we can */
+ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,  
+                     struct in_addr local_addr, struct in_addr local_netmask, 
+-                    time_t now, int *ad_reqd, int *do_bit) 
++                    time_t now, int ad_reqd, int do_bit, int have_pseudoheader) 
+ {
+   char *name = daemon->namebuff;
+-  unsigned char *p, *ansp, *pheader;
++  unsigned char *p, *ansp;
+   unsigned int qtype, qclass;
+   struct all_addr addr;
+   int nameoffset;
+   unsigned short flag;
+   int q, ans, anscount = 0, addncount = 0;
+-  int dryrun = 0, sec_reqd = 0, have_pseudoheader = 0;
++  int dryrun = 0;
+   struct crec *crecp;
+   int nxdomain = 0, auth = 1, trunc = 0, sec_data = 1;
+   struct mx_srv_record *rec;
+@@ -1550,35 +1544,11 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+   if (header->hb4 & HB4_CD)
+     sec_data = 0;
+   
+-  /* RFC 6840 5.7 */
+-  *ad_reqd = header->hb4 & HB4_AD;
+-  *do_bit = 0;
+-
+   /* If there is an  additional data section then it will be overwritten by
+      partial replies, so we have to do a dry run to see if we can answer
+      the query. */
+-
+   if (ntohs(header->arcount) != 0)
+-    {
+-      dryrun = 1;
+-
+-      /* If there's an additional section, there might be an EDNS(0) pseudoheader */
+-      if (find_pseudoheader(header, qlen, NULL, &pheader, NULL))
+-      { 
+-        unsigned short flags;
+-        
+-        have_pseudoheader = 1;
+-        
+-        pheader += 4; /* udp size, ext_rcode */
+-        GETSHORT(flags, pheader);
+-        
+-        if ((sec_reqd = flags & 0x8000))
+-          {
+-            *do_bit = 1;/* do bit */ 
+-            *ad_reqd = 1;
+-          }
+-      }
+-    }
++    dryrun = 1;
+   for (rec = daemon->mxnames; rec; rec = rec->next)
+     rec->offset = 0;
+@@ -1603,11 +1573,6 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+       GETSHORT(qtype, p); 
+       GETSHORT(qclass, p);
+-      /* Don't filter RRSIGS from answers to ANY queries, even if do-bit
+-       not set. */
+-      if (qtype == T_ANY)
+-      *do_bit = 1;
+-
+       ans = 0; /* have we answered this question */
+       
+       if (qtype == T_TXT || qtype == T_ANY)
+@@ -1739,7 +1704,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+                    the zone is unsigned, which implies that we're doing
+                    validation. */
+                 if ((crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) || 
+-                    !sec_reqd || 
++                    !do_bit || 
+                     (option_bool(OPT_DNSSEC_VALID) && !(crecp->flags & F_DNSSECOK)))
+                   {
+                     do 
+@@ -1927,7 +1892,7 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+                   }
+                 /* If the client asked for DNSSEC  don't use cached data. */
+-                if ((crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) || !sec_reqd || !(crecp->flags & F_DNSSECOK))
++                if ((crecp->flags & (F_HOSTS | F_DHCP | F_CONFIG)) || !do_bit || !(crecp->flags & F_DNSSECOK))
+                   do
+                     { 
+                       /* don't answer wildcard queries with data not from /etc/hosts
+@@ -1961,17 +1926,12 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+                       
+                       if (crecp->flags & F_NEG)
+                         {
+-                          /* We don't cache NSEC records, so if a DNSSEC-validated negative answer
+-                             is cached and the client wants DNSSEC, forward rather than answering from the cache */
+-                          if (!sec_reqd || !(crecp->flags & F_DNSSECOK))
+-                            {
+-                              ans = 1;
+-                              auth = 0;
+-                              if (crecp->flags & F_NXDOMAIN)
+-                                nxdomain = 1;
+-                              if (!dryrun)
+-                                log_query(crecp->flags, name, NULL, NULL);
+-                            }
++                          ans = 1;
++                          auth = 0;
++                          if (crecp->flags & F_NXDOMAIN)
++                            nxdomain = 1;
++                          if (!dryrun)
++                            log_query(crecp->flags, name, NULL, NULL);
+                         }
+                       else 
+                         {
+@@ -2209,10 +2169,11 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+   len = ansp - (unsigned char *)header;
+   
++  /* Advertise our packet size limit in our reply */
+   if (have_pseudoheader)
+-    len = add_pseudoheader(header, len, (unsigned char *)limit, 0, NULL, 0, sec_reqd);
++    len = add_pseudoheader(header, len, (unsigned char *)limit, daemon->edns_pktsz, 0, NULL, 0, do_bit);
+   
+-  if (*ad_reqd && sec_data)
++  if (ad_reqd && sec_data)
+     header->hb4 |= HB4_AD;
+   else
+     header->hb4 &= ~HB4_AD;
+diff --git a/src/rrfilter.c b/src/rrfilter.c
+index ae12261..b26b39f 100644
+--- a/src/rrfilter.c
++++ b/src/rrfilter.c
+@@ -243,7 +243,7 @@ size_t rrfilter(struct dns_header *header, size_t plen, int mode)
+   for (p = rrs[0], i = 1; i < rr_found; i += 2)
+     {
+       unsigned char *start = rrs[i];
+-      unsigned char *end = (i != rr_found - 1) ? rrs[i+1] : ((unsigned char *)(header+1)) + plen;
++      unsigned char *end = (i != rr_found - 1) ? rrs[i+1] : ((unsigned char *)header) + plen;
+       
+       memmove(p, start, end-start);
+       p += end-start;
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/026-More_tweaks_in_handling_unknown_DNSSEC_algorithms.patch b/src/patches/dnsmasq/026-More_tweaks_in_handling_unknown_DNSSEC_algorithms.patch
new file mode 100644 (file)
index 0000000..910921b
--- /dev/null
@@ -0,0 +1,262 @@
+From d67ecac59d58f249707d26e38d49c29b552af4d8 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sun, 20 Dec 2015 20:44:23 +0000
+Subject: [PATCH] More tweaks in handling unknown DNSSEC algorithms.
+
+---
+ src/dnssec.c |  128 +++++++++++++++++++++++++++++-----------------------------
+ 1 file changed, 63 insertions(+), 65 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 299ca64..e09f304 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -70,7 +70,17 @@ static char *algo_digest_name(int algo)
+     default: return NULL;
+     }
+ }
+-      
++  
++/* http://www.iana.org/assignments/dnssec-nsec3-parameters/dnssec-nsec3-parameters.xhtml */
++static char *nsec3_digest_name(int digest)
++{
++  switch (digest)
++    {
++    case 1: return "sha1";
++    default: return NULL;
++    }
++}
++ 
+ /* Find pointer to correct hash function in nettle library */
+ static const struct nettle_hash *hash_find(char *name)
+ {
+@@ -667,7 +677,6 @@ static int explore_rrset(struct dns_header *header, size_t plen, int class, int
+   static int rrset_sz = 0, sig_sz = 0; 
+   unsigned char *p;
+   int rrsetidx, sigidx, j, rdlen, res;
+-  int name_labels = count_labels(name); /* For 4035 5.3.2 check */
+   int gotkey = 0;
+   if (!(p = skip_questions(header, plen)))
+@@ -678,7 +687,7 @@ static int explore_rrset(struct dns_header *header, size_t plen, int class, int
+        j != 0; j--) 
+     {
+       unsigned char *pstart, *pdata;
+-      int stype, sclass, algo, type_covered, labels, sig_expiration, sig_inception;
++      int stype, sclass, type_covered;
+       pstart = p;
+       
+@@ -712,12 +721,7 @@ static int explore_rrset(struct dns_header *header, size_t plen, int class, int
+               return 0; /* bad packet */ 
+             
+             GETSHORT(type_covered, p);
+-            algo = *p++;
+-            labels = *p++;
+-            p += 4; /* orig_ttl */
+-            GETLONG(sig_expiration, p);
+-            GETLONG(sig_inception, p);
+-            p += 2; /* key_tag */
++            p += 16; /* algo, labels, orig_ttl, sig_expiration, sig_inception, key_tag */
+             
+             if (gotkey)
+               {
+@@ -749,11 +753,8 @@ static int explore_rrset(struct dns_header *header, size_t plen, int class, int
+                   }
+               }
+                 
+-            /* Don't count signatures for algos we don't support */
+-            if (check_date_range(sig_inception, sig_expiration) &&
+-                labels <= name_labels &&
+-                type_covered == type && 
+-                verify_func(algo))
++            
++            if (type_covered == type)
+               {
+                 if (!expand_workspace(&sigs, &sig_sz, sigidx))
+                   return 0; 
+@@ -795,7 +796,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+                         char *name, char *keyname, char **wildcard_out, struct blockdata *key, int keylen, int algo_in, int keytag_in)
+ {
+   unsigned char *p;
+-  int rdlen, j, name_labels;
++  int rdlen, j, name_labels, sig_expiration, sig_inception;
+   struct crec *crecp = NULL;
+   int algo, labels, orig_ttl, key_tag;
+   u16 *rr_desc = rrfilter_desc(type);
+@@ -828,13 +829,16 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+       algo = *p++;
+       labels = *p++;
+       GETLONG(orig_ttl, p);
+-      p += 8; /* sig_expiration, sig_inception already checked */
++      GETLONG(sig_expiration, p);
++      GETLONG(sig_inception, p);
+       GETSHORT(key_tag, p);
+       
+       if (!extract_name(header, plen, &p, keyname, 1, 0))
+       return STAT_BOGUS;
+-      if (!(hash = hash_find(algo_digest_name(algo))) ||
++      if (!check_date_range(sig_inception, sig_expiration) ||
++        labels > name_labels ||
++        !(hash = hash_find(algo_digest_name(algo))) ||
+         !hash_init(hash, &ctx, &digest))
+       continue;
+       
+@@ -1112,7 +1116,10 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch
+                     else
+                       {
+                         a.addr.keytag = keytag;
+-                        log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DNSKEY keytag %u");
++                        if (verify_func(algo))
++                          log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DNSKEY keytag %u");
++                        else
++                          log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DNSKEY keytag %u (not supported)");
+                         
+                         recp1->addr.key.keylen = rdlen - 4;
+                         recp1->addr.key.keydata = key;
+@@ -1235,7 +1242,11 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char
+                 else
+                   {
+                     a.addr.keytag = keytag;
+-                    log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
++                    if (hash_find(ds_digest_name(digest)) && verify_func(algo))
++                      log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u");
++                    else
++                      log_query(F_NOEXTRA | F_KEYTAG | F_UPSTREAM, name, &a, "DS keytag %u (not supported)");
++                    
+                     crecp->addr.ds.digest = digest;
+                     crecp->addr.ds.keydata = key;
+                     crecp->addr.ds.algo = algo;
+@@ -1660,7 +1671,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+     *nons = 1;
+   
+   /* Look though the NSEC3 records to find the first one with 
+-     an algorithm we support (currently only algo == 1).
++     an algorithm we support.
+      Take the algo, iterations, and salt of that record
+      as the ones we're going to use, and prune any 
+@@ -1674,7 +1685,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+       p += 10; /* type, class, TTL, rdlen */
+       algo = *p++;
+       
+-      if (algo == 1)
++      if ((hash = hash_find(nsec3_digest_name(algo))))
+       break; /* known algo */
+     }
+@@ -1724,10 +1735,6 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+       nsecs[i] = nsec3p;
+     }
+-  /* Algo is checked as 1 above */
+-  if (!(hash = hash_find("sha1")))
+-    return 0;
+-
+   if ((digest_len = hash_name(name, &digest, hash, salt, salt_len, iterations)) == 0)
+     return 0;
+   
+@@ -1843,8 +1850,10 @@ static int prove_non_existence(struct dns_header *header, size_t plen, char *key
+   
+   if (type_found == T_NSEC)
+     return prove_non_existence_nsec(header, plen, nsecset, nsecs_found, daemon->workspacename, keyname, name, qtype, nons);
+-  else
++  else if (type_found == T_NSEC3)
+     return prove_non_existence_nsec3(header, plen, nsecset, nsecs_found, daemon->workspacename, keyname, name, qtype, wildname, nons);
++  else
++    return 0;
+ }
+ /* Check signing status of name.
+@@ -1857,7 +1866,7 @@ static int prove_non_existence(struct dns_header *header, size_t plen, char *key
+ */
+ static int zone_status(char *name, int class, char *keyname, time_t now)
+ {
+-  int secure_ds, name_start = strlen(name);
++  int name_start = strlen(name);
+   struct crec *crecp;
+   char *p;
+   
+@@ -1867,51 +1876,40 @@ static int zone_status(char *name, int class, char *keyname, time_t now)
+       
+       if (!(crecp = cache_find_by_name(NULL, keyname, now, F_DS)))
+       return STAT_NEED_DS;
++      
++       /* F_DNSSECOK misused in DS cache records to non-existance of NS record.
++        F_NEG && !F_DNSSECOK implies that we've proved there's no DS record here,
++        but that's because there's no NS record either, ie this isn't the start
++        of a zone. We only prove that the DNS tree below a node is unsigned when
++        we prove that we're at a zone cut AND there's no DS record. */
++      if (crecp->flags & F_NEG)
++      {
++        if (crecp->flags & F_DNSSECOK)
++          return STAT_INSECURE; /* proved no DS here */
++      }
+       else
+       {
+-        secure_ds = 0;
+-        
++        int gotone = 0;
++
++        /* If all the DS records have digest and/or sig algos we don't support,
++           then the zone is insecure. Note that if an algo
++           appears in the DS, then RRSIGs for that algo MUST
++           exist for each RRset: 4035 para 2.2  So if we find
++           a DS here with digest and sig we can do, we're entitled
++           to assume we can validate the zone and if we can't later,
++           because an RRSIG is missing we return BOGUS.
++        */
+         do 
+           {
+-            if (crecp->uid == (unsigned int)class)
+-              {
+-                /* F_DNSSECOK misused in DS cache records to non-existance of NS record.
+-                   F_NEG && !F_DNSSECOK implies that we've proved there's no DS record here,
+-                   but that's because there's no NS record either, ie this isn't the start
+-                   of a zone. We only prove that the DNS tree below a node is unsigned when
+-                   we prove that we're at a zone cut AND there's no DS record.
+-                */      
+-                if (crecp->flags & F_NEG)
+-                  {
+-                    if (crecp->flags & F_DNSSECOK)
+-                      return STAT_INSECURE; /* proved no DS here */
+-                  }
+-                else if (!hash_find(ds_digest_name(crecp->addr.ds.digest)) || !verify_func(crecp->addr.ds.algo))
+-                  return STAT_INSECURE; /* algo we can't use - insecure */
+-                else
+-                  secure_ds = 1;
+-              }
++            if (crecp->uid == (unsigned int)class &&
++                hash_find(ds_digest_name(crecp->addr.ds.digest)) &&
++                verify_func(crecp->addr.ds.algo))
++              gotone = 1;
+           }
+         while ((crecp = cache_find_by_name(crecp, keyname, now, F_DS)));
+-      }
+-
+-      if (secure_ds)
+-      {
+-        /* We've found only DS records that attest to the DNSKEY RRset in the zone, so we believe
+-           that RRset is good. Furthermore the DNSKEY whose hash is proved by the DS record is
+-           one we can use. However the DNSKEY RRset may contain more than one key and
+-           one of the other keys may use an algorithm we don't support. If that's 
+-           the case the zone is insecure for us. */
+-        
+-        if (!(crecp = cache_find_by_name(NULL, keyname, now, F_DNSKEY)))
+-          return STAT_NEED_KEY;
+-        do 
+-          {
+-            if (crecp->uid == (unsigned int)class && !verify_func(crecp->addr.key.algo))
+-              return STAT_INSECURE;
+-          }
+-        while ((crecp = cache_find_by_name(crecp, keyname, now, F_DNSKEY)));
++        if (!gotone)
++          return STAT_INSECURE;
+       }
+       if (name_start == 0)
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/027-Nasty_rare_and_obscure_off-by-one_in_DNSSEC_hostname_cmp.patch b/src/patches/dnsmasq/027-Nasty_rare_and_obscure_off-by-one_in_DNSSEC_hostname_cmp.patch
new file mode 100644 (file)
index 0000000..031339e
--- /dev/null
@@ -0,0 +1,27 @@
+From 3e86d316c4bb406ed813aa5256615c8a95cac6d8 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sun, 20 Dec 2015 20:50:05 +0000
+Subject: [PATCH] Nasty, rare and obscure off-by-one in DNSSEC hostname_cmp().
+
+---
+ src/dnssec.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index e09f304..29848e1 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1394,8 +1394,8 @@ static int hostname_cmp(const char *a, const char *b)
+       if (sb == b)
+       return 1;
+       
+-      ea = sa--;
+-      eb = sb--;
++      ea = --sa;
++      eb = --sb;
+     }
+ }
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/028-Minor_tweak_to_previous_commit.patch b/src/patches/dnsmasq/028-Minor_tweak_to_previous_commit.patch
new file mode 100644 (file)
index 0000000..f3758fc
--- /dev/null
@@ -0,0 +1,39 @@
+From a86fdf437ecc29398f9715ceb5240442a17ac014 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sun, 20 Dec 2015 21:19:20 +0000
+Subject: [PATCH] Minor tweak to previous commit.
+
+---
+ src/dnssec.c |    6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 29848e1..9fa64b6 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1889,8 +1889,6 @@ static int zone_status(char *name, int class, char *keyname, time_t now)
+       }
+       else
+       {
+-        int gotone = 0;
+-
+         /* If all the DS records have digest and/or sig algos we don't support,
+            then the zone is insecure. Note that if an algo
+            appears in the DS, then RRSIGs for that algo MUST
+@@ -1904,11 +1902,11 @@ static int zone_status(char *name, int class, char *keyname, time_t now)
+             if (crecp->uid == (unsigned int)class &&
+                 hash_find(ds_digest_name(crecp->addr.ds.digest)) &&
+                 verify_func(crecp->addr.ds.algo))
+-              gotone = 1;
++              break;
+           }
+         while ((crecp = cache_find_by_name(crecp, keyname, now, F_DS)));
+-        if (!gotone)
++        if (!crecp)
+           return STAT_INSECURE;
+       }
+-- 
+1.7.10.4
+
diff --git a/src/patches/dnsmasq/029-NSEC3_check_RFC5155_para_8_2.patch b/src/patches/dnsmasq/029-NSEC3_check_RFC5155_para_8_2.patch
new file mode 100644 (file)
index 0000000..33219d2
--- /dev/null
@@ -0,0 +1,39 @@
+From ce5732e84fc46d7f99c152f736cfb4ef5ec98a01 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sun, 20 Dec 2015 21:39:19 +0000
+Subject: [PATCH] NSEC3 check: RFC5155 para 8.2
+
+---
+ src/dnssec.c |    8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 9fa64b6..486e422 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -1704,7 +1704,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+   for (i = 0; i < nsec_count; i++)
+     {
+       unsigned char *nsec3p = nsecs[i];
+-      int this_iter;
++      int this_iter, flags;
+       nsecs[i] = NULL; /* Speculative, will be restored if OK. */
+       
+@@ -1716,8 +1716,12 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns
+       if (*p++ != algo)
+       continue;
+  
+-      p++; /* flags */
++      flags = *p++; /* flags */
+       
++      /* 5155 8.2 */
++      if (flags != 0 && flags != 1)
++      continue;
++
+       GETSHORT(this_iter, p);
+       if (this_iter != iterations)
+       continue;
+-- 
+1.7.10.4
+
diff --git a/src/patches/dracut-038_add_sdhci-pci.patch b/src/patches/dracut-038_add_sdhci-pci.patch
new file mode 100644 (file)
index 0000000..b002246
--- /dev/null
@@ -0,0 +1,12 @@
+diff -Naur dracut-038.org/modules.d/90kernel-modules/module-setup.sh dracut-038/modules.d/90kernel-modules/module-setup.sh
+--- dracut-038.org/modules.d/90kernel-modules/module-setup.sh  2014-06-30 12:03:12.000000000 +0200
++++ dracut-038/modules.d/90kernel-modules/module-setup.sh      2015-05-05 14:58:56.820197839 +0200
+@@ -47,7 +47,7 @@
+             atkbd i8042 usbhid hid-apple hid-sunplus hid-cherry hid-logitech \
+             hid-logitech-dj hid-microsoft firewire-ohci \
+             pcmcia usb_storage nvme hid-hyperv hv-vmbus \
+-            sdhci_acpi
++            sdhci_acpi sdhci_pci
+         if [[ "$(uname -p)" == arm* ]]; then
+             # arm specific modules
similarity index 90%
rename from src/patches/fireinfo-Add-an-other-forbidden-string-Serial.patch
rename to src/patches/fireinfo/0001-Add-an-other-forbidden-string-Serial.patch
index d7108520d47af120ed47c538aba701c535f101d7..00c983809fb303b52ca1e62a79395c5ab125f9a9 100644 (file)
@@ -1,7 +1,7 @@
 From edacae4b2cdc41f1c0bfc93e041532ff6c49f60c Mon Sep 17 00:00:00 2001
 From: Michael Tremer <michael.tremer@ipfire.org>
 Date: Tue, 17 Mar 2015 22:19:17 +0100
-Subject: [PATCH] Add an other forbidden string: "Serial"
+Subject: [PATCH 1/5] Add an other forbidden string: "Serial"
 
 ---
  src/fireinfo/system.py | 2 +-
@@ -21,5 +21,5 @@ index daf77b399d20..9d7872822b85 100644
        "01010101-0101-0101-0101-010101010101",
        "00020003-0004-0005-0006-000700080009",
 -- 
-2.1.0
+2.4.3
 
diff --git a/src/patches/fireinfo/0002-Escape-any-non-printable-ascii-characters.patch b/src/patches/fireinfo/0002-Escape-any-non-printable-ascii-characters.patch
new file mode 100644 (file)
index 0000000..576154b
--- /dev/null
@@ -0,0 +1,69 @@
+From 4468fb2eb49e21d2350f6619584e6816f5159d29 Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Sat, 28 Mar 2015 13:17:57 +0100
+Subject: [PATCH 2/5] Escape any non-printable ascii characters
+
+http://forum.ipfire.org/viewtopic.php?f=5&t=12970
+---
+ src/fireinfo/system.py | 18 ++++++++++++++----
+ 1 file changed, 14 insertions(+), 4 deletions(-)
+
+diff --git a/src/fireinfo/system.py b/src/fireinfo/system.py
+index 9d7872822b85..4148c66eded7 100644
+--- a/src/fireinfo/system.py
++++ b/src/fireinfo/system.py
+@@ -325,6 +325,16 @@ class System(object):
+               return v, m
++      @staticmethod
++      def escape_string(s):
++              """
++                      Will remove all non-printable characters from the given string
++              """
++              if s is None:
++                      return
++
++              return filter(lambda x: x in string.printable, s)
++
+       @property
+       def vendor(self):
+               """
+@@ -334,14 +344,14 @@ class System(object):
+               for file in ("sys_vendor", "board_vendor", "chassis_vendor",):
+                       ret = read_from_file(os.path.join(SYS_CLASS_DMI, file))
+                       if ret:
+-                              return ret
++                              return self.escape_string(ret)
+               if os.path.exists("/proc/device-tree"):
+                       ret = self.__cpuinfo.get("Hardware", None)
+               else:
+                       ret, m = self.vendor_model_tuple()
+-              return ret
++              return self.escape_string(ret)
+       @property
+       def model(self):
+@@ -352,7 +362,7 @@ class System(object):
+               for file in ("product_name", "board_model", "chassis_model",):
+                       ret = read_from_file(os.path.join(SYS_CLASS_DMI, file))
+                       if ret:
+-                              return ret
++                              return self.escape_string(ret)
+               # Read device-tree model if available
+               ret = read_from_file("/proc/device-tree/model")
+@@ -364,7 +374,7 @@ class System(object):
+               if not ret:
+                       v, ret = self.vendor_model_tuple()
+-              return ret
++              return self.escape_string(ret)
+       @property
+       def memory(self):
+-- 
+2.4.3
+
diff --git a/src/patches/fireinfo/0003-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch b/src/patches/fireinfo/0003-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch
new file mode 100644 (file)
index 0000000..f643251
--- /dev/null
@@ -0,0 +1,35 @@
+From c667589410912ca980a78f417e86dd6585d58f9a Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Mon, 4 May 2015 16:00:31 +0200
+Subject: [PATCH 3/5] Skip search for hypervisor name when the CPU string is
+ empty
+
+---
+ src/_fireinfo/fireinfo.c | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/src/_fireinfo/fireinfo.c b/src/_fireinfo/fireinfo.c
+index fc639d9d4cd9..6601c21a733f 100644
+--- a/src/_fireinfo/fireinfo.c
++++ b/src/_fireinfo/fireinfo.c
+@@ -156,11 +156,12 @@ int detect_hypervisor(int *hypervisor) {
+               *hypervisor = HYPER_OTHER;
+-              int id;
+-              for (id = HYPER_NONE + 1; id < HYPER_LAST; id++) {
+-                      if (strcmp(hypervisor_ids[id], sig.text) == 0) {
+-                              *hypervisor = id;
+-                              break;
++              if (*sig.text) {
++                      for (int id = HYPER_NONE + 1; id < HYPER_LAST; id++) {
++                              if (strcmp(hypervisor_ids[id], sig.text) == 0) {
++                                      *hypervisor = id;
++                                      break;
++                              }
+                       }
+               }
+-- 
+2.4.3
+
diff --git a/src/patches/fireinfo/0004-Filter-all-IDs-that-only-consist-of-0xff.patch b/src/patches/fireinfo/0004-Filter-all-IDs-that-only-consist-of-0xff.patch
new file mode 100644 (file)
index 0000000..737a319
--- /dev/null
@@ -0,0 +1,28 @@
+From d58f8ef75a29dd6f8968084b5383ce0f39c75666 Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Wed, 12 Aug 2015 10:50:42 +0100
+Subject: [PATCH 4/5] Filter all IDs that only consist of 0xff
+
+Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
+---
+ src/fireinfo/system.py | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/fireinfo/system.py b/src/fireinfo/system.py
+index 4148c66eded7..edf7359a17e6 100644
+--- a/src/fireinfo/system.py
++++ b/src/fireinfo/system.py
+@@ -255,6 +255,10 @@ class System(object):
+                                               id = None
+                                               break
++                      # Check if the string only contains 0xff
++                      if all((e == "\xff" for e in id)):
++                              id = None
++
+                       if id:
+                               _ids.append(id)
+-- 
+2.4.3
+
diff --git a/src/patches/fireinfo/0005-Fix-crash-if-there-is-id-has-already-been-reset-to-N.patch b/src/patches/fireinfo/0005-Fix-crash-if-there-is-id-has-already-been-reset-to-N.patch
new file mode 100644 (file)
index 0000000..dcc552d
--- /dev/null
@@ -0,0 +1,26 @@
+From deafec982e4c8f2e6ffa3bf70b0a94fa30158e9a Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Wed, 9 Sep 2015 15:04:43 +0100
+Subject: [PATCH 5/5] Fix crash if there is id has already been reset to None
+
+Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
+---
+ src/fireinfo/system.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/fireinfo/system.py b/src/fireinfo/system.py
+index edf7359a17e6..c2ba12e818f0 100644
+--- a/src/fireinfo/system.py
++++ b/src/fireinfo/system.py
+@@ -256,7 +256,7 @@ class System(object):
+                                               break
+                       # Check if the string only contains 0xff
+-                      if all((e == "\xff" for e in id)):
++                      if id and all((e == "\xff" for e in id)):
+                               id = None
+                       if id:
+-- 
+2.4.3
+
diff --git a/src/patches/gcc/gcc-fix-inlining-issues.patch b/src/patches/gcc/gcc-fix-inlining-issues.patch
new file mode 100644 (file)
index 0000000..3c638e2
--- /dev/null
@@ -0,0 +1,1064 @@
+From: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61164
+
+--- trunk/libitm/local_atomic  2015/08/20 17:43:55     227039
++++ trunk/libitm/local_atomic  2015/08/20 17:55:24     227040
+@@ -41,8 +41,7 @@
+ #ifndef _GLIBCXX_ATOMIC
+ #define _GLIBCXX_ATOMIC 1
+-#undef  __always_inline
+-#define __always_inline __attribute__((always_inline))
++#define __libitm_always_inline __attribute__((always_inline))
+ // #pragma GCC system_header
+@@ -74,7 +73,7 @@
+       memory_order_seq_cst
+     } memory_order;
+-  inline __always_inline memory_order
++  inline __libitm_always_inline memory_order
+   __calculate_memory_order(memory_order __m) noexcept
+   {
+     const bool __cond1 = __m == memory_order_release;
+@@ -84,13 +83,13 @@
+     return __mo2;
+   }
+-  inline __always_inline void
++  inline __libitm_always_inline void
+   atomic_thread_fence(memory_order __m) noexcept
+   {
+     __atomic_thread_fence (__m);
+   }
+-  inline __always_inline void
++  inline __libitm_always_inline void
+   atomic_signal_fence(memory_order __m) noexcept
+   {
+     __atomic_thread_fence (__m);
+@@ -280,19 +279,19 @@
+     // Conversion to ATOMIC_FLAG_INIT.
+     atomic_flag(bool __i) noexcept : __atomic_flag_base({ __i }) { }
+-    __always_inline bool
++    __libitm_always_inline bool
+     test_and_set(memory_order __m = memory_order_seq_cst) noexcept
+     {
+       return __atomic_test_and_set (&_M_i, __m);
+     }
+-    __always_inline bool
++    __libitm_always_inline bool
+     test_and_set(memory_order __m = memory_order_seq_cst) volatile noexcept
+     {
+       return __atomic_test_and_set (&_M_i, __m);
+     }
+-    __always_inline void
++    __libitm_always_inline void
+     clear(memory_order __m = memory_order_seq_cst) noexcept
+     {
+       // __glibcxx_assert(__m != memory_order_consume);
+@@ -302,7 +301,7 @@
+       __atomic_clear (&_M_i, __m);
+     }
+-    __always_inline void
++    __libitm_always_inline void
+     clear(memory_order __m = memory_order_seq_cst) volatile noexcept
+     {
+       // __glibcxx_assert(__m != memory_order_consume);
+@@ -455,7 +454,7 @@
+       is_lock_free() const volatile noexcept
+       { return __atomic_is_lock_free (sizeof (_M_i), &_M_i); }
+-      __always_inline void
++      __libitm_always_inline void
+       store(__int_type __i, memory_order __m = memory_order_seq_cst) noexcept
+       {
+       // __glibcxx_assert(__m != memory_order_acquire);
+@@ -465,7 +464,7 @@
+       __atomic_store_n(&_M_i, __i, __m);
+       }
+-      __always_inline void
++      __libitm_always_inline void
+       store(__int_type __i,
+           memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+@@ -476,7 +475,7 @@
+       __atomic_store_n(&_M_i, __i, __m);
+       }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       load(memory_order __m = memory_order_seq_cst) const noexcept
+       {
+       // __glibcxx_assert(__m != memory_order_release);
+@@ -485,7 +484,7 @@
+       return __atomic_load_n(&_M_i, __m);
+       }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       load(memory_order __m = memory_order_seq_cst) const volatile noexcept
+       {
+       // __glibcxx_assert(__m != memory_order_release);
+@@ -494,21 +493,21 @@
+       return __atomic_load_n(&_M_i, __m);
+       }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       exchange(__int_type __i,
+              memory_order __m = memory_order_seq_cst) noexcept
+       {
+       return __atomic_exchange_n(&_M_i, __i, __m);
+       }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       exchange(__int_type __i,
+              memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+       return __atomic_exchange_n(&_M_i, __i, __m);
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__int_type& __i1, __int_type __i2,
+                           memory_order __m1, memory_order __m2) noexcept
+       {
+@@ -519,7 +518,7 @@
+       return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 1, __m1, __m2);
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__int_type& __i1, __int_type __i2,
+                           memory_order __m1,
+                           memory_order __m2) volatile noexcept
+@@ -531,7 +530,7 @@
+       return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 1, __m1, __m2);
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__int_type& __i1, __int_type __i2,
+                           memory_order __m = memory_order_seq_cst) noexcept
+       {
+@@ -539,7 +538,7 @@
+                                    __calculate_memory_order(__m));
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__int_type& __i1, __int_type __i2,
+                  memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+@@ -547,7 +546,7 @@
+                                    __calculate_memory_order(__m));
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__int_type& __i1, __int_type __i2,
+                             memory_order __m1, memory_order __m2) noexcept
+       {
+@@ -558,7 +557,7 @@
+       return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 0, __m1, __m2);
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__int_type& __i1, __int_type __i2,
+                             memory_order __m1,
+                             memory_order __m2) volatile noexcept
+@@ -570,7 +569,7 @@
+       return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 0, __m1, __m2);
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__int_type& __i1, __int_type __i2,
+                             memory_order __m = memory_order_seq_cst) noexcept
+       {
+@@ -578,7 +577,7 @@
+                                      __calculate_memory_order(__m));
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__int_type& __i1, __int_type __i2,
+                memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+@@ -586,52 +585,52 @@
+                                      __calculate_memory_order(__m));
+       }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_add(__int_type __i,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return __atomic_fetch_add(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_add(__int_type __i,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return __atomic_fetch_add(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_sub(__int_type __i,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return __atomic_fetch_sub(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_sub(__int_type __i,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return __atomic_fetch_sub(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_and(__int_type __i,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return __atomic_fetch_and(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_and(__int_type __i,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return __atomic_fetch_and(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_or(__int_type __i,
+              memory_order __m = memory_order_seq_cst) noexcept
+       { return __atomic_fetch_or(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_or(__int_type __i,
+              memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return __atomic_fetch_or(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_xor(__int_type __i,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return __atomic_fetch_xor(&_M_i, __i, __m); }
+-      __always_inline __int_type
++      __libitm_always_inline __int_type
+       fetch_xor(__int_type __i,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return __atomic_fetch_xor(&_M_i, __i, __m); }
+@@ -733,7 +732,7 @@
+       is_lock_free() const volatile noexcept
+       { return __atomic_is_lock_free (sizeof (_M_p), &_M_p); }
+-      __always_inline void
++      __libitm_always_inline void
+       store(__pointer_type __p,
+           memory_order __m = memory_order_seq_cst) noexcept
+       {
+@@ -744,7 +743,7 @@
+       __atomic_store_n(&_M_p, __p, __m);
+       }
+-      __always_inline void
++      __libitm_always_inline void
+       store(__pointer_type __p,
+           memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+@@ -755,7 +754,7 @@
+       __atomic_store_n(&_M_p, __p, __m);
+       }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       load(memory_order __m = memory_order_seq_cst) const noexcept
+       {
+       // __glibcxx_assert(__m != memory_order_release);
+@@ -764,7 +763,7 @@
+       return __atomic_load_n(&_M_p, __m);
+       }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       load(memory_order __m = memory_order_seq_cst) const volatile noexcept
+       {
+       // __glibcxx_assert(__m != memory_order_release);
+@@ -773,21 +772,21 @@
+       return __atomic_load_n(&_M_p, __m);
+       }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       exchange(__pointer_type __p,
+              memory_order __m = memory_order_seq_cst) noexcept
+       {
+       return __atomic_exchange_n(&_M_p, __p, __m);
+       }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       exchange(__pointer_type __p,
+              memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+       return __atomic_exchange_n(&_M_p, __p, __m);
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
+                             memory_order __m1,
+                             memory_order __m2) noexcept
+@@ -799,7 +798,7 @@
+       return __atomic_compare_exchange_n(&_M_p, &__p1, __p2, 0, __m1, __m2);
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
+                             memory_order __m1,
+                             memory_order __m2) volatile noexcept
+@@ -811,22 +810,22 @@
+       return __atomic_compare_exchange_n(&_M_p, &__p1, __p2, 0, __m1, __m2);
+       }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_add(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return __atomic_fetch_add(&_M_p, __d, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_add(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return __atomic_fetch_add(&_M_p, __d, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_sub(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return __atomic_fetch_sub(&_M_p, __d, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_sub(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return __atomic_fetch_sub(&_M_p, __d, __m); }
+@@ -870,67 +869,67 @@
+     bool
+     is_lock_free() const volatile noexcept { return _M_base.is_lock_free(); }
+-    __always_inline void
++    __libitm_always_inline void
+     store(bool __i, memory_order __m = memory_order_seq_cst) noexcept
+     { _M_base.store(__i, __m); }
+-    __always_inline void
++    __libitm_always_inline void
+     store(bool __i, memory_order __m = memory_order_seq_cst) volatile noexcept
+     { _M_base.store(__i, __m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     load(memory_order __m = memory_order_seq_cst) const noexcept
+     { return _M_base.load(__m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     load(memory_order __m = memory_order_seq_cst) const volatile noexcept
+     { return _M_base.load(__m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     exchange(bool __i, memory_order __m = memory_order_seq_cst) noexcept
+     { return _M_base.exchange(__i, __m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     exchange(bool __i,
+            memory_order __m = memory_order_seq_cst) volatile noexcept
+     { return _M_base.exchange(__i, __m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_weak(bool& __i1, bool __i2, memory_order __m1,
+                         memory_order __m2) noexcept
+     { return _M_base.compare_exchange_weak(__i1, __i2, __m1, __m2); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_weak(bool& __i1, bool __i2, memory_order __m1,
+                         memory_order __m2) volatile noexcept
+     { return _M_base.compare_exchange_weak(__i1, __i2, __m1, __m2); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_weak(bool& __i1, bool __i2,
+                         memory_order __m = memory_order_seq_cst) noexcept
+     { return _M_base.compare_exchange_weak(__i1, __i2, __m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_weak(bool& __i1, bool __i2,
+                    memory_order __m = memory_order_seq_cst) volatile noexcept
+     { return _M_base.compare_exchange_weak(__i1, __i2, __m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_strong(bool& __i1, bool __i2, memory_order __m1,
+                           memory_order __m2) noexcept
+     { return _M_base.compare_exchange_strong(__i1, __i2, __m1, __m2); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_strong(bool& __i1, bool __i2, memory_order __m1,
+                           memory_order __m2) volatile noexcept
+     { return _M_base.compare_exchange_strong(__i1, __i2, __m1, __m2); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_strong(bool& __i1, bool __i2,
+                           memory_order __m = memory_order_seq_cst) noexcept
+     { return _M_base.compare_exchange_strong(__i1, __i2, __m); }
+-    __always_inline bool
++    __libitm_always_inline bool
+     compare_exchange_strong(bool& __i1, bool __i2,
+                   memory_order __m = memory_order_seq_cst) volatile noexcept
+     { return _M_base.compare_exchange_strong(__i1, __i2, __m); }
+@@ -980,11 +979,11 @@
+       store(_Tp __i, memory_order _m = memory_order_seq_cst) noexcept
+       { __atomic_store(&_M_i, &__i, _m); }
+-      __always_inline void
++      __libitm_always_inline void
+       store(_Tp __i, memory_order _m = memory_order_seq_cst) volatile noexcept
+       { __atomic_store(&_M_i, &__i, _m); }
+-      __always_inline _Tp
++      __libitm_always_inline _Tp
+       load(memory_order _m = memory_order_seq_cst) const noexcept
+       { 
+         _Tp tmp;
+@@ -992,7 +991,7 @@
+       return tmp;
+       }
+-      __always_inline _Tp
++      __libitm_always_inline _Tp
+       load(memory_order _m = memory_order_seq_cst) const volatile noexcept
+       { 
+         _Tp tmp;
+@@ -1000,7 +999,7 @@
+       return tmp;
+       }
+-      __always_inline _Tp
++      __libitm_always_inline _Tp
+       exchange(_Tp __i, memory_order _m = memory_order_seq_cst) noexcept
+       { 
+         _Tp tmp;
+@@ -1008,7 +1007,7 @@
+       return tmp;
+       }
+-      __always_inline _Tp
++      __libitm_always_inline _Tp
+       exchange(_Tp __i, 
+              memory_order _m = memory_order_seq_cst) volatile noexcept
+       { 
+@@ -1017,50 +1016,50 @@
+       return tmp;
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(_Tp& __e, _Tp __i, memory_order __s, 
+                           memory_order __f) noexcept
+       {
+       return __atomic_compare_exchange(&_M_i, &__e, &__i, true, __s, __f); 
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(_Tp& __e, _Tp __i, memory_order __s, 
+                           memory_order __f) volatile noexcept
+       {
+       return __atomic_compare_exchange(&_M_i, &__e, &__i, true, __s, __f); 
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(_Tp& __e, _Tp __i,
+                           memory_order __m = memory_order_seq_cst) noexcept
+       { return compare_exchange_weak(__e, __i, __m, __m); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(_Tp& __e, _Tp __i,
+                    memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return compare_exchange_weak(__e, __i, __m, __m); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(_Tp& __e, _Tp __i, memory_order __s, 
+                             memory_order __f) noexcept
+       {
+       return __atomic_compare_exchange(&_M_i, &__e, &__i, false, __s, __f); 
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(_Tp& __e, _Tp __i, memory_order __s, 
+                             memory_order __f) volatile noexcept
+       {
+       return __atomic_compare_exchange(&_M_i, &__e, &__i, false, __s, __f); 
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(_Tp& __e, _Tp __i,
+                              memory_order __m = memory_order_seq_cst) noexcept
+       { return compare_exchange_strong(__e, __i, __m, __m); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(_Tp& __e, _Tp __i,
+                    memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return compare_exchange_strong(__e, __i, __m, __m); }
+@@ -1153,46 +1152,46 @@
+       is_lock_free() const volatile noexcept
+       { return _M_b.is_lock_free(); }
+-      __always_inline void
++      __libitm_always_inline void
+       store(__pointer_type __p,
+           memory_order __m = memory_order_seq_cst) noexcept
+       { return _M_b.store(__p, __m); }
+-      __always_inline void
++      __libitm_always_inline void
+       store(__pointer_type __p,
+           memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return _M_b.store(__p, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       load(memory_order __m = memory_order_seq_cst) const noexcept
+       { return _M_b.load(__m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       load(memory_order __m = memory_order_seq_cst) const volatile noexcept
+       { return _M_b.load(__m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       exchange(__pointer_type __p,
+              memory_order __m = memory_order_seq_cst) noexcept
+       { return _M_b.exchange(__p, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       exchange(__pointer_type __p,
+              memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return _M_b.exchange(__p, __m); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
+                           memory_order __m1, memory_order __m2) noexcept
+       { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
+                           memory_order __m1,
+                           memory_order __m2) volatile noexcept
+       { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
+                           memory_order __m = memory_order_seq_cst) noexcept
+       {
+@@ -1200,7 +1199,7 @@
+                                    __calculate_memory_order(__m));
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
+                   memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+@@ -1208,18 +1207,18 @@
+                                    __calculate_memory_order(__m));
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
+                             memory_order __m1, memory_order __m2) noexcept
+       { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
+                             memory_order __m1,
+                             memory_order __m2) volatile noexcept
+       { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
+                             memory_order __m = memory_order_seq_cst) noexcept
+       {
+@@ -1227,7 +1226,7 @@
+                                           __calculate_memory_order(__m));
+       }
+-      __always_inline bool
++      __libitm_always_inline bool
+       compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
+                   memory_order __m = memory_order_seq_cst) volatile noexcept
+       {
+@@ -1235,22 +1234,22 @@
+                                           __calculate_memory_order(__m));
+       }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_add(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return _M_b.fetch_add(__d, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_add(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return _M_b.fetch_add(__d, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_sub(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) noexcept
+       { return _M_b.fetch_sub(__d, __m); }
+-      __always_inline __pointer_type
++      __libitm_always_inline __pointer_type
+       fetch_sub(ptrdiff_t __d,
+               memory_order __m = memory_order_seq_cst) volatile noexcept
+       { return _M_b.fetch_sub(__d, __m); }
+@@ -1544,98 +1543,98 @@
+   // Function definitions, atomic_flag operations.
+-  inline __always_inline bool
++  inline __libitm_always_inline bool
+   atomic_flag_test_and_set_explicit(atomic_flag* __a,
+                                   memory_order __m) noexcept
+   { return __a->test_and_set(__m); }
+-  inline __always_inline bool
++  inline __libitm_always_inline bool
+   atomic_flag_test_and_set_explicit(volatile atomic_flag* __a,
+                                   memory_order __m) noexcept
+   { return __a->test_and_set(__m); }
+-  inline __always_inline void
++  inline __libitm_always_inline void
+   atomic_flag_clear_explicit(atomic_flag* __a, memory_order __m) noexcept
+   { __a->clear(__m); }
+-  inline __always_inline void
++  inline __libitm_always_inline void
+   atomic_flag_clear_explicit(volatile atomic_flag* __a,
+                            memory_order __m) noexcept
+   { __a->clear(__m); }
+-  inline __always_inline bool
++  inline __libitm_always_inline bool
+   atomic_flag_test_and_set(atomic_flag* __a) noexcept
+   { return atomic_flag_test_and_set_explicit(__a, memory_order_seq_cst); }
+-  inline __always_inline bool
++  inline __libitm_always_inline bool
+   atomic_flag_test_and_set(volatile atomic_flag* __a) noexcept
+   { return atomic_flag_test_and_set_explicit(__a, memory_order_seq_cst); }
+-  inline __always_inline void
++  inline __libitm_always_inline void
+   atomic_flag_clear(atomic_flag* __a) noexcept
+   { atomic_flag_clear_explicit(__a, memory_order_seq_cst); }
+-  inline __always_inline void
++  inline __libitm_always_inline void
+   atomic_flag_clear(volatile atomic_flag* __a) noexcept
+   { atomic_flag_clear_explicit(__a, memory_order_seq_cst); }
+   // Function templates generally applicable to atomic types.
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_is_lock_free(const atomic<_ITp>* __a) noexcept
+     { return __a->is_lock_free(); }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_is_lock_free(const volatile atomic<_ITp>* __a) noexcept
+     { return __a->is_lock_free(); }
+   template<typename _ITp>
+-    __always_inline void
++    __libitm_always_inline void
+     atomic_init(atomic<_ITp>* __a, _ITp __i) noexcept;
+   template<typename _ITp>
+-    __always_inline void
++    __libitm_always_inline void
+     atomic_init(volatile atomic<_ITp>* __a, _ITp __i) noexcept;
+   template<typename _ITp>
+-    __always_inline void
++    __libitm_always_inline void
+     atomic_store_explicit(atomic<_ITp>* __a, _ITp __i,
+                         memory_order __m) noexcept
+     { __a->store(__i, __m); }
+   template<typename _ITp>
+-    __always_inline void
++    __libitm_always_inline void
+     atomic_store_explicit(volatile atomic<_ITp>* __a, _ITp __i,
+                         memory_order __m) noexcept
+     { __a->store(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_load_explicit(const atomic<_ITp>* __a, memory_order __m) noexcept
+     { return __a->load(__m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_load_explicit(const volatile atomic<_ITp>* __a,
+                        memory_order __m) noexcept
+     { return __a->load(__m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_exchange_explicit(atomic<_ITp>* __a, _ITp __i,
+                            memory_order __m) noexcept
+     { return __a->exchange(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_exchange_explicit(volatile atomic<_ITp>* __a, _ITp __i,
+                            memory_order __m) noexcept
+     { return __a->exchange(__i, __m); }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_weak_explicit(atomic<_ITp>* __a,
+                                         _ITp* __i1, _ITp __i2,
+                                         memory_order __m1,
+@@ -1643,7 +1642,7 @@
+     { return __a->compare_exchange_weak(*__i1, __i2, __m1, __m2); }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_weak_explicit(volatile atomic<_ITp>* __a,
+                                         _ITp* __i1, _ITp __i2,
+                                         memory_order __m1,
+@@ -1651,7 +1650,7 @@
+     { return __a->compare_exchange_weak(*__i1, __i2, __m1, __m2); }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_strong_explicit(atomic<_ITp>* __a,
+                                           _ITp* __i1, _ITp __i2,
+                                           memory_order __m1,
+@@ -1659,7 +1658,7 @@
+     { return __a->compare_exchange_strong(*__i1, __i2, __m1, __m2); }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_strong_explicit(volatile atomic<_ITp>* __a,
+                                           _ITp* __i1, _ITp __i2,
+                                           memory_order __m1,
+@@ -1668,37 +1667,37 @@
+   template<typename _ITp>
+-    __always_inline void
++    __libitm_always_inline void
+     atomic_store(atomic<_ITp>* __a, _ITp __i) noexcept
+     { atomic_store_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline void
++    __libitm_always_inline void
+     atomic_store(volatile atomic<_ITp>* __a, _ITp __i) noexcept
+     { atomic_store_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_load(const atomic<_ITp>* __a) noexcept
+     { return atomic_load_explicit(__a, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_load(const volatile atomic<_ITp>* __a) noexcept
+     { return atomic_load_explicit(__a, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_exchange(atomic<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_exchange_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_exchange(volatile atomic<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_exchange_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_weak(atomic<_ITp>* __a,
+                                _ITp* __i1, _ITp __i2) noexcept
+     {
+@@ -1708,7 +1707,7 @@
+     }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_weak(volatile atomic<_ITp>* __a,
+                                _ITp* __i1, _ITp __i2) noexcept
+     {
+@@ -1718,7 +1717,7 @@
+     }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_strong(atomic<_ITp>* __a,
+                                  _ITp* __i1, _ITp __i2) noexcept
+     {
+@@ -1728,7 +1727,7 @@
+     }
+   template<typename _ITp>
+-    __always_inline bool
++    __libitm_always_inline bool
+     atomic_compare_exchange_strong(volatile atomic<_ITp>* __a,
+                                  _ITp* __i1, _ITp __i2) noexcept
+     {
+@@ -1742,158 +1741,158 @@
+   // intergral types as specified in the standard, excluding address
+   // types.
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_add_explicit(__atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_add(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_add_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_add(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_sub_explicit(__atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_sub(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_sub_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_sub(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_and_explicit(__atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_and(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_and_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_and(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_or_explicit(__atomic_base<_ITp>* __a, _ITp __i,
+                            memory_order __m) noexcept
+     { return __a->fetch_or(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_or_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
+                            memory_order __m) noexcept
+     { return __a->fetch_or(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_xor_explicit(__atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_xor(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_xor_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
+                             memory_order __m) noexcept
+     { return __a->fetch_xor(__i, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_add(__atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_add_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_add(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_add_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_sub(__atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_sub_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_sub(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_sub_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_and(__atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_and_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_and(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_and_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_or(__atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_or_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_or(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_or_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_xor(__atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_xor_explicit(__a, __i, memory_order_seq_cst); }
+   template<typename _ITp>
+-    __always_inline _ITp
++    __libitm_always_inline _ITp
+     atomic_fetch_xor(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
+     { return atomic_fetch_xor_explicit(__a, __i, memory_order_seq_cst); }
+   // Partial specializations for pointers.
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_add_explicit(atomic<_ITp*>* __a, ptrdiff_t __d,
+                             memory_order __m) noexcept
+     { return __a->fetch_add(__d, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_add_explicit(volatile atomic<_ITp*>* __a, ptrdiff_t __d,
+                             memory_order __m) noexcept
+     { return __a->fetch_add(__d, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_add(volatile atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
+     { return __a->fetch_add(__d); }
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_add(atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
+     { return __a->fetch_add(__d); }
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_sub_explicit(volatile atomic<_ITp*>* __a,
+                             ptrdiff_t __d, memory_order __m) noexcept
+     { return __a->fetch_sub(__d, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_sub_explicit(atomic<_ITp*>* __a, ptrdiff_t __d,
+                             memory_order __m) noexcept
+     { return __a->fetch_sub(__d, __m); }
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_sub(volatile atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
+     { return __a->fetch_sub(__d); }
+   template<typename _ITp>
+-    __always_inline _ITp*
++    __libitm_always_inline _ITp*
+     atomic_fetch_sub(atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
+     { return __a->fetch_sub(__d); }
+   // @} group atomics
diff --git a/src/patches/gcc/gcc44-build-id.patch b/src/patches/gcc/gcc44-build-id.patch
deleted file mode 100644 (file)
index f76f939..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-2007-07-22  Roland McGrath  <roland@redhat.com>
-
-       * config/rs6000/sysv4.h (LINK_EH_SPEC): Add --build-id for
-       non-relocatable link.
-       * config/linux.h (LINK_EH_SPEC): Likewise.
-       * config/alpha/elf.h (LINK_EH_SPEC): Likewise.
-       * config/ia64/linux.h (LINK_EH_SPEC): Likewise.
-
---- gcc/config/rs6000/sysv4.h.~1~
-+++ gcc/config/rs6000/sysv4.h
-@@ -906,7 +906,7 @@ extern int fixuplabelno;
-   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
- #if defined(HAVE_LD_EH_FRAME_HDR)
--# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
-+# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
- #endif
- #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
---- gcc/config/linux.h.~1~
-+++ gcc/config/linux.h
-@@ -85,7 +85,7 @@ Boston, MA 02110-1301, USA.  */
-     } while (0)
- #if defined(HAVE_LD_EH_FRAME_HDR)
--#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
-+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
- #endif
- /* Define this so we can compile MS code for use with WINE.  */
---- gcc/config/alpha/elf.h.~1~
-+++ gcc/config/alpha/elf.h
-@@ -421,7 +421,7 @@ extern int alpha_this_gpdisp_sequence_nu
-    I imagine that other systems will catch up.  In the meantime, it
-    doesn't harm to make sure that the data exists to be used later.  */
- #if defined(HAVE_LD_EH_FRAME_HDR)
--#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
-+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
- #endif
- /* A C statement (sans semicolon) to output to the stdio stream STREAM
---- gcc/config/ia64/linux.h.~1~
-+++ gcc/config/ia64/linux.h
-@@ -56,7 +56,7 @@ do {                                         \
-    Signalize that because we have fde-glibc, we don't need all C shared libs
-    linked against -lgcc_s.  */
- #undef LINK_EH_SPEC
--#define LINK_EH_SPEC ""
-+#define LINK_EH_SPEC "%{!r:--build-id} "
- #define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
diff --git a/src/patches/gcc/gcc44-c++-builtin-redecl.patch b/src/patches/gcc/gcc44-c++-builtin-redecl.patch
deleted file mode 100644 (file)
index 1f36f1f..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-2007-10-02  Jakub Jelinek  <jakub@redhat.com>
-
-       * decl.c (duplicate_decls): When redeclaring a builtin function,
-       keep the merged decl builtin whenever types match, even if new
-       decl defines a function.
-
-       * gcc.dg/builtins-65.c: New test.
-       * g++.dg/ext/builtin10.C: New test.
-
---- gcc/cp/decl.c.jj   2007-10-01 22:11:09.000000000 +0200
-+++ gcc/cp/decl.c      2007-10-02 11:39:46.000000000 +0200
-@@ -2001,23 +2001,21 @@ duplicate_decls (tree newdecl, tree oldd
-         DECL_ARGUMENTS (olddecl) = DECL_ARGUMENTS (newdecl);
-         DECL_RESULT (olddecl) = DECL_RESULT (newdecl);
-       }
-+      /* If redeclaring a builtin function, it stays built in.  */
-+      if (types_match && DECL_BUILT_IN (olddecl))
-+      {
-+        DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
-+        DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
-+        /* If we're keeping the built-in definition, keep the rtl,
-+           regardless of declaration matches.  */
-+        COPY_DECL_RTL (olddecl, newdecl);
-+      }
-       if (new_defines_function)
-       /* If defining a function declared with other language
-          linkage, use the previously declared language linkage.  */
-       SET_DECL_LANGUAGE (newdecl, DECL_LANGUAGE (olddecl));
-       else if (types_match)
-       {
--        /* If redeclaring a builtin function, and not a definition,
--           it stays built in.  */
--        if (DECL_BUILT_IN (olddecl))
--          {
--            DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
--            DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
--            /* If we're keeping the built-in definition, keep the rtl,
--               regardless of declaration matches.  */
--            COPY_DECL_RTL (olddecl, newdecl);
--          }
--
-         DECL_RESULT (newdecl) = DECL_RESULT (olddecl);
-         /* Don't clear out the arguments if we're just redeclaring a
-            function.  */
---- gcc/testsuite/gcc.dg/builtins-65.c.jj      2007-10-02 11:23:51.000000000 +0200
-+++ gcc/testsuite/gcc.dg/builtins-65.c 2007-10-02 11:24:12.000000000 +0200
-@@ -0,0 +1,25 @@
-+/* { dg-do compile } */
-+/* { dg-options "-O2" } */
-+
-+typedef __SIZE_TYPE__ size_t;
-+extern void __chk_fail (void);
-+extern int snprintf (char *, size_t, const char *, ...);
-+extern inline __attribute__((gnu_inline, always_inline)) int snprintf (char *a, size_t b, const char *fmt, ...)
-+{
-+  if (__builtin_object_size (a, 0) != -1UL && __builtin_object_size (a, 0) < b)
-+    __chk_fail ();
-+  return __builtin_snprintf (a, b, fmt, __builtin_va_arg_pack ());
-+}
-+extern int snprintf (char *, size_t, const char *, ...) __asm ("mysnprintf");
-+
-+char buf[10];
-+
-+int
-+main (void)
-+{
-+  snprintf (buf, 10, "%d%d\n", 10, 10);
-+  return 0;
-+}
-+
-+/* { dg-final { scan-assembler "mysnprintf" } } */
-+/* { dg-final { scan-assembler-not "__chk_fail" } } */
---- gcc/testsuite/g++.dg/ext/builtin10.C.jj    2007-10-02 11:19:45.000000000 +0200
-+++ gcc/testsuite/g++.dg/ext/builtin10.C       2007-10-02 11:23:26.000000000 +0200
-@@ -0,0 +1,27 @@
-+// { dg-do compile }
-+// { dg-options "-O2" }
-+
-+typedef __SIZE_TYPE__ size_t;
-+extern "C" {
-+extern void __chk_fail (void);
-+extern int snprintf (char *, size_t, const char *, ...);
-+extern inline __attribute__((gnu_inline, always_inline)) int snprintf (char *a, size_t b, const char *fmt, ...)
-+{
-+  if (__builtin_object_size (a, 0) != -1UL && __builtin_object_size (a, 0) < b)
-+    __chk_fail ();
-+  return __builtin_snprintf (a, b, fmt, __builtin_va_arg_pack ());
-+}
-+extern int snprintf (char *, size_t, const char *, ...) __asm ("mysnprintf");
-+}
-+
-+char buf[10];
-+
-+int
-+main (void)
-+{
-+  snprintf (buf, 10, "%d%d\n", 10, 10);
-+  return 0;
-+}
-+
-+// { dg-final { scan-assembler "mysnprintf" } }
-+// { dg-final { scan-assembler-not "__chk_fail" } }
diff --git a/src/patches/gcc/gcc44-i386-libgomp.patch b/src/patches/gcc/gcc44-i386-libgomp.patch
deleted file mode 100644 (file)
index 5d1eea8..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-Build i386.rpm libgomp and libsupc++.a(guard.o) as i486+, pre-i486
-hardware isn't supported because NPTL doesn't support it anyway.
-
---- libgomp/configure.tgt.jj   2008-01-10 20:53:48.000000000 +0100
-+++ libgomp/configure.tgt      2008-03-27 12:44:51.000000000 +0100
-@@ -44,14 +44,14 @@ if test $enable_linux_futex = yes; then
-       ;;
-     # Note that bare i386 is not included here.  We need cmpxchg.
--    i[456]86-*-linux*)
-+    i[3456]86-*-linux*)
-       config_path="linux/x86 linux posix"
-       case " ${CC} ${CFLAGS} " in
-         *" -m64 "*)
-           ;;
-         *)
-           if test -z "$with_arch"; then
--            XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}"
-+            XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic"
-           fi
-       esac
-       ;;
-@@ -63,7 +63,7 @@ if test $enable_linux_futex = yes; then
-       config_path="linux/x86 linux posix"
-       case " ${CC} ${CFLAGS} " in
-         *" -m32 "*)
--          XCFLAGS="${XCFLAGS} -march=i486 -mtune=i686"
-+          XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic"
-           ;;
-       esac
-       ;;
---- libstdc++-v3/libsupc++/guard.cc.jj 2008-03-01 00:58:24.000000000 +0100
-+++ libstdc++-v3/libsupc++/guard.cc    2008-03-27 14:08:44.000000000 +0100
-@@ -35,6 +35,27 @@
- #include <new>
- #include <ext/atomicity.h>
- #include <ext/concurrence.h>
-+#if defined __i386__ && !defined _GLIBCXX_ATOMIC_BUILTINS_4
-+# define _GLIBCXX_ATOMIC_BUILTINS_4 1
-+# define __sync_val_compare_and_swap(a, b, c) \
-+  ({                                                          \
-+     typedef char sltast[sizeof (*a) == sizeof (int) ? 1 : -1];       \
-+     int sltas;                                                       \
-+     __asm __volatile ("lock; cmpxchgl %3, (%1)"              \
-+                     : "=a" (sltas)                           \
-+                     : "r" (a), "0" (b), "r" (c) : "memory"); \
-+     sltas;                                                   \
-+   })
-+# define __sync_lock_test_and_set(a, b) \
-+  ({                                                          \
-+     typedef char sltast[sizeof (*a) == sizeof (int) ? 1 : -1];       \
-+     int sltas;                                                       \
-+     __asm __volatile ("xchgl (%1), %0"                               \
-+                     : "=r" (sltas)                           \
-+                     : "r" (a), "0" (b) : "memory");          \
-+     sltas;                                                   \
-+   })
-+#endif
- #if defined(__GTHREADS) && defined(__GTHREAD_HAS_COND) \
-     && defined(_GLIBCXX_ATOMIC_BUILTINS_4) && defined(_GLIBCXX_HAVE_LINUX_FUTEX)
- # include <climits>
diff --git a/src/patches/gcc/gcc44-no-add-needed.patch b/src/patches/gcc/gcc44-no-add-needed.patch
deleted file mode 100644 (file)
index 4570c0c..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-2010-02-08  Roland McGrath  <roland@redhat.com>
-
-       * config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the
-       linker.
-       * config/linux.h (LINK_EH_SPEC): Likewise.
-       * config/alpha/elf.h (LINK_EH_SPEC): Likewise.
-       * config/ia64/linux.h (LINK_EH_SPEC): Likewise.
-
---- gcc/config/alpha/elf.h.~1~
-+++ gcc/config/alpha/elf.h
-@@ -421,7 +421,7 @@ extern int alpha_this_gpdisp_sequence_nu
-    I imagine that other systems will catch up.  In the meantime, it
-    doesn't harm to make sure that the data exists to be used later.  */
- #if defined(HAVE_LD_EH_FRAME_HDR)
--#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
-+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} %{!r:--build-id} "
- #endif
- /* A C statement (sans semicolon) to output to the stdio stream STREAM
---- gcc/config/ia64/linux.h.~1~
-+++ gcc/config/ia64/linux.h
-@@ -58,7 +58,7 @@ do {                                         \
-    Signalize that because we have fde-glibc, we don't need all C shared libs
-    linked against -lgcc_s.  */
- #undef LINK_EH_SPEC
--#define LINK_EH_SPEC "%{!r:--build-id} "
-+#define LINK_EH_SPEC "--no-add-needed %{!r:--build-id} "
- #define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
---- gcc/config/linux.h.~1~
-+++ gcc/config/linux.h
-@@ -89,7 +89,7 @@ see the files COPYING3 and COPYING.RUNTI
-     } while (0)
- #if defined(HAVE_LD_EH_FRAME_HDR)
--#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
-+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} %{!r:--build-id} "
- #endif
- /* Define this so we can compile MS code for use with WINE.  */
---- gcc/config/rs6000/sysv4.h.~1~
-+++ gcc/config/rs6000/sysv4.h
-@@ -917,7 +917,7 @@ SVR4_ASM_SPEC \
-   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
- #if defined(HAVE_LD_EH_FRAME_HDR)
--# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
-+# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} %{!r:--build-id} "
- #endif
- #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
diff --git a/src/patches/gcc/gcc44-pr33763.patch b/src/patches/gcc/gcc44-pr33763.patch
deleted file mode 100644 (file)
index 86c8ac7..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-2007-11-06  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/33763
-       * gcc.dg/pr33763.c: New test.
-       * g++.dg/opt/inline13.C: New test.
-
-2007-11-06  Jan Hubicka  <jh@suse.cz>
-
-       PR tree-optimization/33763
-       * tree-inline.c (expand_call_inline): Silently ignore always_inline
-       attribute for redefined extern inline functions.
-
---- gcc/tree-inline.c.jj       2007-11-06 09:29:04.000000000 +0100
-+++ gcc/tree-inline.c  2007-11-06 16:19:12.000000000 +0100
-@@ -3157,6 +3157,12 @@ expand_call_inline (basic_block bb, gimp
-       goto egress;
-       if (lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn))
-+      /* For extern inline functions that get redefined we always
-+         silently ignored alway_inline flag. Better behaviour would
-+         be to be able to keep both bodies and use extern inline body
-+         for inlining, but we can't do that because frontends overwrite
-+         the body.  */
-+        && !cg_edge->callee->local.redefined_extern_inline
-         /* Avoid warnings during early inline pass. */
-         && cgraph_global_info_ready)
-       {
---- gcc/testsuite/gcc.dg/pr33763.c.jj  2007-11-06 16:19:12.000000000 +0100
-+++ gcc/testsuite/gcc.dg/pr33763.c     2007-11-06 16:19:12.000000000 +0100
-@@ -0,0 +1,60 @@
-+/* PR tree-optimization/33763 */
-+/* { dg-do compile } */
-+/* { dg-options "-O2" } */
-+
-+typedef struct
-+{
-+  void *a;
-+  void *b;
-+} T;
-+extern void *foo (const char *, const char *);
-+extern void *bar (void *, const char *, T);
-+extern int baz (const char *, int);
-+
-+extern inline __attribute__ ((always_inline, gnu_inline)) int
-+baz (const char *x, int y)
-+{
-+  return 2;
-+}
-+
-+int
-+baz (const char *x, int y)
-+{
-+  return 1;
-+}
-+
-+int xa, xb;
-+
-+static void *
-+inl (const char *x, const char *y)
-+{
-+  T t = { &xa, &xb };
-+  int *f = (int *) __builtin_malloc (sizeof (int));
-+  const char *z;
-+  int o = 0;
-+  void *r = 0;
-+
-+  for (z = y; *z; z++)
-+    {
-+      if (*z == 'r')
-+      o |= 1;
-+      if (*z == 'w')
-+      o |= 2;
-+    }
-+  if (o == 1)
-+    *f = baz (x, 0);
-+  if (o == 2)
-+    *f = baz (x, 1);
-+  if (o == 3)
-+    *f = baz (x, 2);
-+
-+  if (o && *f > 0)
-+    r = bar (f, "w", t);
-+  return r;
-+}
-+
-+void *
-+foo (const char *x, const char *y)
-+{
-+  return inl (x, y);
-+}
---- gcc/testsuite/g++.dg/opt/inline13.C.jj     2007-11-06 16:20:20.000000000 +0100
-+++ gcc/testsuite/g++.dg/opt/inline13.C        2007-11-06 16:21:30.000000000 +0100
-@@ -0,0 +1,60 @@
-+// PR tree-optimization/33763
-+// { dg-do compile }
-+// { dg-options "-O2" }
-+
-+typedef struct
-+{
-+  void *a;
-+  void *b;
-+} T;
-+extern void *foo (const char *, const char *);
-+extern void *bar (void *, const char *, T);
-+extern int baz (const char *, int);
-+
-+extern inline __attribute__ ((always_inline, gnu_inline)) int
-+baz (const char *x, int y)
-+{
-+  return 2;
-+}
-+
-+int
-+baz (const char *x, int y)
-+{
-+  return 1;
-+}
-+
-+int xa, xb;
-+
-+static void *
-+inl (const char *x, const char *y)
-+{
-+  T t = { &xa, &xb };
-+  int *f = (int *) __builtin_malloc (sizeof (int));
-+  const char *z;
-+  int o = 0;
-+  void *r = 0;
-+
-+  for (z = y; *z; z++)
-+    {
-+      if (*z == 'r')
-+      o |= 1;
-+      if (*z == 'w')
-+      o |= 2;
-+    }
-+  if (o == 1)
-+    *f = baz (x, 0);
-+  if (o == 2)
-+    *f = baz (x, 1);
-+  if (o == 3)
-+    *f = baz (x, 2);
-+
-+  if (o && *f > 0)
-+    r = bar (f, "w", t);
-+  return r;
-+}
-+
-+void *
-+foo (const char *x, const char *y)
-+{
-+  return inl (x, y);
-+}
diff --git a/src/patches/gcc/gcc44-rh330771.patch b/src/patches/gcc/gcc44-rh330771.patch
deleted file mode 100644 (file)
index f7c365d..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-2007-10-16  Jakub Jelinek  <jakub@redhat.com>
-
-       * Makefile.am (libgcj_tools_la_LIBADD): Add.
-       * Makefile.in: Regenerated.
-
---- libjava/Makefile.am.jj     2009-05-06 08:14:50.000000000 +0200
-+++ libjava/Makefile.am        2009-05-06 10:26:43.000000000 +0200
-@@ -314,6 +314,8 @@ libgcj_tools_la_SOURCES = classpath/tool
- libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS) -findirect-dispatch \
-  -fno-bootstrap-classes -fno-indirect-classes \
-  -fsource-filename=$(here)/classpath/tools/all-classes.lst
-+## See jv_convert_LDADD.
-+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la
- libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \
-  -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
-  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS)
---- libjava/Makefile.in.jj     2009-05-06 08:14:49.000000000 +0200
-+++ libjava/Makefile.in        2009-05-06 10:27:18.000000000 +0200
-@@ -160,7 +160,6 @@ am__objects_1 = gnu/gcj/xlib/lib_gnu_awt
- am_lib_gnu_awt_xlib_la_OBJECTS = $(am__objects_1)
- lib_gnu_awt_xlib_la_OBJECTS = $(am_lib_gnu_awt_xlib_la_OBJECTS)
- @XLIB_AWT_TRUE@am_lib_gnu_awt_xlib_la_rpath = -rpath $(toolexeclibdir)
--libgcj_tools_la_LIBADD =
- am_libgcj_tools_la_OBJECTS = classpath/tools/libgcj_tools_la-tools.lo
- libgcj_tools_la_OBJECTS = $(am_libgcj_tools_la_OBJECTS)
- @INTERPRETER_TRUE@am__DEPENDENCIES_1 = gnu/classpath/jdwp.lo \
-@@ -1041,6 +1040,7 @@ libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS
-  -fno-bootstrap-classes -fno-indirect-classes \
-  -fsource-filename=$(here)/classpath/tools/all-classes.lst
-+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la
- libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \
-  -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
-  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS)
diff --git a/src/patches/gcc/gcc44-rh533181.patch b/src/patches/gcc/gcc44-rh533181.patch
deleted file mode 100644 (file)
index 76326e2..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-2010-07-22  Jakub Jelinek  <jakub@redhat.com>
-
-       * gimplify.c (enum gimplify_omp_var_data): Add
-       GOVD_THREADPRIVATE_WARNED.
-       (gimplify_bind_expr): Add GOVD_LOCAL | GOVD_SEEN even for global vars.
-       (omp_notice_threadprivate_variable): Note used threadprivate vars
-       with current function's context in shared clauses.
-       (gimplify_adjust_omp_clauses_1): Allow globals with current function's
-       context in taskreg shared clause.
-       * omp-low.c (lower_rec_input_clauses): For function-local is_global_var
-       VAR_DECLs in shared clauses add a decl copy with DECL_VALUE_EXPR
-       pointing to the original.
-
-       * trans-openmp.c (gfc_omp_private_debug_clause): Return false for
-       threadprivate decls.
-
-       * gcc.dg/gomp/tls-3.c: New test.
-
---- gcc/fortran/trans-openmp.c.jj      2010-06-24 21:47:09.908230044 +0200
-+++ gcc/fortran/trans-openmp.c 2010-07-26 10:45:15.830229443 +0200
-@@ -351,6 +351,18 @@ gfc_omp_disregard_value_expr (tree decl,
- bool
- gfc_omp_private_debug_clause (tree decl, bool shared)
- {
-+  if (TREE_STATIC (decl) || DECL_EXTERNAL (decl))
-+    {
-+      if (DECL_THREAD_LOCAL_P (decl))
-+      return false;
-+      if (DECL_HAS_VALUE_EXPR_P (decl))
-+      {
-+        tree value = get_base_address (DECL_VALUE_EXPR (decl));
-+        if (value && DECL_P (value) && DECL_THREAD_LOCAL_P (value))
-+          return false;
-+      }
-+    }
-+
-   if (GFC_DECL_CRAY_POINTEE (decl))
-     return true;
---- gcc/gimplify.c.jj  2010-07-09 09:01:37.049604412 +0200
-+++ gcc/gimplify.c     2010-07-26 10:50:05.646291216 +0200
-@@ -66,6 +66,7 @@ enum gimplify_omp_var_data
-   GOVD_LOCAL = 128,
-   GOVD_DEBUG_PRIVATE = 256,
-   GOVD_PRIVATE_OUTER_REF = 512,
-+  GOVD_THREADPRIVATE_WARNED = 1024,
-   GOVD_DATA_SHARE_CLASS = (GOVD_SHARED | GOVD_PRIVATE | GOVD_FIRSTPRIVATE
-                          | GOVD_LASTPRIVATE | GOVD_REDUCTION | GOVD_LOCAL)
- };
-@@ -1234,7 +1235,7 @@ gimplify_bind_expr (tree *expr_p, gimple
-         struct gimplify_omp_ctx *ctx = gimplify_omp_ctxp;
-         /* Mark variable as local.  */
--        if (ctx && !is_global_var (t)
-+        if (ctx
-             && (! DECL_SEEN_IN_BIND_EXPR_P (t)
-                 || splay_tree_lookup (ctx->variables,
-                                       (splay_tree_key) t) == NULL))
-@@ -5339,18 +5340,36 @@ omp_notice_threadprivate_variable (struc
- {
-   splay_tree_node n;
--  if (ctx->region_type != ORT_UNTIED_TASK)
-+  while (ctx && ctx->region_type == ORT_WORKSHARE)
-+    {
-+      n = splay_tree_lookup (ctx->variables, (splay_tree_key)decl);
-+      if (n != NULL)
-+      {
-+        gcc_assert (n->value & GOVD_LOCAL);
-+        return false;
-+      }
-+      ctx = ctx->outer_context;
-+    }
-+  if (ctx == NULL)
-     return false;
-+
-   n = splay_tree_lookup (ctx->variables, (splay_tree_key)decl);
-   if (n == NULL)
-+    n = splay_tree_insert (ctx->variables, (splay_tree_key)decl,
-+                         DECL_CONTEXT (decl) == current_function_decl
-+                         ? GOVD_SHARED | GOVD_SEEN : 0);
-+  if (ctx->region_type == ORT_UNTIED_TASK
-+      && (n->value & GOVD_THREADPRIVATE_WARNED) == 0)
-     {
-       error ("threadprivate variable %qs used in untied task",
-            IDENTIFIER_POINTER (DECL_NAME (decl)));
-       error ("%Henclosing task", &ctx->location);
--      splay_tree_insert (ctx->variables, (splay_tree_key)decl, 0);
-+      n->value |= GOVD_THREADPRIVATE_WARNED;
-     }
-   if (decl2)
--    splay_tree_insert (ctx->variables, (splay_tree_key)decl2, 0);
-+    splay_tree_insert (ctx->variables, (splay_tree_key)decl2,
-+                     DECL_CONTEXT (decl2) == current_function_decl
-+                     ? GOVD_SHARED | GOVD_SEEN : 0);
-   return false;
- }
-@@ -5779,7 +5798,9 @@ gimplify_adjust_omp_clauses_1 (splay_tre
-               break;
-             ctx = ctx->outer_context;
-           }
--        if (ctx == NULL)
-+        if (ctx == NULL
-+            && (DECL_CONTEXT (decl) != current_function_decl
-+                || gimplify_omp_ctxp->region_type == ORT_WORKSHARE))
-           return 0;
-       }
-       code = OMP_CLAUSE_SHARED;
---- gcc/omp-low.c.jj   2010-06-11 11:06:00.913659301 +0200
-+++ gcc/omp-low.c      2010-07-26 10:45:15.866229447 +0200
-@@ -2222,6 +2222,17 @@ lower_rec_input_clauses (tree clauses, g
-               continue;
-             break;
-           case OMP_CLAUSE_SHARED:
-+            if (pass == 0
-+                && is_global_var (OMP_CLAUSE_DECL (c))
-+                && (DECL_CONTEXT (OMP_CLAUSE_DECL (c))
-+                    == current_function_decl)
-+                && is_taskreg_ctx (ctx)
-+                && !DECL_IGNORED_P (OMP_CLAUSE_DECL (c)))
-+              {
-+                new_var = omp_copy_decl_1 (OMP_CLAUSE_DECL (c), ctx);
-+                SET_DECL_VALUE_EXPR (new_var, OMP_CLAUSE_DECL (c));
-+                DECL_HAS_VALUE_EXPR_P (new_var) = 1;
-+              }
-             if (maybe_lookup_decl (OMP_CLAUSE_DECL (c), ctx) == NULL)
-               {
-                 gcc_assert (is_global_var (OMP_CLAUSE_DECL (c)));
---- gcc/testsuite/gcc.dg/gomp/tls-3.c.jj       2010-07-26 10:45:15.868228753 +0200
-+++ gcc/testsuite/gcc.dg/gomp/tls-3.c  2010-07-26 10:45:15.868228753 +0200
-@@ -0,0 +1,21 @@
-+/* { dg-do compile } */
-+/* { dg-require-effective-target tls_native } */
-+
-+int thr;
-+#pragma omp threadprivate(thr)
-+
-+void
-+foo (void)
-+{
-+  #pragma omp task untied     /* { dg-error "enclosing task" } */
-+  {
-+    static int thr2;
-+    #pragma omp threadprivate(thr2)
-+    static int thr3;
-+    #pragma omp threadprivate(thr3)
-+    thr++;    /* { dg-error "used in untied task" } */
-+    thr2++;   /* { dg-error "used in untied task" } */
-+    thr++;
-+    thr2++;
-+  }
-+}
diff --git a/src/patches/gcc/gcc44-rh610785.patch b/src/patches/gcc/gcc44-rh610785.patch
deleted file mode 100644 (file)
index 91d0934..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-2010-07-07  Jakub Jelinek  <jakub@redhat.com>
-
-       * tree-sra.c (sra_build_assignment): Don't add BIT_XOR_EXPR/MINUS_EXPR
-       of signbit if signbit is the most significant bit of utype already.
-
-       * gcc.c-torture/execute/20100707-1.c: New test.
-
---- gcc/tree-sra.c.jj  2010-05-13 13:08:52.000000000 +0200
-+++ gcc/tree-sra.c     2010-07-06 19:50:09.000000000 +0200
-@@ -2211,7 +2211,10 @@ sra_build_assignment (tree dst, tree src
-       /* Perform sign extension, if required.
-        ???  This should never be necessary.  */
--      if (!unsignedp)
-+      if (!unsignedp
-+        && (TREE_INT_CST_LOW (width) != TYPE_PRECISION (utype)
-+            || (TREE_INT_CST_LOW (width)
-+                != GET_MODE_BITSIZE (TYPE_MODE (utype)))))
-       {
-         tree signbit = int_const_binop (LSHIFT_EXPR,
-                                         build_int_cst_wide (utype, 1, 0),
---- gcc/testsuite/gcc.c-torture/execute/20100707-1.c   2010-05-27 15:41:40.446237053 +0200
-+++ gcc/testsuite/gcc.c-torture/execute/20100707-1.c   2010-07-06 13:55:35.000000000 +0200
-@@ -0,0 +1,50 @@
-+struct S { int s; };
-+struct T { int w; int h; };
-+int vr;
-+
-+inline struct T
-+bar (const struct S * x)
-+{
-+  struct T t;
-+  t.w = vr;
-+  t.h = x->s;
-+  return t;
-+}
-+
-+__attribute__ ((noinline))
-+void foo (struct S * w, unsigned char *x, int y, int *z[2])
-+{
-+  struct T t;
-+  int i, j, k;
-+  t = bar (w);
-+  k = t.w + 2;
-+  for (i = 0; i <= t.h; i++)
-+    {
-+      int *u = z[i > 0] + 1;
-+      unsigned char *v;
-+      int q = 0;
-+      v = x + k * i + 1;
-+      for (j = 0; j < t.w; j++)
-+      {
-+        int m = u[j];
-+        if (m > y && !q && v[j - k] != 2)
-+          v[j] = 0;
-+      }
-+    }
-+}
-+
-+unsigned char b[64];
-+
-+int
-+main (void)
-+{
-+  int v[32], *z[2];
-+  struct S s;
-+  __builtin_memset (v, 0, sizeof (v));
-+  vr = 16;
-+  s.s = 16;
-+  z[0] = v;
-+  z[1] = v;
-+  foo (&s, b + 32, -1, z);
-+  return 0;
-+}
diff --git a/src/patches/gcc/gcc44-unwind-debug-hook.patch b/src/patches/gcc/gcc44-unwind-debug-hook.patch
deleted file mode 100644 (file)
index 9b7c59e..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-2010-04-27  Jakub Jelinek  <jakub@redhat.com>
-
-       * unwind-dw2.c (_Unwind_DebugHook): Add used attribute.
-
-2009-05-27  Tom Tromey  <tromey@redhat.com>
-
-       * unwind-dw2.c (_Unwind_DebugHook): New function.
-       (uw_install_context): Call _Unwind_DebugHook.
-
---- gcc/unwind-dw2.c   (revision 147933)
-+++ gcc/unwind-dw2.c   (revision 147934)
-@@ -1473,18 +1473,32 @@ uw_init_context_1 (struct _Unwind_Contex
-   context->ra = __builtin_extract_return_addr (outer_ra);
- }
-+static void _Unwind_DebugHook (void *, void *)
-+  __attribute__ ((__noinline__, __used__));
-+
-+/* This function is called during unwinding.  It is intended as a hook
-+   for a debugger to intercept exceptions.  CFA is the CFA of the
-+   target frame.  HANDLER is the PC to which control will be
-+   transferred.  */
-+static void
-+_Unwind_DebugHook (void *cfa __attribute__ ((__unused__)),
-+                 void *handler __attribute__ ((__unused__)))
-+{
-+  asm ("");
-+}
- /* Install TARGET into CURRENT so that we can return to it.  This is a
-    macro because __builtin_eh_return must be invoked in the context of
-    our caller.  */
--#define uw_install_context(CURRENT, TARGET)                            \
--  do                                                                   \
--    {                                                                  \
--      long offset = uw_install_context_1 ((CURRENT), (TARGET));                \
--      void *handler = __builtin_frob_return_addr ((TARGET)->ra);       \
--      __builtin_eh_return (offset, handler);                           \
--    }                                                                  \
-+#define uw_install_context(CURRENT, TARGET)                           \
-+  do                                                                  \
-+    {                                                                 \
-+      long offset = uw_install_context_1 ((CURRENT), (TARGET));               \
-+      void *handler = __builtin_frob_return_addr ((TARGET)->ra);      \
-+      _Unwind_DebugHook ((TARGET)->cfa, handler);                     \
-+      __builtin_eh_return (offset, handler);                          \
-+    }                                                                 \
-   while (0)
- static long
diff --git a/src/patches/gcc/gcc49-i386-libgomp.patch b/src/patches/gcc/gcc49-i386-libgomp.patch
new file mode 100644 (file)
index 0000000..520561e
--- /dev/null
@@ -0,0 +1,11 @@
+--- libgomp/configure.tgt.jj   2008-01-10 20:53:48.000000000 +0100
++++ libgomp/configure.tgt      2008-03-27 12:44:51.000000000 +0100
+@@ -67,7 +67,7 @@ if test $enable_linux_futex = yes; then
+           ;;
+         *)
+           if test -z "$with_arch"; then
+-            XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}"
++            XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic"
+           fi
+       esac
+       ;;
diff --git a/src/patches/gcc/gcc49-no-add-needed.patch b/src/patches/gcc/gcc49-no-add-needed.patch
new file mode 100644 (file)
index 0000000..b6ca777
--- /dev/null
@@ -0,0 +1,50 @@
+2010-02-08  Roland McGrath  <roland@redhat.com>
+
+       * config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the
+       linker.
+       * config/gnu-user.h (LINK_EH_SPEC): Likewise.
+       * config/alpha/elf.h (LINK_EH_SPEC): Likewise.
+       * config/ia64/linux.h (LINK_EH_SPEC): Likewise.
+
+--- gcc/config/alpha/elf.h.jj  2011-01-03 12:52:31.118056764 +0100
++++ gcc/config/alpha/elf.h     2011-01-04 18:14:10.931874160 +0100
+@@ -165,5 +165,5 @@ extern int alpha_this_gpdisp_sequence_nu
+    I imagine that other systems will catch up.  In the meantime, it
+    doesn't harm to make sure that the data exists to be used later.  */
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
++#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
+ #endif
+--- gcc/config/ia64/linux.h.jj 2011-01-03 13:02:11.462994522 +0100
++++ gcc/config/ia64/linux.h    2011-01-04 18:14:10.931874160 +0100
+@@ -77,7 +77,7 @@ do {                                         \
+    Signalize that because we have fde-glibc, we don't need all C shared libs
+    linked against -lgcc_s.  */
+ #undef LINK_EH_SPEC
+-#define LINK_EH_SPEC ""
++#define LINK_EH_SPEC "--no-add-needed "
+ /* Put all *tf routines in libgcc.  */
+ #undef LIBGCC2_HAS_TF_MODE
+--- gcc/config/gnu-user.h.jj   2011-01-03 12:53:03.739057299 +0100
++++ gcc/config/gnu-user.h      2011-01-04 18:14:10.932814884 +0100
+@@ -82,7 +82,7 @@ see the files COPYING3 and COPYING.RUNTI
+ #define LIB_SPEC GNU_USER_TARGET_LIB_SPEC
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
++#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
+ #endif
+ #undef LINK_GCC_C_SEQUENCE_SPEC
+--- gcc/config/rs6000/sysv4.h.jj       2011-01-03 13:02:18.255994215 +0100
++++ gcc/config/rs6000/sysv4.h  2011-01-04 18:14:10.933888871 +0100
+@@ -820,7 +820,7 @@ extern int fixuplabelno;
+   -dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
++# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
+ #endif
+ #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
diff --git a/src/patches/gcc/gcc49-pr38757.patch b/src/patches/gcc/gcc49-pr38757.patch
new file mode 100644 (file)
index 0000000..4206584
--- /dev/null
@@ -0,0 +1,106 @@
+2009-03-18  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/38757
+       * langhooks.h (struct lang_hooks): Add source_language langhook.
+       * langhooks-def.h (LANG_HOOKS_SOURCE_LANGUAGE): Define to NULL.
+       (LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_SOURCE_LANGUAGE.
+       * dwarf2out.c (add_prototyped_attribute): Add DW_AT_prototype
+       also for DW_LANG_{C,C99,ObjC}.
+       (gen_compile_unit_die): Use lang_hooks.source_language () to
+       determine if DW_LANG_C99 or DW_LANG_C89 should be returned.
+c/
+       * c-lang.c (c_source_language): New function.
+       (LANG_HOOKS_SOURCE_LANGUAGE): Define.
+
+--- gcc/langhooks.h.jj 2011-01-03 12:53:05.125745450 +0100
++++ gcc/langhooks.h    2011-01-04 17:59:43.166744926 +0100
+@@ -467,6 +467,10 @@ struct lang_hooks
+      gimplification.  */
+   bool deep_unsharing;
++  /* Return year of the source language standard version if the FE supports
++     multiple versions of the standard.  */
++  int (*source_language) (void);
++
+   /* Whenever you add entries here, make sure you adjust langhooks-def.h
+      and langhooks.c accordingly.  */
+ };
+--- gcc/langhooks-def.h.jj     2011-01-03 12:53:05.000000000 +0100
++++ gcc/langhooks-def.h        2011-01-04 18:00:44.858851030 +0100
+@@ -118,6 +118,7 @@ extern void lhd_omp_firstprivatize_type_
+ #define LANG_HOOKS_BLOCK_MAY_FALLTHRU hook_bool_const_tree_true
+ #define LANG_HOOKS_EH_USE_CXA_END_CLEANUP     false
+ #define LANG_HOOKS_DEEP_UNSHARING     false
++#define LANG_HOOKS_SOURCE_LANGUAGE    NULL
+ /* Attribute hooks.  */
+ #define LANG_HOOKS_ATTRIBUTE_TABLE            NULL
+@@ -303,7 +304,8 @@ extern void lhd_end_section (void);
+   LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS, \
+   LANG_HOOKS_BLOCK_MAY_FALLTHRU, \
+   LANG_HOOKS_EH_USE_CXA_END_CLEANUP, \
+-  LANG_HOOKS_DEEP_UNSHARING \
++  LANG_HOOKS_DEEP_UNSHARING, \
++  LANG_HOOKS_SOURCE_LANGUAGE \
+ }
+ #endif /* GCC_LANG_HOOKS_DEF_H */
+--- gcc/c/c-lang.c.jj  2011-01-03 12:53:05.376056936 +0100
++++ gcc/c/c-lang.c     2011-01-04 17:59:43.167743798 +0100
+@@ -36,6 +36,12 @@ along with GCC; see the file COPYING3.
+ enum c_language_kind c_language = clk_c;
++static int
++c_source_language (void)
++{
++  return flag_isoc99 ? 1999 : 1989;
++}
++
+ /* Lang hooks common to C and ObjC are declared in c-objc-common.h;
+    consequently, there should be very few hooks below.  */
+@@ -45,6 +51,8 @@ enum c_language_kind c_language = clk_c;
+ #define LANG_HOOKS_INIT c_objc_common_init
+ #undef LANG_HOOKS_INIT_TS
+ #define LANG_HOOKS_INIT_TS c_common_init_ts
++#undef LANG_HOOKS_SOURCE_LANGUAGE
++#define LANG_HOOKS_SOURCE_LANGUAGE c_source_language
+ /* Each front end provides its own lang hook initializer.  */
+ struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER;
+--- gcc/dwarf2out.c.jj 2011-01-03 12:53:05.102056475 +0100
++++ gcc/dwarf2out.c    2011-01-04 18:03:14.534151763 +0100
+@@ -16109,9 +16109,18 @@ add_bit_size_attribute (dw_die_ref die,
+ static inline void
+ add_prototyped_attribute (dw_die_ref die, tree func_type)
+ {
+-  if (get_AT_unsigned (comp_unit_die (), DW_AT_language) == DW_LANG_C89
+-      && prototype_p (func_type))
+-    add_AT_flag (die, DW_AT_prototyped, 1);
++  switch (get_AT_unsigned (comp_unit_die (), DW_AT_language))
++    {
++    case DW_LANG_C:
++    case DW_LANG_C89:
++    case DW_LANG_C99:
++    case DW_LANG_ObjC:
++      if (prototype_p (func_type))
++      add_AT_flag (die, DW_AT_prototyped, 1);
++      break;
++    default:
++      break;
++    }
+ }
+ /* Add an 'abstract_origin' attribute below a given DIE.  The DIE is found
+@@ -18915,6 +18924,10 @@ gen_compile_unit_die (const char *filena
+         if (strcmp (language_string, "GNU Go") == 0)
+           language = DW_LANG_Go;
+       }
++      else if (strcmp (language_string, "GNU C") == 0
++             && lang_hooks.source_language
++             && lang_hooks.source_language () >= 1999)
++      language = DW_LANG_C99;
+     }
+   /* Use a degraded Fortran setting in strict DWARF2 so is_fortran works.  */
+   else if (strcmp (language_string, "GNU Fortran") == 0)
diff --git a/src/patches/gcc/gcc49-pr64336.patch b/src/patches/gcc/gcc49-pr64336.patch
new file mode 100644 (file)
index 0000000..86fddd5
--- /dev/null
@@ -0,0 +1,17 @@
+2014-12-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR sanitizer/64336
+       * tsan.c (instrument_expr): Ignore TREE_READONLY bit
+       on MEM_REFs.
+
+--- gcc/tsan.c.jj      2014-12-17 10:53:30.000000000 +0100
++++ gcc/tsan.c 2014-12-17 11:55:12.793058159 +0100
+@@ -138,7 +138,7 @@ instrument_expr (gimple_stmt_iterator gs
+       return false;
+     }
+-  if (TREE_READONLY (base)
++  if ((TREE_READONLY (base) && TREE_CODE (base) != MEM_REF)
+       || (TREE_CODE (base) == VAR_DECL
+         && DECL_HARD_REGISTER (base)))
+     return false;
diff --git a/src/patches/glibc-2.12-accept-make-versions-4.0-and-greater.patch b/src/patches/glibc-2.12-accept-make-versions-4.0-and-greater.patch
new file mode 100644 (file)
index 0000000..7faf857
--- /dev/null
@@ -0,0 +1,35 @@
+From 28d708c44bc47b56f6551ff285f78edcf61c208a Mon Sep 17 00:00:00 2001
+From: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
+Date: Thu, 31 Oct 2013 12:37:50 +1000
+Subject: Accept make versions 4.0 and greater
+
+
+diff --git a/configure b/configure
+index f382138..5e61abd 100755
+--- a/configure
++++ b/configure
+@@ -4761,7 +4761,7 @@ $as_echo_n "checking version of $MAKE... " >&6; }
+   ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
+   case $ac_prog_version in
+     '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+-    3.79* | 3.[89]*)
++    3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*)
+        ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+     *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+diff --git a/configure.in b/configure.in
+index 49b70fd..6da8efd 100644
+--- a/configure.in
++++ b/configure.in
+@@ -984,7 +984,7 @@ AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v,
+   critic_missing="$critic_missing gcc")
+ AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version,
+   [GNU Make[^0-9]*\([0-9][0-9.]*\)],
+-  [3.79* | 3.[89]*], critic_missing="$critic_missing make")
++  [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make")
+ AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version,
+   [GNU gettext.* \([0-9]*\.[0-9.]*\)],
+-- 
+cgit v0.10.2
+
diff --git a/src/patches/glibc/glibc-mq_open.patch b/src/patches/glibc/glibc-mq_open.patch
new file mode 100644 (file)
index 0000000..a7a0f11
--- /dev/null
@@ -0,0 +1,34 @@
+From: https://sourceware.org/bugzilla/show_bug.cgi?id=12841
+
+--- libc/rt/bits/mqueue2.h     2009-05-16 19:23:37.000000000 +0200
++++ libc/rt/bits/mqueue2.h     2011-06-04 19:05:38.322333773 +0200
+@@ -1,5 +1,5 @@ 
+ /* Checking macros for mq functions.
+-   Copyright (C) 2007 Free Software Foundation, Inc.
++   Copyright (C) 2007, 2011 Free Software Foundation, Inc.
+    This file is part of the GNU C Library.
+    The GNU C Library is free software; you can redistribute it and/or
+@@ -25,16 +25,18 @@ 
+    parameter.  */
+ extern mqd_t mq_open (__const char *__name, int __oflag, ...)
+      __THROW __nonnull ((1));
+-extern mqd_t __mq_open_2 (__const char *__name, int __oflag) __nonnull ((1));
+-extern mqd_t __REDIRECT (__mq_open_alias, (__const char *__name, int __oflag, ...),
+-                       mq_open) __nonnull ((1));
++extern mqd_t __mq_open_2 (__const char *__name, int __oflag)
++     __THROW __nonnull ((1));
++extern mqd_t __REDIRECT_NTH (__mq_open_alias, (__const char *__name,
++                                             int __oflag, ...), mq_open)
++     __nonnull ((1));
+ __errordecl (__mq_open_wrong_number_of_args,
+            "mq_open can be called either with 2 or 4 arguments");
+ __errordecl (__mq_open_missing_mode_and_attr,
+            "mq_open with O_CREAT in second argument needs 4 arguments");
+ __extern_always_inline mqd_t
+-mq_open (__const char *__name, int __oflag, ...)
++__NTH (mq_open (__const char *__name, int __oflag, ...))
+ {
+   if (__va_arg_pack_len () != 0 && __va_arg_pack_len () != 2)
+     __mq_open_wrong_number_of_args ();
diff --git a/src/patches/glibc/glibc-rh1207995.patch b/src/patches/glibc/glibc-rh1207995.patch
new file mode 100644 (file)
index 0000000..1732de6
--- /dev/null
@@ -0,0 +1,27 @@
+#
+# Based on the following commit:
+#
+# commit f9d2d03254a58d92635a311a42253eeed5a40a47
+# Author: Andreas Schwab <schwab@suse.de>
+# Date:   Mon May 26 18:01:31 2014 +0200
+# 
+#     Fix invalid file descriptor reuse while sending DNS query (BZ #15946)
+# 
+# 2014-06-03  Andreas Schwab  <schwab@suse.de>
+# 
+#      [BZ #15946]
+#      * resolv/res_send.c (send_dg): Reload file descriptor after
+#      calling reopen.
+# 
+diff --git a/resolv/res_send.c b/resolv/res_send.c
+index 3273d55..af42b8a 100644
+--- a/resolv/res_send.c
++++ b/resolv/res_send.c
+@@ -1410,6 +1410,7 @@ send_dg(res_state statp,
+                                       retval = reopen (statp, terrno, ns);
+                                       if (retval <= 0)
+                                               return retval;
++                                      pfd[0].fd = EXT(statp).nssocks[ns];
+                               }
+                       }
+                       goto wait;
diff --git a/src/patches/glibc/glibc-rh1209375.patch b/src/patches/glibc/glibc-rh1209375.patch
new file mode 100644 (file)
index 0000000..74393f0
--- /dev/null
@@ -0,0 +1,18 @@
+@@ -, +, @@
+ resolv/nss_dns/dns-host.c:getanswer_r.
+---
+ resolv/nss_dns/dns-host.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+--- a/resolv/nss_dns/dns-host.c
++++ a/resolv/nss_dns/dns-host.c
+@@ -615,7 +615,8 @@ getanswer_r (const querybuf *answer, int anslen, const char *qname, int qtype,
+   int have_to_map = 0;
+   uintptr_t pad = -(uintptr_t) buffer % __alignof__ (struct host_data);
+   buffer += pad;
+-  if (__builtin_expect (buflen < sizeof (struct host_data) + pad, 0))
++  buflen = buflen > pad ? buflen - pad : 0;
++  if (__builtin_expect (buflen < sizeof (struct host_data), 0))
+     {
+       /* The buffer is too small.  */
+     too_small:
+--
diff --git a/src/patches/glibc/glibc-rh1217186.patch b/src/patches/glibc/glibc-rh1217186.patch
new file mode 100644 (file)
index 0000000..6c6c393
--- /dev/null
@@ -0,0 +1,65 @@
+#
+# Author: Carlos O'Donell
+# Upstream status: Needs to go upstream (2015-05-07)
+#
+diff --git a/inet/rcmd.c b/inet/rcmd.c
+index acacaa0..9f2443b 100644
+--- a/inet/rcmd.c
++++ b/inet/rcmd.c
+@@ -803,29 +803,38 @@ __validuser2_sa(hostf, ra, ralen, luser, ruser, rhost)
+       *p = '\0';              /* <nul> terminate username (+host?) */
+       /* buf -> host(?) ; user -> username(?) */
++      if (*buf == '\0')
++        break;
++      if (*user == '\0')
++        user = luser;
++
++      /* First check the user part.  This is an optimization, since
++         one should always check the host first in order to detect
++         negative host checks (which we check for later).  */
++      ucheck = __icheckuser (user, ruser);
++
++      /* Either we found the user, or we didn't and this is a
++         negative host check.  We must do the negative host lookup
++         in order to preserve the semantics of stopping on this line
++         before processing others.  */
++      if (ucheck != 0 || *buf == '-') {
++
++          /* Next check host part */
++          hcheck = __checkhost_sa (ra, ralen, buf, rhost);
++
++          /* Negative '-host user(?)' match?  */
++          if (hcheck < 0)
++              break;
+-      /* First check host part */
+-      hcheck = __checkhost_sa (ra, ralen, buf, rhost);
+-
+-      if (hcheck < 0)
+-          break;
+-
+-      if (hcheck) {
+-          /* Then check user part */
+-          if (! (*user))
+-              user = luser;
+-
+-          ucheck = __icheckuser (user, ruser);
+-
+-          /* Positive 'host user' match? */
+-          if (ucheck > 0) {
++          /* Positive 'host user' match?  */
++          if (hcheck > 0 && ucheck > 0) {
+               retval = 0;
+               break;
+           }
+-          /* Negative 'host -user' match? */
+-          if (ucheck < 0)
+-              break;
++          /* Negative 'host -user' match?  */
++          if (hcheck > 0 && ucheck < 0)
++            break;
+           /* Neither, go on looking for match */
+       }
diff --git a/src/patches/linux-3.10-dvb_tevi_s482.patch b/src/patches/linux-3.10-dvb_tevi_s482.patch
new file mode 100644 (file)
index 0000000..fed875d
--- /dev/null
@@ -0,0 +1,240 @@
+diff --git a/drivers/media/usb/dvb-usb/dw2102.c b/drivers/media/usb/dvb-usb/dw2102.c
+index 1a3df10..82d35c6 100644
+--- a/drivers/media/usb/dvb-usb/dw2102.c
++++ b/drivers/media/usb/dvb-usb/dw2102.c
+@@ -31,6 +31,9 @@
+ #include "m88rs2000.h"
+ #include "tda18271.h"
+ #include "cxd2820r.h"
++#include "m88ds3103.h"
++#include "m88ts2022.h"
++
+ /* Max transfer size done by I2C transfer functions */
+ #define MAX_XFER_SIZE  64
+@@ -71,6 +74,14 @@
+ #define USB_PID_TEVII_S480_2 0xd482
+ #endif
++#ifndef USB_PID_TEVII_S482_1
++#define USB_PID_TEVII_S482_1 0xd483
++#endif
++
++#ifndef USB_PID_TEVII_S482_2
++#define USB_PID_TEVII_S482_2 0xd484
++#endif
++
+ #ifndef USB_PID_PROF_1100
+ #define USB_PID_PROF_1100 0xb012
+ #endif
+@@ -1117,6 +1128,19 @@ static struct tda18271_config tda18271_config = {
+       .gate = TDA18271_GATE_DIGITAL,
+ };
++static const struct m88ds3103_config s482_m88ds3103_config = {
++      .i2c_addr = 0x68,
++      .clock = 27000000,
++      .i2c_wr_max = 33,
++      .clock_out = 0,
++      .ts_mode = M88DS3103_TS_CI,
++      .ts_clk = 16000,
++      .ts_clk_pol = 0,
++      .agc = 0x99,
++      .lnb_hv_pol = 1,
++      .lnb_en_pol = 1,
++       };
++
+ static u8 m88rs2000_inittab[] = {
+       DEMOD_WRITE, 0x9a, 0x30,
+       DEMOD_WRITE, 0x00, 0x01,
+@@ -1386,6 +1410,83 @@ static int su3000_frontend_attach(struct dvb_usb_adapter *d)
+       return -EIO;
+ }
++static int m88ds3103_frontend_attach(struct dvb_usb_adapter *d)
++{
++      u8 obuf[3] = { 0xe, 0x80, 0 };
++      u8 ibuf[] = { 0 };
++
++      /* demod I2C adapter */
++      struct i2c_adapter *i2c_adapter;
++      struct i2c_client *client;
++      struct i2c_board_info info;
++      struct m88ts2022_config m88ts2022_config = {
++              .clock = 27000000,
++               };
++      memset(&info, 0, sizeof(struct i2c_board_info));
++      if (dvb_usb_generic_rw(d->dev, obuf, 3, ibuf, 1, 0) < 0)
++              err("command 0x0e transfer failed.");
++
++      obuf[0] = 0xe;
++      obuf[1] = 0x02;
++      obuf[2] = 1;
++
++      if (dvb_usb_generic_rw(d->dev, obuf, 3, ibuf, 1, 0) < 0)
++              err("command 0x0e transfer failed.");
++      msleep(300);
++
++      obuf[0] = 0xe;
++      obuf[1] = 0x83;
++      obuf[2] = 0;
++
++      if (dvb_usb_generic_rw(d->dev, obuf, 3, ibuf, 1, 0) < 0)
++              err("command 0x0e transfer failed.");
++
++      obuf[0] = 0xe;
++      obuf[1] = 0x83;
++      obuf[2] = 1;
++
++      if (dvb_usb_generic_rw(d->dev, obuf, 3, ibuf, 1, 0) < 0)
++              err("command 0x0e transfer failed.");
++
++      obuf[0] = 0x51;
++
++      if (dvb_usb_generic_rw(d->dev, obuf, 1, ibuf, 1, 0) < 0)
++              err("command 0x51 transfer failed.");
++      d->fe_adap[0].fe = dvb_attach(m88ds3103_attach,
++              &s482_m88ds3103_config,
++              &d->dev->i2c_adap,
++              &i2c_adapter);
++      if (d->fe_adap[0].fe == NULL)
++              return -EIO;
++      /* attach tuner */
++      m88ts2022_config.fe = d->fe_adap[0].fe;
++      strlcpy(info.type, "m88ts2022", I2C_NAME_SIZE);
++      info.addr = 0x60;
++      info.platform_data = &m88ts2022_config;
++      request_module("m88ts2022");
++      client = i2c_new_device(i2c_adapter, &info);
++      if (client == NULL || client->dev.driver == NULL) {
++              dvb_frontend_detach(d->fe_adap[0].fe);
++              goto fail_attach;
++      }
++      if (!try_module_get(client->dev.driver->owner)) {
++                      i2c_unregister_device(client);
++                              dvb_frontend_detach(d->fe_adap[0].fe);
++                      goto fail_attach;
++      }
++      info("attached m88ds3103/m88ts2022!\n");
++
++      /* delegate signal strength measurement to tuner */
++
++      d->fe_adap[0].fe->ops.read_signal_strength =
++              d->fe_adap[0].fe->ops.tuner_ops.get_rf_strength;
++
++      return 0;
++fail_attach:
++      info("Failed to attach m88ds3103/m88ts2022!\n");
++      return -EIO;
++}
++
+ static int t220_frontend_attach(struct dvb_usb_adapter *d)
+ {
+       u8 obuf[3] = { 0xe, 0x87, 0 };
+@@ -1557,6 +1658,8 @@ enum dw2102_table_entry {
+       TEVII_S480_2,
+       X3M_SPC1400HD,
+       TEVII_S421,
++      TEVII_S482_1,
++      TEVII_S482_2,
+       TEVII_S632,
+       TERRATEC_CINERGY_S2_R2,
+       GOTVIEW_SAT_HD,
+@@ -1580,7 +1683,9 @@ static struct usb_device_id dw2102_table[] = {
+       [TEVII_S480_2] = {USB_DEVICE(0x9022, USB_PID_TEVII_S480_2)},
+       [X3M_SPC1400HD] = {USB_DEVICE(0x1f4d, 0x3100)},
+       [TEVII_S421] = {USB_DEVICE(0x9022, USB_PID_TEVII_S421)},
+-      [TEVII_S632] = {USB_DEVICE(0x9022, USB_PID_TEVII_S632)},
++      [TEVII_S482_1] = { USB_DEVICE(0x9022, USB_PID_TEVII_S482_1) },
++      [TEVII_S482_2] = { USB_DEVICE(0x9022, USB_PID_TEVII_S482_2) },
++      [TEVII_S632] = { USB_DEVICE(0x9022, USB_PID_TEVII_S632) },
+       [TERRATEC_CINERGY_S2_R2] = {USB_DEVICE(USB_VID_TERRATEC, 0x00b0)},
+       [GOTVIEW_SAT_HD] = {USB_DEVICE(0x1FE1, USB_PID_GOTVIEW_SAT_HD)},
+       [GENIATECH_T220] = {USB_DEVICE(0x1f4d, 0xD220)},
+@@ -2012,6 +2117,59 @@ static struct dvb_usb_device_properties su3000_properties = {
+       }
+ };
++static struct dvb_usb_device_properties m88ds3103_properties = {
++      .caps = DVB_USB_IS_AN_I2C_ADAPTER,
++      .usb_ctrl = DEVICE_SPECIFIC,
++      .size_of_priv = sizeof(struct su3000_state),
++      .power_ctrl = su3000_power_ctrl,
++      .num_adapters = 1,
++      .identify_state = su3000_identify_state,
++      .i2c_algo = &su3000_i2c_algo,
++
++      .rc.core = {
++              .rc_interval = 150,
++              .rc_codes = RC_MAP_TEVII_NEC,
++              .module_name = "dw2102",
++              .allowed_protos = RC_BIT_NEC,
++              .rc_query = dw2102_rc_query,
++      },
++
++      .read_mac_address = su3000_read_mac_address,
++
++      .generic_bulk_ctrl_endpoint = 0x01,
++
++      .adapter = {
++              {
++                      .num_frontends = 1,
++                      .fe = { {
++                                      .streaming_ctrl = su3000_streaming_ctrl,
++                                      .frontend_attach = m88ds3103_frontend_attach,
++                                      .stream = {
++                                              .type = USB_BULK,
++                                              .count = 8,
++                                              .endpoint = 0x82,
++                                              .u = {
++                                                      .bulk = {
++                                                              .buffersize = 4096,
++                                                      }
++                                              }
++                                      }
++                              } },
++              }
++              },
++              .num_device_descs = 2,
++              .devices = {
++                      { "TeVii S482.1 USB",
++                      { &dw2102_table[TEVII_S482_1], NULL },
++                      { NULL },
++                      },
++                      { "TeVii S482.2 USB",
++                      { &dw2102_table[TEVII_S482_2], NULL },
++                      { NULL },
++                      },
++                      }
++};
++
+ static struct dvb_usb_device_properties t220_properties = {
+       .caps = DVB_USB_IS_AN_I2C_ADAPTER,
+       .usb_ctrl = DEVICE_SPECIFIC,
+@@ -2131,11 +2289,13 @@ static int dw2102_probe(struct usb_interface *intf,
+           0 == dvb_usb_device_init(intf, p7500,
+                       THIS_MODULE, NULL, adapter_nr) ||
+           0 == dvb_usb_device_init(intf, s421,
+-                      THIS_MODULE, NULL, adapter_nr) ||
+-          0 == dvb_usb_device_init(intf, &su3000_properties,
+-                       THIS_MODULE, NULL, adapter_nr) ||
++                      THIS_MODULE, NULL, adapter_nr)  ||
+           0 == dvb_usb_device_init(intf, &t220_properties,
+-                       THIS_MODULE, NULL, adapter_nr))
++                      THIS_MODULE, NULL, adapter_nr) ||
++              0 == dvb_usb_device_init(intf, &m88ds3103_properties,
++                      THIS_MODULE, NULL, adapter_nr) ||
++              0 == dvb_usb_device_init(intf, &su3000_properties,
++                      THIS_MODULE, NULL, adapter_nr))
+               return 0;
+       return -ENODEV;
+@@ -2153,7 +2313,7 @@ module_usb_driver(dw2102_driver);
+ MODULE_AUTHOR("Igor M. Liplianin (c) liplianin@me.by");
+ MODULE_DESCRIPTION("Driver for DVBWorld DVB-S 2101, 2102, DVB-S2 2104,"
+                       " DVB-C 3101 USB2.0,"
+-                      " TeVii S600, S630, S650, S660, S480, S421, S632"
++                      " TeVii S600, S630, S650, S660, S480, S482, S421, S632"
+                       " Prof 1100, 7500 USB2.0,"
+                       " Geniatech SU3000, T220 devices");
+ MODULE_VERSION("0.1");
similarity index 80%
rename from src/patches/linux-3.10-apu_leds.patch
rename to src/patches/linux-3.14-apu_leds.patch
index 53d389af1a7a9259bc38c4fc7e3de7426e1dd3f4..13d7c761011cfb784b91fc048c9b1dd03eeb51c2 100644 (file)
@@ -1,22 +1,30 @@
-diff -Naur linux-3.10.33.org/arch/x86/Kconfig linux-3.10.33/arch/x86/Kconfig
---- linux-3.10.33.org/arch/x86/Kconfig 2014-03-07 06:58:45.000000000 +0100
-+++ linux-3.10.33/arch/x86/Kconfig     2014-03-17 17:02:46.703135023 +0100
-@@ -2199,6 +2199,12 @@
+diff -Naur linux-3.14.43.org/arch/x86/Kconfig linux-3.14.43/arch/x86/Kconfig
+--- linux-3.14.43.org/arch/x86/Kconfig 2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/arch/x86/Kconfig     2015-09-19 20:14:52.436654988 +0200
+@@ -2287,6 +2287,7 @@
           - AC adapter status updates
           - Battery status updates
  
++
+ config ALIX
+       bool "PCEngines ALIX System Support (LED setup)"
+       select GPIOLIB
+@@ -2325,6 +2326,12 @@
+ endif # X86_32
 +config APULED
 +      bool "PCEngines APU Led Support"
 +      depends on DMI
 +      ---help---
 +        This option enables system support for the PCEngines APU.
 +
- config ALIX
-       bool "PCEngines ALIX System Support (LED setup)"
-       select GPIOLIB
-diff -Naur linux-3.10.33.org/arch/x86/platform/apu/apu-led.c linux-3.10.33/arch/x86/platform/apu/apu-led.c
---- linux-3.10.33.org/arch/x86/platform/apu/apu-led.c  1970-01-01 01:00:00.000000000 +0100
-+++ linux-3.10.33/arch/x86/platform/apu/apu-led.c      2014-03-17 17:00:36.187188456 +0100
+ config AMD_NB
+       def_bool y
+       depends on CPU_SUP_AMD && PCI
+diff -Naur linux-3.14.43.org/arch/x86/platform/apu/apu-led.c linux-3.14.43/arch/x86/platform/apu/apu-led.c
+--- linux-3.14.43.org/arch/x86/platform/apu/apu-led.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-3.14.43/arch/x86/platform/apu/apu-led.c      2015-09-19 20:12:20.520647636 +0200
 @@ -0,0 +1,181 @@
 +/*
 + * LEDs driver for PCEngines apu
@@ -199,14 +207,14 @@ diff -Naur linux-3.10.33.org/arch/x86/platform/apu/apu-led.c linux-3.10.33/arch/
 +MODULE_AUTHOR("Christian Herzog");
 +MODULE_DESCRIPTION("PCEngines apu LED driver");
 +MODULE_LICENSE("GPL");
-diff -Naur linux-3.10.33.org/arch/x86/platform/apu/Makefile linux-3.10.33/arch/x86/platform/apu/Makefile
---- linux-3.10.33.org/arch/x86/platform/apu/Makefile   1970-01-01 01:00:00.000000000 +0100
-+++ linux-3.10.33/arch/x86/platform/apu/Makefile       2014-03-17 17:05:19.245651480 +0100
+diff -Naur linux-3.14.43.org/arch/x86/platform/apu/Makefile linux-3.14.43/arch/x86/platform/apu/Makefile
+--- linux-3.14.43.org/arch/x86/platform/apu/Makefile   1970-01-01 01:00:00.000000000 +0100
++++ linux-3.14.43/arch/x86/platform/apu/Makefile       2015-09-19 20:12:20.520647636 +0200
 @@ -0,0 +1 @@
 +obj-$(CONFIG_APULED)          += apu-led.o
-diff -Naur linux-3.10.33.org/arch/x86/platform/Makefile linux-3.10.33/arch/x86/platform/Makefile
---- linux-3.10.33.org/arch/x86/platform/Makefile       2014-03-07 06:58:45.000000000 +0100
-+++ linux-3.10.33/arch/x86/platform/Makefile   2014-03-17 14:53:15.078571307 +0100
+diff -Naur linux-3.14.43.org/arch/x86/platform/Makefile linux-3.14.43/arch/x86/platform/Makefile
+--- linux-3.14.43.org/arch/x86/platform/Makefile       2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/arch/x86/platform/Makefile   2015-09-19 20:12:20.520647636 +0200
 @@ -1,4 +1,5 @@
  # Platform specific code goes here
 +obj-y += apu/
diff --git a/src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch b/src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch
new file mode 100644 (file)
index 0000000..1745bbc
--- /dev/null
@@ -0,0 +1,47 @@
+diff -Naur linux-3.14.43.org/drivers/ata/libata-core.c linux-3.14.43/drivers/ata/libata-core.c
+--- linux-3.14.43.org/drivers/ata/libata-core.c        2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/drivers/ata/libata-core.c    2015-07-11 19:15:01.450041507 +0200
+@@ -4229,6 +4229,9 @@
+       { "Micron_M550*",               NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
+       { "Crucial_CT*M550SSD*",        NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
++      /* devices that don't properly handle TRIM commands */
++      { "SuperSSpeed S238*",          NULL,   ATA_HORKAGE_NOTRIM, },
++
+       /*
+        * Some WD SATA-I drives spin up and down erratically when the link
+        * is put into the slumber mode.  We don't have full list of the
+diff -Naur linux-3.14.43.org/drivers/ata/libata-scsi.c linux-3.14.43/drivers/ata/libata-scsi.c
+--- linux-3.14.43.org/drivers/ata/libata-scsi.c        2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/drivers/ata/libata-scsi.c    2015-07-11 20:47:22.570021716 +0200
+@@ -2510,11 +2513,15 @@
+               rbuf[14] = (lowest_aligned >> 8) & 0x3f;
+               rbuf[15] = lowest_aligned;
+-              if (ata_id_has_trim(args->id)) {
+-                      rbuf[14] |= 0x80; /* TPE */
+-                      if (ata_id_has_zero_after_trim(args->id))
+-                              rbuf[14] |= 0x40; /* TPRZ */
++
++              if (!(dev->horkage & ATA_HORKAGE_NOTRIM)) { 
++                      if (ata_id_has_trim(args->id)) {
++                              rbuf[14] |= 0x80; /* TPE */
++
++                              if (ata_id_has_zero_after_trim(args->id))
++                                      rbuf[14] |= 0x40; /* TPRZ */
++                      }
+               }
+       }
+diff -Naur linux-3.14.43.org/include/linux/libata.h linux-3.14.43/include/linux/libata.h
+--- linux-3.14.43.org/include/linux/libata.h   2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/include/linux/libata.h       2015-07-11 19:13:03.190682173 +0200
+@@ -421,6 +421,7 @@
+       ATA_HORKAGE_NO_NCQ_TRIM = (1 << 19),    /* don't use queued TRIM */
+       ATA_HORKAGE_NOLPM       = (1 << 20),    /* don't use LPM */
+       ATA_HORKAGE_WD_BROKEN_LPM = (1 << 21),  /* some WDs have broken LPM */
++      ATA_HORKAGE_NOTRIM      = (1 << 22),    /* don't use TRIM */
+        /* DMA mask for user DMA control: User visible values; DO NOT
+           renumber */
diff --git a/src/patches/linux-3.14.43_new_qtrim_blacklist.patch b/src/patches/linux-3.14.43_new_qtrim_blacklist.patch
new file mode 100644 (file)
index 0000000..f497070
--- /dev/null
@@ -0,0 +1,18 @@
+diff -Naur linux-3.14.43.org/drivers/ata/libata-core.c linux-3.14.43/drivers/ata/libata-core.c
+--- linux-3.14.43.org/drivers/ata/libata-core.c        2015-07-13 17:58:28.126607225 +0200
++++ linux-3.14.43/drivers/ata/libata-core.c    2015-07-13 18:06:07.430782102 +0200
+@@ -4225,9 +4225,11 @@
+       /* devices that don't properly handle queued TRIM commands */
+       { "Micron_M500*",               NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
+-      { "Crucial_CT???M500SSD*",      NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
+-      { "Micron_M550*",               NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
+-      { "Crucial_CT*M550SSD*",        NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
++      { "Crucial_CT*M500*",           NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
++      { "Micron_M5[15]0*",            "MU01", ATA_HORKAGE_NO_NCQ_TRIM, },
++      { "Crucial_CT*M550*",           "MU01", ATA_HORKAGE_NO_NCQ_TRIM, },
++      { "Crucial_CT*MX100*",          "MU01", ATA_HORKAGE_NO_NCQ_TRIM, },
++      { "Samsung SSD 8*",             NULL,   ATA_HORKAGE_NO_NCQ_TRIM, },
+       /* devices that don't properly handle TRIM commands */
+       { "SuperSSpeed S238*",          NULL,   ATA_HORKAGE_NOTRIM, },
diff --git a/src/patches/linux-genksyms_fix_typeof_handling.patch b/src/patches/linux-genksyms_fix_typeof_handling.patch
new file mode 100644 (file)
index 0000000..3cf3403
--- /dev/null
@@ -0,0 +1,1360 @@
+From dc53324060f324e8af6867f57bf4891c13c6ef18 Mon Sep 17 00:00:00 2001
+From: Jan Beulich <JBeulich@suse.com>
+Date: Thu, 3 Apr 2014 14:46:37 -0700
+Subject: genksyms: fix typeof() handling
+
+Recent increased use of typeof() throughout the tree resulted in a
+number of symbols (25 in a typical distro config of ours) not getting a
+proper CRC calculated for them anymore, due to the parser in genksyms
+not coping with several of these uses (interestingly in the majority of
+[if not all] cases the problem is due to the use of typeof() in code
+preceding a certain export, not in the declaration/definition of the
+exported function/object itself; I wasn't able to find a way to address
+this more general parser shortcoming).
+
+The use of parameter_declaration is a little more relaxed than would be
+ideal (permitting not just a bare type specification, but also one with
+identifier), but since the same code is being passed through an actual
+compiler, there's no apparent risk of allowing through any broken code.
+
+Otoh using parameter_declaration instead of the ad hoc
+"decl_specifier_seq '*'" / "decl_specifier_seq" pair allows all types to
+be handled rather than just plain ones and pointers to plain ones.
+
+Signed-off-by: Jan Beulich <jbeulich@suse.com>
+Cc: Michal Marek <mmarek@suse.cz>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+---
+ scripts/genksyms/keywords.gperf          |   5 +-
+ scripts/genksyms/keywords.hash.c_shipped | 133 +++----
+ scripts/genksyms/lex.l                   |  51 ++-
+ scripts/genksyms/lex.lex.c_shipped       |  51 ++-
+ scripts/genksyms/parse.tab.c_shipped     | 608 ++++++++++++++++---------------
+ scripts/genksyms/parse.tab.h_shipped     |  29 +-
+ scripts/genksyms/parse.y                 |   5 +-
+ 7 files changed, 498 insertions(+), 384 deletions(-)
+
+diff --git a/scripts/genksyms/keywords.gperf b/scripts/genksyms/keywords.gperf
+index 3e77a94..a9096d9 100644
+--- a/scripts/genksyms/keywords.gperf
++++ b/scripts/genksyms/keywords.gperf
+@@ -23,6 +23,8 @@ __inline, INLINE_KEYW
+ __inline__, INLINE_KEYW
+ __signed, SIGNED_KEYW
+ __signed__, SIGNED_KEYW
++__typeof, TYPEOF_KEYW
++__typeof__, TYPEOF_KEYW
+ __volatile, VOLATILE_KEYW
+ __volatile__, VOLATILE_KEYW
+ # According to rth, c99 defines _Bool, __restrict, __restrict__, restrict.  KAO
+@@ -51,9 +53,8 @@ signed, SIGNED_KEYW
+ static, STATIC_KEYW
+ struct, STRUCT_KEYW
+ typedef, TYPEDEF_KEYW
++typeof, TYPEOF_KEYW
+ union, UNION_KEYW
+ unsigned, UNSIGNED_KEYW
+ void, VOID_KEYW
+ volatile, VOLATILE_KEYW
+-typeof, TYPEOF_KEYW
+-__typeof__, TYPEOF_KEYW
+diff --git a/scripts/genksyms/keywords.hash.c_shipped b/scripts/genksyms/keywords.hash.c_shipped
+index 8206260..e9452482 100644
+--- a/scripts/genksyms/keywords.hash.c_shipped
++++ b/scripts/genksyms/keywords.hash.c_shipped
+@@ -34,7 +34,7 @@ struct resword;
+ static const struct resword *is_reserved_word(register const char *str, register unsigned int len);
+ #line 8 "scripts/genksyms/keywords.gperf"
+ struct resword { const char *name; int token; };
+-/* maximum key range = 64, duplicates = 0 */
++/* maximum key range = 98, duplicates = 0 */
+ #ifdef __GNUC__
+ __inline
+@@ -48,32 +48,32 @@ is_reserved_hash (register const char *str, register unsigned int len)
+ {
+   static const unsigned char asso_values[] =
+     {
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67,  0,
+-      67, 67, 67, 67, 67, 67, 15, 67, 67, 67,
+-       0, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67,  0, 67,  0, 67,  5,
+-      25, 20, 15, 30, 67, 15, 67, 67, 10,  0,
+-      10, 40, 20, 67, 10,  5,  0, 10, 15, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+-      67, 67, 67, 67, 67, 67
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101,   0,
++      101, 101, 101, 101, 101, 101,  15, 101, 101, 101,
++        0, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101,   0, 101,   0, 101,   5,
++       25,  20,  55,  30, 101,  15, 101, 101,  10,   0,
++       10,  40,  10, 101,  10,   5,   0,  10,  15, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
++      101, 101, 101, 101, 101, 101
+     };
+   return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[0]] + asso_values[(unsigned char)str[len - 1]];
+ }
+@@ -89,17 +89,17 @@ is_reserved_word (register const char *str, register unsigned int len)
+ {
+   enum
+     {
+-      TOTAL_KEYWORDS = 45,
++      TOTAL_KEYWORDS = 46,
+       MIN_WORD_LENGTH = 3,
+       MAX_WORD_LENGTH = 24,
+       MIN_HASH_VALUE = 3,
+-      MAX_HASH_VALUE = 66
++      MAX_HASH_VALUE = 100
+     };
+   static const struct resword wordlist[] =
+     {
+       {""}, {""}, {""},
+-#line 33 "scripts/genksyms/keywords.gperf"
++#line 35 "scripts/genksyms/keywords.gperf"
+       {"asm", ASM_KEYW},
+       {""},
+ #line 15 "scripts/genksyms/keywords.gperf"
+@@ -108,7 +108,7 @@ is_reserved_word (register const char *str, register unsigned int len)
+ #line 16 "scripts/genksyms/keywords.gperf"
+       {"__asm__", ASM_KEYW},
+       {""}, {""},
+-#line 59 "scripts/genksyms/keywords.gperf"
++#line 27 "scripts/genksyms/keywords.gperf"
+       {"__typeof__", TYPEOF_KEYW},
+       {""},
+ #line 19 "scripts/genksyms/keywords.gperf"
+@@ -119,31 +119,31 @@ is_reserved_word (register const char *str, register unsigned int len)
+       {"__const__", CONST_KEYW},
+ #line 25 "scripts/genksyms/keywords.gperf"
+       {"__signed__", SIGNED_KEYW},
+-#line 51 "scripts/genksyms/keywords.gperf"
++#line 53 "scripts/genksyms/keywords.gperf"
+       {"static", STATIC_KEYW},
+       {""},
+-#line 46 "scripts/genksyms/keywords.gperf"
++#line 48 "scripts/genksyms/keywords.gperf"
+       {"int", INT_KEYW},
+-#line 39 "scripts/genksyms/keywords.gperf"
++#line 41 "scripts/genksyms/keywords.gperf"
+       {"char", CHAR_KEYW},
+-#line 40 "scripts/genksyms/keywords.gperf"
++#line 42 "scripts/genksyms/keywords.gperf"
+       {"const", CONST_KEYW},
+-#line 52 "scripts/genksyms/keywords.gperf"
++#line 54 "scripts/genksyms/keywords.gperf"
+       {"struct", STRUCT_KEYW},
+-#line 31 "scripts/genksyms/keywords.gperf"
++#line 33 "scripts/genksyms/keywords.gperf"
+       {"__restrict__", RESTRICT_KEYW},
+-#line 32 "scripts/genksyms/keywords.gperf"
++#line 34 "scripts/genksyms/keywords.gperf"
+       {"restrict", RESTRICT_KEYW},
+ #line 12 "scripts/genksyms/keywords.gperf"
+       {"EXPORT_SYMBOL_GPL_FUTURE", EXPORT_SYMBOL_KEYW},
+ #line 23 "scripts/genksyms/keywords.gperf"
+       {"__inline__", INLINE_KEYW},
+       {""},
+-#line 27 "scripts/genksyms/keywords.gperf"
++#line 29 "scripts/genksyms/keywords.gperf"
+       {"__volatile__", VOLATILE_KEYW},
+ #line 10 "scripts/genksyms/keywords.gperf"
+       {"EXPORT_SYMBOL", EXPORT_SYMBOL_KEYW},
+-#line 30 "scripts/genksyms/keywords.gperf"
++#line 32 "scripts/genksyms/keywords.gperf"
+       {"_restrict", RESTRICT_KEYW},
+       {""},
+ #line 17 "scripts/genksyms/keywords.gperf"
+@@ -152,56 +152,65 @@ is_reserved_word (register const char *str, register unsigned int len)
+       {"EXPORT_SYMBOL_GPL", EXPORT_SYMBOL_KEYW},
+ #line 21 "scripts/genksyms/keywords.gperf"
+       {"__extension__", EXTENSION_KEYW},
+-#line 42 "scripts/genksyms/keywords.gperf"
++#line 44 "scripts/genksyms/keywords.gperf"
+       {"enum", ENUM_KEYW},
+ #line 13 "scripts/genksyms/keywords.gperf"
+       {"EXPORT_UNUSED_SYMBOL", EXPORT_SYMBOL_KEYW},
+-#line 43 "scripts/genksyms/keywords.gperf"
++#line 45 "scripts/genksyms/keywords.gperf"
+       {"extern", EXTERN_KEYW},
+       {""},
+ #line 24 "scripts/genksyms/keywords.gperf"
+       {"__signed", SIGNED_KEYW},
+ #line 14 "scripts/genksyms/keywords.gperf"
+       {"EXPORT_UNUSED_SYMBOL_GPL", EXPORT_SYMBOL_KEYW},
+-#line 54 "scripts/genksyms/keywords.gperf"
++#line 57 "scripts/genksyms/keywords.gperf"
+       {"union", UNION_KEYW},
+-#line 58 "scripts/genksyms/keywords.gperf"
+-      {"typeof", TYPEOF_KEYW},
+-#line 53 "scripts/genksyms/keywords.gperf"
+-      {"typedef", TYPEDEF_KEYW},
++      {""}, {""},
+ #line 22 "scripts/genksyms/keywords.gperf"
+       {"__inline", INLINE_KEYW},
+-#line 38 "scripts/genksyms/keywords.gperf"
++#line 40 "scripts/genksyms/keywords.gperf"
+       {"auto", AUTO_KEYW},
+-#line 26 "scripts/genksyms/keywords.gperf"
++#line 28 "scripts/genksyms/keywords.gperf"
+       {"__volatile", VOLATILE_KEYW},
+       {""}, {""},
+-#line 55 "scripts/genksyms/keywords.gperf"
++#line 58 "scripts/genksyms/keywords.gperf"
+       {"unsigned", UNSIGNED_KEYW},
+       {""},
+-#line 49 "scripts/genksyms/keywords.gperf"
++#line 51 "scripts/genksyms/keywords.gperf"
+       {"short", SHORT_KEYW},
+-#line 45 "scripts/genksyms/keywords.gperf"
++#line 47 "scripts/genksyms/keywords.gperf"
+       {"inline", INLINE_KEYW},
+       {""},
+-#line 57 "scripts/genksyms/keywords.gperf"
++#line 60 "scripts/genksyms/keywords.gperf"
+       {"volatile", VOLATILE_KEYW},
+-#line 47 "scripts/genksyms/keywords.gperf"
++#line 49 "scripts/genksyms/keywords.gperf"
+       {"long", LONG_KEYW},
+-#line 29 "scripts/genksyms/keywords.gperf"
++#line 31 "scripts/genksyms/keywords.gperf"
+       {"_Bool", BOOL_KEYW},
+       {""}, {""},
+-#line 48 "scripts/genksyms/keywords.gperf"
++#line 50 "scripts/genksyms/keywords.gperf"
+       {"register", REGISTER_KEYW},
+-#line 56 "scripts/genksyms/keywords.gperf"
++#line 59 "scripts/genksyms/keywords.gperf"
+       {"void", VOID_KEYW},
+-#line 44 "scripts/genksyms/keywords.gperf"
+-      {"float", FLOAT_KEYW},
+-#line 41 "scripts/genksyms/keywords.gperf"
++      {""},
++#line 43 "scripts/genksyms/keywords.gperf"
+       {"double", DOUBLE_KEYW},
++      {""},
++#line 26 "scripts/genksyms/keywords.gperf"
++      {"__typeof", TYPEOF_KEYW},
++      {""}, {""},
++#line 52 "scripts/genksyms/keywords.gperf"
++      {"signed", SIGNED_KEYW},
+       {""}, {""}, {""}, {""},
+-#line 50 "scripts/genksyms/keywords.gperf"
+-      {"signed", SIGNED_KEYW}
++#line 56 "scripts/genksyms/keywords.gperf"
++      {"typeof", TYPEOF_KEYW},
++#line 55 "scripts/genksyms/keywords.gperf"
++      {"typedef", TYPEDEF_KEYW},
++      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
++      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
++      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
++#line 46 "scripts/genksyms/keywords.gperf"
++      {"float", FLOAT_KEYW}
+     };
+   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+diff --git a/scripts/genksyms/lex.l b/scripts/genksyms/lex.l
+index f770071..e583565 100644
+--- a/scripts/genksyms/lex.l
++++ b/scripts/genksyms/lex.l
+@@ -129,8 +129,9 @@ int
+ yylex(void)
+ {
+   static enum {
+-    ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_BRACKET, ST_BRACE,
+-    ST_EXPRESSION, ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
++    ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_TYPEOF, ST_TYPEOF_1,
++    ST_BRACKET, ST_BRACE, ST_EXPRESSION,
++    ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
+     ST_TABLE_5, ST_TABLE_6
+   } lexstate = ST_NOTSTARTED;
+@@ -198,6 +199,10 @@ repeat:
+                   lexstate = ST_ASM;
+                   count = 0;
+                   goto repeat;
++                case TYPEOF_KEYW:
++                  lexstate = ST_TYPEOF;
++                  count = 0;
++                  goto repeat;
+                 case STRUCT_KEYW:
+                 case UNION_KEYW:
+@@ -284,6 +289,48 @@ repeat:
+       }
+       break;
++    case ST_TYPEOF:
++      switch (token)
++      {
++      case '(':
++        if ( ++count == 1 )
++          lexstate = ST_TYPEOF_1;
++        else
++          APP;
++        goto repeat;
++      case ')':
++        APP;
++        if (--count == 0)
++          {
++            lexstate = ST_NORMAL;
++            token = TYPEOF_PHRASE;
++            break;
++          }
++        goto repeat;
++      default:
++        APP;
++        goto repeat;
++      }
++      break;
++
++    case ST_TYPEOF_1:
++      if (token == IDENT)
++      {
++        if (is_reserved_word(yytext, yyleng)
++            || find_symbol(yytext, SYM_TYPEDEF, 1))
++          {
++            yyless(0);
++            unput('(');
++            lexstate = ST_NORMAL;
++            token = TYPEOF_KEYW;
++            break;
++          }
++        _APP("(", 1);
++      }
++      APP;
++      lexstate = ST_TYPEOF;
++      goto repeat;
++
+     case ST_BRACKET:
+       APP;
+       switch (token)
+diff --git a/scripts/genksyms/lex.lex.c_shipped b/scripts/genksyms/lex.lex.c_shipped
+index 0bf4157..f82740a 100644
+--- a/scripts/genksyms/lex.lex.c_shipped
++++ b/scripts/genksyms/lex.lex.c_shipped
+@@ -1938,8 +1938,9 @@ int
+ yylex(void)
+ {
+   static enum {
+-    ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_BRACKET, ST_BRACE,
+-    ST_EXPRESSION, ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
++    ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_TYPEOF, ST_TYPEOF_1,
++    ST_BRACKET, ST_BRACE, ST_EXPRESSION,
++    ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4,
+     ST_TABLE_5, ST_TABLE_6
+   } lexstate = ST_NOTSTARTED;
+@@ -2007,6 +2008,10 @@ repeat:
+                   lexstate = ST_ASM;
+                   count = 0;
+                   goto repeat;
++                case TYPEOF_KEYW:
++                  lexstate = ST_TYPEOF;
++                  count = 0;
++                  goto repeat;
+                 case STRUCT_KEYW:
+                 case UNION_KEYW:
+@@ -2093,6 +2098,48 @@ repeat:
+       }
+       break;
++    case ST_TYPEOF:
++      switch (token)
++      {
++      case '(':
++        if ( ++count == 1 )
++          lexstate = ST_TYPEOF_1;
++        else
++          APP;
++        goto repeat;
++      case ')':
++        APP;
++        if (--count == 0)
++          {
++            lexstate = ST_NORMAL;
++            token = TYPEOF_PHRASE;
++            break;
++          }
++        goto repeat;
++      default:
++        APP;
++        goto repeat;
++      }
++      break;
++
++    case ST_TYPEOF_1:
++      if (token == IDENT)
++      {
++        if (is_reserved_word(yytext, yyleng)
++            || find_symbol(yytext, SYM_TYPEDEF, 1))
++          {
++            yyless(0);
++            unput('(');
++            lexstate = ST_NORMAL;
++            token = TYPEOF_KEYW;
++            break;
++          }
++        _APP("(", 1);
++      }
++      APP;
++      lexstate = ST_TYPEOF;
++      goto repeat;
++
+     case ST_BRACKET:
+       APP;
+       switch (token)
+diff --git a/scripts/genksyms/parse.tab.c_shipped b/scripts/genksyms/parse.tab.c_shipped
+index ece53c7..c9f0f0ce 100644
+--- a/scripts/genksyms/parse.tab.c_shipped
++++ b/scripts/genksyms/parse.tab.c_shipped
+@@ -1,8 +1,8 @@
+-/* A Bison parser, made by GNU Bison 2.5.  */
++/* A Bison parser, made by GNU Bison 2.5.1.  */
+ /* Bison implementation for Yacc-like parsers in C
+    
+-      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
++      Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
+    
+    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
+@@ -44,7 +44,7 @@
+ #define YYBISON 1
+ /* Bison version.  */
+-#define YYBISON_VERSION "2.5"
++#define YYBISON_VERSION "2.5.1"
+ /* Skeleton name.  */
+ #define YYSKELETON_NAME "yacc.c"
+@@ -117,6 +117,14 @@ static void record_compound(struct string_list **keyw,
++# ifndef YY_NULL
++#  if defined __cplusplus && 201103L <= __cplusplus
++#   define YY_NULL nullptr
++#  else
++#   define YY_NULL 0
++#  endif
++# endif
++
+ /* Enabling traces.  */
+ #ifndef YYDEBUG
+ # define YYDEBUG 1
+@@ -171,18 +179,19 @@ static void record_compound(struct string_list **keyw,
+      EXPORT_SYMBOL_KEYW = 284,
+      ASM_PHRASE = 285,
+      ATTRIBUTE_PHRASE = 286,
+-     BRACE_PHRASE = 287,
+-     BRACKET_PHRASE = 288,
+-     EXPRESSION_PHRASE = 289,
+-     CHAR = 290,
+-     DOTS = 291,
+-     IDENT = 292,
+-     INT = 293,
+-     REAL = 294,
+-     STRING = 295,
+-     TYPE = 296,
+-     OTHER = 297,
+-     FILENAME = 298
++     TYPEOF_PHRASE = 287,
++     BRACE_PHRASE = 288,
++     BRACKET_PHRASE = 289,
++     EXPRESSION_PHRASE = 290,
++     CHAR = 291,
++     DOTS = 292,
++     IDENT = 293,
++     INT = 294,
++     REAL = 295,
++     STRING = 296,
++     TYPE = 297,
++     OTHER = 298,
++     FILENAME = 299
+    };
+ #endif
+@@ -304,6 +313,7 @@ YYID (yyi)
+ #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
+      || defined __cplusplus || defined _MSC_VER)
+ #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
++      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
+ #     ifndef EXIT_SUCCESS
+ #      define EXIT_SUCCESS 0
+ #     endif
+@@ -395,20 +405,20 @@ union yyalloc
+ #endif
+ #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
+-/* Copy COUNT objects from FROM to TO.  The source and destination do
++/* Copy COUNT objects from SRC to DST.  The source and destination do
+    not overlap.  */
+ # ifndef YYCOPY
+ #  if defined __GNUC__ && 1 < __GNUC__
+-#   define YYCOPY(To, From, Count) \
+-      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
++#   define YYCOPY(Dst, Src, Count) \
++      __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
+ #  else
+-#   define YYCOPY(To, From, Count)            \
+-      do                                      \
+-      {                                       \
+-        YYSIZE_T yyi;                         \
+-        for (yyi = 0; yyi < (Count); yyi++)   \
+-          (To)[yyi] = (From)[yyi];            \
+-      }                                       \
++#   define YYCOPY(Dst, Src, Count)              \
++      do                                        \
++        {                                       \
++          YYSIZE_T yyi;                         \
++          for (yyi = 0; yyi < (Count); yyi++)   \
++            (Dst)[yyi] = (Src)[yyi];            \
++        }                                       \
+       while (YYID (0))
+ #  endif
+ # endif
+@@ -417,20 +427,20 @@ union yyalloc
+ /* YYFINAL -- State number of the termination state.  */
+ #define YYFINAL  4
+ /* YYLAST -- Last index in YYTABLE.  */
+-#define YYLAST   532
++#define YYLAST   514
+ /* YYNTOKENS -- Number of terminals.  */
+-#define YYNTOKENS  53
++#define YYNTOKENS  54
+ /* YYNNTS -- Number of nonterminals.  */
+ #define YYNNTS  49
+ /* YYNRULES -- Number of rules.  */
+ #define YYNRULES  132
+ /* YYNRULES -- Number of states.  */
+-#define YYNSTATES  188
++#define YYNSTATES  187
+ /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
+ #define YYUNDEFTOK  2
+-#define YYMAXUTOK   298
++#define YYMAXUTOK   299
+ #define YYTRANSLATE(YYX)                                              \
+   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
+@@ -442,15 +452,15 @@ static const yytype_uint8 yytranslate[] =
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+-      47,    49,    48,     2,    46,     2,     2,     2,     2,     2,
+-       2,     2,     2,     2,     2,     2,     2,     2,    52,    44,
+-       2,    50,     2,     2,     2,     2,     2,     2,     2,     2,
++      48,    49,    50,     2,    47,     2,     2,     2,     2,     2,
++       2,     2,     2,     2,     2,     2,     2,     2,    53,    45,
++       2,    51,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+-       2,     2,     2,    51,     2,    45,     2,     2,     2,     2,
++       2,     2,     2,    52,     2,    46,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+@@ -467,7 +477,7 @@ static const yytype_uint8 yytranslate[] =
+        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
+       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
+       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
+-      35,    36,    37,    38,    39,    40,    41,    42,    43
++      35,    36,    37,    38,    39,    40,    41,    42,    43,    44
+ };
+ #if YYDEBUG
+@@ -478,78 +488,77 @@ static const yytype_uint16 yyprhs[] =
+        0,     0,     3,     5,     8,     9,    12,    13,    18,    19,
+       23,    25,    27,    29,    31,    34,    37,    41,    42,    44,
+       46,    50,    55,    56,    58,    60,    63,    65,    67,    69,
+-      71,    73,    75,    77,    79,    81,    87,    92,    95,    98,
+-     101,   105,   109,   113,   116,   119,   122,   124,   126,   128,
+-     130,   132,   134,   136,   138,   140,   142,   144,   147,   148,
+-     150,   152,   155,   157,   159,   161,   163,   166,   168,   170,
+-     175,   180,   183,   187,   191,   194,   196,   198,   200,   205,
+-     210,   213,   217,   221,   224,   226,   230,   231,   233,   235,
+-     239,   242,   245,   247,   248,   250,   252,   257,   262,   265,
+-     269,   273,   277,   278,   280,   283,   287,   291,   292,   294,
+-     296,   299,   303,   306,   307,   309,   311,   315,   318,   321,
+-     323,   326,   327,   330,   334,   339,   341,   345,   347,   351,
+-     354,   355,   357
++      71,    73,    75,    77,    79,    81,    86,    88,    91,    94,
++      97,   101,   105,   109,   112,   115,   118,   120,   122,   124,
++     126,   128,   130,   132,   134,   136,   138,   140,   143,   144,
++     146,   148,   151,   153,   155,   157,   159,   162,   164,   166,
++     171,   176,   179,   183,   187,   190,   192,   194,   196,   201,
++     206,   209,   213,   217,   220,   222,   226,   227,   229,   231,
++     235,   238,   241,   243,   244,   246,   248,   253,   258,   261,
++     265,   269,   273,   274,   276,   279,   283,   287,   288,   290,
++     292,   295,   299,   302,   303,   305,   307,   311,   314,   317,
++     319,   322,   323,   326,   330,   335,   337,   341,   343,   347,
++     350,   351,   353
+ };
+ /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
+ static const yytype_int8 yyrhs[] =
+ {
+-      54,     0,    -1,    55,    -1,    54,    55,    -1,    -1,    56,
+-      57,    -1,    -1,    12,    23,    58,    60,    -1,    -1,    23,
+-      59,    60,    -1,    60,    -1,    84,    -1,    99,    -1,   101,
+-      -1,     1,    44,    -1,     1,    45,    -1,    64,    61,    44,
+-      -1,    -1,    62,    -1,    63,    -1,    62,    46,    63,    -1,
+-      74,   100,    95,    85,    -1,    -1,    65,    -1,    66,    -1,
+-      65,    66,    -1,    67,    -1,    68,    -1,     5,    -1,    17,
+-      -1,    21,    -1,    11,    -1,    14,    -1,    69,    -1,    73,
+-      -1,    28,    47,    65,    48,    49,    -1,    28,    47,    65,
+-      49,    -1,    22,    37,    -1,    24,    37,    -1,    10,    37,
+-      -1,    22,    37,    87,    -1,    24,    37,    87,    -1,    10,
+-      37,    96,    -1,    10,    96,    -1,    22,    87,    -1,    24,
+-      87,    -1,     7,    -1,    19,    -1,    15,    -1,    16,    -1,
+-      20,    -1,    25,    -1,    13,    -1,     9,    -1,    26,    -1,
+-       6,    -1,    41,    -1,    48,    71,    -1,    -1,    72,    -1,
+-      73,    -1,    72,    73,    -1,     8,    -1,    27,    -1,    31,
+-      -1,    18,    -1,    70,    74,    -1,    75,    -1,    37,    -1,
+-      75,    47,    78,    49,    -1,    75,    47,     1,    49,    -1,
+-      75,    33,    -1,    47,    74,    49,    -1,    47,     1,    49,
+-      -1,    70,    76,    -1,    77,    -1,    37,    -1,    41,    -1,
+-      77,    47,    78,    49,    -1,    77,    47,     1,    49,    -1,
+-      77,    33,    -1,    47,    76,    49,    -1,    47,     1,    49,
+-      -1,    79,    36,    -1,    79,    -1,    80,    46,    36,    -1,
+-      -1,    80,    -1,    81,    -1,    80,    46,    81,    -1,    65,
+-      82,    -1,    70,    82,    -1,    83,    -1,    -1,    37,    -1,
+-      41,    -1,    83,    47,    78,    49,    -1,    83,    47,     1,
+-      49,    -1,    83,    33,    -1,    47,    82,    49,    -1,    47,
+-       1,    49,    -1,    64,    74,    32,    -1,    -1,    86,    -1,
+-      50,    34,    -1,    51,    88,    45,    -1,    51,     1,    45,
+-      -1,    -1,    89,    -1,    90,    -1,    89,    90,    -1,    64,
+-      91,    44,    -1,     1,    44,    -1,    -1,    92,    -1,    93,
+-      -1,    92,    46,    93,    -1,    76,    95,    -1,    37,    94,
+-      -1,    94,    -1,    52,    34,    -1,    -1,    95,    31,    -1,
+-      51,    97,    45,    -1,    51,    97,    46,    45,    -1,    98,
+-      -1,    97,    46,    98,    -1,    37,    -1,    37,    50,    34,
+-      -1,    30,    44,    -1,    -1,    30,    -1,    29,    47,    37,
+-      49,    44,    -1
++      55,     0,    -1,    56,    -1,    55,    56,    -1,    -1,    57,
++      58,    -1,    -1,    12,    23,    59,    61,    -1,    -1,    23,
++      60,    61,    -1,    61,    -1,    85,    -1,   100,    -1,   102,
++      -1,     1,    45,    -1,     1,    46,    -1,    65,    62,    45,
++      -1,    -1,    63,    -1,    64,    -1,    63,    47,    64,    -1,
++      75,   101,    96,    86,    -1,    -1,    66,    -1,    67,    -1,
++      66,    67,    -1,    68,    -1,    69,    -1,     5,    -1,    17,
++      -1,    21,    -1,    11,    -1,    14,    -1,    70,    -1,    74,
++      -1,    28,    48,    82,    49,    -1,    32,    -1,    22,    38,
++      -1,    24,    38,    -1,    10,    38,    -1,    22,    38,    88,
++      -1,    24,    38,    88,    -1,    10,    38,    97,    -1,    10,
++      97,    -1,    22,    88,    -1,    24,    88,    -1,     7,    -1,
++      19,    -1,    15,    -1,    16,    -1,    20,    -1,    25,    -1,
++      13,    -1,     9,    -1,    26,    -1,     6,    -1,    42,    -1,
++      50,    72,    -1,    -1,    73,    -1,    74,    -1,    73,    74,
++      -1,     8,    -1,    27,    -1,    31,    -1,    18,    -1,    71,
++      75,    -1,    76,    -1,    38,    -1,    76,    48,    79,    49,
++      -1,    76,    48,     1,    49,    -1,    76,    34,    -1,    48,
++      75,    49,    -1,    48,     1,    49,    -1,    71,    77,    -1,
++      78,    -1,    38,    -1,    42,    -1,    78,    48,    79,    49,
++      -1,    78,    48,     1,    49,    -1,    78,    34,    -1,    48,
++      77,    49,    -1,    48,     1,    49,    -1,    80,    37,    -1,
++      80,    -1,    81,    47,    37,    -1,    -1,    81,    -1,    82,
++      -1,    81,    47,    82,    -1,    66,    83,    -1,    71,    83,
++      -1,    84,    -1,    -1,    38,    -1,    42,    -1,    84,    48,
++      79,    49,    -1,    84,    48,     1,    49,    -1,    84,    34,
++      -1,    48,    83,    49,    -1,    48,     1,    49,    -1,    65,
++      75,    33,    -1,    -1,    87,    -1,    51,    35,    -1,    52,
++      89,    46,    -1,    52,     1,    46,    -1,    -1,    90,    -1,
++      91,    -1,    90,    91,    -1,    65,    92,    45,    -1,     1,
++      45,    -1,    -1,    93,    -1,    94,    -1,    93,    47,    94,
++      -1,    77,    96,    -1,    38,    95,    -1,    95,    -1,    53,
++      35,    -1,    -1,    96,    31,    -1,    52,    98,    46,    -1,
++      52,    98,    47,    46,    -1,    99,    -1,    98,    47,    99,
++      -1,    38,    -1,    38,    51,    35,    -1,    30,    45,    -1,
++      -1,    30,    -1,    29,    48,    38,    49,    45,    -1
+ };
+ /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
+ static const yytype_uint16 yyrline[] =
+ {
+-       0,   123,   123,   124,   128,   128,   134,   134,   136,   136,
+-     138,   139,   140,   141,   142,   143,   147,   161,   162,   166,
+-     174,   187,   193,   194,   198,   199,   203,   209,   213,   214,
+-     215,   216,   217,   221,   222,   223,   224,   228,   230,   232,
+-     236,   238,   240,   245,   248,   249,   253,   254,   255,   256,
+-     257,   258,   259,   260,   261,   262,   263,   267,   272,   273,
+-     277,   278,   282,   282,   282,   283,   291,   292,   296,   305,
+-     307,   309,   311,   313,   320,   321,   325,   326,   327,   329,
+-     331,   333,   335,   340,   341,   342,   346,   347,   351,   352,
+-     357,   362,   364,   368,   369,   377,   381,   383,   385,   387,
+-     389,   394,   403,   404,   409,   414,   415,   419,   420,   424,
+-     425,   429,   431,   436,   437,   441,   442,   446,   447,   448,
+-     452,   456,   457,   461,   462,   466,   467,   470,   475,   483,
+-     487,   488,   492
++       0,   124,   124,   125,   129,   129,   135,   135,   137,   137,
++     139,   140,   141,   142,   143,   144,   148,   162,   163,   167,
++     175,   188,   194,   195,   199,   200,   204,   210,   214,   215,
++     216,   217,   218,   222,   223,   224,   225,   229,   231,   233,
++     237,   239,   241,   246,   249,   250,   254,   255,   256,   257,
++     258,   259,   260,   261,   262,   263,   264,   268,   273,   274,
++     278,   279,   283,   283,   283,   284,   292,   293,   297,   306,
++     308,   310,   312,   314,   321,   322,   326,   327,   328,   330,
++     332,   334,   336,   341,   342,   343,   347,   348,   352,   353,
++     358,   363,   365,   369,   370,   378,   382,   384,   386,   388,
++     390,   395,   404,   405,   410,   415,   416,   420,   421,   425,
++     426,   430,   432,   437,   438,   442,   443,   447,   448,   449,
++     453,   457,   458,   462,   463,   467,   468,   471,   476,   484,
++     488,   489,   493
+ };
+ #endif
+@@ -565,9 +574,9 @@ static const char *const yytname[] =
+   "SHORT_KEYW", "SIGNED_KEYW", "STATIC_KEYW", "STRUCT_KEYW",
+   "TYPEDEF_KEYW", "UNION_KEYW", "UNSIGNED_KEYW", "VOID_KEYW",
+   "VOLATILE_KEYW", "TYPEOF_KEYW", "EXPORT_SYMBOL_KEYW", "ASM_PHRASE",
+-  "ATTRIBUTE_PHRASE", "BRACE_PHRASE", "BRACKET_PHRASE",
++  "ATTRIBUTE_PHRASE", "TYPEOF_PHRASE", "BRACE_PHRASE", "BRACKET_PHRASE",
+   "EXPRESSION_PHRASE", "CHAR", "DOTS", "IDENT", "INT", "REAL", "STRING",
+-  "TYPE", "OTHER", "FILENAME", "';'", "'}'", "','", "'('", "'*'", "')'",
++  "TYPE", "OTHER", "FILENAME", "';'", "'}'", "','", "'('", "')'", "'*'",
+   "'='", "'{'", "':'", "$accept", "declaration_seq", "declaration", "$@1",
+   "declaration1", "$@2", "$@3", "simple_declaration",
+   "init_declarator_list_opt", "init_declarator_list", "init_declarator",
+@@ -584,7 +593,7 @@ static const char *const yytname[] =
+   "member_declarator_list_opt", "member_declarator_list",
+   "member_declarator", "member_bitfield_declarator", "attribute_opt",
+   "enum_body", "enumerator_list", "enumerator", "asm_definition",
+-  "asm_phrase_opt", "export_definition", 0
++  "asm_phrase_opt", "export_definition", YY_NULL
+ };
+ #endif
+@@ -597,28 +606,28 @@ static const yytype_uint16 yytoknum[] =
+      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
+      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
+      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
+-     295,   296,   297,   298,    59,   125,    44,    40,    42,    41,
+-      61,   123,    58
++     295,   296,   297,   298,   299,    59,   125,    44,    40,    41,
++      42,    61,   123,    58
+ };
+ # endif
+ /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
+ static const yytype_uint8 yyr1[] =
+ {
+-       0,    53,    54,    54,    56,    55,    58,    57,    59,    57,
+-      57,    57,    57,    57,    57,    57,    60,    61,    61,    62,
+-      62,    63,    64,    64,    65,    65,    66,    66,    67,    67,
+-      67,    67,    67,    68,    68,    68,    68,    68,    68,    68,
+-      68,    68,    68,    68,    68,    68,    69,    69,    69,    69,
+-      69,    69,    69,    69,    69,    69,    69,    70,    71,    71,
+-      72,    72,    73,    73,    73,    73,    74,    74,    75,    75,
+-      75,    75,    75,    75,    76,    76,    77,    77,    77,    77,
+-      77,    77,    77,    78,    78,    78,    79,    79,    80,    80,
+-      81,    82,    82,    83,    83,    83,    83,    83,    83,    83,
+-      83,    84,    85,    85,    86,    87,    87,    88,    88,    89,
+-      89,    90,    90,    91,    91,    92,    92,    93,    93,    93,
+-      94,    95,    95,    96,    96,    97,    97,    98,    98,    99,
+-     100,   100,   101
++       0,    54,    55,    55,    57,    56,    59,    58,    60,    58,
++      58,    58,    58,    58,    58,    58,    61,    62,    62,    63,
++      63,    64,    65,    65,    66,    66,    67,    67,    68,    68,
++      68,    68,    68,    69,    69,    69,    69,    69,    69,    69,
++      69,    69,    69,    69,    69,    69,    70,    70,    70,    70,
++      70,    70,    70,    70,    70,    70,    70,    71,    72,    72,
++      73,    73,    74,    74,    74,    74,    75,    75,    76,    76,
++      76,    76,    76,    76,    77,    77,    78,    78,    78,    78,
++      78,    78,    78,    79,    79,    79,    80,    80,    81,    81,
++      82,    83,    83,    84,    84,    84,    84,    84,    84,    84,
++      84,    85,    86,    86,    87,    88,    88,    89,    89,    90,
++      90,    91,    91,    92,    92,    93,    93,    94,    94,    94,
++      95,    96,    96,    97,    97,    98,    98,    99,    99,   100,
++     101,   101,   102
+ };
+ /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
+@@ -627,7 +636,7 @@ static const yytype_uint8 yyr2[] =
+        0,     2,     1,     2,     0,     2,     0,     4,     0,     3,
+        1,     1,     1,     1,     2,     2,     3,     0,     1,     1,
+        3,     4,     0,     1,     1,     2,     1,     1,     1,     1,
+-       1,     1,     1,     1,     1,     5,     4,     2,     2,     2,
++       1,     1,     1,     1,     1,     4,     1,     2,     2,     2,
+        3,     3,     3,     2,     2,     2,     1,     1,     1,     1,
+        1,     1,     1,     1,     1,     1,     1,     2,     0,     1,
+        1,     2,     1,     1,     1,     1,     2,     1,     1,     4,
+@@ -648,68 +657,68 @@ static const yytype_uint8 yydefact[] =
+        4,     4,     2,     0,     1,     3,     0,    28,    55,    46,
+       62,    53,     0,    31,     0,    52,    32,    48,    49,    29,
+       65,    47,    50,    30,     0,     8,     0,    51,    54,    63,
+-       0,     0,     0,    64,    56,     5,    10,    17,    23,    24,
+-      26,    27,    33,    34,    11,    12,    13,    14,    15,    39,
+-       0,    43,     6,    37,     0,    44,    22,    38,    45,     0,
+-       0,   129,    68,     0,    58,     0,    18,    19,     0,   130,
+-      67,    25,    42,   127,     0,   125,    22,    40,     0,   113,
+-       0,     0,   109,     9,    17,    41,     0,     0,     0,     0,
+-      57,    59,    60,    16,     0,    66,   131,   101,   121,    71,
+-       0,     0,   123,     0,     7,   112,   106,    76,    77,     0,
+-       0,     0,   121,    75,     0,   114,   115,   119,   105,     0,
+-     110,   130,     0,    36,     0,    73,    72,    61,    20,   102,
+-       0,    93,     0,    84,    87,    88,   128,   124,   126,   118,
+-       0,    76,     0,   120,    74,   117,    80,     0,   111,     0,
+-      35,   132,   122,     0,    21,   103,    70,    94,    56,     0,
+-      93,    90,    92,    69,    83,     0,    82,    81,     0,     0,
+-     116,   104,     0,    95,     0,    91,    98,     0,    85,    89,
+-      79,    78,   100,    99,     0,     0,    97,    96
++       0,     0,     0,    64,    36,    56,     5,    10,    17,    23,
++      24,    26,    27,    33,    34,    11,    12,    13,    14,    15,
++      39,     0,    43,     6,    37,     0,    44,    22,    38,    45,
++       0,     0,   129,    68,     0,    58,     0,    18,    19,     0,
++     130,    67,    25,    42,   127,     0,   125,    22,    40,     0,
++     113,     0,     0,   109,     9,    17,    41,    93,     0,     0,
++       0,     0,    57,    59,    60,    16,     0,    66,   131,   101,
++     121,    71,     0,     0,   123,     0,     7,   112,   106,    76,
++      77,     0,     0,     0,   121,    75,     0,   114,   115,   119,
++     105,     0,   110,   130,    94,    56,     0,    93,    90,    92,
++      35,     0,    73,    72,    61,    20,   102,     0,     0,    84,
++      87,    88,   128,   124,   126,   118,     0,    76,     0,   120,
++      74,   117,    80,     0,   111,     0,     0,    95,     0,    91,
++      98,     0,   132,   122,     0,    21,   103,    70,    69,    83,
++       0,    82,    81,     0,     0,   116,   100,    99,     0,     0,
++     104,    85,    89,    79,    78,    97,    96
+ };
+ /* YYDEFGOTO[NTERM-NUM].  */
+ static const yytype_int16 yydefgoto[] =
+ {
+-      -1,     1,     2,     3,    35,    76,    56,    36,    65,    66,
+-      67,    79,    38,    39,    40,    41,    42,    68,    90,    91,
+-      43,   121,    70,   112,   113,   132,   133,   134,   135,   161,
+-     162,    44,   154,   155,    55,    80,    81,    82,   114,   115,
+-     116,   117,   129,    51,    74,    75,    45,    98,    46
++      -1,     1,     2,     3,    36,    77,    57,    37,    66,    67,
++      68,    80,    39,    40,    41,    42,    43,    69,    92,    93,
++      44,   123,    71,   114,   115,   138,   139,   140,   141,   128,
++     129,    45,   165,   166,    56,    81,    82,    83,   116,   117,
++     118,   119,   136,    52,    75,    76,    46,   100,    47
+ };
+ /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
+    STATE-NUM.  */
+-#define YYPACT_NINF -135
++#define YYPACT_NINF -140
+ static const yytype_int16 yypact[] =
+ {
+-    -135,    20,  -135,   321,  -135,  -135,    30,  -135,  -135,  -135,
+-    -135,  -135,   -28,  -135,     2,  -135,  -135,  -135,  -135,  -135,
+-    -135,  -135,  -135,  -135,    -6,  -135,     9,  -135,  -135,  -135,
+-      -5,    15,   -17,  -135,  -135,  -135,  -135,    18,   491,  -135,
+-    -135,  -135,  -135,  -135,  -135,  -135,  -135,  -135,  -135,   -22,
+-      31,  -135,  -135,    19,   106,  -135,   491,    19,  -135,   491,
+-      50,  -135,  -135,    11,    -3,    51,    57,  -135,    18,   -14,
+-      14,  -135,  -135,    48,    46,  -135,   491,  -135,    33,    32,
+-      59,   154,  -135,  -135,    18,  -135,   365,    56,    60,    61,
+-    -135,    -3,  -135,  -135,    18,  -135,  -135,  -135,  -135,  -135,
+-     202,    74,  -135,   -23,  -135,  -135,  -135,    77,  -135,    16,
+-     101,    49,  -135,    34,    92,    93,  -135,  -135,  -135,    94,
+-    -135,   110,    95,  -135,    97,  -135,  -135,  -135,  -135,   -20,
+-      96,   410,    99,   113,   100,  -135,  -135,  -135,  -135,  -135,
+-     103,  -135,   107,  -135,  -135,   111,  -135,   239,  -135,    32,
+-    -135,  -135,  -135,   123,  -135,  -135,  -135,  -135,  -135,     3,
+-      52,  -135,    38,  -135,  -135,   454,  -135,  -135,   117,   128,
+-    -135,  -135,   134,  -135,   135,  -135,  -135,   276,  -135,  -135,
+-    -135,  -135,  -135,  -135,   137,   138,  -135,  -135
++    -140,    29,  -140,   207,  -140,  -140,    40,  -140,  -140,  -140,
++    -140,  -140,   -27,  -140,    44,  -140,  -140,  -140,  -140,  -140,
++    -140,  -140,  -140,  -140,   -22,  -140,   -18,  -140,  -140,  -140,
++      -9,    22,    28,  -140,  -140,  -140,  -140,  -140,    42,   472,
++    -140,  -140,  -140,  -140,  -140,  -140,  -140,  -140,  -140,  -140,
++      46,    43,  -140,  -140,    47,   107,  -140,   472,    47,  -140,
++     472,    62,  -140,  -140,    16,    -3,    57,    56,  -140,    42,
++      35,   -11,  -140,  -140,    53,    48,  -140,   472,  -140,    51,
++      21,    59,   157,  -140,  -140,    42,  -140,   388,    58,    60,
++      70,    81,  -140,    -3,  -140,  -140,    42,  -140,  -140,  -140,
++    -140,  -140,   253,    71,  -140,   -20,  -140,  -140,  -140,    83,
++    -140,     5,   102,    34,  -140,    12,    95,    94,  -140,  -140,
++    -140,    97,  -140,   113,  -140,  -140,     2,    41,  -140,    27,
++    -140,    99,  -140,  -140,  -140,  -140,   -24,    98,   101,   109,
++     104,  -140,  -140,  -140,  -140,  -140,   105,  -140,   110,  -140,
++    -140,   117,  -140,   298,  -140,    21,   112,  -140,   120,  -140,
++    -140,   343,  -140,  -140,   121,  -140,  -140,  -140,  -140,  -140,
++     434,  -140,  -140,   131,   137,  -140,  -140,  -140,   138,   141,
++    -140,  -140,  -140,  -140,  -140,  -140,  -140
+ };
+ /* YYPGOTO[NTERM-NUM].  */
+ static const yytype_int16 yypgoto[] =
+ {
+-    -135,  -135,   187,  -135,  -135,  -135,  -135,   -50,  -135,  -135,
+-      98,     0,   -59,   -37,  -135,  -135,  -135,   -77,  -135,  -135,
+-     -54,   -30,  -135,   -90,  -135,  -134,  -135,  -135,    24,   -58,
+-    -135,  -135,  -135,  -135,   -18,  -135,  -135,   109,  -135,  -135,
+-      44,    87,    84,   148,  -135,   102,  -135,  -135,  -135
++    -140,  -140,   190,  -140,  -140,  -140,  -140,   -45,  -140,  -140,
++      96,     1,   -60,   -31,  -140,  -140,  -140,   -78,  -140,  -140,
++     -55,    -7,  -140,   -92,  -140,  -139,  -140,  -140,   -59,   -39,
++    -140,  -140,  -140,  -140,   -13,  -140,  -140,   111,  -140,  -140,
++      39,    87,    84,   147,  -140,   106,  -140,  -140,  -140
+ };
+ /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
+@@ -718,149 +727,145 @@ static const yytype_int16 yypgoto[] =
+ #define YYTABLE_NINF -109
+ static const yytype_int16 yytable[] =
+ {
+-      86,    71,   111,    37,   172,    10,    83,    69,    58,    49,
+-      92,   152,    88,   169,    73,    20,    96,   140,    97,   142,
+-       4,   144,   137,    50,    29,    52,   104,    61,    33,    50,
+-     153,    53,   111,    89,   111,    77,   -93,   127,    95,    85,
+-     157,   131,    59,   185,   173,    54,    57,    99,    62,    71,
+-     159,    64,   -93,   141,   160,    62,    84,   108,    63,    64,
+-      54,   100,    60,   109,    64,    63,    64,   146,    73,   107,
+-      54,   176,   111,   108,    47,    48,    84,   105,   106,   109,
+-      64,   147,   160,   160,   110,   177,   141,    87,   131,   157,
+-     108,   102,   103,   173,    71,    93,   109,    64,   101,   159,
+-      64,   174,   175,    94,   118,   124,   131,    78,   136,   125,
+-     126,     7,     8,     9,    10,    11,    12,    13,   131,    15,
+-      16,    17,    18,    19,    20,    21,    22,    23,    24,   110,
+-      26,    27,    28,    29,    30,   143,   148,    33,   105,   149,
+-      96,   151,   152,   -22,   150,   156,   165,    34,   163,   164,
+-     -22,  -107,   166,   -22,   -22,   119,   167,   171,   -22,     7,
+-       8,     9,    10,    11,    12,    13,   180,    15,    16,    17,
+-      18,    19,    20,    21,    22,    23,    24,   181,    26,    27,
+-      28,    29,    30,   182,   183,    33,   186,   187,     5,   179,
+-     120,   -22,   128,   170,   139,    34,   145,    72,   -22,  -108,
+-       0,   -22,   -22,   130,     0,   138,   -22,     7,     8,     9,
+-      10,    11,    12,    13,     0,    15,    16,    17,    18,    19,
+-      20,    21,    22,    23,    24,     0,    26,    27,    28,    29,
+-      30,     0,     0,    33,     0,     0,     0,     0,   -86,     0,
+-     168,     0,     0,    34,     7,     8,     9,    10,    11,    12,
+-      13,   -86,    15,    16,    17,    18,    19,    20,    21,    22,
+-      23,    24,     0,    26,    27,    28,    29,    30,     0,     0,
+-      33,     0,     0,     0,     0,   -86,     0,   184,     0,     0,
+-      34,     7,     8,     9,    10,    11,    12,    13,   -86,    15,
+-      16,    17,    18,    19,    20,    21,    22,    23,    24,     0,
+-      26,    27,    28,    29,    30,     0,     0,    33,     0,     0,
+-       0,     0,   -86,     0,     0,     0,     0,    34,     0,     0,
+-       0,     0,     6,     0,     0,   -86,     7,     8,     9,    10,
+-      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
+-      21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
+-      31,    32,    33,     0,     0,     0,     0,     0,   -22,     0,
+-       0,     0,    34,     0,     0,   -22,     0,     0,   -22,   -22,
+-       7,     8,     9,    10,    11,    12,    13,     0,    15,    16,
+-      17,    18,    19,    20,    21,    22,    23,    24,     0,    26,
+-      27,    28,    29,    30,     0,     0,    33,     0,     0,     0,
+-       0,     0,     0,     0,     0,     0,    34,     0,     0,     0,
+-       0,     0,     0,   122,   123,     7,     8,     9,    10,    11,
+-      12,    13,     0,    15,    16,    17,    18,    19,    20,    21,
+-      22,    23,    24,     0,    26,    27,    28,    29,    30,     0,
+-       0,    33,     0,     0,     0,     0,     0,   157,     0,     0,
+-       0,   158,     0,     0,     0,     0,     0,   159,    64,     7,
++      87,    88,   113,   156,    38,    10,   146,   163,    72,   127,
++      94,    50,    84,    59,   174,    20,    54,    90,    74,   148,
++      58,   150,   179,   101,    29,    51,   143,   164,    33,     4,
++      55,    70,   106,   113,    55,   113,   -93,   102,   134,    60,
++     124,    78,    87,   147,   157,    86,   152,   110,   127,   127,
++     126,   -93,    65,   111,    63,    65,    72,    91,    85,   109,
++     153,   160,    97,   110,    64,    98,    65,    53,    99,   111,
++      61,    65,   147,    62,   112,   161,   110,   113,    85,   124,
++      63,    74,   111,   157,    65,    48,    49,   158,   159,   126,
++      64,    65,    65,    87,   104,   105,   107,   108,    51,    55,
++      89,    87,    95,    96,   103,   120,   142,   130,    79,   131,
++      87,   182,     7,     8,     9,    10,    11,    12,    13,   132,
++      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
++     133,    26,    27,    28,    29,    30,   112,   149,    33,    34,
++     154,   155,   107,    98,   162,   -22,   169,   167,   163,    35,
++     168,   170,   -22,  -107,   171,   -22,   180,   -22,   121,   172,
++     -22,   176,     7,     8,     9,    10,    11,    12,    13,   177,
++      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
++     183,    26,    27,    28,    29,    30,   184,   185,    33,    34,
++     186,     5,   135,   122,   175,   -22,   145,    73,   151,    35,
++       0,     0,   -22,  -108,     0,   -22,     0,   -22,     6,     0,
++     -22,   144,     7,     8,     9,    10,    11,    12,    13,    14,
++      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
++      25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
++       0,     0,     0,     0,     0,   -22,     0,     0,     0,    35,
++       0,     0,   -22,     0,   137,   -22,     0,   -22,     7,     8,
++       9,    10,    11,    12,    13,     0,    15,    16,    17,    18,
++      19,    20,    21,    22,    23,    24,     0,    26,    27,    28,
++      29,    30,     0,     0,    33,    34,     0,     0,     0,     0,
++     -86,     0,     0,     0,     0,    35,     0,     0,     0,   173,
++       0,     0,   -86,     7,     8,     9,    10,    11,    12,    13,
++       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
++      24,     0,    26,    27,    28,    29,    30,     0,     0,    33,
++      34,     0,     0,     0,     0,   -86,     0,     0,     0,     0,
++      35,     0,     0,     0,   178,     0,     0,   -86,     7,     8,
++       9,    10,    11,    12,    13,     0,    15,    16,    17,    18,
++      19,    20,    21,    22,    23,    24,     0,    26,    27,    28,
++      29,    30,     0,     0,    33,    34,     0,     0,     0,     0,
++     -86,     0,     0,     0,     0,    35,     0,     0,     0,     0,
++       0,     0,   -86,     7,     8,     9,    10,    11,    12,    13,
++       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
++      24,     0,    26,    27,    28,    29,    30,     0,     0,    33,
++      34,     0,     0,     0,     0,     0,   124,     0,     0,     0,
++     125,     0,     0,     0,     0,     0,   126,     0,    65,     7,
+        8,     9,    10,    11,    12,    13,     0,    15,    16,    17,
+       18,    19,    20,    21,    22,    23,    24,     0,    26,    27,
+-      28,    29,    30,     0,     0,    33,     0,     0,     0,     0,
+-     178,     0,     0,     0,     0,    34,     7,     8,     9,    10,
+-      11,    12,    13,     0,    15,    16,    17,    18,    19,    20,
+-      21,    22,    23,    24,     0,    26,    27,    28,    29,    30,
+-       0,     0,    33,     0,     0,     0,     0,     0,     0,     0,
+-       0,     0,    34
++      28,    29,    30,     0,     0,    33,    34,     0,     0,     0,
++       0,   181,     0,     0,     0,     0,    35,     7,     8,     9,
++      10,    11,    12,    13,     0,    15,    16,    17,    18,    19,
++      20,    21,    22,    23,    24,     0,    26,    27,    28,    29,
++      30,     0,     0,    33,    34,     0,     0,     0,     0,     0,
++       0,     0,     0,     0,    35
+ };
+ #define yypact_value_is_default(yystate) \
+-  ((yystate) == (-135))
++  ((yystate) == (-140))
+ #define yytable_value_is_error(yytable_value) \
+   YYID (0)
+ static const yytype_int16 yycheck[] =
+ {
+-      59,    38,    79,     3,     1,     8,    56,    37,    26,    37,
+-      64,    31,     1,   147,    37,    18,    30,     1,    32,   109,
+-       0,   111,    45,    51,    27,    23,    76,    44,    31,    51,
+-      50,    37,   109,    63,   111,    53,    33,    91,    68,    57,
+-      37,   100,    47,   177,    41,    51,    37,    33,    37,    86,
+-      47,    48,    49,    37,   131,    37,    56,    41,    47,    48,
+-      51,    47,    47,    47,    48,    47,    48,    33,    37,    37,
+-      51,    33,   149,    41,    44,    45,    76,    44,    45,    47,
+-      48,    47,   159,   160,    52,    47,    37,    37,   147,    37,
+-      41,    45,    46,    41,   131,    44,    47,    48,    50,    47,
+-      48,   159,   160,    46,    45,    49,   165,     1,    34,    49,
+-      49,     5,     6,     7,     8,     9,    10,    11,   177,    13,
+-      14,    15,    16,    17,    18,    19,    20,    21,    22,    52,
+-      24,    25,    26,    27,    28,    34,    44,    31,    44,    46,
+-      30,    44,    31,    37,    49,    49,    46,    41,    49,    36,
+-      44,    45,    49,    47,    48,     1,    49,    34,    52,     5,
+-       6,     7,     8,     9,    10,    11,    49,    13,    14,    15,
+-      16,    17,    18,    19,    20,    21,    22,    49,    24,    25,
+-      26,    27,    28,    49,    49,    31,    49,    49,     1,   165,
+-      81,    37,    94,   149,   107,    41,   112,    49,    44,    45,
+-      -1,    47,    48,     1,    -1,   103,    52,     5,     6,     7,
+-       8,     9,    10,    11,    -1,    13,    14,    15,    16,    17,
+-      18,    19,    20,    21,    22,    -1,    24,    25,    26,    27,
+-      28,    -1,    -1,    31,    -1,    -1,    -1,    -1,    36,    -1,
+-       1,    -1,    -1,    41,     5,     6,     7,     8,     9,    10,
+-      11,    49,    13,    14,    15,    16,    17,    18,    19,    20,
+-      21,    22,    -1,    24,    25,    26,    27,    28,    -1,    -1,
+-      31,    -1,    -1,    -1,    -1,    36,    -1,     1,    -1,    -1,
+-      41,     5,     6,     7,     8,     9,    10,    11,    49,    13,
+-      14,    15,    16,    17,    18,    19,    20,    21,    22,    -1,
+-      24,    25,    26,    27,    28,    -1,    -1,    31,    -1,    -1,
+-      -1,    -1,    36,    -1,    -1,    -1,    -1,    41,    -1,    -1,
+-      -1,    -1,     1,    -1,    -1,    49,     5,     6,     7,     8,
+-       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
+-      19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
+-      29,    30,    31,    -1,    -1,    -1,    -1,    -1,    37,    -1,
+-      -1,    -1,    41,    -1,    -1,    44,    -1,    -1,    47,    48,
+-       5,     6,     7,     8,     9,    10,    11,    -1,    13,    14,
+-      15,    16,    17,    18,    19,    20,    21,    22,    -1,    24,
+-      25,    26,    27,    28,    -1,    -1,    31,    -1,    -1,    -1,
+-      -1,    -1,    -1,    -1,    -1,    -1,    41,    -1,    -1,    -1,
+-      -1,    -1,    -1,    48,    49,     5,     6,     7,     8,     9,
+-      10,    11,    -1,    13,    14,    15,    16,    17,    18,    19,
+-      20,    21,    22,    -1,    24,    25,    26,    27,    28,    -1,
+-      -1,    31,    -1,    -1,    -1,    -1,    -1,    37,    -1,    -1,
+-      -1,    41,    -1,    -1,    -1,    -1,    -1,    47,    48,     5,
++      60,    60,    80,     1,     3,     8,     1,    31,    39,    87,
++      65,    38,    57,    26,   153,    18,    38,     1,    38,   111,
++      38,   113,   161,    34,    27,    52,    46,    51,    31,     0,
++      52,    38,    77,   111,    52,   113,    34,    48,    93,    48,
++      38,    54,   102,    38,    42,    58,    34,    42,   126,   127,
++      48,    49,    50,    48,    38,    50,    87,    64,    57,    38,
++      48,    34,    69,    42,    48,    30,    50,    23,    33,    48,
++      48,    50,    38,    45,    53,    48,    42,   155,    77,    38,
++      38,    38,    48,    42,    50,    45,    46,   126,   127,    48,
++      48,    50,    50,   153,    46,    47,    45,    46,    52,    52,
++      38,   161,    45,    47,    51,    46,    35,    49,     1,    49,
++     170,   170,     5,     6,     7,     8,     9,    10,    11,    49,
++      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
++      49,    24,    25,    26,    27,    28,    53,    35,    31,    32,
++      45,    47,    45,    30,    45,    38,    37,    49,    31,    42,
++      49,    47,    45,    46,    49,    48,    35,    50,     1,    49,
++      53,    49,     5,     6,     7,     8,     9,    10,    11,    49,
++      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
++      49,    24,    25,    26,    27,    28,    49,    49,    31,    32,
++      49,     1,    96,    82,   155,    38,   109,    50,   114,    42,
++      -1,    -1,    45,    46,    -1,    48,    -1,    50,     1,    -1,
++      53,   105,     5,     6,     7,     8,     9,    10,    11,    12,
++      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
++      23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
++      -1,    -1,    -1,    -1,    -1,    38,    -1,    -1,    -1,    42,
++      -1,    -1,    45,    -1,     1,    48,    -1,    50,     5,     6,
++       7,     8,     9,    10,    11,    -1,    13,    14,    15,    16,
++      17,    18,    19,    20,    21,    22,    -1,    24,    25,    26,
++      27,    28,    -1,    -1,    31,    32,    -1,    -1,    -1,    -1,
++      37,    -1,    -1,    -1,    -1,    42,    -1,    -1,    -1,     1,
++      -1,    -1,    49,     5,     6,     7,     8,     9,    10,    11,
++      -1,    13,    14,    15,    16,    17,    18,    19,    20,    21,
++      22,    -1,    24,    25,    26,    27,    28,    -1,    -1,    31,
++      32,    -1,    -1,    -1,    -1,    37,    -1,    -1,    -1,    -1,
++      42,    -1,    -1,    -1,     1,    -1,    -1,    49,     5,     6,
++       7,     8,     9,    10,    11,    -1,    13,    14,    15,    16,
++      17,    18,    19,    20,    21,    22,    -1,    24,    25,    26,
++      27,    28,    -1,    -1,    31,    32,    -1,    -1,    -1,    -1,
++      37,    -1,    -1,    -1,    -1,    42,    -1,    -1,    -1,    -1,
++      -1,    -1,    49,     5,     6,     7,     8,     9,    10,    11,
++      -1,    13,    14,    15,    16,    17,    18,    19,    20,    21,
++      22,    -1,    24,    25,    26,    27,    28,    -1,    -1,    31,
++      32,    -1,    -1,    -1,    -1,    -1,    38,    -1,    -1,    -1,
++      42,    -1,    -1,    -1,    -1,    -1,    48,    -1,    50,     5,
+        6,     7,     8,     9,    10,    11,    -1,    13,    14,    15,
+       16,    17,    18,    19,    20,    21,    22,    -1,    24,    25,
+-      26,    27,    28,    -1,    -1,    31,    -1,    -1,    -1,    -1,
+-      36,    -1,    -1,    -1,    -1,    41,     5,     6,     7,     8,
+-       9,    10,    11,    -1,    13,    14,    15,    16,    17,    18,
+-      19,    20,    21,    22,    -1,    24,    25,    26,    27,    28,
+-      -1,    -1,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+-      -1,    -1,    41
++      26,    27,    28,    -1,    -1,    31,    32,    -1,    -1,    -1,
++      -1,    37,    -1,    -1,    -1,    -1,    42,     5,     6,     7,
++       8,     9,    10,    11,    -1,    13,    14,    15,    16,    17,
++      18,    19,    20,    21,    22,    -1,    24,    25,    26,    27,
++      28,    -1,    -1,    31,    32,    -1,    -1,    -1,    -1,    -1,
++      -1,    -1,    -1,    -1,    42
+ };
+ /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
+    symbol of state STATE-NUM.  */
+ static const yytype_uint8 yystos[] =
+ {
+-       0,    54,    55,    56,     0,    55,     1,     5,     6,     7,
++       0,    55,    56,    57,     0,    56,     1,     5,     6,     7,
+        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
+       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
+-      28,    29,    30,    31,    41,    57,    60,    64,    65,    66,
+-      67,    68,    69,    73,    84,    99,   101,    44,    45,    37,
+-      51,    96,    23,    37,    51,    87,    59,    37,    87,    47,
+-      47,    44,    37,    47,    48,    61,    62,    63,    70,    74,
+-      75,    66,    96,    37,    97,    98,    58,    87,     1,    64,
+-      88,    89,    90,    60,    64,    87,    65,    37,     1,    74,
+-      71,    72,    73,    44,    46,    74,    30,    32,   100,    33,
+-      47,    50,    45,    46,    60,    44,    45,    37,    41,    47,
+-      52,    70,    76,    77,    91,    92,    93,    94,    45,     1,
+-      90,    74,    48,    49,    49,    49,    49,    73,    63,    95,
+-       1,    65,    78,    79,    80,    81,    34,    45,    98,    94,
+-       1,    37,    76,    34,    76,    95,    33,    47,    44,    46,
+-      49,    44,    31,    50,    85,    86,    49,    37,    41,    47,
+-      70,    82,    83,    49,    36,    46,    49,    49,     1,    78,
+-      93,    34,     1,    41,    82,    82,    33,    47,    36,    81,
+-      49,    49,    49,    49,     1,    78,    49,    49
++      28,    29,    30,    31,    32,    42,    58,    61,    65,    66,
++      67,    68,    69,    70,    74,    85,   100,   102,    45,    46,
++      38,    52,    97,    23,    38,    52,    88,    60,    38,    88,
++      48,    48,    45,    38,    48,    50,    62,    63,    64,    71,
++      75,    76,    67,    97,    38,    98,    99,    59,    88,     1,
++      65,    89,    90,    91,    61,    65,    88,    66,    82,    38,
++       1,    75,    72,    73,    74,    45,    47,    75,    30,    33,
++     101,    34,    48,    51,    46,    47,    61,    45,    46,    38,
++      42,    48,    53,    71,    77,    78,    92,    93,    94,    95,
++      46,     1,    91,    75,    38,    42,    48,    71,    83,    84,
++      49,    49,    49,    49,    74,    64,    96,     1,    79,    80,
++      81,    82,    35,    46,    99,    95,     1,    38,    77,    35,
++      77,    96,    34,    48,    45,    47,     1,    42,    83,    83,
++      34,    48,    45,    31,    51,    86,    87,    49,    49,    37,
++      47,    49,    49,     1,    79,    94,    49,    49,     1,    79,
++      35,    37,    82,    49,    49,    49,    49
+ };
+ #define yyerrok               (yyerrstatus = 0)
+@@ -890,17 +895,18 @@ static const yytype_uint8 yystos[] =
+ #define YYRECOVERING()  (!!yyerrstatus)
+-#define YYBACKUP(Token, Value)                                        \
+-do                                                            \
+-  if (yychar == YYEMPTY && yylen == 1)                                \
+-    {                                                         \
+-      yychar = (Token);                                               \
+-      yylval = (Value);                                               \
+-      YYPOPSTACK (1);                                         \
+-      goto yybackup;                                          \
+-    }                                                         \
+-  else                                                                \
+-    {                                                         \
++#define YYBACKUP(Token, Value)                                  \
++do                                                              \
++  if (yychar == YYEMPTY)                                        \
++    {                                                           \
++      yychar = (Token);                                         \
++      yylval = (Value);                                         \
++      YYPOPSTACK (yylen);                                       \
++      yystate = *yyssp;                                         \
++      goto yybackup;                                            \
++    }                                                           \
++  else                                                          \
++    {                                                           \
+       yyerror (YY_("syntax error: cannot back up")); \
+       YYERROR;                                                        \
+     }                                                         \
+@@ -995,6 +1001,8 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep)
+     YYSTYPE const * const yyvaluep;
+ #endif
+ {
++  FILE *yyo = yyoutput;
++  YYUSE (yyo);
+   if (!yyvaluep)
+     return;
+ # ifdef YYPRINT
+@@ -1246,12 +1254,12 @@ static int
+ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
+                 yytype_int16 *yyssp, int yytoken)
+ {
+-  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
++  YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
+   YYSIZE_T yysize = yysize0;
+   YYSIZE_T yysize1;
+   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
+   /* Internationalized format string. */
+-  const char *yyformat = 0;
++  const char *yyformat = YY_NULL;
+   /* Arguments of yyformat. */
+   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
+   /* Number of reported tokens (one for the "unexpected", one per
+@@ -1311,7 +1319,7 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
+                     break;
+                   }
+                 yyarg[yycount++] = yytname[yyx];
+-                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
++                yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
+                 if (! (yysize <= yysize1
+                        && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
+                   return 2;
+@@ -1463,7 +1471,7 @@ yyparse ()
+        `yyss': related to states.
+        `yyvs': related to semantic values.
+-       Refer to the stacks thru separate pointers, to allow yyoverflow
++       Refer to the stacks through separate pointers, to allow yyoverflow
+        to reallocate them elsewhere.  */
+     /* The state stack.  */
+@@ -2346,7 +2354,7 @@ yyabortlab:
+   yyresult = 1;
+   goto yyreturn;
+-#if !defined(yyoverflow) || YYERROR_VERBOSE
++#if !defined yyoverflow || YYERROR_VERBOSE
+ /*-------------------------------------------------.
+ | yyexhaustedlab -- memory exhaustion comes here.  |
+ `-------------------------------------------------*/
+diff --git a/scripts/genksyms/parse.tab.h_shipped b/scripts/genksyms/parse.tab.h_shipped
+index 93240a3..a4737de 100644
+--- a/scripts/genksyms/parse.tab.h_shipped
++++ b/scripts/genksyms/parse.tab.h_shipped
+@@ -1,8 +1,8 @@
+-/* A Bison parser, made by GNU Bison 2.5.  */
++/* A Bison parser, made by GNU Bison 2.5.1.  */
+ /* Bison interface for Yacc-like parsers in C
+    
+-      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
++      Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
+    
+    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
+@@ -66,18 +66,19 @@
+      EXPORT_SYMBOL_KEYW = 284,
+      ASM_PHRASE = 285,
+      ATTRIBUTE_PHRASE = 286,
+-     BRACE_PHRASE = 287,
+-     BRACKET_PHRASE = 288,
+-     EXPRESSION_PHRASE = 289,
+-     CHAR = 290,
+-     DOTS = 291,
+-     IDENT = 292,
+-     INT = 293,
+-     REAL = 294,
+-     STRING = 295,
+-     TYPE = 296,
+-     OTHER = 297,
+-     FILENAME = 298
++     TYPEOF_PHRASE = 287,
++     BRACE_PHRASE = 288,
++     BRACKET_PHRASE = 289,
++     EXPRESSION_PHRASE = 290,
++     CHAR = 291,
++     DOTS = 292,
++     IDENT = 293,
++     INT = 294,
++     REAL = 295,
++     STRING = 296,
++     TYPE = 297,
++     OTHER = 298,
++     FILENAME = 299
+    };
+ #endif
+diff --git a/scripts/genksyms/parse.y b/scripts/genksyms/parse.y
+index 23c3999..b9f4cf2 100644
+--- a/scripts/genksyms/parse.y
++++ b/scripts/genksyms/parse.y
+@@ -103,6 +103,7 @@ static void record_compound(struct string_list **keyw,
+ %token ASM_PHRASE
+ %token ATTRIBUTE_PHRASE
++%token TYPEOF_PHRASE
+ %token BRACE_PHRASE
+ %token BRACKET_PHRASE
+ %token EXPRESSION_PHRASE
+@@ -220,8 +221,8 @@ storage_class_specifier:
+ type_specifier:
+       simple_type_specifier
+       | cvar_qualifier
+-      | TYPEOF_KEYW '(' decl_specifier_seq '*' ')'
+-      | TYPEOF_KEYW '(' decl_specifier_seq ')'
++      | TYPEOF_KEYW '(' parameter_declaration ')'
++      | TYPEOF_PHRASE
+       /* References to s/u/e's defined elsewhere.  Rearrange things
+          so that it is easier to expand the definition fully later.  */
+-- 
+cgit v0.11.2
+
diff --git a/src/patches/linux/0001-Drivers-net-hyperv-Get-rid-of-the-rndis_filter_packe.patch b/src/patches/linux/0001-Drivers-net-hyperv-Get-rid-of-the-rndis_filter_packe.patch
new file mode 100644 (file)
index 0000000..2e00392
--- /dev/null
@@ -0,0 +1,129 @@
+From f3f885fa684ff18fa4d223dc22b782f5e5d32560 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sun, 16 Feb 2014 16:38:43 -0800
+Subject: [PATCH 01/25] Drivers: net: hyperv: Get rid of the
+ rndis_filter_packet structure
+
+This structure is redundant; get rid of it make the code little more efficient -
+get rid of the unnecessary indirection.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   |  6 ------
+ drivers/net/hyperv/netvsc_drv.c   |  2 +-
+ drivers/net/hyperv/rndis_filter.c | 41 +++------------------------------------
+ 3 files changed, 4 insertions(+), 45 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 7b594ce3f21d..7645ba38bde8 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -846,12 +846,6 @@ struct rndis_message {
+ };
+-struct rndis_filter_packet {
+-      void *completion_ctx;
+-      void (*completion)(void *context);
+-      struct rndis_message msg;
+-};
+-
+ /* Handy macros */
+ /* get the size of an RNDIS message. Pass in the message type, */
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 3c1c33ceffba..28020f83ba6f 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -156,7 +156,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       /* Allocate a netvsc packet based on # of frags. */
+       packet = kzalloc(sizeof(struct hv_netvsc_packet) +
+                        (num_pages * sizeof(struct hv_page_buffer)) +
+-                       sizeof(struct rndis_filter_packet) +
++                       sizeof(struct rndis_message) +
+                        NDIS_VLAN_PPI_SIZE, GFP_ATOMIC);
+       if (!packet) {
+               /* out of memory, drop packet */
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index b54fd257652b..6a9f6021f09c 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -58,9 +58,6 @@ struct rndis_request {
+       u8 request_ext[RNDIS_EXT_LEN];
+ };
+-static void rndis_filter_send_completion(void *ctx);
+-
+-
+ static struct rndis_device *get_rndis_device(void)
+ {
+       struct rndis_device *device;
+@@ -297,7 +294,7 @@ static void rndis_filter_receive_response(struct rndis_device *dev,
+                               "rndis response buffer overflow "
+                               "detected (size %u max %zu)\n",
+                               resp->msg_len,
+-                              sizeof(struct rndis_filter_packet));
++                              sizeof(struct rndis_message));
+                       if (resp->ndis_msg_type ==
+                           RNDIS_MSG_RESET_C) {
+@@ -917,17 +914,14 @@ int rndis_filter_close(struct hv_device *dev)
+ int rndis_filter_send(struct hv_device *dev,
+                            struct hv_netvsc_packet *pkt)
+ {
+-      int ret;
+-      struct rndis_filter_packet *filter_pkt;
+       struct rndis_message *rndis_msg;
+       struct rndis_packet *rndis_pkt;
+       u32 rndis_msg_size;
+       bool isvlan = pkt->vlan_tci & VLAN_TAG_PRESENT;
+       /* Add the rndis header */
+-      filter_pkt = (struct rndis_filter_packet *)pkt->extension;
++      rndis_msg = (struct rndis_message *)pkt->extension;
+-      rndis_msg = &filter_pkt->msg;
+       rndis_msg_size = RNDIS_MESSAGE_SIZE(struct rndis_packet);
+       if (isvlan)
+               rndis_msg_size += NDIS_VLAN_PPI_SIZE;
+@@ -980,34 +974,5 @@ int rndis_filter_send(struct hv_device *dev,
+               pkt->page_buf[1].len = rndis_msg_size - pkt->page_buf[0].len;
+       }
+-      /* Save the packet send completion and context */
+-      filter_pkt->completion = pkt->completion.send.send_completion;
+-      filter_pkt->completion_ctx =
+-                              pkt->completion.send.send_completion_ctx;
+-
+-      /* Use ours */
+-      pkt->completion.send.send_completion = rndis_filter_send_completion;
+-      pkt->completion.send.send_completion_ctx = filter_pkt;
+-
+-      ret = netvsc_send(dev, pkt);
+-      if (ret != 0) {
+-              /*
+-               * Reset the completion to originals to allow retries from
+-               * above
+-               */
+-              pkt->completion.send.send_completion =
+-                              filter_pkt->completion;
+-              pkt->completion.send.send_completion_ctx =
+-                              filter_pkt->completion_ctx;
+-      }
+-
+-      return ret;
+-}
+-
+-static void rndis_filter_send_completion(void *ctx)
+-{
+-      struct rndis_filter_packet *filter_pkt = ctx;
+-
+-      /* Pass it back to the original handler */
+-      filter_pkt->completion(filter_pkt->completion_ctx);
++      return netvsc_send(dev, pkt);
+ }
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0001-hyperv-Add-support-for-virtual-Receive-Side-Scaling-.patch b/src/patches/linux/0001-hyperv-Add-support-for-virtual-Receive-Side-Scaling-.patch
new file mode 100644 (file)
index 0000000..52c4da6
--- /dev/null
@@ -0,0 +1,917 @@
+From 5b54dac856cb5bd6f33f4159012773e4a33704f7 Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Mon, 21 Apr 2014 10:20:28 -0700
+Subject: [PATCH 01/11] hyperv: Add support for virtual Receive Side Scaling
+ (vRSS)
+
+This feature allows multiple channels to be used by each virtual NIC.
+It is available on Hyper-V host 2012 R2.
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   | 110 +++++++++++++++++++++-
+ drivers/net/hyperv/netvsc.c       | 136 +++++++++++++++++++++------
+ drivers/net/hyperv/netvsc_drv.c   | 103 ++++++++++++++++++++-
+ drivers/net/hyperv/rndis_filter.c | 189 +++++++++++++++++++++++++++++++++++++-
+ 4 files changed, 504 insertions(+), 34 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index d18f711d0b0c..57eb3f906d64 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -28,6 +28,96 @@
+ #include <linux/hyperv.h>
+ #include <linux/rndis.h>
++/* RSS related */
++#define OID_GEN_RECEIVE_SCALE_CAPABILITIES 0x00010203  /* query only */
++#define OID_GEN_RECEIVE_SCALE_PARAMETERS 0x00010204  /* query and set */
++
++#define NDIS_OBJECT_TYPE_RSS_CAPABILITIES 0x88
++#define NDIS_OBJECT_TYPE_RSS_PARAMETERS 0x89
++
++#define NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_2 2
++#define NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_2 2
++
++struct ndis_obj_header {
++      u8 type;
++      u8 rev;
++      u16 size;
++} __packed;
++
++/* ndis_recv_scale_cap/cap_flag */
++#define NDIS_RSS_CAPS_MESSAGE_SIGNALED_INTERRUPTS 0x01000000
++#define NDIS_RSS_CAPS_CLASSIFICATION_AT_ISR       0x02000000
++#define NDIS_RSS_CAPS_CLASSIFICATION_AT_DPC       0x04000000
++#define NDIS_RSS_CAPS_USING_MSI_X                 0x08000000
++#define NDIS_RSS_CAPS_RSS_AVAILABLE_ON_PORTS      0x10000000
++#define NDIS_RSS_CAPS_SUPPORTS_MSI_X              0x20000000
++#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV4          0x00000100
++#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6          0x00000200
++#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6_EX       0x00000400
++
++struct ndis_recv_scale_cap { /* NDIS_RECEIVE_SCALE_CAPABILITIES */
++      struct ndis_obj_header hdr;
++      u32 cap_flag;
++      u32 num_int_msg;
++      u32 num_recv_que;
++      u16 num_indirect_tabent;
++} __packed;
++
++
++/* ndis_recv_scale_param flags */
++#define NDIS_RSS_PARAM_FLAG_BASE_CPU_UNCHANGED     0x0001
++#define NDIS_RSS_PARAM_FLAG_HASH_INFO_UNCHANGED    0x0002
++#define NDIS_RSS_PARAM_FLAG_ITABLE_UNCHANGED       0x0004
++#define NDIS_RSS_PARAM_FLAG_HASH_KEY_UNCHANGED     0x0008
++#define NDIS_RSS_PARAM_FLAG_DISABLE_RSS            0x0010
++
++/* Hash info bits */
++#define NDIS_HASH_FUNC_TOEPLITZ 0x00000001
++#define NDIS_HASH_IPV4          0x00000100
++#define NDIS_HASH_TCP_IPV4      0x00000200
++#define NDIS_HASH_IPV6          0x00000400
++#define NDIS_HASH_IPV6_EX       0x00000800
++#define NDIS_HASH_TCP_IPV6      0x00001000
++#define NDIS_HASH_TCP_IPV6_EX   0x00002000
++
++#define NDIS_RSS_INDIRECTION_TABLE_MAX_SIZE_REVISION_2 (128 * 4)
++#define NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_2   40
++
++#define ITAB_NUM 128
++#define HASH_KEYLEN NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_2
++extern u8 netvsc_hash_key[];
++
++struct ndis_recv_scale_param { /* NDIS_RECEIVE_SCALE_PARAMETERS */
++      struct ndis_obj_header hdr;
++
++      /* Qualifies the rest of the information */
++      u16 flag;
++
++      /* The base CPU number to do receive processing. not used */
++      u16 base_cpu_number;
++
++      /* This describes the hash function and type being enabled */
++      u32 hashinfo;
++
++      /* The size of indirection table array */
++      u16 indirect_tabsize;
++
++      /* The offset of the indirection table from the beginning of this
++       * structure
++       */
++      u32 indirect_taboffset;
++
++      /* The size of the hash secret key */
++      u16 hashkey_size;
++
++      /* The offset of the secret key from the beginning of this structure */
++      u32 kashkey_offset;
++
++      u32 processor_masks_offset;
++      u32 num_processor_masks;
++      u32 processor_masks_entry_size;
++};
++
+ /* Fwd declaration */
+ struct hv_netvsc_packet;
+ struct ndis_tcp_ip_checksum_info;
+@@ -39,6 +129,8 @@ struct xferpage_packet {
+       /* # of netvsc packets this xfer packet contains */
+       u32 count;
++
++      struct vmbus_channel *channel;
+ };
+ /*
+@@ -54,6 +146,9 @@ struct hv_netvsc_packet {
+       bool is_data_pkt;
+       u16 vlan_tci;
++      u16 q_idx;
++      struct vmbus_channel *channel;
++
+       /*
+        * Valid only for receives when we break a xfer page packet
+        * into multiple netvsc packets
+@@ -120,6 +215,7 @@ void netvsc_linkstatus_callback(struct hv_device *device_obj,
+ int netvsc_recv_callback(struct hv_device *device_obj,
+                       struct hv_netvsc_packet *packet,
+                       struct ndis_tcp_ip_checksum_info *csum_info);
++void netvsc_channel_cb(void *context);
+ int rndis_filter_open(struct hv_device *dev);
+ int rndis_filter_close(struct hv_device *dev);
+ int rndis_filter_device_add(struct hv_device *dev,
+@@ -522,6 +618,8 @@ struct nvsp_message {
+ #define NETVSC_PACKET_SIZE                      2048
++#define VRSS_SEND_TAB_SIZE 16
++
+ /* Per netvsc channel-specific */
+ struct netvsc_device {
+       struct hv_device *dev;
+@@ -555,10 +653,20 @@ struct netvsc_device {
+       struct net_device *ndev;
++      struct vmbus_channel *chn_table[NR_CPUS];
++      u32 send_table[VRSS_SEND_TAB_SIZE];
++      u32 num_chn;
++      atomic_t queue_sends[NR_CPUS];
++
+       /* Holds rndis device info */
+       void *extension;
+-      /* The recive buffer for this device */
++
++      int ring_size;
++
++      /* The primary channel callback buffer */
+       unsigned char cb_buffer[NETVSC_PACKET_SIZE];
++      /* The sub channel callback buffer */
++      unsigned char *sub_cb_buf;
+ };
+ /* NdisInitialize message */
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index f7629ecefa84..e7e77f12bc38 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -422,6 +422,9 @@ int netvsc_device_remove(struct hv_device *device)
+               kfree(netvsc_packet);
+       }
++      if (net_device->sub_cb_buf)
++              vfree(net_device->sub_cb_buf);
++
+       kfree(net_device);
+       return 0;
+ }
+@@ -461,7 +464,9 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+           (nvsp_packet->hdr.msg_type ==
+            NVSP_MSG1_TYPE_SEND_RECV_BUF_COMPLETE) ||
+           (nvsp_packet->hdr.msg_type ==
+-           NVSP_MSG1_TYPE_SEND_SEND_BUF_COMPLETE)) {
++           NVSP_MSG1_TYPE_SEND_SEND_BUF_COMPLETE) ||
++          (nvsp_packet->hdr.msg_type ==
++           NVSP_MSG5_TYPE_SUBCHANNEL)) {
+               /* Copy the response back */
+               memcpy(&net_device->channel_init_pkt, nvsp_packet,
+                      sizeof(struct nvsp_message));
+@@ -469,28 +474,37 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+       } else if (nvsp_packet->hdr.msg_type ==
+                  NVSP_MSG1_TYPE_SEND_RNDIS_PKT_COMPLETE) {
+               int num_outstanding_sends;
++              u16 q_idx = 0;
++              struct vmbus_channel *channel = device->channel;
++              int queue_sends;
+               /* Get the send context */
+               nvsc_packet = (struct hv_netvsc_packet *)(unsigned long)
+                       packet->trans_id;
+               /* Notify the layer above us */
+-              if (nvsc_packet)
++              if (nvsc_packet) {
++                      q_idx = nvsc_packet->q_idx;
++                      channel = nvsc_packet->channel;
+                       nvsc_packet->completion.send.send_completion(
+                               nvsc_packet->completion.send.
+                               send_completion_ctx);
++              }
+               num_outstanding_sends =
+                       atomic_dec_return(&net_device->num_outstanding_sends);
++              queue_sends = atomic_dec_return(&net_device->
++                                              queue_sends[q_idx]);
+               if (net_device->destroy && num_outstanding_sends == 0)
+                       wake_up(&net_device->wait_drain);
+-              if (netif_queue_stopped(ndev) && !net_device->start_remove &&
+-                      (hv_ringbuf_avail_percent(&device->channel->outbound)
+-                      > RING_AVAIL_PERCENT_HIWATER ||
+-                      num_outstanding_sends < 1))
+-                              netif_wake_queue(ndev);
++              if (netif_tx_queue_stopped(netdev_get_tx_queue(ndev, q_idx)) &&
++                  !net_device->start_remove &&
++                  (hv_ringbuf_avail_percent(&channel->outbound) >
++                   RING_AVAIL_PERCENT_HIWATER || queue_sends < 1))
++                              netif_tx_wake_queue(netdev_get_tx_queue(
++                                                  ndev, q_idx));
+       } else {
+               netdev_err(ndev, "Unknown send completion packet type- "
+                          "%d received!!\n", nvsp_packet->hdr.msg_type);
+@@ -505,6 +519,7 @@ int netvsc_send(struct hv_device *device,
+       int ret = 0;
+       struct nvsp_message sendMessage;
+       struct net_device *ndev;
++      struct vmbus_channel *out_channel = NULL;
+       u64 req_id;
+       net_device = get_outbound_net_device(device);
+@@ -531,15 +546,20 @@ int netvsc_send(struct hv_device *device,
+       else
+               req_id = 0;
++      out_channel = net_device->chn_table[packet->q_idx];
++      if (out_channel == NULL)
++              out_channel = device->channel;
++      packet->channel = out_channel;
++
+       if (packet->page_buf_cnt) {
+-              ret = vmbus_sendpacket_pagebuffer(device->channel,
++              ret = vmbus_sendpacket_pagebuffer(out_channel,
+                                                 packet->page_buf,
+                                                 packet->page_buf_cnt,
+                                                 &sendMessage,
+                                                 sizeof(struct nvsp_message),
+                                                 req_id);
+       } else {
+-              ret = vmbus_sendpacket(device->channel, &sendMessage,
++              ret = vmbus_sendpacket(out_channel, &sendMessage,
+                               sizeof(struct nvsp_message),
+                               req_id,
+                               VM_PKT_DATA_INBAND,
+@@ -548,17 +568,24 @@ int netvsc_send(struct hv_device *device,
+       if (ret == 0) {
+               atomic_inc(&net_device->num_outstanding_sends);
+-              if (hv_ringbuf_avail_percent(&device->channel->outbound) <
++              atomic_inc(&net_device->queue_sends[packet->q_idx]);
++
++              if (hv_ringbuf_avail_percent(&out_channel->outbound) <
+                       RING_AVAIL_PERCENT_LOWATER) {
+-                      netif_stop_queue(ndev);
++                      netif_tx_stop_queue(netdev_get_tx_queue(
++                                          ndev, packet->q_idx));
++
+                       if (atomic_read(&net_device->
+-                              num_outstanding_sends) < 1)
+-                              netif_wake_queue(ndev);
++                              queue_sends[packet->q_idx]) < 1)
++                              netif_tx_wake_queue(netdev_get_tx_queue(
++                                                  ndev, packet->q_idx));
+               }
+       } else if (ret == -EAGAIN) {
+-              netif_stop_queue(ndev);
+-              if (atomic_read(&net_device->num_outstanding_sends) < 1) {
+-                      netif_wake_queue(ndev);
++              netif_tx_stop_queue(netdev_get_tx_queue(
++                                  ndev, packet->q_idx));
++              if (atomic_read(&net_device->queue_sends[packet->q_idx]) < 1) {
++                      netif_tx_wake_queue(netdev_get_tx_queue(
++                                          ndev, packet->q_idx));
+                       ret = -ENOSPC;
+               }
+       } else {
+@@ -570,6 +597,7 @@ int netvsc_send(struct hv_device *device,
+ }
+ static void netvsc_send_recv_completion(struct hv_device *device,
++                                      struct vmbus_channel *channel,
+                                       struct netvsc_device *net_device,
+                                       u64 transaction_id, u32 status)
+ {
+@@ -587,7 +615,7 @@ static void netvsc_send_recv_completion(struct hv_device *device,
+ retry_send_cmplt:
+       /* Send the completion */
+-      ret = vmbus_sendpacket(device->channel, &recvcompMessage,
++      ret = vmbus_sendpacket(channel, &recvcompMessage,
+                              sizeof(struct nvsp_message), transaction_id,
+                              VM_PKT_COMP, 0);
+       if (ret == 0) {
+@@ -618,6 +646,7 @@ static void netvsc_receive_completion(void *context)
+ {
+       struct hv_netvsc_packet *packet = context;
+       struct hv_device *device = packet->device;
++      struct vmbus_channel *channel;
+       struct netvsc_device *net_device;
+       u64 transaction_id = 0;
+       bool fsend_receive_comp = false;
+@@ -649,6 +678,7 @@ static void netvsc_receive_completion(void *context)
+        */
+       if (packet->xfer_page_pkt->count == 0) {
+               fsend_receive_comp = true;
++              channel = packet->xfer_page_pkt->channel;
+               transaction_id = packet->completion.recv.recv_completion_tid;
+               status = packet->xfer_page_pkt->status;
+               list_add_tail(&packet->xfer_page_pkt->list_ent,
+@@ -662,12 +692,13 @@ static void netvsc_receive_completion(void *context)
+       /* Send a receive completion for the xfer page packet */
+       if (fsend_receive_comp)
+-              netvsc_send_recv_completion(device, net_device, transaction_id,
+-                                      status);
++              netvsc_send_recv_completion(device, channel, net_device,
++                                          transaction_id, status);
+ }
+ static void netvsc_receive(struct netvsc_device *net_device,
++                      struct vmbus_channel *channel,
+                       struct hv_device *device,
+                       struct vmpacket_descriptor *packet)
+ {
+@@ -748,7 +779,7 @@ static void netvsc_receive(struct netvsc_device *net_device,
+               spin_unlock_irqrestore(&net_device->recv_pkt_list_lock,
+                                      flags);
+-              netvsc_send_recv_completion(device, net_device,
++              netvsc_send_recv_completion(device, channel, net_device,
+                                           vmxferpage_packet->d.trans_id,
+                                           NVSP_STAT_FAIL);
+@@ -759,6 +790,7 @@ static void netvsc_receive(struct netvsc_device *net_device,
+       xferpage_packet = (struct xferpage_packet *)listHead.next;
+       list_del(&xferpage_packet->list_ent);
+       xferpage_packet->status = NVSP_STAT_SUCCESS;
++      xferpage_packet->channel = channel;
+       /* This is how much we can satisfy */
+       xferpage_packet->count = count - 1;
+@@ -800,10 +832,45 @@ static void netvsc_receive(struct netvsc_device *net_device,
+ }
+-static void netvsc_channel_cb(void *context)
++
++static void netvsc_send_table(struct hv_device *hdev,
++                            struct vmpacket_descriptor *vmpkt)
++{
++      struct netvsc_device *nvscdev;
++      struct net_device *ndev;
++      struct nvsp_message *nvmsg;
++      int i;
++      u32 count, *tab;
++
++      nvscdev = get_outbound_net_device(hdev);
++      if (!nvscdev)
++              return;
++      ndev = nvscdev->ndev;
++
++      nvmsg = (struct nvsp_message *)((unsigned long)vmpkt +
++                                      (vmpkt->offset8 << 3));
++
++      if (nvmsg->hdr.msg_type != NVSP_MSG5_TYPE_SEND_INDIRECTION_TABLE)
++              return;
++
++      count = nvmsg->msg.v5_msg.send_table.count;
++      if (count != VRSS_SEND_TAB_SIZE) {
++              netdev_err(ndev, "Received wrong send-table size:%u\n", count);
++              return;
++      }
++
++      tab = (u32 *)((unsigned long)&nvmsg->msg.v5_msg.send_table +
++                    nvmsg->msg.v5_msg.send_table.offset);
++
++      for (i = 0; i < count; i++)
++              nvscdev->send_table[i] = tab[i];
++}
++
++void netvsc_channel_cb(void *context)
+ {
+       int ret;
+-      struct hv_device *device = context;
++      struct vmbus_channel *channel = (struct vmbus_channel *)context;
++      struct hv_device *device;
+       struct netvsc_device *net_device;
+       u32 bytes_recvd;
+       u64 request_id;
+@@ -812,14 +879,19 @@ static void netvsc_channel_cb(void *context)
+       int bufferlen = NETVSC_PACKET_SIZE;
+       struct net_device *ndev;
++      if (channel->primary_channel != NULL)
++              device = channel->primary_channel->device_obj;
++      else
++              device = channel->device_obj;
++
+       net_device = get_inbound_net_device(device);
+       if (!net_device)
+               return;
+       ndev = net_device->ndev;
+-      buffer = net_device->cb_buffer;
++      buffer = get_per_channel_state(channel);
+       do {
+-              ret = vmbus_recvpacket_raw(device->channel, buffer, bufferlen,
++              ret = vmbus_recvpacket_raw(channel, buffer, bufferlen,
+                                          &bytes_recvd, &request_id);
+               if (ret == 0) {
+                       if (bytes_recvd > 0) {
+@@ -831,8 +903,12 @@ static void netvsc_channel_cb(void *context)
+                                       break;
+                               case VM_PKT_DATA_USING_XFER_PAGES:
+-                                      netvsc_receive(net_device,
+-                                                      device, desc);
++                                      netvsc_receive(net_device, channel,
++                                                     device, desc);
++                                      break;
++
++                              case VM_PKT_DATA_INBAND:
++                                      netvsc_send_table(device, desc);
+                                       break;
+                               default:
+@@ -893,6 +969,8 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+               goto cleanup;
+       }
++      net_device->ring_size = ring_size;
++
+       /*
+        * Coming into this function, struct net_device * is
+        * registered as the driver private data.
+@@ -917,10 +995,12 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+       }
+       init_completion(&net_device->channel_init_wait);
++      set_per_channel_state(device->channel, net_device->cb_buffer);
++
+       /* Open the channel */
+       ret = vmbus_open(device->channel, ring_size * PAGE_SIZE,
+                        ring_size * PAGE_SIZE, NULL, 0,
+-                       netvsc_channel_cb, device);
++                       netvsc_channel_cb, device->channel);
+       if (ret != 0) {
+               netdev_err(ndev, "unable to open channel: %d\n", ret);
+@@ -930,6 +1010,8 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+       /* Channel is opened */
+       pr_info("hv_netvsc channel opened successfully\n");
++      net_device->chn_table[0] = device->channel;
++
+       /* Connect with the NetVsp */
+       ret = netvsc_connect_vsp(device);
+       if (ret != 0) {
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 31e55fba7cad..093cf3fc46b8 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -101,7 +101,7 @@ static int netvsc_open(struct net_device *net)
+               return ret;
+       }
+-      netif_start_queue(net);
++      netif_tx_start_all_queues(net);
+       nvdev = hv_get_drvdata(device_obj);
+       rdev = nvdev->extension;
+@@ -149,6 +149,88 @@ static void *init_ppi_data(struct rndis_message *msg, u32 ppi_size,
+       return ppi;
+ }
++union sub_key {
++      u64 k;
++      struct {
++              u8 pad[3];
++              u8 kb;
++              u32 ka;
++      };
++};
++
++/* Toeplitz hash function
++ * data: network byte order
++ * return: host byte order
++ */
++static u32 comp_hash(u8 *key, int klen, u8 *data, int dlen)
++{
++      union sub_key subk;
++      int k_next = 4;
++      u8 dt;
++      int i, j;
++      u32 ret = 0;
++
++      subk.k = 0;
++      subk.ka = ntohl(*(u32 *)key);
++
++      for (i = 0; i < dlen; i++) {
++              subk.kb = key[k_next];
++              k_next = (k_next + 1) % klen;
++              dt = data[i];
++              for (j = 0; j < 8; j++) {
++                      if (dt & 0x80)
++                              ret ^= subk.ka;
++                      dt <<= 1;
++                      subk.k <<= 1;
++              }
++      }
++
++      return ret;
++}
++
++static bool netvsc_set_hash(u32 *hash, struct sk_buff *skb)
++{
++      struct iphdr *iphdr;
++      int data_len;
++      bool ret = false;
++
++      if (eth_hdr(skb)->h_proto != htons(ETH_P_IP))
++              return false;
++
++      iphdr = ip_hdr(skb);
++
++      if (iphdr->version == 4) {
++              if (iphdr->protocol == IPPROTO_TCP)
++                      data_len = 12;
++              else
++                      data_len = 8;
++              *hash = comp_hash(netvsc_hash_key, HASH_KEYLEN,
++                                (u8 *)&iphdr->saddr, data_len);
++              ret = true;
++      }
++
++      return ret;
++}
++
++static u16 netvsc_select_queue(struct net_device *ndev, struct sk_buff *skb,
++                      void *accel_priv, select_queue_fallback_t fallback)
++{
++      struct net_device_context *net_device_ctx = netdev_priv(ndev);
++      struct hv_device *hdev =  net_device_ctx->device_ctx;
++      struct netvsc_device *nvsc_dev = hv_get_drvdata(hdev);
++      u32 hash;
++      u16 q_idx = 0;
++
++      if (nvsc_dev == NULL || ndev->real_num_tx_queues <= 1)
++              return 0;
++
++      if (netvsc_set_hash(&hash, skb))
++              q_idx = nvsc_dev->send_table[hash % VRSS_SEND_TAB_SIZE] %
++                      ndev->real_num_tx_queues;
++
++      return q_idx;
++}
++
+ static void netvsc_xmit_completion(void *context)
+ {
+       struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
+@@ -333,6 +415,8 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       packet->vlan_tci = skb->vlan_tci;
++      packet->q_idx = skb_get_queue_mapping(skb);
++
+       packet->is_data_pkt = true;
+       packet->total_data_buflen = skb->len;
+@@ -554,6 +638,10 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+               __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
+                                      packet->vlan_tci);
++      skb_record_rx_queue(skb, packet->xfer_page_pkt->channel->
++                          offermsg.offer.sub_channel_index %
++                          net->real_num_rx_queues);
++
+       net->stats.rx_packets++;
+       net->stats.rx_bytes += packet->total_data_buflen;
+@@ -602,7 +690,7 @@ static int netvsc_change_mtu(struct net_device *ndev, int mtu)
+       hv_set_drvdata(hdev, ndev);
+       device_info.ring_size = ring_size;
+       rndis_filter_device_add(hdev, &device_info);
+-      netif_wake_queue(ndev);
++      netif_tx_wake_all_queues(ndev);
+       return 0;
+ }
+@@ -648,6 +736,7 @@ static const struct net_device_ops device_ops = {
+       .ndo_change_mtu =               netvsc_change_mtu,
+       .ndo_validate_addr =            eth_validate_addr,
+       .ndo_set_mac_address =          netvsc_set_mac_addr,
++      .ndo_select_queue =             netvsc_select_queue,
+ };
+ /*
+@@ -694,9 +783,11 @@ static int netvsc_probe(struct hv_device *dev,
+       struct net_device *net = NULL;
+       struct net_device_context *net_device_ctx;
+       struct netvsc_device_info device_info;
++      struct netvsc_device *nvdev;
+       int ret;
+-      net = alloc_etherdev(sizeof(struct net_device_context));
++      net = alloc_etherdev_mq(sizeof(struct net_device_context),
++                              num_online_cpus());
+       if (!net)
+               return -ENOMEM;
+@@ -729,6 +820,12 @@ static int netvsc_probe(struct hv_device *dev,
+       }
+       memcpy(net->dev_addr, device_info.mac_adr, ETH_ALEN);
++      nvdev = hv_get_drvdata(dev);
++      netif_set_real_num_tx_queues(net, nvdev->num_chn);
++      netif_set_real_num_rx_queues(net, nvdev->num_chn);
++      dev_info(&dev->device, "real num tx,rx queues:%u, %u\n",
++               net->real_num_tx_queues, net->real_num_rx_queues);
++
+       ret = register_netdev(net);
+       if (ret != 0) {
+               pr_err("Unable to register netdev.\n");
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index 143a98caf618..d92cfbe43410 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -31,7 +31,7 @@
+ #include "hyperv_net.h"
+-#define RNDIS_EXT_LEN 100
++#define RNDIS_EXT_LEN PAGE_SIZE
+ struct rndis_request {
+       struct list_head list_ent;
+       struct completion  wait_event;
+@@ -94,6 +94,8 @@ static struct rndis_request *get_rndis_request(struct rndis_device *dev,
+       rndis_msg->ndis_msg_type = msg_type;
+       rndis_msg->msg_len = msg_len;
++      request->pkt.q_idx = 0;
++
+       /*
+        * Set the request id. This field is always after the rndis header for
+        * request/response packet types so we just used the SetRequest as a
+@@ -509,6 +511,19 @@ static int rndis_filter_query_device(struct rndis_device *dev, u32 oid,
+       query->info_buflen = 0;
+       query->dev_vc_handle = 0;
++      if (oid == OID_GEN_RECEIVE_SCALE_CAPABILITIES) {
++              struct ndis_recv_scale_cap *cap;
++
++              request->request_msg.msg_len +=
++                      sizeof(struct ndis_recv_scale_cap);
++              query->info_buflen = sizeof(struct ndis_recv_scale_cap);
++              cap = (struct ndis_recv_scale_cap *)((unsigned long)query +
++                                                   query->info_buf_offset);
++              cap->hdr.type = NDIS_OBJECT_TYPE_RSS_CAPABILITIES;
++              cap->hdr.rev = NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_2;
++              cap->hdr.size = sizeof(struct ndis_recv_scale_cap);
++      }
++
+       ret = rndis_filter_send_request(dev, request);
+       if (ret != 0)
+               goto cleanup;
+@@ -695,6 +710,89 @@ cleanup:
+       return ret;
+ }
++u8 netvsc_hash_key[HASH_KEYLEN] = {
++      0x6d, 0x5a, 0x56, 0xda, 0x25, 0x5b, 0x0e, 0xc2,
++      0x41, 0x67, 0x25, 0x3d, 0x43, 0xa3, 0x8f, 0xb0,
++      0xd0, 0xca, 0x2b, 0xcb, 0xae, 0x7b, 0x30, 0xb4,
++      0x77, 0xcb, 0x2d, 0xa3, 0x80, 0x30, 0xf2, 0x0c,
++      0x6a, 0x42, 0xb7, 0x3b, 0xbe, 0xac, 0x01, 0xfa
++};
++
++int rndis_filter_set_rss_param(struct rndis_device *rdev, int num_queue)
++{
++      struct net_device *ndev = rdev->net_dev->ndev;
++      struct rndis_request *request;
++      struct rndis_set_request *set;
++      struct rndis_set_complete *set_complete;
++      u32 extlen = sizeof(struct ndis_recv_scale_param) +
++                   4*ITAB_NUM + HASH_KEYLEN;
++      struct ndis_recv_scale_param *rssp;
++      u32 *itab;
++      u8 *keyp;
++      int i, t, ret;
++
++      request = get_rndis_request(
++                      rdev, RNDIS_MSG_SET,
++                      RNDIS_MESSAGE_SIZE(struct rndis_set_request) + extlen);
++      if (!request)
++              return -ENOMEM;
++
++      set = &request->request_msg.msg.set_req;
++      set->oid = OID_GEN_RECEIVE_SCALE_PARAMETERS;
++      set->info_buflen = extlen;
++      set->info_buf_offset = sizeof(struct rndis_set_request);
++      set->dev_vc_handle = 0;
++
++      rssp = (struct ndis_recv_scale_param *)(set + 1);
++      rssp->hdr.type = NDIS_OBJECT_TYPE_RSS_PARAMETERS;
++      rssp->hdr.rev = NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_2;
++      rssp->hdr.size = sizeof(struct ndis_recv_scale_param);
++      rssp->flag = 0;
++      rssp->hashinfo = NDIS_HASH_FUNC_TOEPLITZ | NDIS_HASH_IPV4 |
++                       NDIS_HASH_TCP_IPV4;
++      rssp->indirect_tabsize = 4*ITAB_NUM;
++      rssp->indirect_taboffset = sizeof(struct ndis_recv_scale_param);
++      rssp->hashkey_size = HASH_KEYLEN;
++      rssp->kashkey_offset = rssp->indirect_taboffset +
++                             rssp->indirect_tabsize;
++
++      /* Set indirection table entries */
++      itab = (u32 *)(rssp + 1);
++      for (i = 0; i < ITAB_NUM; i++)
++              itab[i] = i % num_queue;
++
++      /* Set hask key values */
++      keyp = (u8 *)((unsigned long)rssp + rssp->kashkey_offset);
++      for (i = 0; i < HASH_KEYLEN; i++)
++              keyp[i] = netvsc_hash_key[i];
++
++
++      ret = rndis_filter_send_request(rdev, request);
++      if (ret != 0)
++              goto cleanup;
++
++      t = wait_for_completion_timeout(&request->wait_event, 5*HZ);
++      if (t == 0) {
++              netdev_err(ndev, "timeout before we got a set response...\n");
++              /* can't put_rndis_request, since we may still receive a
++               * send-completion.
++               */
++              return -ETIMEDOUT;
++      } else {
++              set_complete = &request->response_msg.msg.set_complete;
++              if (set_complete->status != RNDIS_STATUS_SUCCESS) {
++                      netdev_err(ndev, "Fail to set RSS parameters:0x%x\n",
++                                 set_complete->status);
++                      ret = -EINVAL;
++              }
++      }
++
++cleanup:
++      put_rndis_request(rdev, request);
++      return ret;
++}
++
++
+ static int rndis_filter_query_device_link_status(struct rndis_device *dev)
+ {
+       u32 size = sizeof(u32);
+@@ -886,6 +984,28 @@ static int rndis_filter_close_device(struct rndis_device *dev)
+       return ret;
+ }
++static void netvsc_sc_open(struct vmbus_channel *new_sc)
++{
++      struct netvsc_device *nvscdev;
++      u16 chn_index = new_sc->offermsg.offer.sub_channel_index;
++      int ret;
++
++      nvscdev = hv_get_drvdata(new_sc->primary_channel->device_obj);
++
++      if (chn_index >= nvscdev->num_chn)
++              return;
++
++      set_per_channel_state(new_sc, nvscdev->sub_cb_buf + (chn_index - 1) *
++                            NETVSC_PACKET_SIZE);
++
++      ret = vmbus_open(new_sc, nvscdev->ring_size * PAGE_SIZE,
++                       nvscdev->ring_size * PAGE_SIZE, NULL, 0,
++                       netvsc_channel_cb, new_sc);
++
++      if (ret == 0)
++              nvscdev->chn_table[chn_index] = new_sc;
++}
++
+ int rndis_filter_device_add(struct hv_device *dev,
+                                 void *additional_info)
+ {
+@@ -894,6 +1014,10 @@ int rndis_filter_device_add(struct hv_device *dev,
+       struct rndis_device *rndis_device;
+       struct netvsc_device_info *device_info = additional_info;
+       struct ndis_offload_params offloads;
++      struct nvsp_message *init_packet;
++      int t;
++      struct ndis_recv_scale_cap rsscap;
++      u32 rsscap_size = sizeof(struct ndis_recv_scale_cap);
+       rndis_device = get_rndis_device();
+       if (!rndis_device)
+@@ -913,6 +1037,7 @@ int rndis_filter_device_add(struct hv_device *dev,
+       /* Initialize the rndis device */
+       net_device = hv_get_drvdata(dev);
++      net_device->num_chn = 1;
+       net_device->extension = rndis_device;
+       rndis_device->net_dev = net_device;
+@@ -952,7 +1077,6 @@ int rndis_filter_device_add(struct hv_device *dev,
+       if (ret)
+               goto err_dev_remv;
+-
+       rndis_filter_query_device_link_status(rndis_device);
+       device_info->link_state = rndis_device->link_state;
+@@ -961,7 +1085,66 @@ int rndis_filter_device_add(struct hv_device *dev,
+                rndis_device->hw_mac_adr,
+                device_info->link_state ? "down" : "up");
+-      return ret;
++      if (net_device->nvsp_version < NVSP_PROTOCOL_VERSION_5)
++              return 0;
++
++      /* vRSS setup */
++      memset(&rsscap, 0, rsscap_size);
++      ret = rndis_filter_query_device(rndis_device,
++                                      OID_GEN_RECEIVE_SCALE_CAPABILITIES,
++                                      &rsscap, &rsscap_size);
++      if (ret || rsscap.num_recv_que < 2)
++              goto out;
++
++      net_device->num_chn = (num_online_cpus() < rsscap.num_recv_que) ?
++                             num_online_cpus() : rsscap.num_recv_que;
++      if (net_device->num_chn == 1)
++              goto out;
++
++      net_device->sub_cb_buf = vzalloc((net_device->num_chn - 1) *
++                                       NETVSC_PACKET_SIZE);
++      if (!net_device->sub_cb_buf) {
++              net_device->num_chn = 1;
++              dev_info(&dev->device, "No memory for subchannels.\n");
++              goto out;
++      }
++
++      vmbus_set_sc_create_callback(dev->channel, netvsc_sc_open);
++
++      init_packet = &net_device->channel_init_pkt;
++      memset(init_packet, 0, sizeof(struct nvsp_message));
++      init_packet->hdr.msg_type = NVSP_MSG5_TYPE_SUBCHANNEL;
++      init_packet->msg.v5_msg.subchn_req.op = NVSP_SUBCHANNEL_ALLOCATE;
++      init_packet->msg.v5_msg.subchn_req.num_subchannels =
++                                              net_device->num_chn - 1;
++      ret = vmbus_sendpacket(dev->channel, init_packet,
++                             sizeof(struct nvsp_message),
++                             (unsigned long)init_packet,
++                             VM_PKT_DATA_INBAND,
++                             VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED);
++      if (ret)
++              goto out;
++      t = wait_for_completion_timeout(&net_device->channel_init_wait, 5*HZ);
++      if (t == 0) {
++              ret = -ETIMEDOUT;
++              goto out;
++      }
++      if (init_packet->msg.v5_msg.subchn_comp.status !=
++          NVSP_STAT_SUCCESS) {
++              ret = -ENODEV;
++              goto out;
++      }
++      net_device->num_chn = 1 +
++              init_packet->msg.v5_msg.subchn_comp.num_subchannels;
++
++      vmbus_are_subchannels_present(dev->channel);
++
++      ret = rndis_filter_set_rss_param(rndis_device, net_device->num_chn);
++
++out:
++      if (ret)
++              net_device->num_chn = 1;
++      return 0; /* return 0 because primary channel can be used alone */
+ err_dev_remv:
+       rndis_filter_device_remove(dev);
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0002-Drivers-net-hyperv-Cleanup-the-receive-path.patch b/src/patches/linux/0002-Drivers-net-hyperv-Cleanup-the-receive-path.patch
new file mode 100644 (file)
index 0000000..79485b3
--- /dev/null
@@ -0,0 +1,112 @@
+From 348a5d691d84759dda8cdd3cbf9f071115c1240e Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sun, 16 Feb 2014 16:38:44 -0800
+Subject: [PATCH 02/25] Drivers: net: hyperv: Cleanup the receive path
+
+Make the receive path a little more efficient by parameterizing the
+required state rather than re-establishing that state.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc.c | 29 +++++++++++++----------------
+ 1 file changed, 13 insertions(+), 16 deletions(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index 03a2c6e17158..7fa2bbade327 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -432,17 +432,14 @@ static inline u32 hv_ringbuf_avail_percent(
+       return avail_write * 100 / ring_info->ring_datasize;
+ }
+-static void netvsc_send_completion(struct hv_device *device,
++static void netvsc_send_completion(struct netvsc_device *net_device,
++                                 struct hv_device *device,
+                                  struct vmpacket_descriptor *packet)
+ {
+-      struct netvsc_device *net_device;
+       struct nvsp_message *nvsp_packet;
+       struct hv_netvsc_packet *nvsc_packet;
+       struct net_device *ndev;
+-      net_device = get_inbound_net_device(device);
+-      if (!net_device)
+-              return;
+       ndev = net_device->ndev;
+       nvsp_packet = (struct nvsp_message *)((unsigned long)packet +
+@@ -561,13 +558,13 @@ int netvsc_send(struct hv_device *device,
+ }
+ static void netvsc_send_recv_completion(struct hv_device *device,
++                                      struct netvsc_device *net_device,
+                                       u64 transaction_id, u32 status)
+ {
+       struct nvsp_message recvcompMessage;
+       int retries = 0;
+       int ret;
+       struct net_device *ndev;
+-      struct netvsc_device *net_device = hv_get_drvdata(device);
+       ndev = net_device->ndev;
+@@ -653,14 +650,15 @@ static void netvsc_receive_completion(void *context)
+       /* Send a receive completion for the xfer page packet */
+       if (fsend_receive_comp)
+-              netvsc_send_recv_completion(device, transaction_id, status);
++              netvsc_send_recv_completion(device, net_device, transaction_id,
++                                      status);
+ }
+-static void netvsc_receive(struct hv_device *device,
+-                          struct vmpacket_descriptor *packet)
++static void netvsc_receive(struct netvsc_device *net_device,
++                      struct hv_device *device,
++                      struct vmpacket_descriptor *packet)
+ {
+-      struct netvsc_device *net_device;
+       struct vmtransfer_page_packet_header *vmxferpage_packet;
+       struct nvsp_message *nvsp_packet;
+       struct hv_netvsc_packet *netvsc_packet = NULL;
+@@ -673,9 +671,6 @@ static void netvsc_receive(struct hv_device *device,
+       LIST_HEAD(listHead);
+-      net_device = get_inbound_net_device(device);
+-      if (!net_device)
+-              return;
+       ndev = net_device->ndev;
+       /*
+@@ -741,7 +736,7 @@ static void netvsc_receive(struct hv_device *device,
+               spin_unlock_irqrestore(&net_device->recv_pkt_list_lock,
+                                      flags);
+-              netvsc_send_recv_completion(device,
++              netvsc_send_recv_completion(device, net_device,
+                                           vmxferpage_packet->d.trans_id,
+                                           NVSP_STAT_FAIL);
+@@ -825,11 +820,13 @@ static void netvsc_channel_cb(void *context)
+                               desc = (struct vmpacket_descriptor *)buffer;
+                               switch (desc->type) {
+                               case VM_PKT_COMP:
+-                                      netvsc_send_completion(device, desc);
++                                      netvsc_send_completion(net_device,
++                                                              device, desc);
+                                       break;
+                               case VM_PKT_DATA_USING_XFER_PAGES:
+-                                      netvsc_receive(device, desc);
++                                      netvsc_receive(net_device,
++                                                      device, desc);
+                                       break;
+                               default:
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0002-hyperv-Remove-recv_pkt_list-and-lock.patch b/src/patches/linux/0002-hyperv-Remove-recv_pkt_list-and-lock.patch
new file mode 100644 (file)
index 0000000..bbe0e52
--- /dev/null
@@ -0,0 +1,384 @@
+From 4baab26129e0540746744232022110dbe9e011e7 Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Mon, 21 Apr 2014 14:54:43 -0700
+Subject: [PATCH 02/11] hyperv: Remove recv_pkt_list and lock
+
+Removed recv_pkt_list and lock, and updated related code, so that
+the locking overhead is reduced especially when multiple channels
+are in use.
+
+The recv_pkt_list isn't actually necessary because the packets are
+processed sequentially in each channel. It has been replaced by a
+local variable, and the related lock for this list is also removed.
+The is_data_pkt field is not used in receive path, so its assignment
+is cleaned up.
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   |  33 --------
+ drivers/net/hyperv/netvsc.c       | 174 +++-----------------------------------
+ drivers/net/hyperv/netvsc_drv.c   |   2 +-
+ drivers/net/hyperv/rndis_filter.c |   2 -
+ 4 files changed, 13 insertions(+), 198 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 57eb3f906d64..a1af0f7711e2 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -119,27 +119,14 @@ struct ndis_recv_scale_param { /* NDIS_RECEIVE_SCALE_PARAMETERS */
+ };
+ /* Fwd declaration */
+-struct hv_netvsc_packet;
+ struct ndis_tcp_ip_checksum_info;
+-/* Represent the xfer page packet which contains 1 or more netvsc packet */
+-struct xferpage_packet {
+-      struct list_head list_ent;
+-      u32 status;
+-
+-      /* # of netvsc packets this xfer packet contains */
+-      u32 count;
+-
+-      struct vmbus_channel *channel;
+-};
+-
+ /*
+  * Represent netvsc packet which contains 1 RNDIS and 1 ethernet frame
+  * within the RNDIS
+  */
+ struct hv_netvsc_packet {
+       /* Bookkeeping stuff */
+-      struct list_head list_ent;
+       u32 status;
+       struct hv_device *device;
+@@ -149,19 +136,8 @@ struct hv_netvsc_packet {
+       u16 q_idx;
+       struct vmbus_channel *channel;
+-      /*
+-       * Valid only for receives when we break a xfer page packet
+-       * into multiple netvsc packets
+-       */
+-      struct xferpage_packet *xfer_page_pkt;
+-
+       union {
+               struct {
+-                      u64 recv_completion_tid;
+-                      void *recv_completion_ctx;
+-                      void (*recv_completion)(void *context);
+-              } recv;
+-              struct {
+                       u64 send_completion_tid;
+                       void *send_completion_ctx;
+                       void (*send_completion)(void *context);
+@@ -613,9 +589,6 @@ struct nvsp_message {
+ #define NETVSC_RECEIVE_BUFFER_ID              0xcafe
+-/* Preallocated receive packets */
+-#define NETVSC_RECEIVE_PACKETLIST_COUNT               256
+-
+ #define NETVSC_PACKET_SIZE                      2048
+ #define VRSS_SEND_TAB_SIZE 16
+@@ -630,12 +603,6 @@ struct netvsc_device {
+       wait_queue_head_t wait_drain;
+       bool start_remove;
+       bool destroy;
+-      /*
+-       * List of free preallocated hv_netvsc_packet to represent receive
+-       * packet
+-       */
+-      struct list_head recv_pkt_list;
+-      spinlock_t recv_pkt_list_lock;
+       /* Receive buffer allocated by us but manages by NetVSP */
+       void *recv_buf;
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index e7e77f12bc38..b10334773b32 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -387,7 +387,6 @@ static void netvsc_disconnect_vsp(struct netvsc_device *net_device)
+ int netvsc_device_remove(struct hv_device *device)
+ {
+       struct netvsc_device *net_device;
+-      struct hv_netvsc_packet *netvsc_packet, *pos;
+       unsigned long flags;
+       net_device = hv_get_drvdata(device);
+@@ -416,12 +415,6 @@ int netvsc_device_remove(struct hv_device *device)
+       vmbus_close(device->channel);
+       /* Release all resources */
+-      list_for_each_entry_safe(netvsc_packet, pos,
+-                               &net_device->recv_pkt_list, list_ent) {
+-              list_del(&netvsc_packet->list_ent);
+-              kfree(netvsc_packet);
+-      }
+-
+       if (net_device->sub_cb_buf)
+               vfree(net_device->sub_cb_buf);
+@@ -641,62 +634,6 @@ retry_send_cmplt:
+       }
+ }
+-/* Send a receive completion packet to RNDIS device (ie NetVsp) */
+-static void netvsc_receive_completion(void *context)
+-{
+-      struct hv_netvsc_packet *packet = context;
+-      struct hv_device *device = packet->device;
+-      struct vmbus_channel *channel;
+-      struct netvsc_device *net_device;
+-      u64 transaction_id = 0;
+-      bool fsend_receive_comp = false;
+-      unsigned long flags;
+-      struct net_device *ndev;
+-      u32 status = NVSP_STAT_NONE;
+-
+-      /*
+-       * Even though it seems logical to do a GetOutboundNetDevice() here to
+-       * send out receive completion, we are using GetInboundNetDevice()
+-       * since we may have disable outbound traffic already.
+-       */
+-      net_device = get_inbound_net_device(device);
+-      if (!net_device)
+-              return;
+-      ndev = net_device->ndev;
+-
+-      /* Overloading use of the lock. */
+-      spin_lock_irqsave(&net_device->recv_pkt_list_lock, flags);
+-
+-      if (packet->status != NVSP_STAT_SUCCESS)
+-              packet->xfer_page_pkt->status = NVSP_STAT_FAIL;
+-
+-      packet->xfer_page_pkt->count--;
+-
+-      /*
+-       * Last one in the line that represent 1 xfer page packet.
+-       * Return the xfer page packet itself to the freelist
+-       */
+-      if (packet->xfer_page_pkt->count == 0) {
+-              fsend_receive_comp = true;
+-              channel = packet->xfer_page_pkt->channel;
+-              transaction_id = packet->completion.recv.recv_completion_tid;
+-              status = packet->xfer_page_pkt->status;
+-              list_add_tail(&packet->xfer_page_pkt->list_ent,
+-                            &net_device->recv_pkt_list);
+-
+-      }
+-
+-      /* Put the packet back */
+-      list_add_tail(&packet->list_ent, &net_device->recv_pkt_list);
+-      spin_unlock_irqrestore(&net_device->recv_pkt_list_lock, flags);
+-
+-      /* Send a receive completion for the xfer page packet */
+-      if (fsend_receive_comp)
+-              netvsc_send_recv_completion(device, channel, net_device,
+-                                          transaction_id, status);
+-
+-}
+-
+ static void netvsc_receive(struct netvsc_device *net_device,
+                       struct vmbus_channel *channel,
+                       struct hv_device *device,
+@@ -704,16 +641,13 @@ static void netvsc_receive(struct netvsc_device *net_device,
+ {
+       struct vmtransfer_page_packet_header *vmxferpage_packet;
+       struct nvsp_message *nvsp_packet;
+-      struct hv_netvsc_packet *netvsc_packet = NULL;
+-      /* struct netvsc_driver *netvscDriver; */
+-      struct xferpage_packet *xferpage_packet = NULL;
++      struct hv_netvsc_packet nv_pkt;
++      struct hv_netvsc_packet *netvsc_packet = &nv_pkt;
++      u32 status = NVSP_STAT_SUCCESS;
+       int i;
+       int count = 0;
+-      unsigned long flags;
+       struct net_device *ndev;
+-      LIST_HEAD(listHead);
+-
+       ndev = net_device->ndev;
+       /*
+@@ -746,78 +680,14 @@ static void netvsc_receive(struct netvsc_device *net_device,
+               return;
+       }
+-      /*
+-       * Grab free packets (range count + 1) to represent this xfer
+-       * page packet. +1 to represent the xfer page packet itself.
+-       * We grab it here so that we know exactly how many we can
+-       * fulfil
+-       */
+-      spin_lock_irqsave(&net_device->recv_pkt_list_lock, flags);
+-      while (!list_empty(&net_device->recv_pkt_list)) {
+-              list_move_tail(net_device->recv_pkt_list.next, &listHead);
+-              if (++count == vmxferpage_packet->range_cnt + 1)
+-                      break;
+-      }
+-      spin_unlock_irqrestore(&net_device->recv_pkt_list_lock, flags);
+-
+-      /*
+-       * We need at least 2 netvsc pkts (1 to represent the xfer
+-       * page and at least 1 for the range) i.e. we can handled
+-       * some of the xfer page packet ranges...
+-       */
+-      if (count < 2) {
+-              netdev_err(ndev, "Got only %d netvsc pkt...needed "
+-                      "%d pkts. Dropping this xfer page packet completely!\n",
+-                      count, vmxferpage_packet->range_cnt + 1);
+-
+-              /* Return it to the freelist */
+-              spin_lock_irqsave(&net_device->recv_pkt_list_lock, flags);
+-              for (i = count; i != 0; i--) {
+-                      list_move_tail(listHead.next,
+-                                     &net_device->recv_pkt_list);
+-              }
+-              spin_unlock_irqrestore(&net_device->recv_pkt_list_lock,
+-                                     flags);
+-
+-              netvsc_send_recv_completion(device, channel, net_device,
+-                                          vmxferpage_packet->d.trans_id,
+-                                          NVSP_STAT_FAIL);
+-
+-              return;
+-      }
+-
+-      /* Remove the 1st packet to represent the xfer page packet itself */
+-      xferpage_packet = (struct xferpage_packet *)listHead.next;
+-      list_del(&xferpage_packet->list_ent);
+-      xferpage_packet->status = NVSP_STAT_SUCCESS;
+-      xferpage_packet->channel = channel;
+-
+-      /* This is how much we can satisfy */
+-      xferpage_packet->count = count - 1;
+-
+-      if (xferpage_packet->count != vmxferpage_packet->range_cnt) {
+-              netdev_err(ndev, "Needed %d netvsc pkts to satisfy "
+-                      "this xfer page...got %d\n",
+-                      vmxferpage_packet->range_cnt, xferpage_packet->count);
+-      }
++      count = vmxferpage_packet->range_cnt;
++      netvsc_packet->device = device;
++      netvsc_packet->channel = channel;
+       /* Each range represents 1 RNDIS pkt that contains 1 ethernet frame */
+-      for (i = 0; i < (count - 1); i++) {
+-              netvsc_packet = (struct hv_netvsc_packet *)listHead.next;
+-              list_del(&netvsc_packet->list_ent);
+-
++      for (i = 0; i < count; i++) {
+               /* Initialize the netvsc packet */
+               netvsc_packet->status = NVSP_STAT_SUCCESS;
+-              netvsc_packet->xfer_page_pkt = xferpage_packet;
+-              netvsc_packet->completion.recv.recv_completion =
+-                                      netvsc_receive_completion;
+-              netvsc_packet->completion.recv.recv_completion_ctx =
+-                                      netvsc_packet;
+-              netvsc_packet->device = device;
+-              /* Save this so that we can send it back */
+-              netvsc_packet->completion.recv.recv_completion_tid =
+-                                      vmxferpage_packet->d.trans_id;
+-
+               netvsc_packet->data = (void *)((unsigned long)net_device->
+                       recv_buf + vmxferpage_packet->ranges[i].byte_offset);
+               netvsc_packet->total_data_buflen =
+@@ -826,10 +696,12 @@ static void netvsc_receive(struct netvsc_device *net_device,
+               /* Pass it to the upper layer */
+               rndis_filter_receive(device, netvsc_packet);
+-              netvsc_receive_completion(netvsc_packet->
+-                              completion.recv.recv_completion_ctx);
++              if (netvsc_packet->status != NVSP_STAT_SUCCESS)
++                      status = NVSP_STAT_FAIL;
+       }
++      netvsc_send_recv_completion(device, channel, net_device,
++                                  vmxferpage_packet->d.trans_id, status);
+ }
+@@ -956,11 +828,9 @@ void netvsc_channel_cb(void *context)
+ int netvsc_device_add(struct hv_device *device, void *additional_info)
+ {
+       int ret = 0;
+-      int i;
+       int ring_size =
+       ((struct netvsc_device_info *)additional_info)->ring_size;
+       struct netvsc_device *net_device;
+-      struct hv_netvsc_packet *packet, *pos;
+       struct net_device *ndev;
+       net_device = alloc_net_device(device);
+@@ -981,18 +851,6 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+       ndev = net_device->ndev;
+       /* Initialize the NetVSC channel extension */
+-      spin_lock_init(&net_device->recv_pkt_list_lock);
+-
+-      INIT_LIST_HEAD(&net_device->recv_pkt_list);
+-
+-      for (i = 0; i < NETVSC_RECEIVE_PACKETLIST_COUNT; i++) {
+-              packet = kzalloc(sizeof(struct hv_netvsc_packet), GFP_KERNEL);
+-              if (!packet)
+-                      break;
+-
+-              list_add_tail(&packet->list_ent,
+-                            &net_device->recv_pkt_list);
+-      }
+       init_completion(&net_device->channel_init_wait);
+       set_per_channel_state(device->channel, net_device->cb_buffer);
+@@ -1028,16 +886,8 @@ close:
+ cleanup:
+-      if (net_device) {
+-              list_for_each_entry_safe(packet, pos,
+-                                       &net_device->recv_pkt_list,
+-                                       list_ent) {
+-                      list_del(&packet->list_ent);
+-                      kfree(packet);
+-              }
+-
++      if (net_device)
+               kfree(net_device);
+-      }
+       return ret;
+ }
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 093cf3fc46b8..8f6d53a2ed95 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -638,7 +638,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+               __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
+                                      packet->vlan_tci);
+-      skb_record_rx_queue(skb, packet->xfer_page_pkt->channel->
++      skb_record_rx_queue(skb, packet->channel->
+                           offermsg.offer.sub_channel_index %
+                           net->real_num_rx_queues);
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index d92cfbe43410..48f5a0fbd674 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -401,8 +401,6 @@ static void rndis_filter_receive_data(struct rndis_device *dev,
+       pkt->total_data_buflen = rndis_pkt->data_len;
+       pkt->data = (void *)((unsigned long)pkt->data + data_offset);
+-      pkt->is_data_pkt = true;
+-
+       vlan = rndis_get_ppi(rndis_pkt, IEEE_8021Q_INFO);
+       if (vlan) {
+               pkt->vlan_tci = VLAN_TAG_PRESENT | vlan->vlanid |
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0003-Drivers-net-hyperv-Cleanup-the-netvsc-receive-callba.patch b/src/patches/linux/0003-Drivers-net-hyperv-Cleanup-the-netvsc-receive-callba.patch
new file mode 100644 (file)
index 0000000..e0b82ea
--- /dev/null
@@ -0,0 +1,101 @@
+From c9f2db35ac4f789930522d9d36200cb71b442bed Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sun, 16 Feb 2014 16:38:45 -0800
+Subject: [PATCH 03/25] Drivers: net: hyperv: Cleanup the netvsc receive
+ callback functio
+
+Get rid of the buffer allocation in the receive path for normal packets.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h |  2 ++
+ drivers/net/hyperv/netvsc.c     | 33 ++++++++++-----------------------
+ 2 files changed, 12 insertions(+), 23 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 7645ba38bde8..01a16ea77a5a 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -506,6 +506,8 @@ struct netvsc_device {
+       /* Holds rndis device info */
+       void *extension;
++      /* The recive buffer for this device */
++      unsigned char cb_buffer[NETVSC_PACKET_SIZE];
+ };
+ /* NdisInitialize message */
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index 7fa2bbade327..9a0e9c6f1414 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -795,22 +795,16 @@ static void netvsc_channel_cb(void *context)
+       struct netvsc_device *net_device;
+       u32 bytes_recvd;
+       u64 request_id;
+-      unsigned char *packet;
+       struct vmpacket_descriptor *desc;
+       unsigned char *buffer;
+       int bufferlen = NETVSC_PACKET_SIZE;
+       struct net_device *ndev;
+-      packet = kzalloc(NETVSC_PACKET_SIZE * sizeof(unsigned char),
+-                       GFP_ATOMIC);
+-      if (!packet)
+-              return;
+-      buffer = packet;
+-
+       net_device = get_inbound_net_device(device);
+       if (!net_device)
+-              goto out;
++              return;
+       ndev = net_device->ndev;
++      buffer = net_device->cb_buffer;
+       do {
+               ret = vmbus_recvpacket_raw(device->channel, buffer, bufferlen,
+@@ -838,23 +832,16 @@ static void netvsc_channel_cb(void *context)
+                                       break;
+                               }
+-                              /* reset */
+-                              if (bufferlen > NETVSC_PACKET_SIZE) {
+-                                      kfree(buffer);
+-                                      buffer = packet;
+-                                      bufferlen = NETVSC_PACKET_SIZE;
+-                              }
+                       } else {
+-                              /* reset */
+-                              if (bufferlen > NETVSC_PACKET_SIZE) {
+-                                      kfree(buffer);
+-                                      buffer = packet;
+-                                      bufferlen = NETVSC_PACKET_SIZE;
+-                              }
+-
++                              /*
++                               * We are done for this pass.
++                               */
+                               break;
+                       }
++
+               } else if (ret == -ENOBUFS) {
++                      if (bufferlen > NETVSC_PACKET_SIZE)
++                              kfree(buffer);
+                       /* Handle large packet */
+                       buffer = kmalloc(bytes_recvd, GFP_ATOMIC);
+                       if (buffer == NULL) {
+@@ -869,8 +856,8 @@ static void netvsc_channel_cb(void *context)
+               }
+       } while (1);
+-out:
+-      kfree(buffer);
++      if (bufferlen > NETVSC_PACKET_SIZE)
++              kfree(buffer);
+       return;
+ }
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0003-hyperv-Simplify-the-send_completion-variables.patch b/src/patches/linux/0003-hyperv-Simplify-the-send_completion-variables.patch
new file mode 100644 (file)
index 0000000..dcab56f
--- /dev/null
@@ -0,0 +1,105 @@
+From 893f66277799cd46bdf97429cc5d16a815a51273 Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Mon, 21 Apr 2014 14:54:44 -0700
+Subject: [PATCH 03/11] hyperv: Simplify the send_completion variables
+
+The union contains only one member now, so we use the variables in it directly.
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   | 10 +++-------
+ drivers/net/hyperv/netvsc.c       |  7 +++----
+ drivers/net/hyperv/netvsc_drv.c   |  8 ++++----
+ drivers/net/hyperv/rndis_filter.c |  2 +-
+ 4 files changed, 11 insertions(+), 16 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index a1af0f7711e2..d1f7826aa75f 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -136,13 +136,9 @@ struct hv_netvsc_packet {
+       u16 q_idx;
+       struct vmbus_channel *channel;
+-      union {
+-              struct {
+-                      u64 send_completion_tid;
+-                      void *send_completion_ctx;
+-                      void (*send_completion)(void *context);
+-              } send;
+-      } completion;
++      u64 send_completion_tid;
++      void *send_completion_ctx;
++      void (*send_completion)(void *context);
+       /* This points to the memory after page_buf */
+       struct rndis_message *rndis_msg;
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index b10334773b32..bbee44635035 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -479,9 +479,8 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+               if (nvsc_packet) {
+                       q_idx = nvsc_packet->q_idx;
+                       channel = nvsc_packet->channel;
+-                      nvsc_packet->completion.send.send_completion(
+-                              nvsc_packet->completion.send.
+-                              send_completion_ctx);
++                      nvsc_packet->send_completion(nvsc_packet->
++                                                   send_completion_ctx);
+               }
+               num_outstanding_sends =
+@@ -534,7 +533,7 @@ int netvsc_send(struct hv_device *device,
+               0xFFFFFFFF;
+       sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_size = 0;
+-      if (packet->completion.send.send_completion)
++      if (packet->send_completion)
+               req_id = (ulong)packet;
+       else
+               req_id = 0;
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 8f6d53a2ed95..c76b66515e92 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -235,7 +235,7 @@ static void netvsc_xmit_completion(void *context)
+ {
+       struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
+       struct sk_buff *skb = (struct sk_buff *)
+-              (unsigned long)packet->completion.send.send_completion_tid;
++              (unsigned long)packet->send_completion_tid;
+       kfree(packet);
+@@ -425,9 +425,9 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+                               (num_data_pgs * sizeof(struct hv_page_buffer)));
+       /* Set the completion routine */
+-      packet->completion.send.send_completion = netvsc_xmit_completion;
+-      packet->completion.send.send_completion_ctx = packet;
+-      packet->completion.send.send_completion_tid = (unsigned long)skb;
++      packet->send_completion = netvsc_xmit_completion;
++      packet->send_completion_ctx = packet;
++      packet->send_completion_tid = (unsigned long)skb;
+       isvlan = packet->vlan_tci & VLAN_TAG_PRESENT;
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index 48f5a0fbd674..99c527adae5b 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -236,7 +236,7 @@ static int rndis_filter_send_request(struct rndis_device *dev,
+                       packet->page_buf[0].len;
+       }
+-      packet->completion.send.send_completion = NULL;
++      packet->send_completion = NULL;
+       ret = netvsc_send(dev->net_dev->dev, packet);
+       return ret;
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0004-hyperv-Add-latest-NetVSP-versions-to-auto-negotiatio.patch b/src/patches/linux/0004-hyperv-Add-latest-NetVSP-versions-to-auto-negotiatio.patch
new file mode 100644 (file)
index 0000000..f9cd827
--- /dev/null
@@ -0,0 +1,171 @@
+From 3c2a271d9681cc017947c5e027acc64707c30dee Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Wed, 19 Feb 2014 15:49:45 -0800
+Subject: [PATCH 04/25] hyperv: Add latest NetVSP versions to auto negotiation
+
+It auto negotiates the highest NetVSP version supported by both guest and host.
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h | 53 +++++++++++++++++++++++++++++++++++++++++
+ drivers/net/hyperv/netvsc.c     | 25 ++++++++++++-------
+ drivers/net/hyperv/netvsc_drv.c |  2 +-
+ 3 files changed, 70 insertions(+), 10 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 01a16ea77a5a..39fc230f5c20 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -139,6 +139,8 @@ int rndis_filter_set_device_mac(struct hv_device *hdev, char *mac);
+ #define NVSP_PROTOCOL_VERSION_1               2
+ #define NVSP_PROTOCOL_VERSION_2               0x30002
++#define NVSP_PROTOCOL_VERSION_4               0x40000
++#define NVSP_PROTOCOL_VERSION_5               0x50000
+ enum {
+       NVSP_MSG_TYPE_NONE = 0,
+@@ -193,6 +195,23 @@ enum {
+       NVSP_MSG2_TYPE_ALLOC_CHIMNEY_HANDLE,
+       NVSP_MSG2_TYPE_ALLOC_CHIMNEY_HANDLE_COMP,
++
++      NVSP_MSG2_MAX = NVSP_MSG2_TYPE_ALLOC_CHIMNEY_HANDLE_COMP,
++
++      /* Version 4 messages */
++      NVSP_MSG4_TYPE_SEND_VF_ASSOCIATION,
++      NVSP_MSG4_TYPE_SWITCH_DATA_PATH,
++      NVSP_MSG4_TYPE_UPLINK_CONNECT_STATE_DEPRECATED,
++
++      NVSP_MSG4_MAX = NVSP_MSG4_TYPE_UPLINK_CONNECT_STATE_DEPRECATED,
++
++      /* Version 5 messages */
++      NVSP_MSG5_TYPE_OID_QUERY_EX,
++      NVSP_MSG5_TYPE_OID_QUERY_EX_COMP,
++      NVSP_MSG5_TYPE_SUBCHANNEL,
++      NVSP_MSG5_TYPE_SEND_INDIRECTION_TABLE,
++
++      NVSP_MSG5_MAX = NVSP_MSG5_TYPE_SEND_INDIRECTION_TABLE,
+ };
+ enum {
+@@ -447,10 +466,44 @@ union nvsp_2_message_uber {
+       struct nvsp_2_free_rxbuf free_rxbuf;
+ } __packed;
++enum nvsp_subchannel_operation {
++      NVSP_SUBCHANNEL_NONE = 0,
++      NVSP_SUBCHANNEL_ALLOCATE,
++      NVSP_SUBCHANNEL_MAX
++};
++
++struct nvsp_5_subchannel_request {
++      u32 op;
++      u32 num_subchannels;
++} __packed;
++
++struct nvsp_5_subchannel_complete {
++      u32 status;
++      u32 num_subchannels; /* Actual number of subchannels allocated */
++} __packed;
++
++struct nvsp_5_send_indirect_table {
++      /* The number of entries in the send indirection table */
++      u32 count;
++
++      /* The offset of the send indireciton table from top of this struct.
++       * The send indirection table tells which channel to put the send
++       * traffic on. Each entry is a channel number.
++       */
++      u32 offset;
++} __packed;
++
++union nvsp_5_message_uber {
++      struct nvsp_5_subchannel_request subchn_req;
++      struct nvsp_5_subchannel_complete subchn_comp;
++      struct nvsp_5_send_indirect_table send_table;
++} __packed;
++
+ union nvsp_all_messages {
+       union nvsp_message_init_uber init_msg;
+       union nvsp_1_message_uber v1_msg;
+       union nvsp_2_message_uber v2_msg;
++      union nvsp_5_message_uber v5_msg;
+ } __packed;
+ /* ALL Messages */
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index 9a0e9c6f1414..1a0280dcba7e 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -290,7 +290,7 @@ static int negotiate_nvsp_ver(struct hv_device *device,
+           NVSP_STAT_SUCCESS)
+               return -EINVAL;
+-      if (nvsp_ver != NVSP_PROTOCOL_VERSION_2)
++      if (nvsp_ver == NVSP_PROTOCOL_VERSION_1)
+               return 0;
+       /* NVSPv2 only: Send NDIS config */
+@@ -314,6 +314,9 @@ static int netvsc_connect_vsp(struct hv_device *device)
+       struct nvsp_message *init_packet;
+       int ndis_version;
+       struct net_device *ndev;
++      u32 ver_list[] = { NVSP_PROTOCOL_VERSION_1, NVSP_PROTOCOL_VERSION_2,
++              NVSP_PROTOCOL_VERSION_4, NVSP_PROTOCOL_VERSION_5 };
++      int i, num_ver = 4; /* number of different NVSP versions */
+       net_device = get_outbound_net_device(device);
+       if (!net_device)
+@@ -323,13 +326,14 @@ static int netvsc_connect_vsp(struct hv_device *device)
+       init_packet = &net_device->channel_init_pkt;
+       /* Negotiate the latest NVSP protocol supported */
+-      if (negotiate_nvsp_ver(device, net_device, init_packet,
+-                             NVSP_PROTOCOL_VERSION_2) == 0) {
+-              net_device->nvsp_version = NVSP_PROTOCOL_VERSION_2;
+-      } else if (negotiate_nvsp_ver(device, net_device, init_packet,
+-                                  NVSP_PROTOCOL_VERSION_1) == 0) {
+-              net_device->nvsp_version = NVSP_PROTOCOL_VERSION_1;
+-      } else {
++      for (i = num_ver - 1; i >= 0; i--)
++              if (negotiate_nvsp_ver(device, net_device, init_packet,
++                                     ver_list[i])  == 0) {
++                      net_device->nvsp_version = ver_list[i];
++                      break;
++              }
++
++      if (i < 0) {
+               ret = -EPROTO;
+               goto cleanup;
+       }
+@@ -339,7 +343,10 @@ static int netvsc_connect_vsp(struct hv_device *device)
+       /* Send the ndis version */
+       memset(init_packet, 0, sizeof(struct nvsp_message));
+-      ndis_version = 0x00050001;
++      if (net_device->nvsp_version <= NVSP_PROTOCOL_VERSION_4)
++              ndis_version = 0x00050001;
++      else
++              ndis_version = 0x0006001e;
+       init_packet->hdr.msg_type = NVSP_MSG1_TYPE_SEND_NDIS_VER;
+       init_packet->msg.v1_msg.
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 28020f83ba6f..8e3a0b00099b 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -328,7 +328,7 @@ static int netvsc_change_mtu(struct net_device *ndev, int mtu)
+       if (nvdev == NULL || nvdev->destroy)
+               return -ENODEV;
+-      if (nvdev->nvsp_version == NVSP_PROTOCOL_VERSION_2)
++      if (nvdev->nvsp_version >= NVSP_PROTOCOL_VERSION_2)
+               limit = NETVSC_MTU;
+       if (mtu < 68 || mtu > limit)
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0004-hyperv-Enable-sendbuf-mechanism-on-the-send-path.patch b/src/patches/linux/0004-hyperv-Enable-sendbuf-mechanism-on-the-send-path.patch
new file mode 100644 (file)
index 0000000..bc09122
--- /dev/null
@@ -0,0 +1,407 @@
+From c25aaf814a63f9d9c4e45416f13d70ef0aa0be2e Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Wed, 30 Apr 2014 10:14:31 -0700
+Subject: [PATCH 04/11] hyperv: Enable sendbuf mechanism on the send path
+
+We send packets using a copy-free mechanism (this is the Guest to Host transport
+via VMBUS). While this is obviously optimal for large packets,
+it may not be optimal for small packets. Hyper-V host supports
+a second mechanism for sending packets that is "copy based". We implement that
+mechanism in this patch.
+
+In this version of the patch I have addressed a comment from David Miller.
+
+With this patch (and all of the other offload and VRSS patches), we are now able
+to almost saturate a 10G interface between Linux VMs on Hyper-V
+on different hosts - close to  9 Gbps as measured via iperf.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h |  14 +++
+ drivers/net/hyperv/netvsc.c     | 226 ++++++++++++++++++++++++++++++++++++++--
+ drivers/net/hyperv/netvsc_drv.c |   3 +-
+ 3 files changed, 234 insertions(+), 9 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index d1f7826aa75f..4b7df5a5c966 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -140,6 +140,8 @@ struct hv_netvsc_packet {
+       void *send_completion_ctx;
+       void (*send_completion)(void *context);
++      u32 send_buf_index;
++
+       /* This points to the memory after page_buf */
+       struct rndis_message *rndis_msg;
+@@ -582,6 +584,9 @@ struct nvsp_message {
+ #define NETVSC_RECEIVE_BUFFER_SIZE            (1024*1024*16)  /* 16MB */
+ #define NETVSC_RECEIVE_BUFFER_SIZE_LEGACY     (1024*1024*15)  /* 15MB */
++#define NETVSC_SEND_BUFFER_SIZE                       (1024 * 1024)   /* 1MB */
++#define NETVSC_INVALID_INDEX                  -1
++
+ #define NETVSC_RECEIVE_BUFFER_ID              0xcafe
+@@ -607,6 +612,15 @@ struct netvsc_device {
+       u32 recv_section_cnt;
+       struct nvsp_1_receive_buffer_section *recv_section;
++      /* Send buffer allocated by us */
++      void *send_buf;
++      u32 send_buf_size;
++      u32 send_buf_gpadl_handle;
++      u32 send_section_cnt;
++      u32 send_section_size;
++      unsigned long *send_section_map;
++      int map_words;
++
+       /* Used for NetVSP initialization protocol */
+       struct completion channel_init_wait;
+       struct nvsp_message channel_init_pkt;
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index bbee44635035..c041f63a6d30 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -28,6 +28,7 @@
+ #include <linux/slab.h>
+ #include <linux/netdevice.h>
+ #include <linux/if_ether.h>
++#include <asm/sync_bitops.h>
+ #include "hyperv_net.h"
+@@ -80,7 +81,7 @@ get_in_err:
+ }
+-static int netvsc_destroy_recv_buf(struct netvsc_device *net_device)
++static int netvsc_destroy_buf(struct netvsc_device *net_device)
+ {
+       struct nvsp_message *revoke_packet;
+       int ret = 0;
+@@ -146,10 +147,62 @@ static int netvsc_destroy_recv_buf(struct netvsc_device *net_device)
+               net_device->recv_section = NULL;
+       }
++      /* Deal with the send buffer we may have setup.
++       * If we got a  send section size, it means we received a
++       * SendsendBufferComplete msg (ie sent
++       * NvspMessage1TypeSendReceiveBuffer msg) therefore, we need
++       * to send a revoke msg here
++       */
++      if (net_device->send_section_size) {
++              /* Send the revoke receive buffer */
++              revoke_packet = &net_device->revoke_packet;
++              memset(revoke_packet, 0, sizeof(struct nvsp_message));
++
++              revoke_packet->hdr.msg_type =
++                      NVSP_MSG1_TYPE_REVOKE_SEND_BUF;
++              revoke_packet->msg.v1_msg.revoke_recv_buf.id = 0;
++
++              ret = vmbus_sendpacket(net_device->dev->channel,
++                                     revoke_packet,
++                                     sizeof(struct nvsp_message),
++                                     (unsigned long)revoke_packet,
++                                     VM_PKT_DATA_INBAND, 0);
++              /* If we failed here, we might as well return and
++               * have a leak rather than continue and a bugchk
++               */
++              if (ret != 0) {
++                      netdev_err(ndev, "unable to send "
++                                 "revoke send buffer to netvsp\n");
++                      return ret;
++              }
++      }
++      /* Teardown the gpadl on the vsp end */
++      if (net_device->send_buf_gpadl_handle) {
++              ret = vmbus_teardown_gpadl(net_device->dev->channel,
++                                         net_device->send_buf_gpadl_handle);
++
++              /* If we failed here, we might as well return and have a leak
++               * rather than continue and a bugchk
++               */
++              if (ret != 0) {
++                      netdev_err(ndev,
++                                 "unable to teardown send buffer's gpadl\n");
++                      return ret;
++              }
++              net_device->recv_buf_gpadl_handle = 0;
++      }
++      if (net_device->send_buf) {
++              /* Free up the receive buffer */
++              free_pages((unsigned long)net_device->send_buf,
++                         get_order(net_device->send_buf_size));
++              net_device->send_buf = NULL;
++      }
++      kfree(net_device->send_section_map);
++
+       return ret;
+ }
+-static int netvsc_init_recv_buf(struct hv_device *device)
++static int netvsc_init_buf(struct hv_device *device)
+ {
+       int ret = 0;
+       int t;
+@@ -248,10 +301,90 @@ static int netvsc_init_recv_buf(struct hv_device *device)
+               goto cleanup;
+       }
++      /* Now setup the send buffer.
++       */
++      net_device->send_buf =
++              (void *)__get_free_pages(GFP_KERNEL|__GFP_ZERO,
++                                       get_order(net_device->send_buf_size));
++      if (!net_device->send_buf) {
++              netdev_err(ndev, "unable to allocate send "
++                         "buffer of size %d\n", net_device->send_buf_size);
++              ret = -ENOMEM;
++              goto cleanup;
++      }
++
++      /* Establish the gpadl handle for this buffer on this
++       * channel.  Note: This call uses the vmbus connection rather
++       * than the channel to establish the gpadl handle.
++       */
++      ret = vmbus_establish_gpadl(device->channel, net_device->send_buf,
++                                  net_device->send_buf_size,
++                                  &net_device->send_buf_gpadl_handle);
++      if (ret != 0) {
++              netdev_err(ndev,
++                         "unable to establish send buffer's gpadl\n");
++              goto cleanup;
++      }
++
++      /* Notify the NetVsp of the gpadl handle */
++      init_packet = &net_device->channel_init_pkt;
++      memset(init_packet, 0, sizeof(struct nvsp_message));
++      init_packet->hdr.msg_type = NVSP_MSG1_TYPE_SEND_SEND_BUF;
++      init_packet->msg.v1_msg.send_recv_buf.gpadl_handle =
++              net_device->send_buf_gpadl_handle;
++      init_packet->msg.v1_msg.send_recv_buf.id = 0;
++
++      /* Send the gpadl notification request */
++      ret = vmbus_sendpacket(device->channel, init_packet,
++                             sizeof(struct nvsp_message),
++                             (unsigned long)init_packet,
++                             VM_PKT_DATA_INBAND,
++                             VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED);
++      if (ret != 0) {
++              netdev_err(ndev,
++                         "unable to send send buffer's gpadl to netvsp\n");
++              goto cleanup;
++      }
++
++      t = wait_for_completion_timeout(&net_device->channel_init_wait, 5*HZ);
++      BUG_ON(t == 0);
++
++      /* Check the response */
++      if (init_packet->msg.v1_msg.
++          send_send_buf_complete.status != NVSP_STAT_SUCCESS) {
++              netdev_err(ndev, "Unable to complete send buffer "
++                         "initialization with NetVsp - status %d\n",
++                         init_packet->msg.v1_msg.
++                         send_recv_buf_complete.status);
++              ret = -EINVAL;
++              goto cleanup;
++      }
++
++      /* Parse the response */
++      net_device->send_section_size = init_packet->msg.
++                              v1_msg.send_send_buf_complete.section_size;
++
++      /* Section count is simply the size divided by the section size.
++       */
++      net_device->send_section_cnt =
++              net_device->send_buf_size/net_device->send_section_size;
++
++      dev_info(&device->device, "Send section size: %d, Section count:%d\n",
++               net_device->send_section_size, net_device->send_section_cnt);
++
++      /* Setup state for managing the send buffer. */
++      net_device->map_words = DIV_ROUND_UP(net_device->send_section_cnt,
++                                           BITS_PER_LONG);
++
++      net_device->send_section_map =
++              kzalloc(net_device->map_words * sizeof(ulong), GFP_KERNEL);
++      if (net_device->send_section_map == NULL)
++              goto cleanup;
++
+       goto exit;
+ cleanup:
+-      netvsc_destroy_recv_buf(net_device);
++      netvsc_destroy_buf(net_device);
+ exit:
+       return ret;
+@@ -369,8 +502,9 @@ static int netvsc_connect_vsp(struct hv_device *device)
+               net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE_LEGACY;
+       else
+               net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE;
++      net_device->send_buf_size = NETVSC_SEND_BUFFER_SIZE;
+-      ret = netvsc_init_recv_buf(device);
++      ret = netvsc_init_buf(device);
+ cleanup:
+       return ret;
+@@ -378,7 +512,7 @@ cleanup:
+ static void netvsc_disconnect_vsp(struct netvsc_device *net_device)
+ {
+-      netvsc_destroy_recv_buf(net_device);
++      netvsc_destroy_buf(net_device);
+ }
+ /*
+@@ -440,6 +574,12 @@ static inline u32 hv_ringbuf_avail_percent(
+       return avail_write * 100 / ring_info->ring_datasize;
+ }
++static inline void netvsc_free_send_slot(struct netvsc_device *net_device,
++                                       u32 index)
++{
++      sync_change_bit(index, net_device->send_section_map);
++}
++
+ static void netvsc_send_completion(struct netvsc_device *net_device,
+                                  struct hv_device *device,
+                                  struct vmpacket_descriptor *packet)
+@@ -447,6 +587,7 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+       struct nvsp_message *nvsp_packet;
+       struct hv_netvsc_packet *nvsc_packet;
+       struct net_device *ndev;
++      u32 send_index;
+       ndev = net_device->ndev;
+@@ -477,6 +618,9 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+               /* Notify the layer above us */
+               if (nvsc_packet) {
++                      send_index = nvsc_packet->send_buf_index;
++                      if (send_index != NETVSC_INVALID_INDEX)
++                              netvsc_free_send_slot(net_device, send_index);
+                       q_idx = nvsc_packet->q_idx;
+                       channel = nvsc_packet->channel;
+                       nvsc_packet->send_completion(nvsc_packet->
+@@ -504,6 +648,52 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+ }
++static u32 netvsc_get_next_send_section(struct netvsc_device *net_device)
++{
++      unsigned long index;
++      u32 max_words = net_device->map_words;
++      unsigned long *map_addr = (unsigned long *)net_device->send_section_map;
++      u32 section_cnt = net_device->send_section_cnt;
++      int ret_val = NETVSC_INVALID_INDEX;
++      int i;
++      int prev_val;
++
++      for (i = 0; i < max_words; i++) {
++              if (!~(map_addr[i]))
++                      continue;
++              index = ffz(map_addr[i]);
++              prev_val = sync_test_and_set_bit(index, &map_addr[i]);
++              if (prev_val)
++                      continue;
++              if ((index + (i * BITS_PER_LONG)) >= section_cnt)
++                      break;
++              ret_val = (index + (i * BITS_PER_LONG));
++              break;
++      }
++      return ret_val;
++}
++
++u32 netvsc_copy_to_send_buf(struct netvsc_device *net_device,
++                          unsigned int section_index,
++                          struct hv_netvsc_packet *packet)
++{
++      char *start = net_device->send_buf;
++      char *dest = (start + (section_index * net_device->send_section_size));
++      int i;
++      u32 msg_size = 0;
++
++      for (i = 0; i < packet->page_buf_cnt; i++) {
++              char *src = phys_to_virt(packet->page_buf[i].pfn << PAGE_SHIFT);
++              u32 offset = packet->page_buf[i].offset;
++              u32 len = packet->page_buf[i].len;
++
++              memcpy(dest, (src + offset), len);
++              msg_size += len;
++              dest += len;
++      }
++      return msg_size;
++}
++
+ int netvsc_send(struct hv_device *device,
+                       struct hv_netvsc_packet *packet)
+ {
+@@ -513,6 +703,10 @@ int netvsc_send(struct hv_device *device,
+       struct net_device *ndev;
+       struct vmbus_channel *out_channel = NULL;
+       u64 req_id;
++      unsigned int section_index = NETVSC_INVALID_INDEX;
++      u32 msg_size = 0;
++      struct sk_buff *skb;
++
+       net_device = get_outbound_net_device(device);
+       if (!net_device)
+@@ -528,10 +722,26 @@ int netvsc_send(struct hv_device *device,
+               sendMessage.msg.v1_msg.send_rndis_pkt.channel_type = 1;
+       }
+-      /* Not using send buffer section */
++      /* Attempt to send via sendbuf */
++      if (packet->total_data_buflen < net_device->send_section_size) {
++              section_index = netvsc_get_next_send_section(net_device);
++              if (section_index != NETVSC_INVALID_INDEX) {
++                      msg_size = netvsc_copy_to_send_buf(net_device,
++                                                         section_index,
++                                                         packet);
++                      skb = (struct sk_buff *)
++                            (unsigned long)packet->send_completion_tid;
++                      if (skb)
++                              dev_kfree_skb_any(skb);
++                      packet->page_buf_cnt = 0;
++              }
++      }
++      packet->send_buf_index = section_index;
++
++
+       sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_index =
+-              0xFFFFFFFF;
+-      sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_size = 0;
++              section_index;
++      sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_size = msg_size;
+       if (packet->send_completion)
+               req_id = (ulong)packet;
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index c76b66515e92..939e3af60ec4 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -236,10 +236,11 @@ static void netvsc_xmit_completion(void *context)
+       struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
+       struct sk_buff *skb = (struct sk_buff *)
+               (unsigned long)packet->send_completion_tid;
++      u32 index = packet->send_buf_index;
+       kfree(packet);
+-      if (skb)
++      if (skb && (index == NETVSC_INVALID_INDEX))
+               dev_kfree_skb_any(skb);
+ }
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0005-Add-support-for-netvsc-build-without-CONFIG_SYSFS-fl.patch b/src/patches/linux/0005-Add-support-for-netvsc-build-without-CONFIG_SYSFS-fl.patch
new file mode 100644 (file)
index 0000000..4d00ad2
--- /dev/null
@@ -0,0 +1,42 @@
+From e565e803d437b36c4fb4ced5e346827981183284 Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Thu, 8 May 2014 15:14:10 -0700
+Subject: [PATCH 05/11] Add support for netvsc build without CONFIG_SYSFS flag
+
+This change ensures the driver can be built successfully without the
+CONFIG_SYSFS flag.
+MS-TFS: 182270
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc_drv.c | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 939e3af60ec4..083d084396d3 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -640,8 +640,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+                                      packet->vlan_tci);
+       skb_record_rx_queue(skb, packet->channel->
+-                          offermsg.offer.sub_channel_index %
+-                          net->real_num_rx_queues);
++                          offermsg.offer.sub_channel_index);
+       net->stats.rx_packets++;
+       net->stats.rx_bytes += packet->total_data_buflen;
+@@ -824,8 +823,6 @@ static int netvsc_probe(struct hv_device *dev,
+       nvdev = hv_get_drvdata(dev);
+       netif_set_real_num_tx_queues(net, nvdev->num_chn);
+       netif_set_real_num_rx_queues(net, nvdev->num_chn);
+-      dev_info(&dev->device, "real num tx,rx queues:%u, %u\n",
+-               net->real_num_tx_queues, net->real_num_rx_queues);
+       ret = register_netdev(net);
+       if (ret != 0) {
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0005-Drivers-net-hyperv-Enable-scatter-gather-I-O.patch b/src/patches/linux/0005-Drivers-net-hyperv-Enable-scatter-gather-I-O.patch
new file mode 100644 (file)
index 0000000..27fb2d9
--- /dev/null
@@ -0,0 +1,212 @@
+From 4c06034001e20ff9f6e2a1a3dfa155bf3f31440c Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sat, 8 Mar 2014 19:23:13 -0800
+Subject: [PATCH 05/25] Drivers: net: hyperv: Enable scatter gather I/O
+
+Cleanup the code and enable scatter gather I/O.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc_drv.c | 153 ++++++++++++++++++++++++++++++----------
+ 1 file changed, 114 insertions(+), 39 deletions(-)
+
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 8e3a0b00099b..72961741be54 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -140,22 +140,124 @@ static void netvsc_xmit_completion(void *context)
+               dev_kfree_skb_any(skb);
+ }
++static u32 fill_pg_buf(struct page *page, u32 offset, u32 len,
++                      struct hv_page_buffer *pb)
++{
++      int j = 0;
++
++      /* Deal with compund pages by ignoring unused part
++       * of the page.
++       */
++      page += (offset >> PAGE_SHIFT);
++      offset &= ~PAGE_MASK;
++
++      while (len > 0) {
++              unsigned long bytes;
++
++              bytes = PAGE_SIZE - offset;
++              if (bytes > len)
++                      bytes = len;
++              pb[j].pfn = page_to_pfn(page);
++              pb[j].offset = offset;
++              pb[j].len = bytes;
++
++              offset += bytes;
++              len -= bytes;
++
++              if (offset == PAGE_SIZE && len) {
++                      page++;
++                      offset = 0;
++                      j++;
++              }
++      }
++
++      return j + 1;
++}
++
++static void init_page_array(void *hdr, u32 len, struct sk_buff *skb,
++                          struct hv_page_buffer *pb)
++{
++      u32 slots_used = 0;
++      char *data = skb->data;
++      int frags = skb_shinfo(skb)->nr_frags;
++      int i;
++
++      /* The packet is laid out thus:
++       * 1. hdr
++       * 2. skb linear data
++       * 3. skb fragment data
++       */
++      if (hdr != NULL)
++              slots_used += fill_pg_buf(virt_to_page(hdr),
++                                      offset_in_page(hdr),
++                                      len, &pb[slots_used]);
++
++      slots_used += fill_pg_buf(virt_to_page(data),
++                              offset_in_page(data),
++                              skb_headlen(skb), &pb[slots_used]);
++
++      for (i = 0; i < frags; i++) {
++              skb_frag_t *frag = skb_shinfo(skb)->frags + i;
++
++              slots_used += fill_pg_buf(skb_frag_page(frag),
++                                      frag->page_offset,
++                                      skb_frag_size(frag), &pb[slots_used]);
++      }
++}
++
++static int count_skb_frag_slots(struct sk_buff *skb)
++{
++      int i, frags = skb_shinfo(skb)->nr_frags;
++      int pages = 0;
++
++      for (i = 0; i < frags; i++) {
++              skb_frag_t *frag = skb_shinfo(skb)->frags + i;
++              unsigned long size = skb_frag_size(frag);
++              unsigned long offset = frag->page_offset;
++
++              /* Skip unused frames from start of page */
++              offset &= ~PAGE_MASK;
++              pages += PFN_UP(offset + size);
++      }
++      return pages;
++}
++
++static int netvsc_get_slots(struct sk_buff *skb)
++{
++      char *data = skb->data;
++      unsigned int offset = offset_in_page(data);
++      unsigned int len = skb_headlen(skb);
++      int slots;
++      int frag_slots;
++
++      slots = DIV_ROUND_UP(offset + len, PAGE_SIZE);
++      frag_slots = count_skb_frag_slots(skb);
++      return slots + frag_slots;
++}
++
+ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+ {
+       struct net_device_context *net_device_ctx = netdev_priv(net);
+       struct hv_netvsc_packet *packet;
+       int ret;
+-      unsigned int i, num_pages, npg_data;
++      unsigned int num_data_pages;
+       u32 skb_length = skb->len;
+-      /* Add multipages for skb->data and additional 2 for RNDIS */
+-      npg_data = (((unsigned long)skb->data + skb_headlen(skb) - 1)
+-              >> PAGE_SHIFT) - ((unsigned long)skb->data >> PAGE_SHIFT) + 1;
+-      num_pages = skb_shinfo(skb)->nr_frags + npg_data + 2;
++      /* We will atmost need two pages to describe the rndis
++       * header. We can only transmit MAX_PAGE_BUFFER_COUNT number
++       * of pages in a single packet.
++       */
++      num_data_pages = netvsc_get_slots(skb) + 2;
++      if (num_data_pages > MAX_PAGE_BUFFER_COUNT) {
++              netdev_err(net, "Packet too big: %u\n", skb->len);
++              dev_kfree_skb(skb);
++              net->stats.tx_dropped++;
++              return NETDEV_TX_OK;
++      }
+       /* Allocate a netvsc packet based on # of frags. */
+       packet = kzalloc(sizeof(struct hv_netvsc_packet) +
+-                       (num_pages * sizeof(struct hv_page_buffer)) +
++                       (num_data_pages * sizeof(struct hv_page_buffer)) +
+                        sizeof(struct rndis_message) +
+                        NDIS_VLAN_PPI_SIZE, GFP_ATOMIC);
+       if (!packet) {
+@@ -170,44 +272,17 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       packet->vlan_tci = skb->vlan_tci;
+       packet->extension = (void *)(unsigned long)packet +
+-                              sizeof(struct hv_netvsc_packet) +
+-                                  (num_pages * sizeof(struct hv_page_buffer));
++                      sizeof(struct hv_netvsc_packet) +
++                      (num_data_pages * sizeof(struct hv_page_buffer));
+       /* If the rndis msg goes beyond 1 page, we will add 1 later */
+-      packet->page_buf_cnt = num_pages - 1;
++      packet->page_buf_cnt = num_data_pages - 1;
+       /* Initialize it from the skb */
+       packet->total_data_buflen = skb->len;
+       /* Start filling in the page buffers starting after RNDIS buffer. */
+-      packet->page_buf[1].pfn = virt_to_phys(skb->data) >> PAGE_SHIFT;
+-      packet->page_buf[1].offset
+-              = (unsigned long)skb->data & (PAGE_SIZE - 1);
+-      if (npg_data == 1)
+-              packet->page_buf[1].len = skb_headlen(skb);
+-      else
+-              packet->page_buf[1].len = PAGE_SIZE
+-                      - packet->page_buf[1].offset;
+-
+-      for (i = 2; i <= npg_data; i++) {
+-              packet->page_buf[i].pfn = virt_to_phys(skb->data
+-                      + PAGE_SIZE * (i-1)) >> PAGE_SHIFT;
+-              packet->page_buf[i].offset = 0;
+-              packet->page_buf[i].len = PAGE_SIZE;
+-      }
+-      if (npg_data > 1)
+-              packet->page_buf[npg_data].len = (((unsigned long)skb->data
+-                      + skb_headlen(skb) - 1) & (PAGE_SIZE - 1)) + 1;
+-
+-      /* Additional fragments are after SKB data */
+-      for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) {
+-              const skb_frag_t *f = &skb_shinfo(skb)->frags[i];
+-
+-              packet->page_buf[i+npg_data+1].pfn =
+-                      page_to_pfn(skb_frag_page(f));
+-              packet->page_buf[i+npg_data+1].offset = f->page_offset;
+-              packet->page_buf[i+npg_data+1].len = skb_frag_size(f);
+-      }
++      init_page_array(NULL, 0, skb, &packet->page_buf[1]);
+       /* Set the completion routine */
+       packet->completion.send.send_completion = netvsc_xmit_completion;
+@@ -454,8 +529,8 @@ static int netvsc_probe(struct hv_device *dev,
+       net->netdev_ops = &device_ops;
+       /* TODO: Add GSO and Checksum offload */
+-      net->hw_features = 0;
+-      net->features = NETIF_F_HW_VLAN_CTAG_TX;
++      net->hw_features = NETIF_F_SG;
++      net->features = NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_SG;
+       SET_ETHTOOL_OPS(net, &ethtool_ops);
+       SET_NETDEV_DEV(net, &dev->device);
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0006-Drivers-net-hyperv-Cleanup-the-send-path.patch b/src/patches/linux/0006-Drivers-net-hyperv-Cleanup-the-send-path.patch
new file mode 100644 (file)
index 0000000..20fcb3f
--- /dev/null
@@ -0,0 +1,266 @@
+From d972eb71fb95660fe74616901b55b0d7a336daed Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sat, 8 Mar 2014 19:23:14 -0800
+Subject: [PATCH 06/25] Drivers: net: hyperv: Cleanup the send path
+
+In preparation for enabling offloads, cleanup the send path.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   |  7 +---
+ drivers/net/hyperv/netvsc_drv.c   | 88 +++++++++++++++++++++++++++++++--------
+ drivers/net/hyperv/rndis_filter.c | 66 -----------------------------
+ 3 files changed, 71 insertions(+), 90 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 39fc230f5c20..694bf7cada90 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -73,7 +73,7 @@ struct hv_netvsc_packet {
+       } completion;
+       /* This points to the memory after page_buf */
+-      void *extension;
++      struct rndis_message *rndis_msg;
+       u32 total_data_buflen;
+       /* Points to the send/receive buffer where the ethernet frame is */
+@@ -126,11 +126,6 @@ void rndis_filter_device_remove(struct hv_device *dev);
+ int rndis_filter_receive(struct hv_device *dev,
+                       struct hv_netvsc_packet *pkt);
+-
+-
+-int rndis_filter_send(struct hv_device *dev,
+-                      struct hv_netvsc_packet *pkt);
+-
+ int rndis_filter_set_packet_filter(struct rndis_device *dev, u32 new_filter);
+ int rndis_filter_set_device_mac(struct hv_device *hdev, char *mac);
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 72961741be54..87293a15e470 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -128,6 +128,27 @@ static int netvsc_close(struct net_device *net)
+       return ret;
+ }
++static void *init_ppi_data(struct rndis_message *msg, u32 ppi_size,
++                              int pkt_type)
++{
++      struct rndis_packet *rndis_pkt;
++      struct rndis_per_packet_info *ppi;
++
++      rndis_pkt = &msg->msg.pkt;
++      rndis_pkt->data_offset += ppi_size;
++
++      ppi = (struct rndis_per_packet_info *)((void *)rndis_pkt +
++              rndis_pkt->per_pkt_info_offset + rndis_pkt->per_pkt_info_len);
++
++      ppi->size = ppi_size;
++      ppi->type = pkt_type;
++      ppi->ppi_offset = sizeof(struct rndis_per_packet_info);
++
++      rndis_pkt->per_pkt_info_len += ppi_size;
++
++      return ppi;
++}
++
+ static void netvsc_xmit_completion(void *context)
+ {
+       struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
+@@ -174,8 +195,8 @@ static u32 fill_pg_buf(struct page *page, u32 offset, u32 len,
+       return j + 1;
+ }
+-static void init_page_array(void *hdr, u32 len, struct sk_buff *skb,
+-                          struct hv_page_buffer *pb)
++static u32 init_page_array(void *hdr, u32 len, struct sk_buff *skb,
++                         struct hv_page_buffer *pb)
+ {
+       u32 slots_used = 0;
+       char *data = skb->data;
+@@ -203,6 +224,7 @@ static void init_page_array(void *hdr, u32 len, struct sk_buff *skb,
+                                       frag->page_offset,
+                                       skb_frag_size(frag), &pb[slots_used]);
+       }
++      return slots_used;
+ }
+ static int count_skb_frag_slots(struct sk_buff *skb)
+@@ -240,15 +262,20 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       struct net_device_context *net_device_ctx = netdev_priv(net);
+       struct hv_netvsc_packet *packet;
+       int ret;
+-      unsigned int num_data_pages;
+       u32 skb_length = skb->len;
++      unsigned int num_data_pgs;
++      struct rndis_message *rndis_msg;
++      struct rndis_packet *rndis_pkt;
++      u32 rndis_msg_size;
++      bool isvlan;
++      struct rndis_per_packet_info *ppi;
+       /* We will atmost need two pages to describe the rndis
+        * header. We can only transmit MAX_PAGE_BUFFER_COUNT number
+        * of pages in a single packet.
+        */
+-      num_data_pages = netvsc_get_slots(skb) + 2;
+-      if (num_data_pages > MAX_PAGE_BUFFER_COUNT) {
++      num_data_pgs = netvsc_get_slots(skb) + 2;
++      if (num_data_pgs > MAX_PAGE_BUFFER_COUNT) {
+               netdev_err(net, "Packet too big: %u\n", skb->len);
+               dev_kfree_skb(skb);
+               net->stats.tx_dropped++;
+@@ -257,7 +284,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       /* Allocate a netvsc packet based on # of frags. */
+       packet = kzalloc(sizeof(struct hv_netvsc_packet) +
+-                       (num_data_pages * sizeof(struct hv_page_buffer)) +
++                       (num_data_pgs * sizeof(struct hv_page_buffer)) +
+                        sizeof(struct rndis_message) +
+                        NDIS_VLAN_PPI_SIZE, GFP_ATOMIC);
+       if (!packet) {
+@@ -271,26 +298,51 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       packet->vlan_tci = skb->vlan_tci;
+-      packet->extension = (void *)(unsigned long)packet +
+-                      sizeof(struct hv_netvsc_packet) +
+-                      (num_data_pages * sizeof(struct hv_page_buffer));
+-
+-      /* If the rndis msg goes beyond 1 page, we will add 1 later */
+-      packet->page_buf_cnt = num_data_pages - 1;
+-
+-      /* Initialize it from the skb */
++      packet->is_data_pkt = true;
+       packet->total_data_buflen = skb->len;
+-      /* Start filling in the page buffers starting after RNDIS buffer. */
+-      init_page_array(NULL, 0, skb, &packet->page_buf[1]);
++      packet->rndis_msg = (struct rndis_message *)((unsigned long)packet +
++                              sizeof(struct hv_netvsc_packet) +
++                              (num_data_pgs * sizeof(struct hv_page_buffer)));
+       /* Set the completion routine */
+       packet->completion.send.send_completion = netvsc_xmit_completion;
+       packet->completion.send.send_completion_ctx = packet;
+       packet->completion.send.send_completion_tid = (unsigned long)skb;
+-      ret = rndis_filter_send(net_device_ctx->device_ctx,
+-                                packet);
++      isvlan = packet->vlan_tci & VLAN_TAG_PRESENT;
++
++      /* Add the rndis header */
++      rndis_msg = packet->rndis_msg;
++      rndis_msg->ndis_msg_type = RNDIS_MSG_PACKET;
++      rndis_msg->msg_len = packet->total_data_buflen;
++      rndis_pkt = &rndis_msg->msg.pkt;
++      rndis_pkt->data_offset = sizeof(struct rndis_packet);
++      rndis_pkt->data_len = packet->total_data_buflen;
++      rndis_pkt->per_pkt_info_offset = sizeof(struct rndis_packet);
++
++      rndis_msg_size = RNDIS_MESSAGE_SIZE(struct rndis_packet);
++
++      if (isvlan) {
++              struct ndis_pkt_8021q_info *vlan;
++
++              rndis_msg_size += NDIS_VLAN_PPI_SIZE;
++              ppi = init_ppi_data(rndis_msg, NDIS_VLAN_PPI_SIZE,
++                                      IEEE_8021Q_INFO);
++              vlan = (struct ndis_pkt_8021q_info *)((void *)ppi +
++                                              ppi->ppi_offset);
++              vlan->vlanid = packet->vlan_tci & VLAN_VID_MASK;
++              vlan->pri = (packet->vlan_tci & VLAN_PRIO_MASK) >>
++                              VLAN_PRIO_SHIFT;
++      }
++
++      /* Start filling in the page buffers with the rndis hdr */
++      rndis_msg->msg_len += rndis_msg_size;
++      packet->page_buf_cnt = init_page_array(rndis_msg, rndis_msg_size,
++                                      skb, &packet->page_buf[0]);
++
++      ret = netvsc_send(net_device_ctx->device_ctx, packet);
++
+       if (ret == 0) {
+               net->stats.tx_bytes += skb_length;
+               net->stats.tx_packets++;
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index 6a9f6021f09c..dcbf144ea7da 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -910,69 +910,3 @@ int rndis_filter_close(struct hv_device *dev)
+       return rndis_filter_close_device(nvdev->extension);
+ }
+-
+-int rndis_filter_send(struct hv_device *dev,
+-                           struct hv_netvsc_packet *pkt)
+-{
+-      struct rndis_message *rndis_msg;
+-      struct rndis_packet *rndis_pkt;
+-      u32 rndis_msg_size;
+-      bool isvlan = pkt->vlan_tci & VLAN_TAG_PRESENT;
+-
+-      /* Add the rndis header */
+-      rndis_msg = (struct rndis_message *)pkt->extension;
+-
+-      rndis_msg_size = RNDIS_MESSAGE_SIZE(struct rndis_packet);
+-      if (isvlan)
+-              rndis_msg_size += NDIS_VLAN_PPI_SIZE;
+-
+-      rndis_msg->ndis_msg_type = RNDIS_MSG_PACKET;
+-      rndis_msg->msg_len = pkt->total_data_buflen +
+-                                    rndis_msg_size;
+-
+-      rndis_pkt = &rndis_msg->msg.pkt;
+-      rndis_pkt->data_offset = sizeof(struct rndis_packet);
+-      if (isvlan)
+-              rndis_pkt->data_offset += NDIS_VLAN_PPI_SIZE;
+-      rndis_pkt->data_len = pkt->total_data_buflen;
+-
+-      if (isvlan) {
+-              struct rndis_per_packet_info *ppi;
+-              struct ndis_pkt_8021q_info *vlan;
+-
+-              rndis_pkt->per_pkt_info_offset = sizeof(struct rndis_packet);
+-              rndis_pkt->per_pkt_info_len = NDIS_VLAN_PPI_SIZE;
+-
+-              ppi = (struct rndis_per_packet_info *)((ulong)rndis_pkt +
+-                      rndis_pkt->per_pkt_info_offset);
+-              ppi->size = NDIS_VLAN_PPI_SIZE;
+-              ppi->type = IEEE_8021Q_INFO;
+-              ppi->ppi_offset = sizeof(struct rndis_per_packet_info);
+-
+-              vlan = (struct ndis_pkt_8021q_info *)((ulong)ppi +
+-                      ppi->ppi_offset);
+-              vlan->vlanid = pkt->vlan_tci & VLAN_VID_MASK;
+-              vlan->pri = (pkt->vlan_tci & VLAN_PRIO_MASK) >> VLAN_PRIO_SHIFT;
+-      }
+-
+-      pkt->is_data_pkt = true;
+-      pkt->page_buf[0].pfn = virt_to_phys(rndis_msg) >> PAGE_SHIFT;
+-      pkt->page_buf[0].offset =
+-                      (unsigned long)rndis_msg & (PAGE_SIZE-1);
+-      pkt->page_buf[0].len = rndis_msg_size;
+-
+-      /* Add one page_buf if the rndis msg goes beyond page boundary */
+-      if (pkt->page_buf[0].offset + rndis_msg_size > PAGE_SIZE) {
+-              int i;
+-              for (i = pkt->page_buf_cnt; i > 1; i--)
+-                      pkt->page_buf[i] = pkt->page_buf[i-1];
+-              pkt->page_buf_cnt++;
+-              pkt->page_buf[0].len = PAGE_SIZE - pkt->page_buf[0].offset;
+-              pkt->page_buf[1].pfn = virt_to_phys((void *)((ulong)
+-                      rndis_msg + pkt->page_buf[0].len)) >> PAGE_SHIFT;
+-              pkt->page_buf[1].offset = 0;
+-              pkt->page_buf[1].len = rndis_msg_size - pkt->page_buf[0].len;
+-      }
+-
+-      return netvsc_send(dev, pkt);
+-}
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0006-net-get-rid-of-SET_ETHTOOL_OPS.patch b/src/patches/linux/0006-net-get-rid-of-SET_ETHTOOL_OPS.patch
new file mode 100644 (file)
index 0000000..e4a7a46
--- /dev/null
@@ -0,0 +1,44 @@
+From 7ad24ea4bf620a32631d7b3069c3e30c078b0c3e Mon Sep 17 00:00:00 2001
+From: Wilfried Klaebe <w-lkml@lebenslange-mailadresse.de>
+Date: Sun, 11 May 2014 00:12:32 +0000
+Subject: [PATCH 06/11] net: get rid of SET_ETHTOOL_OPS
+
+net: get rid of SET_ETHTOOL_OPS
+
+Dave Miller mentioned he'd like to see SET_ETHTOOL_OPS gone.
+This does that.
+
+Mostly done via coccinelle script:
+@@
+struct ethtool_ops *ops;
+struct net_device *dev;
+@@
+-       SET_ETHTOOL_OPS(dev, ops);
++       dev->ethtool_ops = ops;
+
+Compile tested only, but I'd seriously wonder if this broke anything.
+
+Suggested-by: Dave Miller <davem@davemloft.net>
+Signed-off-by: Wilfried Klaebe <w-lkml@lebenslange-mailadresse.de>
+Acked-by: Felipe Balbi <balbi@ti.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc_drv.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 1de3ef5dd5d2..2e967a7bdb33 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -810,7 +810,7 @@ static int netvsc_probe(struct hv_device *dev,
+       net->features = NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_SG | NETIF_F_RXCSUM |
+                       NETIF_F_IP_CSUM | NETIF_F_TSO;
+-      SET_ETHTOOL_OPS(net, &ethtool_ops);
++      net->ethtool_ops = &ethtool_ops;
+       SET_NETDEV_DEV(net, &dev->device);
+       /* Notify the netvsc driver of the new device */
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0007-Drivers-net-hyperv-Enable-offloads-on-the-host.patch b/src/patches/linux/0007-Drivers-net-hyperv-Enable-offloads-on-the-host.patch
new file mode 100644 (file)
index 0000000..a109f04
--- /dev/null
@@ -0,0 +1,196 @@
+From 6b15b5f37e976a5f3840c7ea59560e10c6251250 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sat, 8 Mar 2014 19:23:15 -0800
+Subject: [PATCH 07/25] Drivers: net: hyperv: Enable offloads on the host
+
+Prior to enabling guest side offloads, enable the offloads on the host.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   | 55 +++++++++++++++++++++++++++
+ drivers/net/hyperv/rndis_filter.c | 80 +++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 135 insertions(+)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 694bf7cada90..8bc4e766589b 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -721,6 +721,61 @@ struct ndis_pkt_8021q_info {
+       };
+ };
++struct ndis_oject_header {
++      u8 type;
++      u8 revision;
++      u16 size;
++};
++
++#define NDIS_OBJECT_TYPE_DEFAULT      0x80
++#define NDIS_OFFLOAD_PARAMETERS_REVISION_3 3
++#define NDIS_OFFLOAD_PARAMETERS_NO_CHANGE 0
++#define NDIS_OFFLOAD_PARAMETERS_LSOV2_DISABLED 1
++#define NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED  2
++#define NDIS_OFFLOAD_PARAMETERS_LSOV1_ENABLED  2
++#define NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED 1
++#define NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED 2
++#define NDIS_OFFLOAD_PARAMETERS_TX_RX_DISABLED 1
++#define NDIS_OFFLOAD_PARAMETERS_TX_ENABLED_RX_DISABLED 2
++#define NDIS_OFFLOAD_PARAMETERS_RX_ENABLED_TX_DISABLED 3
++#define NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED 4
++
++/*
++ * New offload OIDs for NDIS 6
++ */
++#define OID_TCP_OFFLOAD_CURRENT_CONFIG 0xFC01020B /* query only */
++#define OID_TCP_OFFLOAD_PARAMETERS 0xFC01020C         /* set only */
++#define OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES 0xFC01020D/* query only */
++#define OID_TCP_CONNECTION_OFFLOAD_CURRENT_CONFIG 0xFC01020E /* query only */
++#define OID_TCP_CONNECTION_OFFLOAD_HARDWARE_CAPABILITIES 0xFC01020F /* query */
++#define OID_OFFLOAD_ENCAPSULATION 0x0101010A /* set/query */
++
++struct ndis_offload_params {
++      struct ndis_oject_header header;
++      u8 ip_v4_csum;
++      u8 tcp_ip_v4_csum;
++      u8 udp_ip_v4_csum;
++      u8 tcp_ip_v6_csum;
++      u8 udp_ip_v6_csum;
++      u8 lso_v1;
++      u8 ip_sec_v1;
++      u8 lso_v2_ipv4;
++      u8 lso_v2_ipv6;
++      u8 tcp_connection_ip_v4;
++      u8 tcp_connection_ip_v6;
++      u32 flags;
++      u8 ip_sec_v2;
++      u8 ip_sec_v2_ip_v4;
++      struct {
++              u8 rsc_ip_v4;
++              u8 rsc_ip_v6;
++      };
++      struct {
++              u8 encapsulated_packet_task_offload;
++              u8 encapsulation_types;
++      };
++};
++
+ #define NDIS_VLAN_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
+               sizeof(struct ndis_pkt_8021q_info))
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index dcbf144ea7da..9b02f21097a7 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -627,6 +627,61 @@ cleanup:
+       return ret;
+ }
++int rndis_filter_set_offload_params(struct hv_device *hdev,
++                              struct ndis_offload_params *req_offloads)
++{
++      struct netvsc_device *nvdev = hv_get_drvdata(hdev);
++      struct rndis_device *rdev = nvdev->extension;
++      struct net_device *ndev = nvdev->ndev;
++      struct rndis_request *request;
++      struct rndis_set_request *set;
++      struct ndis_offload_params *offload_params;
++      struct rndis_set_complete *set_complete;
++      u32 extlen = sizeof(struct ndis_offload_params);
++      int ret, t;
++
++      request = get_rndis_request(rdev, RNDIS_MSG_SET,
++              RNDIS_MESSAGE_SIZE(struct rndis_set_request) + extlen);
++      if (!request)
++              return -ENOMEM;
++
++      set = &request->request_msg.msg.set_req;
++      set->oid = OID_TCP_OFFLOAD_PARAMETERS;
++      set->info_buflen = extlen;
++      set->info_buf_offset = sizeof(struct rndis_set_request);
++      set->dev_vc_handle = 0;
++
++      offload_params = (struct ndis_offload_params *)((ulong)set +
++                              set->info_buf_offset);
++      *offload_params = *req_offloads;
++      offload_params->header.type = NDIS_OBJECT_TYPE_DEFAULT;
++      offload_params->header.revision = NDIS_OFFLOAD_PARAMETERS_REVISION_3;
++      offload_params->header.size = extlen;
++
++      ret = rndis_filter_send_request(rdev, request);
++      if (ret != 0)
++              goto cleanup;
++
++      t = wait_for_completion_timeout(&request->wait_event, 5*HZ);
++      if (t == 0) {
++              netdev_err(ndev, "timeout before we got aOFFLOAD set response...\n");
++              /* can't put_rndis_request, since we may still receive a
++               * send-completion.
++               */
++              return -EBUSY;
++      } else {
++              set_complete = &request->response_msg.msg.set_complete;
++              if (set_complete->status != RNDIS_STATUS_SUCCESS) {
++                      netdev_err(ndev, "Fail to set MAC on host side:0x%x\n",
++                                 set_complete->status);
++                      ret = -EINVAL;
++              }
++      }
++
++cleanup:
++      put_rndis_request(rdev, request);
++      return ret;
++}
+ static int rndis_filter_query_device_link_status(struct rndis_device *dev)
+ {
+@@ -826,6 +881,7 @@ int rndis_filter_device_add(struct hv_device *dev,
+       struct netvsc_device *net_device;
+       struct rndis_device *rndis_device;
+       struct netvsc_device_info *device_info = additional_info;
++      struct ndis_offload_params offloads;
+       rndis_device = get_rndis_device();
+       if (!rndis_device)
+@@ -865,6 +921,26 @@ int rndis_filter_device_add(struct hv_device *dev,
+       memcpy(device_info->mac_adr, rndis_device->hw_mac_adr, ETH_ALEN);
++      /* Turn on the offloads; the host supports all of the relevant
++       * offloads.
++       */
++      memset(&offloads, 0, sizeof(struct ndis_offload_params));
++      /* A value of zero means "no change"; now turn on what we
++       * want.
++       */
++      offloads.ip_v4_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED;
++      offloads.tcp_ip_v4_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED;
++      offloads.udp_ip_v4_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED;
++      offloads.tcp_ip_v6_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED;
++      offloads.udp_ip_v6_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED;
++      offloads.lso_v2_ipv4 = NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED;
++
++
++      ret = rndis_filter_set_offload_params(dev, &offloads);
++      if (ret)
++              goto err_dev_remv;
++
++
+       rndis_filter_query_device_link_status(rndis_device);
+       device_info->link_state = rndis_device->link_state;
+@@ -874,6 +950,10 @@ int rndis_filter_device_add(struct hv_device *dev,
+                device_info->link_state ? "down" : "up");
+       return ret;
++
++err_dev_remv:
++      rndis_filter_device_remove(dev);
++      return ret;
+ }
+ void rndis_filter_device_remove(struct hv_device *dev)
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0007-hyperv-Add-hash-value-into-RNDIS-Per-packet-info.patch b/src/patches/linux/0007-hyperv-Add-hash-value-into-RNDIS-Per-packet-info.patch
new file mode 100644 (file)
index 0000000..0db5f72
--- /dev/null
@@ -0,0 +1,93 @@
+From 307f099520b66504cf6c5638f3f404c48b9fb45b Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Wed, 21 May 2014 12:55:39 -0700
+Subject: [PATCH 07/11] hyperv: Add hash value into RNDIS Per-packet info
+
+It passes the hash value as the RNDIS Per-packet info to the Hyper-V host,
+so that the send completion notices can be spread across multiple channels.
+MS-TFS: 140273
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h |  4 ++++
+ drivers/net/hyperv/netvsc_drv.c | 18 ++++++++++++++----
+ 2 files changed, 18 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 4b7df5a5c966..6cc37c15e0bf 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -791,6 +791,7 @@ enum ndis_per_pkt_info_type {
+       IEEE_8021Q_INFO,
+       ORIGINAL_PKTINFO,
+       PACKET_CANCEL_ID,
++      NBL_HASH_VALUE = PACKET_CANCEL_ID,
+       ORIGINAL_NET_BUFLIST,
+       CACHED_NET_BUFLIST,
+       SHORT_PKT_PADINFO,
+@@ -937,6 +938,9 @@ struct ndis_tcp_lso_info {
+ #define NDIS_LSO_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
+               sizeof(struct ndis_tcp_lso_info))
++#define NDIS_HASH_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
++              sizeof(u32))
++
+ /* Format of Information buffer passed in a SetRequest for the OID */
+ /* OID_GEN_RNDIS_CONFIG_PARAMETER. */
+ struct rndis_config_parameter_info {
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 2e967a7bdb33..4fd71b75e666 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -224,9 +224,11 @@ static u16 netvsc_select_queue(struct net_device *ndev, struct sk_buff *skb,
+       if (nvsc_dev == NULL || ndev->real_num_tx_queues <= 1)
+               return 0;
+-      if (netvsc_set_hash(&hash, skb))
++      if (netvsc_set_hash(&hash, skb)) {
+               q_idx = nvsc_dev->send_table[hash % VRSS_SEND_TAB_SIZE] %
+                       ndev->real_num_tx_queues;
++              skb_set_hash(skb, hash, PKT_HASH_TYPE_L3);
++      }
+       return q_idx;
+ }
+@@ -384,6 +386,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       struct ndis_tcp_lso_info *lso_info;
+       int  hdr_offset;
+       u32 net_trans_info;
++      u32 hash;
+       /* We will atmost need two pages to describe the rndis
+@@ -402,9 +405,8 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       packet = kzalloc(sizeof(struct hv_netvsc_packet) +
+                        (num_data_pgs * sizeof(struct hv_page_buffer)) +
+                        sizeof(struct rndis_message) +
+-                       NDIS_VLAN_PPI_SIZE +
+-                       NDIS_CSUM_PPI_SIZE +
+-                       NDIS_LSO_PPI_SIZE, GFP_ATOMIC);
++                       NDIS_VLAN_PPI_SIZE + NDIS_CSUM_PPI_SIZE +
++                       NDIS_LSO_PPI_SIZE + NDIS_HASH_PPI_SIZE, GFP_ATOMIC);
+       if (!packet) {
+               /* out of memory, drop packet */
+               netdev_err(net, "unable to allocate hv_netvsc_packet\n");
+@@ -443,6 +445,14 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       rndis_msg_size = RNDIS_MESSAGE_SIZE(struct rndis_packet);
++      hash = skb_get_hash_raw(skb);
++      if (hash != 0 && net->real_num_tx_queues > 1) {
++              rndis_msg_size += NDIS_HASH_PPI_SIZE;
++              ppi = init_ppi_data(rndis_msg, NDIS_HASH_PPI_SIZE,
++                                  NBL_HASH_VALUE);
++              *(u32 *)((void *)ppi + ppi->ppi_offset) = hash;
++      }
++
+       if (isvlan) {
+               struct ndis_pkt_8021q_info *vlan;
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0008-Drivers-net-hyperv-Enable-receive-side-IP-checksum-o.patch b/src/patches/linux/0008-Drivers-net-hyperv-Enable-receive-side-IP-checksum-o.patch
new file mode 100644 (file)
index 0000000..e77e9f2
--- /dev/null
@@ -0,0 +1,147 @@
+From 59e0c70c618668522a9431686f7e3a69ef396dff Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sat, 8 Mar 2014 19:23:16 -0800
+Subject: [PATCH 08/25] Drivers: net: hyperv: Enable receive side IP checksum
+ offload
+
+Enable receive side checksum offload.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   | 33 ++++++++++++++++++++++++++++++++-
+ drivers/net/hyperv/netvsc_drv.c   | 19 +++++++++++++++----
+ drivers/net/hyperv/rndis_filter.c |  4 +++-
+ 3 files changed, 50 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 8bc4e766589b..faeb74623fbd 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -30,6 +30,7 @@
+ /* Fwd declaration */
+ struct hv_netvsc_packet;
++struct ndis_tcp_ip_checksum_info;
+ /* Represent the xfer page packet which contains 1 or more netvsc packet */
+ struct xferpage_packet {
+@@ -117,7 +118,8 @@ int netvsc_send(struct hv_device *device,
+ void netvsc_linkstatus_callback(struct hv_device *device_obj,
+                               unsigned int status);
+ int netvsc_recv_callback(struct hv_device *device_obj,
+-                      struct hv_netvsc_packet *packet);
++                      struct hv_netvsc_packet *packet,
++                      struct ndis_tcp_ip_checksum_info *csum_info);
+ int rndis_filter_open(struct hv_device *dev);
+ int rndis_filter_close(struct hv_device *dev);
+ int rndis_filter_device_add(struct hv_device *dev,
+@@ -776,9 +778,38 @@ struct ndis_offload_params {
+       };
+ };
++struct ndis_tcp_ip_checksum_info {
++      union {
++              struct {
++                      u32 is_ipv4:1;
++                      u32 is_ipv6:1;
++                      u32 tcp_checksum:1;
++                      u32 udp_checksum:1;
++                      u32 ip_header_checksum:1;
++                      u32 reserved:11;
++                      u32 tcp_header_offset:10;
++              } transmit;
++              struct {
++                      u32 tcp_checksum_failed:1;
++                      u32 udp_checksum_failed:1;
++                      u32 ip_checksum_failed:1;
++                      u32 tcp_checksum_succeeded:1;
++                      u32 udp_checksum_succeeded:1;
++                      u32 ip_checksum_succeeded:1;
++                      u32 loopback:1;
++                      u32 tcp_checksum_value_invalid:1;
++                      u32 ip_checksum_value_invalid:1;
++              } receive;
++              u32  value;
++      };
++};
++
+ #define NDIS_VLAN_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
+               sizeof(struct ndis_pkt_8021q_info))
++#define NDIS_CSUM_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
++              sizeof(struct ndis_tcp_ip_checksum_info))
++
+ /* Format of Information buffer passed in a SetRequest for the OID */
+ /* OID_GEN_RNDIS_CONFIG_PARAMETER. */
+ struct rndis_config_parameter_info {
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 87293a15e470..7438360b7a02 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -392,7 +392,8 @@ void netvsc_linkstatus_callback(struct hv_device *device_obj,
+  * "wire" on the specified device.
+  */
+ int netvsc_recv_callback(struct hv_device *device_obj,
+-                              struct hv_netvsc_packet *packet)
++                              struct hv_netvsc_packet *packet,
++                              struct ndis_tcp_ip_checksum_info *csum_info)
+ {
+       struct net_device *net;
+       struct sk_buff *skb;
+@@ -419,7 +420,17 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+               packet->total_data_buflen);
+       skb->protocol = eth_type_trans(skb, net);
+-      skb->ip_summed = CHECKSUM_NONE;
++      if (csum_info) {
++              /* We only look at the IP checksum here.
++               * Should we be dropping the packet if checksum
++               * failed? How do we deal with other checksums - TCP/UDP?
++               */
++              if (csum_info->receive.ip_checksum_succeeded)
++                      skb->ip_summed = CHECKSUM_UNNECESSARY;
++              else
++                      skb->ip_summed = CHECKSUM_NONE;
++      }
++
+       if (packet->vlan_tci & VLAN_TAG_PRESENT)
+               __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
+                                      packet->vlan_tci);
+@@ -581,8 +592,8 @@ static int netvsc_probe(struct hv_device *dev,
+       net->netdev_ops = &device_ops;
+       /* TODO: Add GSO and Checksum offload */
+-      net->hw_features = NETIF_F_SG;
+-      net->features = NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_SG;
++      net->hw_features = NETIF_F_RXCSUM | NETIF_F_SG;
++      net->features = NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_SG | NETIF_F_RXCSUM;
+       SET_ETHTOOL_OPS(net, &ethtool_ops);
+       SET_NETDEV_DEV(net, &dev->device);
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index 9b02f21097a7..4a37e3db9e32 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -370,6 +370,7 @@ static void rndis_filter_receive_data(struct rndis_device *dev,
+       struct rndis_packet *rndis_pkt;
+       u32 data_offset;
+       struct ndis_pkt_8021q_info *vlan;
++      struct ndis_tcp_ip_checksum_info *csum_info;
+       rndis_pkt = &msg->msg.pkt;
+@@ -408,7 +409,8 @@ static void rndis_filter_receive_data(struct rndis_device *dev,
+               pkt->vlan_tci = 0;
+       }
+-      netvsc_recv_callback(dev->net_dev->dev, pkt);
++      csum_info = rndis_get_ppi(rndis_pkt, TCPIP_CHKSUM_PKTINFO);
++      netvsc_recv_callback(dev->net_dev->dev, pkt, csum_info);
+ }
+ int rndis_filter_receive(struct hv_device *dev,
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0008-hyperv-fix-apparent-cut-n-paste-error-in-send-path-t.patch b/src/patches/linux/0008-hyperv-fix-apparent-cut-n-paste-error-in-send-path-t.patch
new file mode 100644 (file)
index 0000000..b774f81
--- /dev/null
@@ -0,0 +1,32 @@
+From 2f18423d7ebf8044a9edaca840be5ae199fb32f6 Mon Sep 17 00:00:00 2001
+From: Dave Jones <davej@redhat.com>
+Date: Mon, 16 Jun 2014 16:59:02 -0400
+Subject: [PATCH 08/11] hyperv: fix apparent cut-n-paste error in send path
+ teardown
+
+c25aaf814a63: "hyperv: Enable sendbuf mechanism on the send path" added
+some teardown code that looks like it was copied from the recieve path
+above, but missed a variable name replacement.
+
+Signed-off-by: Dave Jones <davej@redhat.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index c041f63a6d30..4ed38eaecea8 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -189,7 +189,7 @@ static int netvsc_destroy_buf(struct netvsc_device *net_device)
+                                  "unable to teardown send buffer's gpadl\n");
+                       return ret;
+               }
+-              net_device->recv_buf_gpadl_handle = 0;
++              net_device->send_buf_gpadl_handle = 0;
+       }
+       if (net_device->send_buf) {
+               /* Free up the receive buffer */
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0009-Drivers-net-hyperv-Enable-send-side-checksum-offload.patch b/src/patches/linux/0009-Drivers-net-hyperv-Enable-send-side-checksum-offload.patch
new file mode 100644 (file)
index 0000000..db42108
--- /dev/null
@@ -0,0 +1,140 @@
+From d2a0be7f4263eb669af84240c5424a72cce4cdb4 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sat, 8 Mar 2014 19:23:17 -0800
+Subject: [PATCH 09/25] Drivers: net: hyperv: Enable send side checksum offload
+
+Enable send side checksum offload.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h | 10 ++++++
+ drivers/net/hyperv/netvsc_drv.c | 69 +++++++++++++++++++++++++++++++++++++++--
+ 2 files changed, 77 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index faeb74623fbd..4cf238234321 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -1035,6 +1035,16 @@ struct rndis_message {
+ #define NDIS_PACKET_TYPE_FUNCTIONAL   0x00000400
+ #define NDIS_PACKET_TYPE_MAC_FRAME    0x00000800
++#define INFO_IPV4       2
++#define INFO_IPV6       4
++#define INFO_TCP        2
++#define INFO_UDP        4
++
++#define TRANSPORT_INFO_NOT_IP   0
++#define TRANSPORT_INFO_IPV4_TCP ((INFO_IPV4 << 16) | INFO_TCP)
++#define TRANSPORT_INFO_IPV4_UDP ((INFO_IPV4 << 16) | INFO_UDP)
++#define TRANSPORT_INFO_IPV6_TCP ((INFO_IPV6 << 16) | INFO_TCP)
++#define TRANSPORT_INFO_IPV6_UDP ((INFO_IPV6 << 16) | INFO_UDP)
+ #endif /* _HYPERV_NET_H */
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 7438360b7a02..2fab69ac61ef 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -257,6 +257,35 @@ static int netvsc_get_slots(struct sk_buff *skb)
+       return slots + frag_slots;
+ }
++static u32 get_net_transport_info(struct sk_buff *skb, u32 *trans_off)
++{
++      u32 ret_val = TRANSPORT_INFO_NOT_IP;
++
++      if ((eth_hdr(skb)->h_proto != htons(ETH_P_IP)) &&
++              (eth_hdr(skb)->h_proto != htons(ETH_P_IPV6))) {
++              goto not_ip;
++      }
++
++      *trans_off = skb_transport_offset(skb);
++
++      if ((eth_hdr(skb)->h_proto == htons(ETH_P_IP))) {
++              struct iphdr *iphdr = ip_hdr(skb);
++
++              if (iphdr->protocol == IPPROTO_TCP)
++                      ret_val = TRANSPORT_INFO_IPV4_TCP;
++              else if (iphdr->protocol == IPPROTO_UDP)
++                      ret_val = TRANSPORT_INFO_IPV4_UDP;
++      } else {
++              if (ipv6_hdr(skb)->nexthdr == IPPROTO_TCP)
++                      ret_val = TRANSPORT_INFO_IPV6_TCP;
++              else if (ipv6_hdr(skb)->nexthdr == IPPROTO_UDP)
++                      ret_val = TRANSPORT_INFO_IPV6_UDP;
++      }
++
++not_ip:
++      return ret_val;
++}
++
+ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+ {
+       struct net_device_context *net_device_ctx = netdev_priv(net);
+@@ -269,6 +298,10 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       u32 rndis_msg_size;
+       bool isvlan;
+       struct rndis_per_packet_info *ppi;
++      struct ndis_tcp_ip_checksum_info *csum_info;
++      int  hdr_offset;
++      u32 net_trans_info;
++
+       /* We will atmost need two pages to describe the rndis
+        * header. We can only transmit MAX_PAGE_BUFFER_COUNT number
+@@ -336,6 +369,37 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+                               VLAN_PRIO_SHIFT;
+       }
++      net_trans_info = get_net_transport_info(skb, &hdr_offset);
++      if (net_trans_info == TRANSPORT_INFO_NOT_IP)
++              goto do_send;
++
++      /*
++       * Setup the sendside checksum offload only if this is not a
++       * GSO packet.
++       */
++      if (skb_is_gso(skb))
++              goto do_send;
++
++      rndis_msg_size += NDIS_CSUM_PPI_SIZE;
++      ppi = init_ppi_data(rndis_msg, NDIS_CSUM_PPI_SIZE,
++                          TCPIP_CHKSUM_PKTINFO);
++
++      csum_info = (struct ndis_tcp_ip_checksum_info *)((void *)ppi +
++                      ppi->ppi_offset);
++
++      if (net_trans_info & (INFO_IPV4 << 16))
++              csum_info->transmit.is_ipv4 = 1;
++      else
++              csum_info->transmit.is_ipv6 = 1;
++
++      if (net_trans_info & INFO_TCP) {
++              csum_info->transmit.tcp_checksum = 1;
++              csum_info->transmit.tcp_header_offset = hdr_offset;
++      } else if (net_trans_info & INFO_UDP) {
++              csum_info->transmit.udp_checksum = 1;
++      }
++
++do_send:
+       /* Start filling in the page buffers with the rndis hdr */
+       rndis_msg->msg_len += rndis_msg_size;
+       packet->page_buf_cnt = init_page_array(rndis_msg, rndis_msg_size,
+@@ -592,8 +656,9 @@ static int netvsc_probe(struct hv_device *dev,
+       net->netdev_ops = &device_ops;
+       /* TODO: Add GSO and Checksum offload */
+-      net->hw_features = NETIF_F_RXCSUM | NETIF_F_SG;
+-      net->features = NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_SG | NETIF_F_RXCSUM;
++      net->hw_features = NETIF_F_RXCSUM | NETIF_F_SG | NETIF_F_IP_CSUM;
++      net->features = NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_SG | NETIF_F_RXCSUM |
++                      NETIF_F_IP_CSUM;
+       SET_ETHTOOL_OPS(net, &ethtool_ops);
+       SET_NETDEV_DEV(net, &dev->device);
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0009-hyperv-Fix-error-return-code-in-netvsc_init_buf.patch b/src/patches/linux/0009-hyperv-Fix-error-return-code-in-netvsc_init_buf.patch
new file mode 100644 (file)
index 0000000..fcae531
--- /dev/null
@@ -0,0 +1,34 @@
+From dd1d3f8f9920926aa426589e542eed6bf58b7354 Mon Sep 17 00:00:00 2001
+From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
+Date: Wed, 23 Jul 2014 09:00:35 +0800
+Subject: [PATCH 09/11] hyperv: Fix error return code in netvsc_init_buf()
+
+Fix to return -ENOMEM from the kalloc error handling
+case instead of 0.
+
+Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index 4ed38eaecea8..d97d5f39a04e 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -378,8 +378,10 @@ static int netvsc_init_buf(struct hv_device *device)
+       net_device->send_section_map =
+               kzalloc(net_device->map_words * sizeof(ulong), GFP_KERNEL);
+-      if (net_device->send_section_map == NULL)
++      if (net_device->send_section_map == NULL) {
++              ret = -ENOMEM;
+               goto cleanup;
++      }
+       goto exit;
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0010-Drivers-net-hyperv-Enable-large-send-offload.patch b/src/patches/linux/0010-Drivers-net-hyperv-Enable-large-send-offload.patch
new file mode 100644 (file)
index 0000000..36be2a8
--- /dev/null
@@ -0,0 +1,153 @@
+From a4ec4f58017b456281ee17c35fb82dfe4eab2193 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sat, 8 Mar 2014 19:23:18 -0800
+Subject: [PATCH 10/25] Drivers: net: hyperv: Enable large send offload
+
+Enable segmentation offload.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h | 40 ++++++++++++++++++++++++++++++++++++++++
+ drivers/net/hyperv/netvsc_drv.c | 38 ++++++++++++++++++++++++++++++++++----
+ 2 files changed, 74 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 4cf238234321..7d06b4959383 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -742,6 +742,10 @@ struct ndis_oject_header {
+ #define NDIS_OFFLOAD_PARAMETERS_RX_ENABLED_TX_DISABLED 3
+ #define NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED 4
++#define NDIS_TCP_LARGE_SEND_OFFLOAD_V2_TYPE   1
++#define NDIS_TCP_LARGE_SEND_OFFLOAD_IPV4      0
++#define NDIS_TCP_LARGE_SEND_OFFLOAD_IPV6      1
++
+ /*
+  * New offload OIDs for NDIS 6
+  */
+@@ -804,12 +808,48 @@ struct ndis_tcp_ip_checksum_info {
+       };
+ };
++struct ndis_tcp_lso_info {
++      union {
++              struct {
++                      u32 unused:30;
++                      u32 type:1;
++                      u32 reserved2:1;
++              } transmit;
++              struct {
++                      u32 mss:20;
++                      u32 tcp_header_offset:10;
++                      u32 type:1;
++                      u32 reserved2:1;
++              } lso_v1_transmit;
++              struct {
++                      u32 tcp_payload:30;
++                      u32 type:1;
++                      u32 reserved2:1;
++              } lso_v1_transmit_complete;
++              struct {
++                      u32 mss:20;
++                      u32 tcp_header_offset:10;
++                      u32 type:1;
++                      u32 ip_version:1;
++              } lso_v2_transmit;
++              struct {
++                      u32 reserved:30;
++                      u32 type:1;
++                      u32 reserved2:1;
++              } lso_v2_transmit_complete;
++              u32  value;
++      };
++};
++
+ #define NDIS_VLAN_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
+               sizeof(struct ndis_pkt_8021q_info))
+ #define NDIS_CSUM_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
+               sizeof(struct ndis_tcp_ip_checksum_info))
++#define NDIS_LSO_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
++              sizeof(struct ndis_tcp_lso_info))
++
+ /* Format of Information buffer passed in a SetRequest for the OID */
+ /* OID_GEN_RNDIS_CONFIG_PARAMETER. */
+ struct rndis_config_parameter_info {
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 2fab69ac61ef..5baa1fa7e692 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -299,6 +299,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       bool isvlan;
+       struct rndis_per_packet_info *ppi;
+       struct ndis_tcp_ip_checksum_info *csum_info;
++      struct ndis_tcp_lso_info *lso_info;
+       int  hdr_offset;
+       u32 net_trans_info;
+@@ -378,7 +379,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+        * GSO packet.
+        */
+       if (skb_is_gso(skb))
+-              goto do_send;
++              goto do_lso;
+       rndis_msg_size += NDIS_CSUM_PPI_SIZE;
+       ppi = init_ppi_data(rndis_msg, NDIS_CSUM_PPI_SIZE,
+@@ -398,6 +399,35 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       } else if (net_trans_info & INFO_UDP) {
+               csum_info->transmit.udp_checksum = 1;
+       }
++      goto do_send;
++
++do_lso:
++      rndis_msg_size += NDIS_LSO_PPI_SIZE;
++      ppi = init_ppi_data(rndis_msg, NDIS_LSO_PPI_SIZE,
++                          TCP_LARGESEND_PKTINFO);
++
++      lso_info = (struct ndis_tcp_lso_info *)((void *)ppi +
++                      ppi->ppi_offset);
++
++      lso_info->lso_v2_transmit.type = NDIS_TCP_LARGE_SEND_OFFLOAD_V2_TYPE;
++      if (net_trans_info & (INFO_IPV4 << 16)) {
++              lso_info->lso_v2_transmit.ip_version =
++                      NDIS_TCP_LARGE_SEND_OFFLOAD_IPV4;
++              ip_hdr(skb)->tot_len = 0;
++              ip_hdr(skb)->check = 0;
++              tcp_hdr(skb)->check =
++              ~csum_tcpudp_magic(ip_hdr(skb)->saddr,
++                                 ip_hdr(skb)->daddr, 0, IPPROTO_TCP, 0);
++      } else {
++              lso_info->lso_v2_transmit.ip_version =
++                      NDIS_TCP_LARGE_SEND_OFFLOAD_IPV6;
++              ipv6_hdr(skb)->payload_len = 0;
++              tcp_hdr(skb)->check =
++              ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr,
++                              &ipv6_hdr(skb)->daddr, 0, IPPROTO_TCP, 0);
++      }
++      lso_info->lso_v2_transmit.tcp_header_offset = hdr_offset;
++      lso_info->lso_v2_transmit.mss = skb_shinfo(skb)->gso_size;
+ do_send:
+       /* Start filling in the page buffers with the rndis hdr */
+@@ -655,10 +685,10 @@ static int netvsc_probe(struct hv_device *dev,
+       net->netdev_ops = &device_ops;
+-      /* TODO: Add GSO and Checksum offload */
+-      net->hw_features = NETIF_F_RXCSUM | NETIF_F_SG | NETIF_F_IP_CSUM;
++      net->hw_features = NETIF_F_RXCSUM | NETIF_F_SG | NETIF_F_IP_CSUM |
++                              NETIF_F_TSO;
+       net->features = NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_SG | NETIF_F_RXCSUM |
+-                      NETIF_F_IP_CSUM;
++                      NETIF_F_IP_CSUM | NETIF_F_TSO;
+       SET_ETHTOOL_OPS(net, &ethtool_ops);
+       SET_NETDEV_DEV(net, &dev->device);
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0010-hyperv-Fix-a-bug-in-netvsc_start_xmit.patch b/src/patches/linux/0010-hyperv-Fix-a-bug-in-netvsc_start_xmit.patch
new file mode 100644 (file)
index 0000000..5e08805
--- /dev/null
@@ -0,0 +1,47 @@
+From b3e774263908a834c1c0d5abf3a7658280e42fc7 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sun, 28 Sep 2014 22:16:43 -0700
+Subject: [PATCH 10/11] hyperv: Fix a bug in netvsc_start_xmit()
+
+[ Upstream commit dedb845ded56ded1c62f5398a94ffa8615d4592d ]
+
+After the packet is successfully sent, we should not touch the skb
+as it may have been freed. This patch is based on the work done by
+Long Li <longli@microsoft.com>.
+
+In this version of the patch I have fixed issues pointed out by David.
+David, please queue this up for stable.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Tested-by: Long Li <longli@microsoft.com>
+Tested-by: Sitsofe Wheeler <sitsofe@yahoo.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/hyperv/netvsc_drv.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 4fd71b75e666..f15297201777 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -387,6 +387,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       int  hdr_offset;
+       u32 net_trans_info;
+       u32 hash;
++      u32 skb_length = skb->len;
+       /* We will atmost need two pages to describe the rndis
+@@ -562,7 +563,7 @@ do_send:
+ drop:
+       if (ret == 0) {
+-              net->stats.tx_bytes += skb->len;
++              net->stats.tx_bytes += skb_length;
+               net->stats.tx_packets++;
+       } else {
+               kfree(packet);
+-- 
+2.4.3
+
similarity index 81%
rename from src/patches/linux-3.14.x-hyperv-2008-fix.patch
rename to src/patches/linux/0011-hyperv-Change-the-receive-buffer-size-for-legacy-hos.patch
index e538e08e5cb7a2286e3ef53f3e321889abdb281a..e3ee8cbc9915be01daa58353646e8b542a92a537 100644 (file)
@@ -1,16 +1,20 @@
-From 99d3016de4f2a29635f5382b0e9bd0e5f2151487 Mon Sep 17 00:00:00 2001
+From 56b3f72d3fed7f9b8d17dcf5d81455fa1b4327d7 Mon Sep 17 00:00:00 2001
 From: Haiyang Zhang <haiyangz@microsoft.com>
 Date: Sun, 9 Mar 2014 16:10:59 -0700
-Subject: hyperv: Change the receive buffer size for legacy hosts
+Subject: [PATCH 11/25] hyperv: Change the receive buffer size for legacy hosts
 
 Due to a bug in the Hyper-V host verion 2008R2, we need to use a slightly smaller
 receive buffer size, otherwise the buffer will not be accepted by the legacy hosts.
 
 Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h | 1 +
+ drivers/net/hyperv/netvsc.c     | 6 +++++-
+ 2 files changed, 6 insertions(+), 1 deletion(-)
 
 diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
-index 7d06b49..13010b4 100644
+index 7d06b4959383..13010b4dae5b 100644
 --- a/drivers/net/hyperv/hyperv_net.h
 +++ b/drivers/net/hyperv/hyperv_net.h
 @@ -513,6 +513,7 @@ struct nvsp_message {
@@ -22,7 +26,7 @@ index 7d06b49..13010b4 100644
  #define NETVSC_RECEIVE_BUFFER_ID              0xcafe
  
 diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
-index 1a0280d..daddea2 100644
+index 1a0280dcba7e..daddea2654ce 100644
 --- a/drivers/net/hyperv/netvsc.c
 +++ b/drivers/net/hyperv/netvsc.c
 @@ -365,6 +365,11 @@ static int netvsc_connect_vsp(struct hv_device *device)
@@ -46,5 +50,5 @@ index 1a0280d..daddea2 100644
  
        INIT_LIST_HEAD(&net_device->recv_pkt_list);
 -- 
-cgit v0.10.2
+2.4.3
 
diff --git a/src/patches/linux/0011-hyperv-Fix-a-bug-in-netvsc_send.patch b/src/patches/linux/0011-hyperv-Fix-a-bug-in-netvsc_send.patch
new file mode 100644 (file)
index 0000000..00f9c5d
--- /dev/null
@@ -0,0 +1,68 @@
+From 26875bba869bd91a1d8fef9229a56a1e6d9fef2b Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sun, 5 Oct 2014 10:42:51 -0700
+Subject: [PATCH 11/11] hyperv: Fix a bug in netvsc_send()
+
+[ Upstream commit 3a67c9ccad926a168d8b7891537a452018368a5b ]
+
+After the packet is successfully sent, we should not touch the packet
+as it may have been freed. This patch is based on the work done by
+Long Li <longli@microsoft.com>.
+
+David, please queue this up for stable.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reported-by: Sitsofe Wheeler <sitsofe@yahoo.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/hyperv/netvsc.c | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index d97d5f39a04e..7edf976ecfa0 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -708,6 +708,7 @@ int netvsc_send(struct hv_device *device,
+       unsigned int section_index = NETVSC_INVALID_INDEX;
+       u32 msg_size = 0;
+       struct sk_buff *skb;
++      u16 q_idx = packet->q_idx;
+       net_device = get_outbound_net_device(device);
+@@ -772,24 +773,24 @@ int netvsc_send(struct hv_device *device,
+       if (ret == 0) {
+               atomic_inc(&net_device->num_outstanding_sends);
+-              atomic_inc(&net_device->queue_sends[packet->q_idx]);
++              atomic_inc(&net_device->queue_sends[q_idx]);
+               if (hv_ringbuf_avail_percent(&out_channel->outbound) <
+                       RING_AVAIL_PERCENT_LOWATER) {
+                       netif_tx_stop_queue(netdev_get_tx_queue(
+-                                          ndev, packet->q_idx));
++                                          ndev, q_idx));
+                       if (atomic_read(&net_device->
+-                              queue_sends[packet->q_idx]) < 1)
++                              queue_sends[q_idx]) < 1)
+                               netif_tx_wake_queue(netdev_get_tx_queue(
+-                                                  ndev, packet->q_idx));
++                                                  ndev, q_idx));
+               }
+       } else if (ret == -EAGAIN) {
+               netif_tx_stop_queue(netdev_get_tx_queue(
+-                                  ndev, packet->q_idx));
+-              if (atomic_read(&net_device->queue_sends[packet->q_idx]) < 1) {
++                                  ndev, q_idx));
++              if (atomic_read(&net_device->queue_sends[q_idx]) < 1) {
+                       netif_tx_wake_queue(netdev_get_tx_queue(
+-                                          ndev, packet->q_idx));
++                                          ndev, q_idx));
+                       ret = -ENOSPC;
+               }
+       } else {
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0012-Drivers-net-hyperv-Allocate-memory-for-all-possible-.patch b/src/patches/linux/0012-Drivers-net-hyperv-Allocate-memory-for-all-possible-.patch
new file mode 100644 (file)
index 0000000..c626bb0
--- /dev/null
@@ -0,0 +1,34 @@
+From e0f6906eb7e5b395370da9499189d13b59020382 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Wed, 9 Apr 2014 15:00:45 -0700
+Subject: [PATCH 12/25] Drivers: net: hyperv: Allocate memory for all possible
+ per-pecket information
+
+An outgoing packet can potentially need per-packet information for
+all the offloads and VLAN tagging. Fix this issue.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc_drv.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 5baa1fa7e692..c76c85176644 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -320,7 +320,9 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       packet = kzalloc(sizeof(struct hv_netvsc_packet) +
+                        (num_data_pgs * sizeof(struct hv_page_buffer)) +
+                        sizeof(struct rndis_message) +
+-                       NDIS_VLAN_PPI_SIZE, GFP_ATOMIC);
++                       NDIS_VLAN_PPI_SIZE +
++                       NDIS_CSUM_PPI_SIZE +
++                       NDIS_LSO_PPI_SIZE, GFP_ATOMIC);
+       if (!packet) {
+               /* out of memory, drop packet */
+               netdev_err(net, "unable to allocate hv_netvsc_packet\n");
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0013-Drivers-net-hyperv-Negotiate-suitable-ndis-version-f.patch b/src/patches/linux/0013-Drivers-net-hyperv-Negotiate-suitable-ndis-version-f.patch
new file mode 100644 (file)
index 0000000..7044c52
--- /dev/null
@@ -0,0 +1,32 @@
+From 8a7882bada78e7d7355aafc0ca3c5696d25eb443 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Wed, 9 Apr 2014 15:00:46 -0700
+Subject: [PATCH 13/25] Drivers: net: hyperv: Negotiate suitable ndis version
+ for offload support
+
+Ws2008R2 supports ndis_version 6.1 and 6.1 is the minimal version required
+for various offloads. Negotiate ndis_version 6.1 when on ws2008r2.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index daddea2654ce..f7629ecefa84 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -344,7 +344,7 @@ static int netvsc_connect_vsp(struct hv_device *device)
+       memset(init_packet, 0, sizeof(struct nvsp_message));
+       if (net_device->nvsp_version <= NVSP_PROTOCOL_VERSION_4)
+-              ndis_version = 0x00050001;
++              ndis_version = 0x00060001;
+       else
+               ndis_version = 0x0006001e;
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0014-Drivers-net-hyperv-Address-UDP-checksum-issues.patch b/src/patches/linux/0014-Drivers-net-hyperv-Address-UDP-checksum-issues.patch
new file mode 100644 (file)
index 0000000..eaf343e
--- /dev/null
@@ -0,0 +1,111 @@
+From b822ee7a17efd1bc8c7584da5d0a2c042e9ca5b6 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Wed, 9 Apr 2014 15:00:47 -0700
+Subject: [PATCH 14/25] Drivers: net: hyperv: Address UDP checksum issues
+
+ws2008r2 does not support UDP checksum offload. Thus, we cannnot turn on
+UDP offload in the host. Also, on ws2012 and ws2012 r2, there appear to be
+an issue with UDP checksum offload.
+Fix this issue by computing the UDP checksum in the Hyper-V driver.
+
+Based on Dave Miller's comments, in this version, I have COWed the skb
+before modifying the UDP header (the checksum field).
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   |  1 +
+ drivers/net/hyperv/netvsc_drv.c   | 26 +++++++++++++++++++++++++-
+ drivers/net/hyperv/rndis_filter.c | 12 +++++++++++-
+ 3 files changed, 37 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 13010b4dae5b..d18f711d0b0c 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -747,6 +747,7 @@ struct ndis_oject_header {
+ #define NDIS_TCP_LARGE_SEND_OFFLOAD_IPV4      0
+ #define NDIS_TCP_LARGE_SEND_OFFLOAD_IPV6      1
++#define VERSION_4_OFFLOAD_SIZE                        22
+ /*
+  * New offload OIDs for NDIS 6
+  */
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index c76c85176644..0d898876689e 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -399,7 +399,30 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+               csum_info->transmit.tcp_checksum = 1;
+               csum_info->transmit.tcp_header_offset = hdr_offset;
+       } else if (net_trans_info & INFO_UDP) {
+-              csum_info->transmit.udp_checksum = 1;
++              /* UDP checksum offload is not supported on ws2008r2.
++               * Furthermore, on ws2012 and ws2012r2, there are some
++               * issues with udp checksum offload from Linux guests.
++               * (these are host issues).
++               * For now compute the checksum here.
++               */
++              struct udphdr *uh;
++              u16 udp_len;
++
++              ret = skb_cow_head(skb, 0);
++              if (ret)
++                      goto drop;
++
++              uh = udp_hdr(skb);
++              udp_len = ntohs(uh->len);
++              uh->check = 0;
++              uh->check = csum_tcpudp_magic(ip_hdr(skb)->saddr,
++                                            ip_hdr(skb)->daddr,
++                                            udp_len, IPPROTO_UDP,
++                                            csum_partial(uh, udp_len, 0));
++              if (uh->check == 0)
++                      uh->check = CSUM_MANGLED_0;
++
++              csum_info->transmit.udp_checksum = 0;
+       }
+       goto do_send;
+@@ -439,6 +462,7 @@ do_send:
+       ret = netvsc_send(net_device_ctx->device_ctx, packet);
++drop:
+       if (ret == 0) {
+               net->stats.tx_bytes += skb_length;
+               net->stats.tx_packets++;
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index 4a37e3db9e32..143a98caf618 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -641,6 +641,16 @@ int rndis_filter_set_offload_params(struct hv_device *hdev,
+       struct rndis_set_complete *set_complete;
+       u32 extlen = sizeof(struct ndis_offload_params);
+       int ret, t;
++      u32 vsp_version = nvdev->nvsp_version;
++
++      if (vsp_version <= NVSP_PROTOCOL_VERSION_4) {
++              extlen = VERSION_4_OFFLOAD_SIZE;
++              /* On NVSP_PROTOCOL_VERSION_4 and below, we do not support
++               * UDP checksum offload.
++               */
++              req_offloads->udp_ip_v4_csum = 0;
++              req_offloads->udp_ip_v6_csum = 0;
++      }
+       request = get_rndis_request(rdev, RNDIS_MSG_SET,
+               RNDIS_MESSAGE_SIZE(struct rndis_set_request) + extlen);
+@@ -674,7 +684,7 @@ int rndis_filter_set_offload_params(struct hv_device *hdev,
+       } else {
+               set_complete = &request->response_msg.msg.set_complete;
+               if (set_complete->status != RNDIS_STATUS_SUCCESS) {
+-                      netdev_err(ndev, "Fail to set MAC on host side:0x%x\n",
++                      netdev_err(ndev, "Fail to set offload on host side:0x%x\n",
+                                  set_complete->status);
+                       ret = -EINVAL;
+               }
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0015-hyperv-Properly-handle-checksum-offload.patch b/src/patches/linux/0015-hyperv-Properly-handle-checksum-offload.patch
new file mode 100644 (file)
index 0000000..0760833
--- /dev/null
@@ -0,0 +1,42 @@
+From 540360773bad2b81f14c38ca92b62797fa32cbc6 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Wed, 30 Apr 2014 11:58:25 -0700
+Subject: [PATCH 15/25] hyperv: Properly handle checksum offload
+
+Do checksum offload only if the client of the driver wants checksum to be
+offloaded.
+
+In V1 version of this patch, I  addressed comments from
+Stephen Hemminger <stephen@networkplumber.org> and
+Eric Dumazet <eric.dumazet@gmail.com>.
+
+In this version of the patch I have addressed comments from
+David Miller.
+
+This patch fixes a bug that is exposed in gateway scenarios.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc_drv.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 0d898876689e..ce6d870dd7ae 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -383,6 +383,10 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       if (skb_is_gso(skb))
+               goto do_lso;
++      if ((skb->ip_summed == CHECKSUM_NONE) ||
++          (skb->ip_summed == CHECKSUM_UNNECESSARY))
++              goto do_send;
++
+       rndis_msg_size += NDIS_CSUM_PPI_SIZE;
+       ppi = init_ppi_data(rndis_msg, NDIS_CSUM_PPI_SIZE,
+                           TCPIP_CHKSUM_PKTINFO);
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0016-hyperv-Add-support-for-virtual-Receive-Side-Scaling-.patch b/src/patches/linux/0016-hyperv-Add-support-for-virtual-Receive-Side-Scaling-.patch
new file mode 100644 (file)
index 0000000..d01a428
--- /dev/null
@@ -0,0 +1,917 @@
+From 44559a96c6864eb6e95db0ae896c621b82e605f3 Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Mon, 21 Apr 2014 10:20:28 -0700
+Subject: [PATCH 16/25] hyperv: Add support for virtual Receive Side Scaling
+ (vRSS)
+
+This feature allows multiple channels to be used by each virtual NIC.
+It is available on Hyper-V host 2012 R2.
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   | 110 +++++++++++++++++++++-
+ drivers/net/hyperv/netvsc.c       | 136 +++++++++++++++++++++------
+ drivers/net/hyperv/netvsc_drv.c   | 103 ++++++++++++++++++++-
+ drivers/net/hyperv/rndis_filter.c | 189 +++++++++++++++++++++++++++++++++++++-
+ 4 files changed, 504 insertions(+), 34 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index d18f711d0b0c..57eb3f906d64 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -28,6 +28,96 @@
+ #include <linux/hyperv.h>
+ #include <linux/rndis.h>
++/* RSS related */
++#define OID_GEN_RECEIVE_SCALE_CAPABILITIES 0x00010203  /* query only */
++#define OID_GEN_RECEIVE_SCALE_PARAMETERS 0x00010204  /* query and set */
++
++#define NDIS_OBJECT_TYPE_RSS_CAPABILITIES 0x88
++#define NDIS_OBJECT_TYPE_RSS_PARAMETERS 0x89
++
++#define NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_2 2
++#define NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_2 2
++
++struct ndis_obj_header {
++      u8 type;
++      u8 rev;
++      u16 size;
++} __packed;
++
++/* ndis_recv_scale_cap/cap_flag */
++#define NDIS_RSS_CAPS_MESSAGE_SIGNALED_INTERRUPTS 0x01000000
++#define NDIS_RSS_CAPS_CLASSIFICATION_AT_ISR       0x02000000
++#define NDIS_RSS_CAPS_CLASSIFICATION_AT_DPC       0x04000000
++#define NDIS_RSS_CAPS_USING_MSI_X                 0x08000000
++#define NDIS_RSS_CAPS_RSS_AVAILABLE_ON_PORTS      0x10000000
++#define NDIS_RSS_CAPS_SUPPORTS_MSI_X              0x20000000
++#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV4          0x00000100
++#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6          0x00000200
++#define NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6_EX       0x00000400
++
++struct ndis_recv_scale_cap { /* NDIS_RECEIVE_SCALE_CAPABILITIES */
++      struct ndis_obj_header hdr;
++      u32 cap_flag;
++      u32 num_int_msg;
++      u32 num_recv_que;
++      u16 num_indirect_tabent;
++} __packed;
++
++
++/* ndis_recv_scale_param flags */
++#define NDIS_RSS_PARAM_FLAG_BASE_CPU_UNCHANGED     0x0001
++#define NDIS_RSS_PARAM_FLAG_HASH_INFO_UNCHANGED    0x0002
++#define NDIS_RSS_PARAM_FLAG_ITABLE_UNCHANGED       0x0004
++#define NDIS_RSS_PARAM_FLAG_HASH_KEY_UNCHANGED     0x0008
++#define NDIS_RSS_PARAM_FLAG_DISABLE_RSS            0x0010
++
++/* Hash info bits */
++#define NDIS_HASH_FUNC_TOEPLITZ 0x00000001
++#define NDIS_HASH_IPV4          0x00000100
++#define NDIS_HASH_TCP_IPV4      0x00000200
++#define NDIS_HASH_IPV6          0x00000400
++#define NDIS_HASH_IPV6_EX       0x00000800
++#define NDIS_HASH_TCP_IPV6      0x00001000
++#define NDIS_HASH_TCP_IPV6_EX   0x00002000
++
++#define NDIS_RSS_INDIRECTION_TABLE_MAX_SIZE_REVISION_2 (128 * 4)
++#define NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_2   40
++
++#define ITAB_NUM 128
++#define HASH_KEYLEN NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_2
++extern u8 netvsc_hash_key[];
++
++struct ndis_recv_scale_param { /* NDIS_RECEIVE_SCALE_PARAMETERS */
++      struct ndis_obj_header hdr;
++
++      /* Qualifies the rest of the information */
++      u16 flag;
++
++      /* The base CPU number to do receive processing. not used */
++      u16 base_cpu_number;
++
++      /* This describes the hash function and type being enabled */
++      u32 hashinfo;
++
++      /* The size of indirection table array */
++      u16 indirect_tabsize;
++
++      /* The offset of the indirection table from the beginning of this
++       * structure
++       */
++      u32 indirect_taboffset;
++
++      /* The size of the hash secret key */
++      u16 hashkey_size;
++
++      /* The offset of the secret key from the beginning of this structure */
++      u32 kashkey_offset;
++
++      u32 processor_masks_offset;
++      u32 num_processor_masks;
++      u32 processor_masks_entry_size;
++};
++
+ /* Fwd declaration */
+ struct hv_netvsc_packet;
+ struct ndis_tcp_ip_checksum_info;
+@@ -39,6 +129,8 @@ struct xferpage_packet {
+       /* # of netvsc packets this xfer packet contains */
+       u32 count;
++
++      struct vmbus_channel *channel;
+ };
+ /*
+@@ -54,6 +146,9 @@ struct hv_netvsc_packet {
+       bool is_data_pkt;
+       u16 vlan_tci;
++      u16 q_idx;
++      struct vmbus_channel *channel;
++
+       /*
+        * Valid only for receives when we break a xfer page packet
+        * into multiple netvsc packets
+@@ -120,6 +215,7 @@ void netvsc_linkstatus_callback(struct hv_device *device_obj,
+ int netvsc_recv_callback(struct hv_device *device_obj,
+                       struct hv_netvsc_packet *packet,
+                       struct ndis_tcp_ip_checksum_info *csum_info);
++void netvsc_channel_cb(void *context);
+ int rndis_filter_open(struct hv_device *dev);
+ int rndis_filter_close(struct hv_device *dev);
+ int rndis_filter_device_add(struct hv_device *dev,
+@@ -522,6 +618,8 @@ struct nvsp_message {
+ #define NETVSC_PACKET_SIZE                      2048
++#define VRSS_SEND_TAB_SIZE 16
++
+ /* Per netvsc channel-specific */
+ struct netvsc_device {
+       struct hv_device *dev;
+@@ -555,10 +653,20 @@ struct netvsc_device {
+       struct net_device *ndev;
++      struct vmbus_channel *chn_table[NR_CPUS];
++      u32 send_table[VRSS_SEND_TAB_SIZE];
++      u32 num_chn;
++      atomic_t queue_sends[NR_CPUS];
++
+       /* Holds rndis device info */
+       void *extension;
+-      /* The recive buffer for this device */
++
++      int ring_size;
++
++      /* The primary channel callback buffer */
+       unsigned char cb_buffer[NETVSC_PACKET_SIZE];
++      /* The sub channel callback buffer */
++      unsigned char *sub_cb_buf;
+ };
+ /* NdisInitialize message */
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index f7629ecefa84..e7e77f12bc38 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -422,6 +422,9 @@ int netvsc_device_remove(struct hv_device *device)
+               kfree(netvsc_packet);
+       }
++      if (net_device->sub_cb_buf)
++              vfree(net_device->sub_cb_buf);
++
+       kfree(net_device);
+       return 0;
+ }
+@@ -461,7 +464,9 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+           (nvsp_packet->hdr.msg_type ==
+            NVSP_MSG1_TYPE_SEND_RECV_BUF_COMPLETE) ||
+           (nvsp_packet->hdr.msg_type ==
+-           NVSP_MSG1_TYPE_SEND_SEND_BUF_COMPLETE)) {
++           NVSP_MSG1_TYPE_SEND_SEND_BUF_COMPLETE) ||
++          (nvsp_packet->hdr.msg_type ==
++           NVSP_MSG5_TYPE_SUBCHANNEL)) {
+               /* Copy the response back */
+               memcpy(&net_device->channel_init_pkt, nvsp_packet,
+                      sizeof(struct nvsp_message));
+@@ -469,28 +474,37 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+       } else if (nvsp_packet->hdr.msg_type ==
+                  NVSP_MSG1_TYPE_SEND_RNDIS_PKT_COMPLETE) {
+               int num_outstanding_sends;
++              u16 q_idx = 0;
++              struct vmbus_channel *channel = device->channel;
++              int queue_sends;
+               /* Get the send context */
+               nvsc_packet = (struct hv_netvsc_packet *)(unsigned long)
+                       packet->trans_id;
+               /* Notify the layer above us */
+-              if (nvsc_packet)
++              if (nvsc_packet) {
++                      q_idx = nvsc_packet->q_idx;
++                      channel = nvsc_packet->channel;
+                       nvsc_packet->completion.send.send_completion(
+                               nvsc_packet->completion.send.
+                               send_completion_ctx);
++              }
+               num_outstanding_sends =
+                       atomic_dec_return(&net_device->num_outstanding_sends);
++              queue_sends = atomic_dec_return(&net_device->
++                                              queue_sends[q_idx]);
+               if (net_device->destroy && num_outstanding_sends == 0)
+                       wake_up(&net_device->wait_drain);
+-              if (netif_queue_stopped(ndev) && !net_device->start_remove &&
+-                      (hv_ringbuf_avail_percent(&device->channel->outbound)
+-                      > RING_AVAIL_PERCENT_HIWATER ||
+-                      num_outstanding_sends < 1))
+-                              netif_wake_queue(ndev);
++              if (netif_tx_queue_stopped(netdev_get_tx_queue(ndev, q_idx)) &&
++                  !net_device->start_remove &&
++                  (hv_ringbuf_avail_percent(&channel->outbound) >
++                   RING_AVAIL_PERCENT_HIWATER || queue_sends < 1))
++                              netif_tx_wake_queue(netdev_get_tx_queue(
++                                                  ndev, q_idx));
+       } else {
+               netdev_err(ndev, "Unknown send completion packet type- "
+                          "%d received!!\n", nvsp_packet->hdr.msg_type);
+@@ -505,6 +519,7 @@ int netvsc_send(struct hv_device *device,
+       int ret = 0;
+       struct nvsp_message sendMessage;
+       struct net_device *ndev;
++      struct vmbus_channel *out_channel = NULL;
+       u64 req_id;
+       net_device = get_outbound_net_device(device);
+@@ -531,15 +546,20 @@ int netvsc_send(struct hv_device *device,
+       else
+               req_id = 0;
++      out_channel = net_device->chn_table[packet->q_idx];
++      if (out_channel == NULL)
++              out_channel = device->channel;
++      packet->channel = out_channel;
++
+       if (packet->page_buf_cnt) {
+-              ret = vmbus_sendpacket_pagebuffer(device->channel,
++              ret = vmbus_sendpacket_pagebuffer(out_channel,
+                                                 packet->page_buf,
+                                                 packet->page_buf_cnt,
+                                                 &sendMessage,
+                                                 sizeof(struct nvsp_message),
+                                                 req_id);
+       } else {
+-              ret = vmbus_sendpacket(device->channel, &sendMessage,
++              ret = vmbus_sendpacket(out_channel, &sendMessage,
+                               sizeof(struct nvsp_message),
+                               req_id,
+                               VM_PKT_DATA_INBAND,
+@@ -548,17 +568,24 @@ int netvsc_send(struct hv_device *device,
+       if (ret == 0) {
+               atomic_inc(&net_device->num_outstanding_sends);
+-              if (hv_ringbuf_avail_percent(&device->channel->outbound) <
++              atomic_inc(&net_device->queue_sends[packet->q_idx]);
++
++              if (hv_ringbuf_avail_percent(&out_channel->outbound) <
+                       RING_AVAIL_PERCENT_LOWATER) {
+-                      netif_stop_queue(ndev);
++                      netif_tx_stop_queue(netdev_get_tx_queue(
++                                          ndev, packet->q_idx));
++
+                       if (atomic_read(&net_device->
+-                              num_outstanding_sends) < 1)
+-                              netif_wake_queue(ndev);
++                              queue_sends[packet->q_idx]) < 1)
++                              netif_tx_wake_queue(netdev_get_tx_queue(
++                                                  ndev, packet->q_idx));
+               }
+       } else if (ret == -EAGAIN) {
+-              netif_stop_queue(ndev);
+-              if (atomic_read(&net_device->num_outstanding_sends) < 1) {
+-                      netif_wake_queue(ndev);
++              netif_tx_stop_queue(netdev_get_tx_queue(
++                                  ndev, packet->q_idx));
++              if (atomic_read(&net_device->queue_sends[packet->q_idx]) < 1) {
++                      netif_tx_wake_queue(netdev_get_tx_queue(
++                                          ndev, packet->q_idx));
+                       ret = -ENOSPC;
+               }
+       } else {
+@@ -570,6 +597,7 @@ int netvsc_send(struct hv_device *device,
+ }
+ static void netvsc_send_recv_completion(struct hv_device *device,
++                                      struct vmbus_channel *channel,
+                                       struct netvsc_device *net_device,
+                                       u64 transaction_id, u32 status)
+ {
+@@ -587,7 +615,7 @@ static void netvsc_send_recv_completion(struct hv_device *device,
+ retry_send_cmplt:
+       /* Send the completion */
+-      ret = vmbus_sendpacket(device->channel, &recvcompMessage,
++      ret = vmbus_sendpacket(channel, &recvcompMessage,
+                              sizeof(struct nvsp_message), transaction_id,
+                              VM_PKT_COMP, 0);
+       if (ret == 0) {
+@@ -618,6 +646,7 @@ static void netvsc_receive_completion(void *context)
+ {
+       struct hv_netvsc_packet *packet = context;
+       struct hv_device *device = packet->device;
++      struct vmbus_channel *channel;
+       struct netvsc_device *net_device;
+       u64 transaction_id = 0;
+       bool fsend_receive_comp = false;
+@@ -649,6 +678,7 @@ static void netvsc_receive_completion(void *context)
+        */
+       if (packet->xfer_page_pkt->count == 0) {
+               fsend_receive_comp = true;
++              channel = packet->xfer_page_pkt->channel;
+               transaction_id = packet->completion.recv.recv_completion_tid;
+               status = packet->xfer_page_pkt->status;
+               list_add_tail(&packet->xfer_page_pkt->list_ent,
+@@ -662,12 +692,13 @@ static void netvsc_receive_completion(void *context)
+       /* Send a receive completion for the xfer page packet */
+       if (fsend_receive_comp)
+-              netvsc_send_recv_completion(device, net_device, transaction_id,
+-                                      status);
++              netvsc_send_recv_completion(device, channel, net_device,
++                                          transaction_id, status);
+ }
+ static void netvsc_receive(struct netvsc_device *net_device,
++                      struct vmbus_channel *channel,
+                       struct hv_device *device,
+                       struct vmpacket_descriptor *packet)
+ {
+@@ -748,7 +779,7 @@ static void netvsc_receive(struct netvsc_device *net_device,
+               spin_unlock_irqrestore(&net_device->recv_pkt_list_lock,
+                                      flags);
+-              netvsc_send_recv_completion(device, net_device,
++              netvsc_send_recv_completion(device, channel, net_device,
+                                           vmxferpage_packet->d.trans_id,
+                                           NVSP_STAT_FAIL);
+@@ -759,6 +790,7 @@ static void netvsc_receive(struct netvsc_device *net_device,
+       xferpage_packet = (struct xferpage_packet *)listHead.next;
+       list_del(&xferpage_packet->list_ent);
+       xferpage_packet->status = NVSP_STAT_SUCCESS;
++      xferpage_packet->channel = channel;
+       /* This is how much we can satisfy */
+       xferpage_packet->count = count - 1;
+@@ -800,10 +832,45 @@ static void netvsc_receive(struct netvsc_device *net_device,
+ }
+-static void netvsc_channel_cb(void *context)
++
++static void netvsc_send_table(struct hv_device *hdev,
++                            struct vmpacket_descriptor *vmpkt)
++{
++      struct netvsc_device *nvscdev;
++      struct net_device *ndev;
++      struct nvsp_message *nvmsg;
++      int i;
++      u32 count, *tab;
++
++      nvscdev = get_outbound_net_device(hdev);
++      if (!nvscdev)
++              return;
++      ndev = nvscdev->ndev;
++
++      nvmsg = (struct nvsp_message *)((unsigned long)vmpkt +
++                                      (vmpkt->offset8 << 3));
++
++      if (nvmsg->hdr.msg_type != NVSP_MSG5_TYPE_SEND_INDIRECTION_TABLE)
++              return;
++
++      count = nvmsg->msg.v5_msg.send_table.count;
++      if (count != VRSS_SEND_TAB_SIZE) {
++              netdev_err(ndev, "Received wrong send-table size:%u\n", count);
++              return;
++      }
++
++      tab = (u32 *)((unsigned long)&nvmsg->msg.v5_msg.send_table +
++                    nvmsg->msg.v5_msg.send_table.offset);
++
++      for (i = 0; i < count; i++)
++              nvscdev->send_table[i] = tab[i];
++}
++
++void netvsc_channel_cb(void *context)
+ {
+       int ret;
+-      struct hv_device *device = context;
++      struct vmbus_channel *channel = (struct vmbus_channel *)context;
++      struct hv_device *device;
+       struct netvsc_device *net_device;
+       u32 bytes_recvd;
+       u64 request_id;
+@@ -812,14 +879,19 @@ static void netvsc_channel_cb(void *context)
+       int bufferlen = NETVSC_PACKET_SIZE;
+       struct net_device *ndev;
++      if (channel->primary_channel != NULL)
++              device = channel->primary_channel->device_obj;
++      else
++              device = channel->device_obj;
++
+       net_device = get_inbound_net_device(device);
+       if (!net_device)
+               return;
+       ndev = net_device->ndev;
+-      buffer = net_device->cb_buffer;
++      buffer = get_per_channel_state(channel);
+       do {
+-              ret = vmbus_recvpacket_raw(device->channel, buffer, bufferlen,
++              ret = vmbus_recvpacket_raw(channel, buffer, bufferlen,
+                                          &bytes_recvd, &request_id);
+               if (ret == 0) {
+                       if (bytes_recvd > 0) {
+@@ -831,8 +903,12 @@ static void netvsc_channel_cb(void *context)
+                                       break;
+                               case VM_PKT_DATA_USING_XFER_PAGES:
+-                                      netvsc_receive(net_device,
+-                                                      device, desc);
++                                      netvsc_receive(net_device, channel,
++                                                     device, desc);
++                                      break;
++
++                              case VM_PKT_DATA_INBAND:
++                                      netvsc_send_table(device, desc);
+                                       break;
+                               default:
+@@ -893,6 +969,8 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+               goto cleanup;
+       }
++      net_device->ring_size = ring_size;
++
+       /*
+        * Coming into this function, struct net_device * is
+        * registered as the driver private data.
+@@ -917,10 +995,12 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+       }
+       init_completion(&net_device->channel_init_wait);
++      set_per_channel_state(device->channel, net_device->cb_buffer);
++
+       /* Open the channel */
+       ret = vmbus_open(device->channel, ring_size * PAGE_SIZE,
+                        ring_size * PAGE_SIZE, NULL, 0,
+-                       netvsc_channel_cb, device);
++                       netvsc_channel_cb, device->channel);
+       if (ret != 0) {
+               netdev_err(ndev, "unable to open channel: %d\n", ret);
+@@ -930,6 +1010,8 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+       /* Channel is opened */
+       pr_info("hv_netvsc channel opened successfully\n");
++      net_device->chn_table[0] = device->channel;
++
+       /* Connect with the NetVsp */
+       ret = netvsc_connect_vsp(device);
+       if (ret != 0) {
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index ce6d870dd7ae..e486dbd33f61 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -101,7 +101,7 @@ static int netvsc_open(struct net_device *net)
+               return ret;
+       }
+-      netif_start_queue(net);
++      netif_tx_start_all_queues(net);
+       nvdev = hv_get_drvdata(device_obj);
+       rdev = nvdev->extension;
+@@ -149,6 +149,88 @@ static void *init_ppi_data(struct rndis_message *msg, u32 ppi_size,
+       return ppi;
+ }
++union sub_key {
++      u64 k;
++      struct {
++              u8 pad[3];
++              u8 kb;
++              u32 ka;
++      };
++};
++
++/* Toeplitz hash function
++ * data: network byte order
++ * return: host byte order
++ */
++static u32 comp_hash(u8 *key, int klen, u8 *data, int dlen)
++{
++      union sub_key subk;
++      int k_next = 4;
++      u8 dt;
++      int i, j;
++      u32 ret = 0;
++
++      subk.k = 0;
++      subk.ka = ntohl(*(u32 *)key);
++
++      for (i = 0; i < dlen; i++) {
++              subk.kb = key[k_next];
++              k_next = (k_next + 1) % klen;
++              dt = data[i];
++              for (j = 0; j < 8; j++) {
++                      if (dt & 0x80)
++                              ret ^= subk.ka;
++                      dt <<= 1;
++                      subk.k <<= 1;
++              }
++      }
++
++      return ret;
++}
++
++static bool netvsc_set_hash(u32 *hash, struct sk_buff *skb)
++{
++      struct iphdr *iphdr;
++      int data_len;
++      bool ret = false;
++
++      if (eth_hdr(skb)->h_proto != htons(ETH_P_IP))
++              return false;
++
++      iphdr = ip_hdr(skb);
++
++      if (iphdr->version == 4) {
++              if (iphdr->protocol == IPPROTO_TCP)
++                      data_len = 12;
++              else
++                      data_len = 8;
++              *hash = comp_hash(netvsc_hash_key, HASH_KEYLEN,
++                                (u8 *)&iphdr->saddr, data_len);
++              ret = true;
++      }
++
++      return ret;
++}
++
++static u16 netvsc_select_queue(struct net_device *ndev, struct sk_buff *skb,
++                      void *accel_priv, select_queue_fallback_t fallback)
++{
++      struct net_device_context *net_device_ctx = netdev_priv(ndev);
++      struct hv_device *hdev =  net_device_ctx->device_ctx;
++      struct netvsc_device *nvsc_dev = hv_get_drvdata(hdev);
++      u32 hash;
++      u16 q_idx = 0;
++
++      if (nvsc_dev == NULL || ndev->real_num_tx_queues <= 1)
++              return 0;
++
++      if (netvsc_set_hash(&hash, skb))
++              q_idx = nvsc_dev->send_table[hash % VRSS_SEND_TAB_SIZE] %
++                      ndev->real_num_tx_queues;
++
++      return q_idx;
++}
++
+ static void netvsc_xmit_completion(void *context)
+ {
+       struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
+@@ -334,6 +416,8 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       packet->vlan_tci = skb->vlan_tci;
++      packet->q_idx = skb_get_queue_mapping(skb);
++
+       packet->is_data_pkt = true;
+       packet->total_data_buflen = skb->len;
+@@ -559,6 +643,10 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+               __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
+                                      packet->vlan_tci);
++      skb_record_rx_queue(skb, packet->xfer_page_pkt->channel->
++                          offermsg.offer.sub_channel_index %
++                          net->real_num_rx_queues);
++
+       net->stats.rx_packets++;
+       net->stats.rx_bytes += packet->total_data_buflen;
+@@ -607,7 +695,7 @@ static int netvsc_change_mtu(struct net_device *ndev, int mtu)
+       hv_set_drvdata(hdev, ndev);
+       device_info.ring_size = ring_size;
+       rndis_filter_device_add(hdev, &device_info);
+-      netif_wake_queue(ndev);
++      netif_tx_wake_all_queues(ndev);
+       return 0;
+ }
+@@ -653,6 +741,7 @@ static const struct net_device_ops device_ops = {
+       .ndo_change_mtu =               netvsc_change_mtu,
+       .ndo_validate_addr =            eth_validate_addr,
+       .ndo_set_mac_address =          netvsc_set_mac_addr,
++      .ndo_select_queue =             netvsc_select_queue,
+ };
+ /*
+@@ -699,9 +788,11 @@ static int netvsc_probe(struct hv_device *dev,
+       struct net_device *net = NULL;
+       struct net_device_context *net_device_ctx;
+       struct netvsc_device_info device_info;
++      struct netvsc_device *nvdev;
+       int ret;
+-      net = alloc_etherdev(sizeof(struct net_device_context));
++      net = alloc_etherdev_mq(sizeof(struct net_device_context),
++                              num_online_cpus());
+       if (!net)
+               return -ENOMEM;
+@@ -734,6 +825,12 @@ static int netvsc_probe(struct hv_device *dev,
+       }
+       memcpy(net->dev_addr, device_info.mac_adr, ETH_ALEN);
++      nvdev = hv_get_drvdata(dev);
++      netif_set_real_num_tx_queues(net, nvdev->num_chn);
++      netif_set_real_num_rx_queues(net, nvdev->num_chn);
++      dev_info(&dev->device, "real num tx,rx queues:%u, %u\n",
++               net->real_num_tx_queues, net->real_num_rx_queues);
++
+       ret = register_netdev(net);
+       if (ret != 0) {
+               pr_err("Unable to register netdev.\n");
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index 143a98caf618..d92cfbe43410 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -31,7 +31,7 @@
+ #include "hyperv_net.h"
+-#define RNDIS_EXT_LEN 100
++#define RNDIS_EXT_LEN PAGE_SIZE
+ struct rndis_request {
+       struct list_head list_ent;
+       struct completion  wait_event;
+@@ -94,6 +94,8 @@ static struct rndis_request *get_rndis_request(struct rndis_device *dev,
+       rndis_msg->ndis_msg_type = msg_type;
+       rndis_msg->msg_len = msg_len;
++      request->pkt.q_idx = 0;
++
+       /*
+        * Set the request id. This field is always after the rndis header for
+        * request/response packet types so we just used the SetRequest as a
+@@ -509,6 +511,19 @@ static int rndis_filter_query_device(struct rndis_device *dev, u32 oid,
+       query->info_buflen = 0;
+       query->dev_vc_handle = 0;
++      if (oid == OID_GEN_RECEIVE_SCALE_CAPABILITIES) {
++              struct ndis_recv_scale_cap *cap;
++
++              request->request_msg.msg_len +=
++                      sizeof(struct ndis_recv_scale_cap);
++              query->info_buflen = sizeof(struct ndis_recv_scale_cap);
++              cap = (struct ndis_recv_scale_cap *)((unsigned long)query +
++                                                   query->info_buf_offset);
++              cap->hdr.type = NDIS_OBJECT_TYPE_RSS_CAPABILITIES;
++              cap->hdr.rev = NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_2;
++              cap->hdr.size = sizeof(struct ndis_recv_scale_cap);
++      }
++
+       ret = rndis_filter_send_request(dev, request);
+       if (ret != 0)
+               goto cleanup;
+@@ -695,6 +710,89 @@ cleanup:
+       return ret;
+ }
++u8 netvsc_hash_key[HASH_KEYLEN] = {
++      0x6d, 0x5a, 0x56, 0xda, 0x25, 0x5b, 0x0e, 0xc2,
++      0x41, 0x67, 0x25, 0x3d, 0x43, 0xa3, 0x8f, 0xb0,
++      0xd0, 0xca, 0x2b, 0xcb, 0xae, 0x7b, 0x30, 0xb4,
++      0x77, 0xcb, 0x2d, 0xa3, 0x80, 0x30, 0xf2, 0x0c,
++      0x6a, 0x42, 0xb7, 0x3b, 0xbe, 0xac, 0x01, 0xfa
++};
++
++int rndis_filter_set_rss_param(struct rndis_device *rdev, int num_queue)
++{
++      struct net_device *ndev = rdev->net_dev->ndev;
++      struct rndis_request *request;
++      struct rndis_set_request *set;
++      struct rndis_set_complete *set_complete;
++      u32 extlen = sizeof(struct ndis_recv_scale_param) +
++                   4*ITAB_NUM + HASH_KEYLEN;
++      struct ndis_recv_scale_param *rssp;
++      u32 *itab;
++      u8 *keyp;
++      int i, t, ret;
++
++      request = get_rndis_request(
++                      rdev, RNDIS_MSG_SET,
++                      RNDIS_MESSAGE_SIZE(struct rndis_set_request) + extlen);
++      if (!request)
++              return -ENOMEM;
++
++      set = &request->request_msg.msg.set_req;
++      set->oid = OID_GEN_RECEIVE_SCALE_PARAMETERS;
++      set->info_buflen = extlen;
++      set->info_buf_offset = sizeof(struct rndis_set_request);
++      set->dev_vc_handle = 0;
++
++      rssp = (struct ndis_recv_scale_param *)(set + 1);
++      rssp->hdr.type = NDIS_OBJECT_TYPE_RSS_PARAMETERS;
++      rssp->hdr.rev = NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_2;
++      rssp->hdr.size = sizeof(struct ndis_recv_scale_param);
++      rssp->flag = 0;
++      rssp->hashinfo = NDIS_HASH_FUNC_TOEPLITZ | NDIS_HASH_IPV4 |
++                       NDIS_HASH_TCP_IPV4;
++      rssp->indirect_tabsize = 4*ITAB_NUM;
++      rssp->indirect_taboffset = sizeof(struct ndis_recv_scale_param);
++      rssp->hashkey_size = HASH_KEYLEN;
++      rssp->kashkey_offset = rssp->indirect_taboffset +
++                             rssp->indirect_tabsize;
++
++      /* Set indirection table entries */
++      itab = (u32 *)(rssp + 1);
++      for (i = 0; i < ITAB_NUM; i++)
++              itab[i] = i % num_queue;
++
++      /* Set hask key values */
++      keyp = (u8 *)((unsigned long)rssp + rssp->kashkey_offset);
++      for (i = 0; i < HASH_KEYLEN; i++)
++              keyp[i] = netvsc_hash_key[i];
++
++
++      ret = rndis_filter_send_request(rdev, request);
++      if (ret != 0)
++              goto cleanup;
++
++      t = wait_for_completion_timeout(&request->wait_event, 5*HZ);
++      if (t == 0) {
++              netdev_err(ndev, "timeout before we got a set response...\n");
++              /* can't put_rndis_request, since we may still receive a
++               * send-completion.
++               */
++              return -ETIMEDOUT;
++      } else {
++              set_complete = &request->response_msg.msg.set_complete;
++              if (set_complete->status != RNDIS_STATUS_SUCCESS) {
++                      netdev_err(ndev, "Fail to set RSS parameters:0x%x\n",
++                                 set_complete->status);
++                      ret = -EINVAL;
++              }
++      }
++
++cleanup:
++      put_rndis_request(rdev, request);
++      return ret;
++}
++
++
+ static int rndis_filter_query_device_link_status(struct rndis_device *dev)
+ {
+       u32 size = sizeof(u32);
+@@ -886,6 +984,28 @@ static int rndis_filter_close_device(struct rndis_device *dev)
+       return ret;
+ }
++static void netvsc_sc_open(struct vmbus_channel *new_sc)
++{
++      struct netvsc_device *nvscdev;
++      u16 chn_index = new_sc->offermsg.offer.sub_channel_index;
++      int ret;
++
++      nvscdev = hv_get_drvdata(new_sc->primary_channel->device_obj);
++
++      if (chn_index >= nvscdev->num_chn)
++              return;
++
++      set_per_channel_state(new_sc, nvscdev->sub_cb_buf + (chn_index - 1) *
++                            NETVSC_PACKET_SIZE);
++
++      ret = vmbus_open(new_sc, nvscdev->ring_size * PAGE_SIZE,
++                       nvscdev->ring_size * PAGE_SIZE, NULL, 0,
++                       netvsc_channel_cb, new_sc);
++
++      if (ret == 0)
++              nvscdev->chn_table[chn_index] = new_sc;
++}
++
+ int rndis_filter_device_add(struct hv_device *dev,
+                                 void *additional_info)
+ {
+@@ -894,6 +1014,10 @@ int rndis_filter_device_add(struct hv_device *dev,
+       struct rndis_device *rndis_device;
+       struct netvsc_device_info *device_info = additional_info;
+       struct ndis_offload_params offloads;
++      struct nvsp_message *init_packet;
++      int t;
++      struct ndis_recv_scale_cap rsscap;
++      u32 rsscap_size = sizeof(struct ndis_recv_scale_cap);
+       rndis_device = get_rndis_device();
+       if (!rndis_device)
+@@ -913,6 +1037,7 @@ int rndis_filter_device_add(struct hv_device *dev,
+       /* Initialize the rndis device */
+       net_device = hv_get_drvdata(dev);
++      net_device->num_chn = 1;
+       net_device->extension = rndis_device;
+       rndis_device->net_dev = net_device;
+@@ -952,7 +1077,6 @@ int rndis_filter_device_add(struct hv_device *dev,
+       if (ret)
+               goto err_dev_remv;
+-
+       rndis_filter_query_device_link_status(rndis_device);
+       device_info->link_state = rndis_device->link_state;
+@@ -961,7 +1085,66 @@ int rndis_filter_device_add(struct hv_device *dev,
+                rndis_device->hw_mac_adr,
+                device_info->link_state ? "down" : "up");
+-      return ret;
++      if (net_device->nvsp_version < NVSP_PROTOCOL_VERSION_5)
++              return 0;
++
++      /* vRSS setup */
++      memset(&rsscap, 0, rsscap_size);
++      ret = rndis_filter_query_device(rndis_device,
++                                      OID_GEN_RECEIVE_SCALE_CAPABILITIES,
++                                      &rsscap, &rsscap_size);
++      if (ret || rsscap.num_recv_que < 2)
++              goto out;
++
++      net_device->num_chn = (num_online_cpus() < rsscap.num_recv_que) ?
++                             num_online_cpus() : rsscap.num_recv_que;
++      if (net_device->num_chn == 1)
++              goto out;
++
++      net_device->sub_cb_buf = vzalloc((net_device->num_chn - 1) *
++                                       NETVSC_PACKET_SIZE);
++      if (!net_device->sub_cb_buf) {
++              net_device->num_chn = 1;
++              dev_info(&dev->device, "No memory for subchannels.\n");
++              goto out;
++      }
++
++      vmbus_set_sc_create_callback(dev->channel, netvsc_sc_open);
++
++      init_packet = &net_device->channel_init_pkt;
++      memset(init_packet, 0, sizeof(struct nvsp_message));
++      init_packet->hdr.msg_type = NVSP_MSG5_TYPE_SUBCHANNEL;
++      init_packet->msg.v5_msg.subchn_req.op = NVSP_SUBCHANNEL_ALLOCATE;
++      init_packet->msg.v5_msg.subchn_req.num_subchannels =
++                                              net_device->num_chn - 1;
++      ret = vmbus_sendpacket(dev->channel, init_packet,
++                             sizeof(struct nvsp_message),
++                             (unsigned long)init_packet,
++                             VM_PKT_DATA_INBAND,
++                             VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED);
++      if (ret)
++              goto out;
++      t = wait_for_completion_timeout(&net_device->channel_init_wait, 5*HZ);
++      if (t == 0) {
++              ret = -ETIMEDOUT;
++              goto out;
++      }
++      if (init_packet->msg.v5_msg.subchn_comp.status !=
++          NVSP_STAT_SUCCESS) {
++              ret = -ENODEV;
++              goto out;
++      }
++      net_device->num_chn = 1 +
++              init_packet->msg.v5_msg.subchn_comp.num_subchannels;
++
++      vmbus_are_subchannels_present(dev->channel);
++
++      ret = rndis_filter_set_rss_param(rndis_device, net_device->num_chn);
++
++out:
++      if (ret)
++              net_device->num_chn = 1;
++      return 0; /* return 0 because primary channel can be used alone */
+ err_dev_remv:
+       rndis_filter_device_remove(dev);
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0017-hyperv-Remove-recv_pkt_list-and-lock.patch b/src/patches/linux/0017-hyperv-Remove-recv_pkt_list-and-lock.patch
new file mode 100644 (file)
index 0000000..31465a1
--- /dev/null
@@ -0,0 +1,384 @@
+From d6bf5567c1438b4f3b1bcff1a1525ddb1754df19 Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Mon, 21 Apr 2014 14:54:43 -0700
+Subject: [PATCH 17/25] hyperv: Remove recv_pkt_list and lock
+
+Removed recv_pkt_list and lock, and updated related code, so that
+the locking overhead is reduced especially when multiple channels
+are in use.
+
+The recv_pkt_list isn't actually necessary because the packets are
+processed sequentially in each channel. It has been replaced by a
+local variable, and the related lock for this list is also removed.
+The is_data_pkt field is not used in receive path, so its assignment
+is cleaned up.
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   |  33 --------
+ drivers/net/hyperv/netvsc.c       | 174 +++-----------------------------------
+ drivers/net/hyperv/netvsc_drv.c   |   2 +-
+ drivers/net/hyperv/rndis_filter.c |   2 -
+ 4 files changed, 13 insertions(+), 198 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 57eb3f906d64..a1af0f7711e2 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -119,27 +119,14 @@ struct ndis_recv_scale_param { /* NDIS_RECEIVE_SCALE_PARAMETERS */
+ };
+ /* Fwd declaration */
+-struct hv_netvsc_packet;
+ struct ndis_tcp_ip_checksum_info;
+-/* Represent the xfer page packet which contains 1 or more netvsc packet */
+-struct xferpage_packet {
+-      struct list_head list_ent;
+-      u32 status;
+-
+-      /* # of netvsc packets this xfer packet contains */
+-      u32 count;
+-
+-      struct vmbus_channel *channel;
+-};
+-
+ /*
+  * Represent netvsc packet which contains 1 RNDIS and 1 ethernet frame
+  * within the RNDIS
+  */
+ struct hv_netvsc_packet {
+       /* Bookkeeping stuff */
+-      struct list_head list_ent;
+       u32 status;
+       struct hv_device *device;
+@@ -149,19 +136,8 @@ struct hv_netvsc_packet {
+       u16 q_idx;
+       struct vmbus_channel *channel;
+-      /*
+-       * Valid only for receives when we break a xfer page packet
+-       * into multiple netvsc packets
+-       */
+-      struct xferpage_packet *xfer_page_pkt;
+-
+       union {
+               struct {
+-                      u64 recv_completion_tid;
+-                      void *recv_completion_ctx;
+-                      void (*recv_completion)(void *context);
+-              } recv;
+-              struct {
+                       u64 send_completion_tid;
+                       void *send_completion_ctx;
+                       void (*send_completion)(void *context);
+@@ -613,9 +589,6 @@ struct nvsp_message {
+ #define NETVSC_RECEIVE_BUFFER_ID              0xcafe
+-/* Preallocated receive packets */
+-#define NETVSC_RECEIVE_PACKETLIST_COUNT               256
+-
+ #define NETVSC_PACKET_SIZE                      2048
+ #define VRSS_SEND_TAB_SIZE 16
+@@ -630,12 +603,6 @@ struct netvsc_device {
+       wait_queue_head_t wait_drain;
+       bool start_remove;
+       bool destroy;
+-      /*
+-       * List of free preallocated hv_netvsc_packet to represent receive
+-       * packet
+-       */
+-      struct list_head recv_pkt_list;
+-      spinlock_t recv_pkt_list_lock;
+       /* Receive buffer allocated by us but manages by NetVSP */
+       void *recv_buf;
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index e7e77f12bc38..b10334773b32 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -387,7 +387,6 @@ static void netvsc_disconnect_vsp(struct netvsc_device *net_device)
+ int netvsc_device_remove(struct hv_device *device)
+ {
+       struct netvsc_device *net_device;
+-      struct hv_netvsc_packet *netvsc_packet, *pos;
+       unsigned long flags;
+       net_device = hv_get_drvdata(device);
+@@ -416,12 +415,6 @@ int netvsc_device_remove(struct hv_device *device)
+       vmbus_close(device->channel);
+       /* Release all resources */
+-      list_for_each_entry_safe(netvsc_packet, pos,
+-                               &net_device->recv_pkt_list, list_ent) {
+-              list_del(&netvsc_packet->list_ent);
+-              kfree(netvsc_packet);
+-      }
+-
+       if (net_device->sub_cb_buf)
+               vfree(net_device->sub_cb_buf);
+@@ -641,62 +634,6 @@ retry_send_cmplt:
+       }
+ }
+-/* Send a receive completion packet to RNDIS device (ie NetVsp) */
+-static void netvsc_receive_completion(void *context)
+-{
+-      struct hv_netvsc_packet *packet = context;
+-      struct hv_device *device = packet->device;
+-      struct vmbus_channel *channel;
+-      struct netvsc_device *net_device;
+-      u64 transaction_id = 0;
+-      bool fsend_receive_comp = false;
+-      unsigned long flags;
+-      struct net_device *ndev;
+-      u32 status = NVSP_STAT_NONE;
+-
+-      /*
+-       * Even though it seems logical to do a GetOutboundNetDevice() here to
+-       * send out receive completion, we are using GetInboundNetDevice()
+-       * since we may have disable outbound traffic already.
+-       */
+-      net_device = get_inbound_net_device(device);
+-      if (!net_device)
+-              return;
+-      ndev = net_device->ndev;
+-
+-      /* Overloading use of the lock. */
+-      spin_lock_irqsave(&net_device->recv_pkt_list_lock, flags);
+-
+-      if (packet->status != NVSP_STAT_SUCCESS)
+-              packet->xfer_page_pkt->status = NVSP_STAT_FAIL;
+-
+-      packet->xfer_page_pkt->count--;
+-
+-      /*
+-       * Last one in the line that represent 1 xfer page packet.
+-       * Return the xfer page packet itself to the freelist
+-       */
+-      if (packet->xfer_page_pkt->count == 0) {
+-              fsend_receive_comp = true;
+-              channel = packet->xfer_page_pkt->channel;
+-              transaction_id = packet->completion.recv.recv_completion_tid;
+-              status = packet->xfer_page_pkt->status;
+-              list_add_tail(&packet->xfer_page_pkt->list_ent,
+-                            &net_device->recv_pkt_list);
+-
+-      }
+-
+-      /* Put the packet back */
+-      list_add_tail(&packet->list_ent, &net_device->recv_pkt_list);
+-      spin_unlock_irqrestore(&net_device->recv_pkt_list_lock, flags);
+-
+-      /* Send a receive completion for the xfer page packet */
+-      if (fsend_receive_comp)
+-              netvsc_send_recv_completion(device, channel, net_device,
+-                                          transaction_id, status);
+-
+-}
+-
+ static void netvsc_receive(struct netvsc_device *net_device,
+                       struct vmbus_channel *channel,
+                       struct hv_device *device,
+@@ -704,16 +641,13 @@ static void netvsc_receive(struct netvsc_device *net_device,
+ {
+       struct vmtransfer_page_packet_header *vmxferpage_packet;
+       struct nvsp_message *nvsp_packet;
+-      struct hv_netvsc_packet *netvsc_packet = NULL;
+-      /* struct netvsc_driver *netvscDriver; */
+-      struct xferpage_packet *xferpage_packet = NULL;
++      struct hv_netvsc_packet nv_pkt;
++      struct hv_netvsc_packet *netvsc_packet = &nv_pkt;
++      u32 status = NVSP_STAT_SUCCESS;
+       int i;
+       int count = 0;
+-      unsigned long flags;
+       struct net_device *ndev;
+-      LIST_HEAD(listHead);
+-
+       ndev = net_device->ndev;
+       /*
+@@ -746,78 +680,14 @@ static void netvsc_receive(struct netvsc_device *net_device,
+               return;
+       }
+-      /*
+-       * Grab free packets (range count + 1) to represent this xfer
+-       * page packet. +1 to represent the xfer page packet itself.
+-       * We grab it here so that we know exactly how many we can
+-       * fulfil
+-       */
+-      spin_lock_irqsave(&net_device->recv_pkt_list_lock, flags);
+-      while (!list_empty(&net_device->recv_pkt_list)) {
+-              list_move_tail(net_device->recv_pkt_list.next, &listHead);
+-              if (++count == vmxferpage_packet->range_cnt + 1)
+-                      break;
+-      }
+-      spin_unlock_irqrestore(&net_device->recv_pkt_list_lock, flags);
+-
+-      /*
+-       * We need at least 2 netvsc pkts (1 to represent the xfer
+-       * page and at least 1 for the range) i.e. we can handled
+-       * some of the xfer page packet ranges...
+-       */
+-      if (count < 2) {
+-              netdev_err(ndev, "Got only %d netvsc pkt...needed "
+-                      "%d pkts. Dropping this xfer page packet completely!\n",
+-                      count, vmxferpage_packet->range_cnt + 1);
+-
+-              /* Return it to the freelist */
+-              spin_lock_irqsave(&net_device->recv_pkt_list_lock, flags);
+-              for (i = count; i != 0; i--) {
+-                      list_move_tail(listHead.next,
+-                                     &net_device->recv_pkt_list);
+-              }
+-              spin_unlock_irqrestore(&net_device->recv_pkt_list_lock,
+-                                     flags);
+-
+-              netvsc_send_recv_completion(device, channel, net_device,
+-                                          vmxferpage_packet->d.trans_id,
+-                                          NVSP_STAT_FAIL);
+-
+-              return;
+-      }
+-
+-      /* Remove the 1st packet to represent the xfer page packet itself */
+-      xferpage_packet = (struct xferpage_packet *)listHead.next;
+-      list_del(&xferpage_packet->list_ent);
+-      xferpage_packet->status = NVSP_STAT_SUCCESS;
+-      xferpage_packet->channel = channel;
+-
+-      /* This is how much we can satisfy */
+-      xferpage_packet->count = count - 1;
+-
+-      if (xferpage_packet->count != vmxferpage_packet->range_cnt) {
+-              netdev_err(ndev, "Needed %d netvsc pkts to satisfy "
+-                      "this xfer page...got %d\n",
+-                      vmxferpage_packet->range_cnt, xferpage_packet->count);
+-      }
++      count = vmxferpage_packet->range_cnt;
++      netvsc_packet->device = device;
++      netvsc_packet->channel = channel;
+       /* Each range represents 1 RNDIS pkt that contains 1 ethernet frame */
+-      for (i = 0; i < (count - 1); i++) {
+-              netvsc_packet = (struct hv_netvsc_packet *)listHead.next;
+-              list_del(&netvsc_packet->list_ent);
+-
++      for (i = 0; i < count; i++) {
+               /* Initialize the netvsc packet */
+               netvsc_packet->status = NVSP_STAT_SUCCESS;
+-              netvsc_packet->xfer_page_pkt = xferpage_packet;
+-              netvsc_packet->completion.recv.recv_completion =
+-                                      netvsc_receive_completion;
+-              netvsc_packet->completion.recv.recv_completion_ctx =
+-                                      netvsc_packet;
+-              netvsc_packet->device = device;
+-              /* Save this so that we can send it back */
+-              netvsc_packet->completion.recv.recv_completion_tid =
+-                                      vmxferpage_packet->d.trans_id;
+-
+               netvsc_packet->data = (void *)((unsigned long)net_device->
+                       recv_buf + vmxferpage_packet->ranges[i].byte_offset);
+               netvsc_packet->total_data_buflen =
+@@ -826,10 +696,12 @@ static void netvsc_receive(struct netvsc_device *net_device,
+               /* Pass it to the upper layer */
+               rndis_filter_receive(device, netvsc_packet);
+-              netvsc_receive_completion(netvsc_packet->
+-                              completion.recv.recv_completion_ctx);
++              if (netvsc_packet->status != NVSP_STAT_SUCCESS)
++                      status = NVSP_STAT_FAIL;
+       }
++      netvsc_send_recv_completion(device, channel, net_device,
++                                  vmxferpage_packet->d.trans_id, status);
+ }
+@@ -956,11 +828,9 @@ void netvsc_channel_cb(void *context)
+ int netvsc_device_add(struct hv_device *device, void *additional_info)
+ {
+       int ret = 0;
+-      int i;
+       int ring_size =
+       ((struct netvsc_device_info *)additional_info)->ring_size;
+       struct netvsc_device *net_device;
+-      struct hv_netvsc_packet *packet, *pos;
+       struct net_device *ndev;
+       net_device = alloc_net_device(device);
+@@ -981,18 +851,6 @@ int netvsc_device_add(struct hv_device *device, void *additional_info)
+       ndev = net_device->ndev;
+       /* Initialize the NetVSC channel extension */
+-      spin_lock_init(&net_device->recv_pkt_list_lock);
+-
+-      INIT_LIST_HEAD(&net_device->recv_pkt_list);
+-
+-      for (i = 0; i < NETVSC_RECEIVE_PACKETLIST_COUNT; i++) {
+-              packet = kzalloc(sizeof(struct hv_netvsc_packet), GFP_KERNEL);
+-              if (!packet)
+-                      break;
+-
+-              list_add_tail(&packet->list_ent,
+-                            &net_device->recv_pkt_list);
+-      }
+       init_completion(&net_device->channel_init_wait);
+       set_per_channel_state(device->channel, net_device->cb_buffer);
+@@ -1028,16 +886,8 @@ close:
+ cleanup:
+-      if (net_device) {
+-              list_for_each_entry_safe(packet, pos,
+-                                       &net_device->recv_pkt_list,
+-                                       list_ent) {
+-                      list_del(&packet->list_ent);
+-                      kfree(packet);
+-              }
+-
++      if (net_device)
+               kfree(net_device);
+-      }
+       return ret;
+ }
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index e486dbd33f61..6cc4db064fec 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -643,7 +643,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+               __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
+                                      packet->vlan_tci);
+-      skb_record_rx_queue(skb, packet->xfer_page_pkt->channel->
++      skb_record_rx_queue(skb, packet->channel->
+                           offermsg.offer.sub_channel_index %
+                           net->real_num_rx_queues);
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index d92cfbe43410..48f5a0fbd674 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -401,8 +401,6 @@ static void rndis_filter_receive_data(struct rndis_device *dev,
+       pkt->total_data_buflen = rndis_pkt->data_len;
+       pkt->data = (void *)((unsigned long)pkt->data + data_offset);
+-      pkt->is_data_pkt = true;
+-
+       vlan = rndis_get_ppi(rndis_pkt, IEEE_8021Q_INFO);
+       if (vlan) {
+               pkt->vlan_tci = VLAN_TAG_PRESENT | vlan->vlanid |
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0018-hyperv-Simplify-the-send_completion-variables.patch b/src/patches/linux/0018-hyperv-Simplify-the-send_completion-variables.patch
new file mode 100644 (file)
index 0000000..82b742b
--- /dev/null
@@ -0,0 +1,105 @@
+From d6eeeb452c1e6e7cf14f4a581a8f2ea2c50ec17a Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Mon, 21 Apr 2014 14:54:44 -0700
+Subject: [PATCH 18/25] hyperv: Simplify the send_completion variables
+
+The union contains only one member now, so we use the variables in it directly.
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h   | 10 +++-------
+ drivers/net/hyperv/netvsc.c       |  7 +++----
+ drivers/net/hyperv/netvsc_drv.c   |  8 ++++----
+ drivers/net/hyperv/rndis_filter.c |  2 +-
+ 4 files changed, 11 insertions(+), 16 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index a1af0f7711e2..d1f7826aa75f 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -136,13 +136,9 @@ struct hv_netvsc_packet {
+       u16 q_idx;
+       struct vmbus_channel *channel;
+-      union {
+-              struct {
+-                      u64 send_completion_tid;
+-                      void *send_completion_ctx;
+-                      void (*send_completion)(void *context);
+-              } send;
+-      } completion;
++      u64 send_completion_tid;
++      void *send_completion_ctx;
++      void (*send_completion)(void *context);
+       /* This points to the memory after page_buf */
+       struct rndis_message *rndis_msg;
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index b10334773b32..bbee44635035 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -479,9 +479,8 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+               if (nvsc_packet) {
+                       q_idx = nvsc_packet->q_idx;
+                       channel = nvsc_packet->channel;
+-                      nvsc_packet->completion.send.send_completion(
+-                              nvsc_packet->completion.send.
+-                              send_completion_ctx);
++                      nvsc_packet->send_completion(nvsc_packet->
++                                                   send_completion_ctx);
+               }
+               num_outstanding_sends =
+@@ -534,7 +533,7 @@ int netvsc_send(struct hv_device *device,
+               0xFFFFFFFF;
+       sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_size = 0;
+-      if (packet->completion.send.send_completion)
++      if (packet->send_completion)
+               req_id = (ulong)packet;
+       else
+               req_id = 0;
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 6cc4db064fec..f3d3525ed42d 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -235,7 +235,7 @@ static void netvsc_xmit_completion(void *context)
+ {
+       struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
+       struct sk_buff *skb = (struct sk_buff *)
+-              (unsigned long)packet->completion.send.send_completion_tid;
++              (unsigned long)packet->send_completion_tid;
+       kfree(packet);
+@@ -426,9 +426,9 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+                               (num_data_pgs * sizeof(struct hv_page_buffer)));
+       /* Set the completion routine */
+-      packet->completion.send.send_completion = netvsc_xmit_completion;
+-      packet->completion.send.send_completion_ctx = packet;
+-      packet->completion.send.send_completion_tid = (unsigned long)skb;
++      packet->send_completion = netvsc_xmit_completion;
++      packet->send_completion_ctx = packet;
++      packet->send_completion_tid = (unsigned long)skb;
+       isvlan = packet->vlan_tci & VLAN_TAG_PRESENT;
+diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
+index 48f5a0fbd674..99c527adae5b 100644
+--- a/drivers/net/hyperv/rndis_filter.c
++++ b/drivers/net/hyperv/rndis_filter.c
+@@ -236,7 +236,7 @@ static int rndis_filter_send_request(struct rndis_device *dev,
+                       packet->page_buf[0].len;
+       }
+-      packet->completion.send.send_completion = NULL;
++      packet->send_completion = NULL;
+       ret = netvsc_send(dev->net_dev->dev, packet);
+       return ret;
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0019-hyperv-Enable-sendbuf-mechanism-on-the-send-path.patch b/src/patches/linux/0019-hyperv-Enable-sendbuf-mechanism-on-the-send-path.patch
new file mode 100644 (file)
index 0000000..3940865
--- /dev/null
@@ -0,0 +1,407 @@
+From 4685e50349d5dc5fe485c898ca3ce539e93a0118 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Wed, 30 Apr 2014 10:14:31 -0700
+Subject: [PATCH 19/25] hyperv: Enable sendbuf mechanism on the send path
+
+We send packets using a copy-free mechanism (this is the Guest to Host transport
+via VMBUS). While this is obviously optimal for large packets,
+it may not be optimal for small packets. Hyper-V host supports
+a second mechanism for sending packets that is "copy based". We implement that
+mechanism in this patch.
+
+In this version of the patch I have addressed a comment from David Miller.
+
+With this patch (and all of the other offload and VRSS patches), we are now able
+to almost saturate a 10G interface between Linux VMs on Hyper-V
+on different hosts - close to  9 Gbps as measured via iperf.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h |  14 +++
+ drivers/net/hyperv/netvsc.c     | 226 ++++++++++++++++++++++++++++++++++++++--
+ drivers/net/hyperv/netvsc_drv.c |   3 +-
+ 3 files changed, 234 insertions(+), 9 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index d1f7826aa75f..4b7df5a5c966 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -140,6 +140,8 @@ struct hv_netvsc_packet {
+       void *send_completion_ctx;
+       void (*send_completion)(void *context);
++      u32 send_buf_index;
++
+       /* This points to the memory after page_buf */
+       struct rndis_message *rndis_msg;
+@@ -582,6 +584,9 @@ struct nvsp_message {
+ #define NETVSC_RECEIVE_BUFFER_SIZE            (1024*1024*16)  /* 16MB */
+ #define NETVSC_RECEIVE_BUFFER_SIZE_LEGACY     (1024*1024*15)  /* 15MB */
++#define NETVSC_SEND_BUFFER_SIZE                       (1024 * 1024)   /* 1MB */
++#define NETVSC_INVALID_INDEX                  -1
++
+ #define NETVSC_RECEIVE_BUFFER_ID              0xcafe
+@@ -607,6 +612,15 @@ struct netvsc_device {
+       u32 recv_section_cnt;
+       struct nvsp_1_receive_buffer_section *recv_section;
++      /* Send buffer allocated by us */
++      void *send_buf;
++      u32 send_buf_size;
++      u32 send_buf_gpadl_handle;
++      u32 send_section_cnt;
++      u32 send_section_size;
++      unsigned long *send_section_map;
++      int map_words;
++
+       /* Used for NetVSP initialization protocol */
+       struct completion channel_init_wait;
+       struct nvsp_message channel_init_pkt;
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index bbee44635035..c041f63a6d30 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -28,6 +28,7 @@
+ #include <linux/slab.h>
+ #include <linux/netdevice.h>
+ #include <linux/if_ether.h>
++#include <asm/sync_bitops.h>
+ #include "hyperv_net.h"
+@@ -80,7 +81,7 @@ get_in_err:
+ }
+-static int netvsc_destroy_recv_buf(struct netvsc_device *net_device)
++static int netvsc_destroy_buf(struct netvsc_device *net_device)
+ {
+       struct nvsp_message *revoke_packet;
+       int ret = 0;
+@@ -146,10 +147,62 @@ static int netvsc_destroy_recv_buf(struct netvsc_device *net_device)
+               net_device->recv_section = NULL;
+       }
++      /* Deal with the send buffer we may have setup.
++       * If we got a  send section size, it means we received a
++       * SendsendBufferComplete msg (ie sent
++       * NvspMessage1TypeSendReceiveBuffer msg) therefore, we need
++       * to send a revoke msg here
++       */
++      if (net_device->send_section_size) {
++              /* Send the revoke receive buffer */
++              revoke_packet = &net_device->revoke_packet;
++              memset(revoke_packet, 0, sizeof(struct nvsp_message));
++
++              revoke_packet->hdr.msg_type =
++                      NVSP_MSG1_TYPE_REVOKE_SEND_BUF;
++              revoke_packet->msg.v1_msg.revoke_recv_buf.id = 0;
++
++              ret = vmbus_sendpacket(net_device->dev->channel,
++                                     revoke_packet,
++                                     sizeof(struct nvsp_message),
++                                     (unsigned long)revoke_packet,
++                                     VM_PKT_DATA_INBAND, 0);
++              /* If we failed here, we might as well return and
++               * have a leak rather than continue and a bugchk
++               */
++              if (ret != 0) {
++                      netdev_err(ndev, "unable to send "
++                                 "revoke send buffer to netvsp\n");
++                      return ret;
++              }
++      }
++      /* Teardown the gpadl on the vsp end */
++      if (net_device->send_buf_gpadl_handle) {
++              ret = vmbus_teardown_gpadl(net_device->dev->channel,
++                                         net_device->send_buf_gpadl_handle);
++
++              /* If we failed here, we might as well return and have a leak
++               * rather than continue and a bugchk
++               */
++              if (ret != 0) {
++                      netdev_err(ndev,
++                                 "unable to teardown send buffer's gpadl\n");
++                      return ret;
++              }
++              net_device->recv_buf_gpadl_handle = 0;
++      }
++      if (net_device->send_buf) {
++              /* Free up the receive buffer */
++              free_pages((unsigned long)net_device->send_buf,
++                         get_order(net_device->send_buf_size));
++              net_device->send_buf = NULL;
++      }
++      kfree(net_device->send_section_map);
++
+       return ret;
+ }
+-static int netvsc_init_recv_buf(struct hv_device *device)
++static int netvsc_init_buf(struct hv_device *device)
+ {
+       int ret = 0;
+       int t;
+@@ -248,10 +301,90 @@ static int netvsc_init_recv_buf(struct hv_device *device)
+               goto cleanup;
+       }
++      /* Now setup the send buffer.
++       */
++      net_device->send_buf =
++              (void *)__get_free_pages(GFP_KERNEL|__GFP_ZERO,
++                                       get_order(net_device->send_buf_size));
++      if (!net_device->send_buf) {
++              netdev_err(ndev, "unable to allocate send "
++                         "buffer of size %d\n", net_device->send_buf_size);
++              ret = -ENOMEM;
++              goto cleanup;
++      }
++
++      /* Establish the gpadl handle for this buffer on this
++       * channel.  Note: This call uses the vmbus connection rather
++       * than the channel to establish the gpadl handle.
++       */
++      ret = vmbus_establish_gpadl(device->channel, net_device->send_buf,
++                                  net_device->send_buf_size,
++                                  &net_device->send_buf_gpadl_handle);
++      if (ret != 0) {
++              netdev_err(ndev,
++                         "unable to establish send buffer's gpadl\n");
++              goto cleanup;
++      }
++
++      /* Notify the NetVsp of the gpadl handle */
++      init_packet = &net_device->channel_init_pkt;
++      memset(init_packet, 0, sizeof(struct nvsp_message));
++      init_packet->hdr.msg_type = NVSP_MSG1_TYPE_SEND_SEND_BUF;
++      init_packet->msg.v1_msg.send_recv_buf.gpadl_handle =
++              net_device->send_buf_gpadl_handle;
++      init_packet->msg.v1_msg.send_recv_buf.id = 0;
++
++      /* Send the gpadl notification request */
++      ret = vmbus_sendpacket(device->channel, init_packet,
++                             sizeof(struct nvsp_message),
++                             (unsigned long)init_packet,
++                             VM_PKT_DATA_INBAND,
++                             VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED);
++      if (ret != 0) {
++              netdev_err(ndev,
++                         "unable to send send buffer's gpadl to netvsp\n");
++              goto cleanup;
++      }
++
++      t = wait_for_completion_timeout(&net_device->channel_init_wait, 5*HZ);
++      BUG_ON(t == 0);
++
++      /* Check the response */
++      if (init_packet->msg.v1_msg.
++          send_send_buf_complete.status != NVSP_STAT_SUCCESS) {
++              netdev_err(ndev, "Unable to complete send buffer "
++                         "initialization with NetVsp - status %d\n",
++                         init_packet->msg.v1_msg.
++                         send_recv_buf_complete.status);
++              ret = -EINVAL;
++              goto cleanup;
++      }
++
++      /* Parse the response */
++      net_device->send_section_size = init_packet->msg.
++                              v1_msg.send_send_buf_complete.section_size;
++
++      /* Section count is simply the size divided by the section size.
++       */
++      net_device->send_section_cnt =
++              net_device->send_buf_size/net_device->send_section_size;
++
++      dev_info(&device->device, "Send section size: %d, Section count:%d\n",
++               net_device->send_section_size, net_device->send_section_cnt);
++
++      /* Setup state for managing the send buffer. */
++      net_device->map_words = DIV_ROUND_UP(net_device->send_section_cnt,
++                                           BITS_PER_LONG);
++
++      net_device->send_section_map =
++              kzalloc(net_device->map_words * sizeof(ulong), GFP_KERNEL);
++      if (net_device->send_section_map == NULL)
++              goto cleanup;
++
+       goto exit;
+ cleanup:
+-      netvsc_destroy_recv_buf(net_device);
++      netvsc_destroy_buf(net_device);
+ exit:
+       return ret;
+@@ -369,8 +502,9 @@ static int netvsc_connect_vsp(struct hv_device *device)
+               net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE_LEGACY;
+       else
+               net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE;
++      net_device->send_buf_size = NETVSC_SEND_BUFFER_SIZE;
+-      ret = netvsc_init_recv_buf(device);
++      ret = netvsc_init_buf(device);
+ cleanup:
+       return ret;
+@@ -378,7 +512,7 @@ cleanup:
+ static void netvsc_disconnect_vsp(struct netvsc_device *net_device)
+ {
+-      netvsc_destroy_recv_buf(net_device);
++      netvsc_destroy_buf(net_device);
+ }
+ /*
+@@ -440,6 +574,12 @@ static inline u32 hv_ringbuf_avail_percent(
+       return avail_write * 100 / ring_info->ring_datasize;
+ }
++static inline void netvsc_free_send_slot(struct netvsc_device *net_device,
++                                       u32 index)
++{
++      sync_change_bit(index, net_device->send_section_map);
++}
++
+ static void netvsc_send_completion(struct netvsc_device *net_device,
+                                  struct hv_device *device,
+                                  struct vmpacket_descriptor *packet)
+@@ -447,6 +587,7 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+       struct nvsp_message *nvsp_packet;
+       struct hv_netvsc_packet *nvsc_packet;
+       struct net_device *ndev;
++      u32 send_index;
+       ndev = net_device->ndev;
+@@ -477,6 +618,9 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+               /* Notify the layer above us */
+               if (nvsc_packet) {
++                      send_index = nvsc_packet->send_buf_index;
++                      if (send_index != NETVSC_INVALID_INDEX)
++                              netvsc_free_send_slot(net_device, send_index);
+                       q_idx = nvsc_packet->q_idx;
+                       channel = nvsc_packet->channel;
+                       nvsc_packet->send_completion(nvsc_packet->
+@@ -504,6 +648,52 @@ static void netvsc_send_completion(struct netvsc_device *net_device,
+ }
++static u32 netvsc_get_next_send_section(struct netvsc_device *net_device)
++{
++      unsigned long index;
++      u32 max_words = net_device->map_words;
++      unsigned long *map_addr = (unsigned long *)net_device->send_section_map;
++      u32 section_cnt = net_device->send_section_cnt;
++      int ret_val = NETVSC_INVALID_INDEX;
++      int i;
++      int prev_val;
++
++      for (i = 0; i < max_words; i++) {
++              if (!~(map_addr[i]))
++                      continue;
++              index = ffz(map_addr[i]);
++              prev_val = sync_test_and_set_bit(index, &map_addr[i]);
++              if (prev_val)
++                      continue;
++              if ((index + (i * BITS_PER_LONG)) >= section_cnt)
++                      break;
++              ret_val = (index + (i * BITS_PER_LONG));
++              break;
++      }
++      return ret_val;
++}
++
++u32 netvsc_copy_to_send_buf(struct netvsc_device *net_device,
++                          unsigned int section_index,
++                          struct hv_netvsc_packet *packet)
++{
++      char *start = net_device->send_buf;
++      char *dest = (start + (section_index * net_device->send_section_size));
++      int i;
++      u32 msg_size = 0;
++
++      for (i = 0; i < packet->page_buf_cnt; i++) {
++              char *src = phys_to_virt(packet->page_buf[i].pfn << PAGE_SHIFT);
++              u32 offset = packet->page_buf[i].offset;
++              u32 len = packet->page_buf[i].len;
++
++              memcpy(dest, (src + offset), len);
++              msg_size += len;
++              dest += len;
++      }
++      return msg_size;
++}
++
+ int netvsc_send(struct hv_device *device,
+                       struct hv_netvsc_packet *packet)
+ {
+@@ -513,6 +703,10 @@ int netvsc_send(struct hv_device *device,
+       struct net_device *ndev;
+       struct vmbus_channel *out_channel = NULL;
+       u64 req_id;
++      unsigned int section_index = NETVSC_INVALID_INDEX;
++      u32 msg_size = 0;
++      struct sk_buff *skb;
++
+       net_device = get_outbound_net_device(device);
+       if (!net_device)
+@@ -528,10 +722,26 @@ int netvsc_send(struct hv_device *device,
+               sendMessage.msg.v1_msg.send_rndis_pkt.channel_type = 1;
+       }
+-      /* Not using send buffer section */
++      /* Attempt to send via sendbuf */
++      if (packet->total_data_buflen < net_device->send_section_size) {
++              section_index = netvsc_get_next_send_section(net_device);
++              if (section_index != NETVSC_INVALID_INDEX) {
++                      msg_size = netvsc_copy_to_send_buf(net_device,
++                                                         section_index,
++                                                         packet);
++                      skb = (struct sk_buff *)
++                            (unsigned long)packet->send_completion_tid;
++                      if (skb)
++                              dev_kfree_skb_any(skb);
++                      packet->page_buf_cnt = 0;
++              }
++      }
++      packet->send_buf_index = section_index;
++
++
+       sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_index =
+-              0xFFFFFFFF;
+-      sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_size = 0;
++              section_index;
++      sendMessage.msg.v1_msg.send_rndis_pkt.send_buf_section_size = msg_size;
+       if (packet->send_completion)
+               req_id = (ulong)packet;
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index f3d3525ed42d..9a19aa5672e6 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -236,10 +236,11 @@ static void netvsc_xmit_completion(void *context)
+       struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
+       struct sk_buff *skb = (struct sk_buff *)
+               (unsigned long)packet->send_completion_tid;
++      u32 index = packet->send_buf_index;
+       kfree(packet);
+-      if (skb)
++      if (skb && (index == NETVSC_INVALID_INDEX))
+               dev_kfree_skb_any(skb);
+ }
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0020-Add-support-for-netvsc-build-without-CONFIG_SYSFS-fl.patch b/src/patches/linux/0020-Add-support-for-netvsc-build-without-CONFIG_SYSFS-fl.patch
new file mode 100644 (file)
index 0000000..b610b54
--- /dev/null
@@ -0,0 +1,42 @@
+From 3f0b77385356301cf4718a94f76a4068588ecb8e Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Thu, 8 May 2014 15:14:10 -0700
+Subject: [PATCH 20/25] Add support for netvsc build without CONFIG_SYSFS flag
+
+This change ensures the driver can be built successfully without the
+CONFIG_SYSFS flag.
+MS-TFS: 182270
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc_drv.c | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 9a19aa5672e6..346f1aeb9c24 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -645,8 +645,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+                                      packet->vlan_tci);
+       skb_record_rx_queue(skb, packet->channel->
+-                          offermsg.offer.sub_channel_index %
+-                          net->real_num_rx_queues);
++                          offermsg.offer.sub_channel_index);
+       net->stats.rx_packets++;
+       net->stats.rx_bytes += packet->total_data_buflen;
+@@ -829,8 +828,6 @@ static int netvsc_probe(struct hv_device *dev,
+       nvdev = hv_get_drvdata(dev);
+       netif_set_real_num_tx_queues(net, nvdev->num_chn);
+       netif_set_real_num_rx_queues(net, nvdev->num_chn);
+-      dev_info(&dev->device, "real num tx,rx queues:%u, %u\n",
+-               net->real_num_tx_queues, net->real_num_rx_queues);
+       ret = register_netdev(net);
+       if (ret != 0) {
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0021-hyperv-Add-hash-value-into-RNDIS-Per-packet-info.patch b/src/patches/linux/0021-hyperv-Add-hash-value-into-RNDIS-Per-packet-info.patch
new file mode 100644 (file)
index 0000000..c522d28
--- /dev/null
@@ -0,0 +1,93 @@
+From 1267d9b235e7612f8cdfa842a0433bb82e75f7fb Mon Sep 17 00:00:00 2001
+From: Haiyang Zhang <haiyangz@microsoft.com>
+Date: Wed, 21 May 2014 12:55:39 -0700
+Subject: [PATCH 21/25] hyperv: Add hash value into RNDIS Per-packet info
+
+It passes the hash value as the RNDIS Per-packet info to the Hyper-V host,
+so that the send completion notices can be spread across multiple channels.
+MS-TFS: 140273
+
+Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/hyperv_net.h |  4 ++++
+ drivers/net/hyperv/netvsc_drv.c | 18 ++++++++++++++----
+ 2 files changed, 18 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
+index 4b7df5a5c966..6cc37c15e0bf 100644
+--- a/drivers/net/hyperv/hyperv_net.h
++++ b/drivers/net/hyperv/hyperv_net.h
+@@ -791,6 +791,7 @@ enum ndis_per_pkt_info_type {
+       IEEE_8021Q_INFO,
+       ORIGINAL_PKTINFO,
+       PACKET_CANCEL_ID,
++      NBL_HASH_VALUE = PACKET_CANCEL_ID,
+       ORIGINAL_NET_BUFLIST,
+       CACHED_NET_BUFLIST,
+       SHORT_PKT_PADINFO,
+@@ -937,6 +938,9 @@ struct ndis_tcp_lso_info {
+ #define NDIS_LSO_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
+               sizeof(struct ndis_tcp_lso_info))
++#define NDIS_HASH_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
++              sizeof(u32))
++
+ /* Format of Information buffer passed in a SetRequest for the OID */
+ /* OID_GEN_RNDIS_CONFIG_PARAMETER. */
+ struct rndis_config_parameter_info {
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index 346f1aeb9c24..bd3b3acd04dc 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -224,9 +224,11 @@ static u16 netvsc_select_queue(struct net_device *ndev, struct sk_buff *skb,
+       if (nvsc_dev == NULL || ndev->real_num_tx_queues <= 1)
+               return 0;
+-      if (netvsc_set_hash(&hash, skb))
++      if (netvsc_set_hash(&hash, skb)) {
+               q_idx = nvsc_dev->send_table[hash % VRSS_SEND_TAB_SIZE] %
+                       ndev->real_num_tx_queues;
++              skb_set_hash(skb, hash, PKT_HASH_TYPE_L3);
++      }
+       return q_idx;
+ }
+@@ -385,6 +387,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       struct ndis_tcp_lso_info *lso_info;
+       int  hdr_offset;
+       u32 net_trans_info;
++      u32 hash;
+       /* We will atmost need two pages to describe the rndis
+@@ -403,9 +406,8 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       packet = kzalloc(sizeof(struct hv_netvsc_packet) +
+                        (num_data_pgs * sizeof(struct hv_page_buffer)) +
+                        sizeof(struct rndis_message) +
+-                       NDIS_VLAN_PPI_SIZE +
+-                       NDIS_CSUM_PPI_SIZE +
+-                       NDIS_LSO_PPI_SIZE, GFP_ATOMIC);
++                       NDIS_VLAN_PPI_SIZE + NDIS_CSUM_PPI_SIZE +
++                       NDIS_LSO_PPI_SIZE + NDIS_HASH_PPI_SIZE, GFP_ATOMIC);
+       if (!packet) {
+               /* out of memory, drop packet */
+               netdev_err(net, "unable to allocate hv_netvsc_packet\n");
+@@ -444,6 +446,14 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
+       rndis_msg_size = RNDIS_MESSAGE_SIZE(struct rndis_packet);
++      hash = skb_get_hash_raw(skb);
++      if (hash != 0 && net->real_num_tx_queues > 1) {
++              rndis_msg_size += NDIS_HASH_PPI_SIZE;
++              ppi = init_ppi_data(rndis_msg, NDIS_HASH_PPI_SIZE,
++                                  NBL_HASH_VALUE);
++              *(u32 *)((void *)ppi + ppi->ppi_offset) = hash;
++      }
++
+       if (isvlan) {
+               struct ndis_pkt_8021q_info *vlan;
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0022-hyperv-fix-apparent-cut-n-paste-error-in-send-path-t.patch b/src/patches/linux/0022-hyperv-fix-apparent-cut-n-paste-error-in-send-path-t.patch
new file mode 100644 (file)
index 0000000..d849ebb
--- /dev/null
@@ -0,0 +1,32 @@
+From ee99150c7f34737e4382e7199d2ffe3dfbb54a5c Mon Sep 17 00:00:00 2001
+From: Dave Jones <davej@redhat.com>
+Date: Mon, 16 Jun 2014 16:59:02 -0400
+Subject: [PATCH 22/25] hyperv: fix apparent cut-n-paste error in send path
+ teardown
+
+c25aaf814a63: "hyperv: Enable sendbuf mechanism on the send path" added
+some teardown code that looks like it was copied from the recieve path
+above, but missed a variable name replacement.
+
+Signed-off-by: Dave Jones <davej@redhat.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index c041f63a6d30..4ed38eaecea8 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -189,7 +189,7 @@ static int netvsc_destroy_buf(struct netvsc_device *net_device)
+                                  "unable to teardown send buffer's gpadl\n");
+                       return ret;
+               }
+-              net_device->recv_buf_gpadl_handle = 0;
++              net_device->send_buf_gpadl_handle = 0;
+       }
+       if (net_device->send_buf) {
+               /* Free up the receive buffer */
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0023-hyperv-Fix-error-return-code-in-netvsc_init_buf.patch b/src/patches/linux/0023-hyperv-Fix-error-return-code-in-netvsc_init_buf.patch
new file mode 100644 (file)
index 0000000..ab0960d
--- /dev/null
@@ -0,0 +1,34 @@
+From f1009dfec7c439a958bd9ed8893dd6aa692c61f5 Mon Sep 17 00:00:00 2001
+From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
+Date: Wed, 23 Jul 2014 09:00:35 +0800
+Subject: [PATCH 23/25] hyperv: Fix error return code in netvsc_init_buf()
+
+Fix to return -ENOMEM from the kalloc error handling
+case instead of 0.
+
+Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
+Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/hyperv/netvsc.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index 4ed38eaecea8..d97d5f39a04e 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -378,8 +378,10 @@ static int netvsc_init_buf(struct hv_device *device)
+       net_device->send_section_map =
+               kzalloc(net_device->map_words * sizeof(ulong), GFP_KERNEL);
+-      if (net_device->send_section_map == NULL)
++      if (net_device->send_section_map == NULL) {
++              ret = -ENOMEM;
+               goto cleanup;
++      }
+       goto exit;
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0024-hyperv-Fix-a-bug-in-netvsc_send.patch b/src/patches/linux/0024-hyperv-Fix-a-bug-in-netvsc_send.patch
new file mode 100644 (file)
index 0000000..8495fa2
--- /dev/null
@@ -0,0 +1,68 @@
+From 38bca2d5bd6fdaa0b8e1e415f79d89322c6825a8 Mon Sep 17 00:00:00 2001
+From: KY Srinivasan <kys@microsoft.com>
+Date: Sun, 5 Oct 2014 10:42:51 -0700
+Subject: [PATCH 24/25] hyperv: Fix a bug in netvsc_send()
+
+[ Upstream commit 3a67c9ccad926a168d8b7891537a452018368a5b ]
+
+After the packet is successfully sent, we should not touch the packet
+as it may have been freed. This patch is based on the work done by
+Long Li <longli@microsoft.com>.
+
+David, please queue this up for stable.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Reported-by: Sitsofe Wheeler <sitsofe@yahoo.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/hyperv/netvsc.c | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+index d97d5f39a04e..7edf976ecfa0 100644
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -708,6 +708,7 @@ int netvsc_send(struct hv_device *device,
+       unsigned int section_index = NETVSC_INVALID_INDEX;
+       u32 msg_size = 0;
+       struct sk_buff *skb;
++      u16 q_idx = packet->q_idx;
+       net_device = get_outbound_net_device(device);
+@@ -772,24 +773,24 @@ int netvsc_send(struct hv_device *device,
+       if (ret == 0) {
+               atomic_inc(&net_device->num_outstanding_sends);
+-              atomic_inc(&net_device->queue_sends[packet->q_idx]);
++              atomic_inc(&net_device->queue_sends[q_idx]);
+               if (hv_ringbuf_avail_percent(&out_channel->outbound) <
+                       RING_AVAIL_PERCENT_LOWATER) {
+                       netif_tx_stop_queue(netdev_get_tx_queue(
+-                                          ndev, packet->q_idx));
++                                          ndev, q_idx));
+                       if (atomic_read(&net_device->
+-                              queue_sends[packet->q_idx]) < 1)
++                              queue_sends[q_idx]) < 1)
+                               netif_tx_wake_queue(netdev_get_tx_queue(
+-                                                  ndev, packet->q_idx));
++                                                  ndev, q_idx));
+               }
+       } else if (ret == -EAGAIN) {
+               netif_tx_stop_queue(netdev_get_tx_queue(
+-                                  ndev, packet->q_idx));
+-              if (atomic_read(&net_device->queue_sends[packet->q_idx]) < 1) {
++                                  ndev, q_idx));
++              if (atomic_read(&net_device->queue_sends[q_idx]) < 1) {
+                       netif_tx_wake_queue(netdev_get_tx_queue(
+-                                          ndev, packet->q_idx));
++                                          ndev, q_idx));
+                       ret = -ENOSPC;
+               }
+       } else {
+-- 
+2.4.3
+
diff --git a/src/patches/linux/0025-Drivers-hv-vmbus-Support-per-channel-driver-state.patch b/src/patches/linux/0025-Drivers-hv-vmbus-Support-per-channel-driver-state.patch
new file mode 100644 (file)
index 0000000..47037be
--- /dev/null
@@ -0,0 +1,51 @@
+From 4b71288758aa1d510402b84ca93b1ef566575d22 Mon Sep 17 00:00:00 2001
+From: "K. Y. Srinivasan" <kys@microsoft.com>
+Date: Mon, 3 Feb 2014 12:42:45 -0800
+Subject: [PATCH 25/25] Drivers: hv: vmbus: Support per-channel driver state
+
+As we implement Virtual Receive Side Scaling on the networking side
+(the VRSS patches are currently under review), it will be useful to have
+per-channel state that vmbus drivers can manage. Add support for
+managing per-channel state.
+
+Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ include/linux/hyperv.h | 14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
+index 6088058a3e00..732dc7e37e96 100644
+--- a/include/linux/hyperv.h
++++ b/include/linux/hyperv.h
+@@ -1045,6 +1045,10 @@ struct vmbus_channel {
+        * This will be NULL for the primary channel.
+        */
+       struct vmbus_channel *primary_channel;
++      /*
++       * Support per-channel state for use by vmbus drivers.
++       */
++      void *per_channel_state;
+ };
+ static inline void set_channel_read_state(struct vmbus_channel *c, bool state)
+@@ -1052,6 +1056,16 @@ static inline void set_channel_read_state(struct vmbus_channel *c, bool state)
+       c->batched_reading = state;
+ }
++static inline void set_per_channel_state(struct vmbus_channel *c, void *s)
++{
++      c->per_channel_state = s;
++}
++
++static inline void *get_per_channel_state(struct vmbus_channel *c)
++{
++      return c->per_channel_state;
++}
++
+ void vmbus_onmessage(void *context);
+ int vmbus_request_offers(void);
+-- 
+2.4.3
+
diff --git a/src/patches/lua-5.3.0-autotoolize.patch b/src/patches/lua-5.3.0-autotoolize.patch
new file mode 100644 (file)
index 0000000..3e4723a
--- /dev/null
@@ -0,0 +1,192 @@
+diff -up lua-5.3.0/configure.ac.autoxxx lua-5.3.0/configure.ac
+--- lua-5.3.0/configure.ac.autoxxx     2015-01-15 10:20:03.826889574 -0500
++++ lua-5.3.0/configure.ac     2015-01-15 10:20:03.826889574 -0500
+@@ -0,0 +1,69 @@
++AC_PREREQ(2.59)
++AC_INIT([lua], [5.3.0], [https://bugzilla.redhat.com/], [lua-at], [http://www.lua.org])
++AC_SUBST([MAJOR_VERSION], [5.3])
++
++AC_CONFIG_HEADERS([config.h])
++AC_CONFIG_SRCDIR([src/lapi.c])
++
++AM_INIT_AUTOMAKE([1.9 foreign])
++
++AC_PROG_CC
++AC_PROG_LIBTOOL
++
++AC_ARG_WITH(
++  [readline],
++  [AC_HELP_STRING([--with-readline], [Use readline for interpreter input [default=yes]])],
++  [use_readline=$withval],
++  [use_readline=yes]
++)
++
++LUA_LIBS="-lm"
++
++# Check for readline
++READLINE_DEFS="#undef LUA_USE_READLINE"
++if test "x$use_readline" == "xyes"; then
++  AC_CHECK_LIB([readline], [readline], [:], [use_readline=no], [-lncurses])
++  AC_CHECK_HEADERS([readline/readline.h readline/history.h], [], [use_readline=no])
++  if test "x$use_readline" == "xno"; then
++    AC_MSG_WARN([readline headers could not be found, disabling readline support])
++  else
++    READLINE_DEFS="#define LUA_USE_READLINE"
++    READLINE_LIBS="-lreadline -lncurses"
++  fi
++fi
++AC_SUBST(READLINE_DEFS)
++AC_SUBST(READLINE_LIBS)
++
++case "$host" in
++  *-mingw*)  use_os=win32  ;;
++  *-darwin*) use_os=macosx ;;
++  *)         use_os=posix  ;;
++esac
++
++POSIX_DEFS="#undef LUA_USE_POSIX"
++LUA_DL_DEFS="#undef LUA_USE_DLOPEN"
++LUA_BUILD_AS_DLL_DEFS="#undef LUA_BUILD_AS_DLL"
++
++if test "x$use_os" == "xwin32"; then
++  LUA_BUILD_AS_DLL_DEFS="#define LUA_BUILD_AS_DLL"
++elif test "x$use_os" == "xmacosx"; then
++  POSIX_DEFS="#define LUA_USE_POSIX"
++  LUA_DL_DEFS="#define LUA_DL_DYLD"
++elif test "x$use_os" == "xposix"; then
++  POSIX_DEFS="#define LUA_USE_POSIX"
++  LUA_DL_DEFS="#define LUA_DL_DLOPEN"
++  LUA_LIBS="$LUA_LIBS -ldl"
++fi
++AC_SUBST(POSIX_DEFS)
++AC_SUBST(LUA_DL_DEFS)
++AC_SUBST(LUA_BUILD_AS_DLL_DEFS)
++
++AC_SUBST(LUA_LIBS)
++
++AC_CONFIG_FILES([Makefile
++                 src/Makefile
++                 src/lua.pc
++                 src/luaconf.h.template
++                 doc/Makefile
++])
++AC_OUTPUT
+diff -up lua-5.3.0/doc/Makefile.am.autoxxx lua-5.3.0/doc/Makefile.am
+--- lua-5.3.0/doc/Makefile.am.autoxxx  2015-01-15 10:20:03.826889574 -0500
++++ lua-5.3.0/doc/Makefile.am  2015-01-15 10:20:03.826889574 -0500
+@@ -0,0 +1,4 @@
++man1_MANS = lua.1 luac.1
++
++EXTRA_DIST = \
++      contents.html logo.gif lua.1 luac.1 lua.css manual.css manual.html osi-certified-72x60.png readme.html
+diff -up lua-5.3.0/Makefile.am.autoxxx lua-5.3.0/Makefile.am
+--- lua-5.3.0/Makefile.am.autoxxx      2015-01-15 10:20:03.826889574 -0500
++++ lua-5.3.0/Makefile.am      2015-01-15 10:20:03.826889574 -0500
+@@ -0,0 +1,3 @@
++SUBDIRS = src doc
++
++EXTRA_DIST = README
+diff -up lua-5.3.0/src/.gitignore.autoxxx lua-5.3.0/src/.gitignore
+--- lua-5.3.0/src/.gitignore.autoxxx   2015-01-15 10:20:03.826889574 -0500
++++ lua-5.3.0/src/.gitignore   2015-01-15 10:20:03.826889574 -0500
+@@ -0,0 +1,5 @@
++lua
++lua.pc
++luac
++luaconf.h
++luaconf.h.template
+diff -up lua-5.3.0/src/luaconf.h.template.in.autoxxx lua-5.3.0/src/luaconf.h.template.in
+--- lua-5.3.0/src/luaconf.h.template.in.autoxxx        2015-01-15 10:20:03.828889562 -0500
++++ lua-5.3.0/src/luaconf.h.template.in        2015-01-15 10:22:37.420027778 -0500
+@@ -11,6 +11,11 @@
+ #include <limits.h>
+ #include <stddef.h>
++@POSIX_DEFS@
++@LUA_DL_DEFS@
++@LUA_BUILD_AS_DLL_DEFS@
++@READLINE_DEFS@
++
+ /*
+ ** ===================================================================
+@@ -175,9 +180,9 @@
+ #else                 /* }{ */
+-#define LUA_ROOT      "/usr/local/"
+-#define LUA_LDIR      LUA_ROOT "share/lua/" LUA_VDIR "/"
+-#define LUA_CDIR      LUA_ROOT "lib/lua/" LUA_VDIR "/"
++#define LUA_ROOT      "@prefix@/"
++#define LUA_LDIR      "@pkgdatadir@/lua/" LUA_VDIR "/"
++#define LUA_CDIR      "@libdir@/lua/" LUA_VDIR "/"
+ #define LUA_PATH_DEFAULT  \
+               LUA_LDIR"?.lua;"  LUA_LDIR"?/init.lua;" \
+               LUA_CDIR"?.lua;"  LUA_CDIR"?/init.lua;" \
+diff -up lua-5.3.0/src/lua.pc.in.autoxxx lua-5.3.0/src/lua.pc.in
+--- lua-5.3.0/src/lua.pc.in.autoxxx    2015-01-15 10:20:03.827889568 -0500
++++ lua-5.3.0/src/lua.pc.in    2015-01-15 10:20:03.827889568 -0500
+@@ -0,0 +1,13 @@
++V= @MAJOR_VERSION@
++R= @VERSION@
++prefix= @prefix@
++exec_prefix=${prefix}
++libdir= @libdir@
++includedir=${prefix}/include
++
++Name: Lua
++Description: An Extensible Extension Language
++Version: ${R}
++Requires:
++Libs: -llua @LUA_LIBS@
++Cflags: -I${includedir}
+diff -up lua-5.3.0/src/Makefile.am.autoxxx lua-5.3.0/src/Makefile.am
+--- lua-5.3.0/src/Makefile.am.autoxxx  2015-01-15 10:20:03.826889574 -0500
++++ lua-5.3.0/src/Makefile.am  2015-01-15 10:20:03.826889574 -0500
+@@ -0,0 +1,46 @@
++AM_CFLAGS = -Wall
++
++include_HEADERS = lua.h lualib.h lauxlib.h lua.hpp
++
++nodist_include_HEADERS = luaconf.h
++
++lib_LTLIBRARIES = liblua.la
++liblua_la_LDFLAGS = -release @MAJOR_VERSION@
++liblua_la_SOURCES = \
++      lapi.c lauxlib.c lbaselib.c lbitlib.c lcode.c lcorolib.c lctype.c ldblib.c \
++      ldebug.c ldo.c ldump.c lfunc.c lgc.c linit.c liolib.c llex.c lmathlib.c lmem.c \
++      loadlib.c lobject.c lopcodes.c loslib.c lparser.c lstate.c lstring.c lstrlib.c \
++      ltable.c ltablib.c ltm.c lundump.c lutf8lib.c lvm.c lzio.c \
++      lapi.h lcode.h lctype.h ldebug.h ldo.h lfunc.h lgc.h llex.h llimits.h \
++      lmem.h lobject.h lopcodes.h lparser.h lstate.h lstring.h ltable.h ltm.h \
++      lundump.h lvm.h lzio.h
++
++pkgconfigdir = $(libdir)/pkgconfig
++pkgconfig_DATA = lua.pc
++
++bin_PROGRAMS = lua luac
++
++lua_SOURCES = lua.c
++lua_LDADD = liblua.la @LUA_LIBS@ @READLINE_LIBS@
++lua_DEPENDENCIES = liblua.la
++
++luac_SOURCES = luac.c
++# Statically link liblua against luac since luac uses symbols not exported in liblua
++luac_LDADD = .libs/liblua.a @LUA_LIBS@
++luac_DEPENDENCIES = liblua.la
++
++EXTRA_DIST = luaconf.h.template
++BUILT_SOURCES = luaconf.h
++CLEANFILES = luaconf.h luaconf.h.template
++
++readline_defs = @READLINE_DEFS@
++
++edit =        sed \
++        -e 's,%prefix%,$(prefix),g' \
++        -e 's,%lua_datadir%,$(datadir),g' \
++        -e 's,%lua_libdir%,$(libdir),g'
++
++luaconf.h : luaconf.h.template
++      rm -f $@ $@.tmp
++      $(edit) $< >$@.tmp
++      mv $@.tmp $@
diff --git a/src/patches/openssl-1.0.2-fix_parallel_build-1.patch b/src/patches/openssl-1.0.2-fix_parallel_build-1.patch
new file mode 100644 (file)
index 0000000..acfaa72
--- /dev/null
@@ -0,0 +1,340 @@
+Submitted By:            Armin K. <krejzi at email dot com>
+Date:                    2015-01-23
+Initial Package Version: 1.0.1e
+Upstream Status:         Unknown
+Origin:                  https://github.com/Alexpux/Qt-builds/tree/master/patches/openssl
+Description:             Fixes build when using more than one make job to build the package.
+
+--- a/crypto/Makefile  2015-01-22 17:12:09.000000000 +0100
++++ b/crypto/Makefile  2015-01-23 16:42:13.460175569 +0100
+@@ -85,11 +85,11 @@
+       @if [ -z "$(THIS)" ]; then $(MAKE) -f $(TOP)/Makefile reflect THIS=$@; fi
+ subdirs:
+-      @target=all; $(RECURSIVE_MAKE)
++      +@target=all; $(RECURSIVE_MAKE)
+ files:
+       $(PERL) $(TOP)/util/files.pl "CPUID_OBJ=$(CPUID_OBJ)" Makefile >> $(TOP)/MINFO
+-      @target=files; $(RECURSIVE_MAKE)
++      +@target=files; $(RECURSIVE_MAKE)
+ links:
+       @$(PERL) $(TOP)/util/mklink.pl ../include/openssl $(EXHEADER)
+@@ -100,7 +100,7 @@
+ # lib: $(LIB): are splitted to avoid end-less loop
+ lib:  $(LIB)
+       @touch lib
+-$(LIB):       $(LIBOBJ)
++$(LIB):       $(LIBOBJ) | subdirs
+       $(AR) $(LIB) $(LIBOBJ)
+       test -z "$(FIPSLIBDIR)" || $(AR) $(LIB) $(FIPSLIBDIR)fipscanister.o
+       $(RANLIB) $(LIB) || echo Never mind.
+@@ -111,7 +111,7 @@
+       fi
+ libs:
+-      @target=lib; $(RECURSIVE_MAKE)
++      +@target=lib; $(RECURSIVE_MAKE)
+ install:
+       @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
+@@ -120,7 +120,7 @@
+       (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
+       chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
+       done;
+-      @target=install; $(RECURSIVE_MAKE)
++      +@target=install; $(RECURSIVE_MAKE)
+ lint:
+       @target=lint; $(RECURSIVE_MAKE)
+--- a/engines/Makefile 2015-01-22 17:12:24.000000000 +0100
++++ b/engines/Makefile 2015-01-23 16:42:13.461175596 +0100
+@@ -72,7 +72,7 @@
+ all:  lib subdirs
+-lib:  $(LIBOBJ)
++lib:  $(LIBOBJ) | subdirs
+       @if [ -n "$(SHARED_LIBS)" ]; then \
+               set -e; \
+               for l in $(LIBNAMES); do \
+@@ -89,7 +89,7 @@
+ subdirs:
+       echo $(EDIRS)
+-      @target=all; $(RECURSIVE_MAKE)
++      +@target=all; $(RECURSIVE_MAKE)
+ files:
+       $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
+@@ -128,7 +128,7 @@
+                         mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx ); \
+               done; \
+       fi
+-      @target=install; $(RECURSIVE_MAKE)
++      +@target=install; $(RECURSIVE_MAKE)
+ tags:
+       ctags $(SRC)
+--- a/Makefile.org     2015-01-22 15:58:06.000000000 +0100
++++ b/Makefile.org     2015-01-23 16:42:13.461175596 +0100
+@@ -274,17 +274,17 @@
+ build_libs: build_crypto build_ssl build_engines
+ build_crypto:
+-      @dir=crypto; target=all; $(BUILD_ONE_CMD)
+-build_ssl:
+-      @dir=ssl; target=all; $(BUILD_ONE_CMD)
+-build_engines:
+-      @dir=engines; target=all; $(BUILD_ONE_CMD)
+-build_apps:
+-      @dir=apps; target=all; $(BUILD_ONE_CMD)
+-build_tests:
+-      @dir=test; target=all; $(BUILD_ONE_CMD)
+-build_tools:
+-      @dir=tools; target=all; $(BUILD_ONE_CMD)
++      +@dir=crypto; target=all; $(BUILD_ONE_CMD)
++build_ssl: build_crypto
++      +@dir=ssl; target=all; $(BUILD_ONE_CMD)
++build_engines: build_crypto
++      +@dir=engines; target=all; $(BUILD_ONE_CMD)
++build_apps: build_libs
++      +@dir=apps; target=all; $(BUILD_ONE_CMD)
++build_tests: build_libs
++      +@dir=test; target=all; $(BUILD_ONE_CMD)
++build_tools: build_libs
++      +@dir=tools; target=all; $(BUILD_ONE_CMD)
+ all_testapps: build_libs build_testapps
+ build_testapps:
+@@ -536,9 +536,9 @@
+ dist_pem_h:
+       (cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
+-install: all install_docs install_sw
++install: install_docs install_sw
+-install_sw:
++install_dirs:
+       @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
+               $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR) \
+               $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines \
+@@ -547,12 +547,19 @@
+               $(INSTALL_PREFIX)$(OPENSSLDIR)/misc \
+               $(INSTALL_PREFIX)$(OPENSSLDIR)/certs \
+               $(INSTALL_PREFIX)$(OPENSSLDIR)/private
++      @$(PERL) $(TOP)/util/mkdir-p.pl \
++              $(INSTALL_PREFIX)$(MANDIR)/man1 \
++              $(INSTALL_PREFIX)$(MANDIR)/man3 \
++              $(INSTALL_PREFIX)$(MANDIR)/man5 \
++              $(INSTALL_PREFIX)$(MANDIR)/man7
++
++install_sw: install_dirs
+       @set -e; headerlist="$(EXHEADER)"; for i in $$headerlist;\
+       do \
+       (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
+       chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
+       done;
+-      @set -e; target=install; $(RECURSIVE_BUILD_CMD)
++      +@set -e; target=install; $(RECURSIVE_BUILD_CMD)
+       @set -e; liblist="$(LIBS)"; for i in $$liblist ;\
+       do \
+               if [ -f "$$i" ]; then \
+@@ -636,12 +643,7 @@
+               done; \
+       done
+-install_docs:
+-      @$(PERL) $(TOP)/util/mkdir-p.pl \
+-              $(INSTALL_PREFIX)$(MANDIR)/man1 \
+-              $(INSTALL_PREFIX)$(MANDIR)/man3 \
+-              $(INSTALL_PREFIX)$(MANDIR)/man5 \
+-              $(INSTALL_PREFIX)$(MANDIR)/man7
++install_docs: install_dirs
+       @pod2man="`cd ./util; ./pod2mantest $(PERL)`"; \
+       here="`pwd`"; \
+       filecase=; \
+--- a/Makefile.shared  2015-01-20 13:33:36.000000000 +0100
++++ b/Makefile.shared  2015-01-23 16:42:13.461175596 +0100
+@@ -105,6 +105,7 @@
+     SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
+     LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
+     LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
++    [ -e $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX ] && exit 0; \
+     LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
+     $${SHAREDCMD} $${SHAREDFLAGS} \
+       -o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \
+@@ -122,6 +123,7 @@
+                       done; \
+               fi; \
+               if [ -n "$$SHLIB_SOVER" ]; then \
++                      [ -e "$$SHLIB$$SHLIB_SUFFIX" ] || \
+                       ( $(SET_X); rm -f $$SHLIB$$SHLIB_SUFFIX; \
+                         ln -s $$prev $$SHLIB$$SHLIB_SUFFIX ); \
+               fi; \
+--- a/test/Makefile    2015-01-22 17:12:26.000000000 +0100
++++ b/test/Makefile    2015-01-23 16:42:13.461175596 +0100
+@@ -132,7 +132,7 @@
+ tags:
+       ctags $(SRC)
+-tests:        exe apps $(TESTS)
++tests:        exe $(TESTS)
+ apps:
+       @(cd ..; $(MAKE) DIRS=apps all)
+@@ -398,109 +398,109 @@
+               link_app.$${shlib_target}
+ $(RSATEST)$(EXE_EXT): $(RSATEST).o $(DLIBCRYPTO)
+-      @target=$(RSATEST); $(BUILD_CMD)
++      +@target=$(RSATEST); $(BUILD_CMD)
+ $(BNTEST)$(EXE_EXT): $(BNTEST).o $(DLIBCRYPTO)
+-      @target=$(BNTEST); $(BUILD_CMD)
++      +@target=$(BNTEST); $(BUILD_CMD)
+ $(ECTEST)$(EXE_EXT): $(ECTEST).o $(DLIBCRYPTO)
+-      @target=$(ECTEST); $(BUILD_CMD)
++      +@target=$(ECTEST); $(BUILD_CMD)
+ $(EXPTEST)$(EXE_EXT): $(EXPTEST).o $(DLIBCRYPTO)
+-      @target=$(EXPTEST); $(BUILD_CMD)
++      +@target=$(EXPTEST); $(BUILD_CMD)
+ $(IDEATEST)$(EXE_EXT): $(IDEATEST).o $(DLIBCRYPTO)
+-      @target=$(IDEATEST); $(BUILD_CMD)
++      +@target=$(IDEATEST); $(BUILD_CMD)
+ $(MD2TEST)$(EXE_EXT): $(MD2TEST).o $(DLIBCRYPTO)
+-      @target=$(MD2TEST); $(BUILD_CMD)
++      +@target=$(MD2TEST); $(BUILD_CMD)
+ $(SHATEST)$(EXE_EXT): $(SHATEST).o $(DLIBCRYPTO)
+-      @target=$(SHATEST); $(BUILD_CMD)
++      +@target=$(SHATEST); $(BUILD_CMD)
+ $(SHA1TEST)$(EXE_EXT): $(SHA1TEST).o $(DLIBCRYPTO)
+-      @target=$(SHA1TEST); $(BUILD_CMD)
++      +@target=$(SHA1TEST); $(BUILD_CMD)
+ $(SHA256TEST)$(EXE_EXT): $(SHA256TEST).o $(DLIBCRYPTO)
+-      @target=$(SHA256TEST); $(BUILD_CMD)
++      +@target=$(SHA256TEST); $(BUILD_CMD)
+ $(SHA512TEST)$(EXE_EXT): $(SHA512TEST).o $(DLIBCRYPTO)
+-      @target=$(SHA512TEST); $(BUILD_CMD)
++      +@target=$(SHA512TEST); $(BUILD_CMD)
+ $(RMDTEST)$(EXE_EXT): $(RMDTEST).o $(DLIBCRYPTO)
+-      @target=$(RMDTEST); $(BUILD_CMD)
++      +@target=$(RMDTEST); $(BUILD_CMD)
+ $(MDC2TEST)$(EXE_EXT): $(MDC2TEST).o $(DLIBCRYPTO)
+-      @target=$(MDC2TEST); $(BUILD_CMD)
++      +@target=$(MDC2TEST); $(BUILD_CMD)
+ $(MD4TEST)$(EXE_EXT): $(MD4TEST).o $(DLIBCRYPTO)
+-      @target=$(MD4TEST); $(BUILD_CMD)
++      +@target=$(MD4TEST); $(BUILD_CMD)
+ $(MD5TEST)$(EXE_EXT): $(MD5TEST).o $(DLIBCRYPTO)
+-      @target=$(MD5TEST); $(BUILD_CMD)
++      +@target=$(MD5TEST); $(BUILD_CMD)
+ $(HMACTEST)$(EXE_EXT): $(HMACTEST).o $(DLIBCRYPTO)
+-      @target=$(HMACTEST); $(BUILD_CMD)
++      +@target=$(HMACTEST); $(BUILD_CMD)
+ $(WPTEST)$(EXE_EXT): $(WPTEST).o $(DLIBCRYPTO)
+-      @target=$(WPTEST); $(BUILD_CMD)
++      +@target=$(WPTEST); $(BUILD_CMD)
+ $(RC2TEST)$(EXE_EXT): $(RC2TEST).o $(DLIBCRYPTO)
+-      @target=$(RC2TEST); $(BUILD_CMD)
++      +@target=$(RC2TEST); $(BUILD_CMD)
+ $(BFTEST)$(EXE_EXT): $(BFTEST).o $(DLIBCRYPTO)
+-      @target=$(BFTEST); $(BUILD_CMD)
++      +@target=$(BFTEST); $(BUILD_CMD)
+ $(CASTTEST)$(EXE_EXT): $(CASTTEST).o $(DLIBCRYPTO)
+-      @target=$(CASTTEST); $(BUILD_CMD)
++      +@target=$(CASTTEST); $(BUILD_CMD)
+ $(RC4TEST)$(EXE_EXT): $(RC4TEST).o $(DLIBCRYPTO)
+-      @target=$(RC4TEST); $(BUILD_CMD)
++      +@target=$(RC4TEST); $(BUILD_CMD)
+ $(RC5TEST)$(EXE_EXT): $(RC5TEST).o $(DLIBCRYPTO)
+-      @target=$(RC5TEST); $(BUILD_CMD)
++      +@target=$(RC5TEST); $(BUILD_CMD)
+ $(DESTEST)$(EXE_EXT): $(DESTEST).o $(DLIBCRYPTO)
+-      @target=$(DESTEST); $(BUILD_CMD)
++      +@target=$(DESTEST); $(BUILD_CMD)
+ $(RANDTEST)$(EXE_EXT): $(RANDTEST).o $(DLIBCRYPTO)
+-      @target=$(RANDTEST); $(BUILD_CMD)
++      +@target=$(RANDTEST); $(BUILD_CMD)
+ $(DHTEST)$(EXE_EXT): $(DHTEST).o $(DLIBCRYPTO)
+-      @target=$(DHTEST); $(BUILD_CMD)
++      +@target=$(DHTEST); $(BUILD_CMD)
+ $(DSATEST)$(EXE_EXT): $(DSATEST).o $(DLIBCRYPTO)
+-      @target=$(DSATEST); $(BUILD_CMD)
++      +@target=$(DSATEST); $(BUILD_CMD)
+ $(METHTEST)$(EXE_EXT): $(METHTEST).o $(DLIBCRYPTO)
+-      @target=$(METHTEST); $(BUILD_CMD)
++      +@target=$(METHTEST); $(BUILD_CMD)
+ $(SSLTEST)$(EXE_EXT): $(SSLTEST).o $(DLIBSSL) $(DLIBCRYPTO)
+-      @target=$(SSLTEST); $(FIPS_BUILD_CMD)
++      +@target=$(SSLTEST); $(FIPS_BUILD_CMD)
+ $(ENGINETEST)$(EXE_EXT): $(ENGINETEST).o $(DLIBCRYPTO)
+-      @target=$(ENGINETEST); $(BUILD_CMD)
++      +@target=$(ENGINETEST); $(BUILD_CMD)
+ $(EVPTEST)$(EXE_EXT): $(EVPTEST).o $(DLIBCRYPTO)
+-      @target=$(EVPTEST); $(BUILD_CMD)
++      +@target=$(EVPTEST); $(BUILD_CMD)
+ $(ECDSATEST)$(EXE_EXT): $(ECDSATEST).o $(DLIBCRYPTO)
+-      @target=$(ECDSATEST); $(BUILD_CMD)
++      +@target=$(ECDSATEST); $(BUILD_CMD)
+ $(ECDHTEST)$(EXE_EXT): $(ECDHTEST).o $(DLIBCRYPTO)
+-      @target=$(ECDHTEST); $(BUILD_CMD)
++      +@target=$(ECDHTEST); $(BUILD_CMD)
+ $(IGETEST)$(EXE_EXT): $(IGETEST).o $(DLIBCRYPTO)
+-      @target=$(IGETEST); $(BUILD_CMD)
++      +@target=$(IGETEST); $(BUILD_CMD)
+ $(JPAKETEST)$(EXE_EXT): $(JPAKETEST).o $(DLIBCRYPTO)
+-      @target=$(JPAKETEST); $(BUILD_CMD)
++      +@target=$(JPAKETEST); $(BUILD_CMD)
+ $(ASN1TEST)$(EXE_EXT): $(ASN1TEST).o $(DLIBCRYPTO)
+-      @target=$(ASN1TEST); $(BUILD_CMD)
++      +@target=$(ASN1TEST); $(BUILD_CMD)
+ $(SRPTEST)$(EXE_EXT): $(SRPTEST).o $(DLIBCRYPTO)
+-      @target=$(SRPTEST); $(BUILD_CMD)
++      +@target=$(SRPTEST); $(BUILD_CMD)
+ $(V3NAMETEST)$(EXE_EXT): $(V3NAMETEST).o $(DLIBCRYPTO)
+       @target=$(V3NAMETEST); $(BUILD_CMD)
+@@ -522,7 +522,7 @@
+ #     fi
+ dummytest$(EXE_EXT): dummytest.o $(DLIBCRYPTO)
+-      @target=dummytest; $(BUILD_CMD)
++      +@target=dummytest; $(BUILD_CMD)
+ # DO NOT DELETE THIS LINE -- make depend depends on it.
index 3cab5c2778ba787ae7d99ebd794932dc984fe062..2f71f1d4850763af52e9810483490a912208719d 100644 (file)
@@ -1,7 +1,7 @@
-diff -up openssl-1.0.1e/Configure.rpmbuild openssl-1.0.1e/Configure
---- openssl-1.0.2a.vanilla/Configure    2015-03-19 13:30:36.000000000 +0000
-+++ openssl-1.0.2a/Configure    2015-04-19 09:53:04.381491868 +0000
-@@ -348,7 +348,7 @@
+diff -Nur openssl-1.0.2d/Configure openssl-1.0.2d.patched/Configure
+--- openssl-1.0.2d/Configure   2015-07-09 11:57:15.000000000 +0000
++++ openssl-1.0.2d.patched/Configure   2015-08-22 20:44:19.487000000 +0000
+@@ -365,7 +365,7 @@
  ####
  # *-generic* is endian-neutral target, but ./config is free to
  # throw in -D[BL]_ENDIAN, whichever appropriate...
@@ -10,7 +10,25 @@ diff -up openssl-1.0.1e/Configure.rpmbuild openssl-1.0.1e/Configure
  "linux-ppc",  "gcc:-DB_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
  
  #######################################################################
-@@ -1675,7 +1676,7 @@ while (<IN>)
+@@ -406,7 +406,7 @@
+ "linux64-mips64",   "gcc:-mabi=64 -O3 -Wall -DBN_DIV3W::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips64_asm}:64:dlfcn:linux-shared:-fPIC:-mabi=64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
+ #### IA-32 targets...
+ "linux-ia32-icc",     "icc:-DL_ENDIAN -O2::-D_REENTRANT::-ldl -no_cpprt:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-KPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+-"linux-elf",  "gcc:-DL_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"linux-elf",  "gcc:-DL_ENDIAN \$(CFLAGS) -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_SONAMEVER)",
+ "linux-aout", "gcc:-DL_ENDIAN -O3 -fomit-frame-pointer -march=i486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_asm}:a.out",
+ ####
+ "linux-generic64","gcc:-O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+@@ -414,7 +414,7 @@
+ "linux-ppc64le","gcc:-m64 -DL_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:$ppc64_asm:linux64le:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::",
+ "linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+ "linux-ia64-icc","icc:-DL_ENDIAN -O2 -Wall::-D_REENTRANT::-ldl -no_cpprt:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+-"linux-x86_64",       "gcc:-m64 -DL_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
++"linux-x86_64",       "gcc:-m64 -DL_ENDIAN \$(CFLAGS) -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_SONAMEVER):::64",
+ "linux-x86_64-clang", "clang: -m64 -DL_ENDIAN -O3 -Wall -Wextra $clang_disabled_warnings -Qunused-arguments::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
+ "linux-x86_64-icc", "icc:-DL_ENDIAN -O2::-D_REENTRANT::-ldl -no_cpprt:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
+ "linux-x32",  "gcc:-mx32 -DL_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::x32",
+@@ -1764,7 +1764,7 @@
        elsif ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*\.[^\.]*$/)
                {
                my $sotmp = $1;
@@ -19,10 +37,11 @@ diff -up openssl-1.0.1e/Configure.rpmbuild openssl-1.0.1e/Configure
                }
        elsif ($shared_extension ne "" && $shared_extension =~ /^\.[^\.]*\.[^\.]*\.dylib$/)
                {
-diff -up openssl-1.0.1e/Makefile.org.rpmbuild openssl-1.0.1e/Makefile.org
---- openssl-1.0.1e/Makefile.org.rpmbuild       2013-02-11 16:26:04.000000000 +0100
-+++ openssl-1.0.1e/Makefile.org        2014-08-13 19:19:53.218005759 +0200
-@@ -10,6 +10,7 @@ SHLIB_VERSION_HISTORY=
+
+diff -Nur openssl-1.0.2d/Makefile.org openssl-1.0.2d.patched/Makefile.org
+--- openssl-1.0.2d/Makefile.org        2015-07-09 11:57:15.000000000 +0000
++++ openssl-1.0.2d.patched/Makefile.org        2015-08-22 20:41:49.921000000 +0000
+@@ -10,6 +10,7 @@
  SHLIB_MAJOR=
  SHLIB_MINOR=
  SHLIB_EXT=
@@ -30,7 +49,7 @@ diff -up openssl-1.0.1e/Makefile.org.rpmbuild openssl-1.0.1e/Makefile.org
  PLATFORM=dist
  OPTIONS=
  CONFIGURE_ARGS=
-@@ -333,10 +334,9 @@ clean-shared:
+@@ -339,10 +340,9 @@
  link-shared:
        @ set -e; for i in $(SHLIBDIRS); do \
                $(MAKE) -f $(HERE)/Makefile.shared -e $(BUILDENV) \
@@ -42,7 +61,7 @@ diff -up openssl-1.0.1e/Makefile.org.rpmbuild openssl-1.0.1e/Makefile.org
        done
  
  build-shared: do_$(SHLIB_TARGET) link-shared
-@@ -347,7 +347,7 @@ do_$(SHLIB_TARGET):
+@@ -353,7 +353,7 @@
                        libs="$(LIBKRB5) $$libs"; \
                fi; \
                $(CLEARENV) && $(MAKE) -f Makefile.shared -e $(BUILDENV) \
@@ -50,4 +69,3 @@ diff -up openssl-1.0.1e/Makefile.org.rpmbuild openssl-1.0.1e/Makefile.org
 +                      LIBNAME=$$i LIBVERSION=$(SHLIB_SONAMEVER) \
                        LIBCOMPATVERSIONS=";$(SHLIB_VERSION_HISTORY)" \
                        LIBDEPS="$$libs $(EX_LIBS)" \
-                       link_a.$(SHLIB_TARGET); \
diff --git a/src/patches/openssl-1.0.2a_auto_enable_padlock.patch b/src/patches/openssl-1.0.2a_auto_enable_padlock.patch
new file mode 100644 (file)
index 0000000..b5c0e95
--- /dev/null
@@ -0,0 +1,34 @@
+diff -Naur openssl-1.0.2a.org/crypto/engine/eng_all.c openssl-1.0.2a/crypto/engine/eng_all.c
+--- openssl-1.0.2a.org/crypto/engine/eng_all.c 2015-03-19 14:30:36.000000000 +0100
++++ openssl-1.0.2a/crypto/engine/eng_all.c     2015-04-27 12:27:05.063569969 +0200
+@@ -120,6 +120,14 @@
+     ENGINE_load_capi();
+ # endif
+ #endif
++#ifdef OPENSSL_NO_STATIC_ENGINE
++      ENGINE *e;
++      e = ENGINE_by_id("padlock");
++      if (e != NULL) {
++              ENGINE_add(e);
++              ENGINE_free(e);
++      }
++#endif
+     ENGINE_register_all_complete();
+ }
+diff -Naur openssl-1.0.2a.org/ssl/ssl_algs.c openssl-1.0.2a/ssl/ssl_algs.c
+--- openssl-1.0.2a.org/ssl/ssl_algs.c  2015-03-19 14:30:36.000000000 +0100
++++ openssl-1.0.2a/ssl/ssl_algs.c      2015-04-27 11:04:27.893399695 +0200
+@@ -151,5 +151,12 @@
+ #endif
+     /* initialize cipher/digest methods table */
+     ssl_load_ciphers();
++
++    /* Init available hardware crypto engines */
++    ENGINE_load_builtin_engines();
++    ENGINE_register_all_complete();
++    ENGINE * padlock = ENGINE_by_id("padlock");
++    if (padlock) ENGINE_set_default_ciphers(padlock);
++
+     return (1);
+ }
diff --git a/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch b/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch
new file mode 100644 (file)
index 0000000..097cc80
--- /dev/null
@@ -0,0 +1,11 @@
+diff -Naur openssl-1.0.2a.org/crypto/x86cpuid.pl openssl-1.0.2a/crypto/x86cpuid.pl
+--- openssl-1.0.2a.org/crypto/x86cpuid.pl      2015-03-19 14:30:36.000000000 +0100
++++ openssl-1.0.2a/crypto/x86cpuid.pl  2015-04-28 13:47:57.853521020 +0200
+@@ -71,6 +71,7 @@
+       &mov    ("eax",1);
+       &xor    ("ecx","ecx");
+       &cpuid  ();
++      &and    ("ecx",0xfffffdff);     # clear SSSE3 because it is incredible slow on AMD's
+       &bt     ("edx",28);
+       &jnc    (&label("generic"));
+       &shr    ("ebx",16);
diff --git a/src/patches/pcre-8.37-Fix-another-buffer-overflow.patch b/src/patches/pcre-8.37-Fix-another-buffer-overflow.patch
new file mode 100644 (file)
index 0000000..20ead09
--- /dev/null
@@ -0,0 +1,110 @@
+From f6efcf125123199d446c5561266c3c3846ed9f30 Mon Sep 17 00:00:00 2001
+From: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date: Wed, 3 Jun 2015 16:51:59 +0000
+Subject: [PATCH] Fix another buffer overflow.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Ported to 8.37:
+
+commit 225f0d5eb16c7a26591a1e3f286c7476907b5a6a
+Author: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date:   Wed Jun 3 16:51:59 2015 +0000
+
+    Fix another buffer overflow.
+
+    git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1562 2f5784b3-3f2a-0410-8824-cb99058d5e15
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pcre_compile.c           | 7 ++++++-
+ testdata/testinput2      | 2 ++
+ testdata/testoutput11-16 | 2 +-
+ testdata/testoutput11-32 | 2 +-
+ testdata/testoutput11-8  | 2 +-
+ testdata/testoutput2     | 2 ++
+ 6 files changed, 13 insertions(+), 4 deletions(-)
+
+diff --git a/pcre_compile.c b/pcre_compile.c
+index 8b4aaef..f5d2384 100644
+--- a/pcre_compile.c
++++ b/pcre_compile.c
+@@ -7210,7 +7210,12 @@ for (;; ptr++)
+           real compile this will be picked up and the reference wrapped with
+           OP_ONCE to make it atomic, so we must space in case this occurs. */
+-          if (recno == 0) *lengthptr += 2 + 2*LINK_SIZE;
++          /* In fact, this can happen for a non-forward reference because
++          another group with the same number might be created later. This
++          issue is fixed "properly" in PCRE2. As PCRE1 is now in maintenance
++          only mode, we finesse the bug by allowing more memory always. */
++
++          /* if (recno == 0) */ *lengthptr += 2 + 2*LINK_SIZE;
+           }
+         /* In the real compile, search the name table. We check the name
+diff --git a/testdata/testinput2 b/testdata/testinput2
+index 5cc9ce6..e12de3a 100644
+--- a/testdata/testinput2
++++ b/testdata/testinput2
+@@ -4156,4 +4156,6 @@ backtracking verbs. --/
+ /(?=di(?<=(?1))|(?=(.))))/
++"(?J:(?|(?'R')(\k'R')|((?'R'))))"
++
+ /-- End of testinput2 --/
+diff --git a/testdata/testoutput11-16 b/testdata/testoutput11-16
+index 422f2ad..e222e7c 100644
+--- a/testdata/testoutput11-16
++++ b/testdata/testoutput11-16
+@@ -231,7 +231,7 @@ Memory allocation (code space): 73
+ ------------------------------------------------------------------
+ /(?P<a>a)...(?P=a)bbb(?P>a)d/BM
+-Memory allocation (code space): 61
++Memory allocation (code space): 77
+ ------------------------------------------------------------------
+   0  24 Bra
+   2   5 CBra 1
+diff --git a/testdata/testoutput11-32 b/testdata/testoutput11-32
+index d953ec8..9a80ec9 100644
+--- a/testdata/testoutput11-32
++++ b/testdata/testoutput11-32
+@@ -231,7 +231,7 @@ Memory allocation (code space): 155
+ ------------------------------------------------------------------
+ /(?P<a>a)...(?P=a)bbb(?P>a)d/BM
+-Memory allocation (code space): 125
++Memory allocation (code space): 157
+ ------------------------------------------------------------------
+   0  24 Bra
+   2   5 CBra 1
+diff --git a/testdata/testoutput11-8 b/testdata/testoutput11-8
+index 6ec18ec..3adaca2 100644
+--- a/testdata/testoutput11-8
++++ b/testdata/testoutput11-8
+@@ -231,7 +231,7 @@ Memory allocation (code space): 45
+ ------------------------------------------------------------------
+ /(?P<a>a)...(?P=a)bbb(?P>a)d/BM
+-Memory allocation (code space): 38
++Memory allocation (code space): 50
+ ------------------------------------------------------------------
+   0  30 Bra
+   3   7 CBra 1
+diff --git a/testdata/testoutput2 b/testdata/testoutput2
+index 4decb8d..5bad26c 100644
+--- a/testdata/testoutput2
++++ b/testdata/testoutput2
+@@ -14428,4 +14428,6 @@ Failed: lookbehind assertion is not fixed length at offset 17
+ /(?=di(?<=(?1))|(?=(.))))/
+ Failed: unmatched parentheses at offset 23
++"(?J:(?|(?'R')(\k'R')|((?'R'))))"
++
+ /-- End of testinput2 --/
+-- 
+2.4.3
+
diff --git a/src/patches/pcre-8.37-Fix-buffer-overflow-for-forward-reference-within-bac.patch b/src/patches/pcre-8.37-Fix-buffer-overflow-for-forward-reference-within-bac.patch
new file mode 100644 (file)
index 0000000..16fd45c
--- /dev/null
@@ -0,0 +1,68 @@
+From 354e1f8e921dcb9cf2f3a5eac93cd826d01a7d8a Mon Sep 17 00:00:00 2001
+From: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date: Tue, 23 Jun 2015 16:34:53 +0000
+Subject: [PATCH] Fix buffer overflow for forward reference within backward
+ assertion with excess closing parenthesis. Bugzilla 1651.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This is upstream commit ported to 8.37:
+
+commit 764692f9aea9eab50fdba6cb537441d8b34c6c37
+Author: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date:   Tue Jun 23 16:34:53 2015 +0000
+
+    Fix buffer overflow for forward reference within backward assertion with excess
+    closing parenthesis. Bugzilla 1651.
+
+    git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1571 2f5784b3-3f2a-0410-8824-cb99058d5e15
+
+It fixes CVE-2015-5073.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pcre_compile.c       | 2 +-
+ testdata/testinput2  | 2 ++
+ testdata/testoutput2 | 3 +++
+ 3 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/pcre_compile.c b/pcre_compile.c
+index 6f06912..b66b1f6 100644
+--- a/pcre_compile.c
++++ b/pcre_compile.c
+@@ -9392,7 +9392,7 @@ OP_RECURSE that are not fixed length get a diagnosic with a useful offset. The
+ exceptional ones forgo this. We scan the pattern to check that they are fixed
+ length, and set their lengths. */
+-if (cd->check_lookbehind)
++if (errorcode == 0 && cd->check_lookbehind)
+   {
+   pcre_uchar *cc = (pcre_uchar *)codestart;
+diff --git a/testdata/testinput2 b/testdata/testinput2
+index 83bb471..5cc9ce6 100644
+--- a/testdata/testinput2
++++ b/testdata/testinput2
+@@ -4154,4 +4154,6 @@ backtracking verbs. --/
+ "(?J)(?'d'(?'d'\g{d}))"
++/(?=di(?<=(?1))|(?=(.))))/
++
+ /-- End of testinput2 --/
+diff --git a/testdata/testoutput2 b/testdata/testoutput2
+index 7dff52a..4decb8d 100644
+--- a/testdata/testoutput2
++++ b/testdata/testoutput2
+@@ -14425,4 +14425,7 @@ Failed: lookbehind assertion is not fixed length at offset 17
+ "(?J)(?'d'(?'d'\g{d}))"
++/(?=di(?<=(?1))|(?=(.))))/
++Failed: unmatched parentheses at offset 23
++
+ /-- End of testinput2 --/
+-- 
+2.4.3
+
diff --git a/src/patches/pcre-8.37-Fix-buffer-overflow-for-named-recursive-back-referen.patch b/src/patches/pcre-8.37-Fix-buffer-overflow-for-named-recursive-back-referen.patch
new file mode 100644 (file)
index 0000000..c97849f
--- /dev/null
@@ -0,0 +1,87 @@
+From 68ff1beb43bb3d4d8838f3285c97023d1e50513a Mon Sep 17 00:00:00 2001
+From: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date: Fri, 15 May 2015 17:17:03 +0000
+Subject: [PATCH] Fix buffer overflow for named recursive back reference when
+ the name is duplicated.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream commit ported to pcre-8.37:
+
+commit 4b79af6b4cbeb5326ae5e4d83f3e935e00286c19
+Author: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date:   Fri May 15 17:17:03 2015 +0000
+
+    Fix buffer overflow for named recursive back reference when the name is
+    duplicated.
+
+    git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1558 2f5784b3-3f2a-0410-8824-cb99058d5e15
+
+This fixes CVE-2015-3210.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pcre_compile.c       | 16 ++++++++++++++--
+ testdata/testinput2  |  2 ++
+ testdata/testoutput2 |  2 ++
+ 3 files changed, 18 insertions(+), 2 deletions(-)
+
+diff --git a/pcre_compile.c b/pcre_compile.c
+index 0efad26..6f06912 100644
+--- a/pcre_compile.c
++++ b/pcre_compile.c
+@@ -7173,14 +7173,26 @@ for (;; ptr++)
+           number. If the name is not found, set the value to 0 for a forward
+           reference. */
++          recno = 0;
+           ng = cd->named_groups;
+           for (i = 0; i < cd->names_found; i++, ng++)
+             {
+             if (namelen == ng->length &&
+                 STRNCMP_UC_UC(name, ng->name, namelen) == 0)
+-              break;
++              {
++              open_capitem *oc;
++              recno = ng->number;
++              if (is_recurse) break;
++              for (oc = cd->open_caps; oc != NULL; oc = oc->next)         
++                {          
++                if (oc->number == recno)                                     
++                  {               
++                  oc->flag = TRUE;                                      
++                  break;
++                  }                                                         
++                }                          
++              }    
+             }
+-          recno = (i < cd->names_found)? ng->number : 0;
+           /* Count named back references. */
+diff --git a/testdata/testinput2 b/testdata/testinput2
+index 58fe53b..83bb471 100644
+--- a/testdata/testinput2
++++ b/testdata/testinput2
+@@ -4152,4 +4152,6 @@ backtracking verbs. --/
+ /((?2){73}(?2))((?1))/
++"(?J)(?'d'(?'d'\g{d}))"
++
+ /-- End of testinput2 --/
+diff --git a/testdata/testoutput2 b/testdata/testoutput2
+index b718df0..7dff52a 100644
+--- a/testdata/testoutput2
++++ b/testdata/testoutput2
+@@ -14423,4 +14423,6 @@ Failed: lookbehind assertion is not fixed length at offset 17
+ /((?2){73}(?2))((?1))/
++"(?J)(?'d'(?'d'\g{d}))"
++
+ /-- End of testinput2 --/
+-- 
+2.4.3
+
diff --git a/src/patches/pcre-8.37-Fix-buffer-overflow-for-named-references-in-situatio.patch b/src/patches/pcre-8.37-Fix-buffer-overflow-for-named-references-in-situatio.patch
new file mode 100644 (file)
index 0000000..ab1b962
--- /dev/null
@@ -0,0 +1,190 @@
+From b3f0b0dd971314df8f865e221aa1a88e75d6d1a6 Mon Sep 17 00:00:00 2001
+From: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date: Wed, 5 Aug 2015 15:38:32 +0000
+Subject: [PATCH] Fix buffer overflow for named references in (?| situations.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Ported for 8.37:
+
+commit 7af8e8717def179fd7b69e173abd347c1a3547cb
+Author: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date:   Wed Aug 5 15:38:32 2015 +0000
+
+    Fix buffer overflow for named references in (?| situations.
+
+    git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1585 2f5784b3-3f2a-0410-8824-cb99058d5e15
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pcre_compile.c       | 74 ++++++++++++++++++++++++++++++----------------------
+ pcre_internal.h      |  1 +
+ testdata/testinput2  |  2 ++
+ testdata/testoutput2 |  2 ++
+ 4 files changed, 48 insertions(+), 31 deletions(-)
+
+diff --git a/pcre_compile.c b/pcre_compile.c
+index f5d2384..5fe5c1d 100644
+--- a/pcre_compile.c
++++ b/pcre_compile.c
+@@ -6641,6 +6641,7 @@ for (;; ptr++)
+         /* ------------------------------------------------------------ */
+         case CHAR_VERTICAL_LINE:  /* Reset capture count for each branch */
+         reset_bracount = TRUE;
++        cd->dupgroups = TRUE;     /* Record (?| encountered */ 
+         /* Fall through */
+         /* ------------------------------------------------------------ */
+@@ -7151,7 +7152,8 @@ for (;; ptr++)
+         if (lengthptr != NULL)
+           {
+           named_group *ng;
+-
++          recno = 0;
++           
+           if (namelen == 0)
+             {
+             *errorcodeptr = ERR62;
+@@ -7168,32 +7170,6 @@ for (;; ptr++)
+             goto FAILED;
+             }
+-          /* The name table does not exist in the first pass; instead we must
+-          scan the list of names encountered so far in order to get the
+-          number. If the name is not found, set the value to 0 for a forward
+-          reference. */
+-
+-          recno = 0;
+-          ng = cd->named_groups;
+-          for (i = 0; i < cd->names_found; i++, ng++)
+-            {
+-            if (namelen == ng->length &&
+-                STRNCMP_UC_UC(name, ng->name, namelen) == 0)
+-              {
+-              open_capitem *oc;
+-              recno = ng->number;
+-              if (is_recurse) break;
+-              for (oc = cd->open_caps; oc != NULL; oc = oc->next)
+-                {
+-                if (oc->number == recno)
+-                  {
+-                  oc->flag = TRUE;
+-                  break;
+-                  }
+-                }
+-              }
+-            }
+-
+           /* Count named back references. */
+           if (!is_recurse) cd->namedrefcount++;
+@@ -7215,7 +7191,44 @@ for (;; ptr++)
+           issue is fixed "properly" in PCRE2. As PCRE1 is now in maintenance
+           only mode, we finesse the bug by allowing more memory always. */
+-          /* if (recno == 0) */ *lengthptr += 2 + 2*LINK_SIZE;
++          *lengthptr += 2 + 2*LINK_SIZE;
++          
++          /* It is even worse than that. The current reference may be to an
++          existing named group with a different number (so apparently not
++          recursive) but which later on is also attached to a group with the
++          current number. This can only happen if $(| has been previous 
++          encountered. In that case, we allow yet more memory, just in case. 
++          (Again, this is fixed "properly" in PCRE2. */
++          
++          if (cd->dupgroups) *lengthptr += 2 + 2*LINK_SIZE;
++
++          /* Otherwise, check for recursion here. The name table does not exist
++          in the first pass; instead we must scan the list of names encountered
++          so far in order to get the number. If the name is not found, leave
++          the value of recno as 0 for a forward reference. */
++           
++          else
++            { 
++            ng = cd->named_groups;
++            for (i = 0; i < cd->names_found; i++, ng++)
++              {
++              if (namelen == ng->length &&
++                  STRNCMP_UC_UC(name, ng->name, namelen) == 0)
++                {
++                open_capitem *oc;
++                recno = ng->number;
++                if (is_recurse) break;
++                for (oc = cd->open_caps; oc != NULL; oc = oc->next)
++                  {
++                  if (oc->number == recno)
++                    {
++                    oc->flag = TRUE;
++                    break;
++                    }
++                  }
++                }
++              }
++            }   
+           }
+         /* In the real compile, search the name table. We check the name
+@@ -7262,8 +7275,6 @@ for (;; ptr++)
+           for (i++; i < cd->names_found; i++)
+             {
+             if (STRCMP_UC_UC(slot + IMM2_SIZE, cslot + IMM2_SIZE) != 0) break;
+-
+-
+             count++;
+             cslot += cd->name_entry_size;
+             }
+@@ -9189,6 +9200,7 @@ cd->names_found = 0;
+ cd->name_entry_size = 0;
+ cd->name_table = NULL;
+ cd->dupnames = FALSE;
++cd->dupgroups = FALSE;
+ cd->namedrefcount = 0;
+ cd->start_code = cworkspace;
+ cd->hwm = cworkspace;
+@@ -9223,7 +9235,7 @@ if (errorcode != 0) goto PCRE_EARLY_ERROR_RETURN;
+ DPRINTF(("end pre-compile: length=%d workspace=%d\n", length,
+   (int)(cd->hwm - cworkspace)));
+-
++  
+ if (length > MAX_PATTERN_SIZE)
+   {
+   errorcode = ERR20;
+diff --git a/pcre_internal.h b/pcre_internal.h
+index dd0ac7f..7ca6020 100644
+--- a/pcre_internal.h
++++ b/pcre_internal.h
+@@ -2446,6 +2446,7 @@ typedef struct compile_data {
+   BOOL had_pruneorskip;             /* (*PRUNE) or (*SKIP) encountered */
+   BOOL check_lookbehind;            /* Lookbehinds need later checking */
+   BOOL dupnames;                    /* Duplicate names exist */
++  BOOL dupgroups;                   /* Duplicate groups exist: (?| found */ 
+   BOOL iscondassert;                /* Next assert is a condition */
+   int  nltype;                      /* Newline type */
+   int  nllen;                       /* Newline string length */
+diff --git a/testdata/testinput2 b/testdata/testinput2
+index e12de3a..8e044f8 100644
+--- a/testdata/testinput2
++++ b/testdata/testinput2
+@@ -4158,4 +4158,6 @@ backtracking verbs. --/
+ "(?J:(?|(?'R')(\k'R')|((?'R'))))"
++/(?J:(?|(:(?|(?'R')(\k'R')|((?'R')))H'Rk'Rf)|s(?'R')))/
++
+ /-- End of testinput2 --/
+diff --git a/testdata/testoutput2 b/testdata/testoutput2
+index 5bad26c..6019425 100644
+--- a/testdata/testoutput2
++++ b/testdata/testoutput2
+@@ -14430,4 +14430,6 @@ Failed: unmatched parentheses at offset 23
+ "(?J:(?|(?'R')(\k'R')|((?'R'))))"
++/(?J:(?|(:(?|(?'R')(\k'R')|((?'R')))H'Rk'Rf)|s(?'R')))/
++
+ /-- End of testinput2 --/
+-- 
+2.4.3
+
diff --git a/src/patches/pcre-8.37-Fix-named-forward-reference-to-duplicate-group-numbe.patch b/src/patches/pcre-8.37-Fix-named-forward-reference-to-duplicate-group-numbe.patch
new file mode 100644 (file)
index 0000000..837e86f
--- /dev/null
@@ -0,0 +1,98 @@
+From 83ed574998fe7b844b98ab7cd56291068feb9e31 Mon Sep 17 00:00:00 2001
+From: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date: Sat, 16 May 2015 11:05:40 +0000
+Subject: [PATCH] Fix named forward reference to duplicate group number
+ overflow bug.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Port to 8.37:
+
+commit 2fa78aa4e42bcebf2d616c4ee89c012f29dc3447
+Author: ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date:   Sat May 16 11:05:40 2015 +0000
+
+    Fix named forward reference to duplicate group number overflow bug.
+
+    git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1559 2f5784b3-3f2a-0410-8824-cb99058d5e15
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pcre_compile.c       | 24 ++++++++++++++++--------
+ testdata/testinput1  |  3 +++
+ testdata/testoutput1 |  5 +++++
+ 3 files changed, 24 insertions(+), 8 deletions(-)
+
+diff --git a/pcre_compile.c b/pcre_compile.c
+index b66b1f6..8b4aaef 100644
+--- a/pcre_compile.c
++++ b/pcre_compile.c
+@@ -7183,15 +7183,15 @@ for (;; ptr++)
+               open_capitem *oc;
+               recno = ng->number;
+               if (is_recurse) break;
+-              for (oc = cd->open_caps; oc != NULL; oc = oc->next)         
+-                {          
+-                if (oc->number == recno)                                     
+-                  {               
+-                  oc->flag = TRUE;                                      
++              for (oc = cd->open_caps; oc != NULL; oc = oc->next)
++                {
++                if (oc->number == recno)
++                  {
++                  oc->flag = TRUE;
+                   break;
+-                  }                                                         
+-                }                          
+-              }    
++                  }
++                }
++              }
+             }
+           /* Count named back references. */
+@@ -7203,6 +7203,14 @@ for (;; ptr++)
+           16-bit data item. */
+           *lengthptr += IMM2_SIZE;
++
++          /* If this is a forward reference and we are within a (?|...) group,
++          the reference may end up as the number of a group which we are
++          currently inside, that is, it could be a recursive reference. In the
++          real compile this will be picked up and the reference wrapped with
++          OP_ONCE to make it atomic, so we must space in case this occurs. */
++
++          if (recno == 0) *lengthptr += 2 + 2*LINK_SIZE;
+           }
+         /* In the real compile, search the name table. We check the name
+diff --git a/testdata/testinput1 b/testdata/testinput1
+index 73c2f4d..8379ce0 100644
+--- a/testdata/testinput1
++++ b/testdata/testinput1
+@@ -5730,4 +5730,7 @@ AbcdCBefgBhiBqz
+ "(?1)(?#?'){8}(a)"
+     baaaaaaaaac
++"(?|(\k'Pm')|(?'Pm'))"
++    abcd
++
+ /-- End of testinput1 --/
+diff --git a/testdata/testoutput1 b/testdata/testoutput1
+index 0a53fd0..e852ab9 100644
+--- a/testdata/testoutput1
++++ b/testdata/testoutput1
+@@ -9429,4 +9429,9 @@ No match
+  0: aaaaaaaaa
+  1: a
++"(?|(\k'Pm')|(?'Pm'))"
++    abcd
++ 0: 
++ 1: 
++
+ /-- End of testinput1 --/
+-- 
+2.4.3
+
diff --git a/src/patches/qemu-0.15.0_missing_definitions_hack.patch b/src/patches/qemu-0.15.0_missing_definitions_hack.patch
deleted file mode 100644 (file)
index 4ff2c08..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-diff -Naur qemu-kvm-0.15.0.org/hw/9pfs/virtio-9p-local.c qemu-kvm-0.15.0/hw/9pfs/virtio-9p-local.c
---- qemu-kvm-0.15.0.org/hw/9pfs/virtio-9p-local.c      2011-08-09 14:40:29.000000000 +0200
-+++ qemu-kvm-0.15.0/hw/9pfs/virtio-9p-local.c  2011-08-14 10:31:22.711480316 +0200
-@@ -21,6 +21,16 @@
- #include <sys/un.h>
- #include <attr/xattr.h>
-+#ifndef AT_FDCWD
-+/* Copied from linux/include/linux/fcntl.h * because direct include fails */
-+#define AT_FDCWD              -100    /* Special value used to indicate
-+                                           openat should use the current
-+                                           working directory. */
-+#define AT_SYMLINK_NOFOLLOW   0x100   /* Do not follow symbolic links.  */
-+#define AT_REMOVEDIR          0x200   /* Remove directory instead of
-+                                           unlinking file.  */
-+#define AT_SYMLINK_FOLLOW     0x400   /* Follow symbolic links.  */
-+#endif
- static int local_lstat(FsContext *fs_ctx, const char *path, struct stat *stbuf)
- {
-diff -Naur qemu-kvm-0.15.0.org/linux-user/syscall.c qemu-kvm-0.15.0/linux-user/syscall.c
---- qemu-kvm-0.15.0.org/linux-user/syscall.c   2011-08-09 14:40:29.000000000 +0200
-+++ qemu-kvm-0.15.0/linux-user/syscall.c       2011-08-14 12:43:43.190231600 +0200
-@@ -971,6 +971,16 @@
-     return result;
- }
-+/* Copied from linux/include/asm/resource.h * because direct include fails */
-+
-+#ifndef RLIMIT_NICE
-+#define RLIMIT_NICE           13      /* max nice prio allowed to raise to
-+                                         0-39 for nice level 19 .. -20 */
-+#endif
-+#ifndef RLIMIT_RTPRIO
-+#define RLIMIT_RTPRIO         14      /* maximum realtime priority */
-+#endif
-+
- static inline int target_to_host_resource(int code)
- {
-     switch (code) {
diff --git a/src/patches/squid-3.4-13228.patch b/src/patches/squid-3.4-13228.patch
new file mode 100644 (file)
index 0000000..7f7d16f
--- /dev/null
@@ -0,0 +1,35 @@
+------------------------------------------------------------
+revno: 13228
+revision-id: squid3@treenet.co.nz-20150828132334-3r7v4kh1lrqprrqg
+parent: squid3@treenet.co.nz-20150801072237-5tzh2dczozz1e8sq
+fixes bug: http://bugs.squid-cache.org/show_bug.cgi?id=3696
+committer: Amos Jeffries <squid3@treenet.co.nz>
+branch nick: 3.4
+timestamp: Fri 2015-08-28 06:23:34 -0700
+message:
+  Bug 3696: crash when client delay pools are activated
+------------------------------------------------------------
+# Bazaar merge directive format 2 (Bazaar 0.90)
+# revision_id: squid3@treenet.co.nz-20150828132334-3r7v4kh1lrqprrqg
+# target_branch: http://bzr.squid-cache.org/bzr/squid3/3.4
+# testament_sha1: d193928c4656282187f2a31bf66d43fd4c247177
+# timestamp: 2015-08-28 13:33:44 +0000
+# source_branch: http://bzr.squid-cache.org/bzr/squid3/3.4
+# base_revision_id: squid3@treenet.co.nz-20150801072237-\
+#   5tzh2dczozz1e8sq
+# 
+# Begin patch
+=== modified file 'src/client_side.cc'
+--- src/client_side.cc 2014-06-21 04:24:37 +0000
++++ src/client_side.cc 2015-08-28 13:23:34 +0000
+@@ -3447,7 +3447,8 @@
+             /* pools require explicit 'allow' to assign a client into them */
+             if (pools[pool].access) {
+-                ch.accessList = pools[pool].access;
++                cbdataReferenceDone(ch.accessList);
++                ch.accessList = cbdataReference(pools[pool].access);
+                 allow_t answer = ch.fastCheck();
+                 if (answer == ACCESS_ALLOWED) {
+
diff --git a/src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch b/src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch
new file mode 100644 (file)
index 0000000..27b6f06
--- /dev/null
@@ -0,0 +1,56 @@
+From 0e32cbc0bc8fce3319491db360fb23b16561ec58 Mon Sep 17 00:00:00 2001
+From: Tobias Brunner <tobias@strongswan.org>
+Date: Tue, 15 Dec 2015 17:15:32 +0100
+Subject: [PATCH] child-rekey: Suppress updown event when deleting redundant
+ CHILD_SAs
+
+When handling a rekey collision we might have to delete an already
+installed redundant CHILD_SA (or expect the other peer to do so).  We don't
+want to trigger updown events for these as we don't during rekeying.
+
+Instead of setting the state to CHILD_REKEYING we could maybe use
+CHILD_REKEYED, which we currently only use for IKEv1, and set it for
+all CHILD_SAs we delete or expect the other peer to delete.  Would need
+a small change in child-delete too.  Or we could introduce a new state.
+
+ #853.
+---
+ src/libcharon/sa/ikev2/tasks/child_rekey.c |   11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/src/libcharon/sa/ikev2/tasks/child_rekey.c b/src/libcharon/sa/ikev2/tasks/child_rekey.c
+index c7a8a13..6f0c2b2 100644
+--- a/src/libcharon/sa/ikev2/tasks/child_rekey.c
++++ b/src/libcharon/sa/ikev2/tasks/child_rekey.c
+@@ -279,11 +279,15 @@ static child_sa_t *handle_collision(private_child_rekey_t *this)
+                       /* don't touch child other created, it has already been deleted */
+                       if (!this->other_child_destroyed)
+                       {
+-                              /* disable close action for the redundand child */
++                              /* disable close action and updown event for redundant child */
+                               child_sa = other->child_create->get_child(other->child_create);
+                               if (child_sa)
+                               {
+                                       child_sa->set_close_action(child_sa, ACTION_NONE);
++                                      if (child_sa->get_state(child_sa) != CHILD_REKEYING)
++                                      {
++                                              child_sa->set_state(child_sa, CHILD_REKEYING);
++                                      }
+                               }
+                       }
+               }
+@@ -372,6 +376,11 @@ METHOD(task_t, process_i, status_t,
+       {
+               return SUCCESS;
+       }
++      /* disable updown event for redundant CHILD_SA */
++      if (to_delete->get_state(to_delete) != CHILD_REKEYING)
++      {
++              to_delete->set_state(to_delete, CHILD_REKEYING);
++      }
+       spi = to_delete->get_spi(to_delete, TRUE);
+       protocol = to_delete->get_protocol(to_delete);
+-- 
+1.7.9.5
+
index 79bee046908fa0fd78459963d5a49b8d71b45413..7071983b8c6d246cbe6a62ceb98df8de48afb36a 100644 (file)
        # This is used only by the default updown script, not by your custom
        # ones, so do not mess with it; see CAUTION comment up at top.
 -      iptables -I INPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+      iptables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++      iptables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
            -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
            -d $PLUTO_ME $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
 -      iptables -I OUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+      iptables -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++      iptables --wait -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
            -s $PLUTO_ME $S_MY_PORT $IPSEC_POLICY_OUT \
 -          -d $PLUTO_PEER_CLIENT $D_PEER_PORT -j ACCEPT
 +          -d $PLUTO_PEER_CLIENT $D_PEER_PORT -j MARK --set-mark 50
        # This is used only by the default updown script, not by your custom
        # ones, so do not mess with it; see CAUTION comment up at top.
 -      iptables -D INPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+      iptables -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++      iptables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
            -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
            -d $PLUTO_ME $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
 -      iptables -D OUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+      iptables -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++      iptables --wait -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
            -s $PLUTO_ME $S_MY_PORT $IPSEC_POLICY_OUT \
 -          -d $PLUTO_PEER_CLIENT $D_PEER_PORT -j ACCEPT
 +          -d $PLUTO_PEER_CLIENT $D_PEER_PORT -j MARK --set-mark 50
        if [ "$PLUTO_PEER_CLIENT" != "$PLUTO_MY_SOURCEIP/32" ]
        then
 -        iptables -I FORWARD 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+        iptables -I IPSECFORWARD 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        iptables --wait -I IPSECFORWARD 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
 -            -d $PLUTO_PEER_CLIENT $D_PEER_PORT $IPSEC_POLICY_OUT -j ACCEPT
 -        iptables -I FORWARD 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
 +            -d $PLUTO_PEER_CLIENT $D_PEER_PORT $IPSEC_POLICY_OUT -j MARK --set-mark 50
-+        iptables -I IPSECFORWARD 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        iptables --wait -I IPSECFORWARD 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
 -            -d $PLUTO_MY_CLIENT $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
 +            -d $PLUTO_MY_CLIENT $D_MY_PORT $IPSEC_POLICY_IN -j RETURN
        if [ -n "$PLUTO_MY_SOURCEIP" -o -n "$PLUTO_HOST_ACCESS" ]
        then
 -        iptables -I INPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+        iptables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        iptables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
 -            -d $PLUTO_MY_CLIENT $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
 -        iptables -I OUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
 +            -d $PLUTO_MY_CLIENT $D_MY_PORT $IPSEC_POLICY_IN -j RETURN
-+        iptables -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        iptables --wait -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
 -            -d $PLUTO_PEER_CLIENT $D_PEER_PORT $IPSEC_POLICY_OUT -j ACCEPT
 +            -d $PLUTO_PEER_CLIENT $D_PEER_PORT $IPSEC_POLICY_OUT -j MARK --set-mark 50
        if [ -n "$PLUTO_IPCOMP" ]
        then
 -        iptables -I INPUT 1 -i $PLUTO_INTERFACE -p 4 \
-+        iptables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p 4 \
++        iptables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p 4 \
              -s $PLUTO_PEER -d $PLUTO_ME $IPSEC_POLICY_IN -j ACCEPT
        fi
        #
 +
 +      #
 +      # Open Firewall for IPinIP + AH + ESP Traffic
-+        iptables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p IP \
++        iptables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p IP \
 +            -s $PLUTO_PEER $S_PEER_PORT \
 +            -d $PLUTO_ME $D_MY_PORT -j ACCEPT
-+        iptables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p AH \
++        iptables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p AH \
 +            -s $PLUTO_PEER $S_PEER_PORT \
 +            -d $PLUTO_ME $D_MY_PORT -j ACCEPT
-+        iptables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p ESP \
++        iptables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p ESP \
 +            -s $PLUTO_PEER $S_PEER_PORT \
 +            -d $PLUTO_ME $D_MY_PORT -j ACCEPT
 +      if [ $VPN_LOGGING ]
 +      done
 +
 +      if [ -n "${src}" ]; then
-+              iptables -t nat -A IPSECNAT -o $PLUTO_INTERFACE -s $PLUTO_ME -d $PLUTO_PEER_CLIENT -j SNAT --to $src
++              iptables --wait -t nat -A IPSECNAT -o $PLUTO_INTERFACE -s $PLUTO_ME -d $PLUTO_PEER_CLIENT -j SNAT --to $src
 +              logger -t $TAG -p $FAC_PRIO \
 +                      "snat+ $PLUTO_INTERFACE-$PLUTO_ME : $PLUTO_PEER_CLIENT - $src"
 +      else
        if [ "$PLUTO_PEER_CLIENT" != "$PLUTO_MY_SOURCEIP/32" ]
        then
 -        iptables -D FORWARD -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+        iptables -D IPSECFORWARD -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        iptables --wait -D IPSECFORWARD -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
              -d $PLUTO_PEER_CLIENT $D_PEER_PORT \
 -               $IPSEC_POLICY_OUT -j ACCEPT
 -        iptables -D FORWARD -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
 +               $IPSEC_POLICY_OUT -j MARK --set-mark 50
-+        iptables -D IPSECFORWARD -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        iptables --wait -D IPSECFORWARD -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
              -d $PLUTO_MY_CLIENT $D_MY_PORT \
 -               $IPSEC_POLICY_IN -j ACCEPT
        if [ -n "$PLUTO_MY_SOURCEIP" -o -n "$PLUTO_HOST_ACCESS" ]
        then
 -        iptables -D INPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+        iptables -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        iptables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
              -d $PLUTO_MY_CLIENT $D_MY_PORT \
 -               $IPSEC_POLICY_IN -j ACCEPT
 -        iptables -D OUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
 +               $IPSEC_POLICY_IN -j RETURN
-+        iptables -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        iptables --wait -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
              -d $PLUTO_PEER_CLIENT $D_PEER_PORT \
 -               $IPSEC_POLICY_OUT -j ACCEPT
        if [ -n "$PLUTO_IPCOMP" ]
        then
 -        iptables -D INPUT -i $PLUTO_INTERFACE -p 4 \
-+        iptables -D IPSECINPUT -i $PLUTO_INTERFACE -p 4 \
++        iptables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p 4 \
              -s $PLUTO_PEER -d $PLUTO_ME $IPSEC_POLICY_IN -j ACCEPT
        fi
        #
 +
 +      #
 +      # Close Firewall for IPinIP + AH + ESP Traffic
-+        iptables -D IPSECINPUT -i $PLUTO_INTERFACE -p IP \
++        iptables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p IP \
 +            -s $PLUTO_PEER $S_PEER_PORT \
 +            -d $PLUTO_ME $D_MY_PORT -j ACCEPT
-+        iptables -D IPSECINPUT -i $PLUTO_INTERFACE -p AH \
++        iptables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p AH \
 +            -s $PLUTO_PEER $S_PEER_PORT \
 +            -d $PLUTO_ME $D_MY_PORT -j ACCEPT
-+        iptables -D IPSECINPUT -i $PLUTO_INTERFACE -p ESP \
++        iptables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p ESP \
 +            -s $PLUTO_PEER $S_PEER_PORT \
 +            -d $PLUTO_ME $D_MY_PORT -j ACCEPT
 +      if [ $VPN_LOGGING ]
 +      done
 +
 +      if [ -n "${src}" ]; then
-+              iptables -t nat -D IPSECNAT -o $PLUTO_INTERFACE -s $PLUTO_ME -d $PLUTO_PEER_CLIENT -j SNAT --to $src
++              iptables --wait -t nat -D IPSECNAT -o $PLUTO_INTERFACE -s $PLUTO_ME -d $PLUTO_PEER_CLIENT -j SNAT --to $src
 +              logger -t $TAG -p $FAC_PRIO \
 +                      "snat- $PLUTO_INTERFACE-$PLUTO_ME : $PLUTO_PEER_CLIENT - $src"
 +      else
        # This is used only by the default updown script, not by your custom
        # ones, so do not mess with it; see CAUTION comment up at top.
 -      ip6tables -I INPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+      ip6tables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++      ip6tables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
            -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
            -d $PLUTO_ME $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
 -      ip6tables -I OUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+      ip6tables -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++      ip6tables --wait -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
            -s $PLUTO_ME $S_MY_PORT $IPSEC_POLICY_OUT \
            -d $PLUTO_PEER_CLIENT $D_PEER_PORT -j ACCEPT
        #
        # This is used only by the default updown script, not by your custom
        # ones, so do not mess with it; see CAUTION comment up at top.
 -      ip6tables -D INPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+      ip6tables -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++      ip6tables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
            -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
            -d $PLUTO_ME $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
 -      ip6tables -D OUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+      ip6tables -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++      ip6tables --wait -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
            -s $PLUTO_ME $S_MY_PORT $IPSEC_POLICY_OUT \
            -d $PLUTO_PEER_CLIENT $D_PEER_PORT -j ACCEPT
        #
        if [ "$PLUTO_PEER_CLIENT" != "$PLUTO_MY_SOURCEIP/128" ]
        then
 -        ip6tables -I FORWARD 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+        ip6tables -I IPSECFORWARD 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        ip6tables --wait -I IPSECFORWARD 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
              -d $PLUTO_PEER_CLIENT $D_PEER_PORT $IPSEC_POLICY_OUT -j ACCEPT
 -        ip6tables -I FORWARD 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+        ip6tables -I IPSECFORWARD 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        ip6tables --wait -I IPSECFORWARD 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
              -d $PLUTO_MY_CLIENT $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
        fi
        if [ -n "$PLUTO_MY_SOURCEIP" -o -n "$PLUTO_HOST_ACCESS" ]
        then
 -        ip6tables -I INPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+        ip6tables -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        ip6tables --wait -I IPSECINPUT 1 -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
              -d $PLUTO_MY_CLIENT $D_MY_PORT $IPSEC_POLICY_IN -j ACCEPT
 -        ip6tables -I OUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+        ip6tables -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        ip6tables --wait -I IPSECOUTPUT 1 -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
              -d $PLUTO_PEER_CLIENT $D_PEER_PORT $IPSEC_POLICY_OUT -j ACCEPT
        fi
        if [ "$PLUTO_PEER_CLIENT" != "$PLUTO_MY_SOURCEIP/128" ]
        then
 -        ip6tables -D FORWARD -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+        ip6tables -D IPSECFORWARD -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        ip6tables --wait -D IPSECFORWARD -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
              -d $PLUTO_PEER_CLIENT $D_PEER_PORT \
                 $IPSEC_POLICY_OUT -j ACCEPT
 -        ip6tables -D FORWARD -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+        ip6tables -D IPSECFORWARD -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        ip6tables --wait -D IPSECFORWARD -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
              -d $PLUTO_MY_CLIENT $D_MY_PORT \
                 $IPSEC_POLICY_IN -j ACCEPT
        if [ -n "$PLUTO_MY_SOURCEIP" -o -n "$PLUTO_HOST_ACCESS" ]
        then
 -        ip6tables -D INPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
-+        ip6tables -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
++        ip6tables --wait -D IPSECINPUT -i $PLUTO_INTERFACE -p $PLUTO_MY_PROTOCOL \
              -s $PLUTO_PEER_CLIENT $S_PEER_PORT \
              -d $PLUTO_MY_CLIENT $D_MY_PORT \
                 $IPSEC_POLICY_IN -j ACCEPT
 -        ip6tables -D OUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
-+        ip6tables -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
++        ip6tables --wait -D IPSECOUTPUT -o $PLUTO_INTERFACE -p $PLUTO_PEER_PROTOCOL \
              -s $PLUTO_MY_CLIENT $S_MY_PORT \
              -d $PLUTO_PEER_CLIENT $D_PEER_PORT \
                 $IPSEC_POLICY_OUT -j ACCEPT
index 7aa8cf13ea42106ce2abba086b6d7ce886fcfbb9..f4967065622303c463c0e5b68c3cb2aa7ac08768 100644 (file)
@@ -42,7 +42,7 @@ foreach my $key (keys %ovpnconfig){
        }else{
                print "Client $ovpnconfig{$key}[2] NOT converted!\n";
        }
-       $ovpnconfig{$key}[32] = 'dynamic';
+       $ovpnconfig{$key}[32] = 'dynamic' if ($ovpnconfig{$key}[32] eq '');
 }
 &General::writehasharray("/var/ipfire/ovpn/ovpnconfig", \%ovpnconfig);
 if ($running eq 'on')
index 0791764ebddaab149397557ccaf090edbc65a0d9..b840ec127a119ea9ac885a71a6979af5f59111d4 100644 (file)
@@ -213,7 +213,7 @@ int oktoleave(void)
                strcpy(temp, ""); findkey(kv, "DNS1", temp);
                if (!(strlen(temp)))
                {
-                       errorbox(_("Misssing DNS."));
+                       errorbox(_("Missing DNS."));
                        freekeyvalues(kv);
                        return 0;
                }
index 86788507567c694a15ee0fd2b0d3f1077b643d86..6cba810585992d9eaeba3f911295fa6f444cd174 100644 (file)
@@ -16,8 +16,10 @@ jv
 km_KH
 nl
 pl
+pt
 pt_BR
 pt_PT
+ro
 ro_RO
 ru
 rw
index 12333a69e0a920a95f44e675e835af3670d12bd5..021aecbbc6929b4a0d0c9696f2e714f8bf79fc77 100644 (file)
@@ -5,14 +5,15 @@
 # Translators:
 # Michael Tremer <michael.tremer@ipfire.org>, 2014
 # Stefan Schantl <stefan.schantl@ipfire.org>, 2014
+# Sun Tiger, 2015
 msgid ""
 msgstr ""
 "Project-Id-Version: IPFire Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2014-08-21 15:12+0000\n"
-"PO-Revision-Date: 2014-08-24 19:39+0000\n"
-"Last-Translator: Stefan Schantl <stefan.schantl@ipfire.org>\n"
-"Language-Team: German (http://www.transifex.com/projects/p/ipfire/language/de/)\n"
+"PO-Revision-Date: 2015-05-07 16:52+0000\n"
+"Last-Translator: Sun Tiger\n"
+"Language-Team: German (http://www.transifex.com/mstremer/ipfire/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -53,7 +54,7 @@ msgstr "Domänenname:"
 #: networking.c:442 networking.c:552 networking.c:603 networking.c:610
 #: networking.c:713 timezone.c:63
 msgid "Unable to open settings file"
-msgstr "Settings-Datei konnte nicht geöffnet werden"
+msgstr "Einstellungs-Datei konnte nicht geöffnet werden"
 
 #: dhcp.c:111
 msgid "DHCP server configuration"
@@ -320,7 +321,7 @@ msgstr "Identifizieren"
 
 #: netstuff.c:678
 msgid "Device Identification"
-msgstr "Device-Identifizierung"
+msgstr "Geräteidentifizierung"
 
 #: netstuff.c:678
 msgid "The lights on the selected port should flash now for 10 seconds..."
diff --git a/src/setup/po/pt.po b/src/setup/po/pt.po
new file mode 100644 (file)
index 0000000..bb9d285
--- /dev/null
@@ -0,0 +1,584 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR The IPFire Project (www.ipfire.org)
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: IPFire Project\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-08-21 15:12+0000\n"
+"PO-Revision-Date: 2014-08-12 10:08+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Portuguese (http://www.transifex.com/mstremer/ipfire/language/pt/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: pt\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: dhcp.c:50
+msgid "Start address:"
+msgstr ""
+
+#: dhcp.c:51
+msgid "End address:"
+msgstr ""
+
+#: dhcp.c:52 networking.c:717
+msgid "Primary DNS:"
+msgstr ""
+
+#: dhcp.c:53 networking.c:723
+msgid "Secondary DNS:"
+msgstr ""
+
+#: dhcp.c:54
+msgid "Default lease (mins):"
+msgstr ""
+
+#: dhcp.c:55
+msgid "Max lease (mins):"
+msgstr ""
+
+#: dhcp.c:56
+msgid "Domain name suffix:"
+msgstr ""
+
+#: dhcp.c:86 dhcp.c:93 dhcp.c:101 domainname.c:34 hostname.c:37 keymap.c:70
+#: misc.c:40 misc.c:52 netstuff.c:377 netstuff.c:566 netstuff.c:704
+#: networking.c:134 networking.c:255 networking.c:291 networking.c:346
+#: networking.c:442 networking.c:552 networking.c:603 networking.c:610
+#: networking.c:713 timezone.c:63
+msgid "Unable to open settings file"
+msgstr ""
+
+#: dhcp.c:111
+msgid "DHCP server configuration"
+msgstr ""
+
+#: dhcp.c:116
+msgid "Configure the DHCP server by entering the settings information."
+msgstr ""
+
+#: dhcp.c:125
+msgid "Enabled"
+msgstr ""
+
+#: dhcp.c:142 domainname.c:43 hostname.c:47 keymap.c:86 main.c:99 main.c:172
+#: main.c:174 netstuff.c:157 netstuff.c:733 netstuff.c:756 networking.c:163
+#: networking.c:269 networking.c:305 networking.c:409 networking.c:560
+#: networking.c:642 networking.c:653 networking.c:746 passwords.c:89
+#: timezone.c:78
+msgid "OK"
+msgstr ""
+
+#: dhcp.c:143 domainname.c:43 hostname.c:47 keymap.c:86 netstuff.c:158
+#: netstuff.c:673 netstuff.c:733 netstuff.c:756 networking.c:305
+#: networking.c:410 networking.c:560 networking.c:653 networking.c:746
+#: passwords.c:89 timezone.c:78
+msgid "Cancel"
+msgstr ""
+
+#: dhcp.c:156
+msgid ""
+"The following fields are invalid:\n"
+"\n"
+msgstr ""
+
+#: dhcp.c:159
+msgid "Start address"
+msgstr ""
+
+#: dhcp.c:165
+msgid "End address"
+msgstr ""
+
+#: dhcp.c:173 networking.c:755
+msgid "Primary DNS"
+msgstr ""
+
+#: dhcp.c:182 networking.c:764
+msgid "Secondary DNS"
+msgstr ""
+
+#: dhcp.c:189
+msgid "Default lease time"
+msgstr ""
+
+#: dhcp.c:195
+msgid "Max. lease time"
+msgstr ""
+
+#: domainname.c:42 main.c:70
+msgid "Domain name"
+msgstr ""
+
+#: domainname.c:42
+msgid "Enter Domain name"
+msgstr ""
+
+#: domainname.c:48
+msgid "Domain name cannot be empty."
+msgstr ""
+
+#: domainname.c:50
+msgid "Domain name cannot contain spaces."
+msgstr ""
+
+#: domainname.c:53
+msgid "Domain name may only contain letters, numbers, hyphens and periods."
+msgstr ""
+
+#: hostname.c:46 main.c:69
+msgid "Hostname"
+msgstr ""
+
+#: hostname.c:46
+msgid "Enter the machine's hostname."
+msgstr ""
+
+#: hostname.c:53
+msgid "Hostname cannot be empty."
+msgstr ""
+
+#: hostname.c:55
+msgid "Hostname cannot contain spaces."
+msgstr ""
+
+#: hostname.c:58
+msgid "Hostname may only contain letters, numbers and hyphens."
+msgstr ""
+
+#: keymap.c:84 main.c:67
+msgid "Keyboard mapping"
+msgstr ""
+
+#: keymap.c:85
+msgid "Choose the type of keyboard you are using from the list below."
+msgstr ""
+
+#: main.c:68 timezone.c:77
+msgid "Timezone"
+msgstr ""
+
+#: main.c:71 networking.c:110 networking.c:115 networking.c:447
+msgid "Networking"
+msgstr ""
+
+#: main.c:72 misc.c:147
+msgid "ISDN"
+msgstr ""
+
+#: main.c:73
+msgid "'root' password"
+msgstr ""
+
+#: main.c:74
+msgid "'admin' password"
+msgstr ""
+
+#: main.c:90
+msgid "              <Tab>/<Alt-Tab> between elements   |  <Space> selects"
+msgstr ""
+
+#: main.c:97
+msgid "Section menu"
+msgstr ""
+
+#: main.c:98
+msgid "Select the item you wish to configure."
+msgstr ""
+
+#: main.c:99
+msgid "Quit"
+msgstr ""
+
+#: main.c:172
+msgid "Setup is complete."
+msgstr ""
+
+#: main.c:174 netstuff.c:733 networking.c:560 networking.c:653
+msgid "Warning"
+msgstr ""
+
+#: main.c:175
+msgid ""
+"Initial setup was not entirely complete. You must ensure that Setup is "
+"properly finished by running setup again at the shell."
+msgstr ""
+
+#: misc.c:62
+#, c-format
+msgid "Unable to write %s/main/hostname.conf"
+msgstr ""
+
+#: misc.c:71
+msgid "Unable to open main hosts file."
+msgstr ""
+
+#: misc.c:76
+msgid "Unable to write /etc/hosts."
+msgstr ""
+
+#: misc.c:117
+msgid "Unable to write /etc/hosts.deny."
+msgstr ""
+
+#: misc.c:125
+msgid "Unable to write /etc/hosts.allow."
+msgstr ""
+
+#: misc.c:136
+msgid "Unable to set hostname."
+msgstr ""
+
+#: misc.c:147
+msgid "Scanning and configuring ISDN devices."
+msgstr ""
+
+#: misc.c:148
+msgid "Unable to scan for ISDN devices."
+msgstr ""
+
+#: netstuff.c:86
+#, c-format
+msgid "Interface - %s"
+msgstr ""
+
+#: netstuff.c:91
+#, c-format
+msgid "Enter the IP address information for the %s interface."
+msgstr ""
+
+#: netstuff.c:103
+msgid "Static"
+msgstr ""
+
+#: netstuff.c:104
+msgid "DHCP"
+msgstr ""
+
+#: netstuff.c:105
+msgid "PPP DIALUP (PPPoE, modem, ATM ...)"
+msgstr ""
+
+#: netstuff.c:113
+msgid "DHCP Hostname:"
+msgstr ""
+
+#: netstuff.c:115
+msgid "Force DHCP MTU:"
+msgstr ""
+
+#: netstuff.c:134
+msgid "IP address:"
+msgstr ""
+
+#: netstuff.c:146
+msgid "Network mask:"
+msgstr ""
+
+#: netstuff.c:173 networking.c:749
+msgid "The following fields are invalid:"
+msgstr ""
+
+#: netstuff.c:183
+msgid "IP address"
+msgstr ""
+
+#: netstuff.c:189
+msgid "Network mask"
+msgstr ""
+
+#: netstuff.c:198
+msgid "DHCP hostname"
+msgstr ""
+
+#: netstuff.c:396 netstuff.c:709
+msgid "Unset"
+msgstr ""
+
+#: netstuff.c:669
+#, c-format
+msgid "Please choose a networkcard for the following interface - %s."
+msgstr ""
+
+#: netstuff.c:672
+msgid "Extended Network Menu"
+msgstr ""
+
+#: netstuff.c:673 networking.c:520
+msgid "Select"
+msgstr ""
+
+#: netstuff.c:673
+msgid "Identify"
+msgstr ""
+
+#: netstuff.c:678
+msgid "Device Identification"
+msgstr ""
+
+#: netstuff.c:678
+msgid "The lights on the selected port should flash now for 10 seconds..."
+msgstr ""
+
+#: netstuff.c:679
+msgid "Identification is not supported by this interface."
+msgstr ""
+
+#: netstuff.c:691
+msgid "There are no unassigned interfaces on your system."
+msgstr ""
+
+#: netstuff.c:732
+#, c-format
+msgid "Do you really want to remove the assigned %s interface?"
+msgstr ""
+
+#: netstuff.c:755
+msgid "Select network driver"
+msgstr ""
+
+#: netstuff.c:755
+msgid "Set additional module parameters"
+msgstr ""
+
+#: netstuff.c:762
+msgid "Loading module..."
+msgstr ""
+
+#: netstuff.c:777
+msgid "Unable to load driver module."
+msgstr ""
+
+#: netstuff.c:780
+msgid "Module name cannot be blank."
+msgstr ""
+
+#: networking.c:110
+msgid "Stopping network..."
+msgstr ""
+
+#: networking.c:115
+msgid "Restarting network..."
+msgstr ""
+
+#: networking.c:146
+msgid "No GREEN interface assigned."
+msgstr ""
+
+#: networking.c:152
+msgid "Missing an IP address on GREEN."
+msgstr ""
+
+#: networking.c:163
+msgid "Error"
+msgstr ""
+
+#: networking.c:163
+msgid "Ignore"
+msgstr ""
+
+#: networking.c:164
+msgid "No RED interface assigned."
+msgstr ""
+
+#: networking.c:173
+msgid "Missing an IP address on RED."
+msgstr ""
+
+#: networking.c:183
+msgid "No ORANGE interface assigned."
+msgstr ""
+
+#: networking.c:189
+msgid "Missing an IP address on ORANGE."
+msgstr ""
+
+#: networking.c:199
+msgid "No BLUE interface assigned."
+msgstr ""
+
+#: networking.c:205
+msgid "Missing an IP address on BLUE."
+msgstr ""
+
+#: networking.c:217
+msgid "Misssing DNS."
+msgstr ""
+
+#: networking.c:224
+msgid "Missing Default Gateway."
+msgstr ""
+
+#: networking.c:237 networking.c:304
+msgid "Network configuration type"
+msgstr ""
+
+#: networking.c:238 networking.c:409
+msgid "Drivers and card assignments"
+msgstr ""
+
+#: networking.c:239 networking.c:640
+msgid "Address settings"
+msgstr ""
+
+#: networking.c:240 networking.c:743
+msgid "DNS and Gateway settings"
+msgstr ""
+
+#: networking.c:260
+msgid "When configuration is complete, a network restart will be required."
+msgstr ""
+
+#: networking.c:267
+#, c-format
+msgid ""
+"Current config: %s\n"
+"\n"
+"%s"
+msgstr ""
+
+#: networking.c:268
+msgid "Network configuration menu"
+msgstr ""
+
+#: networking.c:269 networking.c:520 networking.c:642
+msgid "Done"
+msgstr ""
+
+#: networking.c:300
+#, c-format
+msgid ""
+"Select the network configuration for %s. The following configuration types "
+"list those interfaces which have ethernet attached. If you change this "
+"setting, a network restart will be required, and you will have to "
+"reconfigure the network driver assignments."
+msgstr ""
+
+#: networking.c:307
+#, c-format
+msgid ""
+"Not enough netcards for your choice.\n"
+"\n"
+"Needed: %d - Available: %d\n"
+msgstr ""
+
+#: networking.c:359
+msgid ""
+"Configure network drivers, and which interface each card is assigned to. The current configuration is as follows:\n"
+"\n"
+msgstr ""
+
+#: networking.c:408
+msgid "Do you wish to change these settings?"
+msgstr ""
+
+#: networking.c:447
+msgid "Restarting non-local network..."
+msgstr ""
+
+#: networking.c:464
+msgid ""
+"Please choose the interface you wish to change.\n"
+"\n"
+msgstr ""
+
+#: networking.c:519
+msgid "Assigned Cards"
+msgstr ""
+
+#: networking.c:520
+msgid "Remove"
+msgstr ""
+
+#: networking.c:556 networking.c:649
+#, c-format
+msgid ""
+"If you change this IP address, and you are logged in remotely, your "
+"connection to the %s machine will be broken, and you will have to reconnect "
+"on the new IP. This is a risky operation, and should only be attempted if "
+"you have physical access to the machine, should something go wrong."
+msgstr ""
+
+#: networking.c:641
+msgid "Select the interface you wish to reconfigure."
+msgstr ""
+
+#: networking.c:729
+msgid "Default gateway:"
+msgstr ""
+
+#: networking.c:744
+msgid ""
+"Enter the DNS and gateway information. These settings are used only with "
+"Static IP (and DHCP if DNS set) on the RED interface."
+msgstr ""
+
+#: networking.c:773
+msgid "Default gateway"
+msgstr ""
+
+#: networking.c:780
+msgid "Secondary DNS specified without a Primary DNS"
+msgstr ""
+
+#: passwords.c:33
+msgid ""
+"Enter the 'root' user password. Login as this user for commandline access."
+msgstr ""
+
+#: passwords.c:38 passwords.c:61
+msgid "Setting password"
+msgstr ""
+
+#: passwords.c:38
+msgid "Setting 'root' password...."
+msgstr ""
+
+#: passwords.c:39
+msgid "Problem setting 'root' password."
+msgstr ""
+
+#: passwords.c:53
+#, c-format
+msgid ""
+"Enter %s 'admin' user password. This is the user to use for logging into the"
+" %s web administration pages."
+msgstr ""
+
+#: passwords.c:60
+#, c-format
+msgid "Setting %s 'admin' user password..."
+msgstr ""
+
+#: passwords.c:62
+#, c-format
+msgid "Problem setting %s 'admin' user password."
+msgstr ""
+
+#: passwords.c:76
+msgid "Password:"
+msgstr ""
+
+#: passwords.c:77
+msgid "Again:"
+msgstr ""
+
+#: passwords.c:95
+msgid "Password cannot be blank."
+msgstr ""
+
+#: passwords.c:102
+msgid "Passwords do not match."
+msgstr ""
+
+#: passwords.c:109
+msgid "Password cannot contain spaces."
+msgstr ""
+
+#: timezone.c:77
+msgid "Choose the timezone you are in from the list below."
+msgstr ""
diff --git a/src/setup/po/ro.po b/src/setup/po/ro.po
new file mode 100644 (file)
index 0000000..1c11ba2
--- /dev/null
@@ -0,0 +1,584 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR The IPFire Project (www.ipfire.org)
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: IPFire Project\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-08-21 15:12+0000\n"
+"PO-Revision-Date: 2014-08-12 10:08+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Romanian (http://www.transifex.com/mstremer/ipfire/language/ro/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ro\n"
+"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
+
+#: dhcp.c:50
+msgid "Start address:"
+msgstr ""
+
+#: dhcp.c:51
+msgid "End address:"
+msgstr ""
+
+#: dhcp.c:52 networking.c:717
+msgid "Primary DNS:"
+msgstr ""
+
+#: dhcp.c:53 networking.c:723
+msgid "Secondary DNS:"
+msgstr ""
+
+#: dhcp.c:54
+msgid "Default lease (mins):"
+msgstr ""
+
+#: dhcp.c:55
+msgid "Max lease (mins):"
+msgstr ""
+
+#: dhcp.c:56
+msgid "Domain name suffix:"
+msgstr ""
+
+#: dhcp.c:86 dhcp.c:93 dhcp.c:101 domainname.c:34 hostname.c:37 keymap.c:70
+#: misc.c:40 misc.c:52 netstuff.c:377 netstuff.c:566 netstuff.c:704
+#: networking.c:134 networking.c:255 networking.c:291 networking.c:346
+#: networking.c:442 networking.c:552 networking.c:603 networking.c:610
+#: networking.c:713 timezone.c:63
+msgid "Unable to open settings file"
+msgstr ""
+
+#: dhcp.c:111
+msgid "DHCP server configuration"
+msgstr ""
+
+#: dhcp.c:116
+msgid "Configure the DHCP server by entering the settings information."
+msgstr ""
+
+#: dhcp.c:125
+msgid "Enabled"
+msgstr ""
+
+#: dhcp.c:142 domainname.c:43 hostname.c:47 keymap.c:86 main.c:99 main.c:172
+#: main.c:174 netstuff.c:157 netstuff.c:733 netstuff.c:756 networking.c:163
+#: networking.c:269 networking.c:305 networking.c:409 networking.c:560
+#: networking.c:642 networking.c:653 networking.c:746 passwords.c:89
+#: timezone.c:78
+msgid "OK"
+msgstr ""
+
+#: dhcp.c:143 domainname.c:43 hostname.c:47 keymap.c:86 netstuff.c:158
+#: netstuff.c:673 netstuff.c:733 netstuff.c:756 networking.c:305
+#: networking.c:410 networking.c:560 networking.c:653 networking.c:746
+#: passwords.c:89 timezone.c:78
+msgid "Cancel"
+msgstr ""
+
+#: dhcp.c:156
+msgid ""
+"The following fields are invalid:\n"
+"\n"
+msgstr ""
+
+#: dhcp.c:159
+msgid "Start address"
+msgstr ""
+
+#: dhcp.c:165
+msgid "End address"
+msgstr ""
+
+#: dhcp.c:173 networking.c:755
+msgid "Primary DNS"
+msgstr ""
+
+#: dhcp.c:182 networking.c:764
+msgid "Secondary DNS"
+msgstr ""
+
+#: dhcp.c:189
+msgid "Default lease time"
+msgstr ""
+
+#: dhcp.c:195
+msgid "Max. lease time"
+msgstr ""
+
+#: domainname.c:42 main.c:70
+msgid "Domain name"
+msgstr ""
+
+#: domainname.c:42
+msgid "Enter Domain name"
+msgstr ""
+
+#: domainname.c:48
+msgid "Domain name cannot be empty."
+msgstr ""
+
+#: domainname.c:50
+msgid "Domain name cannot contain spaces."
+msgstr ""
+
+#: domainname.c:53
+msgid "Domain name may only contain letters, numbers, hyphens and periods."
+msgstr ""
+
+#: hostname.c:46 main.c:69
+msgid "Hostname"
+msgstr ""
+
+#: hostname.c:46
+msgid "Enter the machine's hostname."
+msgstr ""
+
+#: hostname.c:53
+msgid "Hostname cannot be empty."
+msgstr ""
+
+#: hostname.c:55
+msgid "Hostname cannot contain spaces."
+msgstr ""
+
+#: hostname.c:58
+msgid "Hostname may only contain letters, numbers and hyphens."
+msgstr ""
+
+#: keymap.c:84 main.c:67
+msgid "Keyboard mapping"
+msgstr ""
+
+#: keymap.c:85
+msgid "Choose the type of keyboard you are using from the list below."
+msgstr ""
+
+#: main.c:68 timezone.c:77
+msgid "Timezone"
+msgstr ""
+
+#: main.c:71 networking.c:110 networking.c:115 networking.c:447
+msgid "Networking"
+msgstr ""
+
+#: main.c:72 misc.c:147
+msgid "ISDN"
+msgstr ""
+
+#: main.c:73
+msgid "'root' password"
+msgstr ""
+
+#: main.c:74
+msgid "'admin' password"
+msgstr ""
+
+#: main.c:90
+msgid "              <Tab>/<Alt-Tab> between elements   |  <Space> selects"
+msgstr ""
+
+#: main.c:97
+msgid "Section menu"
+msgstr ""
+
+#: main.c:98
+msgid "Select the item you wish to configure."
+msgstr ""
+
+#: main.c:99
+msgid "Quit"
+msgstr ""
+
+#: main.c:172
+msgid "Setup is complete."
+msgstr ""
+
+#: main.c:174 netstuff.c:733 networking.c:560 networking.c:653
+msgid "Warning"
+msgstr ""
+
+#: main.c:175
+msgid ""
+"Initial setup was not entirely complete. You must ensure that Setup is "
+"properly finished by running setup again at the shell."
+msgstr ""
+
+#: misc.c:62
+#, c-format
+msgid "Unable to write %s/main/hostname.conf"
+msgstr ""
+
+#: misc.c:71
+msgid "Unable to open main hosts file."
+msgstr ""
+
+#: misc.c:76
+msgid "Unable to write /etc/hosts."
+msgstr ""
+
+#: misc.c:117
+msgid "Unable to write /etc/hosts.deny."
+msgstr ""
+
+#: misc.c:125
+msgid "Unable to write /etc/hosts.allow."
+msgstr ""
+
+#: misc.c:136
+msgid "Unable to set hostname."
+msgstr ""
+
+#: misc.c:147
+msgid "Scanning and configuring ISDN devices."
+msgstr ""
+
+#: misc.c:148
+msgid "Unable to scan for ISDN devices."
+msgstr ""
+
+#: netstuff.c:86
+#, c-format
+msgid "Interface - %s"
+msgstr ""
+
+#: netstuff.c:91
+#, c-format
+msgid "Enter the IP address information for the %s interface."
+msgstr ""
+
+#: netstuff.c:103
+msgid "Static"
+msgstr ""
+
+#: netstuff.c:104
+msgid "DHCP"
+msgstr ""
+
+#: netstuff.c:105
+msgid "PPP DIALUP (PPPoE, modem, ATM ...)"
+msgstr ""
+
+#: netstuff.c:113
+msgid "DHCP Hostname:"
+msgstr ""
+
+#: netstuff.c:115
+msgid "Force DHCP MTU:"
+msgstr ""
+
+#: netstuff.c:134
+msgid "IP address:"
+msgstr ""
+
+#: netstuff.c:146
+msgid "Network mask:"
+msgstr ""
+
+#: netstuff.c:173 networking.c:749
+msgid "The following fields are invalid:"
+msgstr ""
+
+#: netstuff.c:183
+msgid "IP address"
+msgstr ""
+
+#: netstuff.c:189
+msgid "Network mask"
+msgstr ""
+
+#: netstuff.c:198
+msgid "DHCP hostname"
+msgstr ""
+
+#: netstuff.c:396 netstuff.c:709
+msgid "Unset"
+msgstr ""
+
+#: netstuff.c:669
+#, c-format
+msgid "Please choose a networkcard for the following interface - %s."
+msgstr ""
+
+#: netstuff.c:672
+msgid "Extended Network Menu"
+msgstr ""
+
+#: netstuff.c:673 networking.c:520
+msgid "Select"
+msgstr ""
+
+#: netstuff.c:673
+msgid "Identify"
+msgstr ""
+
+#: netstuff.c:678
+msgid "Device Identification"
+msgstr ""
+
+#: netstuff.c:678
+msgid "The lights on the selected port should flash now for 10 seconds..."
+msgstr ""
+
+#: netstuff.c:679
+msgid "Identification is not supported by this interface."
+msgstr ""
+
+#: netstuff.c:691
+msgid "There are no unassigned interfaces on your system."
+msgstr ""
+
+#: netstuff.c:732
+#, c-format
+msgid "Do you really want to remove the assigned %s interface?"
+msgstr ""
+
+#: netstuff.c:755
+msgid "Select network driver"
+msgstr ""
+
+#: netstuff.c:755
+msgid "Set additional module parameters"
+msgstr ""
+
+#: netstuff.c:762
+msgid "Loading module..."
+msgstr ""
+
+#: netstuff.c:777
+msgid "Unable to load driver module."
+msgstr ""
+
+#: netstuff.c:780
+msgid "Module name cannot be blank."
+msgstr ""
+
+#: networking.c:110
+msgid "Stopping network..."
+msgstr ""
+
+#: networking.c:115
+msgid "Restarting network..."
+msgstr ""
+
+#: networking.c:146
+msgid "No GREEN interface assigned."
+msgstr ""
+
+#: networking.c:152
+msgid "Missing an IP address on GREEN."
+msgstr ""
+
+#: networking.c:163
+msgid "Error"
+msgstr ""
+
+#: networking.c:163
+msgid "Ignore"
+msgstr ""
+
+#: networking.c:164
+msgid "No RED interface assigned."
+msgstr ""
+
+#: networking.c:173
+msgid "Missing an IP address on RED."
+msgstr ""
+
+#: networking.c:183
+msgid "No ORANGE interface assigned."
+msgstr ""
+
+#: networking.c:189
+msgid "Missing an IP address on ORANGE."
+msgstr ""
+
+#: networking.c:199
+msgid "No BLUE interface assigned."
+msgstr ""
+
+#: networking.c:205
+msgid "Missing an IP address on BLUE."
+msgstr ""
+
+#: networking.c:217
+msgid "Misssing DNS."
+msgstr ""
+
+#: networking.c:224
+msgid "Missing Default Gateway."
+msgstr ""
+
+#: networking.c:237 networking.c:304
+msgid "Network configuration type"
+msgstr ""
+
+#: networking.c:238 networking.c:409
+msgid "Drivers and card assignments"
+msgstr ""
+
+#: networking.c:239 networking.c:640
+msgid "Address settings"
+msgstr ""
+
+#: networking.c:240 networking.c:743
+msgid "DNS and Gateway settings"
+msgstr ""
+
+#: networking.c:260
+msgid "When configuration is complete, a network restart will be required."
+msgstr ""
+
+#: networking.c:267
+#, c-format
+msgid ""
+"Current config: %s\n"
+"\n"
+"%s"
+msgstr ""
+
+#: networking.c:268
+msgid "Network configuration menu"
+msgstr ""
+
+#: networking.c:269 networking.c:520 networking.c:642
+msgid "Done"
+msgstr ""
+
+#: networking.c:300
+#, c-format
+msgid ""
+"Select the network configuration for %s. The following configuration types "
+"list those interfaces which have ethernet attached. If you change this "
+"setting, a network restart will be required, and you will have to "
+"reconfigure the network driver assignments."
+msgstr ""
+
+#: networking.c:307
+#, c-format
+msgid ""
+"Not enough netcards for your choice.\n"
+"\n"
+"Needed: %d - Available: %d\n"
+msgstr ""
+
+#: networking.c:359
+msgid ""
+"Configure network drivers, and which interface each card is assigned to. The current configuration is as follows:\n"
+"\n"
+msgstr ""
+
+#: networking.c:408
+msgid "Do you wish to change these settings?"
+msgstr ""
+
+#: networking.c:447
+msgid "Restarting non-local network..."
+msgstr ""
+
+#: networking.c:464
+msgid ""
+"Please choose the interface you wish to change.\n"
+"\n"
+msgstr ""
+
+#: networking.c:519
+msgid "Assigned Cards"
+msgstr ""
+
+#: networking.c:520
+msgid "Remove"
+msgstr ""
+
+#: networking.c:556 networking.c:649
+#, c-format
+msgid ""
+"If you change this IP address, and you are logged in remotely, your "
+"connection to the %s machine will be broken, and you will have to reconnect "
+"on the new IP. This is a risky operation, and should only be attempted if "
+"you have physical access to the machine, should something go wrong."
+msgstr ""
+
+#: networking.c:641
+msgid "Select the interface you wish to reconfigure."
+msgstr ""
+
+#: networking.c:729
+msgid "Default gateway:"
+msgstr ""
+
+#: networking.c:744
+msgid ""
+"Enter the DNS and gateway information. These settings are used only with "
+"Static IP (and DHCP if DNS set) on the RED interface."
+msgstr ""
+
+#: networking.c:773
+msgid "Default gateway"
+msgstr ""
+
+#: networking.c:780
+msgid "Secondary DNS specified without a Primary DNS"
+msgstr ""
+
+#: passwords.c:33
+msgid ""
+"Enter the 'root' user password. Login as this user for commandline access."
+msgstr ""
+
+#: passwords.c:38 passwords.c:61
+msgid "Setting password"
+msgstr ""
+
+#: passwords.c:38
+msgid "Setting 'root' password...."
+msgstr ""
+
+#: passwords.c:39
+msgid "Problem setting 'root' password."
+msgstr ""
+
+#: passwords.c:53
+#, c-format
+msgid ""
+"Enter %s 'admin' user password. This is the user to use for logging into the"
+" %s web administration pages."
+msgstr ""
+
+#: passwords.c:60
+#, c-format
+msgid "Setting %s 'admin' user password..."
+msgstr ""
+
+#: passwords.c:62
+#, c-format
+msgid "Problem setting %s 'admin' user password."
+msgstr ""
+
+#: passwords.c:76
+msgid "Password:"
+msgstr ""
+
+#: passwords.c:77
+msgid "Again:"
+msgstr ""
+
+#: passwords.c:95
+msgid "Password cannot be blank."
+msgstr ""
+
+#: passwords.c:102
+msgid "Passwords do not match."
+msgstr ""
+
+#: passwords.c:109
+msgid "Password cannot contain spaces."
+msgstr ""
+
+#: timezone.c:77
+msgid "Choose the timezone you are in from the list below."
+msgstr ""
index 4869ecf2b75e931aa45e9d7f16f14dbe6ef3b12d..fc2090795b267b048c652bbc607df3194ee70bfd 100644 (file)
@@ -6,19 +6,20 @@
 # Andrei Skipin <skian2007@yandex.ru>, 2014
 # ellviss <kpe1501@gmail.com>, 2015
 # bubnov_pi <ipfire@bubnov.su>, 2014
+# Tim <evargrin@gmail.com>, 2015
 msgid ""
 msgstr ""
 "Project-Id-Version: IPFire Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2014-08-21 15:12+0000\n"
-"PO-Revision-Date: 2015-02-17 19:30+0000\n"
-"Last-Translator: ellviss <kpe1501@gmail.com>\n"
-"Language-Team: Russian (http://www.transifex.com/projects/p/ipfire/language/ru/)\n"
+"PO-Revision-Date: 2015-04-25 04:53+0000\n"
+"Last-Translator: Tim <evargrin@gmail.com>\n"
+"Language-Team: Russian (http://www.transifex.com/mstremer/ipfire/language/ru/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ru\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
 
 #: dhcp.c:50
 msgid "Start address:"
@@ -214,11 +215,11 @@ msgstr ""
 #: misc.c:62
 #, c-format
 msgid "Unable to write %s/main/hostname.conf"
-msgstr ""
+msgstr "Недоступна запись в %s/main/hostname.conf"
 
 #: misc.c:71
 msgid "Unable to open main hosts file."
-msgstr ""
+msgstr "Не удаётся открыть основной hosts файл."
 
 #: misc.c:76
 msgid "Unable to write /etc/hosts."
@@ -234,7 +235,7 @@ msgstr "Недоступна запись в /etc/hosts.allow."
 
 #: misc.c:136
 msgid "Unable to set hostname."
-msgstr ""
+msgstr "Не удается указать имя хоста."
 
 #: misc.c:147
 msgid "Scanning and configuring ISDN devices."
@@ -242,7 +243,7 @@ msgstr "Сканирование и конфигурирование ISDN уст
 
 #: misc.c:148
 msgid "Unable to scan for ISDN devices."
-msgstr ""
+msgstr "Не удаётся просканировать ISDN устройства."
 
 #: netstuff.c:86
 #, c-format
@@ -252,7 +253,7 @@ msgstr "Интерфейс - %s"
 #: netstuff.c:91
 #, c-format
 msgid "Enter the IP address information for the %s interface."
-msgstr ""
+msgstr "Укажите IP адрес для %s интерфейса."
 
 #: netstuff.c:103
 msgid "Static"
@@ -264,7 +265,7 @@ msgstr "DHCP-сервер"
 
 #: netstuff.c:105
 msgid "PPP DIALUP (PPPoE, modem, ATM ...)"
-msgstr ""
+msgstr "PPP DIALUP (PPPoE, модем, ATM ...)"
 
 #: netstuff.c:113
 msgid "DHCP Hostname:"
@@ -272,7 +273,7 @@ msgstr "Имя хоста DHCP:"
 
 #: netstuff.c:115
 msgid "Force DHCP MTU:"
-msgstr ""
+msgstr "Форсировать DHCP MTU:"
 
 #: netstuff.c:134
 msgid "IP address:"
@@ -284,7 +285,7 @@ msgstr "Сетевая маска:"
 
 #: netstuff.c:173 networking.c:749
 msgid "The following fields are invalid:"
-msgstr ""
+msgstr "Следующие поля неверны:"
 
 #: netstuff.c:183
 msgid "IP address"
@@ -300,7 +301,7 @@ msgstr "Имя хоста DHCP"
 
 #: netstuff.c:396 netstuff.c:709
 msgid "Unset"
-msgstr ""
+msgstr "Не установлено"
 
 #: netstuff.c:669
 #, c-format
@@ -317,11 +318,11 @@ msgstr "Выберите"
 
 #: netstuff.c:673
 msgid "Identify"
-msgstr ""
+msgstr "Идентифицировать"
 
 #: netstuff.c:678
 msgid "Device Identification"
-msgstr ""
+msgstr "Определение устройства"
 
 #: netstuff.c:678
 msgid "The lights on the selected port should flash now for 10 seconds..."
@@ -338,7 +339,7 @@ msgstr ""
 #: netstuff.c:732
 #, c-format
 msgid "Do you really want to remove the assigned %s interface?"
-msgstr ""
+msgstr "Вы действительно хотите удалить назначенный %s интерфейс?"
 
 #: netstuff.c:755
 msgid "Select network driver"
@@ -346,7 +347,7 @@ msgstr "Выберите сетевой драйвер"
 
 #: netstuff.c:755
 msgid "Set additional module parameters"
-msgstr ""
+msgstr "Указать дополнительные параметры модуля."
 
 #: netstuff.c:762
 msgid "Loading module..."
@@ -358,7 +359,7 @@ msgstr "Невозможно загрузить драйвер модуля."
 
 #: netstuff.c:780
 msgid "Module name cannot be blank."
-msgstr ""
+msgstr "Имя модуля не может быть пустым."
 
 #: networking.c:110
 msgid "Stopping network..."
@@ -370,7 +371,7 @@ msgstr "Перезапуск сети..."
 
 #: networking.c:146
 msgid "No GREEN interface assigned."
-msgstr ""
+msgstr "Не назначен ЗЕЛЁНЫЙ интерфейс."
 
 #: networking.c:152
 msgid "Missing an IP address on GREEN."
@@ -386,7 +387,7 @@ msgstr "Игнорировать"
 
 #: networking.c:164
 msgid "No RED interface assigned."
-msgstr ""
+msgstr "Не указан КРАСНЫЙ интерфейс."
 
 #: networking.c:173
 msgid "Missing an IP address on RED."
@@ -394,7 +395,7 @@ msgstr ""
 
 #: networking.c:183
 msgid "No ORANGE interface assigned."
-msgstr ""
+msgstr "Не указан ОРАНЖЕВЫЙ интерфейс."
 
 #: networking.c:189
 msgid "Missing an IP address on ORANGE."
@@ -402,7 +403,7 @@ msgstr ""
 
 #: networking.c:199
 msgid "No BLUE interface assigned."
-msgstr ""
+msgstr "Не указан СИНИЙ интерфейс."
 
 #: networking.c:205
 msgid "Missing an IP address on BLUE."
@@ -418,11 +419,11 @@ msgstr "Отсутствует шлюз по умолчанию."
 
 #: networking.c:237 networking.c:304
 msgid "Network configuration type"
-msgstr ""
+msgstr "Тип конфигурации сети"
 
 #: networking.c:238 networking.c:409
 msgid "Drivers and card assignments"
-msgstr ""
+msgstr "Назначение карт и драйверов"
 
 #: networking.c:239 networking.c:640
 msgid "Address settings"
@@ -434,7 +435,7 @@ msgstr "Настройка DNS и Шлюза"
 
 #: networking.c:260
 msgid "When configuration is complete, a network restart will be required."
-msgstr ""
+msgstr "Когда конфигурация завершиться, необходимо будет перезагрузить сеть."
 
 #: networking.c:267
 #, c-format
@@ -491,7 +492,7 @@ msgstr ""
 
 #: networking.c:519
 msgid "Assigned Cards"
-msgstr ""
+msgstr "Назначение сетевых карт"
 
 #: networking.c:520
 msgid "Remove"
@@ -555,12 +556,12 @@ msgstr ""
 #: passwords.c:60
 #, c-format
 msgid "Setting %s 'admin' user password..."
-msgstr ""
+msgstr "Укажите пароль %s для пользователя 'admin'..."
 
 #: passwords.c:62
 #, c-format
 msgid "Problem setting %s 'admin' user password."
-msgstr ""
+msgstr "Проблема с указанием пароля %s для пользователя 'admin'."
 
 #: passwords.c:76
 msgid "Password:"
index 339dea1d9c3eeb56f7b20dc9f8aeecff3525b4a7..9983002f6057e0dd10adc18b34f74cf75bc835b2 100644 (file)
@@ -9,9 +9,9 @@ msgstr ""
 "Project-Id-Version: IPFire Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2014-08-21 15:12+0000\n"
-"PO-Revision-Date: 2015-02-02 22:35+0000\n"
+"PO-Revision-Date: 2015-06-22 10:58+0000\n"
 "Last-Translator: Ardit Dani <ardit.dani@gmail.com>\n"
-"Language-Team: Albanian (http://www.transifex.com/projects/p/ipfire/language/sq/)\n"
+"Language-Team: Albanian (http://www.transifex.com/mstremer/ipfire/language/sq/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -64,7 +64,7 @@ msgstr ""
 
 #: dhcp.c:125
 msgid "Enabled"
-msgstr ""
+msgstr "Mundëso"
 
 #: dhcp.c:142 domainname.c:43 hostname.c:47 keymap.c:86 main.c:99 main.c:172
 #: main.c:174 netstuff.c:157 netstuff.c:733 netstuff.c:756 networking.c:163
@@ -101,7 +101,7 @@ msgstr ""
 
 #: dhcp.c:182 networking.c:764
 msgid "Secondary DNS"
-msgstr ""
+msgstr "DNS Dytësorë"
 
 #: dhcp.c:189
 msgid "Default lease time"
index 1ec9849eb7e3e14aae4c7bccf3b96ce0c1f4376b..0fe5ff6b343e929676e2594241906ff784293111 100755 (executable)
@@ -56,12 +56,17 @@ my $count=0;
 my $col;
 my $proxlog=$Lang::tr{'stopped'};
 my $proxsrv=$Lang::tr{'stopped'};
+my $mailfile="${General::swroot}/dma/mail.conf";
 
 &Header::getcgihash(\%cgiparams);
 &General::readhash("${General::swroot}/main/settings", \%mainsettings);
 &General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
 &General::readhash("$settingsfile", \%settings) if(-f $settingsfile);
 
+if ( -f $mailfile){
+       &General::readhash($mailfile, \%mail);
+}
+
 #Find out which lang is set (used later to set decimal separator correctly)
 my $uplang=uc($mainsettings{'LANGUAGE'});
 setlocale LC_NUMERIC,"$mainsettings{'LANGUAGE'}_$uplang";
@@ -136,11 +141,6 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ #SaveButton on configsite
        if ($cgiparams{'USEMAIL'} eq 'on'){
                $errormessage=&checkmailsettings;
        }elsif($cgiparams{'USEMAIL'} ne 'on'){
-               $cgiparams{'txt_mailserver'}='';
-               $cgiparams{'txt_mailport'}='';
-               $cgiparams{'txt_mailuser'}='';
-               $cgiparams{'txt_mailpass'}='';
-               $cgiparams{'mail_tls'}='';
                $cgiparams{'txt_mailsender'}='';
                $cgiparams{'txt_mailsubject'}='';
                $mailtxt='';
@@ -155,11 +155,6 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ #SaveButton on configsite
                $settings{'CURRENCY'}   = $cgiparams{'txt_currency'};
                $settings{'SKIPURLS'}   = $skipurls;
                $settings{'USEMAIL'}    = $cgiparams{'USEMAIL'};
-               $settings{'MAILSRV'}    = $cgiparams{'txt_mailserver'};
-               $settings{'MAILPORT'}   = $cgiparams{'txt_mailport'};
-               $settings{'MAILUSER'}   = $cgiparams{'txt_mailuser'};
-               $settings{'MAILPASS'}   = $cgiparams{'txt_mailpass'};
-               $settings{'TLS'}                = $cgiparams{'mail_tls'};
                $settings{'MAILSENDER'} = $cgiparams{'txt_mailsender'};
                $settings{'MAILSUB'}    = $cgiparams{'txt_mailsubject'};
                $settings{'MAILTXT'}    = $mailtxt;
@@ -568,10 +563,6 @@ sub configsite{
        #If update set fieldvalues new
        if($cgiparams{'update'} eq 'on'){
                $settings{'USEMAIL'} = 'on';
-               $settings{'MAILSRV'} = $cgiparams{'txt_mailserver'};
-               $settings{'MAILPORT'} = $cgiparams{'txt_mailport'};
-               $settings{'MAILUSER'} = $cgiparams{'txt_mailuser'};
-               $settings{'MAILPASS'} = $cgiparams{'txt_mailpass'};
                $settings{'MAILSUB'} = $cgiparams{'txt_mailsubject'};
                $settings{'MAILTXT'} = $cgiparams{'txt_mailtxt'};
        }
@@ -580,14 +571,13 @@ sub configsite{
        $checked{'logging'}{$settings{'LOG'}}                                   = 'CHECKED';
        $checked{'multiuser'}{$settings{'MULTIUSER'}}                   = 'CHECKED';
        $checked{'usemail'}{$settings{'USEMAIL'}}                               = 'CHECKED';
-       $checked{'mail_tls'}{$settings{'TLS'}}                                  = 'CHECKED';
-       
+
        #Open site
        &Header::openpage($Lang::tr{'acct settings'}, 1, '');
        &Header::openbigbox('100%', 'center');
        &error;
        &Header::openbox('100%', 'left', $Lang::tr{'acct config'});
-       
+
        #### JAVA SCRIPT ####
        print<<END;
 <script>
@@ -631,57 +621,45 @@ END
                <td>$Lang::tr{'acct multiuser'}</td>
                <td><input type='checkbox' name='multiuser' $checked{'multiuser'}{'on'}></td>
                <td></td>
-       <tr>
+       </tr>
        <tr>
                <td>$Lang::tr{'acct mwst'}</td>
                <td><input type='text' name='txt_mwst' value='$settings{'MWST'}' style='width:22em;'></td>
                <td></td>
+       </tr>
        <tr>
                <td>$Lang::tr{'acct currency'}</td>
                <td><input type='text' name='txt_currency' value='$settings{'CURRENCY'}' style='width:22em;'></td>
                <td></td>
-       
+       </tr>
        <tr>
                <td valign='top'>$Lang::tr{'acct skipurl'}</td>
                <td style='padding-left:0.2em;'><textarea name="txt_skipurls" cols="20" rows="6" style='width:22em;'>$settings{'SKIPURLS'}</textarea></td>
                <td></td>
        </tr>
+END
+
+if ($mail{'USEMAIL'} eq 'on'){
+       if (!$settings{'MAILSENDER'}){
+               $settings{'MAILSENDER'} = $mail{'SENDER'};
+       }
+print <<END;
        <tr>
                <td>$Lang::tr{'acct usemail'}</td>
                <td><label><input type='checkbox' name='USEMAIL' id='MAIL' $checked{'usemail'}{'on'}></label></td>
                <td></td>
        </tr>
-       </table><br>
+END
+}
 
+print <<END;
+       </table><br>
        <div class="MAILSRV">
                <table style='width:100%;'>
                <tr>
-                       <td style='width:24em'>$Lang::tr{'acct mailaddr'}</td>
-                       <td><input type='text' name='txt_mailserver' value='$settings{'MAILSRV'}' style='width:22em;'></td>
-               </tr>
-               <tr>
-                       <td>$Lang::tr{'acct mailport'}</td>
-                       <td><input type='text' name='txt_mailport' value='$settings{'MAILPORT'}' size='3'></td>
-               </tr>
-               <tr>
-                       <td>$Lang::tr{'acct mailuser'}<img src='/blob.gif' alt='*' /></td>
-                       <td><input type='text' name='txt_mailuser' value='$settings{'MAILUSER'}' style='width:22em;'></td>
-               </tr>
-               <tr>
-                       <td>$Lang::tr{'acct mailpass'}<img src='/blob.gif' alt='*' /></td>
-                       <td><input type='password' name='txt_mailpass' value='$settings{'MAILPASS'}' style='width:22em;' ></td>
-               </tr>
-               <tr>
-                       <td>$Lang::tr{'acct tls'}</td>
-                       <td><input type='checkbox' name='mail_tls' $checked{'mail_tls'}{'on'}></td>
-               </tr>
-               <tr>
-                       <td>$Lang::tr{'acct mailsender'}</td>
+                       <td style='width:24em'>$Lang::tr{'acct mailsender'}</td>
                        <td><input type='text' name='txt_mailsender' value='$settings{'MAILSENDER'}' style='width:22em;'></td>
                </tr>
-               <tr>
-                       <td colspan='2'>&nbsp;</td>
-               </tr>
                <tr>
                        <td>$Lang::tr{'acct subject'}</td>
                        <td><input type='text' name='txt_mailsubject' value='$settings{'MAILSUB'}' style='width:22em;'></td>
@@ -693,7 +671,6 @@ END
                </table>
        </div>
 
-
        <table style='width:100%;'>
        <tr>
                <td colspan='3' display:inline align='right'><input type='submit' name='ACTION' value='$Lang::tr{'save'}'></td>
@@ -1116,64 +1093,89 @@ print<<END;
                        </tr>
                        <tr>
                                <td>$Lang::tr{'acct companytype'}</td>
+<!-- TODO: when the value of this radio button changes, the layout needs to be reloaded so "blob.gif" gets displayed -->
                                <td>
                                        <input type='radio' name='rdo_companytype' value='CUST' $checked{'rdo_companytype'}{'CUST'}>$Lang::tr{'acct customer'} &nbsp;
                                        <input type='radio' name='rdo_companytype' value='HOST' $checked{'rdo_companytype'}{'HOST'}>$Lang::tr{'acct hoster'}</td>
-                               <td style='width:8em;'>$Lang::tr{'acct bank'}</td>
+                               <td style='width:8em;'>$Lang::tr{'acct bank'}
+END
+
+if ($cgiparams{'rdo_companytype'} eq 'HOST'){
+       print "&nbsp;<img src='/blob.gif' alt='*' />";
+}
+
+print <<END;
+                               </td>
                                <td>
                                        <input type='text' name='txt_bank' value='$cgiparams{'txt_bank'}' style='width:25em;'></td>
                        </tr>
                        <tr>
-                               <td>$Lang::tr{'acct company'}</td>
+                               <td>$Lang::tr{'acct company'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td>
                                        <input type='text' name='txt_company' value='$cgiparams{'txt_company'}' style='width:25em;'></td>
-                               <td>$Lang::tr{'acct iban'}<img src='/blob.gif' alt='*' /></td>
+                               <td>$Lang::tr{'acct iban'}</td>
                                <td>
                                        <input type='text' name='txt_iban' value='$cgiparams{'txt_iban'}' style='width:25em;'></td>
                        </tr>
                        <tr>
-                               <td>$Lang::tr{'acct name1'}<img src='/blob.gif' alt='*' /></td>
+                               <td>$Lang::tr{'acct name1'}</td>
                                <td>
                                        <input type='text' name='txt_name1' value='$cgiparams{'txt_name1'}' style='width:25em;'></td>
-                               <td>$Lang::tr{'acct bic'}<img src='/blob.gif' alt='*' /></td>
+                               <td>$Lang::tr{'acct bic'}</td>
                                <td>
                                        <input type='text' name='txt_bic' maxlength='8' value='$cgiparams{'txt_bic'}' style='width:25em;'></td>
                        </tr>
                        <tr>
-                               <td>$Lang::tr{'acct str'}</td>
+                               <td>$Lang::tr{'acct str'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td align='left'>
                                        <input type='text' name='txt_str' value='$cgiparams{'txt_str'}' style='width:25em;'></td>
-                               <td>$Lang::tr{'acct blz'}</td>
+                               <td>$Lang::tr{'acct blz'}
+END
+
+if ($cgiparams{'rdo_companytype'} eq 'HOST'){
+       print "&nbsp;<img src='/blob.gif' alt='*' />";
+}
+
+print <<END;
+                               </td>
                                <td>
                                        <input type='text' name='txt_blz' maxlength='8' value='$cgiparams{'txt_blz'}' style='width:25em;'></td>
                        </tr>
                        <tr>
-                               <td>$Lang::tr{'acct str_nr'}</td>
+                               <td>$Lang::tr{'acct str_nr'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td><input type='text' name='txt_str_nr' value='$cgiparams{'txt_str_nr'}' style='width:25em;'></td>
-                               <td>$Lang::tr{'acct kto'}</td>
+                               <td>$Lang::tr{'acct kto'}
+END
+
+if ($cgiparams{'rdo_companytype'} eq 'HOST'){
+       print "&nbsp;<img src='/blob.gif' alt='*' />";
+}
+
+print <<END;
+                               </td>
                                <td>
                                        <input type='text' name='txt_kto' value='$cgiparams{'txt_kto'}' style='width:25em;'></td>
                        </tr>
 
                        
                        <tr>
-                               <td>$Lang::tr{'acct plz'}</td>
+                               <td>$Lang::tr{'acct plz'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td>
                                        <input type='text' name='txt_plz' value='$cgiparams{'txt_plz'}' style='width:25em;'></td>
-                               <td>$Lang::tr{'acct email'}</td>
+                               <td>$Lang::tr{'acct email'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td><input type='text' name='txt_email' value='$cgiparams{'txt_email'}' style='width:25em;'></td>
                        </tr>
                        <tr>
-                               <td>$Lang::tr{'acct city'}</td>
+                               <td>$Lang::tr{'acct city'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td><input type='text' name='txt_city' value='$cgiparams{'txt_city'}' style='width:25em;'></td>
-                               <td>$Lang::tr{'acct inet'}<img src='/blob.gif' alt='*' /></td>
+                               <td>$Lang::tr{'acct inet'}</td>
                                <td>
                                        <input type='text' name='txt_inet' value='$cgiparams{'txt_inet'}' style='width:25em;'></td>
                        </tr>
                        <tr>
                                <td></td>
                                <td></td>
-                               <td>$Lang::tr{'acct hrb'}<img src='/blob.gif' alt='*' /></td>
+                               <td>$Lang::tr{'acct hrb'}</td>
                                <td>
                                        <input type='text' name='txt_hrb' value='$cgiparams{'txt_hrb'}' style='width:25em;'></td>
                        </tr>
@@ -1186,19 +1188,19 @@ print<<END;
                        <tr>
                                <td></td>
                                <td></td>
-                               <td>$Lang::tr{'acct tel'}<img src='/blob.gif' alt='*' /></td>
+                               <td>$Lang::tr{'acct tel'}</td>
                                <td>
                                        <input type='text' name='txt_tel' value='$cgiparams{'txt_tel'}' style='width:25em;'></td>
                        </tr>
                        <tr>
                                <td></td>
                                <td></td>
-                               <td>$Lang::tr{'acct fax'}<img src='/blob.gif' alt='*' /></td>
+                               <td>$Lang::tr{'acct fax'}</td>
                                <td>
                                        <input type='text' name='txt_fax' value='$cgiparams{'txt_fax'}' style='width:25em;'></td>
                        </tr>
                        <tr>
-                               <td colspan='6'><img src='/blob.gif' alt='*' /><font size="1">$Lang::tr{'acct optional'}</font></td>
+                               <td colspan='6'><img src='/blob.gif' alt='*' /><font size="1">&nbsp;$Lang::tr{'acct not optional'}</font></td>
                        </tr>
                        <tr>
 END
@@ -1715,14 +1717,14 @@ if ($host && $cust){
        <form method='post' action='$ENV{'SCRIPT_NAME'}' ENCTYPE='multipart/form-data'>
                <table style='width:100%;'>
                        <tr>
-                               <td style='width: 22em;'>$Lang::tr{'name'}</td>
+                               <td style='width: 22em;'>$Lang::tr{'name'}&nbsp;<img src='/blob.gif' alt='*' /></td>
                                <td><input type='text' name='txt_billgroup' value='$cgiparams{'txt_billgroup'}' style='width: 24em;'></td>
                        </tr>
                        <tr>
                                <td><br></td>
                        </tr>
                        <tr>
-                               <td valign='top'>$Lang::tr{'acct billtext1'}<img src='/blob.gif' alt='*' /></td>
+                               <td valign='top'>$Lang::tr{'acct billtext1'}</td>
                                <td><textarea name='txt_billtext1' cols='40' rows='5'  style='width: 24em;' maxlength='300'>$cgiparams{'txt_billtext1'}</textarea></td>
                        </tr>
                        <tr><td><br></td></tr>
@@ -1782,7 +1784,7 @@ END
        my $val=sprintf"%.3f",$cgiparams{'txt_cent'};
        print"<tr><td>$Lang::tr{'acct cent'}</td><td><input type='text' name='txt_cent' value='$val' size='3'>$settings{'CURRENCY'} </td></tr>";
        #Optional note
-       print"<tr><td colspan='2' align='left'><img src='/blob.gif' alt='*' /><font size='1'>$Lang::tr{'acct optional'}</font></td></tr>";
+       print"<tr><td colspan='2' align='left'><img src='/blob.gif' alt='*' /><font size='1'>$Lang::tr{'required field'}</font></td></tr>";
        print"<tr><td colspan='2' align='right'><br><br>";
        print"</td></tr></table>";
 
@@ -2175,18 +2177,6 @@ END
 }
 
 sub checkmailsettings{
-       #Check if mailserver is an ip address or a domain
-       if ($cgiparams{'txt_mailserver'} =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/){
-               if (! &General::validip($cgiparams{'txt_mailserver'})){
-                       $errormessage.="$Lang::tr{'acct invalid mailip'} $cgiparams{'txt_mailserver'}<br>";
-               }
-       }elsif(! &General::validfqdn($cgiparams{'txt_mailserver'})){
-                       $errormessage.="$Lang::tr{'acct invalid mailfqdn'} $cgiparams{'txt_mailserver'}<br>";
-       }
-       #Check valid mailserverport
-       if($cgiparams{'txt_mailport'} < 1 || $cgiparams{'txt_mailport'} > 65535){
-               $errormessage.="$Lang::tr{'acct invalid mailport'} $cgiparams{'txt_mailport'}<br>";
-       }
        #Check valid sender
        if(! $cgiparams{'txt_mailsender'}){
                $errormessage.="$Lang::tr{'acct empty field'} $Lang::tr{'acct mailsender'}<br>";
index 779ecf81039bd3c5c5b2c1b298e95dd4de34c6b8..58b154a34581d7435762d9f8b10126139a258b7d 100644 (file)
@@ -93,8 +93,10 @@ sub delbefore {
 }
 
 sub movedbdata {
+       &connectdb;
        $dbh->do("insert into ACCT_HIST select datetime(TIME_RUN,'unixepoch'),NAME,SUM(BYTES) from ACCT where datetime(TIME_RUN,'unixepoch') < datetime('now','start of month') group by NAME,datetime(TIME_RUN,'unixepoch');");
        $dbh->do("DELETE FROM ACCT WHERE datetime(TIME_RUN,'unixepoch') < date('now','start of month');");
+       &closedb;
 }
 
 sub gethourgraphdata {
index 2110cf70146c51e0845b401804ac4844cf1c6653..c139d03a15d9a13b5812e72cd494ec87f896d2c3 100644 (file)
@@ -77,7 +77,7 @@
 'acct mailuser' => 'Benutzername',
 'acct mailpass' => 'Passwort',
 'acct mailrcpt' => 'E-Mail-Empfänger',
-'acct mailsender' => 'E-Mail Absender',
+'acct mailsender' => 'E-Mail-Absender',
 'acct mailtxt' => 'Text der Rechnungsmails',
 'acct mb' => 'MB',
 'acct members' => 'Mitglieder',
@@ -88,9 +88,9 @@
 'acct mwst' => 'Mehrwertsteuer in %',
 'acct name1' => 'Name 1',
 'acct name2' => 'Name 2',
+'acct not optional' => 'Diese Felder sind Pflichtfelder',
 'acct nr' => 'RG-Nr.',
 'acct oldestdb' => 'Erster DB-Eintrag',
-'acct optional' => 'Diese Felder sind optional',
 'acct parameter' => 'Parameter',
 'acct path' => 'Pfad',
 'acct pdf billtxt' => 'Rechnung',
index bdbf5b2ac61aff2d2f86e4f54ee5a37b8acba930..913f2a79fa4f562b7e3e9ec90414640a2dee2808 100644 (file)
@@ -90,7 +90,7 @@
 'acct name2' => 'Name 2',
 'acct nr' => 'RG-No.',
 'acct oldestdb' => 'Fist DB Entry',
-'acct optional' => 'These fields are optional',
+'acct not optional' => 'These fields are required',
 'acct parameter' => 'Parameter',
 'acct path' => 'Path',
 'acct pdf billtxt' => 'Bill',
 'acct plz' => 'Postcode',
 'acct preview' => 'Bill preview',
 'acct price pp' => 'Unit price',
-'acct proxy_enable' => 'Please actiavte proxy first',
+'acct proxy_enable' => 'Please activate proxy first',
 'acct pos' => 'Pos.',
 'acct sum total' => 'Total',
 'acct name' => 'Description',
 'acct settings' => 'Accounting settings',
 'acct skipurl' => 'Skip these URLs (Intranet)',
 'acct status' => 'Status',
-'acct str' => 'Steet',
+'acct str' => 'Street',
 'acct str_nr' => 'No.',
 'acct subject' => 'Subject',
 'acct sum' => 'Sum',
index 722268945826c0cd8d2228eb2d100f5011999131..e90d06ed385d04c8af948a90b09f763c5f54d0a2 100755 (executable)
@@ -27,6 +27,8 @@
 use Time::Local;
 use File::ReadBackwards;
 use strict;
+use MIME::Lite;
+
 #use warnings;
 
 require '/var/ipfire/general-functions.pl';
@@ -62,6 +64,11 @@ my ($mini,$max)=&ACCT::getminmax;
 my $now = localtime;
 my $proxylog;
 my $proxysrv;
+my $dmafile="${General::swroot}/dma/dma.conf";
+my $authfile="${General::swroot}/dma/auth.conf";
+my $mailfile="${General::swroot}/dma/mail.conf";
+my %mail=();
+my %dma=();
 
 ########
 # Main #
@@ -69,6 +76,7 @@ my $proxysrv;
 
 &checkproxy;
 
+
 #If we have a disabled file and the proxy is off, we don't need to check anything, exit!
 if((! -f $proxyenabled || $proxylog eq $Lang::tr{'stopped'}) && -f "${General::swroot}/accounting/disabled"){
        &ACCT::logger($settings{'LOG'}," Proxy or proxylogging disabled - exiting with no data collection\n");
@@ -103,11 +111,22 @@ if (-f $proxyenabled && $proxylog eq $Lang::tr{'running'}){
                #move all db entries older than this month to second table and cumulate them daily
                &ACCT::movedbdata;
                &ACCT::logger($settings{'LOG'},"New Month. Old trafficvalues moved to ACCT_HIST Table\n");
-               if ($settings{'USEMAIL'} eq 'on'){
+               #check if mail is enabled
+               if ( -f $mailfile){
+                       &General::readhash($mailfile, \%mail);
+               }
+               if ($mail{'USEMAIL'} eq 'on'){
                        &ACCT::logger($settings{'LOG'},"Mailserver is activated - Now sending bills via mail...\n");
                        my $res=&ACCT::getbillgroups;
                        foreach my $line (@$res){
                                my ($grp) = @$line;
+                               open (FILE, "<", $dmafile) or die $!;
+                               foreach my $line (<FILE>) {
+                                       $line =~ m/^([A-Z]+)\s+?(.*)?$/;
+                                       my $key = $1;
+                                       my $val = $2;
+                                       $dma{$key}=$val;
+                               }
                                &sendbill($grp,$settings{'MWST'},$settings{'CURRENCY'});
                        }
                }else{
@@ -198,6 +217,7 @@ sub fill_db{
        my $tim=time();
        #Fill ACCT table with accounting information
        foreach my $name (sort keys %counter){
+               next if (substr($name,-1,1) eq '$');
                foreach my $bytes (keys %{ $counter{$name} }) {
                        $dbh->do("insert into ACCT (TIME_RUN,NAME,BYTES) values ('$tim','$name','$counter{$name}{$bytes}');");
                }
@@ -214,7 +234,7 @@ sub sendbill {
        $month = '0'.$actmonth if $actmonth < 10;
        $month = '12' if $actmonth == 0;
        my $actyear  = $now[5];
-       my ($from,$till)=&ACCT::getmonth($actmonth,$actyear);                                   #FIXME month and year as variables!
+       my ($from,$till)=&ACCT::getmonth($actmonth,$actyear);
        my @billar = &ACCT::GetTaValues($from,$till,$rggrp);
        my $address_cust = &ACCT::getTaAddress($rggrp,'CUST');
        my $address_host = &ACCT::getTaAddress($rggrp,'HOST');
@@ -229,23 +249,34 @@ sub sendbill {
 
        if ($back eq '0'){
                &ACCT::logger($settings{'LOG'},"Bill for $company_cust successfully created.\n");
-               my $file="'/var/ipfire/accounting/bill/$rggrp/$month-$actyear-$no.pdf'";
+               my $file="/var/ipfire/accounting/bill/$rggrp/$month-$actyear-$no.pdf";
                $settings{'MAILTXT'} =~ tr/\|/\r\n/ ;
-               my $cmd = "/usr/local/bin/sendEmail ";
-               $cmd .= " -f $settings{'MAILSENDER'}";                                                  #Sender
-               $cmd .= " -t $email";                                                                                   #Recipient
-               if ($ccmail){
-                       $cmd .= " -cc $ccmail";
-               }
-               #Send Mail via TLS?
-               if ($settings{'TLS'} eq 'on'){
-                       $cmd .= " -o tls=yes";                                                                          #TLS
-               }
-               $cmd .= " -u '$settings{'MAILSUB'}'";                                                   #Subject
-               $cmd .= " -m '$settings{'MAILTXT'}'";                                                   #Mailtext
-               $cmd .= " -s $settings{'MAILSRV'}:$settings{'MAILPORT'}";               #Mailserver:port
-               $cmd .= " -a $file";
-               my $res=system ($cmd);
+
+               #extract filename from path
+               my ($filename) = $file =~ m{([^/]+)$};
+
+               my $msg = MIME::Lite->new(
+                       From    => $mail{'SENDER'},
+                       To              => $email,
+                       Cc              => $ccmail,
+                       Subject => $settings{'MAILSUB'},
+                       Type    => 'multipart/mixed'
+               );
+
+               $msg->attach(
+                       Type    => 'TEXT',
+                       Data    => $settings{'MAILTXT'}
+               );
+
+               $msg->attach(
+                       Type            => 'application/pdf',
+                       Path            => $file,
+                       Filename        => $filename,
+                       Disposition     => 'attachment'
+               );
+
+               my $res=$msg->send_by_sendmail;
+
                if ($res == 0){
                        &ACCT::logger($settings{'LOG'},"Bill for $company_cust successfully sent.\n");
                }elsif ($res > 0){
@@ -255,13 +286,19 @@ sub sendbill {
                
        }else{
                &ACCT::logger($settings{'LOG'},"ERROR Bill for $company_cust could not be created.\n");
-               my $cmd = "/usr/local/bin/sendEmail ";
-               $cmd .= " -f $settings{'MAILSENDER'}";
-               $cmd .= " -t $settings{'MAILSENDER'}";
-               $cmd .= " -u Fehler Squid Accounting";
-               $cmd .= " -m 'Die Rechnung konnte nicht erzeugt und per Mail versendet werden' $company_cust";
-               $cmd .= " -s $settings{'MAILSRV'}:$settings{'MAILPORT'}";
-               my $res=system ($cmd);
+               my $msg = MIME::Lite->new(
+                       From    => $mail{'SENDER'},
+                       To              => $mail{'RECIPIENT'},
+                       Subject => "ERROR Squid Accounting",
+                       Type    => 'multipart/mixed'
+               );
+
+               $msg->attach(
+                       Type    => 'TEXT',
+                       Data    => "The bill could not be created for customer $company_cust"
+               );
+
+               $msg->send_by_sendmail;
                return 0;
        }
 }
similarity index 76%
rename from tools/checkwronginitlinks
rename to tools/checkrootfiles
index 65fc946b68e7b8c83e52d9be3309fdc4ca7821d0..74fab3e02310b6bce11bf37e8375f9bd02e7dea5 100755 (executable)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  info@ipfire.org                       #
+# Copyright (C) 2007-2015  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,3 +32,17 @@ if [ "${?}" == "0" ]; then
        grep -r "^var/run//*" ./config/rootfiles/
        echo "Comment this and create it at initskript if needed !"
 fi
+
+grep -r "/i586" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore >/dev/null 2>&1
+if [ "${?}" == "0" ]; then
+       echo "Error! '/i586' in rootfiles files found!"
+       grep -r "/i586" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore
+       echo "Replace by MACHINE !"
+fi
+
+grep -r "/armv5tel" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore >/dev/null 2>&1
+if [ "${?}" == "0" ]; then
+       echo "Error! '/armv5tel' in rootfiles files found!"
+       grep -r "/armv5tel" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore
+       echo "Replace by MACHINE !"
+fi
index 4fbb530f45f4f15dd057b760351b9b536e9f6ee9..a42e3fa0e5a28a934bf235dbcc4f079bc589098b 100644 (file)
@@ -68,15 +68,21 @@ configure_target() {
        fi
 
        case "${target_arch}" in
+               x86_64)
+                       BUILDTARGET="${target_arch}-unknown-linux-gnu"
+                       CROSSTARGET="${target_arch}-cross-linux-gnu"
+                       CFLAGS_ARCH="-m64 -mtune=generic"
+                       ;;
+
                i586)
                        BUILDTARGET="${target_arch}-pc-linux-gnu"
-                       CROSSTARGET="${BUILD_ARCH}-cross-linux-gnu"
+                       CROSSTARGET="${target_arch}-cross-linux-gnu"
                        CFLAGS_ARCH="-march=i586 -mtune=generic -fomit-frame-pointer"
                        ;;
 
                armv5tel)
                        BUILDTARGET="${target_arch}-unknown-linux-gnueabi"
-                       CROSSTARGET="${BUILD_ARCH}-cross-linux-gnueabi"
+                       CROSSTARGET="${target_arch}-cross-linux-gnueabi"
                        CFLAGS_ARCH="-march=armv5te -mfloat-abi=soft -fomit-frame-pointer"
                        MACHINE_TYPE="arm"
                        ;;
@@ -103,7 +109,7 @@ configure_target() {
        MACHINE="${TARGET_ARCH}"
 
        CFLAGS="-O2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fPIC"
-       CFLAGS="${CFLAGS} -fstack-protector-all --param=ssp-buffer-size=4 ${CFLAGS_ARCH}"
+       CFLAGS="${CFLAGS} -fstack-protector-strong --param=ssp-buffer-size=4 ${CFLAGS_ARCH}"
        CXXFLAGS="${CFLAGS}"
 }
 
@@ -355,7 +361,7 @@ qemu_is_required() {
        fi
 
        case "${BUILD_ARCH},${target_arch}" in
-               x86_64,arm*|i?86,arm*)
+               x86_64,arm*|i?86,arm*|i?86,x86_64)
                        return 0
                        ;;
                *)
@@ -370,6 +376,15 @@ qemu_install_helper() {
                return 0
        fi
 
+       if [ ! -e /proc/sys/fs/binfmt_misc/status ]; then
+               exiterror "binfmt_misc not mounted. QEMU_TARGET_HELPER not useable."
+       fi
+
+       if [ ! $(cat /proc/sys/fs/binfmt_misc/status) = 'enabled' ]; then
+               exiterror "binfmt_misc not enabled. QEMU_TARGET_HELPER not useable."
+       fi
+
+
        if [ -z "${QEMU_TARGET_HELPER}" ]; then
                exiterror "QEMU_TARGET_HELPER not set"
        fi
@@ -407,12 +422,17 @@ qemu_find_target_helper_name() {
                arm*)
                        magic="7f454c4601010100000000000000000002002800"
                        ;;
+               x86_64)
+                       magic="7f454c4602010100000000000000000002003e00"
+                       ;;
        esac
 
        [ -z "${magic}" ] && return 1
 
        local file
        for file in /proc/sys/fs/binfmt_misc/*; do
+               # skip write only register entry
+               [ $(basename "${file}") = "register" ] && continue
                # Search for the file with the correct magic value.
                grep -qE "^magic ${magic}$" "${file}" || continue
 
@@ -450,8 +470,8 @@ entershell() {
                NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
                CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
                CCACHE_DIR=/usr/src/ccache \
-               CCACHE_COMPRESS=1 \
-               CCACHE_COMPILERCHECK="none" \
+               CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
+               CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
                KVER=$KVER \
                BUILDTARGET="$BUILDTARGET" \
                CROSSTARGET="${CROSSTARGET}" \
@@ -573,8 +593,9 @@ lfsmake2() {
                                                CONFIG_ROOT=$CONFIG_ROOT \
                                                NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
                                                CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
-                                               CCACHE_DIR=/usr/src/ccache CCACHE_COMPRESS=1 \
-                                               CCACHE_COMPILERCHECK="none" \
+                                               CCACHE_DIR=/usr/src/ccache \
+                                               CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
+                                               CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
                                                KVER=$KVER MAKETUNING=$MAKETUNING \
                                                BUILDTARGET="$BUILDTARGET" \
                                                CROSSTARGET="${CROSSTARGET}" \
@@ -614,8 +635,9 @@ ipfiremake() {
                                                NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
                                                SYSTEM_RELEASE="$SYSTEM_RELEASE" \
                                                CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
-                                               CCACHE_DIR=/usr/src/ccache CCACHE_COMPRESS=1 \
-                                               CCACHE_COMPILERCHECK="none" \
+                                               CCACHE_DIR=/usr/src/ccache \
+                                               CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
+                                               CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
                                                KVER=$KVER MAKETUNING=$MAKETUNING \
                                                BUILDTARGET="$BUILDTARGET" \
                                                CROSSTARGET="${CROSSTARGET}" \
@@ -653,8 +675,9 @@ ipfiredist() {
                                        CONFIG_ROOT=$CONFIG_ROOT \
                                        NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
                                        CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
-                                       CCACHE_DIR=/usr/src/ccache CCACHE_COMPRESS=1 \
-                                       CCACHE_COMPILERCHECK="none" \
+                                       CCACHE_DIR=/usr/src/ccache \
+                                       CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
+                                       CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
                                        KVER=$KVER \
                                        BUILDTARGET="$BUILDTARGET" \
                                        CROSSTARGET="${CROSSTARGET}" \